/* qatom.ai — brand conformance layer, BrandOS V3.1 (2026-10-23). Loaded last on every page.
   Source of truth: TODAQmicro/qatom-brand-os (brandos-v3.1), brand/brand-for-ai.md and tokens/qatom.tokens.json.
   Parts 1–4 are the approved CTA and hero patch from "Brand OS/qatom.ai website handoff" (Hassan, 2026-10-23).
   Retired colours (pine #0C1A17, the V3.0 green-leaning neutrals) were remapped in each page's CSS to V3.1 tokens. */

/* 1. Primary: the verdigris glass button, one hairline, near-black label */
.btn.sig,.btn.ink,.cp-btn.sig,.qfto-agree{background:linear-gradient(180deg,#93DACE 0%,#6FCBBC 100%)!important;color:#0F1517!important;border:0!important;
  box-shadow:inset 0 0 0 1px rgba(15,21,23,.10),inset 0 1px 0 rgba(255,255,255,.45),0 1px 2px rgba(15,21,23,.14),0 10px 22px -14px rgba(31,140,124,.65)!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;transition:filter .2s,transform .2s}
.btn.sig:hover,.btn.ink:hover,.cp-btn.sig:hover,.qfto-agree:hover{filter:brightness(1.04)}
.btn.sig:active,.btn.ink:active{transform:scale(.98)}
/* 2. Hero overlay: neutral near-black instead of pine */
.hero .hero-scrim{background:linear-gradient(180deg,rgba(18,19,19,.40) 0%,rgba(18,19,19,.74) 40%,rgba(18,19,19,.84) 100%)!important}
.hero::after{opacity:.35!important}
.hero-sub,.hero-offer{color:rgba(243,246,247,.86)!important}
/* 3. Secondary buttons. Light grounds: white, one hairline, soft shadow. Dark grounds: plain glass, one hairline. */
.btn.ghost-i,.btn.ev-ghost,.btn.white-verd,.btn.ghost-d{background:#FFFFFF!important;color:#161D20!important;border:0!important;
  box-shadow:inset 0 0 0 1px rgba(22,29,32,.10),0 1px 2px rgba(15,21,23,.08),0 8px 18px -12px rgba(15,21,23,.28)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
:is(.hero,.pine,.ctaband,.final,.pastsec,.ftr,.dark,.slate) .btn:is(.ghost-d,.ghost-i,.white-verd,.ev-ghost),
.oxide:not(.hlsec) .btn:is(.ghost-d,.ghost-i,.white-verd){background:rgba(255,255,255,.07)!important;color:#F3F6F7!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)!important;border:0!important}
:is(.hero,.pine,.ctaband,.final,.pastsec,.oxide:not(.hlsec)) .btn:is(.ghost-d,.ghost-i,.white-verd):hover{background:rgba(255,255,255,.12)!important}
.btn:is(.ghost-i,.ev-ghost,.white-verd,.ghost-d):hover{filter:none}
@media (prefers-reduced-transparency:reduce),(prefers-contrast:more){.btn.sig,.btn.ink{background:#8FD3C8!important;box-shadow:inset 0 0 0 1px rgba(15,21,23,.35)!important}}
/* 4. Shape: 12 px buttons, 10 px in the nav; capsules are for tags only */
.btn{border-radius:12px!important}
.nav .btn,.btn.sm,header .btn{border-radius:10px!important}
.nav-menu .cta{border-radius:12px!important;background:linear-gradient(180deg,#93DACE 0%,#6FCBBC 100%)!important;color:#0F1517!important}
.lang{border-radius:10px!important;border-color:rgba(243,246,247,.16)!important}
.lang a{border-radius:7px!important}
.lang a.on{background:rgba(255,255,255,.14)!important;color:#F3F6F7!important}
.qs-btn{border-radius:10px!important}
input:not([type=checkbox]):not([type=radio]),select,textarea{border-radius:10px}
/* 5. Verdigris is an accent, never a field: the CTA bands sit on oxide */
.ctaband,.final{background:#1C4B4B!important;color:#F3F6F7!important}
.ctaband h2,.final h2{color:#FFFFFF!important}
.ctaband p,.final p{color:rgba(243,246,247,.84)!important}
.ctaband a:not(.btn),.final a:not(.btn){color:#79D2C5}
/* 6. Tags stay capsules but read as a quiet verdigris tint */
.tag{background:rgba(51,186,166,.12)!important;color:#1E766C!important;box-shadow:inset 0 0 0 1px rgba(30,118,108,.18)}
:is(.pine,.hero,.pastsec) .tag{background:rgba(121,210,197,.12)!important;color:#79D2C5!important;box-shadow:inset 0 0 0 1px rgba(121,210,197,.22)}
/* 7. Home hero (v67): search lives in the footer; offer line removed; more air between lines */
.hero .wrap{padding-top:clamp(150px,18vh,200px)!important;padding-bottom:clamp(104px,13vh,150px)!important}
.hero .hero-h{line-height:1.06!important}
.hero .hero-tagline{margin-top:30px!important}
.hero .hero-cta{margin-top:52px!important;gap:16px!important}
.hero .hero-proof{margin-top:48px!important}
.hero .hero-channels{margin-top:64px!important}
@media (max-width:640px){.hero .hero-tagline{margin-top:20px!important}.hero .hero-cta{margin-top:36px!important}.hero .hero-proof{margin-top:32px!important}.hero .hero-channels{margin-top:44px!important}}
/* 8. Footer (v67), top to bottom: sign-off and shortcuts, search, links, the wordmark */
.ftr.ftr-v67{background:#121313!important;color:#F3F6F7;padding:clamp(72px,9vw,112px) 0 0!important;border-top:1px solid rgba(243,246,247,.08)}
.ftr-v67 .ftr-signoff{text-align:center;padding:0 clamp(16px,5vw,56px)}
.ftr-v67 .signoff-tag{font-family:"Source Serif 4",Georgia,serif;font-weight:400;font-size:clamp(1.4rem,2.6vw,2.05rem);line-height:1.28;letter-spacing:-.015em;color:#F3F6F7;max-width:30ch;margin:0 auto 26px;text-wrap:balance}
.ftr-v67 .shortcuts{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:0}
.ftr-v67 .chip{font:500 12.5px/1 "IBM Plex Mono",monospace;color:#79D2C5;text-decoration:none;border:0;border-radius:8px;padding:10px 13px;box-shadow:inset 0 0 0 1px rgba(243,246,247,.14);transition:box-shadow .2s,background .2s}
.ftr-v67 .chip:hover{background:rgba(121,210,197,.09);box-shadow:inset 0 0 0 1px rgba(121,210,197,.35)}
.ftr-v67 .ftr-search{display:flex;flex-direction:column;align-items:center;gap:14px;margin:clamp(56px,7vw,80px) auto 0;padding:0 clamp(16px,5vw,56px)}
.ftr-v67 .fs-q{margin:0;font:400 15px/1.4 "Hanken Grotesk",sans-serif;color:rgba(243,246,247,.66)}
.ftr-v67 .qs-field{max-width:600px;border-radius:12px!important;border:0!important;background:rgba(255,255,255,.07)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);color:rgba(243,246,247,.78)}
.ftr-v67 .qs-field:hover{background:rgba(121,210,197,.09)!important}
.ftr-v67 .qs-field kbd{border-radius:6px}
.ftr-v67 .cols{padding:clamp(56px,7vw,80px) 0 40px!important;margin-top:clamp(56px,7vw,80px);border-top:1px solid rgba(243,246,247,.08)}
.ftr-v67 .col h4{font:500 12px/1.2 "Hanken Grotesk",sans-serif!important;letter-spacing:.08em;text-transform:uppercase;color:#79D2C5;margin:0 0 14px}
.ftr-v67 .col a{color:rgba(243,246,247,.72)}
.ftr-v67 .col a:hover{color:#FFFFFF}
.ftr-v67 .bottom{border-top:1px solid rgba(243,246,247,.08)!important;padding:22px 0 0!important}
.ftr-v67 .ftr-lockup-wrap{padding:clamp(48px,7vw,88px) clamp(16px,5vw,56px) clamp(40px,5vw,64px)!important;border:0!important;margin:0!important;text-align:center}
.ftr-v67 .ftr-lockup{width:100%;max-width:1200px;height:auto;display:block;margin:0 auto}
.ftr-v67 .brandbar{display:none}
/* 9. Footer (v67b): the rule stays under the links; the legal row sits below the wordmark */
.ftr-v67 .ftr-rule{border-top:1px solid rgba(243,246,247,.08)}
.ftr-v67 .cols{padding-bottom:56px!important}
.ftr-v67 .ftr-legal .bottom{border-top:0!important;padding:0 0 44px!important}
.ftr-v67 .ftr-lockup-wrap{padding-bottom:clamp(28px,4vw,44px)!important}
