/* Steadfast Work — shared styles */
/* card grid: equal-height rows, foot pinned bottom, quote centered (2026-08-12) */
:root{
  --paper:#F5F3EE; --ink:#1C2228; --ink-deep:#141A20; --panel:#232B33;
  --steel:#46525C; --steel-light:#8B98A3;
  --amber:#D9930D; --amber-bright:#F0AB2A; --amber-deep:#8a5e06; --amber-text:#C4850B;
  --serif:'Newsreader',Georgia,serif; --mono:'IBM Plex Mono',monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;text-wrap:pretty}
::selection{background:var(--amber);color:var(--ink-deep)}
a{color:var(--amber-deep)}
a:hover{color:#5f4004}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:2px}
.wrap{max-width:1180px;margin:0 auto;padding:0 40px}

/* nav */
.nav{display:flex;justify-content:space-between;align-items:center;padding-top:26px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand .dot{width:11px;height:11px;background:var(--amber);border-radius:50%}
.brand span{font-family:var(--serif);font-weight:600;font-size:20px;color:var(--ink)}
.nav-links{display:flex;align-items:baseline;gap:32px}
.nav-links a.plain{font-style:italic;font-size:17px;color:var(--steel);text-decoration:none}
.nav-links a.plain:hover{color:var(--amber-deep)}
.pill{display:inline-flex;align-items:center;gap:12px;border-radius:999px;text-decoration:none;font-family:var(--serif);font-weight:600;transition:background .2s,color .2s}
.pill.dark{padding:11px 22px;background:var(--ink);color:var(--paper);font-size:16px;font-weight:400}
.pill.dark:hover{background:#33302a;color:var(--amber-bright)}
.pill.amber{padding:16px 30px;background:var(--amber);color:var(--ink-deep);font-size:17px}
.pill.amber:hover{background:var(--amber-bright);color:var(--ink-deep)}
.pill.bright{padding:16px 30px;background:var(--amber-bright);color:var(--ink-deep);font-size:17px}
.pill.bright:hover{background:var(--amber);color:var(--ink-deep)}

/* hero */
.hero{position:relative;padding:64px 0 56px;overflow:visible}
.hero h1{position:relative;font-weight:450;font-size:clamp(38px,5.6vw,78px);line-height:1.08;letter-spacing:-.01em;max-width:20ch;z-index:2}
.hero h1 em,.accent{font-style:italic;color:var(--amber-text)}
.hero .lede{position:relative;margin-top:26px;font-size:clamp(18px,1.6vw,22px);line-height:1.55;color:var(--steel);max-width:34em;z-index:2}
.hero .cta-row{position:relative;display:flex;align-items:center;gap:28px;margin-top:38px;flex-wrap:wrap;z-index:2}
.facts{font-style:italic;font-size:18px;color:var(--steel)}
.facts b{color:var(--amber);font-weight:400}
.kicker{font-style:italic;font-size:20px;color:var(--amber-deep);margin-bottom:14px}

/* orbit graphic */
.orbit-wrap{position:absolute;top:24px;right:-110px;width:460px;height:460px;z-index:1}
.orbit{position:absolute;inset:0}
.orbit .ring{position:absolute;border-radius:50%;border:1px solid rgba(28,34,40,.1)}
.orbit .r1{inset:0}
.orbit .r2{inset:15.2%;border-color:rgba(28,34,40,.14)}
.orbit .r3{inset:30.4%;border-color:rgba(217,147,13,.35)}
.orbit .glow{position:absolute;inset:43.5%;background:radial-gradient(circle,rgba(217,147,13,.25),rgba(217,147,13,.06) 70%);border-radius:50%}
.orbit .rotor{position:absolute;inset:0;will-change:transform}
.orbit .b{position:absolute;border-radius:50%;cursor:pointer;transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s}
.orbit .b:hover{transform:scale(1.7)}
.orbit .b1{top:calc(15.2% - 9px);left:50%;margin-left:-9px;width:18px;height:18px;background:var(--amber)}
.orbit .b1:hover{box-shadow:0 0 0 12px rgba(217,147,13,.18)}
.orbit .b2{left:calc(100% - 27.8% - 8px);top:calc(100% - 28.7% - 8px);width:8px;height:8px;background:var(--amber-text)}
.orbit .b2:hover{box-shadow:0 0 0 9px rgba(217,147,13,.18)}
.orbit .b3{left:calc(15.2% - 5px);top:50%;margin-top:-5px;width:10px;height:10px;background:var(--ink)}
.orbit .b3:hover{box-shadow:0 0 0 9px rgba(28,34,40,.12)}
.orbit .b4{right:calc(30.4% - 6px);top:26%;width:12px;height:12px;background:var(--amber-bright)}
.orbit .b4:hover{box-shadow:0 0 0 10px rgba(240,171,42,.2)}

/* labeled strips */
.strip{border-top:1px solid rgba(28,34,40,.18);padding:38px 0 0;display:grid;grid-template-columns:150px 1fr;gap:20px 64px;align-items:baseline}
.strip .label{font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--amber-deep)}
.strip .big{font-size:clamp(20px,2vw,26px);line-height:1.5;max-width:34em}
.strip .med{font-size:clamp(18px,1.7vw,22px);line-height:1.55;color:var(--steel);max-width:36em}

/* cards */
.cards{display:grid;grid-template-columns:1fr 1fr;gap:24px 56px;align-items:stretch;padding:40px 0 16px}
.card{position:relative;padding:36px 40px;display:flex;flex-direction:column}
.card h2{font-weight:500;font-size:clamp(26px,2.6vw,34px);line-height:1.15;margin-bottom:12px}
.card .num{font-style:italic;font-size:19px;margin-bottom:6px}
.card p.body{font-size:16.5px;line-height:1.6}
.card .foot{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-top:auto;padding-top:20px}
.card .foot a{font-style:italic;font-size:17px;text-decoration:none}
.card .foot .price{font-family:var(--mono);font-size:11.5px}
.card .gfx{display:flex;align-items:end;gap:8px;height:64px;margin-bottom:24px}
.card.tint{background:linear-gradient(165deg,#F0E4C8,#E9D3A4);border-radius:28px 28px 28px 4px}
.card.tint .num{color:var(--amber-deep)}
.card.tint h2{color:#241c0d}
.card.tint p.body{color:#4b3a17}
.card.tint .foot a{color:#241c0d;border-bottom:1px solid rgba(36,28,13,.4)}
.card.tint .foot a:hover{color:var(--amber-deep)}
.card.tint .foot .price{color:#6d4d10}
.card.dark{background:linear-gradient(165deg,#232B33,#141A20);border-radius:28px 28px 4px 28px}
.card.dark .num{color:var(--amber-bright)}
.card.dark h2{color:#EEF0F2}
.card.dark p.body{color:#9daab5}
.card.dark .foot a{color:#EEF0F2;border-bottom:1px solid rgba(238,240,242,.4)}
.card.dark .foot a:hover{color:var(--amber-bright)}
.card.dark .foot .price{color:var(--amber-bright)}
.card.white{background:#fff;border:1px solid rgba(28,34,40,.1);border-radius:4px 28px 28px 28px}
.card.white .num{color:var(--amber-deep)}
.card.white .foot a{color:var(--ink);border-bottom:1px solid rgba(28,34,40,.35)}
.card.white .foot a:hover{color:var(--amber-deep)}
.card.white .foot .price{color:var(--amber-deep)}
.card.amberline{background:linear-gradient(165deg,rgba(217,147,13,.1),rgba(217,147,13,.03));border:1px solid rgba(217,147,13,.25);border-radius:28px 4px 28px 28px;justify-content:center}
.card .quote{font-size:clamp(18px,1.8vw,22px);line-height:1.55;color:var(--ink)}
.gfx .cap{font-style:italic;font-size:15px;color:var(--amber-deep);padding-bottom:4px}

/* CTA */
.cta-pad{padding:40px 16px 16px}
.cta{position:relative;background:linear-gradient(160deg,#1C2228,#141A20);border-radius:20px;padding:56px 48px 40px;overflow:hidden}
.cta .wash{position:absolute;bottom:-140px;left:-100px;width:520px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(217,147,13,.16),transparent 70%);pointer-events:none}
.cta .row{position:relative;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.cta h2{font-weight:450;font-size:clamp(30px,3.8vw,52px);line-height:1.12;color:#EEF0F2;max-width:22ch}
.cta h2 em{font-style:italic;color:var(--amber-bright)}
.cta .fine{position:relative;margin-top:44px;font-style:italic;font-size:15.5px;color:var(--steel-light)}
.cta .fine a{color:var(--steel-light)}
.cta .fine a:hover{color:var(--amber-bright)}

/* logo marquee */
.marquee-zone{padding:44px 0 36px}
.marquee-zone .cap{text-align:center;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--steel-light);margin-bottom:26px}
.marquee{overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.marquee .track{display:flex;align-items:center;gap:72px;width:max-content;animation:marq 36s linear infinite;padding-right:72px}
.marquee:hover .track{animation-play-state:paused}
.marquee .logo{flex:none;display:flex;align-items:center;gap:12px}
.marquee .logo img{height:34px;width:auto;filter:grayscale(1);opacity:.75;transition:filter .2s,opacity .2s}
.marquee .logo img:hover{filter:none;opacity:1}
.marquee .logo .word{font-family:var(--serif);font-weight:600;font-size:22px;color:var(--steel);white-space:nowrap}
@keyframes marq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.marquee .track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}}

/* small graphics bits */
.tile{border-radius:9px;background:rgba(36,28,13,.14)}
.stepline{display:flex;align-items:center;height:52px;margin-bottom:22px}

/* responsive */
@media (max-width:1100px){.orbit-wrap{display:none}}
@media (max-width:860px){
  .cards{grid-template-columns:1fr}
  .strip{grid-template-columns:1fr;gap:10px}
  .cta .row{grid-template-columns:1fr}
  .nav-links a.plain{display:none}
  .wrap{padding:0 22px}
}
