/* ===========================================================
   Alex Appliances Repair — 06-sections · wave-2026-08-03
   Layout variants CSS on top of style #8 "Magazine / Print".
   Same system: zero radius, hairline rules, gold accent, no shadows,
   Vollkorn (serif) + Ysabeau Office (furniture), hover = inversion.
   =========================================================== */

/* ---------- shared bits ---------- */
.slot--32 .slot__box{aspect-ratio:3/2}
.slot--nocap .slot__cap{display:none}
.cols3{columns:3;column-gap:44px;column-rule:1px solid var(--rule-hair);margin:0 0 26px}
.cols3 p{margin:0 0 .85em;break-inside:avoid-column}
.sec{padding:56px 0 60px;border-bottom:1px solid var(--rule)}
.sub{font-family:var(--serif);font-size:18px;line-height:1.5;color:var(--soft);margin:0 0 .8em;max-width:64ch}
.sub--rev{color:rgba(247,239,220,.78)}

/* ---------- S0 · topbar variant B (stacked, gold spine) ---------- */
.topbar--stack .topbar__in{flex-direction:column;align-items:flex-start;gap:3px;padding-top:10px;padding-bottom:10px}
.topbar--stack .topbar__l,.topbar--stack .topbar__r{border-left:3px solid var(--gold);padding-left:12px}

/* ---------- S1 · masthead variant B (single-deck) ---------- */
.mastB{background:var(--cream);border-bottom:4px double var(--rule)}
.mastB__row{display:flex;align-items:center;gap:36px;padding-top:16px;padding-bottom:16px}
.mastB__nav{display:flex;flex-wrap:wrap;gap:0 24px;margin-left:auto}
.mastB__nav a{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;text-decoration:none;color:var(--ink);border-bottom:2px solid transparent;padding-bottom:2px}
.mastB__nav a:hover{color:var(--gold);border-bottom-color:var(--gold)}
.mastB__act{display:flex;align-items:center;gap:20px;flex:none}
.mastB .burger{display:none}
@media (max-width:1360px){
  .mastB__nav{gap:0 16px}
  .mastB__nav a{font-size:11px;letter-spacing:.1em}
}
@media (max-width:1040px){
  .mastB{position:relative}
  .mastB__nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--cream);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);z-index:45;margin:0;padding:4px 28px 14px;flex-direction:column;align-items:flex-start;gap:0}
  .mastB__nav.nav--open{display:flex}
  .mastB__nav a{width:100%;padding:11px 0;border-bottom:1px solid var(--rule-hair);font-size:12.5px}
  .mastB .burger{display:inline-flex}
}
@media (max-width:720px){
  .mastB__row{gap:14px}
  .mastB__act .btn{display:none}
  .mastB .mast__tel{font-size:20px}
  .mastB .brand img{height:38px}
  .mastB .brand__tag{margin-left:45px;letter-spacing:.22em}
}

/* ---------- S2 · hero variant B (mirrored spread) ---------- */
.heroB .hero__in{grid-template-columns:560px minmax(0,1fr)}
.heroB .hero__l{padding:48px 0 54px 60px}
.heroB .hero__r::after{left:auto;right:100%}
@media (max-width:1360px){ .heroB .hero__in{grid-template-columns:480px minmax(0,1fr)} }
@media (max-width:1040px){
  .heroB .hero__in{grid-template-columns:1fr}
  .heroB .hero__l{padding:34px 0}
  .heroB .hero__r{margin:0 -28px}
}

/* ---------- S2 · hero variant C (front page) ---------- */
.heroC{border-bottom:1px solid var(--rule);padding:44px 0 56px}
.heroC .h1{font-size:clamp(46px,5vw,100px);max-width:none;margin:.1em 0 .3em}
.heroC__grid{display:grid;grid-template-columns:minmax(0,1fr) 470px;gap:0 60px;align-items:start}
.heroC__rail{background:var(--ink);color:var(--cream);padding:30px 30px 34px;position:relative}
.heroC__rail .slot{margin-bottom:22px}
@media (max-width:1360px){ .heroC__grid{grid-template-columns:minmax(0,1fr) 420px} }
@media (max-width:1040px){
  .heroC__grid{grid-template-columns:1fr}
  .heroC__rail{margin:26px -28px 0}
}
@media (max-width:720px){ .heroC{padding:30px 0 40px} }

/* ---------- S3 · quick variant B (contact sheet, 4 tiles) ---------- */
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:0 36px}
.tile{display:flex;flex-direction:column;border-top:3px solid var(--ink);padding-top:18px}
.tile .num{margin:14px 0 4px}
.tile p{font-size:16.5px;color:var(--soft);margin:0 0 12px}
.tile .tlink{margin-top:auto;align-self:flex-start}
@media (max-width:1040px){ .tiles{grid-template-columns:1fr 1fr;gap:30px 28px} }
@media (max-width:720px){ .tiles{grid-template-columns:1fr;gap:26px} }

/* ---------- S3 · quick variant C (full index rows + thumbs) ---------- */
.idxfull .idx{grid-template-columns:56px 108px minmax(0,1fr) auto;gap:0 26px;padding:22px 0}
.idxfull .idx:first-child{border-top:1px solid var(--rule-hair)}
.thumb{width:108px}
.thumb .slot__box{aspect-ratio:1/1}
@media (max-width:720px){
  .idxfull .idx{grid-template-columns:44px 76px minmax(0,1fr)}
  .thumb{width:76px}
  .idxfull .idx .tlink{grid-column:3;margin-top:10px}
}

/* ---------- S4 · standard variant B (flow strip below) ---------- */
.standardB .flowstrip{list-style:none;margin:26px 0 4px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border:2px solid var(--ink);background:var(--cream)}
.standardB .flowstrip li{display:grid;grid-template-columns:52px 1fr;gap:0 14px;padding:22px 24px}
.standardB .flowstrip li + li{border-left:1px solid var(--rule-hair)}
.standardB .flowstrip b{font-size:44px;line-height:.85;font-weight:800;color:var(--gold);font-family:var(--serif)}
.standardB .flowstrip p{font-family:var(--sans);font-size:14.5px;line-height:1.38;color:var(--soft);margin:0}
.standardB .checks{max-width:1100px}
@media (max-width:1040px){
  .standardB .flowstrip{grid-template-columns:1fr}
  .standardB .flowstrip li + li{border-left:0;border-top:1px solid var(--rule-hair)}
}

/* ---------- S4 · standard variant C (title column left) ---------- */
.standardC__in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:0 64px}
.standardC__l .h2--xl{max-width:none}
.standardC .flow{margin-top:30px;border-top:2px solid var(--ink)}
.standardC .flow li{padding-top:20px}
@media (max-width:1040px){
  .standardC__in{grid-template-columns:1fr}
  .standardC__l{margin-bottom:30px}
}

/* ---------- S5 · problem variant B (full-bleed rows) ---------- */
.problemB__head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:0 64px;align-items:end;margin-bottom:30px}
.problemB .qa--row{grid-template-columns:repeat(5,1fr)}
.problemB .qa--row > div{padding:16px 20px 16px 0;border-bottom:1px solid var(--rule-rev)}
.problemB .qa--row > div + div{padding-left:20px;border-left:1px solid var(--rule-rev)}
.problemB .collage--row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:22px;margin-top:34px;align-items:start}
@media (max-width:1040px){
  .problemB__head{grid-template-columns:1fr;gap:0}
  .problemB .qa--row{grid-template-columns:1fr 1fr}
  .problemB .qa--row > div{padding-left:0;border-left:0}
  .problemB .qa--row > div:nth-child(even){padding-left:20px;border-left:1px solid var(--rule-rev)}
  .problemB .collage--row{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  .problemB .qa--row{grid-template-columns:1fr}
  .problemB .qa--row > div{border-left:0!important;padding-left:0!important}
  .problemB .collage--row{grid-template-columns:1fr}
}

/* ---------- S6 · services ---------- */
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 0}
.tab{font-family:var(--sans);font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--ink);padding:8px 16px;color:var(--ink);background:transparent}
.tab--on{background:var(--ink);color:var(--cream)}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 16px}
.chip{font-family:var(--sans);font-size:11.5px;line-height:1.25;letter-spacing:.02em;border:1px solid var(--rule);padding:4px 9px;color:var(--soft)}
.svc__q{font-style:italic;font-weight:600;color:var(--gold);font-size:17.5px;margin:0 0 .5em}
.svc__b p{font-size:15.5px;line-height:1.52;margin:0 0 .7em}
.svc .h3{font-size:22px}
.svc .slot{margin-bottom:14px}
.svc .tlink{margin-top:auto;align-self:flex-start}
/* A: 3-col bordered grid */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--rule-hair);border-left:1px solid var(--rule-hair);margin-top:34px}
.svc-grid .svc{display:flex;flex-direction:column;padding:26px;border-right:1px solid var(--rule-hair);border-bottom:1px solid var(--rule-hair)}
@media (max-width:1040px){ .svc-grid{grid-template-columns:1fr 1fr} }
@media (max-width:720px){ .svc-grid{grid-template-columns:1fr} }
/* B: editorial index rows */
.svc-rows{margin-top:26px;border-top:2px solid var(--ink)}
.svc-rows .svc{display:grid;grid-template-columns:300px minmax(0,1fr);gap:0 40px;padding:30px 0;border-bottom:1px solid var(--rule-hair)}
.svc-rows .svc .slot{margin-bottom:0;align-self:start}
.svc-rows .svc__t{display:flex;flex-direction:column;align-items:flex-start}
@media (max-width:1040px){ .svc-rows .svc{grid-template-columns:220px minmax(0,1fr);gap:0 26px} }
@media (max-width:720px){ .svc-rows .svc{grid-template-columns:1fr;gap:14px 0} }
/* C: 2-col horizontal cards */
.svc-duo{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--rule-hair);border-left:1px solid var(--rule-hair);margin-top:34px}
.svc-duo .svc{display:grid;grid-template-columns:220px minmax(0,1fr);gap:0 24px;padding:24px;border-right:1px solid var(--rule-hair);border-bottom:1px solid var(--rule-hair)}
.svc-duo .svc .slot{margin-bottom:0;align-self:start}
.svc-duo .svc__t{display:flex;flex-direction:column;align-items:flex-start}
@media (max-width:1360px){ .svc-duo{grid-template-columns:1fr} }
@media (max-width:720px){ .svc-duo .svc{grid-template-columns:1fr;gap:14px 0;padding:20px} }

/* ---------- S7 · why-alex ---------- */
.ftok{font-family:var(--serif);font-size:30px;line-height:1;font-weight:800;color:var(--gold);letter-spacing:-.01em;display:flex;align-items:center;gap:10px}
.ftok .ic{width:22px;height:22px}
.fcard{padding:24px 26px 26px;display:flex;flex-direction:column;gap:8px}
.fcard .h3{font-size:19px;margin:6px 0 0}
.fcard p{font-family:var(--sans);font-size:14.5px;line-height:1.45;color:var(--soft);margin:0}
/* A: 4×2 ruled table */
.fgrid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--rule-hair);border-left:1px solid var(--rule-hair);margin-top:34px}
.fgrid .fcard{border-right:1px solid var(--rule-hair);border-bottom:1px solid var(--rule-hair)}
@media (max-width:1040px){ .fgrid{grid-template-columns:1fr 1fr} }
@media (max-width:720px){ .fgrid{grid-template-columns:1fr} }
/* B: head column left + 2-col cards right */
.whyB__in{display:grid;grid-template-columns:minmax(0,4.4fr) minmax(0,7.6fr);gap:0 60px;align-items:start}
.whyB .fgrid--2{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--rule-hair);border-left:1px solid var(--rule-hair)}
.whyB .fgrid--2 .fcard{border-right:1px solid var(--rule-hair);border-bottom:1px solid var(--rule-hair)}
@media (max-width:1040px){
  .whyB__in{grid-template-columns:1fr}
  .whyB__head{margin-bottom:30px}
}
@media (max-width:720px){ .whyB .fgrid--2{grid-template-columns:1fr} }

/* ---------- S8 · process ---------- */
.proc{background:var(--ink);color:rgba(247,239,220,.88);padding:58px 0 62px}
.steps{list-style:none;margin:0;padding:0}
.steps b{font-family:var(--serif);font-size:46px;line-height:.85;font-weight:800;color:var(--gold-lt)}
.steps .h3{color:var(--cream)}
.steps p{font-family:var(--sans);font-size:14.5px;line-height:1.42;color:rgba(247,239,220,.68);margin:0}
/* A: dark, vertical steps + photo right */
.procA__in{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:0 64px}
.procA .steps{margin-top:26px;border-top:1px solid var(--rule-rev)}
.procA .steps li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:0 18px;padding:20px 0;border-bottom:1px solid var(--rule-rev)}
@media (max-width:1040px){
  .procA__in{grid-template-columns:1fr}
  .procA .procA__ph{margin-top:30px;max-width:440px}
}
/* B: paper, horizontal 5-col steps */
.procB{background:var(--paper);border-bottom:1px solid var(--rule);padding:58px 0 62px;color:var(--ink)}
.procB__head{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:0 56px;align-items:start;margin-bottom:34px}
.procB .steps{display:grid;grid-template-columns:repeat(5,1fr);gap:0 30px}
.procB .steps li{border-top:3px solid var(--ink);padding-top:16px}
.procB .steps b{color:var(--gold)}
.procB .steps .h3{color:var(--ink);margin:10px 0 6px}
.procB .steps p{color:var(--soft)}
@media (max-width:1040px){
  .procB__head{grid-template-columns:1fr}
  .procB__head .slot{max-width:340px;margin-top:22px}
  .procB .steps{grid-template-columns:1fr 1fr;gap:26px}
}
@media (max-width:720px){ .procB .steps{grid-template-columns:1fr} }

/* ---------- S9 · brands ---------- */
.bchip{display:flex;gap:9px;align-items:center;font-family:var(--sans);font-size:14.5px}
.bchip .ic{width:13px;height:13px;color:var(--gold)}
/* A: ruled table grid */
.bgrid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--rule-hair);border-left:1px solid var(--rule-hair);margin-top:30px}
.bgrid .bchip{padding:14px 18px;border-right:1px solid var(--rule-hair);border-bottom:1px solid var(--rule-hair)}
@media (max-width:1040px){ .bgrid{grid-template-columns:1fr 1fr 1fr} }
@media (max-width:720px){ .bgrid{grid-template-columns:1fr 1fr} .bgrid .bchip{padding:12px 12px;font-size:13.5px} }
/* B: head left + pill flow in frame */
.brandsB__in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:0 60px;align-items:start}
.bflow{display:flex;flex-wrap:wrap;gap:10px;border:2px solid var(--ink);padding:28px;background:var(--paper)}
.bflow .bchip{border:1px solid var(--rule);padding:8px 14px}
@media (max-width:1040px){ .brandsB__in{grid-template-columns:1fr} .brandsB__head{margin-bottom:26px} }
.brandsnote{margin-top:26px;padding-top:18px;border-top:1px solid var(--rule);max-width:78ch}
.brandsnote p{font-family:var(--sans);font-size:15px;line-height:1.55;color:var(--soft);margin:0}
.brandsnote b{color:var(--ink);font-weight:700}

/* ---------- S10 · areas ---------- */
.mappanel{position:relative;background:var(--ink);color:var(--cream);padding:38px 36px;overflow:hidden;min-height:300px;display:flex;flex-direction:column;justify-content:flex-end}
.mappanel::before{content:"";position:absolute;inset:0;background:
  repeating-linear-gradient(0deg,rgba(247,239,220,.05) 0 1px,transparent 1px 56px),
  repeating-linear-gradient(90deg,rgba(247,239,220,.05) 0 1px,transparent 1px 56px)}
.mappanel h2{position:relative;font-size:clamp(24px,1.9vw,34px);line-height:1.05;font-weight:800;letter-spacing:-.012em;margin:0 0 10px;color:var(--cream)}
.mappanel p{position:relative;font-family:var(--sans);font-size:15px;line-height:1.45;color:rgba(247,239,220,.75);margin:0;max-width:52ch}
.mdot{position:absolute;width:9px;height:9px;background:var(--gold-lt);border-radius:50%}
.mdot::after{content:"";position:absolute;inset:-6px;border:1px solid rgba(208,139,42,.55);border-radius:50%;animation:mpulse 2.6s ease-out infinite}
@keyframes mpulse{0%{transform:scale(.4);opacity:1}100%{transform:scale(1.7);opacity:0}}
.achip{display:flex;gap:8px;align-items:center;font-family:var(--sans);font-size:14px;border:1px solid var(--rule);padding:7px 12px;color:var(--ink)}
.achip .ic{width:12px;height:12px;color:var(--gold)}
.aflow{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 26px}
/* A: map left / content right */
.areasA__in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:0 60px;align-items:stretch}
@media (max-width:1040px){ .areasA__in{grid-template-columns:1fr;gap:30px 0} .areasA__in .mappanel{min-height:240px} }
/* B: map band top / ruled area list below */
.areasB .mappanel{min-height:230px;margin-bottom:38px}
.areasB__grid{display:grid;grid-template-columns:minmax(0,4.4fr) minmax(0,7.6fr);gap:0 60px;align-items:start}
.agrid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--rule-hair);border-left:1px solid var(--rule-hair)}
.agrid .bchip{padding:11px 16px;border-right:1px solid var(--rule-hair);border-bottom:1px solid var(--rule-hair)}
@media (max-width:1040px){ .areasB__grid{grid-template-columns:1fr} .areasB__head{margin-bottom:24px} }
@media (max-width:720px){ .agrid{grid-template-columns:1fr 1fr} .agrid .bchip{font-size:13px;padding:10px 10px} }

/* ---------- S11 · repair-or-replace ---------- */
.dbox{border:2px solid var(--ink);background:var(--paper);padding:22px 24px}
.dbox .h3{margin:0 0 6px}
.dbox p{font-family:var(--sans);font-size:14.5px;line-height:1.45;color:var(--soft);margin:0}
.dbox--rev{border-color:rgba(247,239,220,.4);background:transparent}
.dbox--rev .h3{color:var(--cream)}
.dbox--rev p{color:rgba(247,239,220,.7)}
/* A: text left / framed photo+boxes right */
.rorA__in{display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:0 64px;align-items:start}
.rorA__panel{border:2px solid var(--ink);padding:24px;background:var(--cream)}
.rorA__panel .slot{margin-bottom:20px}
.rorA__panel .dbox + .dbox{margin-top:14px}
@media (max-width:1360px){ .rorA__in{grid-template-columns:minmax(0,1fr) 440px} }
@media (max-width:1040px){ .rorA__in{grid-template-columns:1fr;gap:30px 0} }
/* B: full-width article + bottom media row */
.rorB__bottom{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,3fr) minmax(0,3fr);gap:22px;margin-top:30px;align-items:start}
@media (max-width:1040px){ .rorB__bottom{grid-template-columns:1fr;max-width:640px} }
/* C: two-page spread, right page ink */
.rorC{border-bottom:1px solid var(--rule);overflow:hidden}
.rorC__in{display:grid;grid-template-columns:minmax(0,1fr) 560px;align-items:stretch}
.rorC__l{padding:56px 60px 60px 0}
.rorC__r{position:relative;background:var(--ink);color:var(--cream);padding:48px 42px;z-index:1}
.rorC__r::after{content:"";position:absolute;top:0;bottom:0;left:100%;width:50vw;background:var(--ink)}
.rorC__r .slot{margin-bottom:22px}
.rorC__r .dbox + .dbox{margin-top:14px}
@media (max-width:1360px){ .rorC__in{grid-template-columns:minmax(0,1fr) 480px} }
@media (max-width:1040px){
  .rorC__in{grid-template-columns:1fr}
  .rorC__l{padding:36px 0}
  .rorC__r{margin:0 -28px;padding:34px 28px}
  .rorC__r::after{display:none}
}

/* ---------- S12 · cta band ---------- */
.bandA{background:var(--ink);color:rgba(247,239,220,.85);padding:52px 0 56px}
.bandA__in{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px 64px;align-items:center}
.bandA h2{color:var(--cream)}
.bandA p{margin:0 0 .5em;font-size:17px}
.bandA p:first-of-type{font-family:var(--serif);font-size:20px;font-style:italic;color:rgba(247,239,220,.9)}
.bandA__act{display:flex;flex-direction:column;gap:12px;min-width:320px}
@media (max-width:1040px){ .bandA__in{grid-template-columns:1fr} .bandA__act{min-width:0;max-width:420px} }
.bandB{background:var(--paper);border-top:4px double var(--ink);border-bottom:4px double var(--ink);padding:44px 0 48px}
.bandB__in{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:20px 64px;align-items:center}
.bandB p{margin:0 0 .4em}
.bandB p:first-of-type{font-style:italic;color:var(--gold);font-weight:600;font-size:19px}
.bandB__act{display:flex;flex-wrap:wrap;gap:12px 14px;justify-content:flex-end}
@media (max-width:1040px){ .bandB__in{grid-template-columns:1fr} .bandB__act{justify-content:flex-start} }

/* ---------- S13 · faq ---------- */
.faqi{border-bottom:1px solid var(--rule-hair)}
.faqi summary{display:grid;grid-template-columns:52px minmax(0,1fr) 30px;align-items:baseline;gap:0 16px;padding:18px 0;cursor:pointer;list-style:none}
.faqi summary::-webkit-details-marker{display:none}
.faqi summary:hover .faqi__q{color:var(--gold)}
.faqi__n{font-family:var(--serif);font-size:15px;font-weight:800;letter-spacing:.14em;color:var(--gold)}
.faqi__q{font-family:var(--serif);font-size:20px;line-height:1.25;font-weight:700;letter-spacing:-.008em;transition:color .12s linear}
.faqi .fplus{width:15px;height:15px;color:var(--gold);justify-self:end;transform:translateY(2px);transition:transform .15s ease}
.faqi[open] .fplus{transform:translateY(2px) rotate(45deg)}
.faqi__a{padding:0 46px 20px 68px}
.faqi__a p{font-size:16px;line-height:1.55;color:#3c4954;margin:0}
/* A: head panel left / accordion right */
.faqA__in{display:grid;grid-template-columns:minmax(0,4.4fr) minmax(0,7.6fr);gap:0 64px;align-items:start}
.faqA .faqlist{border-top:2px solid var(--ink)}
@media (max-width:1040px){ .faqA__in{grid-template-columns:1fr} .faqA__head{margin-bottom:26px} }
/* B: two ruled columns */
.faqB__cols{display:grid;grid-template-columns:1fr 1fr;gap:0 56px;margin-top:30px}
.faqB__cols > div{border-top:2px solid var(--ink)}
@media (max-width:1040px){ .faqB__cols{grid-template-columns:1fr;gap:0} .faqB__cols > div + div{border-top:0} }
@media (max-width:720px){ .faqi__a{padding:0 0 18px 68px} }

/* ---------- S14 · final contact ---------- */
.wcard{position:relative;background:var(--paper);color:var(--ink);padding:28px 28px 30px}
.wcard::before{content:"";position:absolute;left:0;right:0;top:-1px;height:9px;background:radial-gradient(circle at 7px 0,var(--ink) 5px,transparent 5.5px) repeat-x;background-size:14px 9px}
.wcard .card__h{margin-bottom:16px}
.wform{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.wform .fld{margin:0}
.wform .fld--ta{grid-column:1/-1}
.wform .btn{grid-column:1/-1;margin-top:4px}
.finalA{background:var(--ink);color:rgba(247,239,220,.85);padding:58px 0 64px}
.finalA__in{display:grid;grid-template-columns:minmax(0,1fr) 560px;gap:0 64px;align-items:start}
.finalA .kicker{color:var(--gold-lt)}
.finalA .kicker::after{background:var(--gold-lt)}
@media (max-width:1360px){ .finalA__in{grid-template-columns:minmax(0,1fr) 480px} }
@media (max-width:1040px){ .finalA__in{grid-template-columns:1fr;gap:30px 0} }
/* B: paper, wide horizontal form */
.finalB{background:var(--paper);border-bottom:1px solid var(--rule);padding:56px 0 60px}
.finalB__head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:20px 64px;align-items:end;margin-bottom:30px}
.finalB__act{display:flex;flex-wrap:wrap;gap:12px 14px;justify-content:flex-end}
.finalB .wcard{border:2px solid var(--ink)}
.finalB .wform{grid-template-columns:repeat(3,1fr)}
.finalB .wform .fld--ta{grid-column:1/3}
.finalB .wform .btn{grid-column:3/4;align-self:stretch}
@media (max-width:1040px){
  .finalB__head{grid-template-columns:1fr}
  .finalB__act{justify-content:flex-start}
  .finalB .wform{grid-template-columns:1fr 1fr}
  .finalB .wform .fld--ta{grid-column:1/-1}
  .finalB .wform .btn{grid-column:1/-1}
}
@media (max-width:720px){ .finalB .wform{grid-template-columns:1fr} .finalB .wform .fld--ta,.finalB .wform .btn{grid-column:1} }
/* C: cream, coupon left / text right */
.finalC{padding:58px 0 62px;border-bottom:1px solid var(--rule)}
.finalC__in{display:grid;grid-template-columns:560px minmax(0,1fr);gap:0 64px;align-items:start}
.finalC .wcard{border:2px solid var(--ink)}
@media (max-width:1360px){ .finalC__in{grid-template-columns:480px minmax(0,1fr)} }
@media (max-width:1040px){ .finalC__in{grid-template-columns:1fr;gap:30px 0} .finalC__form{order:2} }

/* ---------- S15 · footer variant B (colophon) ---------- */
.footB{background:var(--cream);border-top:5px solid var(--ink);padding:44px 0 22px}
.footB__top{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:0 64px;padding-bottom:30px;border-bottom:1px solid var(--rule)}
.footB__brand img{height:46px;width:auto}
.footB__brand .brand__tag{margin-left:54px}
.footB__brand p{font-size:16px;color:var(--soft);margin-top:16px;max-width:40ch}
.footB__svc h3,.footB__meta h3{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--rule)}
.footB__svc ul{list-style:none;margin:0;padding:0;columns:3;column-gap:36px}
.footB__svc li{margin-bottom:6px;break-inside:avoid}
.footB__svc a{font-family:var(--sans);font-size:15px;text-decoration:none;color:var(--ink)}
.footB__svc a:hover{color:var(--gold)}
.footB__meta{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:0 64px;padding:24px 0 0}
.footB__meta p{font-family:var(--sans);font-size:15px;line-height:1.42;color:var(--soft);margin:0 0 4px}
.footB__meta .foot__tel{margin-bottom:8px}
.footB__meta .foot__tel a{font-family:var(--serif);font-size:23px;font-weight:700;border-bottom:3px solid var(--gold);text-decoration:none;color:var(--ink)}
.footB__bot{border-top:1px solid var(--rule);margin-top:28px;padding-top:14px}
.footB__bot p{font-family:var(--sans);font-size:13px;color:var(--soft);margin:0}
.footB__bot .footB__legal{font-family:var(--sans);font-size:15px;line-height:1.5;color:var(--soft);margin:10px 0 0;max-width:82ch}
@media (max-width:1040px){
  .footB__top,.footB__meta{grid-template-columns:1fr;gap:24px 0}
  .footB__svc ul{columns:2}
}
@media (max-width:720px){ .footB{padding-bottom:180px} .footB__svc ul{columns:1} }

/* ---------- S16 · sticky variant B (with ZIP link) ---------- */
.stickyB{display:none}
@media (max-width:720px){
  .stickyB{display:grid;grid-template-columns:1.35fr 1fr;gap:6px 8px;position:fixed;left:0;right:0;bottom:0;padding:7px 12px 9px;background:var(--cream);border-top:2px solid var(--ink);z-index:50}
  .stickyB .stickyB__zip{grid-column:1/-1;justify-self:center;font-size:12px;padding-bottom:2px;border-bottom-width:1px;margin:0}
  .stickyB .btn{padding:12px 8px;font-size:14px;letter-spacing:.03em}
}
/* standalone sticky demo pages need height so the bar sits on a page */
.stickypage{min-height:96vh}

/* ---------- late additions ---------- */
.kicker--rev{color:var(--gold-lt)}
.kicker--rev::after{background:var(--gold-lt)}
.procB .steps b{display:block;margin-bottom:8px}
.procA .steps .h3{margin-bottom:4px}
