/* Aeroz brand kit: shared components for every interior page (Warm Human retired 18 Oct 2026).
   Loaded after assets/warm.css. Tokens come from warm.css; nothing here
   redefines them. Written by tools/warm_kit.py and tools/warm_convert.py,
   which are the only places that should emit this markup. */

/* ---------- page heroes ---------- */
.page-hero{position:relative;border-radius:26px;overflow:hidden;background:var(--ink-deep);margin-top:24px;
  min-height:520px;display:flex;align-items:flex-end;color:var(--on-dark);
  /* warm.css also has a .page-hero (the two-column hero on /battery-passport and
     /standards, which load warm.css only). Reset its grid and padding here. */
  grid-template-columns:none;gap:0;padding-block:0}
.page-hero > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.page-hero::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(37,37,37,.94) 30%,rgba(37,37,37,.35)),linear-gradient(0deg,rgba(37,37,37,.6),transparent 60%)}
.page-hero .inner{position:relative;z-index:1;padding:56px;display:flex;flex-direction:column;gap:20px;max-width:780px}
.page-hero .eyebrow{color:var(--accent-dark)}
.page-hero .eyebrow a{color:inherit}
.page-hero h1{font-size:56px;line-height:1.03;color:var(--on-dark)}
.page-hero .accent-ink{color:var(--accent-dark)}
.page-hero .muted-ink{color:var(--on-dark-mute)}
.page-hero .lead{color:var(--on-dark);font-size:21px;line-height:1.45}
.page-hero .sub{color:var(--on-dark-body);font-size:18px;line-height:1.55;max-width:640px}
.page-hero .meta-line{color:var(--on-dark-mute)}
.page-hero .btn-row{margin-top:6px}
.page-hero .ticks{color:var(--on-dark-body)}
.page-hero .ticks li::before{color:var(--accent-dark)}
.page-hero .pills li,.page-hero .pills a{border-color:rgba(255,255,255,.26);color:var(--on-dark-body)}

.page-intro .eyebrow a{color:inherit}
.page-intro .lead{max-width:680px}
.page-intro .sub{font-size:18px;line-height:1.55;color:var(--body);max-width:680px}
.page-intro h1{max-width:900px}
.muted-ink{color:var(--muted)}

/* ---------- section heads ---------- */
.sec-head{display:flex;flex-direction:column;gap:14px;max-width:780px;margin-bottom:36px}
.sec-head:last-child{margin-bottom:0}
.sec-head h2{font-size:44px;line-height:1.06}
.sec-head .body-lg{max-width:680px}
.stack-md{display:flex;flex-direction:column;gap:18px}
.stack-md > .btn-row{margin-top:8px}
.stack-md h2{font-size:40px;line-height:1.08}
.after{margin-top:32px}

/* ---------- ticks and pills ---------- */
.ticks{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0;padding:0;list-style:none;font-size:16px;color:var(--body)}
.ticks li{display:inline-flex;align-items:center;gap:8px}
.ticks li::before{content:"\2713";color:var(--accent);font-weight:600}
.pills a{display:inline-block;border:1px solid var(--border);border-radius:999px;padding:7px 12px;font:14px var(--mono);font-variant-numeric:tabular-nums;color:var(--ink)}
ul.pills a{border:0;padding:0}
.pills a:hover{border-color:var(--ink)}
.pills.links li{padding:0}
.pills.links a{display:block;padding:8px 14px;font:15px var(--sans)}

/* ---------- tile grids ---------- */
.grid{display:grid;gap:16px;margin:0;padding:0;list-style:none}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.tile{padding:28px;display:flex;flex-direction:column;gap:10px;min-width:0}
.tile h3{font-size:22px;line-height:1.22;letter-spacing:-.01em;font-weight:600}
.tile p{font-size:17px;line-height:1.55;color:var(--body)}
.tile ul,.tile ol{margin:0;padding-inline-start:20px;color:var(--body);font-size:16px;line-height:1.5;display:flex;flex-direction:column;gap:6px}
.tile .tag-label{white-space:normal}
.tile .v{font:600 34px/1.05 var(--sans);letter-spacing:-.02em;color:var(--ink)}
.tile-specs{margin:auto 0 0;padding-top:14px;border-top:1px solid var(--hair);display:grid;gap:8px}
.tile-specs > div{display:grid;grid-template-columns:minmax(0,104px) minmax(0,1fr);gap:12px;align-items:baseline}
.tile-specs dt{font:500 12px/1.4 var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.tile-specs dd{margin:0;font-size:16px;line-height:1.45;color:var(--ink)}
a.tile{transition:border-color .2s,transform .2s}
.grid > li > a.tile{height:100%}
a.tile:hover{border-color:var(--line-strong);transform:translateY(-2px)}
a.tile .go{color:var(--accent);font-size:16px;margin-top:auto;padding-top:4px}
.tile.dark{background:var(--ink);border-color:var(--ink);color:var(--on-dark)}
.tile.dark p,.tile.dark ul{color:var(--on-dark-body)}
.tile.dark .tag-label{color:var(--accent-dark)}

/* ---------- two columns ---------- */
.split2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.split2 > *{min-width:0}
.split2 .col{display:flex;flex-direction:column;gap:18px}
.split2 .col h2{font-size:40px;line-height:1.08}
.split2 .col > .btn-row{margin-top:8px}
.split2 .spec{border-top:1px solid var(--border)}
.split2 .spec div{grid-template-columns:minmax(120px,.8fr) 1fr}

/* ---------- tables ---------- */
.compare-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:22px}
.compare .hl{background:rgba(25,18,112,.07)}
.compare td.no{color:var(--muted);font-weight:400}
.compare td.mid{color:var(--body);font-weight:400}
.compare td.yes{color:var(--accent)}
.compare th.hl{color:var(--accent)}

/* ---------- callout bands ---------- */
.cta-band{border-radius:26px;background:var(--ink);color:var(--on-dark);padding:56px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:48px;align-items:center}
.cta-band.solo{grid-template-columns:minmax(0,1fr)}
.cta-band .copy{display:flex;flex-direction:column;gap:20px;max-width:720px}
.cta-band .eyebrow{color:var(--accent-dark)}
.cta-band h2{font-size:44px;line-height:1.06;color:var(--on-dark)}
.cta-band .accent-ink{color:var(--accent-dark)}
.cta-band p{color:var(--on-dark-body);font-size:19px;line-height:1.5}
.cta-band .ticks{color:var(--on-dark-body)}
.cta-band .ticks li::before{color:var(--accent-dark)}
.cta-band .inc{border-inline-start:1px solid rgba(255,255,255,.14);padding-inline-start:40px;display:flex;flex-direction:column;gap:14px}
.cta-band .inc ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px;font-size:17px;line-height:1.45;color:var(--on-dark-body)}
.cta-band .inc li{display:grid;grid-template-columns:18px 1fr;gap:10px}
.cta-band .inc li::before{content:"\2713";color:var(--accent-dark);font-weight:600}
.cta-band a.text-link{color:var(--on-dark-body);text-decoration:underline;text-underline-offset:3px}

.note-band{border-radius:22px;background:var(--warm);padding:36px 40px;display:flex;flex-direction:column;gap:12px}
.band-warm .note-band{background:var(--card);border:1px solid var(--hair)}
.note-band p{color:var(--body);font-size:18px;line-height:1.55;max-width:760px}

/* ---------- long-form prose ---------- */
.prose{max-width:740px;font-size:19px;line-height:1.7;color:var(--ink)}
.prose > * + *{margin-top:1.05em}
.prose p,.prose li{color:#3c3c3b}
.prose h2{font-size:32px;line-height:1.15;margin-top:1.9em;letter-spacing:-.015em}
.prose h3{font-size:24px;line-height:1.25;margin-top:1.7em;letter-spacing:-.01em}
.prose h4{font-size:20px;line-height:1.3;margin-top:1.4em}
.prose h2 + *,.prose h3 + *,.prose h4 + *{margin-top:.6em}
.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.prose ul,.prose ol{padding-inline-start:1.3em}
.prose li + li{margin-top:.45em}
.prose figure{margin-inline:0;margin-block:1.6em}
.prose img{border-radius:16px;height:auto}
.prose figcaption{font-size:15px;line-height:1.5;color:var(--muted);margin-top:10px}
.prose blockquote{margin-inline:0;border-inline-start:3px solid var(--accent);padding-inline-start:22px;color:var(--body)}
.prose blockquote cite{display:block;margin-top:10px;font:500 14px/1.4 var(--mono);font-variant-numeric:tabular-nums;font-style:normal;color:var(--muted)}
.prose hr{border:0;border-top:1px solid var(--border);margin-block:2em}
.prose code{font:.88em var(--mono);font-variant-numeric:tabular-nums;background:var(--warm);padding:2px 6px;border-radius:6px}
.prose pre{font:15px/1.6 var(--mono);font-variant-numeric:tabular-nums;background:var(--card);border:1px solid var(--hair);border-radius:14px;padding:18px 20px;overflow-x:auto}
.prose table:not(.compare){border-collapse:collapse;width:100%;font-size:16px;display:block;overflow-x:auto}
.prose .compare-wrap{margin-block:1.8em}
.prose .compare{font-size:16px}
.prose .compare th,.prose .compare td{border-bottom:0;padding:14px 18px}
.prose th,.prose td{border-bottom:1px solid var(--border);padding:10px 12px;text-align:start;vertical-align:top}
.prose strong{font-weight:600;color:var(--ink)}
.prose dl{margin:0}
.prose dt{font-weight:600}
.prose dd{margin:0 0 .9em;color:var(--body)}
.prose .kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-block:2em}
.prose .kv > div{background:var(--card);border:1px solid var(--hair);border-radius:16px;padding:18px 20px}
.prose .kv dt{font:500 13px/1.4 var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.prose .kv dd{margin:6px 0 0;font-size:22px;line-height:1.25;font-weight:600;color:var(--ink)}
.prose .kv > div:last-child:nth-child(odd){grid-column:1 / -1}
@media (max-width:640px){.prose .kv{grid-template-columns:minmax(0,1fr)}}
.article{display:flex;flex-direction:column;align-items:center}
.article .prose{width:100%}
.source-line{max-width:740px;width:100%;margin-top:40px;padding-top:20px;border-top:1px solid var(--border);font-size:16px;color:var(--muted)}
.source-line a{color:var(--accent)}
.post-figure{margin:0;border-radius:22px;overflow:hidden;background:var(--ink-deep);max-height:520px}
.post-figure img{width:100%;height:100%;max-height:520px;object-fit:cover}

/* ---------- photo figure ---------- */
.photo-fig{margin:0;display:flex;flex-direction:column;gap:12px}
.photo-fig img{width:100%;height:auto;border-radius:22px;background:var(--ink-deep)}
.photo-fig figcaption{font-size:15px;line-height:1.5;color:var(--muted)}
.photo-grid .photo-fig{position:relative;border-radius:18px;overflow:hidden;background:var(--ink-deep);aspect-ratio:16/10;gap:0}
.photo-grid .photo-fig img{position:absolute;inset:0;height:100%;object-fit:cover;border-radius:0}
.photo-grid .photo-fig::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(37,37,37,0) 45%,rgba(37,37,37,.82))}
.photo-grid .photo-fig figcaption{position:absolute;inset-inline:18px;bottom:14px;z-index:1;font:500 13px/1.4 var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.04em;color:var(--on-dark)}

/* ---------- forms ---------- */
.form-card{background:var(--card);border:1px solid var(--hair);border-radius:22px;padding:32px;display:flex;flex-direction:column;gap:18px}
.form-card h2,.form-card h3{font-size:26px;line-height:1.2}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.form-grid .full{grid-column:1 / -1}
.wh form label,.field{display:flex;flex-direction:column;gap:7px;font-size:16px;font-weight:500;color:var(--ink)}
.wh form input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.wh form select,.wh form textarea{
  font:inherit;font-size:17px;font-weight:400;padding:13px 15px;border:1px solid rgba(41,41,41,.18);border-radius:12px;background:var(--card);color:var(--ink);width:100%;min-height:50px}
.wh form textarea{min-height:120px;resize:vertical}
.wh form select{-webkit-appearance:none;appearance:none;padding-inline-end:44px;line-height:1.55;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%235d6674' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px}
[dir=rtl] .wh form select,.wh [dir=rtl] form select{background-position:left 16px center}
.wh form input:focus,.wh form select:focus,.wh form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(25,18,112,.18)}
.wh form button[type=submit],.wh form .submit{justify-self:start}
.form-fine{font-size:14px;line-height:1.5;color:var(--muted)}
.form-ok{background:var(--card);border:1px solid var(--hair);border-inline-start:3px solid var(--mint);border-radius:14px;padding:18px 20px}
.form-err{color:var(--bad);font-size:15px}
.check-row{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px!important;font-weight:400!important;font-size:15px!important;color:var(--body)!important}
.check-row input{margin-top:4px;width:18px;height:18px;flex-shrink:0}

/* ---------- index lists (blog, glossary) ---------- */
.term-list{margin:0;border-top:1px solid var(--border)}
.term-list > div{display:grid;grid-template-columns:minmax(180px,.45fr) 1fr;gap:32px;padding:24px 0;border-bottom:1px solid var(--border);align-items:baseline}
.term-list dt{font-size:20px;font-weight:600;letter-spacing:-.01em}
.term-list dd{margin:0;font-size:17px;line-height:1.6;color:var(--body)}
.term-list dd p + p{margin-top:.6em}

/* ---------- tool islands (readiness, 25-line check, tap demo) ---------- */
.tool{background:var(--card);border:1px solid var(--hair);border-radius:22px;padding:32px}
.tool button:not(.btn){font:inherit}

/* ---------- responsive ---------- */
@media (max-width:1180px){
  .g4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:960px){
  .page-hero{min-height:460px}
  .page-hero .inner{padding:44px}
  .page-hero h1{font-size:46px}
  .g3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .split2{grid-template-columns:minmax(0,1fr);gap:32px}
  .cta-band{grid-template-columns:minmax(0,1fr);gap:32px;padding:44px}
  .cta-band .inc{border-inline-start:0;padding-inline-start:0;border-top:1px solid rgba(255,255,255,.14);padding-top:28px}
  .sec-head h2{font-size:38px}
  .split2 .col h2,.stack-md h2{font-size:34px}
}
@media (max-width:640px){
  .page-hero{min-height:0;margin-top:16px;border-radius:22px;padding-top:48px}
  .page-hero::after{background:linear-gradient(180deg,rgba(37,37,37,.55),rgba(37,37,37,.95) 45%)}
  .page-hero .inner{padding:24px;gap:16px}
  .page-hero h1{font-size:36px;line-height:1.08}
  .page-hero .lead{font-size:18px}
  .page-hero .sub{font-size:16px}
  .g2,.g3,.g4{grid-template-columns:minmax(0,1fr);gap:12px}
  .tile{padding:22px}
  .tile h3{font-size:20px}
  .sec-head{margin-bottom:24px}
  .sec-head h2{font-size:30px;line-height:1.12}
  .split2 .col h2,.stack-md h2{font-size:28px}
  .split2 .spec div{grid-template-columns:1fr}
  .cta-band{padding:32px 24px;border-radius:20px}
  .cta-band h2{font-size:30px}
  .cta-band p{font-size:17px}
  .note-band{padding:24px 22px}
  .prose{font-size:18px}
  .prose h2{font-size:26px}
  .prose h3{font-size:21px}
  .term-list > div{grid-template-columns:1fr;gap:6px;padding:18px 0}
  .form-card{padding:22px}
  .form-grid{grid-template-columns:minmax(0,1fr)}
  .tool{padding:22px 18px}
  .ticks{gap:6px 16px;font-size:15px}
}

/* ---------- vertical rhythm inside converted sections ---------- */
.flow > * + *{margin-top:32px}
.flow > .sec-head{margin-bottom:0}
.flow > .sec-head + *{margin-top:36px}
.flow > .eyebrow + *{margin-top:16px}
.flow > .body + .body,.flow > .body-lg + .body,.flow > .body + .body-lg{margin-top:14px}
.flow > p + .btn-row{margin-top:24px}
.flow > .h-card + .body{margin-top:10px}
.note-band .btn-row{margin-top:8px}
@media (max-width:640px){
  .flow > * + *{margin-top:24px}
  .flow > .sec-head + *{margin-top:24px}
}

/* ---------- blog post header ---------- */
.post-head{padding-block:64px 32px;max-width:calc(740px + 2 * var(--pad))}
.post-head h1{font-size:52px;line-height:1.06}
.post-head .lead{font-size:21px}
.post-figure{margin-bottom:8px}
.article > .meta-line{max-width:740px;width:100%;margin-bottom:20px}
@media (max-width:640px){.post-head{padding-block:32px 20px}.post-head h1{font-size:34px;line-height:1.1}.post-head .lead{font-size:18px}}

/* ---------- v7 token bridge ----------
   Interactive blocks (the readiness check, the 25-line check, the tap demo,
   checklist forms) keep their own page CSS, which was written against the v7
   tokens. These names do not exist in warm.css, so they are mapped here onto
   the brand kit palette. --ink, --card, --sans and --mono already resolve to
   the kit values. */
:root{
  --bg:#f8fbfc;--bg-1:#f8fbfc;--bg-2:#f2f2f4;--bg-deep:#f2f2f4;
  --card-2:#f8fbfc;--card-hi:#ffffff;
  --ink-soft:#3c3c3b;--ink-mute:#5b5e66;--ink-dim:#5b5e66;
  --powder:#191270;--powder-soft:#191270;--powder-dim:#191270;--powder-deep:#ffffff;
  --green:var(--ok);--red:var(--bad);
  --line:rgba(41,41,41,.12);--line-2:rgba(41,41,41,.18);--line-warm:rgba(25,18,112,.25);
  --glass:rgba(248,251,252,.92);
  --r:18px;--r-lg:22px;
  --ease:cubic-bezier(.22,1,.36,1);--ease-2:cubic-bezier(.16,1,.3,1);
}
.v7{min-width:0;--amber:var(--warn)}
.v7 .btn{min-height:48px}
.v7 .btn-primary,.v7 .btn-audit{background:var(--ink);color:var(--paper)}
.v7 .btn-ghost{border-color:var(--line-strong);color:var(--ink);background:transparent}
.v7 .card{background:var(--card);border:1px solid var(--hair);border-radius:18px;padding:24px}
.v7 .mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.v7 .tag{font:500 13px/1.2 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.v7 h3{font-size:22px;line-height:1.25;letter-spacing:-.01em;margin:0}
.v7 p{color:var(--body)}

/* ---------- blog index ---------- */
.g1{grid-template-columns:minmax(0,1fr)}
.post-feature{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);height:auto}
.post-feature .thumb{aspect-ratio:auto;min-height:320px}
.post-feature .body{padding:40px 44px;justify-content:center;gap:14px}
.post-feature h3{font-size:34px;line-height:1.12;letter-spacing:-.02em}
.post-feature p{font-size:18px}
.post-feature .meta-line{margin-top:6px}
.subscribe{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}
.subscribe .copy{flex:1 1 340px;display:flex;flex-direction:column;gap:8px;min-width:0}
.subscribe form{display:flex;flex-wrap:wrap;gap:10px;flex:1 1 320px;max-width:460px;min-width:0}
.subscribe form input{flex:1 1 200px;min-width:0;border-radius:999px!important}
@media (max-width:960px){.post-feature{grid-template-columns:minmax(0,1fr)}.post-feature .thumb{min-height:220px;aspect-ratio:16/9}.post-feature .body{padding:26px}.post-feature h3{font-size:26px}}

/* FAQ hub: one block per regulation */
.faq-group{scroll-margin-top:96px}
.faq-group + .faq-group{margin-top:64px}
.faq-group-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;padding-bottom:16px;margin-bottom:20px;border-bottom:1px solid var(--border)}
.faq-group-head .tag-label{white-space:normal}
.faq-group-head h3{font-size:28px;line-height:1.2;letter-spacing:-.015em}
.faq-group-head h3 a:hover{color:var(--accent)}
.faq-group .tile .go{margin-top:auto;padding-top:6px;font-size:16px}
@media (max-width:640px){.faq-group-head h3{font-size:24px}.faq-group + .faq-group{margin-top:48px}}

/* Timeline: steps or dates in a row on desktop, a vertical rail on phones */
.timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n,5),minmax(0,1fr));gap:20px}
.timeline > li{position:relative;padding-top:30px;min-width:0}
.timeline > li::before{content:"";position:absolute;top:4px;inset-inline-start:0;width:14px;height:14px;border-radius:50%;background:var(--accent)}
.timeline > li::after{content:"";position:absolute;top:10px;inset-inline-start:22px;inset-inline-end:-12px;height:2px;background:var(--line-strong)}
.timeline > li:last-child::after{display:none}
.timeline .when{display:block;font:500 13px/1.35 var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}
.timeline h3{font-size:20px;line-height:1.25;letter-spacing:-.01em;margin-bottom:6px}
.timeline p{font-size:16px;line-height:1.5;color:var(--body)}
@media (max-width:960px){
  .timeline{grid-template-columns:minmax(0,1fr);gap:0}
  .timeline > li{padding:0 0 26px;padding-inline-start:34px}
  .timeline > li::before{top:5px}
  .timeline > li::after{top:24px;bottom:2px;inset-inline-start:6px;inset-inline-end:auto;width:2px;height:auto}
  .timeline > li:last-child{padding-bottom:0}
}

/* Vendor map: the authentication layer across four silos */
.layer-map{display:grid;gap:12px}
.layer-top{background:var(--ink);border-radius:18px;padding:22px 26px;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px}
.layer-top .tag-label{color:var(--accent-dark);white-space:normal}
.layer-top p{color:var(--on-dark-body);font-size:17px;line-height:1.45}
.layer-silos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.layer-silos > li{background:var(--card);border:1px solid var(--hair);border-radius:18px;padding:20px 22px;display:flex;flex-direction:column;gap:6px;min-width:0}
.layer-silos .tag-label{white-space:normal}
.layer-silos h3{font-size:19px;line-height:1.25}
.layer-silos p{font-size:15px;line-height:1.45;color:var(--muted)}
@media (max-width:960px){.layer-silos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.layer-silos{grid-template-columns:minmax(0,1fr)}}

/* A card grid inside a split column stacks instead of squeezing */
.split2 .col .g3,.split2 .col .g4{grid-template-columns:minmax(0,1fr)}

/* Guide index: each guide is a link with its one-line scope underneath */
.tile .guide-list{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-direction:column;gap:0}
.tile .guide-list li{padding:12px 0;border-top:1px solid var(--hair);display:flex;flex-direction:column;gap:3px}
.tile .guide-list li:first-child{border-top:0;padding-top:4px}
.tile .guide-list a{font-weight:600;font-size:17px;color:var(--accent)}
.tile .guide-list a:hover{text-decoration:underline;text-underline-offset:3px}
.tile .guide-list span{font-size:15px;line-height:1.45;color:var(--body)}

/* Chip editions accordion: title, spec line and summary stack */
.acc .ttl{display:flex;flex-direction:column;min-width:0}
.acc .ttl .meta,.acc .ttl .sub{display:block}

/* Diagrams inside articles (replace text-art) */
.prose .dg{margin-block:1.8em;background:var(--card);border:1px solid var(--hair);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:10px}
.prose .dg .dg-title{margin:0 0 6px;font:500 13px/1.35 var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.prose .dg h4{margin:0 0 6px;font-size:17px;line-height:1.3}
.prose .dg p,.prose .dg li{font-size:15px;line-height:1.45;color:var(--body);margin:0}
.prose .dg ul{margin:0;padding-inline-start:18px}
.prose .dg li + li{margin-top:2px}
.dg-box{border:1px solid var(--border);border-radius:14px;padding:14px 16px;background:var(--paper);min-width:0}
.dg-box.is-key{background:var(--ink);border-color:var(--ink)}
.prose .dg-box.is-key h4{color:var(--on-dark)}
.prose .dg-box.is-key p,.prose .dg-box.is-key li{color:var(--on-dark-body)}
.dg-row{display:grid;gap:10px;grid-template-columns:repeat(var(--n,2),minmax(0,1fr))}
.dg-row.dg-pair{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}
.dg-to{color:var(--accent);font-size:20px;line-height:1;text-align:center}
.dg-arrow{display:flex;align-items:center;justify-content:center;gap:10px;font:500 13px/1.3 var(--mono);font-variant-numeric:tabular-nums;color:var(--muted);text-align:center}
.dg-arrow span{color:var(--accent);font-size:20px}
.dg-flow{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.dg-step{padding:8px 14px;border:1px solid var(--border);border-radius:999px;background:var(--paper);font-size:15px;line-height:1.3;color:var(--ink);white-space:nowrap}
.dg-sep{color:var(--accent);font-size:18px;line-height:1}
.prose .dg .dg-map{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.prose .dg .dg-map li{margin:0;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1.3fr);gap:12px;align-items:center;padding:12px 16px;border:1px solid var(--border);border-radius:14px;background:var(--paper)}
.prose .dg-map li span:first-child{font-weight:600;color:var(--ink)}
@media (max-width:640px){
  .dg-row,.dg-row.dg-pair{grid-template-columns:minmax(0,1fr)}
  .dg-row.dg-pair .dg-to{transform:rotate(90deg)}
  .prose .dg .dg-map li{grid-template-columns:minmax(0,1fr);gap:4px}
  .prose .dg .dg-map li .dg-to{display:none}
  .prose .dg{padding:18px}
}

/* Forms carried from the previous site: house button and aligned fields */
.v7 button{font-family:var(--sans)}
.v7 .lead-form .row{align-items:end}
.v7 .lead-form button{min-height:52px;border-radius:999px;background:var(--ink);color:var(--paper);font:500 17px/1.2 var(--sans);padding:14px 24px}
.v7 .lead-form button:hover{background:#000}
.v7 .lead-form label{display:block;font-size:13px;font-weight:500;letter-spacing:.06em;color:var(--muted);margin:14px 0 6px}
.v7 .lead-form label span{text-transform:none;letter-spacing:0}

/* 25-line check */
.v7 .lc-row .x{display:inline-block;white-space:nowrap}
.v7 .lc-bar{background:rgba(41,41,41,.12)}
.v7 .lc-chk input{flex:0 0 18px}

/* Readiness check: product-group cards */
.v7 .rc-cats{grid-template-columns:repeat(3,minmax(0,1fr))}
.v7 .rc-cat{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;text-align:start}
.v7 .rc-cat .d{line-height:1.5;margin-top:auto;padding-top:12px}
@media (max-width:900px){.v7 .rc-cats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.v7 .rc-cats{grid-template-columns:minmax(0,1fr)}}

/* Grids of uneven lists don't stretch every card to the tallest */
.grid:has(.guide-list){align-items:start}
/* A comparison table whose first column holds short dates */
.compare thead th:first-child:nth-last-child(4){width:16%}
/* Diagram flows run top to bottom on phones */
@media (max-width:640px){.dg-flow{flex-direction:column;align-items:flex-start}.dg-sep{transform:rotate(90deg);margin-inline-start:18px}}
.v7 .lc-flags:empty,.v7 .lc-clock:empty{display:none}
.v7 .lc-scale{position:relative}
.v7 .lc-scale span:nth-child(2){position:absolute;left:calc(25.5 / 40 * 100%);transform:translateX(-50%)}

/* Price and terms rows inside a dark call-to-action band (/audits) */
.cta-band .cta-spec{border-top:1px solid rgba(255,255,255,.14);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
.cta-band .cta-spec div{grid-template-columns:minmax(0,1fr);gap:4px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.cta-band .cta-spec dt{color:var(--on-dark-mute);font-size:12px}
.cta-band .cta-spec dd{color:var(--on-dark);font-size:18px;font-weight:600}
@media (max-width:640px){.cta-band .cta-spec{grid-template-columns:minmax(0,1fr)}}
/* Long identifiers in running text (GS1 Digital Link URLs) wrap instead of pushing the page wider */
.prose code,.wh main p code,.wh main li code{overflow-wrap:anywhere}

/* ================= AEROZ BRAND KIT (18 Oct 2026) ================= */
/* The photo hero runs edge to edge on the Lead stage (warm.css). */
.wh>main>.page-hero{background:var(--charcoal);margin-top:0;border-radius:0}
.cta-band,.tile.dark{background:var(--fog);border-color:transparent}
.cta-band .accent-ink{color:var(--powder-blue)}
.cta-band .btn-dark,.tile.dark .btn-dark,.page-hero .btn-dark{background:var(--frost);color:var(--lead);box-shadow:none}
.cta-band .btn-dark:hover,.page-hero .btn-dark:hover{background:#fff}
.cta-band :where(p) a,.page-hero :where(p) a{color:var(--powder-blue)}
.page-hero .accent-ink{color:var(--powder-blue)}
.layer-top{background:var(--fog)}
.tile,.form-card,.tool,.layer-silos > li,.prose .kv > div,.prose .dg,.form-ok{background:var(--glass-light);border-color:var(--warm-2);box-shadow:var(--glass-shadow)}
.note-band{background:radial-gradient(70% 120% at 0% 100%,rgba(230,228,242,.8),rgba(230,228,242,0) 70%),var(--surface-2)}
.band-warm .note-band{background:var(--glass-light);border-color:var(--warm-2)}
.ticks li::before{color:var(--ok)}
.page-hero .ticks li::before,.cta-band .ticks li::before,.cta-band .inc li::before{color:var(--powder-blue)}
.timeline > li::before{background:var(--lead)}
.timeline .when{color:var(--text-2)}
.compare td.yes{color:var(--ok)}
.compare th.hl{color:var(--lead)}
.compare .hl{background:rgba(25,18,112,.05)}
.dg-to,.dg-sep,.dg-arrow span{color:var(--text-2)}
.prose a,.source-line a,.tile .guide-list a,a.tile .go{color:var(--deep)}
.prose blockquote{border-inline-start-color:var(--lead)}
.wh form input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.wh form select,.wh form textarea{border-radius:10px;background:#fff}
.wh form input:focus,.wh form select:focus,.wh form textarea:focus{border-color:var(--deep)}
.v7 .btn-primary,.v7 .btn-audit,.v7 .lead-form button{background:var(--deep-btn);color:#fff;border-radius:10px;border-color:transparent}
.v7 .lead-form button:hover{background:linear-gradient(180deg,#524693 0%,#1f1785 100%)}
.subscribe form input{border-radius:10px!important}
