/* Refinement pass: tighter rhythm, balanced type, calmer hero, crisper details. */
:root{
  --t-hero:clamp(2.3rem,1.15rem + 3.3vw,4.15rem);
  --t-h2:clamp(2rem,1.2rem + 2.8vw,3.6rem);
  --s-section:clamp(4.25rem,2.8rem + 4.6vw,7.5rem);
}

/* type: balanced headings, no orphans in body copy */
.hero-title,.h2,h3{text-wrap:balance}
p,li,dd{text-wrap:pretty}
.hero-title{letter-spacing:-.04em;line-height:.96}
.hero-title .sm{font-size:.36em;margin-top:1em;color:var(--muted);font-weight:500}
.hero-lead{margin-top:22px;max-width:46ch}

/* hero: copy gets the room, the visual stays a supporting piece */
@media (min-width:1024px){
  .hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)}
  .hero-title .sm{max-width:none}
  .hero-visual{max-width:440px}
  .hero{padding-block:clamp(40px,5vw,80px) clamp(56px,6vw,96px)}
}
.hero::after{opacity:.6}

/* numbers band: hairline columns read as a ledger, not four loose figures */
@media (min-width:820px){
  .num-list > li{position:relative;padding-left:28px}
  .num-list > li + li::before{content:"";position:absolute;left:0;top:10%;bottom:10%;width:1px;background:rgba(168,195,168,.25)}
}

/* buttons: one shared press feel, visible keyboard focus on dark and light */
.btn{letter-spacing:.005em}
.btn:focus-visible{outline-offset:4px}
.btn-wa:hover{box-shadow:0 16px 30px -14px rgba(37,211,102,.55)}

/* cards: lift on hover only where a pointer exists */
@media (hover:none){
  .island:hover,.quote-card:hover{transform:none;box-shadow:var(--shadow-1)}
}

/* sticky header: slightly denser glass once scrolled */
.site-header.is-scrolled{background:rgba(247,245,239,.94)}

/* section rhythm: a quiet hairline between light sections that sit back to back */
.section + .section:not(.trust):not(.contact):not(.founder){border-top:1px solid var(--line)}

/* hero: real photo from JEG's Facebook in the arch frame */
.arch-photo{display:block;width:100%;aspect-ratio:1/1;height:auto;object-fit:cover;border-radius:var(--r-md);background:var(--g-800)}
@media (min-width:641px){.hero-visual .fc-stock{top:auto;bottom:9%}}

/* Clean white palette: pure white page, cool green-white for alternating
   sections, no grain overlay (it was multiplying the page toward grey). */
:root{
  --cream:#ffffff;
  --cream-2:#f3f7f3;
  --paper:#f7faf7;
  --on-dark:#ffffff;
}
body{background:#fff}
body::before{display:none}
.site-header{background:rgba(255,255,255,.86)}
.site-header.is-scrolled{background:rgba(255,255,255,.95)}
.brands{background:var(--paper)}
.island:not(.island-dark),.quote-card:not(.quote-card-dark){background:#fff}

/* islands: a clean label in place of the drawn maps */
.isl-flag{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px}
.isl-flag::before{content:"";width:28px;height:2px;background:currentColor}
.hero::after{display:none}
