/* Pro Video Announcements: shared stylesheet for every page except the homepage.
   Built for Track B (the new site). Tokens first; dark mode flips the tokens, never the components.
   Brand rules: magenta only on primary buttons and highlighted chart bars; no em or en dashes in copy. */
*{margin:0;padding:0;box-sizing:border-box}
:root{
  --onyx:#0B0B0D;--panel-d:#131316;--champ:#E7C87D;--champ-deep:#C9A45C;--bone:#F2EFE9;--mag:#D6247E;
  --fr:'Fraunces','Fraunces Fallback',Georgia,serif;--sans:'Inter','Inter Fallback',-apple-system,Arial,sans-serif;--mono:'JetBrains Mono','JetBrains Mono Fallback',ui-monospace,monospace;
  --pg:#F2EFE9;--ink:#17130B;--sub:#5B5346;--faint:#8A8173;--ln:rgba(23,19,11,.14);--panel:#E9E4DA;--accent:#7A5A1C;--bar-dim:#D9CDB5;
}
@media (prefers-color-scheme:dark){:root{--pg:#0B0B0D;--ink:#F2EFE9;--sub:rgba(242,239,233,.68);--faint:rgba(242,239,233,.42);--ln:rgba(242,239,233,.13);--panel:#131316;--accent:#E7C87D;--bar-dim:#3A3428}}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--sans);background:var(--pg);color:var(--ink);line-height:1.7;-webkit-font-smoothing:antialiased;font-size:16.5px}
a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:2px solid var(--champ);outline-offset:3px}
::selection{background:var(--champ);color:#17130B}
.mono{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;z-index:99;background:var(--bone);color:#17130B;padding:8px 12px}

/* masthead band: always onyx, like the homepage */
.top{background:var(--onyx);color:var(--bone);position:relative;overflow:hidden}
.top::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.mast{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:26px 40px;position:relative;z-index:2}
.stamp{display:grid;gap:2px;text-decoration:none;color:var(--bone)}
.stamp>span{display:block}
.stamp .brand{font-family:var(--fr);font-weight:600;font-size:22px;letter-spacing:-.01em;line-height:1}
.stamp .brand em{font-style:italic;color:var(--champ)}
.stamp .ed{font-family:var(--mono);font-size:10px;letter-spacing:.18em;color:rgba(242,239,233,.62);margin-top:6px}
/* the new mark (2026-10-12) beside the nameplate, spanning its two lines; one line on phones */
.stamp{grid-template-columns:auto 1fr;column-gap:12px;align-items:center}.stamp .mk{grid-row:1 / span 2;height:40px;width:auto;display:block}
.mast .act{display:flex;gap:12px;align-items:center}
.mast .si{font-family:var(--mono);font-size:10px;letter-spacing:.18em;color:rgba(242,239,233,.62);padding:12px 6px;text-decoration:none}
.mast .cta{font-family:var(--mono);font-size:10px;letter-spacing:.18em;border:1px solid var(--champ-deep);color:var(--champ);padding:12px 16px;text-decoration:none;white-space:nowrap}
.mast .cta:hover,.mast .si:hover{color:var(--bone)}
.pagehead{max-width:860px;margin:0 auto;padding:44px 24px 56px;position:relative;z-index:2}
.pagehead .kick{color:var(--champ);margin-bottom:18px;display:block}
.pagehead h1{font-family:var(--fr);font-weight:380;font-size:clamp(36px,5.6vw,66px);line-height:1.02;letter-spacing:-.022em;font-variation-settings:'opsz' 144;text-wrap:balance}
.pagehead h1 em{font-style:italic;color:var(--champ);font-weight:420}
.pagehead .lede{font-size:18.5px;color:rgba(242,239,233,.74);margin-top:20px;max-width:62ch}
.pagehead .byline{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(242,239,233,.5);margin-top:26px;padding-top:18px;border-top:1px solid rgba(242,239,233,.13);line-height:1.8}
.crumbs{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(242,239,233,.5);margin-bottom:22px}
.crumbs a{color:rgba(242,239,233,.72);text-decoration:underline;text-decoration-color:rgba(242,239,233,.35)}.crumbs a:hover{color:var(--champ)}

/* reading column */
.wrap{max-width:780px;margin:0 auto;padding:56px 24px 40px}
.wrap h2{font-family:var(--fr);font-weight:460;font-size:clamp(26px,3.2vw,34px);line-height:1.15;letter-spacing:-.012em;margin:56px 0 14px;font-variation-settings:'opsz' 72;text-wrap:balance}
.wrap h2:first-child{margin-top:0}
.wrap h3{font-family:var(--fr);font-weight:560;font-size:21px;line-height:1.3;margin:34px 0 8px}
.wrap p{margin-bottom:16px}
.wrap ul,.wrap ol{margin:0 0 18px 22px}
.wrap li{margin-bottom:9px}
.wrap li::marker{color:var(--accent)}
.wrap strong,.wrap b{font-weight:650}
.wrap hr{border:0;border-top:1px solid var(--ln);margin:40px 0}
.lede{font-size:18px;color:var(--sub)}
.byline{font-size:14px;color:var(--sub)}
.callout{background:var(--panel);border-left:2px solid var(--champ-deep);padding:22px 24px;margin:28px 0}
.callout>*:last-child{margin-bottom:0}
.quote{border-left:2px solid var(--champ-deep);padding:4px 0 4px 20px;color:var(--sub);font-family:var(--fr);font-style:italic;font-size:18.5px;line-height:1.55;margin:16px 0}
.stamp-upd,.wrap .stamp{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--sub);text-align:center;padding:10px 16px 36px}
code{font-family:var(--mono);font-size:13px;background:var(--panel);padding:2px 6px}

/* scripts page */
.script{background:var(--panel);padding:24px 26px;margin:16px 0 8px;border-top:1px solid var(--champ-deep)}
.script .k,.fail .k{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}
.script p{margin-bottom:12px}.script p:last-child{margin-bottom:0}
.why{font-size:14.5px;color:var(--sub);margin:8px 0 26px}
.why b{color:var(--ink)}

/* Q and A */
details{border-top:1px solid var(--ln);padding:18px 4px}
details:last-of-type{border-bottom:1px solid var(--ln)}
summary{font-weight:650;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--accent);font-weight:400;font-size:20px;line-height:1}
details[open] summary::after{content:"\2212"}
details p{margin:12px 0 0;color:var(--sub)}

/* video facade: poster first, the YouTube iframe only after a click */
.vid{position:relative;aspect-ratio:16/9;overflow:hidden;margin:14px 0 12px;background:#000;border:1px solid var(--ln)}
.vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt{display:block;width:100%;height:100%;border:0;padding:0;cursor:pointer;background:#000;position:relative;color:#fff}
.yt img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .3s}
.yt:hover img{transform:scale(1.02);opacity:.86}
.yt .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;background:rgba(11,11,13,.62);border:1px solid rgba(231,200,125,.7);display:grid;place-items:center;backdrop-filter:blur(6px)}
.yt .play::before{content:"";border-style:solid;border-width:11px 0 11px 18px;border-color:transparent transparent transparent var(--champ);margin-left:5px}
.yt .lab{position:absolute;left:14px;bottom:12px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;background:rgba(11,11,13,.7);padding:5px 8px}
.notice{font-size:15px;color:var(--sub);margin-bottom:8px}
.notice b{color:var(--ink)}

/* tables */
.tablewrap:focus-visible{outline:2px solid var(--champ-deep);outline-offset:2px}
.tablewrap{overflow-x:auto;border:1px solid var(--ln);margin:24px 0 12px;-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;font-size:14.5px;font-variant-numeric:tabular-nums}
.tablewrap table{min-width:720px}
th{text-align:left;padding:12px 14px;font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--sub);border-bottom:1px solid var(--ln);background:var(--panel)}
td{padding:12px 14px;border-bottom:1px solid var(--ln);vertical-align:top}
tr:last-child td,tr:last-child th[scope=row]{border-bottom:none}
th[scope=row]{font-family:var(--sans);font-size:14.5px;font-weight:650;letter-spacing:0;text-transform:none;color:var(--ink);background:transparent;vertical-align:top}
td.y,td.cat{font-weight:650}
td.cat{width:22%;min-width:150px}td.num{white-space:nowrap;width:11%}
.pvacol{background:color-mix(in srgb,var(--champ) 14%,transparent)}
details table td:not(:first-child),details table th:not(:first-child){text-align:right}

/* data components (State pages) */
.hero{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 34px}
.hero .big,.big{grid-column:1/-1;background:var(--onyx);color:var(--bone);padding:32px 30px;margin:0 0 26px}
.hero .big{margin:0}
.big .n{font-family:var(--fr);font-weight:380;font-size:clamp(64px,11vw,108px);line-height:.95;letter-spacing:-.03em;font-variation-settings:'opsz' 144}
.big .l{color:rgba(242,239,233,.66);font-size:15px;margin-top:10px}
.tile{background:var(--panel);padding:20px 22px;border-top:1px solid var(--champ-deep)}
.tile .n{font-family:var(--fr);font-weight:460;font-size:34px;line-height:1.05}
.tile .l{font-size:13.5px;color:var(--sub);margin-top:6px}
figure{margin:20px 0 28px}
figcaption{font-size:13.5px;color:var(--sub);margin-top:10px}
.chart .row{display:grid;grid-template-columns:minmax(120px,38%) 1fr;align-items:center;gap:12px;margin:0 0 10px}
.chart .lbl{font-size:13px;color:var(--sub);text-align:right;line-height:1.3}
.chart .track{display:flex;align-items:center;gap:8px;border-left:1px solid var(--ln);min-height:18px}
.chart .bar{display:block;height:16px;background:var(--mag);flex:none}
.chart .bar.dim{background:var(--bar-dim)}
.chart .val{font-family:var(--mono);font-size:12px;white-space:nowrap}
.fail{background:var(--panel);padding:22px 24px;margin:14px 0}
.fail h3{margin:0 0 8px}
.fail p{margin-bottom:10px}
.fail p.fix{margin:0;font-size:14.5px;color:var(--sub)}
.fail p.fix b{color:var(--ink)}
.method dt{font-weight:650;margin-top:14px}
.method dd{margin:2px 0 0;color:var(--sub)}

/* CTA band */
.ctaband{background:var(--onyx);color:var(--bone);padding:46px 32px;text-align:center;margin:56px 0 12px;position:relative}
.ctaband p.h{font-family:var(--fr);font-weight:380;font-size:clamp(26px,3.4vw,36px);line-height:1.15;letter-spacing:-.015em;margin-bottom:10px}
.ctaband p.s{color:rgba(242,239,233,.66);font-size:15px;margin:0 auto 22px;max-width:52ch}
.ctaband a.b,.btn{display:inline-block;background:var(--mag);color:#fff;text-decoration:none;font-weight:650;padding:15px 30px;margin:4px;font-size:15px}
.ctaband a.b.alt,.btn.alt{background:transparent;border:1px solid var(--champ-deep);color:var(--champ)}
.ctaband a.b:hover,.btn:hover{filter:brightness(1.08)}

/* hero CTAs inside the masthead band */
.pagehead .ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.pagehead .ctas .btn{margin:0}
.pagehead .boss{margin-top:16px;font-size:14px;color:rgba(242,239,233,.66)}.pagehead .boss a{color:var(--champ);text-decoration:underline;text-underline-offset:3px}
.btn-primary{background:var(--mag);color:#fff}
.btn-glass{background:transparent;border:1px solid var(--champ-deep);color:var(--champ)}

/* chat launcher (Intercom loads on first interaction or on click) */
.chat{position:fixed;right:22px;bottom:22px;z-index:80;width:52px;height:52px;border-radius:50%;border:0;background:var(--mag);display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 24px rgba(214,36,126,.35)}

/* audience pages: full-width sections */
.sec{padding:84px 24px;border-top:1px solid var(--ln)}
.sec>.section-inner,.sec>.final-inner,.sec>.crosslinks-inner{max-width:1100px;margin:0 auto}
.sec.dark{--ink:#F2EFE9;--sub:rgba(242,239,233,.68);--faint:rgba(242,239,233,.42);--ln:rgba(242,239,233,.13);--panel:#131316;--accent:#E7C87D;background:var(--onyx);color:var(--ink);border-top:0}
.section-header{max-width:780px;margin-bottom:44px}
.section-eyebrow,.crosslinks-title,.tag,.timeline-when,.feature-num{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}
.section-h2,.final h2{font-family:var(--fr);font-weight:400;font-size:clamp(30px,4.4vw,52px);line-height:1.06;letter-spacing:-.02em;font-variation-settings:'opsz' 144;text-wrap:balance}
.section-h2 em,.final h2 em,.pagehead h1 em{font-style:italic;color:var(--accent)}
.pagehead h1 em{color:var(--champ)}
.section-sub{color:var(--sub);font-size:17.5px;margin-top:18px;max-width:64ch}
.sec h3{font-family:var(--fr);font-weight:560;font-size:21px;line-height:1.25;margin-bottom:10px}
.sec p{margin-bottom:12px}
.sec ul{list-style:none}
.sec ul li{position:relative;padding-left:20px;margin-bottom:10px}
.sec ul li::before{content:"";position:absolute;left:0;top:.72em;width:10px;height:1px;background:var(--accent)}
.reframe-grid,.swap-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.included-grid,.reasons-grid,.pain-grid,.feature-grid,.work-grid,.timeline-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:20px}
.reframe-col,.swap-col,.reason-card,.timeline-card,.pain-card,.feature-card-dark,.work-card,.included-item{background:var(--panel);border-top:1px solid var(--champ-deep);padding:26px 26px 18px}
.reframe-col.bad,.swap-col.now{border-top-color:var(--ln)}
.reframe-col.bad h3,.swap-col.now h3{color:var(--sub)}
.swap-col h4{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--sub);font-weight:500;margin:-4px 0 14px}
.reason-icon,.work-icon,.included-check,.faq-q-icon,.crosslink-arrow,.reel-tile-play{display:none}
.included-item-text strong{display:block;font-family:var(--fr);font-weight:560;font-size:19px;margin-bottom:6px}
.included-item-text span{color:var(--sub);font-size:15px}
.cost-card,.math-card,.time-card,.package-card{background:var(--panel);padding:32px 32px 24px;max-width:820px;border-top:1px solid var(--champ-deep)}
.cost-row,.time-row,.package-line,.math-row{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:14px 0;border-bottom:1px solid var(--ln)}
.math-row{display:grid;grid-template-columns:1.1fr 1.4fr 1fr 1fr}
.cost-value,.time-value,.pkg-price,.math-total,.math-per,.math-formula{font-family:var(--mono);font-size:13px;white-space:nowrap}
.math-per{color:var(--sub)}
.cost-row.highlight,.time-row.savings,.package-line.total{border-bottom:0;padding-top:18px;font-weight:650}
.cost-row.highlight .cost-value,.time-row.savings .time-value,.package-line.total .pkg-price{color:var(--accent);font-size:15px}
.cost-note,.time-note,.package-note,.package-sub{color:var(--sub);font-size:14.5px;margin-top:16px}
.pkg-detail{color:var(--sub);font-size:14px;margin-top:3px}
.pill{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-left:8px;font-weight:500}
.test-slot{display:grid;grid-template-columns:1.25fr 1fr;gap:36px;align-items:center}
.test-slot .vid{margin:0}
.test-text blockquote{font-family:var(--fr);font-style:italic;font-weight:380;font-size:clamp(22px,2.6vw,30px);line-height:1.3;letter-spacing:-.01em;margin-bottom:22px}
.attrib{font-size:14.5px;color:var(--sub);border-top:1px solid var(--ln);padding-top:16px}
.attrib b{display:block;color:var(--ink);font-size:16px}
.faq-list{max-width:860px}
.sec.final{text-align:center;background:var(--onyx);color:var(--bone);border-top:0;--sub:rgba(242,239,233,.68);--accent:#E7C87D}
.final p{color:var(--sub);max-width:60ch;margin:18px auto 26px}
.crosslinks-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.crosslink{display:block;border:1px solid var(--ln);padding:20px 22px;text-decoration:none;color:var(--ink);transition:border-color .2s}
.crosslink:hover{border-color:var(--champ-deep)}
.crosslink strong{display:block;font-family:var(--fr);font-weight:560;font-size:18px;margin-bottom:4px}
.crosslink span{color:var(--sub);font-size:14px}
.sec.xl{padding-top:56px;padding-bottom:56px}
@media (max-width:760px){
  .sec{padding:60px 18px}
  .reframe-grid,.swap-grid,.test-slot{grid-template-columns:1fr}
  .math-row{grid-template-columns:1fr 1fr;row-gap:2px}
  .cost-card,.math-card,.time-card,.package-card{padding:24px 20px 18px}
  .cost-row,.time-row,.package-line{flex-direction:column;gap:4px}
}

@media (max-width:860px){
  .mast{padding:18px 20px}.stamp>span{display:block}
.stamp .brand{font-size:18px}.stamp .ed{display:none}.stamp .mk{grid-row:auto;height:26px}.stamp{column-gap:9px}
  .mast .si{display:none}
  .pagehead{padding:28px 20px 44px}
}
@media (max-width:560px){
  body{font-size:16px}
  .wrap{padding:40px 18px 32px}
  .hero{grid-template-columns:1fr}
  .chart .row{grid-template-columns:1fr;gap:3px;margin-bottom:12px}
  .chart .lbl{text-align:left}
  .ctaband{padding:36px 20px;margin-left:-18px;margin-right:-18px}
  .callout{padding:18px}
  .pagehead h1,.section-h2,.final h2,.big .n{font-variation-settings:'opsz' 60;letter-spacing:-.008em}
  .tablewrap:has(table.stack){overflow:visible;border:0}
  table.stack,table.stack tbody,table.stack tr,table.stack th,table.stack td{display:block;width:100%;min-width:0}
  table.stack thead tr,table.stack tr:not(:has(td)){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  table.stack tr{border:1px solid var(--ln);margin-bottom:12px;padding:6px 0}
  table.stack th,table.stack td{border:0;padding:6px 16px}
  table.stack td:empty{display:none}
  table.stack td[data-label]::before{content:attr(data-label);display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--sub);margin-bottom:2px}
  table.stack tr>:first-child{font-weight:600;padding-top:10px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* ===== the v2, refined (Nico's deck, 2026-11-03) =====
   BeeBold for headlines and numbers, Inter for everything else; headlines about 80% of their old size; the new lockup. */
:root{--fr:'BeeBold','BeeBold Fallback','Arial Black',sans-serif;--mono:'Inter','Inter Fallback',-apple-system,sans-serif}
body{font-synthesis:none}
code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.pagehead h1,.pagehead h1 em,.wrap h2,.big .n,.tile .n,.ctaband p.h,.section-h2,.final h2,.section-h2 em,.final h2 em{font-weight:400;font-style:normal;letter-spacing:0;font-variation-settings:normal}
.pagehead h1{font-size:clamp(30px,4.4vw,54px);line-height:1.08}
.wrap h2{font-size:clamp(22px,2.6vw,28px);line-height:1.2}
.section-h2,.final h2{font-size:clamp(26px,3.5vw,42px);line-height:1.1}
.big .n{font-size:clamp(52px,8.8vw,88px)}
.tile .n{font-size:28px}
.ctaband p.h{font-size:clamp(22px,2.7vw,30px)}
/* subheads, quotes and labels read in Inter */
.wrap h3,.sec h3,.included-item-text strong,.crosslink strong{font-family:var(--sans);font-weight:700;letter-spacing:0}
.quote,.test-text blockquote{font-family:var(--sans);font-style:normal;font-weight:400;letter-spacing:0}
.test-text blockquote{font-size:clamp(19px,2vw,24px);line-height:1.45}
.stamp{display:flex;align-items:center}
.stamp .lk{height:32px;width:auto;display:block}
.stamp .lk-d,.stamp .lk-b,.stamp .lk-m{display:none}
@media (max-width:560px){.stamp .lk-l{display:none}.stamp .lk-m{display:block;height:34px}}
h1,h2,h3,.section-h2{text-wrap:balance}
p,li,blockquote{text-wrap:pretty}
/* the four church-type pages (Justin 2026-11-03: "weird in the alignment"): the logo, the page head and every section
   share one left edge, the 1100px content column the sections already used */
body.landing .mast{max-width:1148px;margin:0 auto;padding-left:24px;padding-right:24px}
body.landing .pagehead{max-width:1148px;padding-left:24px;padding-right:24px}
body.landing .pagehead h1{max-width:20ch}
body.landing .pagehead .lede{max-width:60ch}
@media (max-width:860px){body.landing .mast{padding-left:20px;padding-right:20px}body.landing .pagehead{padding-left:20px;padding-right:20px}body.landing .sec{padding-left:20px;padding-right:20px}}
/* four cards never leave one alone on a row: four across on wide screens, two by two below */
.reasons-grid,.pain-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:1100px){.reasons-grid,.pain-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:600px){.reasons-grid,.pain-grid{grid-template-columns:1fr}}
/* less small print on the church-type pages too (Nico's rule for the homepage): no section eyebrows, no eyebrow over
   the page title (the breadcrumb already names the page) */
body.landing .section-eyebrow,body.landing .pagehead .kick,body.landing .test-text .tag{display:none}
/* gold, used sparingly: one accent in each page title, section headings in one colour */
.section-h2 em,.final h2 em{color:inherit}
.stamp .lk{--h:32px;height:var(--h);width:calc(var(--h) * 7.479);background:center/contain no-repeat}
.stamp .lk-l{background-image:url(../assets/logo/lockup-light.png)}
.stamp .lk-m{background-image:url(../assets/logo/mark-gold.png);width:calc(var(--h) * .7625)}
@media (max-width:560px){.stamp .lk-m{height:34px}}
@media (max-width:560px){.stamp .lk-m{--h:34px}}

/* site footer: shared by the homepage (inlined) and every other page */
.sitefoot{background:var(--bone);color:#17130B;border-top:1px solid rgba(23,19,11,.14);padding:44px 40px 36px}
.sitefoot .cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 32px;max-width:1100px}
.sitefoot h2{line-height:1.4;font-family:var(--mono);font-size:10px;letter-spacing:.18em;font-weight:500;color:#6E5216;margin-bottom:12px;text-transform:uppercase}
.sitefoot a{display:block;overflow-wrap:anywhere;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#17130B;text-decoration:none;padding:5px 0}
.sitefoot a:hover{color:#6E5216}
.sitefoot .brandline{font-family:var(--fr);font-size:16px;color:#5B5346;margin-top:30px}
.sitefoot .brandline{display:flex;flex-wrap:wrap;align-items:center}.sitefoot .brandline .sep{white-space:pre}.sitefoot .brandline .bl{display:inline-flex;align-items:center;gap:9px}.sitefoot .brandline .bl img{height:22px;width:auto;filter:brightness(0);opacity:.62}
@media (max-width:560px){.sitefoot .brandline{flex-direction:column;align-items:flex-start;gap:4px}.sitefoot .brandline .sep{display:none}}
@media (prefers-color-scheme:dark){.sitefoot{background:#0B0B0D;color:var(--bone);border-top-color:rgba(242,239,233,.13)}.sitefoot a{color:rgba(242,239,233,.8)}.sitefoot h2{line-height:1.4;color:var(--champ)}.sitefoot .brandline{color:rgba(242,239,233,.55)}.sitefoot .brandline .bl img{filter:none;opacity:.55}}

@media (max-width:860px){.sitefoot{padding:36px 20px 30px}.sitefoot .cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* the new lockup in the footer (2026-11-03): dark words on bone, light words in dark mode */
.sitefoot .brandline{font-family:var(--sans,'Inter','Inter Fallback',sans-serif);font-size:13px}
.sitefoot .brandline .bl img{height:24px;width:auto;filter:none;opacity:1}
.sitefoot .brandline .bl .lk-l{display:none}
@media (prefers-color-scheme:dark){.sitefoot .brandline .bl .lk-d{display:none}.sitefoot .brandline .bl .lk-l{display:block}.sitefoot .brandline .bl img{opacity:.9}}
/* the links read as words, not tiny tracked capitals (Justin 2026-11-03); the column heads stay small caps */
.sitefoot a{font-family:var(--sans,'Inter','Inter Fallback',sans-serif);font-size:14px;letter-spacing:0;text-transform:none;padding:4px 0}
