/* GUSTA DJ — CP 7.0 · Figma master, dark monochrome. Visual layer only. */
:root{
 color-scheme:dark;--g70-bg:#0D0D0D;--g70-surface:#151515;--g70-raised:#202020;
 --g70-border:#363636;--g70-white:#fff;--g70-muted:#BDBDBD;--g70-faint:#939393;
 --g70-radius:14px;--g70-shadow:0 22px 60px rgba(0,0,0,.24);
 --bs-bg:#0D0D0D;--bs-panel:#151515;--bs-card:#202020;--bs-text:#fff;--bs-muted:#BDBDBD;
 --bs-ink:#fff;--bs-panel2:#202020;--bs-line:rgba(255,255,255,.16);
 --bs-blue:#fff;--bs-blue-deep:#202020;--bs-violet:#fff;--bs-radius:14px;
 --accent:#fff;--purple:#fff;--cyan:#BDBDBD;
}
html{scroll-padding-top:88px}body{background-color:#0D0D0D;color:#fff;font-family:Satoshi,Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
:where(body.bs-home,body.bs-page,body.pk138,body.g70-public){background:#0D0D0D;color:#fff}
:where(body.bs-home,body.bs-page,body.pk138) a:focus-visible,
:where(body.bs-home,body.bs-page,body.pk138) button:focus-visible{outline:2px solid #fff!important;outline-offset:4px!important}
:where(body.bs-home,body.bs-page,body.pk138) :is(.bs-btn,.bs-button,.bs-nav-cta,.btn138,.btn,.button){border-radius:12px;letter-spacing:0;font-weight:650;transition:background .18s ease,border-color .18s ease,opacity .18s ease,transform .18s ease}
:where(body.bs-home,body.bs-page,body.pk138) :is(.bs-btn-blue,.bs-btn-primary,.bs-button-primary,.btn138.primary,.bs-nav-cta){background:#fff!important;color:#0D0D0D!important;border-color:#fff!important;box-shadow:none!important}
:where(body.bs-home,body.bs-page,body.pk138) :is(.bs-btn-outline,.bs-btn-glass,.bs-button-ghost,.btn138.ghost){background:#151515!important;border-color:#363636!important;color:#fff!important}
:where(body.bs-home,body.bs-page,body.pk138) :is(.bs-eyebrow,.bs-kicker,.eyebrow138,.bs-media-type){color:#BDBDBD!important;letter-spacing:.07em!important;font-size:11px!important}
body.bs-home .bs-hero .bs-eyebrow,body.bs-home .bs-hero-side{display:none!important}
body.bs-home .bs-hero h1{font-size:clamp(31px,4.2vw,57px)!important;letter-spacing:-.05em!important;line-height:1.07!important;max-width:660px}
body.bs-home .bs-hero h1 :is(em,span),body.bs-page :is(h1,h2) em{color:#fff!important;-webkit-text-fill-color:#fff!important;background:none!important;font-style:normal}
body.bs-home .bs-hero p,body.bs-page .bs-subhero>p{color:#BDBDBD!important;max-width:56ch;font-size:clamp(14px,1.25vw,17px)!important;line-height:1.55}
body.bs-home .bs-hero-logo{max-width:min(300px,66vw)!important;filter:none!important}
body.bs-home .bs-hero-ghost{opacity:.17!important}
body.bs-home .bs-hero-watermark{opacity:.045!important;color:#fff!important}
body.bs-home .bs-section-head h2{font-size:clamp(23px,3vw,38px)!important;letter-spacing:-.045em!important;line-height:1.14!important}
body.bs-home .bs-section-head .bs-eyebrow{display:none!important}
body.bs-home :is(.bs-exp-card,.bs-media-card,.bs-place,.bs-agenda-panel,.bs-places-panel),body.bs-page :is(.bs-experience,.bs-service-row,.bs-contact-form){border-color:#363636!important;border-radius:14px!important}
body.bs-home .bs-exp-card:focus-visible,body.bs-page a.bs-service-row:focus-visible{outline:2px solid #fff!important}
body.bs-home .bs-header,body.bs-page .bs-header,body.pk138 .pk-nav138{background:rgba(13,13,13,.96)!important;border-bottom:1px solid #292929!important;backdrop-filter:blur(14px)}
body.bs-home .bs-nav,body.bs-page .bs-navigation{gap:clamp(11px,2vw,27px)!important}
body.bs-home :is(.bs-nav,.bs-mobile-menu) a,body.bs-page .bs-navigation a,body.pk138 .pk-nav138 nav a{color:#DADADA!important;font-size:13px!important;font-weight:600!important;letter-spacing:0!important}
body.bs-home .bs-nav a:hover,body.bs-page .bs-navigation a:hover{color:white!important}
body.pk138 :is(.pk-hero138,.pk-brand138,.pk-quote138){background-color:#0D0D0D;color:#fff}
body.pk138 :is(.pk-hero138,.pk-brand138) h1,body.pk138 :is(.pk-hero138,.pk-brand138) h2{letter-spacing:-.055em!important}
body.pk138 .pk-nav138{padding-inline:clamp(17px,4vw,65px)}
body.bs-page :is(.bs-subhero h1,.bs-simple-cta h2){font-size:clamp(32px,5.2vw,62px)!important;letter-spacing:-.055em!important}
body.bs-page .bs-section,body.bs-home .bs-section{scroll-margin-top:84px}
body.bs-page :is(.bs-contact-form input,.bs-contact-form select,.bs-contact-form textarea){background:#202020!important;color:#fff!important;border-color:#464646!important;min-height:46px}
/* Legacy document screens keep their A4 white paper while outer viewport stays dark. */
body.document-page150{background:#0D0D0D!important}
body.document-page150 .doc-card,body.document-page150 .receipt{border-radius:14px!important;box-shadow:0 20px 70px rgba(0,0,0,.2)!important}
body.document-page150 :is(.eyebrow,.doc-top .eyebrow){letter-spacing:.06em!important}
body.document-page150 :is(button,a){outline-offset:3px}
body.document-page150 .receipt:before{background:#111!important}
/* Public consultation form: shape and colour consistency, without changing its validation or fields. */
body:has(.page .slides) {background:#0D0D0D!important}
body:has(.page .slides) .header{background:#0D0D0D!important;border-bottom:1px solid #2A2A2A!important}
body:has(.page .slides) :is(button,.btn,.option,.mode-card){border-radius:12px}
body:has(.page .slides) :is(.eyebrow,.micro-label){color:#BDBDBD!important}
@media(max-width:760px){
 body.bs-home .bs-hero h1{font-size:clamp(29px,9vw,42px)!important;max-width:90vw}
 body.bs-home .bs-hero-logo{max-width:245px!important}
 body.bs-home .bs-hero-side{display:none!important}
 body.bs-home .bs-section-head h2{font-size:clamp(21px,6.4vw,29px)!important}
 body.bs-home .bs-nav-current{font-size:13px!important}
 body.bs-page .bs-subhero h1{font-size:clamp(31px,9vw,45px)!important}
 body.bs-home .bs-bottom-nav{background:#0D0D0D!important;border-color:#363636!important}
 body.bs-home .bs-bottom-nav a.active{color:#fff!important}
 body.pk138 .pk-nav138 nav{gap:12px!important}
}
@media(max-width:380px){body.pk138 .pk-nav138{padding-inline:14px}body.pk138 .pk-nav138 nav a{font-size:11px!important}}
@media(prefers-reduced-motion:reduce){:where(a,button,.bs-hero-photo img){animation:none!important;transition-duration:.01ms!important}}
@media print{body.document-page150,body.document-page150 .doc{background:#fff!important;color:#111!important}body.document-page150 .doc-card,body.document-page150 .receipt{box-shadow:none!important}body.document-page150 .doc-theme-toggle150{display:none!important}}
