/* ===================================================================
   Jared Green — Art · Tech · Strategy
   Editorial minimalist-premium. Ink black + warm cream + sienna accent.
   =================================================================== */

/* ---------- TOKENS ---------- */
:root, [data-theme="light"] {
  --color-bg: #f4efe6;          /* warm cream */
  --color-surface: #efe8dc;
  --color-surface-2: #faf6ee;
  --color-ink: #1a1714;          /* ink black */
  --color-text: #211d18;
  --color-text-muted: #6b6258;
  --color-text-faint: #9b9286;
  --color-border: #ddd3c4;
  --color-divider: #e4dccd;
  --accent: #c45a2e;             /* burnt sienna */
  --accent-hover: #a8481f;
  --accent-soft: #e7c9b6;
  --accent-mark: #c45a2e;
  --color-inverse-bg: #1a1714;
  --color-inverse-text: #f4efe6;
  --hero-text: #f6f0e6;
  --hero-muted: #d8cdbc;

  --font-display: 'Boska', Georgia, 'Times New Roman', serif;
  --font-body: 'General Sans', system-ui, sans-serif;

  --text-xs: clamp(0.75rem, 0.7rem + 0.2vw, 0.8125rem);
  --text-sm: clamp(0.875rem, 0.84rem + 0.2vw, 0.9375rem);
  --text-base: clamp(1rem, 0.96rem + 0.2vw, 1.0625rem);
  --text-lg: clamp(1.125rem, 1rem + 0.6vw, 1.375rem);
  --text-xl: clamp(1.5rem, 1.2rem + 1.4vw, 2.25rem);
  --text-2xl: clamp(2rem, 1.3rem + 3vw, 3.5rem);
  --text-3xl: clamp(2.75rem, 1.4rem + 5.5vw, 5.5rem);
  --text-hero: clamp(3.5rem, 1rem + 11vw, 9.5rem);

  --space-1:.25rem; --space-2:.5rem; --space-3:.75rem; --space-4:1rem;
  --space-5:1.25rem; --space-6:1.5rem; --space-8:2rem; --space-10:2.5rem;
  --space-12:3rem; --space-16:4rem; --space-20:5rem; --space-24:6rem; --space-32:8rem;

  --radius-md:.5rem; --radius-lg:.875rem; --radius-xl:1.25rem; --radius-full:9999px;
  --maxw: 1200px;
  --ease: cubic-bezier(.16,1,.3,1);
  --shadow-lg: 0 24px 60px rgba(26,23,20,.12);
}

[data-theme="dark"] {
  --color-bg: #15120f;
  --color-surface: #1c1814;
  --color-surface-2: #221d18;
  --color-ink: #f4efe6;
  --color-text: #e7e0d2;
  --color-text: #e8e0d2;
  --color-text-muted: #9c9286;
  --color-text-faint: #6f665b;
  --color-border: #312a23;
  --color-divider: #2a2420;
  --accent: #db7242;
  --accent-hover: #e8855a;
  --accent-soft: #4a3022;
  --accent-mark: #db7242;
  --color-inverse-bg: #f4efe6;
  --color-inverse-text: #1a1714;
  --hero-text: #f6f0e6;
  --hero-muted: #d2c7b6;
  --shadow-lg: 0 24px 60px rgba(0,0,0,.5);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme]) {
    --color-bg:#15120f; --color-surface:#1c1814; --color-surface-2:#221d18;
    --color-ink:#f4efe6; --color-text:#e8e0d2; --color-text-muted:#9c9286;
    --color-text-faint:#6f665b; --color-border:#312a23; --color-divider:#2a2420;
    --accent:#db7242; --accent-hover:#e8855a; --accent-soft:#4a3022; --accent-mark:#db7242;
    --color-inverse-bg:#f4efe6; --color-inverse-text:#1a1714;
  }
}

/* ---------- RESET ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;scroll-behavior:smooth;scroll-padding-top:5rem;
}
body{
  min-height:100dvh;line-height:1.65;font-family:var(--font-body);
  font-size:var(--text-base);font-weight:400;
  color:var(--color-text);background:var(--color-bg);
  overflow-x:hidden;transition:background .4s var(--ease),color .4s var(--ease);
}
img,svg,video{display:block;max-width:100%;height:auto}
h1,h2,h3{line-height:1.04;text-wrap:balance;font-weight:500}
p{text-wrap:pretty}
a{color:inherit;text-decoration:none}
ul[role="list"]{list-style:none}
button{cursor:pointer;background:none;border:none;color:inherit;font:inherit}
::selection{background:var(--accent);color:#fff}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}

.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(1.25rem,5vw,3.5rem)}
.section{padding-block:clamp(var(--space-20),11vw,var(--space-32))}

/* ---------- REVEAL MOTION ---------- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease) var(--d,0s),transform .9s var(--ease) var(--d,0s)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1!important;transform:none!important}
  *{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* ---------- HEADER ---------- */
/* Solid tan header, always. No scroll-triggered background swap. */
.header{position:fixed;top:0;left:0;right:0;z-index:60;background:color-mix(in oklab,var(--color-bg) 94%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--color-border)}
.header__inner{display:flex;align-items:center;justify-content:space-between;height:6rem;gap:var(--space-6);padding-block:.5rem}

.logo{display:inline-flex;align-items:center;gap:1.15rem;font-family:var(--font-display);font-size:1.15rem;font-weight:500;letter-spacing:.01em}
.header .logo__mark,.logo--footer .logo__mark{max-width:none;height:auto}
.header .logo__mark{width:4.55rem !important;min-width:4.55rem;height:3.43rem !important;min-height:3.43rem;max-height:3.43rem;flex:0 0 4.55rem;object-fit:contain;display:inline-block;filter:drop-shadow(0 1px 3px rgba(0,0,0,.15))}
.logo__word{white-space:nowrap}
.logo--footer .logo__mark{width:5.5rem !important;height:4.15rem !important;min-height:4.15rem;max-height:4.15rem;flex:0 0 5.5rem;object-fit:contain;display:inline-block}
.header .logo__mark--light,.logo--footer .logo__mark--light{display:none}
[data-theme="dark"] .header .logo__mark--dark,[data-theme="dark"] .logo--footer .logo__mark--dark{display:none}
[data-theme="dark"] .header .logo__mark--light,[data-theme="dark"] .logo--footer .logo__mark--light{display:inline-block}
@media (max-width:640px){
  .header__inner{height:5.5rem}
  .header .logo__mark{width:3.1rem !important;min-width:3.1rem;height:2.3rem !important;min-height:2.3rem;max-height:2.3rem;flex:0 0 3.1rem}
  .logo{gap:.75rem;font-size:1rem}
}

.nav{display:flex;gap:clamp(1.25rem,2.4vw,2.4rem)}
.nav a{font-size:var(--text-sm);font-weight:500;letter-spacing:.01em;position:relative;padding-block:.4rem;opacity:.85}
.nav a::after{content:"";position:absolute;left:0;bottom:.1rem;width:0;height:1.5px;background:var(--accent);transition:width .35s var(--ease)}
.nav a:hover{opacity:1}
.nav a:hover::after{width:100%}

.header__actions{display:flex;align-items:center;gap:.6rem}
.icon-btn{width:2.5rem;height:2.5rem;display:grid;place-items:center;border-radius:var(--radius-full);transition:background .25s var(--ease)}
.icon-btn:hover{background:color-mix(in oklab,currentColor 12%,transparent)}

.menu-btn{display:none;width:2.5rem;height:2.5rem;flex-direction:column;justify-content:center;align-items:center;gap:5px}
.menu-btn span{display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform .35s var(--ease),opacity .25s var(--ease)}
.menu-btn[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}

.mobile-menu{position:fixed;inset:4.75rem 0 auto 0;background:var(--color-bg);border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;padding:var(--space-4) clamp(1.25rem,5vw,3.5rem) var(--space-6);gap:.25rem;transform:translateY(-12px);opacity:0;pointer-events:none;transition:transform .35s var(--ease),opacity .35s var(--ease);z-index:55}
.mobile-menu.open{transform:none;opacity:1;pointer-events:auto}
.mobile-menu a{color:var(--color-text);font-family:var(--font-display);font-size:var(--text-lg);padding-block:.7rem;border-bottom:1px solid var(--color-divider)}
.mobile-menu a:hover,.mobile-menu a:focus-visible{color:var(--accent)}
.mobile-menu a:last-child{border-bottom:none}

/* ---------- HERO ---------- */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:var(--hero-text);overflow:hidden}
.hero__media{position:absolute;inset:0;z-index:-1}
.hero__media img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.hero__scrim{position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(18,15,12,.55) 0%,rgba(18,15,12,.15) 35%,rgba(18,15,12,.35) 70%,rgba(18,15,12,.82) 100%),
  linear-gradient(90deg,rgba(18,15,12,.5),transparent 60%)}
.hero__inner{padding-bottom:clamp(5rem,12vh,9rem);padding-top:8rem}
.hero__eyebrow{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.34em;color:var(--hero-muted);margin-bottom:var(--space-6)}
.hero__title{font-family:var(--font-display);font-size:var(--text-hero);font-weight:500;line-height:.92;letter-spacing:-.02em}
.hero__title span{display:block}
.hero__title-accent{font-style:italic;font-weight:400}
.hero__tagline{margin-top:var(--space-6);font-family:var(--font-display);font-size:clamp(1.25rem,1rem+1.4vw,1.9rem);font-style:italic;color:var(--hero-text);display:flex;align-items:center;gap:.5rem}
.hero__tagline .dot{color:var(--accent);font-style:normal;font-size:1.2em;line-height:0;transform:translateY(-.06em)}
.hero__lede{margin-top:var(--space-4);font-size:var(--text-lg);color:var(--hero-muted);max-width:40ch}
.hero__cta{margin-top:var(--space-8);display:flex;gap:var(--space-3);flex-wrap:wrap}
.hero__scroll{position:absolute;bottom:1.75rem;right:clamp(1.25rem,5vw,3.5rem);display:flex;flex-direction:column;align-items:center;gap:.5rem;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.2em;color:var(--hero-muted)}
.hero__scroll svg{animation:bob 2.4s var(--ease) infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}

/* ---------- BUTTONS ---------- */
.btn{display:inline-flex;align-items:center;gap:.55rem;font-size:var(--text-sm);font-weight:500;letter-spacing:.01em;padding:.85rem 1.5rem;border-radius:var(--radius-full);transition:transform .3s var(--ease),background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease)}
.btn:hover{transform:translateY(-2px)}
.btn--primary{background:var(--accent);color:#fff}
.btn--primary:hover{background:var(--accent-hover)}
.btn--ghost{border:1px solid currentColor;color:inherit}
.btn--ghost:hover{background:currentColor;color:var(--color-bg)}
.connect .btn--ghost{color:var(--color-text);border-color:var(--color-border)}
.connect .btn--ghost:hover{background:var(--color-ink);color:var(--color-bg);border-color:var(--color-ink)}

/* ---------- SHARED HEADINGS ---------- */
.kicker{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.28em;color:var(--accent);font-weight:600}
.section-head{margin-bottom:clamp(var(--space-10),5vw,var(--space-16));max-width:24ch}
.section-title{font-family:var(--font-display);font-size:var(--text-2xl);margin-top:var(--space-4);letter-spacing:-.015em}
.section-sub{margin-top:var(--space-4);color:var(--color-text-muted);font-size:var(--text-lg);max-width:48ch}

/* ---------- ABOUT ---------- */
.about__grid{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(var(--space-8),5vw,var(--space-20));align-items:center}
.about__head{font-family:var(--font-display);font-size:var(--text-xl);margin:var(--space-4) 0 var(--space-8);letter-spacing:-.01em;max-width:18ch}
.about__body p{color:var(--color-text-muted);margin-bottom:var(--space-5);max-width:60ch}
.about__body strong{color:var(--color-text);font-weight:600}
.about__facts{margin-top:var(--space-10);display:flex;flex-direction:column;gap:0;border-top:1px solid var(--color-divider)}
.about__facts li{display:flex;flex-wrap:wrap;gap:.25rem var(--space-6);padding:var(--space-4) 0;border-bottom:1px solid var(--color-divider)}
.about__facts-k{flex:0 0 9rem;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.18em;color:var(--color-text-faint);padding-top:.15rem}
.about__facts-v{flex:1;min-width:14rem;font-size:var(--text-base);font-weight:500}
.about__figure{position:relative;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg)}
.about__figure img{width:100%;aspect-ratio:3/4;object-fit:cover}
.about__figure::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);border-radius:inherit}

/* ---------- DIVIDER ---------- */
.divider{position:relative;height:clamp(180px,26vw,340px);overflow:hidden}
.divider img{width:100%;height:100%;object-fit:cover}

/* ---------- VENTURES ---------- */
.ventures{background:var(--color-surface);border-block:1px solid var(--color-divider)}
.ventures__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(var(--space-4),1.6vw,var(--space-6))}
.vcard{position:relative;display:flex;flex-direction:column;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:clamp(var(--space-8),3vw,var(--space-12));transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s var(--ease)}
.vcard__top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-8)}
.vcard__tag{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.16em;color:var(--color-text-muted);font-weight:500}
.vcard__name{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.01em;margin-bottom:var(--space-3)}
.vcard__desc{color:var(--color-text-muted);font-size:var(--text-base);max-width:46ch}
.vcard__arrow{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:var(--radius-full);border:1px solid var(--color-border);color:var(--accent);transition:transform .4s var(--ease),background .4s var(--ease),color .4s var(--ease)}
.vcard__link{margin-top:var(--space-6);font-size:var(--text-sm);font-weight:600;color:var(--accent);letter-spacing:.01em}
.vcard--feature{grid-column:1 / -1;background:var(--color-ink);color:var(--hero-text);border-color:var(--color-ink);overflow:hidden}
.vcard--feature::before{content:"";position:absolute;inset:0;background:radial-gradient(120% 130% at 100% 0,rgba(196,90,46,.28),transparent 55%);pointer-events:none}
.vcard--feature .vcard__tag{color:#cdbfae}
.vcard--feature .vcard__desc{color:#d4c8b8;max-width:54ch}
.vcard--feature .vcard__name{font-size:var(--text-2xl)}
.vcard--feature .vcard__arrow{border-color:rgba(255,255,255,.25);color:var(--accent)}
a.vcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--accent)}
a.vcard:hover .vcard__arrow{background:var(--accent);color:#fff;transform:rotate(0) scale(1.05);border-color:var(--accent)}

/* ---------- PROJECTS ---------- */
.projects__list{border-top:1px solid var(--color-divider)}
.prow{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:clamp(var(--space-4),3vw,var(--space-10));padding:clamp(var(--space-5),2.5vw,var(--space-8)) var(--space-2);border-bottom:1px solid var(--color-divider);transition:padding-left .4s var(--ease),color .4s var(--ease)}
.prow:hover{padding-left:var(--space-5);color:var(--accent)}
.prow__index{font-size:var(--text-sm);color:var(--color-text-faint);font-variant-numeric:tabular-nums;font-weight:500}
.prow:hover .prow__index{color:var(--accent)}
.prow__name{font-family:var(--font-display);font-size:clamp(1.5rem,1.1rem+2vw,2.4rem);letter-spacing:-.01em;line-height:1.05}
.prow__meta{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.16em;color:var(--color-text-faint);white-space:nowrap}
.prow__play{display:inline-flex;align-items:center;gap:.45rem;font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);white-space:nowrap}
.prow:hover .prow__play{color:var(--accent)}
.projects__group-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.2em;color:var(--accent);font-weight:600;margin-bottom:var(--space-4)}
.projects__group-label--spaced{margin-top:clamp(var(--space-12),6vw,var(--space-20))}
.products__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(var(--space-4),1.8vw,var(--space-6))}
.pcard{display:flex;flex-direction:column;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s var(--ease)}
.pcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg,0 18px 40px rgba(0,0,0,.10));border-color:var(--accent)}
.pcard__shot{display:block;aspect-ratio:16/10;overflow:hidden;border-bottom:1px solid var(--color-divider);background:var(--color-surface)}
.pcard__shot img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .5s var(--ease)}
.pcard:hover .pcard__shot img{transform:scale(1.03)}
.pcard__body{display:flex;flex-direction:column;padding:var(--space-12) var(--space-16) var(--space-16) var(--space-16)}
.pcard__name{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.01em;display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2)}
.pcard__badge{font-family:var(--font-body,inherit);font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;font-weight:600;color:var(--accent);border:1px solid var(--accent);border-radius:var(--radius-full);padding:.12rem .5rem;line-height:1}
.pcard__desc{color:var(--color-text-muted);font-size:var(--text-sm);margin-top:var(--space-3);line-height:1.5}
.pcard__link{margin-top:var(--space-5);display:inline-flex;align-items:center;gap:.4rem;font-size:var(--text-sm);font-weight:600;color:var(--accent);letter-spacing:.01em}
.pcard__link svg{transition:transform .4s var(--ease)}
.pcard:hover .pcard__link svg{transform:translate(2px,-2px)}

/* ---------- EARLIER PROJECTS GRID (thumbnails) ---------- */
.earlier__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,200px));gap:clamp(var(--space-3),1.2vw,var(--space-5));justify-content:start}
.ecard{display:flex;flex-direction:column;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s var(--ease)}
.ecard:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg,0 18px 40px rgba(0,0,0,.10));border-color:var(--accent)}
.ecard__shot{display:block;aspect-ratio:16/10;overflow:hidden;border-bottom:1px solid var(--color-divider);background:var(--color-surface)}
.ecard__shot img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .5s var(--ease)}
.ecard:hover .ecard__shot img{transform:scale(1.03)}
.ecard__body{display:flex;flex-direction:column;padding:var(--space-3) var(--space-4);text-align:center}
.ecard__meta{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.16em;color:var(--color-text-faint);font-weight:600;margin-bottom:var(--space-3)}
.ecard__name{font-family:var(--font-display);font-size:var(--text-base);letter-spacing:-.005em;line-height:1.15;color:var(--color-text);transition:color .3s var(--ease)}
.ecard:hover .ecard__name{color:var(--accent)}
.ecard__desc{color:var(--color-text-muted);font-size:var(--text-sm);margin-top:var(--space-3);line-height:1.55}
.ecard__link{margin-top:var(--space-5);display:inline-flex;align-items:center;gap:.4rem;font-size:var(--text-sm);font-weight:600;color:var(--accent);letter-spacing:.01em}
.ecard__link svg{transition:transform .4s var(--ease)}
.ecard:hover .ecard__link svg{transform:translate(2px,-2px)}

/* ---------- VISUAL ART (ongoing) ---------- */
.art{background:var(--color-surface);border-block:1px solid var(--color-divider)}
.art__layout{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(var(--space-8),4vw,var(--space-12));align-items:center}
.art__copy{max-width:44ch}
.art__cta-inline{margin-top:var(--space-6)}
.art__hero{margin:0;max-width:440px;justify-self:end;padding:0;position:relative;width:100%}
.art__hero-link{display:block;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border);background:var(--color-surface-2);box-shadow:var(--shadow-lg);transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .5s var(--ease)}
.art__hero-link:hover{transform:translateY(-4px);box-shadow:0 20px 50px -12px rgba(0,0,0,.35);border-color:var(--accent)}
.art__hero img{display:block;width:100%;height:auto;object-fit:cover;aspect-ratio:3/4}
@media (max-width:840px){.art__layout{grid-template-columns:1fr;gap:var(--space-8)}.art__hero{justify-self:center;max-width:360px}.art__copy{max-width:none}}

/* ---------- FAMILY LEGACY ---------- */
.legacy{background:var(--color-surface);border-block:1px solid var(--color-divider)}
.legacy__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(var(--space-4),1.8vw,var(--space-6))}
.lcard{position:relative;display:flex;flex-direction:column;background:var(--color-surface-2);border:1px solid var(--color-border);border-left:3px solid var(--accent);border-radius:var(--radius-lg);padding:clamp(var(--space-10),3.5vw,var(--space-16));transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s var(--ease)}
.lcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg,0 18px 40px rgba(0,0,0,.10));border-color:var(--accent)}
.lcard__kicker{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.18em;color:var(--color-text-faint);font-weight:500}
.lcard__name{font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:-.015em;margin-top:var(--space-3)}
.lcard__years{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:var(--space-1);font-variant-numeric:tabular-nums}
.lcard__desc{color:var(--color-text-muted);font-size:var(--text-base);margin-top:var(--space-5);max-width:48ch}
.lcard__link{margin-top:var(--space-6);display:inline-flex;align-items:center;gap:.45rem;font-size:var(--text-sm);font-weight:600;color:var(--accent);letter-spacing:.01em}
.lcard__link svg{transition:transform .4s var(--ease)}
.lcard:hover .lcard__link svg{transform:translate(2px,-2px)}

/* ---------- CONNECT ---------- */
.connect{background:var(--color-ink);color:var(--hero-text);text-align:center}
.connect .kicker{color:var(--accent)}
.connect__inner{max-width:760px;margin-inline:auto}
.connect__head{font-family:var(--font-display);font-size:var(--text-2xl);margin:var(--space-5) 0 var(--space-5);letter-spacing:-.015em}
.connect__sub{color:var(--hero-muted);font-size:var(--text-lg);max-width:52ch;margin-inline:auto}
.connect__links{margin-top:var(--space-10);display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}
.connect .btn--ghost{color:var(--hero-text);border-color:rgba(255,255,255,.28)}
.connect .btn--ghost:hover{background:var(--hero-text);color:var(--color-ink);border-color:var(--hero-text)}

/* ---------- FOOTER ---------- */
.footer{background:var(--color-bg);padding-block:var(--space-12)}
.footer__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);flex-wrap:wrap}
/* footer logo variant handled by img src directly */
.footer__nav{display:flex;gap:var(--space-6)}
.footer__nav a{font-size:var(--text-sm);color:var(--color-text-muted);font-weight:500}
.footer__nav a:hover{color:var(--accent)}
.footer__copy{font-size:var(--text-xs);color:var(--color-text-faint);letter-spacing:.02em}

/* ---------- RESPONSIVE ---------- */
@media (max-width:860px){
  .nav{display:none}
  .menu-btn{display:flex}
  .about__grid{grid-template-columns:1fr;gap:var(--space-10)}
  .about__figure{order:-1;max-width:420px}
  .about__head{max-width:none}
  .ventures__grid{grid-template-columns:1fr}
  .products__grid{grid-template-columns:1fr;max-width:480px;margin-inline:auto}
  .earlier__grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));max-width:none;margin-inline:0}
  .legacy__grid{grid-template-columns:1fr}
  .vcard--feature .vcard__name{font-size:var(--text-xl)}
  .prow{grid-template-columns:auto 1fr auto;gap:var(--space-4)}
  .prow__meta{display:none}
}
@media (max-width:480px){
  .hero__cta{flex-direction:column;align-items:stretch}
  .hero__cta .btn{justify-content:center}
  .hero__scroll{display:none}
  .prow{grid-template-columns:auto 1fr;row-gap:.4rem}
  .prow__play{grid-column:2;justify-self:start}
  .about__facts-k{flex-basis:100%}
  .about__facts-v{min-width:0}
  .footer__inner{flex-direction:column;align-items:flex-start;gap:var(--space-5)}
}
