/* Shared navigation and footer for the consolidated three-theme website. */
nav.consolidated-nav{height:76px;padding:0 max(24px,calc((100vw - 1320px)/2));z-index:100;gap:24px}
.consolidated-nav .nav-left{width:100%;gap:30px;justify-content:space-between}
.consolidated-nav .logo{display:flex;flex-shrink:0;height:40px}
.consolidated-nav .art-brand-logo{display:block;width:100px;height:40px;object-fit:contain;object-position:left center}
.consolidated-nav .nav-links{gap:clamp(20px,2.6vw,40px);align-items:center}
.consolidated-nav .nav-links>li>a,.consolidated-nav .sub-toggle{font:600 1rem/1.3 'Host Grotesk',Arial,sans-serif;letter-spacing:0;text-transform:none;color:var(--ink-2);white-space:nowrap;background:none;border:0;text-decoration:none;cursor:pointer;padding:12px 0}
.consolidated-nav .nav-links>li>a:hover,.consolidated-nav .nav-links [aria-current=page],.consolidated-nav .sub-toggle:hover{color:var(--ink)}
.consolidated-nav .art-stack-label{display:inline-flex;align-items:baseline;gap:0;font-size:1.06rem;letter-spacing:-.025em}
.consolidated-nav .art-stack-label sup{font-size:.55em;margin-left:2px;align-self:flex-start;line-height:1.5}
nav.consolidated-nav .nav-links .sub-toggle{display:inline-flex;align-items:center;gap:8px;pointer-events:auto;color:var(--ink-2)!important}
.consolidated-nav .sub{min-width:315px;display:block;padding:10px;left:-12px;background:var(--bg);border:1px solid var(--line-strong);border-radius:8px}
.consolidated-nav .sub a{font:600 .94rem/1.45 'Host Grotesk',Arial,sans-serif;color:var(--ink-2);white-space:normal;padding:11px 12px}
.consolidated-nav .has-sub.is-expanded>.sub{visibility:visible;opacity:1;transform:none}
.consolidated-nav a:focus-visible,.consolidated-nav button:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.consolidated-footer{background:#111!important;color:#f2f2ed;padding:0 28px!important;position:relative;z-index:1;font-family:'Manrope',Arial,sans-serif}
.consolidated-footer-inner{max-width:1320px;margin:0 auto}
.consolidated-footer a{color:#bdbdb7;text-decoration:none;font-size:.87rem;line-height:1.7;transition:color .15s}
.consolidated-footer a:hover{color:#fec422}
.footer-details{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:64px;padding:48px 0}
.footer-details>div>a{display:block;margin:10px 0}
.footer-details h3{font:600 1.1rem/1.4 'Host Grotesk',Arial,sans-serif;color:#eee;margin-bottom:20px}
.footer-contact img{display:block;object-fit:contain;object-position:left}
.footer-contact p{color:#ddd;font-size:.88rem;margin:22px 0 12px}
.footer-contact address{color:#a4a49d;font-size:.83rem;font-style:normal;line-height:1.8}
.footer-legal{border-top:0;padding:24px 0;display:flex;gap:26px;flex-wrap:wrap;color:#9b9b95;font-size:.76rem}
.footer-legal a{font-size:.76rem}.footer-legal span:last-child{margin-left:auto}
@media(max-width:1000px){
 .consolidated-nav .nav-toggle{display:flex;margin-left:auto;flex-shrink:0}
 .consolidated-nav .nav-links{display:flex!important;position:absolute;top:76px;left:0;right:0;align-items:stretch;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--line);padding:0 24px;visibility:hidden;pointer-events:none;max-height:0;opacity:0;overflow:hidden;transform:none}
 .consolidated-nav.open .nav-links{visibility:visible;pointer-events:auto;max-height:calc(100dvh - 76px);overflow-y:auto;opacity:1;padding:18px 24px 26px}
 .consolidated-nav .nav-links>li{width:100%;list-style:none;opacity:1;transform:none}
 .consolidated-nav .nav-links>li>a,.consolidated-nav .sub-toggle{display:flex;width:100%;padding:14px 0;font-size:1rem}
 .consolidated-nav .sub-toggle::after{display:block}.consolidated-nav .has-sub::after{display:none}
 .consolidated-nav .sub{display:none!important;position:static;min-width:0;margin:0;padding:2px 0 10px 12px;background:transparent;border:0;box-shadow:none;transform:none}
 .consolidated-nav .has-sub.is-expanded>.sub{display:block!important;opacity:1;visibility:visible}
 .consolidated-nav .sub li{opacity:1;transform:none}.consolidated-nav .sub a{padding:12px}
 .footer-details{gap:30px}
 }
@media(max-width:640px){.footer-details{grid-template-columns:1fr;gap:30px;padding:30px 0}.footer-details>div>a{margin:12px 0}.footer-legal{gap:14px 24px}.footer-legal span:first-child,.footer-legal span:last-child{width:100%;margin:0}}
@media(prefers-reduced-motion:reduce){.consolidated-nav *,.consolidated-footer *{transition:none!important}}

.footer-navigation{display:flex;flex-direction:column;align-items:flex-start}
.footer-details .footer-navigation>a{font:600 1.05rem/1.5 'Host Grotesk',Arial,sans-serif;color:#f2f2ed;margin:0 0 16px}
.footer-details .footer-navigation>a:hover{color:#fec422}
.footer-details sup{font-size:.55em;vertical-align:super;margin-left:2px}
/* The approved home-page conversation section in the two light themes. */
.contact-section-light{position:relative;z-index:1;padding:64px 28px;background:var(--bg);scroll-margin-top:76px}
.contact-section-light .contact-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:80px;align-items:start}
.contact-section-light .contact-grid>*{min-width:0}
.contact-section-light .contact-title{max-width:480px;font-size:clamp(2rem,3.4vw,3rem);color:var(--ink)}
.contact-section-light .contact-title .it{color:#8b2335}
.contact-section-light .contact-sub{color:var(--ink-3)}
.contact-section-light .form{background:transparent;border:0;padding:0;box-shadow:none}
.contact-section-light .form-row{gap:8px;background:transparent;border-radius:0;overflow:visible}
.contact-section-light .form>.form-field{margin-top:8px!important}
.contact-section-light .form-field{border:1px solid var(--line-strong);border-radius:10px;padding:11px 14px}
.contact-section-light .form-field:focus-within{border-color:#8b2335}
.contact-section-light .form-field label{color:var(--ink-3)}
.contact-section-light .form-field textarea{min-height:72px}
.contact-section-light .form-actions{padding:14px 0 0}
@media(max-width:720px){.contact-section-light{padding:48px 28px}.contact-section-light .contact-grid{grid-template-columns:1fr;gap:36px}}

/* Linked service tiles retain the existing home-page treatment. */
a.b-card{text-decoration:none;color:inherit}

/* Cookie consent banner and footer settings link (assets/cookie-consent.js) */
.cookie-banner{position:fixed;left:24px;right:24px;bottom:24px;z-index:200;max-width:960px;margin:0 auto;display:flex;align-items:center;gap:28px;padding:22px 24px;background:#1B1B19;border:1px solid #3A3A36;border-radius:12px;box-shadow:0 16px 48px #0000008c;color:#E7E4D8;font-family:'Manrope',Arial,sans-serif}
.cookie-banner h2{font:600 1.05rem/1.3 'Host Grotesk',Inter,sans-serif;color:#fff;margin:0 0 6px}
.cookie-banner p{font-size:.9rem;line-height:1.6;color:#B9B7AE;margin:0}
.cookie-banner a{color:#fff;text-decoration:underline;text-decoration-color:#FEC422;text-underline-offset:3px}
.cookie-banner-actions{display:flex;gap:10px;flex-shrink:0}
.cookie-banner button{min-width:108px;padding:11px 18px;border-radius:6px;font:600 .9rem 'Host Grotesk',Inter,sans-serif;cursor:pointer;border:1px solid #FEC422;transition:background .15s,color .15s}
.cookie-banner [data-choice="accepted"]{background:#FEC422;color:#141414}
.cookie-banner [data-choice="refused"]{background:transparent;color:#FEC422}
.cookie-banner button:hover{background:#E8B016;border-color:#E8B016;color:#141414}
.cookie-banner button:focus-visible,.cookie-settings-link:focus-visible{outline:2px solid #FEC422;outline-offset:3px}
.cookie-settings-link{background:none;border:0;padding:0;font:inherit;font-size:.76rem;color:#BDBDB7;cursor:pointer}
.cookie-settings-link:hover{color:#fff}
.cookie-short{display:none}
@media(max-width:720px){.cookie-banner{left:8px;right:8px;bottom:8px;flex-direction:column;align-items:stretch;gap:10px;padding:12px 14px;border-radius:10px}.cookie-banner h2{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.cookie-banner p{font-size:.84rem;line-height:1.45}.cookie-long{display:none}.cookie-short{display:inline}.cookie-banner-actions button{flex:1;min-height:44px;padding:10px 12px}}
@media(prefers-reduced-motion:reduce){.cookie-banner button{transition:none}}

/* Header call to action and current-section marker */
.consolidated-nav .nav-links>li>a.nav-contact{display:inline-flex;align-items:center;min-height:42px;padding:9px 18px;border-radius:8px;background:#FEC422;color:#141414!important}
.consolidated-nav .nav-links>li>a.nav-contact:hover{background:#FFD14E}
.consolidated-nav .nav-links>li>a[aria-current],.consolidated-nav .sub-toggle.is-current{box-shadow:inset 0 -2px 0 #FEC422}
.consolidated-nav .nav-links>li>a.nav-contact[aria-current]{box-shadow:none}
.consolidated-nav .sub a[aria-current]{color:var(--ink);box-shadow:inset 2px 0 0 #FEC422}
.consolidated-nav .nav-cta{display:none}
.consolidated-nav .nav-toggle{min-width:44px;min-height:44px}
@media(max-width:1000px){
 .consolidated-nav .nav-cta{display:inline-flex;align-items:center;min-height:40px;margin-left:auto;padding:8px 14px;border-radius:8px;background:#FEC422;color:#141414;font:600 .88rem/1 'Host Grotesk',Arial,sans-serif;text-decoration:none;white-space:nowrap}
 .consolidated-nav .nav-cta+.nav-toggle{margin-left:8px}
 .consolidated-nav .nav-links>li>a.nav-contact{display:flex;justify-content:center;margin-top:10px;min-height:48px}
 .consolidated-nav .nav-links>li>a[aria-current],.consolidated-nav .sub-toggle.is-current{box-shadow:inset 3px 0 0 #FEC422;padding-left:12px}
 .consolidated-nav .nav-links>li>a.nav-contact[aria-current]{box-shadow:none;padding-left:0}
}

/* Larger tap areas for small text links and controls, without changing the layout */
.spe-link,.contact-text-link,.contact-details a,.stack-text-link,.contact-form-help a{display:inline-block;padding-block:12px;margin-block:-12px}
.dashboard-motion-toggle{position:absolute}
.dashboard-motion-toggle::after{content:'';position:absolute;inset:-10px}
@media(max-width:720px){.agent-stage-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.agent-stage-tabs [role=tab]{min-width:0;min-height:44px;padding-inline:6px}}

/* One button system for every page. Page styles are layered, so these use extra specificity to win. */
html body:not(.home) .btn-primary,html body:not(.home) .cta .btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 22px;border:1px solid #FEC422;border-radius:8px;background:#FEC422;color:#141414;font:600 .95rem/1.2 'Host Grotesk',Arial,sans-serif;letter-spacing:0;text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s}
html body:not(.home) .btn-primary:hover,html body:not(.home) .cta .btn-primary:hover{background:#FFD14E;border-color:#FFD14E;color:#141414}
html body:not(.home) .btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 22px;border:1px solid #62625B;border-radius:8px;background:transparent;color:#F5F5F2;font:600 .95rem/1.2 'Host Grotesk',Arial,sans-serif;letter-spacing:0;text-decoration:none;cursor:pointer;transition:border-color .15s,color .15s}
html body:not(.home) .btn-ghost:hover{border-color:#FEC422;color:#FEC422}
html body:not(.home) .btn-primary:focus-visible,html body:not(.home) .btn-ghost:focus-visible{outline:2px solid #FEC422;outline-offset:3px}

/* Photos share one monochrome treatment. */
.workshop-photo img{filter:grayscale(1)}

/* Print: dark text on white, no header, banner or animation. */
@media print{
 nav.consolidated-nav,.cookie-banner,.skip,.nav-cta,.footer-details,.marquee,.hero-sphere{display:none!important}
 *,*::before,*::after{color:#111!important;background:transparent!important;box-shadow:none!important;text-shadow:none!important;animation:none!important;transition:none!important}
 html,body{background:#fff!important}
 .reveal,.js .reveal{opacity:1!important;transform:none!important}
 img{filter:none!important;max-width:100%!important}
 a[href^="http"]::after{content:" (" attr(href) ")";font-size:.8em;word-break:break-all}
 section,article{break-inside:avoid-page}
}
#industry-hero-title .hero-secondary{color:#FEC422}
