/* V7 page system — scoped under .v7 (Contact / Thank You).
   Primitives mirror assets/css/page-about.css so page templates stay consistent. */

.v7{
  --v7-max:1440px;
  --v7-pad:40px;
  max-width:none;
  margin:0;
  padding:0;
  background:var(--cloud-100);
  color:var(--ink-900);
  font-family:var(--font-inter,"Inter",Arial,sans-serif);
  -webkit-font-smoothing:antialiased;
}
.v7 *,.v7 *::before,.v7 *::after{box-sizing:border-box}
.v7-wrap{max-width:var(--v7-max);margin:0 auto;padding-inline:var(--v7-pad)}
.v7-section{padding-block:104px}
.v7-section--white{background:var(--cloud-50)}
.v7-section--cloud{background:var(--cloud-200)}
.v7-section--border{border-bottom:1px solid var(--cloud-300)}
.v7 h1,.v7 h2,.v7 h3{font-family:var(--font-display,"Montserrat",Arial,sans-serif);color:var(--ink-950);letter-spacing:-.03em}
.v7 h1{font-size:clamp(40px,4.6vw,64px);font-weight:800;line-height:1.05;margin:0}
.v7 h2{font-size:clamp(30px,3.2vw,44px);font-weight:800;line-height:1.1;margin:0}
.v7 h3{font-size:clamp(19px,1.8vw,25px);font-weight:800;line-height:1.16;margin:0}
.v7 p{margin:0}
.v7 a{text-decoration:none}
.v7-blue{color:var(--brand-500)}
.v7-orange{color:var(--heat-500)}
.v7-eyebrow{display:flex;align-items:center;gap:12px;max-width:none;margin:0 0 18px;font-size:11px;font-weight:700;line-height:1.4;letter-spacing:.14em;text-transform:uppercase;color:var(--metal-500)}
.v7-eyebrow::before{content:"";flex:none;width:40px;height:1px;background:var(--brand-500)}
.v7-lead{font-size:18px;font-weight:500;line-height:1.7;color:var(--metal-700);max-width:62ch}
.v7-body{font-size:14px;line-height:1.75;color:var(--metal-700)}
.v7-small{font-size:13px;line-height:1.7;color:var(--metal-600);max-width:62ch}
.v7-mt{margin-top:20px}
.v7-mt--lg{margin-top:48px}
.v7-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border:1px solid transparent;border-radius:6px;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:background .18s,border-color .18s,transform .18s}
.v7-btn--primary{background:var(--brand-500);color:#fff}
.v7-btn--primary:hover{background:var(--brand-600);transform:translateY(-1px)}
.v7-btn--ghost{background:var(--cloud-50);border-color:var(--cloud-400);color:var(--ink-900)}
.v7-btn--ghost:hover{border-color:var(--ink-800)}
.v7-btn--block{width:100%}
.v7-label{margin:0;font-size:9.5px;font-weight:700;line-height:1.5;letter-spacing:.13em;text-transform:uppercase;color:var(--brand-600)}
.v7-label--heat{color:var(--heat-600)}
.v7-label--metal{color:var(--metal-500)}
.v7-card{background:var(--cloud-50);border:1px solid var(--cloud-300);border-radius:10px;padding:28px}
.v7-card--tint{background:var(--cloud-100)}
.v7-card h3{margin-top:12px}
.v7-card .v7-body{margin-top:14px}
.v7-kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}
.v7-kv>div{border:1px solid var(--cloud-300);border-radius:7px;background:var(--cloud-50);padding:14px}
.v7-kv__k{display:block;font-size:9.5px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--metal-500)}
.v7-kv__v{display:block;margin-top:7px;font-size:13.5px;font-weight:700;line-height:1.5;color:var(--ink-900)}
.v7-grid{display:grid;gap:20px}
.v7-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.v7-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.v7-grid--wide{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;align-items:start}
.v7-note{margin-top:22px;padding-left:16px;border-left:2px solid var(--brand-500);font-size:13.5px;line-height:1.7;color:var(--metal-700);max-width:70ch}
.v7-list{margin:16px 0 0;padding:0;list-style:none}
.v7-list li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--cloud-300);font-size:14px;line-height:1.6;color:var(--ink-800)}
.v7-list li:first-child{border-top:1px solid var(--cloud-300)}
.v7-list em{padding-top:1px;font-family:var(--font-mono);font-size:11px;font-style:normal;color:var(--metal-500)}
.v7-hero{position:relative;overflow:hidden;background:var(--cloud-50);border-bottom:1px solid var(--cloud-300)}
.v7-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 12%,rgba(36,104,232,.10),transparent 34%),radial-gradient(circle at 88% 14%,rgba(241,138,50,.07),transparent 26%);pointer-events:none}
.v7-hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(to right,rgba(16,38,58,.045) 1px,transparent 1px),linear-gradient(to bottom,rgba(16,38,58,.045) 1px,transparent 1px);background-size:30px 30px;opacity:.55;pointer-events:none}
.v7-hero__inner{position:relative;padding-block:64px 72px}
.v7-hero__lead{margin-top:22px}

/* form */
.v7-form{background:var(--cloud-50);border:1px solid var(--cloud-300);border-radius:12px;padding:30px;box-shadow:var(--shadow-v7-card)}
.v7-fieldset{border:0;margin:0;padding:0}
.v7-fieldset+.v7-fieldset{margin-top:26px;padding-top:26px;border-top:1px solid var(--cloud-300)}
.v7-legend{margin:0 0 16px;padding:0;font-size:9.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--brand-600)}
.v7-field{display:grid;gap:7px;margin-top:16px}
.v7-legend+.v7-field{margin-top:0}
.v7-field label{font-size:12.5px;font-weight:600;color:var(--ink-800)}
.v7-req{color:var(--heat-600);font-weight:700}
.v7-field input[type="text"],.v7-field input[type="email"],.v7-field select,.v7-field textarea{width:100%;min-height:46px;padding:11px 13px;border:1px solid var(--cloud-400);border-radius:6px;background:var(--cloud-50);font-family:inherit;font-size:14px;color:var(--ink-900)}
.v7-field textarea{min-height:120px;resize:vertical}
.v7-field input[type="file"]{width:100%;padding:11px 13px;border:1px dashed var(--cloud-400);border-radius:6px;background:var(--cloud-100);font-family:inherit;font-size:13px;color:var(--metal-700)}
.v7-field input:focus,.v7-field select:focus,.v7-field textarea:focus{outline:2px solid var(--brand-400);outline-offset:1px;border-color:var(--brand-400)}
.v7-hint{font-size:12px;line-height:1.6;color:var(--metal-500);max-width:60ch}
.v7-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.v7-form__foot{margin-top:26px;padding-top:22px;border-top:1px solid var(--cloud-300)}
.v7-form__foot .v7-btn{margin-top:18px}

/* thank you */
.v7-thanks{padding-block:96px}
.v7-thanks__card{max-width:780px;margin:0 auto;padding:48px 40px;text-align:center;background:var(--cloud-50);border:1px solid var(--cloud-300);border-radius:14px;box-shadow:var(--shadow-v7-soft)}
.v7-thanks__mark{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 22px;border:1px solid var(--brand-100);border-radius:50%;background:var(--brand-50);font-size:24px;font-weight:800;color:var(--brand-500)}
.v7-thanks__card .v7-eyebrow{justify-content:center}
.v7-thanks__card .v7-eyebrow::before{display:none}
.v7-thanks__lead{margin:20px auto 0;text-align:center}
.v7-thanks__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:30px}
.v7-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:48px}
.v7-step{padding:24px;background:var(--cloud-50);border:1px solid var(--cloud-300);border-radius:10px}
.v7-step__n{font-family:var(--font-mono);font-size:11px;color:var(--heat-600)}
.v7-step h3{margin-top:10px;font-size:18px}
.v7-step .v7-small{margin-top:10px}

@media (max-width:1080px){
  .v7-grid--wide{grid-template-columns:minmax(0,1fr);gap:36px}
  .v7-grid--3,.v7-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .v7{--v7-pad:20px}
  .v7-section{padding-block:64px}
  .v7 h1{font-size:36px}
  .v7-grid--2,.v7-grid--3,.v7-kv,.v7-steps,.v7-two{grid-template-columns:minmax(0,1fr)}
  .v7-form{padding:22px}
  .v7-thanks{padding-block:56px}
  .v7-thanks__card{padding:30px 22px}
  .v7-thanks__actions .v7-btn{width:100%}
}

/* books (post type archive + single) */
.v7-back{margin:0 0 26px;font-size:12.5px;font-weight:600}
.v7-back a{color:var(--metal-600)}
.v7-back a:hover{color:var(--brand-600)}
.v7-label--metal{color:var(--metal-500)}
.v7-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.v7-chip{border-radius:5px;background:var(--cloud-200);padding:7px 11px;font-size:12px;font-weight:700;color:var(--ink-800)}
.v7-books{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.v7-book-card{overflow:hidden;background:var(--cloud-50);border:1px solid var(--cloud-300);border-radius:10px;transition:border-color .18s,transform .18s}
.v7-book-card:hover{border-color:var(--cloud-400);transform:translateY(-2px)}
.v7-book-card__media{display:block;aspect-ratio:3 / 4;background:var(--cloud-200);overflow:hidden}
.v7-book-card__img{display:block;width:100%;height:100%;object-fit:cover}
.v7-book-card__plate{display:grid;place-items:center;height:100%;padding:26px;text-align:center;background:linear-gradient(160deg,var(--brand-50),var(--cloud-100));font-family:var(--font-display,"Montserrat",Arial,sans-serif);font-size:18px;font-weight:800;line-height:1.25;letter-spacing:-.02em;color:var(--ink-900)}
.v7-book-card__body{padding:20px}
.v7-book-card__title{margin-top:10px;font-size:19px}
.v7-book-card__title a{color:var(--ink-950)}
.v7-book-card__title a:hover{color:var(--brand-600)}
.v7-book-card__meta{margin-top:10px;font-size:12.5px;line-height:1.6;color:var(--metal-600)}
.v7-book-detail{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:44px;align-items:start}
.v7-book-detail__media{aspect-ratio:3 / 4;overflow:hidden;background:var(--cloud-200);border:1px solid var(--cloud-300);border-radius:10px}
.v7-book-detail__media img{display:block;width:100%;height:100%;object-fit:cover}
.v7-book-detail__media .v7-book-card__plate{font-size:22px}
.v7-book-detail__title{margin-top:14px}
.v7-book-summary{margin-top:22px;font-size:15px;line-height:1.75;color:var(--metal-700);max-width:70ch}
.v7-book-detail__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:26px}
.v7-book-detail__meta>div{border:1px solid var(--cloud-300);border-radius:7px;background:var(--cloud-50);padding:14px}
.v7-book-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:26px}
.v7-book-body{margin-top:56px;padding-top:40px;border-top:1px solid var(--cloud-300)}
.v7-book-body h2{margin-bottom:16px}
.v7-book-body p{margin-top:14px;font-size:15px;line-height:1.8;color:var(--metal-700);max-width:72ch}
.v7-book-body ul,.v7-book-body ol{margin-top:14px;font-size:15px;line-height:1.8;color:var(--metal-700);max-width:72ch}
.v7-book-empty{max-width:660px;padding:40px;background:var(--cloud-50);border:1px dashed var(--cloud-400);border-radius:12px}
.v7-book-empty h1,.v7-book-empty h2{margin-top:14px}
.v7-book-empty .v7-body{margin-top:12px}
.v7-books-pagination{margin-top:36px}
.v7-books-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;margin-right:6px;padding:0 12px;border:1px solid var(--cloud-300);border-radius:6px;background:var(--cloud-50);font-size:13px;font-weight:700;color:var(--ink-800)}
.v7-books-pagination .page-numbers.current{background:var(--brand-500);border-color:var(--brand-500);color:#fff}

@media (max-width:1080px){
  .v7-books{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v7-book-detail{grid-template-columns:minmax(0,1fr);gap:28px}
  .v7-book-detail__media{max-width:320px}
}
@media (max-width:720px){
  .v7-books,.v7-book-detail__meta{grid-template-columns:minmax(0,1fr)}
  .v7-book-empty{padding:26px}
}

/* books list toolbar — the dropdown styles live in site-chrome.css, because the
   same control also renders in the site header on every template. */
.v7-books-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-end;margin-bottom:24px}
@media (max-width:720px){
  .v7-books-toolbar{justify-content:flex-start}
  .v7-books-toolbar .v7-dropdown,.v7-books-toolbar .v7-dropdown__trigger{width:100%}
  .v7-books-toolbar .v7-dropdown__trigger{justify-content:space-between}
  .v7-books-toolbar .v7-dropdown__panel{width:100%;min-width:0}
}

/* audience channel banner on the filtered books list */
.v7-channel{display:flex;align-items:center;gap:20px;margin-bottom:28px;padding:20px 22px;border:1px solid var(--cloud-300);border-radius:12px;background:var(--cloud-50)}
.v7-channel__img{flex:none;width:88px;height:88px;border-radius:10px;object-fit:cover}
.v7-channel__name{margin-top:6px;font-family:var(--font-display,"Montserrat",Arial,sans-serif);font-size:24px;font-weight:800;line-height:1.2;letter-spacing:-.02em;color:var(--ink-950)}
@media (max-width:720px){
  .v7-channel{flex-direction:column;align-items:flex-start;gap:14px}
  .v7-channel__img{width:64px;height:64px}
}

/* ---------- page building blocks (shared by all static pages) ---------- */
.v7-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 18px;font-size:12.5px;color:var(--metal-500)}
.v7-breadcrumb a{color:var(--metal-600)}
.v7-breadcrumb a:hover{color:var(--brand-600)}
.v7-breadcrumb span[aria-hidden]{color:var(--cloud-400)}

.v7-page-hero{position:relative;overflow:hidden;background:var(--cloud-50);border-bottom:1px solid var(--cloud-300)}
.v7-page-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 0%,rgba(36,104,232,.09),transparent 38%),radial-gradient(circle at 92% 6%,rgba(241,138,50,.07),transparent 30%);pointer-events:none}
.v7-page-hero__inner{position:relative;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:44px;align-items:end;padding-block:60px 68px}
.v7-page-hero__lead{margin-top:20px}
.v7-page-hero__aside{border-left:2px solid var(--brand-500);padding-left:18px}
.v7-page-hero__aside p{margin:0;font-size:13.5px;line-height:1.7;color:var(--metal-700)}

.v7-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--cloud-300);border:1px solid var(--cloud-300);border-radius:12px;overflow:hidden}
.v7-flow__step{background:var(--cloud-50);padding:24px 22px}
.v7-flow__no{font-family:var(--font-mono);font-size:11px;color:var(--heat-600)}
.v7-flow__step h3{margin-top:10px;font-size:17px}
.v7-flow__step p{margin-top:10px;font-size:13px;line-height:1.7;color:var(--metal-700)}

.v7-visual{position:relative;overflow:hidden;border-radius:12px;background:var(--ink-950);padding:28px;color:#fff;min-height:260px;display:grid;align-content:end;gap:10px}
.v7-visual::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 10%,rgba(241,138,50,.22),transparent 45%);pointer-events:none}
.v7-visual__label{position:relative;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-100)}
.v7-visual__title{position:relative;font-family:var(--font-display,"Montserrat",Arial,sans-serif);font-size:22px;font-weight:800;line-height:1.25;letter-spacing:-.02em;color:#fff}
.v7-visual__text{position:relative;font-size:13.5px;line-height:1.7;color:rgba(255,255,255,.66)}
.v7-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}

.v7-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--cloud-300);border:1px solid var(--cloud-300);border-radius:12px;overflow:hidden}
.v7-stat{background:var(--cloud-100);padding:24px}
.v7-stat__n{font-family:var(--font-display,"Montserrat",Arial,sans-serif);font-size:34px;font-weight:800;line-height:1;letter-spacing:-.04em;color:var(--ink-950)}
.v7-stat__l{margin-top:10px;font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--metal-500)}

.v7-terms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.v7-term-card{display:block;padding:26px;border:1px solid var(--cloud-300);border-radius:12px;background:var(--cloud-50);transition:border-color .18s,transform .18s}
.v7-term-card:hover{border-color:var(--cloud-400);transform:translateY(-2px)}
.v7-term-card h3{margin-top:10px;font-size:22px}
.v7-term-card p{margin-top:12px;font-size:13.5px;line-height:1.7;color:var(--metal-700)}
.v7-term-card__more{display:inline-block;margin-top:16px;font-size:12.5px;font-weight:700;color:var(--brand-600)}

.v7-cta{background:var(--brand-50);padding-block:72px}
.v7-cta__card{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:44px;align-items:center;padding:38px;border:1px solid var(--brand-100);border-radius:14px;background:var(--cloud-50);box-shadow:var(--shadow-v7-soft)}
.v7-cta__chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.v7-cta__chip{padding:16px;border:1px solid var(--cloud-300);border-radius:7px;background:var(--cloud-100);text-align:center}
.v7-cta__chip b{display:block;margin-top:8px;font-size:13.5px;color:var(--ink-900)}

.v7-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.v7-tag{padding:7px 11px;border-radius:5px;background:var(--cloud-200);font-size:12px;font-weight:700;color:var(--ink-800)}
.v7-tag--blue{background:var(--brand-50);color:var(--brand-700)}
.v7-tag--heat{background:var(--heat-50);color:var(--heat-600)}

@media (max-width:1080px){
  .v7-page-hero__inner{grid-template-columns:minmax(0,1fr);gap:26px;padding-block:44px 52px}
  .v7-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v7-terms{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v7-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v7-cta__card{grid-template-columns:minmax(0,1fr);padding:26px}
}
@media (max-width:720px){
  .v7-flow,.v7-terms,.v7-stats,.v7-cta__chips{grid-template-columns:minmax(0,1fr)}
  .v7-cta{padding-block:52px}
}

/* editor content inside a page template */
.v7-prose{max-width:74ch}
.v7-prose h2{margin-top:44px}
.v7-prose h3{margin-top:30px}
.v7-prose p{margin-top:14px;font-size:16px;line-height:1.8;color:var(--metal-700)}
.v7-prose ul,.v7-prose ol{margin-top:14px;font-size:16px;line-height:1.8;color:var(--metal-700)}
.v7-prose>*:first-child{margin-top:0}

/* ---------- visual-first blocks (homepage and hub pages) ---------- */
.v7-hero__grid{position:relative;display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:52px;align-items:center;padding-block:64px 72px}
.v7-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.v7-anchors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:40px;border-top:1px solid var(--cloud-300);border-bottom:1px solid var(--cloud-300)}
.v7-anchor{display:block;padding:18px 18px 18px 0;border-right:1px solid var(--cloud-300)}
.v7-anchor:nth-child(2){padding-left:18px}
.v7-anchor:last-child{border-right:0;padding-left:18px}
.v7-anchor__no{display:block;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-600)}
.v7-anchor--heat .v7-anchor__no{color:var(--heat-600)}
.v7-anchor--metal .v7-anchor__no{color:var(--metal-500)}
.v7-anchor__name{display:block;margin-top:8px;font-family:var(--font-display,"Montserrat",Arial,sans-serif);font-size:14px;font-weight:800;color:var(--ink-950)}
.v7-hero__media{position:relative;margin:0;padding:0;border:1px solid var(--cloud-300);border-radius:12px;overflow:hidden;background:var(--cloud-200);box-shadow:var(--shadow-v7-soft)}
.v7-hero__media>img{display:block;width:100%;height:auto}
.v7-hero__media figcaption{position:absolute;left:16px;right:16px;bottom:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.v7-hero__media figcaption span{padding:10px 12px;border:1px solid rgba(255,255,255,.7);border-radius:8px;background:rgba(255,255,255,.94);font-size:12px;font-weight:700;color:var(--ink-900);text-align:center}
.v7-hero__media figcaption b{display:block;margin-bottom:4px;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--metal-500)}
.v7-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:40px;align-items:end;margin-bottom:44px}
.v7-head .v7-body{margin-top:18px}
/* stacked head: eyebrow, headline and lead read as one left-aligned column */
.v7-head--stack{display:block;margin-bottom:48px}
.v7-head--stack h2{max-width:26ch}
.v7-head--stack .v7-body{margin-top:16px;max-width:60ch}
.v7-card--media{overflow:hidden;padding:0}
.v7-card--media .v7-card__media{display:block;background:var(--cloud-200)}
.v7-card__media img{display:block;width:100%;height:auto}
.v7-card__body{padding:24px}
.v7-card__body h3{margin-top:10px;font-size:21px}
.v7-card__body h3 a{color:var(--ink-950)}
.v7-card__body h3 a:hover{color:var(--brand-600)}
.v7-card--link{padding:26px;transition:border-color .18s,transform .18s}
.v7-card--link:hover{border-color:var(--cloud-400);transform:translateY(-2px)}
.v7-term-card--media{padding:0;overflow:hidden}
.v7-term-card__body{display:block;padding:22px}
.v7-term-card__body h3{margin-top:10px;font-size:21px}
.v7-term-card__body .v7-body{display:block;margin-top:12px}
.v7-parts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.v7-part{display:block;overflow:hidden;border:1px solid var(--cloud-300);border-radius:10px;background:var(--cloud-50);transition:border-color .18s,transform .18s}
.v7-part:hover{border-color:var(--cloud-400);transform:translateY(-2px)}
.v7-part__media{display:block;background:var(--cloud-200)}
.v7-part__media img{display:block;width:100%;height:auto}
.v7-part__name{display:block;padding:14px 16px;font-size:13.5px;font-weight:700;color:var(--ink-900)}

/* dark proof / video band */
.v7-section--dark{background:var(--ink-950);color:#fff;padding-block:120px}
.v7-section--dark .v7-grid--3{gap:24px}
@media (max-width:720px){
  .v7-section--dark{padding-block:72px}
}
.v7-eyebrow--light{color:var(--brand-100)}
.v7-eyebrow--light::before{background:var(--brand-100)}
.v7-h2--light,.v7 .v7-h2--light{color:#fff}
.v7-body--light{color:rgba(255,255,255,.66)}
.v7-btn--light{background:transparent;border-color:rgba(255,255,255,.4);color:#fff}
.v7-btn--light:hover{background:rgba(255,255,255,.12);border-color:#fff}
.v7-video{display:block}
.v7-video__cover{position:relative;display:block;aspect-ratio:16 / 9;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:var(--ink-900)}
.v7-video__cover img{display:block;width:100%;height:100%;object-fit:cover;opacity:.78}
.v7-video__play{position:absolute;left:16px;top:16px;width:44px;height:44px;border-radius:50%;background:#fff}
.v7-video__play::after{content:"";position:absolute;left:17px;top:14px;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:12px solid var(--ink-950)}
.v7-video__label{display:block;margin-top:14px;font-size:9.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--brand-100)}
.v7-video__title{display:block;margin-top:8px;font-family:var(--font-display,"Montserrat",Arial,sans-serif);font-size:18px;font-weight:800;line-height:1.3;color:#fff}

/* case evidence cards */
.v7-case{display:block;overflow:hidden;border:1px solid var(--cloud-300);border-radius:12px;background:var(--cloud-50);transition:border-color .18s,transform .18s}
.v7-case:hover{border-color:var(--cloud-400);transform:translateY(-2px)}
.v7-case__media{display:block;aspect-ratio:16 / 9;overflow:hidden;background:var(--cloud-200)}
.v7-case__media img{display:block;width:100%;height:100%;object-fit:cover}
.v7-case__body{display:block;padding:20px}
.v7-case__title{display:block;margin-top:10px;font-family:var(--font-display,"Montserrat",Arial,sans-serif);font-size:19px;font-weight:800;line-height:1.3;color:var(--ink-950)}
.v7-case--featured .v7-case__title{font-size:24px}
.v7-case__more{display:inline-block;margin-top:16px;font-size:12.5px;font-weight:700;color:var(--brand-600)}

/* One featured horizontal case above two vertical ones. Every media box keeps
   its own aspect ratio, so no card is stretched by a taller neighbour. */
.v7-cases{display:grid;gap:20px}
.v7-cases__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.v7-case--featured{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center}
.v7-case--featured .v7-case__media{aspect-ratio:7 / 4}
.v7-case--featured .v7-case__body{padding:36px}
@media (max-width:900px){
  .v7-case--featured{grid-template-columns:minmax(0,1fr)}
  .v7-case--featured .v7-case__body{padding:24px}
  .v7-cases__grid{grid-template-columns:minmax(0,1fr)}
}

@media (max-width:1080px){
  .v7-hero__grid{grid-template-columns:minmax(0,1fr);gap:32px;padding-block:48px 56px}
  .v7-head{grid-template-columns:minmax(0,1fr);gap:18px}
  .v7-parts{grid-template-columns:repeat(3,minmax(0,1fr))}
  .v7-anchors{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v7-hero__media figcaption{grid-template-columns:repeat(3,minmax(0,1fr));left:10px;right:10px;bottom:10px;gap:6px}
  .v7-hero__media figcaption span{padding:8px;font-size:11px}
}
@media (max-width:720px){
  .v7-parts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v7-anchor{border-right:0;border-bottom:1px solid var(--cloud-300);padding:14px 0}
  .v7-anchor:nth-child(2),.v7-anchor:last-child{padding-left:0}
  .v7-anchors .v7-anchor:last-child{border-bottom:0}
  .v7-hero__media figcaption{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* hero fit: keep the headline phrases unbroken and the visual inside one screen */
.v7-nowrap{white-space:nowrap}
.v7-hero h1{font-size:clamp(36px,3.9vw,56px);line-height:1.06}
.v7-hero__grid{padding-block:54px 62px;gap:44px}
.v7-hero__media img{display:block;width:100%;height:auto}

/* ---------- full-bleed hero with a production-line background ----------
   The mask is heavy on the left for text legibility and fades toward the right
   so the forging line stays visible (~80% clarity). */
.v7-hero--full{position:relative;display:grid;align-items:center;min-height:min(86vh,820px);background:var(--ink-950);border-bottom:1px solid var(--cloud-300);overflow:hidden}
.v7-hero--full::before,.v7-hero--full::after{content:none}
.v7-hero__bg{position:absolute;inset:0}
.v7-hero__bg img{display:block;width:100%;height:100%;object-fit:cover}
.v7-hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,23,36,.95) 0%,rgba(11,23,36,.88) 30%,rgba(11,23,36,.55) 58%,rgba(11,23,36,.12) 100%)}
.v7-hero__full-inner{position:relative;width:100%;padding-block:88px 46px}
.v7-hero__copy{max-width:680px}
.v7-hero--full h1{color:#fff}
.v7-hero--full .v7-eyebrow{color:var(--brand-100)}
.v7-hero--full .v7-eyebrow::before{background:var(--brand-100)}
.v7-hero--full .v7-blue{color:var(--brand-400)}
.v7-hero--full .v7-orange{color:var(--heat-400)}
.v7-hero__lead{margin-top:18px;font-size:16px;line-height:1.55;color:rgba(255,255,255,.8);max-width:58ch}
.v7-anchors--light{margin-top:38px;max-width:800px;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}
.v7-anchors--light .v7-anchor{border-right-color:rgba(255,255,255,.18)}
.v7-anchors--light .v7-anchor__name{color:#fff}
.v7-anchors--light .v7-anchor__no{color:var(--brand-100)}
.v7-hero--full .v7-btn--ghost{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.45);color:#fff}
.v7-hero--full .v7-btn--ghost:hover{background:rgba(255,255,255,.18);border-color:#fff}
@media (max-width:1080px){
  .v7-hero--full{min-height:0}
  .v7-hero__full-inner{padding-block:60px 34px}
  .v7-hero__bg::after{background:linear-gradient(180deg,rgba(11,23,36,.9) 0%,rgba(11,23,36,.84) 60%,rgba(11,23,36,.7) 100%)}
  .v7-anchors--light{margin-top:28px}
}
