/* /v3 PHONE-ONLY overrides (Davis, 2026-10-04). Nothing in here touches desktop: everything is inside max-width:768px. Loaded last. */
@media (max-width:768px) {

  /* 1. Hero: no longer a full screen. The lettering sets the height, with natural padding above and below. */
  body.v3 #hero.hero-v3 { height:auto; min-height:0; }
  .hero-v3-title { position:relative; inset:auto; padding:132px 12px 96px; }
  .hero-v3-lettering { max-height:none; }
  .hero-v3-mark { bottom:26px; }

  /* 2. Backgrounds: no lamp on phones. */
  .s2-lamp { display:none; }
  .s2 { padding-bottom:88px; }

  /* 3. Philosophy: the photograph goes; black with the same cold blind slats as the doors. */
  .s3-plate { display:none; }
  .s3::before { content:""; position:absolute; inset:0; pointer-events:none; z-index:0;
    background:repeating-linear-gradient(-34deg, rgba(86,118,160,0) 0px, rgba(86,118,160,0) 30px, rgba(86,118,160,0.10) 34px, rgba(86,118,160,0.20) 38px, rgba(86,118,160,0.10) 42px, rgba(86,118,160,0) 46px);
    -webkit-mask-image:linear-gradient(105deg, #000 0%, rgba(0,0,0,0.6) 40%, transparent 85%);
    mask-image:linear-gradient(105deg, #000 0%, rgba(0,0,0,0.6) 40%, transparent 85%); filter:blur(1.2px); }
  .s3-inner { position:relative; z-index:1; }
  .s3 .s3-card { background:rgba(10,8,6,0.35); }

  /* 4. Why one team: no ornament rule between the paragraph and the ledger. */
  .s5[data-rule] .s5-rule, .s5 .s5-rule { display:none !important; }
  .s5-body { margin-top:34px; }

  /* 5. Founders: tighter boxes. */
  .s6[data-frame="w04"] .s6-card, .s6[data-v="c01"] .s6-card { border-width:18px; border-image-width:18px; padding:4px 6px 6px; }
  .s6[data-v="c01"] .s6-lead { font-size:20px; }
  .s6[data-v="c01"] .s6-list { margin-top:16px; }
  .s6[data-v="c01"] .s6-list li { padding:10px 0; }

  /* 6. Footer: the three names are already in the founders section; phones go straight to the logo. */
  .ft-kicker, .ft-team { display:none; }
  .ft-rule { margin-top:0; }
  .ft-inner { margin-top:-40px; }
}

/* ---- Round 2 (2026-10-04): founders gap, sticky nav, the menu in the v3 register ---- */
@media (max-width:768px) {
  /* founders: 50px less under the picture */
  .s6[data-v="c01"] .s6-top-copy { padding-top:6px; }

  /* nav: fixed to the top, 72px, no dead space above the lockup; goes solid once the page scrolls */
  /* sticky, not fixed: fixed elements drift under the sheet's html zoom:1.1; the negative margin keeps the nav floating over the hero */
  body.v3 #nav { position:sticky; top:0; z-index:100; height:72px; margin-bottom:-72px; background:linear-gradient(to bottom, rgba(8,4,2,0.72) 0%, rgba(8,4,2,0.30) 60%, rgba(8,4,2,0) 100%);
    transition:background .25s ease; }
  body.v3 #nav .container { height:72px; padding:0 20px; }
  body.v3 #nav.is-stuck { background:rgba(10,7,5,0.94); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); box-shadow:0 1px 0 rgba(184,147,63,0.35) !important; }
  body.v3 .nav-logo-wrap svg { height:30px; }
  body.v3 .nav-toggle { padding:0 0 0 16px; min-width:44px; min-height:44px; justify-content:center; outline:none; }
  body.v3 .nav-toggle:focus { outline:none; box-shadow:none; }
  body.v3 .nav-toggle:focus-visible { outline:1px solid rgba(241,223,184,0.6); outline-offset:4px; }
  .hero-v3-title { padding-top:118px; }

  /* the menu: the noir sheet, not the oxblood one */
  body.v3 .mobile-menu { top:0; bottom:0; height:auto; padding-top:72px; box-sizing:border-box; background:#0E0C0A; border-bottom:0; border-top:1px solid rgba(184,147,63,0.35); overflow-y:auto; }
  body.v3 .mobile-menu::before { content:""; position:absolute; inset:0; pointer-events:none;
    background:repeating-linear-gradient(-34deg, rgba(86,118,160,0) 0px, rgba(86,118,160,0) 30px, rgba(86,118,160,0.10) 34px, rgba(86,118,160,0.20) 38px, rgba(86,118,160,0.10) 42px, rgba(86,118,160,0) 46px);
    -webkit-mask-image:linear-gradient(105deg, #000 0%, rgba(0,0,0,0.6) 40%, transparent 85%); mask-image:linear-gradient(105deg, #000 0%, rgba(0,0,0,0.6) 40%, transparent 85%); filter:blur(1.2px); }
  body.v3 .mobile-menu-inner { position:relative; padding:18px 20px 40px; min-height:100%; }
  body.v3 .mobile-menu-link { font-family:var(--font-classic); font-style:normal; font-weight:500; font-size:17px; letter-spacing:0.22em; text-transform:uppercase; color:var(--sc-noir-cream);
    padding:22px 0; border-bottom:1px solid rgba(184,147,63,0.30); text-shadow:0 0 6px rgba(255,214,140,0.45), 0 0 16px rgba(255,196,110,0.30); }
  body.v3 .mobile-menu-link.is-current { color:var(--sc-noir-cream); opacity:0.55; text-shadow:none; }
  body.v3 .mobile-menu-link.is-current::before { content:none; }
  body.v3 .mobile-menu-cta { color:#E6BF6A; margin-top:0; border-bottom:1px solid rgba(184,147,63,0.30); }
  body.v3 .mobile-menu-foot { margin-top:auto; padding-top:26px; border-top:0; gap:12px; }
  body.v3 .mobile-menu-label { font-family:var(--font-ui); font-size:11px; letter-spacing:0.28em; color:#B8933F; }
  body.v3 .mobile-menu-sub { font-family:var(--font-body); font-size:17px; color:rgba(241,230,207,0.85); }
  body.v3 .mobile-menu-logo { display:block; width:150px; margin:0 0 18px; }
  body.v3 .mobile-menu-logo img { width:100%; height:auto; display:block; }
}

/* ---- Round 3 (2026-10-04) ---- */
@media (max-width:768px) {
  /* the sheet's html zoom paints sticky/fixed bars a few px low once scrolled: a solid strip above the stuck nav covers the sliver */
  body.v3 #nav.is-stuck::before { content:""; display:block; position:absolute; left:0; right:0; top:-16px; height:16px; background:rgba(10,7,5,0.94); }
  /* founders: 20px more off under the picture; no badges on phones */
  .s6[data-v="c01"] .s6-top-copy { padding-top:0; margin-top:-14px; }
  .s6 .s6-badge { display:none; }
  .s6[data-v="c01"] .s6-list { margin-bottom:6px; }
  /* menu: no LinkedIn */
  body.v3 .mobile-menu-sub { display:none; }
  body.v3 .mobile-menu-logo { margin-bottom:12px; }
}
