
/*
Theme Name: iPicBase Kadence Child
Description: International SaaS-style marketing child theme for iPicBase.
Template: kadence
Version: 3.3.1
*/
:root{
 --ipb-ink:#101827;--ipb-muted:#667085;--ipb-brand:#276f68;--ipb-brand-dark:#18534e;
 --ipb-soft:#f6f8f7;--ipb-line:#e7ebe9;--ipb-white:#fff;--ipb-blue:#eef4ff;
}
body{color:var(--ipb-ink);background:#fff}
.ipb-container{width:min(1160px,calc(100% - 40px));margin:auto}
.ipb-hero{padding:86px 20px 72px;background:radial-gradient(circle at 75% 18%,rgba(39,111,104,.13),transparent 30%),linear-gradient(180deg,#f8faf9 0%,#fff 100%);overflow:hidden}
.ipb-nav-note{display:inline-flex;gap:8px;align-items:center;padding:7px 12px;border:1px solid #dce7e4;border-radius:999px;background:#fff;font-size:.78rem;font-weight:750;color:var(--ipb-brand);box-shadow:0 5px 20px rgba(16,24,39,.04)}
.ipb-nav-note:before{content:"";width:7px;height:7px;background:#38a169;border-radius:50%}
.ipb-hero h1{font-size:clamp(3rem,7vw,5.9rem);line-height:.98;letter-spacing:-.055em;max-width:900px;margin:22px auto}
.ipb-gradient-text{background:linear-gradient(100deg,var(--ipb-brand),#4b8e86);-webkit-background-clip:text;background-clip:text;color:transparent}
.ipb-lead{max-width:760px;margin:0 auto 30px;color:var(--ipb-muted);font-size:clamp(1.1rem,2vw,1.3rem);line-height:1.65}
.ipb-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.ipb-actions .wp-block-button__link{border-radius:10px;padding:14px 23px;font-weight:750}
.ipb-meta{margin:24px 0 0;text-align:center;color:#7a8491;font-size:.85rem}
.ipb-product-frame{width:min(1050px,100%);margin:54px auto 0;padding:10px;border:1px solid #dfe6e3;border-radius:22px;background:#fff;box-shadow:0 28px 80px rgba(16,24,39,.14)}
.ipb-browser{border:1px solid #e7ebe9;border-radius:15px;overflow:hidden;background:#fff}
.ipb-browser-bar{height:38px;background:#f7f8f8;border-bottom:1px solid #e7ebe9;display:flex;align-items:center;padding:0 14px;gap:6px}
.ipb-dot{width:8px;height:8px;border-radius:50%;background:#d5dcd9}
.ipb-app{display:grid;grid-template-columns:180px 1fr;min-height:390px}
.ipb-side{background:#fbfcfc;border-right:1px solid #e7ebe9;padding:20px 15px}
.ipb-logo{font-weight:850;letter-spacing:-.03em;font-size:1.1rem;margin:3px 7px 27px}
.ipb-logo span{color:var(--ipb-brand)}
.ipb-side-item{padding:9px 10px;border-radius:8px;color:#667085;font-size:.8rem;margin:3px 0}
.ipb-side-item.active{background:#eaf3f1;color:var(--ipb-brand);font-weight:750}
.ipb-app-main{padding:26px}
.ipb-app-head{display:flex;justify-content:space-between;align-items:center;gap:15px}
.ipb-app-head h3{margin:0;font-size:1.15rem}
.ipb-mini-button{background:var(--ipb-brand);color:#fff;padding:8px 12px;border-radius:7px;font-size:.72rem;font-weight:700}
.ipb-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}
.ipb-stat{border:1px solid #e7ebe9;border-radius:10px;padding:14px}
.ipb-stat small{display:block;color:#8a93a0;font-size:.68rem}
.ipb-stat strong{font-size:1.25rem}
.ipb-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.ipb-thumb{aspect-ratio:1.3;border-radius:8px;background:linear-gradient(135deg,#dce7e3,#f2f5f3)}
.ipb-thumb:nth-child(2){background:linear-gradient(135deg,#d8dce7,#f4f5f7)}
.ipb-thumb:nth-child(3){background:linear-gradient(135deg,#e8dfd5,#f7f3ef)}
.ipb-thumb:nth-child(4){background:linear-gradient(135deg,#d8e2eb,#f2f6f8)}
.ipb-thumb:nth-child(5){background:linear-gradient(135deg,#dfe6d9,#f4f7f1)}
.ipb-thumb:nth-child(6){background:linear-gradient(135deg,#e6dce5,#f7f1f6)}
.ipb-section{padding:100px 20px}
.ipb-eyebrow{font-size:.72rem;letter-spacing:.14em;font-weight:800;text-transform:uppercase;color:var(--ipb-brand);margin:0 0 14px}
.ipb-section h2{font-size:clamp(2.15rem,4vw,3.45rem);letter-spacing:-.045em;line-height:1.04;margin:0 0 18px}
.ipb-copy{color:var(--ipb-muted);font-size:1.08rem;line-height:1.7}
.ipb-center{text-align:center}
.ipb-center .ipb-copy{max-width:700px;margin-left:auto;margin-right:auto}
.ipb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:45px}
.ipb-card{border:1px solid var(--ipb-line);border-radius:18px;padding:29px;background:#fff;box-shadow:0 8px 28px rgba(16,24,39,.035)}
.ipb-card h3{margin:0 0 10px;font-size:1.2rem}
.ipb-card p{color:var(--ipb-muted);line-height:1.65;margin-bottom:0}
.ipb-number{font-size:.72rem;font-weight:850;color:var(--ipb-brand);margin-bottom:24px}
.ipb-soft{background:var(--ipb-soft)}
.ipb-split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.ipb-checks{list-style:none;padding:0;margin:28px 0 0}
.ipb-checks li{padding:9px 0 9px 28px;position:relative;color:#4f5966}
.ipb-checks li:before{content:"✓";position:absolute;left:0;color:var(--ipb-brand);font-weight:900}
.ipb-quote{padding:36px;border:1px solid var(--ipb-line);border-radius:22px;background:#fff;box-shadow:0 18px 50px rgba(16,24,39,.07)}
.ipb-quote strong{font-size:1.15rem;line-height:1.5}
.ipb-quote p{color:var(--ipb-muted);margin:12px 0 0}
.ipb-strip{display:flex;justify-content:center;gap:34px;flex-wrap:wrap;margin-top:44px;color:#7a8491;font-size:.82rem;font-weight:650}
.ipb-pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}
.ipb-price{border:1px solid var(--ipb-line);border-radius:18px;padding:27px;background:#fff}
.ipb-price.featured{border:2px solid var(--ipb-brand);box-shadow:0 18px 55px rgba(39,111,104,.13)}
.ipb-price h3{margin:0 0 12px}
.ipb-price strong{font-size:2.1rem;letter-spacing:-.04em}
.ipb-price span{color:var(--ipb-muted);font-size:.85rem}
.ipb-price p{color:var(--ipb-muted)}
.ipb-cta{padding:72px 25px;border-radius:28px;background:linear-gradient(135deg,#14201f,#1e4541);text-align:center;color:#fff}
.ipb-cta h2{color:#fff;max-width:750px;margin:0 auto 16px}
.ipb-cta p{color:rgba(255,255,255,.72);max-width:650px;margin:0 auto 28px}
.ipb-cta .wp-block-button__link{border-radius:10px;padding:14px 26px}
@media(max-width:850px){
 .ipb-grid,.ipb-pricing,.ipb-split{grid-template-columns:1fr}
 .ipb-app{grid-template-columns:1fr}.ipb-side{display:none}
 .ipb-gallery-grid{grid-template-columns:repeat(3,1fr)}
 .ipb-stat-row{grid-template-columns:1fr 1fr}
 .ipb-split{gap:40px}
}
@media(max-width:600px){
 .ipb-container{width:min(100% - 28px,1160px)}
 .ipb-hero{padding:60px 14px 55px}
 .ipb-section{padding:68px 14px}
 .ipb-hero h1{font-size:clamp(2.65rem,13vw,4rem)}
 .ipb-gallery-grid{grid-template-columns:repeat(2,1fr)}
 .ipb-app-main{padding:17px}.ipb-product-frame{margin-top:40px}
}


/* iPicBase 2.1 — layout hardening */
html, body { overflow-x: hidden; }

body.home .entry-hero,
body.home .entry-header,
body.home .page-title,
body.home .entry-title,
body.home .wp-block-post-title {
    display: none !important;
}

/* Every marketing section gets a reliable reading width and side breathing room. */
body.home .ipb-hero,
body.home .ipb-section {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
}

body.home .ipb-hero > .ipb-container,
body.home .ipb-section > .ipb-container,
body.home .ipb-container {
    width: calc(100% - 48px) !important;
    max-width: 1160px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* Prevent headings/cards from touching the viewport even if a parent theme rule changes. */
body.home .ipb-section h1,
body.home .ipb-section h2,
body.home .ipb-section h3,
body.home .ipb-section p,
body.home .ipb-section ul,
body.home .ipb-section .ipb-grid,
body.home .ipb-section .ipb-split,
body.home .ipb-section .ipb-pricing {
    max-width: 100%;
}

body.home .ipb-card,
body.home .ipb-price,
body.home .ipb-quote,
body.home .ipb-cta,
body.home .ipb-product-frame {
    box-sizing: border-box;
}

body.home .ipb-hero {
    padding-top: 92px !important;
    padding-bottom: 82px !important;
}

body.home .ipb-section {
    padding-top: 96px !important;
    padding-bottom: 96px !important;
}

body.home .ipb-cta {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

@media (max-width: 600px) {
    body.home .ipb-hero,
    body.home .ipb-section {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    body.home .ipb-hero > .ipb-container,
    body.home .ipb-section > .ipb-container,
    body.home .ipb-container {
        width: calc(100% - 24px) !important;
    }
    body.home .ipb-section {
        padding-top: 68px !important;
        padding-bottom: 68px !important;
    }
}

/* Make the WordPress footer breathe like a SaaS product rather than a default theme. */
body.home #colophon,
body.home .site-footer {
    padding-top: 28px;
    padding-bottom: 28px;
}


/* iPicBase 2.2 — centered SaaS layout */
body.home .ipb-container {
    display: block !important;
    width: min(1160px, calc(100% - 48px)) !important;
    max-width: 1160px !important;
    margin-inline: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Center the hero/product presentation. */
body.home .ipb-hero .ipb-container,
body.home .ipb-hero {
    text-align: center !important;
}
body.home .ipb-hero h1,
body.home .ipb-hero .ipb-lead,
body.home .ipb-hero .ipb-meta {
    margin-left: auto !important;
    margin-right: auto !important;
}
body.home .ipb-hero .ipb-product-frame {
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Center section headings and intro copy. */
body.home .ipb-center {
    text-align: center !important;
}
body.home .ipb-center .ipb-copy {
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Keep the workflow split intentionally left/right inside its centered container. */
body.home .ipb-split {
    text-align: left !important;
}
body.home .ipb-split > * {
    min-width: 0;
}

@media (max-width: 600px) {
    body.home .ipb-container {
        width: calc(100% - 28px) !important;
        max-width: 1160px !important;
    }
}


/* iPicBase 2.4 — reliable centering independent of WordPress body classes */

/* Full-width section backgrounds */
.ipb-hero,
.ipb-section {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    box-sizing: border-box !important;
}

/* One consistent centered content column */
.ipb-hero > .ipb-container,
.ipb-section > .ipb-container,
.ipb-container {
    width: min(1160px, calc(100vw - 64px)) !important;
    max-width: 1160px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* Center all primary marketing sections */
.ipb-hero,
.ipb-center {
    text-align: center !important;
}

.ipb-center .ipb-copy {
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Feature/pricing cards sit in the same centered column */
.ipb-grid,
.ipb-pricing {
    width: 100% !important;
    max-width: 1160px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Workflow is the intentional exception: content remains left-aligned
   within a centered two-column layout. */
.ipb-split {
    width: 100% !important;
    max-width: 1160px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: left !important;
}

/* CTA itself stays inside the centered content column */
.ipb-cta {
    width: 100% !important;
    max-width: 1160px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

@media (max-width: 700px) {
    .ipb-hero,
    .ipb-section {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    .ipb-hero > .ipb-container,
    .ipb-section > .ipb-container,
    .ipb-container {
        width: calc(100vw - 32px) !important;
    }
}


/* =========================================================
   iPicBase 3.0 — international SaaS design system
   ========================================================= */

:root{
  --ipb-ink:#101828;
  --ipb-muted:#667085;
  --ipb-brand:#246b63;
  --ipb-brand-dark:#174f49;
  --ipb-brand-soft:#eaf4f2;
  --ipb-bg:#f7f9f8;
  --ipb-line:#e5e9e7;
  --ipb-white:#fff;
  --ipb-radius:18px;
  --ipb-shadow:0 18px 55px rgba(16,24,40,.08);
}

/* Global typography / rhythm */
body{
  color:var(--ipb-ink);
  background:#fff;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--ipb-brand)}
a:hover{color:var(--ipb-brand-dark)}

/* Header */
.ipb-site-header{
  position:relative;
  z-index:50;
  background:rgba(255,255,255,.92);
  border-bottom:1px solid rgba(229,233,231,.9);
  backdrop-filter:blur(14px);
}
.ipb-site-header-inner{
  width:min(1160px,calc(100% - 40px));
  min-height:74px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.ipb-brand{
  display:inline-flex;
  align-items:center;
  color:var(--ipb-ink);
  text-decoration:none!important;
  font-size:1.28rem;
  font-weight:850;
  letter-spacing:-.045em;
}
.ipb-brand span{color:var(--ipb-brand)}
.ipb-nav{
  display:flex;
  align-items:center;
  gap:27px;
}
.ipb-nav a{
  color:#475467;
  text-decoration:none;
  font-size:.86rem;
  font-weight:650;
}
.ipb-nav a:hover{color:var(--ipb-ink)}
.ipb-nav-cta{
  color:#fff!important;
  background:var(--ipb-brand);
  padding:10px 16px;
  border-radius:9px;
}
.ipb-nav-cta:hover{color:#fff!important;background:var(--ipb-brand-dark)}
.ipb-mobile-menu{display:none}

/* Homepage only — preserve the proven full-width structure */
body.home .site-main .entry-content{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.home .site-main .entry-content>.ipb-hero,
body.home .site-main .entry-content>.ipb-section{
  width:100vw!important;
  max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  box-sizing:border-box!important;
}
body.home .site-main .entry-content>.ipb-hero>.ipb-container,
body.home .site-main .entry-content>.ipb-section>.ipb-container{
  width:min(1160px,calc(100% - 48px))!important;
  max-width:1160px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* Hero v3 */
body.home .ipb-hero{
  padding:108px 24px 90px!important;
  background:
    radial-gradient(circle at 78% 20%,rgba(64,139,129,.15),transparent 27%),
    radial-gradient(circle at 18% 70%,rgba(64,139,129,.07),transparent 25%),
    linear-gradient(180deg,#f8fbfa 0%,#fff 100%);
}
body.home .ipb-nav-note{
  box-shadow:0 8px 30px rgba(16,24,40,.05);
}
body.home .ipb-hero h1{
  max-width:920px;
  font-size:clamp(3.25rem,7vw,6.1rem);
  line-height:.96;
  letter-spacing:-.065em;
  margin:25px auto 24px;
}
body.home .ipb-gradient-text{
  background:linear-gradient(100deg,#246b63,#4d938a);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
body.home .ipb-lead{
  max-width:720px;
  font-size:1.18rem;
  line-height:1.7;
}
body.home .ipb-actions .wp-block-button__link{
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
body.home .ipb-actions .wp-block-button__link:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(36,107,99,.18);
}
body.home .ipb-product-frame{
  max-width:1050px;
  margin:58px auto 0;
  padding:9px;
  border-radius:24px;
  box-shadow:0 34px 90px rgba(16,24,40,.15);
}

/* Sections */
body.home .ipb-section{padding:112px 24px!important}
body.home .ipb-eyebrow{
  color:var(--ipb-brand);
  font-size:.7rem;
  letter-spacing:.16em;
  font-weight:850;
}
body.home .ipb-section h2{
  font-size:clamp(2.25rem,4.2vw,3.65rem);
  letter-spacing:-.052em;
  line-height:1.03;
}
body.home .ipb-copy{font-size:1.06rem;line-height:1.72}

/* Feature cards */
body.home .ipb-grid{
  gap:18px;
  margin-top:50px;
}
body.home .ipb-card{
  border-radius:20px;
  padding:31px;
  box-shadow:0 10px 35px rgba(16,24,40,.035);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
body.home .ipb-card:hover{
  transform:translateY(-3px);
  box-shadow:var(--ipb-shadow);
  border-color:#d5dfdc;
}
body.home .ipb-number{
  color:var(--ipb-brand);
  letter-spacing:.09em;
}

/* Workflow */
body.home .ipb-soft{
  background:linear-gradient(180deg,#f7f9f8,#f4f7f6);
}
body.home .ipb-quote{
  border-radius:24px;
  padding:42px;
  box-shadow:var(--ipb-shadow);
}
body.home .ipb-checks li{
  padding:10px 0 10px 29px;
}

/* Client proof strip */
body.home .ipb-strip{
  margin-top:42px;
}
body.home .ipb-strip span{
  padding:8px 12px;
  border:1px solid var(--ipb-line);
  border-radius:999px;
  background:#fff;
}

/* Pricing preview */
body.home .ipb-pricing{
  gap:18px;
}
body.home .ipb-price{
  border-radius:20px;
  padding:31px;
  box-shadow:0 10px 30px rgba(16,24,40,.035);
}
body.home .ipb-price.featured{
  transform:translateY(-6px);
}

/* CTA */
body.home .ipb-cta{
  padding:86px 32px;
  border-radius:30px;
  background:
    radial-gradient(circle at 75% 20%,rgba(91,160,150,.28),transparent 32%),
    linear-gradient(135deg,#12201f,#1f4c47);
  box-shadow:0 30px 80px rgba(23,79,73,.16);
}
body.home .ipb-cta h2{letter-spacing:-.055em}

/* Footer */
.ipb-site-footer{
  border-top:1px solid var(--ipb-line);
  background:#fff;
}
.ipb-footer-inner{
  width:min(1160px,calc(100% - 40px));
  margin:auto;
  padding:42px 0 30px;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:35px;
}
.ipb-footer-brand p{
  max-width:340px;
  margin:11px 0 0;
  color:var(--ipb-muted);
  font-size:.86rem;
  line-height:1.6;
}
.ipb-footer-links{
  display:flex;
  gap:24px;
  flex-wrap:wrap;
}
.ipb-footer-links a{
  color:#667085;
  text-decoration:none;
  font-size:.82rem;
}
.ipb-footer-bottom{
  width:min(1160px,calc(100% - 40px));
  margin:auto;
  padding:18px 0;
  border-top:1px solid var(--ipb-line);
  color:#98a2b3;
  font-size:.75rem;
}

/* Do not visually duplicate Kadence's default footer on homepage when our footer is present. */
body.home #colophon{display:none!important}

@media(max-width:800px){
  .ipb-nav{gap:16px}
  .ipb-nav a:not(.ipb-nav-cta){display:none}
  .ipb-site-header-inner{min-height:68px}
  .ipb-grid,.ipb-pricing,.ipb-split{grid-template-columns:1fr}
  body.home .ipb-price.featured{transform:none}
  .ipb-footer-inner{flex-direction:column}
}
@media(max-width:600px){
  .ipb-site-header-inner,
  .ipb-footer-inner,
  .ipb-footer-bottom{width:calc(100% - 28px)}
  .ipb-hero,.ipb-section{padding-left:16px!important;padding-right:16px!important}
  body.home .site-main .entry-content>.ipb-hero>.ipb-container,
  body.home .site-main .entry-content>.ipb-section>.ipb-container{
    width:calc(100% - 28px)!important;
  }
  body.home .ipb-hero{padding-top:72px!important;padding-bottom:64px!important}
  body.home .ipb-section{padding-top:74px!important;padding-bottom:74px!important}
  body.home .ipb-hero h1{font-size:clamp(2.8rem,13vw,4.2rem)}
  body.home .ipb-product-frame{margin-top:42px}
  body.home .ipb-cta{padding:62px 22px}
}


/* iPicBase 3.1 — marketing pages use the iPicBase shell only.
   Kadence's native header/footer and page title are hidden so they cannot
   create a second navigation row or a second footer. The page content
   wrapper is released to full width; every iPicBase container remains
   centered at the same 1160px reading width as the homepage. */
body.home #masthead,
body.page #masthead,
body.home #colophon,
body.page #colophon,
body.home .site-footer,
body.page .site-footer,
body.home .entry-header,
body.page .entry-header {
    display: none !important;
}

body.page .site-main .entry-content,
body.home .site-main .entry-content {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* All iPicBase marketing pages: full-width section, centered inner column. */
body.page .site-main .entry-content > .ipb-section,
body.page .site-main .entry-content > .ipb-hero,
body.home .site-main .entry-content > .ipb-section,
body.home .site-main .entry-content > .ipb-hero {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

body.page .site-main .entry-content > .ipb-section > .ipb-container,
body.page .site-main .entry-content > .ipb-hero > .ipb-container,
body.home .site-main .entry-content > .ipb-section > .ipb-container,
body.home .site-main .entry-content > .ipb-hero > .ipb-container {
    width: min(1160px, calc(100% - 64px)) !important;
    max-width: 1160px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* Some pages contain the section directly inside entry-content; make sure
   the section itself cannot inherit Kadence's old constrained width. */
body.page .ipb-section,
body.page .ipb-hero {
    box-sizing: border-box !important;
}

@media (max-width: 700px) {
    body.page .site-main .entry-content > .ipb-section > .ipb-container,
    body.page .site-main .entry-content > .ipb-hero > .ipb-container,
    body.home .site-main .entry-content > .ipb-section > .ipb-container,
    body.home .site-main .entry-content > .ipb-hero > .ipb-container {
        width: calc(100% - 32px) !important;
    }
}


/* iPicBase 3.2 — restore the mobile hamburger navigation. */
.ipb-menu-toggle{
  display:none;
  position:relative;
  width:44px;
  height:44px;
  margin:0;
  padding:0;
  border:1px solid var(--ipb-line);
  border-radius:12px;
  background:#fff;
  cursor:pointer;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:4px;
}
.ipb-menu-toggle > span:not(.screen-reader-text){
  display:block;
  width:18px;
  height:2px;
  border-radius:2px;
  background:#1d2939;
  transition:transform .18s ease,opacity .18s ease;
}
.ipb-menu-toggle[aria-expanded="true"] > span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.ipb-menu-toggle[aria-expanded="true"] > span:nth-child(2){opacity:0}
.ipb-menu-toggle[aria-expanded="true"] > span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.ipb-mobile-menu{
  display:none;
}
@media(max-width:800px){
  .ipb-nav{gap:10px}
  .ipb-nav .ipb-nav-cta{display:none}
  .ipb-menu-toggle{display:flex}
  .ipb-mobile-menu{
    position:absolute;
    z-index:9999;
    top:100%;
    left:0;
    right:0;
    display:flex;
    flex-direction:column;
    gap:0;
    padding:10px 14px 16px;
    border-top:1px solid var(--ipb-line);
    border-bottom:1px solid var(--ipb-line);
    background:rgba(255,255,255,.98);
    box-shadow:0 18px 40px rgba(16,24,40,.10);
  }
  .ipb-mobile-menu[hidden]{display:none}
  .ipb-mobile-menu a{
    display:block;
    padding:14px 12px;
    color:#344054;
    text-decoration:none;
    font-size:.95rem;
    font-weight:650;
    border-radius:10px;
  }
  .ipb-mobile-menu a:hover{background:#f5f8f7}
  .ipb-mobile-menu .ipb-mobile-cta{
    margin-top:8px;
    text-align:center;
    color:#fff;
    background:var(--ipb-brand);
  }
  .ipb-site-header{position:relative}
  html.ipb-menu-open{overflow:hidden}
}

/* iPicBase 3.3.1 — standalone photographer app shell */
body.ipb-dashboard-page #masthead,
body.ipb-dashboard-page .site-header,
body.ipb-dashboard-page #colophon,
body.ipb-dashboard-page .site-footer,
body.ipb-dashboard-page .entry-header,
body.ipb-dashboard-page .entry-hero,
body.ipb-dashboard-page .page-title,
body.ipb-dashboard-page .wp-block-post-title {
    display: none !important;
}
body.ipb-dashboard-page #inner-wrap,
body.ipb-dashboard-page #primary,
body.ipb-dashboard-page .content-area {
    margin: 0 !important;
    padding: 0 !important;
    max-width: none !important;
    width: 100% !important;
}
body.ipb-dashboard-page #main { margin: 0 !important; }
body.ipb-dashboard-page .ipb-dashboard { min-height: 100vh; }
