  :root{
    --navy:#1C355E;
    --navy-deep:#121F38;
    --navy-ink:#0D1626;
    --orange:#FF7F30;
    --orange-soft:#FFB182;
    --paper:#F6F7F9;
    --steel:#8FA1BF;
    --line:rgba(28,53,94,.14);
    --line-light:rgba(255,255,255,.14);
    --display:'Barlow Condensed', 'Arial Narrow', sans-serif;
    --body:'Barlow', 'Helvetica Neue', sans-serif;
    --mono:'IBM Plex Mono', 'Courier New', monospace;
  }
  .bdm-landing-wrap *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  @media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto} *{transition:none!important;animation:none!important} }
  .bdm-landing-wrap{font-family:var(--body);color:var(--navy);background:var(--paper);line-height:1.55;-webkit-font-smoothing:antialiased}
  .bdm-landing-wrap img{max-width:100%;display:block}
  .bdm-landing-wrap a{color:inherit}
  .bdm-landing-wrap .wrap{max-width:1160px;margin:0 auto;padding:0 24px}
  .bdm-landing-wrap .eyebrow{font-family:var(--display);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:15px;color:var(--orange)}
  .bdm-landing-wrap  h1,.bdm-landing-wrap  h2,.bdm-landing-wrap  h3{font-family:var(--display);text-transform:uppercase;line-height:1.02;font-weight:800;letter-spacing:.01em}
  .bdm-landing-wrap  h2{font-size:clamp(34px,4.5vw,52px)}
  .bdm-landing-wrap .section{padding:88px 0}
  .bdm-landing-wrap  .btn{display:inline-block;font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:18px;text-decoration:none;padding:16px 34px;border:2px solid var(--orange);transition:transform .15s ease, background .15s ease, color .15s ease}
  .bdm-landing-wrap .btn:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
  .bdm-landing-wrap .btn-solid{background:var(--orange);color:#fff}
  .bdm-landing-wrap .btn-solid:hover{transform:translateY(-2px);background:#ff9152}
  .bdm-landing-wrap .btn-ghost{color:#fff}
  .bdm-landing-wrap .btn-ghost:hover{background:rgba(255,127,48,.15)}
  .bdm-landing-wrap .btn-ghost.on-light{color:var(--navy);border-color:var(--navy)}
  .bdm-landing-wrap .btn-ghost.on-light:hover{background:rgba(28,53,94,.08)}

  /* Signature motif: the "freight streak" — echoes the orange horizon
     streaks on the core-values canvases in the office. Reused sparingly. */
  .streak{height:10px;background:
    repeating-linear-gradient(90deg,
      var(--orange) 0 34%, var(--orange-soft) 34% 40%,
      var(--navy) 40% 44%, var(--orange) 44% 71%,
      #fff0 71% 73%, var(--orange-soft) 73% 100%);}

  /* ---------- HERO ---------- */
  .hero{background:var(--navy-deep);color:#fff;position:relative;overflow:hidden}
  .hero::after{content:"";position:absolute;right:-140px;top:0;bottom:0;width:46%;
    background:linear-gradient(115deg, #fff0 0 38%, rgba(255,127,48,.16) 38% 54%, #fff0 54% 60%, rgba(255,127,48,.10) 60% 78%, #fff0 78%);
    transform:skewX(-8deg);pointer-events:none}
  .bdm-landing-wrap .hero-in{position:relative;z-index:1;padding:110px 12px 96px 12px;max-width:820px}
  .hero h1{font-size:clamp(52px,7.5vw,96px);margin:18px 0 8px}
  .hero h1 .flip{color:var(--orange)}
  .hero p.lede{font-size:20px;max-width:560px;color:#D7DEEA;margin:22px 0 36px}
  .hero .cta-row{display:flex;gap:16px;flex-wrap:wrap}
  .hero-kicker{font-family:var(--mono);font-size:13px;letter-spacing:.06em;color:var(--steel);margin-top:44px}

  /* ---------- STAT STRIP ---------- */
  .stats{background:var(--navy);color:#fff}
  .stats-in{display:grid;grid-template-columns:repeat(4,1fr);}
  .stat{padding:28px 24px;border-left:1px solid var(--line-light)}
  .stat:first-child{border-left:none}
  .stat b{display:block;font-family:var(--display);font-weight:800;font-size:34px;color:var(--orange)}
  .stat span{font-size:14px;color:#C6D0E2;text-transform:uppercase;letter-spacing:.08em;font-family:var(--display);font-weight:600}
  @media(max-width:820px){.stats-in{grid-template-columns:repeat(2,1fr)} .stat:nth-child(3){border-left:none}}

  /* ---------- HONEST TRADE ---------- */
  .trade-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);margin-top:36px;background:#fff;max-width:980px}
  .trade-col{padding:30px 28px}
  .trade-col li{font-size:15px}
  .trade-col.work{background:var(--navy);color:#fff}
  .trade-col h3{font-size:26px;margin-bottom:18px}
  .trade-col.work h3{color:var(--orange)}
  .trade-col ul{list-style:none}
  .trade-col li{padding:10px 0 10px 30px;position:relative;border-top:1px solid var(--line)}
  .trade-col.work li{border-top:1px solid var(--line-light);color:#D7DEEA}
  .trade-col li::before{content:"→";position:absolute;left:0;font-family:var(--display);font-weight:800;color:var(--orange)}
  @media(max-width:820px){.trade-grid{grid-template-columns:1fr}}

  /* ---------- ACADEMY ---------- */
  .academy{background:#fff}
  .phase-row{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:48px}
  .phase{border:1px solid var(--line);border-top:6px solid var(--orange);padding:30px 26px;background:var(--paper)}
  .phase .mile{font-family:var(--mono);font-size:13px;letter-spacing:.08em;color:var(--orange);border:1px solid var(--orange);display:inline-block;padding:4px 10px;margin-bottom:16px}
  .phase h3{font-size:24px;margin-bottom:10px}
  .phase p{font-size:15.5px;color:#42506B}
  .academy-note{margin-top:34px;font-family:var(--display);font-weight:700;font-size:22px;text-transform:uppercase;letter-spacing:.04em}
  .academy-note em{color:var(--orange);font-style:normal}
  @media(max-width:820px){.phase-row{grid-template-columns:1fr}}

  /* ---------- SCOREBOARD (signature element) ---------- */
  .board{background:var(--navy-ink);color:#fff}
  .board .wrap{max-width:900px}
  .board-panel{border:1px solid var(--line-light);margin-top:44px;background:
    linear-gradient(#fff0 0 0), repeating-linear-gradient(0deg, #ffffff05 0 2px, #fff0 2px 6px)}
  .board-row{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:20px;padding:24px 30px;border-top:1px solid var(--line-light)}
  .board-row:first-child{border-top:none}
  .board-row .label{font-family:var(--display);font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:17px;color:#C6D0E2}
  .board-row .val{font-family:var(--mono);font-weight:600;font-size:clamp(22px,3.4vw,34px);color:var(--orange);text-align:right}
  .board-row.total .label{color:#fff}
  .board-row.total{background:rgba(255,127,48,.08)}
  .board-fine{font-size:13px;color:var(--steel);margin-top:18px;font-family:var(--mono)}

  /* ---------- VALUES WALL ---------- */
  .values{background:var(--paper)}
  .values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:48px}
  .canvas{background:var(--navy-deep);color:#EAF0F9;padding:34px 26px 30px;position:relative;overflow:hidden;min-height:230px;transition:transform .15s ease, box-shadow .15s ease}
  .canvas:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(13,22,38,.28)}
  .canvas-in{position:relative}
  .canvas h3{color:var(--orange);font-size:30px;letter-spacing:.05em;margin-bottom:14px}
  .canvas p{font-size:19px;line-height:1.45;color:#CBD5E6}
  @media(max-width:960px){.values-grid{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:640px){.values-grid{grid-template-columns:1fr}}

  /* ---------- WHO THRIVES ---------- */
  .fits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:48px}
  .fit{background:#fff;border:1px solid var(--line);padding:34px 28px}
  .fit .tag{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--orange)}
  .fit h3{font-size:26px;margin:10px 0 12px}
  .fit p{font-size:15.5px;color:#42506B}
  @media(max-width:820px){.fits-grid{grid-template-columns:1fr}}

  /* ---------- PHOTOS + TESTIMONIALS ---------- */
  .proof{background:#fff}
  .photo-strip{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:14px;margin-top:44px}
  .ph{position:relative;overflow:hidden;min-height:240px}
  .ph img{width:100%;height:100%;object-fit:cover;display:block}
  .ph figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 16px 12px;font-family:var(--display);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:13px;color:#fff;background:linear-gradient(0deg, rgba(13,22,38,.82), rgba(13,22,38,0))}
  @media(max-width:820px){.photo-strip{grid-template-columns:1fr 1fr}}

  /* President's Club band */
  .pc-band{background:var(--navy);color:#fff;margin-top:64px;padding:44px 40px}
  .pc-band .eyebrow{color:var(--orange)}
  .pc-band h3{font-size:clamp(26px,3.4vw,36px);text-transform:uppercase;margin:8px 0 10px}
  .pc-band p{color:#C6D0E2;max-width:640px;font-size:16px}
  /* Columns sized to each photo's aspect ratio (1.777 : 1.328) so both
     render at the same height with no cropping. If these photos are ever
     swapped, update the ratios to the new images' width/height. */
  .pc-photos{display:grid;grid-template-columns:1.777fr 1.328fr;gap:14px;margin-top:26px;align-items:stretch}
  .pc-photos .ph{min-height:0}
  .pc-photos .ph img{width:100%;height:100%;object-fit:cover}
  @media(max-width:820px){.pc-photos{grid-template-columns:1fr}.pc-band{padding:32px 22px}}

  /* Gallery grid (replaces quotes) */
  .gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:64px}
  .gallery .ph{min-height:210px}
  @media(max-width:960px){.gallery{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:520px){.gallery{grid-template-columns:1fr}}

  /* newlightbox — click any photo to view it in full */
  .proof .ph img{cursor:zoom-in}
  .newlightbox{position:fixed;inset:0;background:rgba(13,22,38,.93);display:flex;align-items:center;justify-content:center;z-index:1000;padding:28px;cursor:zoom-out}
  .newlightbox[hidden]{display:none}
  .newlightbox img{max-width:94vw;max-height:90vh;width:auto;height:auto;object-fit:contain;box-shadow:0 24px 60px rgba(0,0,0,.5)}
  .newlightbox-close{position:absolute;top:18px;right:22px;background:none;border:none;color:#fff;font-family:var(--display);font-size:34px;line-height:1;cursor:pointer;padding:8px}
  .newlightbox-close:focus-visible{outline:3px solid var(--orange)}

  /* ---------- FINAL CTA + FOOTER ---------- */
  .close{background:var(--navy-deep);color:#fff;text-align:center}
  .close h2{font-size:clamp(40px,6vw,72px)}
  .close p{color:#C6D0E2;max-width:560px;margin:20px auto 36px;font-size:18px}
  .footer{background:var(--navy-ink);color:#9FB0CC;font-size:14px}
  .footer-in{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:44px 0}
  .footer a{color:#C6D0E2;text-decoration:none}
  .footer a:hover{color:var(--orange)}