*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;background:var(--b3-cream);color:var(--b3-text);font-family:"Manrope",sans-serif}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.b3-site-main{min-height:60vh}
.b3-site-header{position:fixed;top:0;left:0;z-index:9999;width:100%;height:98px;border-top:3px solid rgba(214,192,184,.6);border-bottom:1px solid transparent;background:transparent;font-family:"Manrope",sans-serif;transition:.4s ease}.b3-site-header.is-sticky,.b3-site-header.b3-header-light{height:86px;border-top-color:transparent;border-bottom-color:rgba(33,30,25,.12);background:rgba(246,241,231,.96);box-shadow:0 10px 35px rgba(24,20,13,.08);backdrop-filter:blur(14px)}
.b3-header-wrap{width:min(1320px,calc(100% - 96px));height:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:55px;margin-inline:auto}.b3-header-logo{display:flex;align-items:center;gap:7px;color:rgba(255,255,255,.92);font-family:"Cormorant Garamond",serif;font-size:28px;letter-spacing:3px}.b3-header-logo strong{background:var(--b3-gold-gradient);background-clip:text;-webkit-background-clip:text;color:transparent;font-size:31px;font-weight:400;letter-spacing:0}.b3-site-header.is-sticky .b3-header-logo,.b3-site-header.b3-header-light .b3-header-logo{color:var(--b3-text)}
.b3-header-nav{display:flex;align-items:center;justify-content:center;gap:38px}.b3-header-nav a,.b3-login-link{position:relative;color:rgba(255,255,255,.68);font-size:11px;font-weight:600;letter-spacing:2.4px;text-transform:uppercase}.b3-header-nav a::after{content:"";position:absolute;left:0;bottom:-12px;width:100%;height:1px;background:var(--b3-gold-gradient);transform:scaleX(0);transition:.35s}.b3-header-nav a:hover,.b3-header-nav a.current-menu-item,.b3-header-nav a.active{color:#d3a956}.b3-header-nav a:hover::after,.b3-header-nav a.current-menu-item::after,.b3-header-nav a.active::after{transform:scaleX(1)}.b3-site-header.is-sticky .b3-header-nav a,.b3-site-header.is-sticky .b3-login-link,.b3-site-header.b3-header-light .b3-header-nav a,.b3-site-header.b3-header-light .b3-login-link{color:var(--b3-text)}
.b3-header-actions{display:flex;align-items:center;gap:24px}.b3-join-button{min-width:150px;padding:20px 25px;background:var(--b3-gold-gradient);color:#161109;font-size:11px;font-weight:600;letter-spacing:2.5px;text-align:center;text-transform:uppercase}.b3-menu-toggle{width:44px;height:44px;display:none;place-items:center;border:1px solid rgba(255,255,255,.25);background:transparent;position:relative}.b3-menu-toggle span{position:absolute;width:19px;height:1px;background:#fff}.b3-menu-toggle span:first-child{transform:translateY(-4px)}.b3-menu-toggle span:last-child{transform:translateY(4px)}.b3-site-header.is-sticky .b3-menu-toggle span,.b3-site-header.b3-header-light .b3-menu-toggle span{background:var(--b3-text)}.b3-mobile-menu{max-height:0;overflow:hidden;background:rgba(246,241,231,.99);opacity:0;visibility:hidden;transition:.4s}.b3-site-header.menu-open .b3-mobile-menu{max-height:620px;opacity:1;visibility:visible}.b3-mobile-menu nav{width:calc(100% - 40px);display:grid;margin:auto;padding:18px 0 28px}.b3-mobile-menu a{padding:16px 5px;border-bottom:1px solid rgba(33,30,25,.1);font-size:11px;font-weight:600;letter-spacing:2.3px;text-transform:uppercase}.b3-mobile-join{margin-top:15px;background:var(--b3-gold-gradient);text-align:center}
.b3-footer{background:var(--b3-cream);border-top:1px solid rgba(33,30,25,.14);padding:95px 0 34px;color:var(--b3-text)}.b3-footer-wrap{width:min(1320px,calc(100% - 96px));margin:auto}.b3-footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:70px;padding-bottom:72px}.b3-footer-kicker,.b3-footer-title{color:var(--b3-gold);font-size:11px;font-weight:600;letter-spacing:4px;text-transform:uppercase}.b3-footer-brand h2{font-family:"Cormorant Garamond",serif;font-size:72px;font-weight:400;line-height:.95;margin:28px 0 24px}.b3-footer-brand h2 em{color:var(--b3-gold);font-weight:400}.b3-footer-brand p{max-width:460px;color:var(--b3-muted);font-size:14px;line-height:2}.b3-footer-btn{display:inline-flex;margin-top:30px;padding:18px 36px;background:var(--b3-gold-gradient);font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase}.b3-footer-col nav{display:grid;gap:22px;margin-top:28px}.b3-footer-col a{color:var(--b3-muted);font-size:14px}.b3-footer-bottom{display:flex;justify-content:space-between;gap:30px;padding-top:30px;border-top:1px solid rgba(33,30,25,.14);color:var(--b3-gold-dark);font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase}
@media(max-width:1100px){.b3-header-wrap,.b3-footer-wrap{width:calc(100% - 56px)}.b3-header-nav{gap:24px}.b3-footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:991px){.b3-site-header{height:82px}.b3-site-header.is-sticky,.b3-site-header.b3-header-light{height:74px}.b3-header-wrap{width:calc(100% - 40px)}.b3-header-nav,.b3-login-link,.b3-header-actions .b3-join-button{display:none}.b3-menu-toggle{display:grid}}@media(max-width:767px){.b3-footer{padding-top:70px}.b3-footer-wrap{width:calc(100% - 36px)}.b3-footer-grid{grid-template-columns:1fr;gap:42px;padding-bottom:50px}.b3-footer-brand h2{font-size:54px}.b3-footer-bottom{flex-direction:column;line-height:1.8}}@media(max-width:480px){.b3-header-wrap,.b3-footer-wrap{width:calc(100% - 28px)}}


/* v1.0.6 global layout */
.b3-header-wrap,.b3-footer-wrap{width:min(1320px,calc(100% - 96px));}
.b3-footer{padding-top:30px;padding-bottom:30px;}
@media(max-width:1100px){.b3-header-wrap,.b3-footer-wrap{width:calc(100% - 56px)}}
@media(max-width:767px){.b3-header-wrap,.b3-footer-wrap{width:calc(100% - 36px)}}
@media(max-width:480px){.b3-header-wrap,.b3-footer-wrap{width:calc(100% - 28px)}}


/* v1.0.8 header visibility, fixed-header spacing and mobile gutters */
body.b3-has-light-header{
  padding-top:86px;
}
body.b3-has-transparent-header{
  padding-top:0;
}

/* WordPress admin bar compatibility */
.admin-bar .b3-site-header{top:32px;}

@media(max-width:991px){
  body.b3-has-light-header{padding-top:74px;}
}

@media(max-width:782px){
  .admin-bar .b3-site-header{top:46px;}
}

@media(max-width:767px){
  /* Keep every content container 8px away from both screen edges. */
  .b3-header-wrap,
  .b3-footer-wrap,
  .b3-wrap,
  .hero-container,
  .about-container,
  .services-container,
  .process-container,
  .artist-container,
  .cta-container,
  .b3-shortcode-inner,
  .b3-contact-grid{
    width:calc(100% - 16px) !important;
    max-width:none !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* Generic/plugin pages also keep an 8px mobile gutter. */
  body.b3-has-light-header .b3-site-main,
  body.b3-has-light-header main:not(.b3-contact):not(.b3-about):not(.b3-home-page){
    padding-left:8px !important;
    padding-right:8px !important;
  }

  .b3-mobile-menu nav{
    width:calc(100% - 16px);
  }
}

/* =========================================================
   B3 reversible scroll motion system — v1.2.5
   Elements animate in while entering the viewport and animate
   back out when the visitor scrolls away in either direction.
========================================================= */
html.b3-motion-ready .b3-motion{
  --b3-motion-x:0px;
  --b3-motion-y:42px;
  --b3-motion-scale:.985;
  opacity:0;
  transform:translate3d(var(--b3-motion-x),var(--b3-motion-y),0) scale(var(--b3-motion-scale));
  filter:blur(5px);
  transition:
    opacity .72s cubic-bezier(.2,.72,.2,1),
    transform .86s cubic-bezier(.16,1,.3,1),
    filter .72s ease;
  transition-delay:var(--b3-motion-delay,0ms);
  will-change:opacity,transform,filter;
}
html.b3-motion-ready .b3-motion.b3-motion-left{--b3-motion-x:-46px;--b3-motion-y:8px}
html.b3-motion-ready .b3-motion.b3-motion-right{--b3-motion-x:46px;--b3-motion-y:8px}
html.b3-motion-ready .b3-motion.b3-motion-scale{--b3-motion-y:18px;--b3-motion-scale:.94}
html.b3-motion-ready .b3-motion.b3-motion-in{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
  filter:blur(0);
}

/* Gentle clipping reveal for major section headings. */
html.b3-motion-ready .b3-motion-heading{
  clip-path:inset(0 0 100% 0);
  transform:translateY(28px);
  opacity:0;
  transition:clip-path .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1),opacity .55s ease;
  transition-delay:var(--b3-motion-delay,0ms);
}
html.b3-motion-ready .b3-motion-heading.b3-motion-in{
  clip-path:inset(0 0 0 0);
  transform:translateY(0);
  opacity:1;
}

/* Draw dividers/lines rather than simply fading them. */
html.b3-motion-ready .b3-motion-line{
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform 1s cubic-bezier(.16,1,.3,1);
}
html.b3-motion-ready .b3-motion-line.b3-motion-in{transform:scaleX(1)}

@media(max-width:991px){
  html.b3-motion-ready .b3-motion{--b3-motion-y:30px;--b3-motion-x:0px;filter:blur(3px)}
}
@media(max-width:767px){
  html.b3-motion-ready .b3-motion{--b3-motion-y:22px;--b3-motion-scale:.99;filter:none;transition-duration:.58s,.7s,.5s}
  html.b3-motion-ready .b3-motion-heading{transform:translateY(18px)}
}
@media(prefers-reduced-motion:reduce){
  html.b3-motion-ready .b3-motion,
  html.b3-motion-ready .b3-motion-heading,
  html.b3-motion-ready .b3-motion-line{
    opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important;transition:none!important;
  }
}

/* =========================================================
   FINAL MOBILE / TABLET LAYOUT FIX
   Scope: header positioning, offer-page banner gutters and
   horizontal overflow only. No content or functionality changes.
========================================================= */
html,body{max-width:100%;overflow-x:clip}

@media(max-width:991px){
  .b3-site-header .b3-header-wrap{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:16px !important;
    width:calc(100% - 32px) !important;
    max-width:none !important;
    margin-inline:16px !important;
  }
  .b3-site-header .b3-header-logo{
    flex:0 1 auto !important;
    min-width:0 !important;
    margin:0 !important;
  }
  .b3-site-header .b3-header-actions{
    display:flex !important;
    flex:0 0 auto !important;
    align-items:center !important;
    justify-content:flex-end !important;
    margin-left:auto !important;
  }
  .b3-site-header .b3-menu-toggle{
    display:grid !important;
    flex:0 0 44px !important;
    margin:0 !important;
  }

  /* The generic light-page gutter must not wrap full-width offer banners. */
  body.b3-has-light-header .b3-site-main.b3-offer-page,
  body.b3-has-light-header main.b3-offer-page,
  main.b3-event-curation-page,
  main.b3-studio-page{
    width:100% !important;
    max-width:100% !important;
    padding-left:0 !important;
    padding-right:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    overflow-x:clip !important;
  }

  .b3-curation-hero,
  .b3-studio-hero{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  /* Prevent grid/flex children and decorative layers from widening viewport. */
  .b3-offer-page,
  .b3-offer-page section,
  .b3-offer-page .b3-wrap,
  .b3-offer-page [class*="grid"],
  .b3-offer-page [class*="stage"],
  .b3-offer-page [class*="collage"]{
    min-width:0;
    max-width:100%;
  }
}

@media(max-width:767px){
  .b3-site-header .b3-header-wrap{
    width:calc(100% - 16px) !important;
    margin-inline:8px !important;
  }
  .b3-site-header .b3-header-logo{
    font-size:25px !important;
    letter-spacing:2px !important;
  }
  .b3-site-header .b3-header-logo strong{font-size:29px !important}
}
