/* ==========================================================================
   QED CORE — component styles (DRAFT).
   Plain on purpose: layout + legibility only. Every colour/size comes from the
   design tokens in the theme (qed-gp-child/assets/css/tokens.css). The final UI
   replaces token values and/or overrides these selectors — markup never changes.
   ========================================================================== */
:root{--qed-c-warn:#8a5a00}
.qed [hidden]{display:none!important}
.qed-section:has(>.qed-wrap:empty){display:none}
.qed-wrap{max-width:var(--qed-wrap,1200px);margin:0 auto;padding-inline:var(--qed-gutter,1.25rem)}
.qed-wrap--wide{max-width:1360px}
.qed-section{padding-block:var(--qed-section-y,5rem);position:relative}
.qed-section--tint{background:var(--qed-bg-alt)}
.qed-section--deep{background:var(--qed-bg-deep);color:var(--qed-ink-on-deep)}
.qed-section--deep h1,.qed-section--deep h2,.qed-section--deep h3{color:var(--qed-ink-on-deep)}
.qed-spacer{height:clamp(2rem,5vw,4rem)}
.qed-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.qed-kicker{font-family:var(--qed-font-head);font-weight:600;font-size:.95rem;letter-spacing:.14em;text-transform:uppercase;color:var(--qed-accent);margin:0 0 .8rem}
.qed-section--deep .qed-kicker{color:var(--qed-air-blue)}
.qed-fine{font-size:.9rem;color:var(--qed-ink-soft);margin:.6rem 0 0;max-width:70ch}
.qed-section--deep .qed-fine{color:rgba(242,242,242,.75)}
.qed-lede{font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.4;max-width:34em;font-weight:300}
.qed-prose{max-width:62ch}.qed-prose--wide{max-width:74ch}
.qed-h3{font-size:var(--qed-fs-h3)}

/* Hero */
.qed-hero{position:relative;overflow:hidden;padding-block:clamp(4rem,12vw,9.5rem);background:var(--qed-bg)}
.qed-hero .qed-wrap{position:relative;z-index:1}
.qed-hero h1{max-width:14ch;margin-bottom:.35em}
.qed-exp--glow{position:absolute;inset:0;pointer-events:none;z-index:0}
.qed-glow__c{display:block;width:100%;height:100%}

/* Buttons */
.qed-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.6rem 0 0}
.qed-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.55rem 1.4rem;border-radius:999px;font-family:var(--qed-font-head);font-weight:600;font-size:1.05rem;letter-spacing:.03em;text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .2s var(--qed-ease),filter .2s}
.qed-btn:hover{transform:translateY(-1px)}
.qed-btn--cta{background:var(--qed-cta);color:var(--qed-cta-ink)}
.qed-btn--cta:hover{color:var(--qed-cta-ink);filter:brightness(.97)}
.qed-btn--ghost{background:transparent;color:var(--qed-ink);border-color:var(--qed-line-strong)}
.qed-btn--ghost:hover{border-color:var(--qed-accent);color:var(--qed-accent)}
.qed-btn[disabled]{opacity:.4;cursor:default;transform:none}

/* Grids + cards */
.qed-cols{display:grid;gap:var(--qed-gap);list-style:none;margin:0;padding:0}
.qed-cols--3{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.qed-pillars li{border-top:2px solid var(--qed-ink);padding-top:1rem}
.qed-card{background:var(--qed-white-smoke);border:1px solid var(--qed-line);border-radius:var(--qed-radius);padding:1.5rem;box-shadow:var(--qed-shadow)}
.qed-section--tint .qed-card{background:var(--qed-bg)}
.qed-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.qed-figure{margin:0 0 2rem}.qed-figure img{width:100%;height:auto;border-radius:var(--qed-radius);display:block}
.qed-figure figcaption{font-size:.9rem;color:var(--qed-ink-soft);margin-top:.5rem}
.qed-logoplate{background:#F2F2F2;border-radius:var(--qed-radius);padding:2rem;display:grid;place-items:center}
.qed-logoplate img{max-width:260px;height:auto}
.qed-badge{display:inline-block;font-family:var(--qed-font-head);font-weight:600;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;padding:.15rem .6rem;border-radius:999px;background:var(--qed-deep-atlantic);color:var(--qed-white-smoke);margin-right:.35rem}
.qed-badge--soft{background:transparent;color:var(--qed-ink);border:1px solid var(--qed-line-strong)}
.qed-chips{list-style:none;padding:0;margin:.4rem 0 1rem;display:flex;flex-wrap:wrap;gap:.4rem}
.qed-chips li{font-size:.85rem;border:1px solid var(--qed-line-strong);border-radius:999px;padding:.1rem .7rem}

/* Tables */
.qed-tablewrap{overflow-x:auto}
.qed-table{width:100%;border-collapse:collapse;font-size:1.05rem}
.qed-table th,.qed-table td{padding:.8rem .9rem;text-align:left;border-bottom:1px solid var(--qed-line-strong);vertical-align:top}
.qed-table thead th{font-family:var(--qed-font-head);text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;color:var(--qed-ink-soft)}
.qed-table tbody th{font-weight:600}
.qed-table .qed-num{font-family:var(--qed-font-head);font-weight:700;font-size:1.35rem;white-space:nowrap}
.qed-table--compare td,.qed-table--compare thead th:not(:first-child){text-align:center}

/* Claims registry rendering */
.qed-claim{display:inline}
.qed-claim__val{font-family:var(--qed-font-head);font-weight:700}
.qed-chip{font:inherit;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600;border:1px solid var(--qed-line-strong);background:transparent;border-radius:999px;padding:.05rem .6rem;color:var(--qed-detail);cursor:pointer;vertical-align:middle}
.qed-chip:hover,.qed-chip[aria-expanded="true"]{background:var(--qed-detail);color:var(--qed-white-smoke);border-color:var(--qed-detail)}
.qed-chip-help{display:block;font-size:.85rem;font-weight:400;color:var(--qed-ink-soft);margin:.3rem 0 .2rem;max-width:42ch}
.qed-claimlist{list-style:none;padding:0;margin:.8rem 0 0;display:grid;gap:.7rem}
.qed-proofbar{list-style:none;padding:0;margin:0 0 1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:var(--qed-gap)}
.qed-proofbar .qed-claim{display:flex;flex-direction:column;gap:.35rem}
.qed-proofbar .qed-claim__val{font-size:clamp(2rem,3.6vw,3rem);line-height:1;color:var(--qed-accent)}
.qed-proofbar .qed-claim__label{color:var(--qed-ink)}
.qed-readiness{list-style:none;padding:0;margin:1.6rem 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--qed-line-strong);border-radius:var(--qed-radius);overflow:hidden}
.qed-readiness li{padding:1rem 1.2rem;border-right:1px solid var(--qed-line-strong);display:flex;flex-direction:column;gap:.2rem}
.qed-readiness li:last-child{border-right:0}
.qed-readiness__k{font-family:var(--qed-font-head);font-weight:700;font-size:1.1rem}
.qed-readiness__v{color:var(--qed-ink-soft)}.qed-readiness .is-done .qed-readiness__v{color:var(--qed-accent);font-weight:600}

/* Draft placeholders / notices */
.qed-todo{margin:1rem 0;padding:.9rem 1.1rem;border:2px dashed var(--qed-amber);background:rgba(255,193,18,.12);border-radius:var(--qed-radius-sm);font-size:.95rem}
.qed-notice{padding:.9rem 1.1rem;border-radius:var(--qed-radius-sm);margin:0 0 1rem}
.qed-notice--ok{background:rgba(5,102,189,.1);border:1px solid var(--qed-lazuli)}
.qed-notice--err{background:rgba(255,193,18,.16);border:1px solid var(--qed-amber)}

/* Experiences — shared */
.qed-exp__head{margin-bottom:clamp(1.5rem,3vw,2.5rem)}
.qed-exp__title{max-width:20ch}
.qed-exp__intro{max-width:56ch;font-size:1.2rem;font-weight:300}
.qed-exp__static{max-width:62ch;padding-left:1.2rem}
input[type=range]{accent-color:var(--qed-lazuli);width:100%}
.qed-seg{display:inline-flex;border:1px solid var(--qed-line-strong);border-radius:999px;padding:3px;gap:2px;flex-wrap:wrap}
.qed-seg button,.qed-seg__b{font:inherit;font-family:var(--qed-font-head);font-weight:600;letter-spacing:.03em;border:0;background:transparent;color:var(--qed-ink);padding:.35rem 1rem;border-radius:999px;cursor:pointer}
.qed-seg button.is-on,.qed-seg [aria-pressed="true"]{background:var(--qed-deep-atlantic);color:var(--qed-white-smoke)}

/* Counter */
.qed-counter__row{margin:.2rem 0 .4rem;line-height:.95}
.qed-counter__n{font-family:var(--qed-font-head);font-weight:700;font-size:clamp(4.5rem,13vw,9rem);color:var(--qed-accent);font-variant-numeric:tabular-nums}
.qed-counter__u{font-family:var(--qed-font-head);font-size:clamp(1.3rem,3vw,2rem);font-weight:300}
.qed-counter__label{font-size:1.15rem;margin:0 0 .3rem}.qed-counter__gas{font-weight:600;margin:0 0 .3rem}

/* Deleted apparatus */
.qed-del__ctl{display:flex;flex-wrap:wrap;gap:1.2rem;align-items:center;margin-bottom:1rem}
.qed-del__ctl input[type=range]{flex:1 1 220px;max-width:420px}
.qed-del__state{color:var(--qed-ink-soft);min-height:3em;margin:0 0 1rem}
.qed-del__core{display:flex;justify-content:center;margin-bottom:1rem}
.qed-del__core span{font-family:var(--qed-font-head);font-weight:700;text-transform:uppercase;letter-spacing:.1em;background:var(--qed-lazuli);color:#F2F2F2;padding:.9rem 2.6rem;border-radius:var(--qed-radius);transition:box-shadow .6s var(--qed-ease)}
.is-qed .qed-del__core span{box-shadow:0 0 0 10px rgba(5,102,189,.12),0 0 40px rgba(5,102,189,.35)}
.qed-del__grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:.8rem}
.qed-del__item{border:1.5px solid var(--qed-ink);border-radius:var(--qed-radius-sm);padding:.9rem 1rem;display:flex;flex-direction:column;gap:.3rem;transition:all .5s var(--qed-ease);background:var(--qed-white-smoke)}
.qed-del__t{font-family:var(--qed-font-head);font-weight:700;font-size:1.15rem}
.qed-del__why{font-size:.95rem;color:var(--qed-ink-soft)}
.qed-del__item.is-gone{border:1.5px dashed var(--qed-line-strong);background:transparent;transform:scale(.97)}
.qed-del__item.is-gone .qed-del__t{text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:var(--qed-lazuli);opacity:.55}
.qed-del__item.is-gone .qed-del__why{color:var(--qed-accent);font-weight:600}

/* Where it fits */
.qed-fits{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:clamp(1.2rem,3vw,3rem);align-items:start}
.qed-fits__list{display:flex;flex-direction:column;gap:.35rem}
.qed-fits__chip{font:inherit;font-family:var(--qed-font-head);font-weight:600;font-size:1.05rem;text-align:left;padding:.65rem 1rem;border-radius:var(--qed-radius-sm);border:1px solid var(--qed-line);background:transparent;color:var(--qed-ink);cursor:pointer;transition:all .25s}
.qed-fits__chip:hover{border-color:var(--qed-accent)}
.qed-fits__chip[aria-checked="true"]{background:var(--qed-deep-atlantic);color:var(--qed-white-smoke);border-color:var(--qed-deep-atlantic)}
.qed-fits__panel{background:var(--qed-white-smoke);border:1px solid var(--qed-line);border-radius:var(--qed-radius);padding:clamp(1.2rem,3vw,2.2rem);box-shadow:var(--qed-shadow);opacity:0;transform:translateY(8px);transition:all .45s var(--qed-ease)}
.qed-section--tint .qed-fits__panel{background:var(--qed-bg)}
.qed-fits__panel.is-in{opacity:1;transform:none}
.qed-fits__meta{margin:.2rem 0 1.2rem}
.qed-fits__cols{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;margin-bottom:1rem}

/* Scale */
.qed-scale{display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:clamp(1.5rem,4vw,4rem);align-items:center}
.qed-scale__svg{width:100%;height:auto;max-width:340px}
.qed-scale__ring{fill:none;stroke:var(--qed-line);stroke-width:1.5;transition:all .5s var(--qed-ease)}
.qed-scale__ring.is-on{stroke:var(--qed-air-blue)}
.qed-scale__ring.is-cur{stroke:var(--qed-lazuli);stroke-width:4;filter:drop-shadow(0 0 6px rgba(5,102,189,.6))}
.qed-scale__dot{fill:var(--qed-lazuli)}
.qed-scale__band{font-family:var(--qed-font-head);font-weight:700;font-size:clamp(2.6rem,6vw,4.5rem);color:var(--qed-accent);line-height:1;margin:0}
.qed-scale__name{margin:.2rem 0 .4rem}.qed-scale__txt{max-width:44ch}
.qed-scale__gens{list-style:none;display:flex;gap:.5rem;padding:0;margin:.6rem 0 1.2rem}
.qed-scale__gens li{padding:.25rem .9rem;border:1px solid var(--qed-line-strong);border-radius:999px;color:var(--qed-ink-soft);font-weight:600;transition:all .3s}
.qed-scale__gens li.is-on{background:var(--qed-lazuli);border-color:var(--qed-lazuli);color:#F2F2F2}
.qed-scale__ticks{display:flex;justify-content:space-between;gap:.25rem;margin-top:.3rem}
.qed-scale__tick{font:inherit;font-size:.72rem;color:var(--qed-ink-soft);background:none;border:0;padding:0;cursor:pointer;flex:1;text-align:center}
.qed-scale__tick.is-cur{color:var(--qed-accent);font-weight:700}

/* Lifecycle */
.qed-life__tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1.4rem;position:relative}
.qed-life__tab{font:inherit;font-family:var(--qed-font-head);font-weight:600;font-size:1.05rem;text-align:left;background:transparent;border:0;border-top:3px solid var(--qed-line-strong);padding:.8rem .2rem 0;cursor:pointer;color:var(--qed-ink-soft);display:flex;gap:.6rem;align-items:baseline;transition:all .3s}
.qed-life__tab.is-on{border-top-color:var(--qed-lazuli);color:var(--qed-ink)}
.qed-life__tab[aria-selected="true"]{color:var(--qed-accent)}
.qed-life__n{font-size:.8rem;opacity:.7}
.qed-life__panel{background:var(--qed-white-smoke);border-radius:var(--qed-radius);padding:1.4rem 1.6rem;max-width:64ch;border:1px solid var(--qed-line)}
.qed-section--tint .qed-life__panel{background:var(--qed-bg)}

/* Lexicon */
.qed-lex input[type=search],.qed-catalog input[type=search],.qed-faq input[type=search]{width:100%;max-width:420px;font:inherit;padding:.7rem 1rem;border:1px solid var(--qed-line-strong);border-radius:999px;background:var(--qed-bg);color:var(--qed-ink);margin:0 0 1rem}
.qed-lex .qed-seg{margin-bottom:.8rem}
.qed-lex__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:.9rem;margin:1rem 0 0}
.qed-lex__item{background:var(--qed-white-smoke);border:1px solid var(--qed-line);border-radius:var(--qed-radius-sm);padding:1rem 1.1rem}
.qed-section--tint .qed-lex__item{background:var(--qed-bg)}
.qed-lex__item dt{font-family:var(--qed-font-head);font-weight:700;font-size:1.15rem;margin-bottom:.35rem;display:flex;gap:.5rem;justify-content:space-between;align-items:baseline}
.qed-lex__item dd{margin:0;font-size:1rem}.qed-lex__item[hidden]{display:none}

/* Landscape */
.qed-land__svg{width:100%;max-width:760px;height:auto;display:block}
.qed-land__axis{stroke:var(--qed-ink);stroke-width:1.5}
.qed-land__lab{font:600 13px var(--qed-font-head);letter-spacing:.08em;text-transform:uppercase;fill:var(--qed-ink-soft)}
.qed-land__blob{fill:rgba(113,166,188,.26);stroke:var(--qed-ink);stroke-width:1.5;transition:all .25s}
.qed-land__g{cursor:pointer;outline:none}.qed-land__g:hover .qed-land__blob,.qed-land__g.is-sel .qed-land__blob{fill:rgba(113,166,188,.5)}
.qed-land__g.is-qed .qed-land__blob{fill:rgba(5,102,189,.16);stroke:var(--qed-lazuli);stroke-width:2.2}
.qed-land__g:focus-visible .qed-land__blob{stroke-width:3.5}
.qed-land__solid{stroke:var(--qed-lazuli);stroke-width:5;stroke-linecap:round}
.qed-land__t{font:700 15px var(--qed-font-head);fill:var(--qed-ink);pointer-events:none}
.qed-land__cap{min-height:3em;font-size:1.05rem}

/* Failure modes */
.qed-fail__ctl{display:flex;flex-wrap:wrap;gap:1.4rem;align-items:center;margin-bottom:1.4rem}
.qed-fail__slider{display:flex;flex-direction:column;gap:.2rem;flex:1 1 240px;max-width:460px}
.qed-fail__slider label{font-size:.9rem;color:var(--qed-ink-soft)}
.qed-fail__grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:var(--qed-gap)}
.qed-fail__card{background:var(--qed-bg);border:1px solid var(--qed-line);border-radius:var(--qed-radius);padding:1.1rem 1.2rem}
.qed-fail__svg{width:100%;height:auto;background:var(--qed-white-smoke);border-radius:var(--qed-radius-sm)}
.qed-fail__card h3{margin:.8rem 0 .3rem}.qed-fail__card p{margin:0 0 .5rem;font-size:1rem}
.qed-fail__alert{min-height:1.6em;font-weight:700;color:var(--qed-c-warn);opacity:0;transition:opacity .3s;font-family:var(--qed-font-head);letter-spacing:.04em;text-transform:uppercase}
.qed-fail__alert.is-on{opacity:1}
.f-el{fill:var(--qed-deep-atlantic)}.f-zn{fill:var(--qed-air-blue);stroke:var(--qed-ink);stroke-width:1}
.f-flash{fill:var(--qed-amber);opacity:.28}
.f-cell{fill:none;stroke:var(--qed-line-strong);stroke-width:2}.f-liq{fill:var(--qed-air-blue);opacity:.35}
.f-bub{fill:rgba(242,242,242,.6);stroke:var(--qed-ink);stroke-width:1.2}
.f-gauge{fill:var(--qed-line)}.f-gauge-fill{fill:var(--qed-amber)}.f-gauge-fill--cap{fill:var(--qed-lazuli)}
.f-zn-dot{fill:var(--qed-air-blue);stroke:var(--qed-ink);stroke-width:1}

/* Volta */
.qed-volta{display:grid;grid-template-columns:minmax(260px,1fr) 1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
.qed-volta__svg{width:100%;height:auto;max-width:440px}
.qed-volta__btns{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-bottom:1rem}
.qed-volta__count{font-weight:600;margin-left:.4rem}
.qed-volta__chk{display:block;margin:.4rem 0;cursor:pointer}
.qed-volta__meter{height:14px;background:var(--qed-line);border-radius:999px;overflow:hidden;margin:.2rem 0 .8rem}
.qed-volta__fill{display:block;height:100%;background:var(--qed-lazuli);width:0;transition:width .4s var(--qed-ease)}
.qed-volta__msg{min-height:4.6em}
.qed-volta__legend{list-style:none;display:flex;gap:1.1rem;padding:0;margin:.4rem 0 1rem;font-size:.95rem}
.qed-volta__legend .sw{display:inline-block;width:.9rem;height:.9rem;border-radius:3px;margin-right:.4rem;vertical-align:-1px;border:1px solid var(--qed-ink)}
.qed-volta__legend .sw.v-cu{background:var(--qed-amber)}.qed-volta__legend .sw.v-zn{background:var(--qed-air-blue)}.qed-volta__legend .sw.v-card{background:#F2F2F2}
.qed-volta__pts{padding-left:1.1rem;font-size:1rem}
.v-zn{fill:var(--qed-air-blue);stroke:var(--qed-ink);stroke-width:1}.v-cu{fill:var(--qed-amber);stroke:var(--qed-ink);stroke-width:1}
.v-card{fill:#F2F2F2;stroke:var(--qed-line-strong)}.v-wire{fill:none;stroke:var(--qed-ink);stroke-width:2.2;stroke-linecap:round}
.v-lamp{fill:var(--qed-amber);stroke:var(--qed-ink);stroke-width:2}.v-halo{fill:var(--qed-amber)}
.v-lbl{font:600 12px var(--qed-font-head);letter-spacing:.06em;text-transform:uppercase;fill:var(--qed-ink)}

/* Journey */
.qed-journey{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.qed-journey__side{position:sticky;top:11vh;align-self:start;display:flex;gap:1.2rem;align-items:center}
.qed-journey__stage{flex:1;background:var(--qed-white-smoke);border:1px solid var(--qed-line);border-radius:var(--qed-radius);padding:1rem;box-shadow:var(--qed-shadow)}
.qed-journey__svg{width:100%;height:auto;display:block}
.qed-journey__era{font-family:var(--qed-font-head);font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:.85rem;color:var(--qed-ink-soft);text-align:center;margin:.3rem 0 0}
.qed-journey__rail{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}
.qed-journey__rail li{width:8px;height:8px;border-radius:50%;background:var(--qed-line-strong);transition:all .35s}
.qed-journey__rail li.is-on{background:var(--qed-air-blue)}.qed-journey__rail li.is-cur{background:var(--qed-lazuli);transform:scale(1.5)}
.qed-journey__beat{min-height:68vh;display:flex;flex-direction:column;justify-content:center;opacity:.28;transition:opacity .5s var(--qed-ease)}
.qed-journey__beat.is-active{opacity:1}
.qed-journey__beat h3{font-size:clamp(1.8rem,3.2vw,2.6rem)}
.qed-journey__txt{font-size:1.15rem;max-width:52ch}
.qed-journey__txt .qed-claimlist{margin-top:1rem}
.qed-art{opacity:0;transition:opacity .6s var(--qed-ease)}.qed-art.is-on{opacity:1}
.a-line{fill:none;stroke:var(--qed-ink);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.a-bold{stroke-width:4.5}.a-dash{stroke-dasharray:6 8}
.a-air{fill:var(--qed-air-blue)}.a-amber{fill:var(--qed-amber)}.a-lazuli{fill:var(--qed-lazuli)}
.a-card{fill:#F2F2F2;stroke:var(--qed-line-strong)}
.a-air.a-line{fill:var(--qed-air-blue);stroke:var(--qed-ink)}
.a-spark{fill:none;stroke:var(--qed-amber);stroke-width:3.5;stroke-linecap:round}
.a-glow{fill:none;stroke:var(--qed-lazuli);stroke-width:3;stroke-linecap:round;filter:drop-shadow(0 0 7px rgba(5,102,189,.75))}
.a-lamp{fill:var(--qed-amber);fill-opacity:.55;stroke:var(--qed-ink);stroke-width:2}
.a-glyph{font:700 40px var(--qed-font-head);fill:var(--qed-ink)}
.a-ink{fill:var(--qed-ink)}.a-cross{stroke:var(--qed-lazuli);stroke-width:4;stroke-linecap:round}
.a-lbl{font:600 13px var(--qed-font-head);letter-spacing:.08em;text-transform:uppercase;fill:var(--qed-ink)}
.a-fade{opacity:.4}
.a-bar{transform-box:fill-box;transform-origin:left center;transform:scaleX(.12);transition:transform 1s var(--qed-ease)}
.qed-art.is-on .a-bar{transform:scaleX(1)}
.a-unit{fill:rgba(242,242,242,.55)}

/* Catalog */
.qed-catalog__bar{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin-bottom:1rem}
.qed-catalog__bar select{font:inherit;padding:.6rem 1rem;border-radius:999px;border:1px solid var(--qed-line-strong);background:var(--qed-bg);color:var(--qed-ink)}
.qed-catalog__bar input[type=search]{margin:0;max-width:280px}
.qed-catalog__count{color:var(--qed-ink-soft);margin:0 0 1rem;min-height:1.5em}
.qed-grid--products{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:var(--qed-gap)}
.qed-card--product{padding:0;overflow:hidden;background:var(--qed-white-smoke)}
.qed-card--product[hidden]{display:none}
.qed-card__open{all:unset;box-sizing:border-box;display:flex;flex-direction:column;gap:.35rem;width:100%;height:100%;cursor:pointer;padding-bottom:1.2rem}
.qed-card__open:focus-visible{outline:3px solid var(--qed-focus);outline-offset:-3px}
.qed-card__media{display:block;aspect-ratio:4/3;background:var(--qed-bg-alt);overflow:hidden}
.qed-card__media img{width:100%;height:100%;object-fit:contain;padding:.6rem;transition:transform .5s var(--qed-ease)}
.qed-card__open:hover .qed-card__media img{transform:scale(1.04)}
.qed-card__ph{display:grid;place-items:center;height:100%;font-family:var(--qed-font-head);font-weight:700;font-size:2.4rem;letter-spacing:.06em;color:var(--qed-air-blue);text-transform:uppercase}
.qed-card__meta,.qed-card__name,.qed-card__tag{padding-inline:1.2rem}
.qed-card__meta{margin-top:.6rem}
.qed-card__name{font-family:var(--qed-font-head);font-weight:700;font-size:1.35rem;color:var(--qed-ink);line-height:1.1}
.qed-card__tag{color:var(--qed-ink-soft);font-size:1rem}
.qed-catalog__foot{margin-top:1.5rem}
.qed-dialog{border:0;border-radius:var(--qed-radius);padding:0;max-width:min(940px,94vw);width:100%;background:var(--qed-bg);color:var(--qed-ink);box-shadow:0 30px 80px rgba(8,32,58,.4)}
.qed-dialog::backdrop{background:rgba(8,32,58,.6)}
.qed-dialog form{position:absolute;top:.6rem;right:.8rem;margin:0;z-index:2}
.qed-dialog__close{font-size:2rem;line-height:1;border:0;background:var(--qed-bg);color:var(--qed-ink);border-radius:50%;width:2.4rem;height:2.4rem;cursor:pointer}
.qed-detail{display:grid;grid-template-columns:1fr 1fr}
.qed-detail__media{background:var(--qed-bg-alt);padding:1.4rem;display:flex;flex-direction:column;justify-content:center}
.qed-detail__media img{width:100%;height:auto;max-height:60vh;object-fit:contain}
.qed-detail__body{padding:clamp(1.4rem,3vw,2.4rem)}
.qed-detail__note{font-size:.9rem;color:var(--qed-ink-soft)}
.qed-claimrow{margin:.6rem 0}

/* FAQ */
.qed-faq__item{border-bottom:1px solid var(--qed-line-strong);padding:1rem 0}
.qed-faq__item[hidden]{display:none}
.qed-faq__item summary{cursor:pointer;font-family:var(--qed-font-head);font-weight:700;font-size:1.3rem;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.qed-faq__item summary::after{content:"+";font-weight:400;color:var(--qed-accent)}
.qed-faq__item[open] summary::after{content:"−"}
.qed-faq__a{max-width:68ch;padding-top:.6rem}

/* Team */
.qed-grid--team{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--qed-gap)}
.qed-person__photo{width:120px;height:120px;border-radius:50%;overflow:hidden;background:var(--qed-deep-atlantic);display:grid;place-items:center;margin-bottom:1rem}
.qed-person__photo img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.qed-person__mono{font-family:var(--qed-font-head);font-weight:700;font-size:1.2rem;color:var(--qed-white-smoke);letter-spacing:.05em;flex-direction:column}
.qed-person__name{margin:0 0 .2rem}.qed-person__role{color:var(--qed-accent);font-weight:600;margin:0 0 .6rem}.qed-person__role span{color:var(--qed-ink-soft);font-weight:400}
.qed-person__bio{font-size:1rem}

/* Form */
.qed-form{display:grid;gap:1rem;max-width:620px}
.qed-form__row{display:flex;flex-direction:column;gap:.3rem}
.qed-form label{font-weight:600}
.qed-form input,.qed-form select,.qed-form textarea{font:inherit;padding:.75rem 1rem;border:1px solid var(--qed-line-strong);border-radius:var(--qed-radius-sm);background:#F2F2F2;color:var(--qed-ink)}
.qed-form :focus-visible{outline:3px solid var(--qed-focus);outline-offset:1px}
.qed-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

/* Ask QED */
.qed-ask{position:fixed;right:clamp(.8rem,2vw,1.6rem);bottom:clamp(.8rem,2vw,1.6rem);z-index:90;display:flex;flex-direction:column;align-items:flex-end;gap:.7rem;font-family:var(--qed-font-body)}
.qed-ask__fab{font:inherit;font-family:var(--qed-font-head);font-weight:700;letter-spacing:.04em;font-size:1.05rem;background:var(--qed-deep-atlantic);color:var(--qed-white-smoke);border:0;border-radius:999px;padding:.8rem 1.5rem;cursor:pointer;box-shadow:0 8px 26px rgba(8,32,58,.35)}
.qed-ask__fab:hover{background:var(--qed-lazuli)}
.qed-ask__panel{width:min(370px,calc(100vw - 1.6rem));background:var(--qed-bg);color:var(--qed-ink);border:1px solid var(--qed-line-strong);border-radius:var(--qed-radius);box-shadow:0 20px 60px rgba(8,32,58,.35);display:flex;flex-direction:column;overflow:hidden}
.qed-ask__panel[hidden]{display:none}
.qed-ask__hd{display:flex;justify-content:space-between;align-items:center;background:var(--qed-deep-atlantic);color:var(--qed-white-smoke);padding:.7rem 1rem;font-size:1.1rem}
.qed-ask__x{background:none;border:0;color:inherit;font-size:1.6rem;line-height:1;cursor:pointer}
.qed-ask__log{max-height:min(46vh,380px);min-height:120px;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.7rem}
.qed-ask__m{max-width:92%;padding:.65rem .9rem;border-radius:14px;font-size:1rem;line-height:1.4}
.qed-ask__m p{margin:0}
.qed-ask__m--bot{background:var(--qed-white-smoke);border:1px solid var(--qed-line);align-self:flex-start}
.qed-ask__m--me{background:var(--qed-lazuli);color:#F2F2F2;align-self:flex-end}
.qed-ask__m.is-wait{opacity:.6}
.qed-ask__src{font-size:.8rem;color:var(--qed-ink-soft);margin-top:.4rem!important}
.qed-ask__go{margin-top:.6rem;min-height:38px;font-size:.95rem}
.qed-ask__chips{display:flex;flex-wrap:wrap;gap:.4rem;padding:0 1rem .6rem}
.qed-ask__chip{font:inherit;font-size:.88rem;background:transparent;border:1px solid var(--qed-line-strong);color:var(--qed-ink);border-radius:999px;padding:.25rem .8rem;cursor:pointer;text-align:left}
.qed-ask__chip:hover{border-color:var(--qed-lazuli);color:var(--qed-lazuli)}
.qed-ask__form{display:flex;gap:.4rem;padding:.6rem;border-top:1px solid var(--qed-line)}
.qed-ask__in{flex:1;font:inherit;padding:.6rem .9rem;border:1px solid var(--qed-line-strong);border-radius:999px;background:#F2F2F2;color:var(--qed-ink)}
.qed-ask__send{width:2.6rem;border-radius:50%;border:0;background:var(--qed-amber);color:var(--qed-deep-atlantic);font-weight:700;font-size:1.2rem;cursor:pointer}
.qed-ask__fine{font-size:.75rem;color:var(--qed-ink-soft);margin:0;padding:0 1rem .7rem}

/* CTA band */
.qed-cta__in{max-width:60ch}.qed-cta h2{margin-bottom:.4em}

/* Responsive */
@media (max-width:900px){
  .qed-split,.qed-volta,.qed-scale,.qed-fits,.qed-detail{grid-template-columns:1fr}
  .qed-fits__cols{grid-template-columns:1fr}
  .qed-journey{grid-template-columns:1fr}
  .qed-journey__side{top:60px;z-index:3;background:var(--qed-bg);padding:.5rem 0}
  .qed-journey__svg{max-height:30vh}
  .qed-journey__rail{display:none}
  .qed-journey__beat{min-height:60vh}
  .qed-life__tabs{grid-template-columns:repeat(2,1fr)}
  .qed-readiness{grid-template-columns:1fr}.qed-readiness li{border-right:0;border-bottom:1px solid var(--qed-line-strong)}
  .qed-hero h1{max-width:none}
}
@media (prefers-reduced-motion:reduce){
  .qed-art,.a-bar,.qed-journey__beat,.qed-fits__panel,.qed-del__item{transition:none}
}
.qed-land__srcwrap{margin-top:1rem}
.qed-land__srcwrap summary{cursor:pointer;font-size:.85rem;font-weight:600;color:var(--qed-ink-soft)}
.qed-land__sources{margin:.6rem 0 0;padding-left:1.2rem;font-size:.82rem;color:var(--qed-ink-soft)}
.qed-land__sources li{margin-bottom:.3rem}
.qed-land__sources a{color:inherit;text-decoration:underline;text-underline-offset:.2em}
