/* Shared studio direction: editorial type, charcoal surfaces, minimal accents from the original lime and pink logo. */
:root{--brand-green:#d6fb51;--brand-green-hover:#d6fb51;--brand-pink:#db00a1;--brand-pink-hover:#db00a1;--lime:#b9b8c0;--paper:#161619;--muted:#bbb8c1;--line:rgba(185,184,192,.22);--surface:#222226;--text:#efedf1;--radius:18px;color-scheme:dark}
body{background:var(--paper);color:var(--text);font-size:16px}
body::selection{background:var(--brand-green);color:#170e16}
h1,h2,h3{color:var(--text);overflow-wrap:break-word}
nav[aria-label="Main navigation"]{background:rgba(22,22,25,.96);border-color:var(--line)}
.nav-inner{gap:1rem}
.logo .brand-name{color:var(--text)!important;font-family:"DM Sans",Arial,sans-serif;font-size:1.08rem!important;font-weight:700!important;letter-spacing:.03em;text-transform:uppercase}
.logo .brand-tagline{color:var(--lime)!important;font-style:normal;font-size:0.6525rem!important;letter-spacing:.13em;text-transform:uppercase}
.logo-mark{width:44px;height:44px;border:1px solid var(--line)}
.nav-links{gap:1.2rem}
.nav-links a{color:var(--muted);min-height:44px;display:inline-flex;align-items:center}
.nav-links a:hover,.nav-links a[aria-current]{color:var(--lime)}
.menu-btn{color:var(--text);min-width:44px;min-height:44px}
.eyebrow,.hero p.eyebrow,.hero p.slogan{color:var(--lime)}
.eyebrow{letter-spacing:.14em;font-size:0.7925rem}
.accent{color:var(--text);text-decoration:underline;text-decoration-color:var(--brand-pink);text-decoration-thickness:2px;text-underline-offset:.14em}
.btn{border-radius:10px;min-height:48px}
.btn-primary,.quote-panel .btn-primary,.contact .btn-primary,.cta-band .btn-primary{background:var(--brand-green);color:#170e16}
.btn-primary:hover,.quote-panel .btn-primary:hover,.contact .btn-primary:hover,.cta-band .btn-primary:hover{background:var(--brand-green-hover);color:#170e16;transform:translateY(-2px)}
.btn-secondary,.cta-band .btn-secondary{color:var(--text);border-color:rgba(245,240,245,.35);background:transparent}
.btn-secondary:hover,.cta-band .btn-secondary:hover{background:var(--surface);color:var(--lime);border-color:var(--lime)}
:focus-visible{outline:3px solid var(--brand-green);outline-offset:4px}
section{padding:4.5rem 0}
.section-head{margin-bottom:2rem;gap:2.5rem}
h2{font-size:clamp(2rem,3.6vw,3.1rem)}
.hero{padding:3.6rem 0 2rem;background-image:linear-gradient(rgba(185,184,192,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(185,184,192,.025) 1px,transparent 1px);background-size:64px 64px}
.hero::before{width:560px;height:560px;background:radial-gradient(circle,rgba(175,128,156,.05),transparent 68%)}
.hero-grid{grid-template-columns:minmax(0,1.45fr) minmax(290px,.85fr);gap:3rem}
.hero h1{font-size:clamp(2.7rem,5.1vw,4.7rem);line-height:1.08}
.hero p{font-size:1.05rem;max-width:600px;color:var(--muted);margin:1.3rem 0 1.5rem}
.hero .eyebrow{font-size:0.7825rem;margin:0 0 1.1rem}
.hero-actions{gap:.75rem}
.hero-actions .btn{font-size:0.9425rem;padding:.8rem 1.1rem}
.hero-note{font-size:0.8525rem!important;margin:.7rem 0 0!important}
.credential-highlight{margin-top:1.35rem;gap:.7rem}
.credential-count strong{color:var(--lime)}
.credential-links a{background:var(--surface);color:var(--text);min-height:44px;font-size:0.8125rem}
.credential-links a:hover{background:var(--brand-green);color:#170e16;border-color:var(--lime)}
.studio-panel{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:1.65rem;box-shadow:0 20px 80px rgba(0,0,0,.22)}
.studio-panel-top{display:flex;justify-content:space-between;gap:1rem;font-family:"Fira Code",monospace;color:var(--lime);font-size:0.7125rem;letter-spacing:.12em;text-transform:uppercase;padding-bottom:1rem;border-bottom:1px solid var(--line)}
.studio-panel-top span:last-child{color:var(--brand-pink)}
.studio-panel h2{font-size:clamp(2rem,3.2vw,2.8rem);line-height:1.12;margin:1.35rem 0}
.studio-panel h2 em{color:var(--brand-pink);font-weight:400}
.studio-route{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.studio-route li{border:1px solid rgba(245,240,245,.12);border-radius:8px;padding:.7rem;font-size:0.8825rem;color:var(--muted)}
.studio-route span{display:block;color:var(--brand-pink);font-family:"Fira Code",monospace;font-size:0.6825rem;margin-bottom:.2rem}
.studio-panel-bottom{display:flex;gap:.6rem;align-items:center;padding-top:1.2rem;color:var(--muted);font-size:0.8225rem}
.studio-panel-bottom::before{content:"";width:7px;height:7px;background:var(--brand-green);border-radius:50%;flex-shrink:0}
.trust-row{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;margin-top:2.25rem}
.trust-item{padding:1.1rem 1.3rem;border-color:var(--line)}
.trust-item:first-child{padding-left:0}
.trust-item span{color:var(--muted);font-size:0.9225rem}
.services,.about,.consultation,.client-work,.ai-workflow{background:var(--paper)}
.services{border-top:1px solid var(--line)}
.services .section-head h2{white-space:normal;font-size:clamp(2rem,3.6vw,3.1rem);max-width:650px}
.services .section-head>p{max-width:650px;font-size:1rem}
.service-grid{gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}
.service-card{background:var(--surface);padding:1.65rem;min-height:0;height:100%;border-radius:18px;transition:border-color .2s,transform .2s}
.service-link:hover .service-card{border-color:var(--lime);transform:translateY(-3px)}
.service-num{width:auto;height:auto;display:inline-block;background:rgba(185,184,192,.08);color:var(--lime);border:1px solid var(--line);border-radius:5px;padding:.25rem .55rem;margin-bottom:1.1rem;font-size:0.7125rem}
.service-card h3{font-size:1.8rem;max-width:420px}
.service-card p{font-size:1.0125rem;line-height:1.65}
.service-card ul{font-size:0.8825rem;gap:.35rem 1.25rem;margin-top:.9rem}
.service-card li::marker{color:var(--brand-pink)}
.service-action{display:flex;justify-content:space-between;gap:1rem;margin-top:1.25rem;padding-top:.85rem;border-top:1px solid rgba(245,240,245,.1);color:var(--lime);font-size:0.8825rem;font-weight:600}
.more-services{margin-top:1.25rem;color:var(--muted);font-size:0.9625rem}
.more-services a{color:var(--lime);text-underline-offset:4px}
.client-card,.ai-example,.outcome,.contact-card,.package-card,.promo-box,.booking-form,.contact-form-panel,.blog-card,.related-card{background:var(--surface);color:var(--text);border:1px solid var(--line);box-shadow:none}
.client-badge{background:rgba(185,184,192,.08);color:var(--lime)}
.client-card-top{flex-wrap:wrap}
.client-card h3{font-size:2rem}
.outcomes{background:#1c1c20;border-block:1px solid var(--line);padding:3.5rem 0}
.outcomes .section-head p,.outcome p{color:var(--muted)}
.outcome{padding:1.5rem}
.outcomes .outcome > svg{color:var(--brand-green)}
.step span{color:var(--brand-pink)}
.step::before{background:var(--brand-pink)}
.step p{font-size:0.9825rem}
.about{border-top:1px solid var(--line)}
.about-panel{background:#242327;border:1px solid var(--line);min-height:300px;padding:2rem;border-radius:18px}
.about-panel::after{content:none}
.about-grid{gap:3rem}
.about-copy p{font-size:1rem}
.ai-workflow{border-top:1px solid var(--line);padding:4.5rem 0}
.ai-example h3{font-size:1.45rem}
.ai-example p{line-height:1.65}
.contact,.cta-band{background:radial-gradient(ellipse at 85% 10%,rgba(175,128,156,.055),transparent 60%),#1c1b20;border-block:1px solid var(--line);padding:4rem 0}
.contact p,.cta-band p{color:var(--muted)}
.contact-card a{color:var(--lime)}
.print-note{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);margin-top:2rem;padding-top:1.25rem;color:var(--muted);font-size:0.9425rem}
.print-note a{display:inline-flex;align-items:center;min-height:44px;color:var(--lime);font-weight:600;text-underline-offset:4px}
.package-card:has(.pkg-toggle:checked){border-color:var(--lime);box-shadow:0 0 0 1px var(--lime);background:#2b2a30}
.pkg-price,.pkg-details summary,.promo-result,.quote-recap strong{color:var(--lime)}
.pkg-details summary{min-height:44px;display:flex;align-items:center;gap:.5rem}
.pkg-details summary::before{content:"+";color:var(--brand-pink)}
.pkg-details[open] summary::before{content:"−"}
.pkg-toggle{accent-color:var(--lime);width:21px;height:21px}
.pkg-toggle-label{min-height:44px;color:var(--text)}
.pkg-num,.consultation-steps span{color:#170e16}
.quote-panel{background:var(--surface);border:1px solid var(--line)}
#quoteEmpty,.quote-note,.quote-panel #promoStatus{color:var(--muted)}
.promo-form input[type="email"],.promo-code input,.form-group input,.form-group textarea,.chat-form input{background:#161619;color:var(--text);border-color:rgba(245,240,245,.27);min-height:48px}
input::placeholder,textarea::placeholder{color:#a89aaf;opacity:1}
.form-group label{color:var(--text)}
.form-group input:focus,.form-group textarea:focus,.chat-form input:focus{outline:2px solid var(--lime);outline-offset:2px;border-color:var(--lime)}
.booking-success,.form-success{background:#2a2930;color:#dad7df}
.form-submit{background:var(--brand-green);color:#170e16;min-height:48px;border-radius:10px}
.form-submit:hover{background:var(--brand-green-hover);color:#170e16}
.quote-recap{background:var(--surface)}
.chat-panel{background:var(--surface)}
.chat-header{background:#161619}
.chat-header span{color:var(--muted)}
.chat-msg.bot{background:#2e2c33;color:var(--text)}
.chat-msg a,.chat-disclaimer a{color:var(--lime)}
.chip{background:var(--surface);color:var(--text);min-height:44px}
.chat-form button,.chat-header button{min-width:44px;min-height:44px}
.chat-fab{background:var(--brand-pink);color:#170e16;box-shadow:0 6px 20px rgba(0,0,0,.22)}
.chat-fab:hover{background:var(--brand-pink-hover)}
footer{color:var(--muted);border-top:1px solid var(--line)}
.footer-links{flex-wrap:wrap;gap:.4rem 1rem}
.footer-links a{min-height:44px;display:inline-flex;align-items:center}
.article-body p,.article-body ul{color:var(--muted)}
.callout{background:var(--surface);color:var(--text);border-color:var(--lime)}
.tag-chip{color:var(--lime);background:rgba(185,184,192,.07)}
.share-btn{background:var(--surface);color:var(--lime);min-width:44px;min-height:44px}
.top,.details,.stickers{background:var(--paper)}
.top nav{position:static;background:transparent;border:0}
.card,.product-card,.sticker-tile{background:var(--surface);color:var(--text);border-color:var(--line)}
.card a,.product-card .price{color:var(--lime)}
.icon{color:#170e16}
.cart-toggle{color:#170e16}
.buy-button{background:var(--brand-green);color:#170e16}
shopify-cart::part(primary-button){background:var(--brand-green);color:#170e16}
.sticker-tile img{background:#eae7e9}
/* Color carries a small, consistent role: logo lime for actions; logo pink for editorial details. */
.logo .brand-tagline{color:var(--muted)!important}
.hero .eyebrow,.hero p.eyebrow,.hero p.slogan{color:var(--brand-pink)}
.nav-links a:hover,.nav-links a[aria-current],.service-action,.more-services a,.print-note a,.contact-card a{color:var(--brand-green)}
.nav-links a[aria-current="page"]{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px}
.studio-panel{border-top:2px solid var(--brand-green)}
.service-num{color:var(--brand-pink);background:rgba(219,0,161,.07);border-color:rgba(219,0,161,.22)}
.service-link:hover .service-card{border-color:var(--brand-green)}
.package-card:has(.pkg-toggle:checked){border-color:var(--brand-green);box-shadow:0 0 0 1px var(--brand-green)}
.pkg-toggle{accent-color:var(--brand-green)}
.btn-secondary:hover,.cta-band .btn-secondary:hover{color:var(--brand-green);border-color:var(--brand-green)}

/* Preserve the exact logo hues, with small color areas and readable neutral labels. */
.logo-mark svg text{fill:var(--brand-green)}
.hero .eyebrow,.hero p.eyebrow,.hero p.slogan,.studio-panel-top span:last-child,.studio-route span,.service-num,.step span,.pkg-details summary::before{color:var(--text)}
.hero .eyebrow::before{content:"";display:inline-block;width:18px;height:2px;background:var(--brand-pink);vertical-align:middle;margin-right:10px}
.service-num{border-left:2px solid var(--brand-pink);background:transparent}
.nav-cta.btn-primary{background:transparent;color:var(--text);border:1px solid var(--brand-green)}
.nav-cta.btn-primary:hover{background:var(--surface);color:var(--brand-green)}
.chat-fab{background:var(--surface);color:var(--text);border:2px solid var(--brand-pink)}
.chat-fab:hover{background:var(--surface);border-color:var(--brand-green)}
/* One-step readability increase for compact labels, forms, and supporting text. */
.chat-header strong{font-size:0.9825rem}
.chat-header span{font-size:0.7825rem}
.chat-msg{font-size:0.9225rem}
.chip{font-size:0.8025rem}
.chat-form input{font-size:0.9125rem}
.chat-disclaimer{font-size:0.7425rem}
.nav-links a{font-size:0.9225rem}
.hero p.slogan{font-size:1.0125rem}
.client-badge{font-size:0.7625rem}
.outcome p{font-size:0.9225rem}
.step span{font-size:0.7625rem}
.contact-card strong{font-size:0.7825rem}
.contact-card p{font-size:0.9625rem}
.footer-inner{font-size:0.8625rem}
.ai-example p{font-size:0.9825rem}
.hero-intro{font-size:0.9625rem}
.pkg-num{font-size:0.7825rem}
.pkg-body p{font-size:0.9825rem}
.pkg-body ul{font-size:0.8825rem}
#quoteItems{font-size:0.9125rem}
#quoteEmpty{font-size:0.9125rem}
.quote-note{font-size:0.7825rem}
.promo-box p{font-size:0.9625rem}
.promo-form label{font-size:0.8625rem}
.promo-form .promo-consent{font-size:0.8625rem}
.promo-code label{font-size:0.8425rem}
.promo-code p{font-size:0.8125rem}
.promo-discount{font-size:0.9125rem}
.consultation-steps li{font-size:0.9825rem}
.consultation-steps span{font-size:0.7625rem}
.form-group label{font-size:0.8825rem}
.form-group input,.form-group textarea{font-size:1.0125rem}
.booking-note{font-size:0.8425rem}
.booking-success{font-size:0.9425rem}
.form-submit{font-size:1.0125rem}
.form-success{font-size:0.9425rem}
.quote-recap strong{font-size:0.7825rem}
.quote-recap ul{font-size:0.9225rem}
.blog-card p{font-size:0.9425rem}
.blog-card .meta{font-size:0.7625rem}

/* Give numbered service and process labels one additional size step. */
.service-num{font-size:.775rem}
.pkg-num{font-size:.845rem}
.step span{font-size:.825rem}
.consultation-steps span{font-size:.825rem}
.studio-route span{font-size:.745rem}
@media(max-width:1050px){.nav-links{gap:.8rem}.logo .brand-name{font-size:1.0125rem!important}.logo .brand-tagline{font-size:0.5825rem!important}.nav-cta{font-size:0.8625rem;padding:.65rem .8rem}.hero-grid{gap:1.5rem}}
@media(max-width:800px){
  .nav-links{background:#161619;max-height:calc(100dvh - 76px);overflow-y:auto;gap:.25rem}
  .hero{padding:2.25rem 0 1.5rem}.hero-grid{grid-template-columns:1fr;gap:1.5rem}
  .studio-panel{display:none}.hero h1{font-size:clamp(2.65rem,7vw,4rem)}
  .hero p{font-size:1rem}.hero .eyebrow{font-size:0.7225rem}
  .trust-row{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1.5rem}
  .trust-item{padding:.9rem .8rem;border:0;border-right:1px solid var(--line)}
  .trust-item strong{font-size:0.6825rem}.trust-item span{font-size:0.8225rem;display:block}
  .client-layout,.about-grid{gap:1.75rem}.outcome-grid{grid-template-columns:1fr}
  .quote-panel,.promo-box{padding:1.35rem}.quote-layout{gap:1rem;padding-bottom:3rem}
  .print-note{align-items:flex-start;flex-direction:column;gap:.2rem}
}
@media(max-width:520px){
  .logo .brand-name{font-size:1.0125rem!important}.logo .brand-tagline{font-size:0.5625rem!important}.logo-mark{width:40px;height:40px}
  section,.ai-workflow,.consultation{padding:3rem 0}.service-grid{grid-template-columns:1fr}
  .hero-actions .btn{width:100%}.hero-actions .btn-secondary{min-height:44px}
  .service-card{padding:1.4rem}.service-card h3{font-size:1.6rem}.service-num{margin-bottom:.8rem}
  .credential-count{padding-right:.65rem}.credential-count strong{font-size:1.4rem}.credential-count span{font-size:0.6925rem}
  .credential-links{gap:.35rem}.credential-links a{font-size:0.7225rem;padding:.35rem .55rem}
  .trust-row{grid-template-columns:1fr}.trust-item,.trust-item:first-child{padding:.65rem 0;display:flex;gap:1rem;align-items:baseline;border:0;border-bottom:1px solid var(--line)}
  .trust-item strong{flex:0 0 104px;margin:0;font-size:0.7125rem}.trust-item span{font-size:0.8425rem}
  .package-card{padding:.85rem;gap:.5rem}.pkg-body h3{font-size:.95rem}.pkg-body .pkg-scope{font-size:0.8625rem}.pkg-price{font-size:0.8425rem}
  .pkg-toggle-label{font-size:0.7625rem}.pkg-details summary{font-size:0.8425rem}
  .promo-form>div{width:100%;min-width:0}.promo-form input[type="email"]{width:100%;min-width:0}
  .about-panel{min-height:220px}.about-panel blockquote{font-size:1.9rem}.footer-inner{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.service-link:hover .service-card,.btn:hover{transform:none}}
