/* ============================================================
   Web Chick — homepage styles
   Extracted from index.html. Tokens + chrome duplicated here so
   this file stands alone; see css/webchick.css for shared chrome.
   ============================================================ */

:root {
    --white:#FFFFFF; --off-white:#FAF8F4; --panel:#FFFFFF;
    --ink:#14110F; --ink-soft:#2A2521; --ink-faded:#5A524B; --ink-muted:#8A8178;
    --blue:#265A88; --blue-deep:#173B5C; --blue-bright:#4A82B5; --blue-pale:#DCE7F0;
    --coffee:#6B4A2E; --coffee-mid:#8B6244; --coffee-light:#B5895F;
    --scarlet:#B91C1C; --gold:#C9A35C; --gold-text:#8C6A30; --green-go:#4C7A4A; --line:rgba(20,17,15,0.10);
  }
  *,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{font-family:'Inter',system-ui,sans-serif;background:var(--white);color:var(--ink-soft);line-height:1.65;font-size:17px;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
  a{color:var(--blue);text-decoration:none;}
  img{display:block;max-width:100%;height:auto;}
  button{font:inherit;cursor:pointer;border:none;background:none;color:inherit;}
  *:focus-visible{outline:2.5px solid var(--blue);outline-offset:3px;}
  .skip-link{position:absolute;top:-50px;left:8px;background:var(--ink);color:var(--white);padding:8px 16px;z-index:10001;transition:top 0.2s;}
  .skip-link:focus{top:8px;}
  .wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 1.75rem;}
  h1,h2,h3,h4{font-family:'Fraunces',Georgia,serif;color:var(--ink);line-height:1.02;letter-spacing:-0.02em;}
  .wonk{font-weight:900;font-style:italic;font-variation-settings:"opsz" 144;}
  .italic-accent{font-style:italic;color:var(--blue);font-weight:400;}
  .eyebrow{display:inline-block;font-family:'Inter',sans-serif;font-size:12px;font-weight:700;letter-spacing:0.22em;text-transform:uppercase;color:var(--coffee);margin-bottom:0.75rem;}
  .eyebrow::before,.eyebrow::after{content:"★";color:var(--gold-text);margin:0 0.45em;}
  .btn{display:inline-block;font-family:'Inter',sans-serif;font-size:14px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;padding:14px 26px;border-radius:3px;border:1.5px solid;transition:all 0.2s ease;}
  .btn-primary{background:var(--blue);color:var(--white);border-color:var(--blue);}
  .btn-primary:hover{background:var(--blue-deep);border-color:var(--blue-deep);transform:translateY(-1px);box-shadow:0 6px 18px rgba(38,90,136,0.3);}
  .btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink);}
  .btn-ghost:hover{background:var(--ink);color:var(--white);}
  .btn-coffee{background:var(--coffee);color:var(--white);border-color:var(--coffee);}
  .btn-coffee:hover{background:var(--ink);border-color:var(--ink);}

  .nav{position:sticky;top:0;z-index:100;background:#233140;border-bottom:1px solid rgba(255,255,255,0.08);padding:10px 0;}
  .nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:2rem;}
  .brand{display:flex;align-items:center;gap:8px;}
  .brand img{height:56px;width:auto;display:block;}
  .nav-links{display:flex;gap:1.75rem;list-style:none;font-size:12px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;align-items:center;}
  .nav-links a{color:#FFFFFF;position:relative;padding:4px 0;}
  .nav-links a::after{content:"";position:absolute;bottom:0;left:0;right:100%;height:2px;background:var(--coffee-light);transition:right 0.2s;}
  .nav-links a:hover::after{right:0;}
  .nav-cta{display:inline-block;font-family:'Inter',sans-serif;font-size:13px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;padding:11px 22px;border-radius:3px;color:#FFFFFF;border:1.5px solid #FFFFFF;background:transparent;transition:all 0.2s ease;}
  .nav-cta:hover{background:#FFFFFF;color:#233140;}
  .nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-shrink:0;}
  .nav-toggle span{display:block;width:26px;height:2.5px;background:#fff;margin:5px 0;border-radius:2px;transition:0.25s;}
  .nav.open .nav-toggle span:nth-child(1){transform:translateY(7.5px) rotate(45deg);}
  .nav.open .nav-toggle span:nth-child(2){opacity:0;}
  .nav.open .nav-toggle span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg);}
  .nav-cta-mobile{display:none;}

  .hero{position:relative;min-height:88vh;display:flex;align-items:center;overflow:hidden;background:var(--ink);}
  .hero-scroll{position:relative;}
  .hero-frames{position:absolute;inset:0;z-index:0;will-change:transform;}
  .hero-frame2{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;
               opacity:0;pointer-events:none;}
  @media (min-width:981px){
    .scrub .hero-scroll{height:240vh;}
    .scrub .hero-scroll .hero{position:sticky;top:0;min-height:100vh;}
  }
  @media (max-width:980px){.hero-frame2{display:none;}}
  
  .hero-mobile-bg{display:none;}
  .hero-lastframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0;opacity:0;transition:opacity 0.6s ease;pointer-events:none;}
  .hero.reveal .hero-lastframe{opacity:1;}
  .hero-copy{max-width:460px;position:relative;}
  .hero-panels{position:relative;max-width:460px;}
  .hero-panel{background:linear-gradient(105deg,rgba(12,10,9,0.90) 0%,rgba(12,10,9,0.84) 60%,rgba(12,10,9,0.72) 100%);
              border-radius:14px;padding:2rem 2.25rem;backdrop-filter:blur(2px);box-shadow:0 24px 60px rgba(0,0,0,0.45);}
  .hero-panel h2{font-size:clamp(1.8rem,3.1vw,2.6rem);color:#FFFFFF;margin-bottom:1.1rem;line-height:1.08;}
  .hero-panel h2 em{color:var(--coffee-light);}
  .hero-panel .eyebrow{color:var(--coffee-light);}
  .hero-panel p{font-size:16.5px;line-height:1.6;color:rgba(255,255,255,0.84);}
  .hero-panel p strong{color:#FFFFFF;font-weight:600;}
  .hero-panel-list{list-style:none;margin:1.25rem 0 0;display:grid;gap:0.7rem;}
  .hero-panel-list li{font-size:15.5px;color:rgba(255,255,255,0.88);display:flex;gap:0.7rem;align-items:flex-start;}
  .hero-panel-list li::before{content:"\2713";color:var(--coffee-light);font-weight:700;flex:none;}
  @media (min-width:981px){
    .scrub .hero-panels{min-height:min(78vh,560px);}
    .scrub .hero-panels>.hero-copy,.scrub .hero-panels>.hero-panel{position:absolute;left:0;right:0;top:0;height:auto;}
    .scrub .hero-panels>.hero-panel{opacity:0;visibility:hidden;}
  }
  @media (max-width:980px){.hero-panel{margin-top:1.25rem;}.hero-panels{max-width:100%;}}
  .hero-panels-mobile{display:none;}
  /* mobile shows the first hero card only — panels 2 and 3 are desktop-scrub content */
  @media (max-width:980px){
    .hero-panels-mobile{display:none;}
    .hero-panel{display:none;}
  }
  @media (prefers-reduced-motion:reduce){
    .js .hero-panels{min-height:0;}
    .js .hero-panels>.hero-copy,.js .hero-panels>.hero-panel{position:relative;opacity:1;}
    .hero-panel{margin-top:1.25rem;}
  }
  .hero.reveal .hero-copy{background:linear-gradient(105deg,rgba(12,10,9,0.90) 0%,rgba(12,10,9,0.84) 60%,rgba(12,10,9,0.72) 100%);border-radius:14px;padding:2rem 2.25rem;backdrop-filter:blur(2px);box-shadow:0 20px 60px rgba(0,0,0,0.35);transition:background 0.6s ease;}
  .hero-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(10,9,8,0.92) 0%,rgba(10,9,8,0.85) 34%,rgba(10,9,8,0.60) 55%,rgba(10,9,8,0.25) 75%,rgba(10,9,8,0.15) 100%);}
  .hero .wrap{position:relative;z-index:2;}
  .hero-copy>*{opacity:0;transform:translateX(-30px);}
  .hero.reveal .hero-copy>*{opacity:1;transform:translateX(0);transition:opacity 0.7s cubic-bezier(0.22,1,0.36,1),transform 0.7s cubic-bezier(0.22,1,0.36,1);}
  .hero.reveal .hero-copy>*:nth-child(1){transition-delay:0s;}
  .hero.reveal .hero-copy>*:nth-child(2){transition-delay:0.12s;}
  .hero.reveal .hero-copy>*:nth-child(3){transition-delay:0.24s;}
  .hero.reveal .hero-copy>*:nth-child(4){transition-delay:0.36s;}
  .hero.reveal .hero-copy>*:nth-child(5){transition-delay:0.48s;}
  .hero.reveal .hero-copy>*:nth-child(6){transition-delay:0.60s;}
  .hero h1{font-size:clamp(1.95rem,3.3vw,2.9rem);margin-bottom:1rem;color:#FFFFFF;}
  .hero h1 .italic-accent{color:var(--coffee-light);font-style:italic;}
  .hero h1 .amp{font-family:'Fraunces',serif;font-style:normal;font-weight:400;font-variation-settings:"opsz" 144;font-size:0.62em;color:var(--coffee-light);vertical-align:0.04em;padding:0 0.06em;}
  h2 .amp,h3 .amp{font-family:'Fraunces',serif;font-style:normal;font-weight:600;font-variation-settings:"opsz" 144;font-size:0.78em;vertical-align:0.02em;padding:0 0.04em;}
  .hero h1 .underline{position:relative;display:inline-block;white-space:nowrap;}
  .hero h1 .underline::after{content:"";position:absolute;bottom:-2px;left:-4px;right:-4px;height:10px;background:var(--coffee-light);opacity:0.5;z-index:-1;transform:skew(-12deg) translateY(2px);border-radius:2px;}
  .tagline{display:flex;align-items:center;gap:0.85rem;margin-bottom:1.4rem;}
  .tagline .rule{width:32px;height:2px;background:var(--coffee);flex-shrink:0;}
  .tagline .txt{font-family:'Caveat',cursive;font-weight:700;font-size:clamp(1.25rem,1.9vw,1.55rem);color:var(--coffee-light);line-height:1.1;}
  .hero-lede{font-size:18px;color:rgba(255,255,255,0.82);max-width:480px;margin-bottom:1.6rem;}
  .hero-lede strong{color:#FFFFFF;font-weight:600;}
  .hero-cta{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;}
  .hero-stars{display:flex;align-items:center;gap:0.5rem;margin-top:1.4rem;font-size:14px;color:rgba(255,255,255,0.75);flex-wrap:wrap;}
  .hero-stars .stars{color:var(--gold);letter-spacing:2px;font-size:18px;}
  .hero-stars strong{color:#FFFFFF;}
  .hero-stars a{font-weight:600;color:var(--coffee-light);}
  .hero .eyebrow{color:var(--coffee-light);}
  .hero .btn-ghost{color:#FFFFFF;border-color:rgba(255,255,255,0.6);}
  .hero .btn-ghost:hover{background:#FFFFFF;color:var(--ink);border-color:#FFFFFF;}

  /* --- hero word build (concept 03) --- */
  .hero h1 .w{display:inline-block;}
  .js .hero h1 .w{opacity:0;transform:translateY(26px) rotate(1.5deg);}
  .js .hero.reveal h1 .w{opacity:1;transform:none;transition:opacity .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1);}
  .js .hero.reveal .hero-copy>h1{opacity:1;transform:none;transition:none;}
  .js .hero h1 .underline::after{transform:skew(-12deg) translateY(2px) scaleX(0);transform-origin:left;}
  .js .hero.reveal h1 .underline::after{transform:skew(-12deg) translateY(2px) scaleX(1);transition:transform .7s cubic-bezier(.22,1,.36,1) .62s;}

  /* --- flying update cards (concept 06) --- */
  .svc-flow{position:relative;width:min(1040px,100vw - 2.5rem);height:280px;
            margin:0 0 clamp(2.5rem,5vw,3.75rem) 50%;transform:translateX(-50%);
            perspective:1300px;perspective-origin:50% 50%;pointer-events:none;}
  .hero-flow-rail{position:absolute;inset:0;transform-style:preserve-3d;}
  .svc-flow .ucard{background:#FFFFFF;border:1px solid var(--line);box-shadow:0 18px 38px rgba(20,17,15,0.16);}
  .svc-flow .ucard.k1{left:0;right:auto;top:0;}
  .svc-flow .ucard.k2{right:0;left:auto;top:12%;}
  .svc-flow .ucard.k3{left:50%;right:auto;margin-left:-154px;top:38%;}
  .svc-flow .ucard.k4{left:0;right:auto;top:64%;}
  .svc-flow .ucard.k5{right:0;left:auto;top:76%;}
  .svc-flow.live .ucard.k1,.svc-flow.live .ucard.k4{animation-name:ucardflowL;}
  .svc-flow.live .ucard.k3{animation-name:ucardflowC;}
  @keyframes ucardflowL{
    0%  {opacity:0;transform:translate3d(-430px,-70px,300px) rotateY(34deg) rotateX(6deg);}
    12% {opacity:1;}
    26% {transform:translate3d(0,0,0) rotateY(7deg);}
    62% {transform:translate3d(0,0,0) rotateY(7deg);opacity:1;}
    80% {opacity:0;transform:translate3d(90px,-130px,-260px) rotateY(-10deg) scale(0.82);}
    100%{opacity:0;transform:translate3d(90px,-130px,-260px) rotateY(-10deg) scale(0.82);}
  }
  @keyframes ucardflowC{
    0%  {opacity:0;transform:translate3d(0,120px,340px) rotateX(-14deg) scale(0.9);}
    12% {opacity:1;}
    26% {transform:translate3d(0,0,0) rotateX(0deg) scale(1);}
    62% {transform:translate3d(0,0,0) rotateX(0deg) scale(1);opacity:1;}
    80% {opacity:0;transform:translate3d(0,-150px,-260px) scale(0.82);}
    100%{opacity:0;transform:translate3d(0,-150px,-260px) scale(0.82);}
  }
  .ucard{position:absolute;right:0;width:308px;background:rgba(255,255,255,0.96);border-radius:8px;padding:12px 14px;
         box-shadow:0 22px 50px rgba(0,0,0,0.45);opacity:0;display:flex;align-items:center;gap:11px;}
  .ucard s.st::after{content:"";}
  .ucard s{display:block;text-decoration:none;font:700 8.5px/1 'Inter',sans-serif;letter-spacing:0.15em;
           text-transform:uppercase;color:var(--coffee);margin-bottom:4px;}
  .ucard b{display:block;font:600 13px/1.3 'Inter',sans-serif;color:var(--ink);}
  .ucard .txt{flex:1;}
  .ucard .chk{width:58px;height:58px;flex:none;display:block;border-radius:50%;background:#FFFFFF;
              opacity:0;transform:scale(0.4) rotate(-14deg);box-shadow:0 0 0 0 rgba(46,158,107,0);}
  .svc-flow.live .ucard{animation:ucardflow 9s cubic-bezier(0.33,0,0.4,1) infinite;}
  .svc-flow.live .ucard .chk{animation:uchkon 9s linear infinite;}
  @keyframes ucardflow{
    0%  {opacity:0;transform:translate3d(430px,-70px,300px) rotateY(-34deg) rotateX(6deg);}
    12% {opacity:1;}
    26% {transform:translate3d(0,0,0) rotateY(-7deg);}
    62% {transform:translate3d(0,0,0) rotateY(-7deg);opacity:1;}
    80% {opacity:0;transform:translate3d(-90px,-130px,-260px) rotateY(10deg) scale(0.82);}
    100%{opacity:0;transform:translate3d(-90px,-130px,-260px) rotateY(10deg) scale(0.82);}
  }
  @keyframes uchkon{
    0%,40%  {opacity:0;transform:scale(0.4) rotate(-14deg);box-shadow:0 0 0 0 rgba(46,158,107,0);}
    50%     {opacity:1;transform:scale(1.14) rotate(4deg);box-shadow:0 0 0 4px rgba(46,158,107,1);}
    56%,100%{opacity:1;transform:scale(1) rotate(0deg);box-shadow:0 0 0 3px rgba(46,158,107,1);}
  }
  .ucard.k1{top:2%;} .ucard.k2{top:23%;} .ucard.k3{top:44%;} .ucard.k4{top:65%;} .ucard.k5{top:86%;}
  .svc-flow.live .ucard.k1,.svc-flow.live .ucard.k1 .chk{animation-delay:1.1s;}
  .svc-flow.live .ucard.k2,.svc-flow.live .ucard.k2 .chk{animation-delay:2.9s;}
  .svc-flow.live .ucard.k3,.svc-flow.live .ucard.k3 .chk{animation-delay:4.7s;}
  .svc-flow.live .ucard.k4,.svc-flow.live .ucard.k4 .chk{animation-delay:6.5s;}
  .svc-flow.live .ucard.k5,.svc-flow.live .ucard.k5 .chk{animation-delay:8.3s;}
  /* mobile: one card at a time, flipping through the five */
  @media (max-width:980px){
    .svc-flow{height:106px;width:100%;max-width:430px;margin:1.5rem auto clamp(2rem,5vw,3rem);
              transform:none;perspective:800px;perspective-origin:50% 50%;}
    .svc-flow .hero-flow-rail{position:absolute;inset:0;transform-style:preserve-3d;}
    .svc-flow .ucard{position:absolute;top:0 !important;left:0 !important;right:auto !important;
                     width:100%;margin:0 !important;opacity:0;backface-visibility:hidden;
                     animation:none;}
    .svc-flow .ucard .chk{opacity:1;transform:none;animation:none !important;}
    .svc-flow.live .ucard{animation:ucardmobflip 10s cubic-bezier(.4,0,.2,1) infinite !important;}
    .svc-flow.live .ucard.k1{animation-delay:0s !important;}
    .svc-flow.live .ucard.k2{animation-delay:2s !important;}
    .svc-flow.live .ucard.k3{animation-delay:4s !important;}
    .svc-flow.live .ucard.k4{animation-delay:6s !important;}
    .svc-flow.live .ucard.k5{animation-delay:8s !important;}
    @keyframes ucardmobflip{
      0%      {opacity:0;transform:rotateX(-80deg);}
      3%      {opacity:1;}
      6%,17%  {opacity:1;transform:rotateX(0deg);}
      20%     {opacity:0;transform:rotateX(80deg);}
      21%,100%{opacity:0;transform:rotateX(80deg);}
    }
  }
  @media (prefers-reduced-motion:reduce){
    .hero .w{opacity:1 !important;transform:none !important;}
    .hero h1 .underline::after{transform:skew(-12deg) translateY(2px) !important;}
    .hero-scroll{height:auto !important;}
    .hero-scroll .hero{position:relative !important;}
    .hero-frame2{display:none;}
    .svc-flow{height:auto;perspective:none;width:100%;max-width:430px;margin:0 auto;transform:none;}
    .svc-flow .hero-flow-rail{position:static;}
    .svc-flow .ucard{margin-left:0 !important;}
    .ucard{position:static !important;width:100% !important;margin-bottom:0.85rem;animation:none !important;opacity:1 !important;transform:none !important;}
    .ucard.k4,.ucard.k5{display:none;}
    .ucard .chk{animation:none !important;opacity:1 !important;transform:none !important;box-shadow:0 0 0 3px #2E9E6B !important;}
  }

  /* --- hero fit: original scale kept; cards clear the copy column --- */
  .hero .hero-cta{flex-wrap:wrap;}
  .hero .hero-cta .btn{white-space:nowrap;}
  @media (max-width:520px){.hero .hero-cta{flex-wrap:wrap;}}

  .js .trust-stat{opacity:0;transform:translateY(14px);}
  .js .trust.in .trust-stat{opacity:1;transform:none;transition:opacity .6s ease,transform .6s cubic-bezier(0.22,1,0.36,1);}
  .js .trust.in .trust-stat:nth-child(2){transition-delay:0.09s;}
  .js .trust.in .trust-stat:nth-child(3){transition-delay:0.18s;}
  .js .trust.in .trust-stat:nth-child(4){transition-delay:0.27s;}
  .trust-num{font-variant-numeric:tabular-nums;}
  @media (prefers-reduced-motion:reduce){.js .trust-stat{opacity:1 !important;transform:none !important;}}

  /* --- scroll reveals for the rest of the page --- */
  /* rise on scroll without ever dropping opacity: invisible text fails contrast scans
     and hides content from anyone whose JS is slow or blocked */
  .js .wc-rise{transform:translateY(28px);}
  .js .wc-rise.on{transform:none;transition:transform .75s cubic-bezier(0.22,1,0.36,1);}
  @media (prefers-reduced-motion:reduce){
    .js .wc-rise{transform:none !important;transition:none !important;}
  }

  .art-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;}
  .art-card{display:flex;flex-direction:column;gap:0.55rem;background:var(--white);border:1px solid var(--line);
            border-radius:6px;padding:1.6rem;text-decoration:none;transition:all 0.2s;}
  .art-card:hover{transform:translateY(-4px);border-color:var(--coffee);box-shadow:0 14px 32px rgba(20,17,15,0.10);}
  .art-card::before{content:"";display:block;width:30px;height:3px;background:var(--blue);border-radius:2px;margin-bottom:0.35rem;}
  .art-tag{font-size:11px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--coffee);}
  .art-card h3{font-size:1.2rem;font-weight:600;line-height:1.25;color:var(--ink);}
  .art-card p{font-size:15px;color:var(--ink-faded);flex:1;}
  .art-link{font-size:13px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--blue);margin-top:0.3rem;}
  .art-card:hover .art-link{color:var(--blue-deep);}
  @media (max-width:940px){.art-grid{grid-template-columns:repeat(2,1fr);}}
  @media (max-width:620px){.art-grid{grid-template-columns:1fr;}}

  .trust{background:#FFFFFF;padding:2.25rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1.5rem;text-align:center;}
  .trust-stat{border-right:1px solid var(--line);padding:0 1rem;}
  .trust-stat:last-child{border-right:none;}
  .trust-num{font-family:'Inter',sans-serif;font-weight:700;font-style:normal;font-size:1.6rem;color:var(--coffee);display:block;line-height:1;letter-spacing:-0.02em;}
  .trust-label{font-size:11px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-faded);margin-top:0.4rem;}

  section{padding:5rem 0;position:relative;}
  .sec-head{max-width:760px;margin-bottom:3rem;}
  .sec-head.center{margin-left:auto;margin-right:auto;text-align:center;}
  .sec-head h2{font-size:clamp(2rem,4vw,3rem);}
  .sec-head h2 em{font-style:italic;color:var(--blue);}
  .nowrap-h2{font-size:clamp(1.5rem,3vw,2.3rem);text-wrap:balance;}
  @media (min-width:981px){.nowrap-h2>span,.nowrap-h2>em{white-space:nowrap;display:inline-block;}}
  @media (max-width:640px){.nowrap-h2{font-size:1.5rem;}}
  .sec-head .lede{font-size:18px;color:var(--ink-faded);margin-top:0.75rem;}

  .services{background:var(--white);}
  .svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;}
  .svc-card{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:1.75rem;transition:all 0.2s;}
  .svc-card:hover{transform:translateY(-4px);border-color:var(--coffee);box-shadow:0 14px 32px rgba(20,17,15,0.10);}
  .svc-icon{width:30px;height:3px;border-radius:2px;background:var(--blue);margin-bottom:1.1rem;}
  .svc-card h3{font-size:1.3rem;font-weight:600;margin-bottom:0.5rem;}
  .svc-card p{font-size:15px;color:var(--ink-faded);}

  .doj{background:var(--blue);color:var(--white);overflow:hidden;}
  .doj::before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(135deg,transparent 0 12px,rgba(255,255,255,0.03) 12px 13px);pointer-events:none;}
  .doj-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1.3fr;gap:3rem;align-items:center;}
  .doj-tag{display:inline-block;background:var(--white);color:var(--blue-deep);font-size:11px;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;padding:6px 12px;margin-bottom:1rem;}
  .doj h2{color:var(--white);font-size:clamp(1.8rem,3.6vw,2.7rem);line-height:1.25;}
  .doj h2 em{font-style:italic;}
  .doj p{color:rgba(255,255,255,0.88);}
  .doj-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
  .doj-stat{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.15);border-radius:4px;padding:1.25rem;}
  .doj-stat .n{font-family:'Inter',sans-serif;font-weight:700;font-style:normal;font-size:1.2rem;display:block;line-height:1.15;margin-bottom:0.3rem;letter-spacing:-0.01em;}
  .doj-stat .l{font-size:12px;color:rgba(255,255,255,0.78);}
  .doj .btn-primary{background:var(--white);color:var(--blue-deep);border-color:var(--white);margin-top:1.5rem;}
  .doj .btn-primary:hover{background:var(--ink);color:var(--white);border-color:var(--ink);}

  .brew{background:#FFFFFF;position:relative;overflow:hidden;}
  .brew-bg{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;}
  .brew-bg::before{content:"";position:absolute;inset:-50px;background-image:radial-gradient(circle,var(--coffee) 1.1px,transparent 1.5px);background-size:30px 30px;opacity:0.045;}
  
  .brew-bg::after{content:"";position:absolute;bottom:-120px;left:-80px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(107,74,46,0.10),transparent 70%);}
  .brew-steam{position:absolute;bottom:-60px;width:60px;height:300px;background:linear-gradient(180deg,rgba(107,74,46,0.06),transparent);border-radius:50%;filter:blur(14px);animation:steamDrift linear infinite;}
  .brew-steam.s1{left:14%;animation-duration:14s;}
  .brew-steam.s2{left:54%;animation-duration:18s;animation-delay:4s;}
  .brew-steam.s3{right:18%;animation-duration:16s;animation-delay:2s;}
  @keyframes steamDrift{0%{transform:translateY(0) scaleX(1);opacity:0;}20%{opacity:0.7;}100%{transform:translateY(-360px) scaleX(1.5);opacity:0;}}
  .brew-layout{display:grid;grid-template-columns:400px 1fr;gap:1.75rem;align-items:start;}
  .brew-side{border-radius:8px;overflow:hidden;align-self:start;}
  .brew-side img{width:100%;height:auto;display:block;}
  .brew-main{min-width:0;}
  .brew-embed{background:#FFFFFF;height:560px;overflow-y:auto;}
  .brew-embed{border:1px solid var(--line);border-radius:8px;padding:0.35rem 1.25rem 1.25rem;}
  .bsky-list{list-style:none;margin:0;padding:0;}
  .bsky-post{padding:1.15rem 0;border-bottom:1px solid var(--line);}
  .bsky-post:last-child{border-bottom:none;}
  .bsky-meta{display:flex;align-items:baseline;justify-content:space-between;gap:0.75rem;margin-bottom:0.45rem;}
  .bsky-who{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:1.02rem;color:var(--ink);}
  .bsky-time{font-family:'Special Elite',monospace;font-size:12px;letter-spacing:0.06em;color:var(--ink-faded);text-decoration:none;flex-shrink:0;}
  .bsky-time:hover{color:var(--coffee);text-decoration:underline;}
  .bsky-text{font-size:16px;line-height:1.6;color:var(--ink-soft);overflow-wrap:break-word;}
  .bsky-text a{color:var(--blue);}
  .bsky-imgs{display:grid;grid-template-columns:1fr;gap:0.5rem;margin-top:0.85rem;}
  .bsky-imgs.multi{grid-template-columns:1fr 1fr;}
  .bsky-imgs img{width:100%;height:auto;border-radius:6px;border:1px solid var(--line);}
  .bsky-link{display:flex;gap:0.9rem;align-items:center;margin-top:0.85rem;padding:0.85rem;border:1px solid var(--line);border-radius:6px;text-decoration:none;background:var(--off-white);}
  .bsky-link:hover{border-color:var(--coffee);}
  .bsky-link img{width:72px;height:72px;object-fit:cover;border-radius:4px;flex-shrink:0;}
  .bsky-link-txt{display:block;min-width:0;}
  .bsky-link-txt strong{display:block;font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:15.5px;color:var(--ink);line-height:1.3;}
  .bsky-link-txt span{display:block;font-size:13.5px;color:var(--ink-faded);line-height:1.45;margin-top:0.2rem;}
  .bsky-link-txt em{display:block;font-family:'Special Elite',monospace;font-style:normal;font-size:11.5px;color:var(--coffee);margin-top:0.3rem;}
  .bsky-foot{padding:1.1rem 0 0.25rem;font-size:14px;}
  .bsky-loading,.bsky-fallback{padding:1.5rem 0;font-size:16px;color:var(--ink-faded);}
  .brew-embed::-webkit-scrollbar{width:10px;}
  .brew-embed::-webkit-scrollbar-thumb{background:rgba(107,74,46,0.35);border-radius:6px;}
  .brew-embed::-webkit-scrollbar-track{background:transparent;}
  .brew .wrap{position:relative;z-index:2;}
  .brew-header{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1rem;margin-bottom:2.5rem;padding-bottom:1.25rem;border-bottom:2px solid var(--ink);}
  .brew-title{font-family:'Fraunces',serif;font-weight:900;font-style:normal;font-size:clamp(2rem,4vw,3rem);line-height:1;display:flex;align-items:center;gap:0.75rem;letter-spacing:-0.02em;font-variation-settings:"opsz" 144;}
  .live-pill{background:var(--scarlet);color:var(--white);font-family:'Inter',sans-serif;font-size:11px;font-weight:700;letter-spacing:0.2em;padding:4px 10px;text-transform:uppercase;}
  .live-pill .dot{display:inline-block;width:6px;height:6px;background:#4CD964;border-radius:50%;margin-right:6px;vertical-align:middle;box-shadow:0 0 0 0 rgba(76,217,100,0.6);animation:pulse 2s infinite;}
  @keyframes pulse{0%{box-shadow:0 0 0 0 rgba(76,217,100,0.6);}70%{box-shadow:0 0 0 8px rgba(76,217,100,0);}100%{box-shadow:0 0 0 0 rgba(76,217,100,0);}}
  .brew-date{font-family:'Special Elite',monospace;font-size:13px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-faded);text-align:right;}
  .brew-date strong{color:var(--coffee);font-family:'Inter',sans-serif;font-weight:700;text-transform:none;font-size:14px;}
  .brew-feed{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;}
  .brew-card{background:var(--off-white);border:1px solid var(--line);border-left:4px solid var(--coffee);border-radius:4px;padding:1.5rem;transition:all 0.2s;}
  .brew-card:hover{border-left-color:var(--scarlet);transform:translateX(2px);box-shadow:0 4px 14px rgba(20,17,15,0.08);}
  .brew-card.gov{border-left-color:var(--scarlet);}
  .brew-card.shop{border-left-color:var(--gold);}
  .brew-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.5rem;font-family:'Special Elite',monospace;font-size:11px;color:var(--ink-muted);text-transform:uppercase;letter-spacing:0.08em;}
  .brew-tag{background:var(--ink);color:var(--white);padding:2px 8px;font-family:'Inter',sans-serif;font-weight:700;font-size:10px;letter-spacing:0.16em;}
  .brew-tag.gov{background:var(--scarlet);}
  .brew-tag.shop{background:var(--gold);color:var(--ink);}
  .brew-tag.brew{background:var(--coffee);}
  .brew-card h4{font-family:'Fraunces',serif;font-weight:500;font-size:1.05rem;line-height:1.3;margin-bottom:0.4rem;}
  .brew-card p{font-size:14.5px;color:var(--ink-faded);}
  .brew-client{display:inline-block;margin-top:0.6rem;font-family:'Caveat',cursive;font-size:18px;color:var(--coffee);font-weight:700;}
  .brew-foot{text-align:center;margin-top:2.5rem;}

  .pf{background:var(--white);overflow:hidden;}
  .pf-viewport{position:relative;width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);}
  .pf-track{display:flex;gap:1.5rem;width:max-content;padding:1rem 0;animation:scrollx 55s linear infinite;}
  .pf-viewport:hover .pf-track.pf-viewport:focus-within .pf-track{animation-play-state:paused;}
  @keyframes scrollx{from{transform:translateX(0);}to{transform:translateX(-50%);}}
  .pf-card{flex-shrink:0;width:320px;background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow:hidden;transition:all 0.25s;}
  .pf-card:hover{transform:translateY(-6px);box-shadow:0 16px 36px rgba(20,17,15,0.14);border-color:var(--coffee);}
  .pf-shot{aspect-ratio:16/10;position:relative;overflow:hidden;background:var(--off-white);}
  .pf-shot img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform 0.4s ease;}
  .pf-card:hover .pf-shot img{transform:scale(1.04);}
  .pf-meta{padding:1rem 1.25rem 1.25rem;display:flex;align-items:center;gap:12px;}
  .pf-logo{width:46px;height:46px;flex-shrink:0;border-radius:8px;background:var(--white);border:1px solid var(--line);object-fit:contain;padding:5px;}
  .pf-info{min-width:0;flex:1;}
  .pf-info h3{font-family:'Fraunces',serif;font-weight:600;font-size:1.02rem;line-height:1.15;margin-bottom:0.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .pf-url{font-family:'Special Elite',monospace;font-size:11.5px;color:var(--coffee);letter-spacing:0.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;}
  .pf-visit{font-size:12px;font-weight:600;color:var(--blue);white-space:nowrap;flex-shrink:0;}
  .pf-card:hover .pf-visit{color:var(--coffee);}
  .pf-foot{text-align:center;margin-top:2.5rem;}

  .tst{background:#FFFFFF;}
  .reviews-firstrow{position:relative;}
  .rv-list{list-style:none;margin:0;padding:0;display:grid;gap:1rem;}
  .rv-card{background:var(--off-white);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:0 6px 6px 0;padding:1.35rem 1.5rem;}
  .rv-card[hidden]{display:none;}
  .rv-top{display:flex;align-items:baseline;justify-content:space-between;gap:0.85rem;flex-wrap:wrap;}
  .rv-name{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:1.05rem;color:var(--ink);}
  .rv-when{font-family:'Special Elite',monospace;font-size:12px;letter-spacing:0.06em;color:var(--ink-faded);}
  .rv-stars{display:block;color:var(--gold-text);letter-spacing:2px;font-size:14px;margin:0.3rem 0 0.5rem;}
  .rv-text{font-size:16px;line-height:1.6;color:var(--ink-soft);margin:0;text-wrap:pretty;}
  .rv-more{display:flex;flex-wrap:wrap;gap:0.85rem;align-items:center;margin-top:1.5rem;}
  .rv-btn{font-family:'Inter',sans-serif;font-size:13px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;padding:13px 24px;border-radius:3px;border:1.5px solid var(--coffee);background:var(--coffee);color:#fff;cursor:pointer;transition:all 0.2s;}
  .rv-btn:hover{background:var(--ink);border-color:var(--ink);}
  .rv-src{font-size:14px;color:var(--ink-faded);}
  @media (min-width:700px){.rv-list{grid-template-columns:1fr 1fr;}}
  .reviews-layout{display:grid;grid-template-columns:1fr 320px;gap:2.5rem;align-items:center;margin-top:1rem;}
  .reviews-col{min-width:0;}
  .reviews-thanks{align-self:center;}
  .reviews-thanks img{width:100%;height:auto;border-radius:10px;display:block;}
  @media (max-width:900px){.reviews-layout{grid-template-columns:1fr;gap:2rem;}.reviews-thanks{max-width:340px;margin:0 auto;}}
  .rating-badge{display:inline-flex;align-items:center;gap:0.75rem;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:8px 18px;margin:1.25rem auto 3rem;box-shadow:0 2px 10px rgba(20,17,15,0.05);}
  .rating-badge .gd{width:16px;height:16px;border-radius:50%;background:conic-gradient(#4285F4 0deg 90deg,#EA4335 90deg 180deg,#FBBC05 180deg 270deg,#34A853 270deg 360deg);}
  .rating-badge .g{font-weight:700;font-size:14px;color:var(--ink);}
  .rating-badge .num{color:var(--blue);font-weight:700;}
  .rating-badge .st{color:var(--gold-text);letter-spacing:1px;font-size:15px;}
  .rating-badge .ct{color:var(--ink-faded);font-size:13px;}
  .tst-center{text-align:center;}
  .tst-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
  .tst-card{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:1.75rem;display:flex;flex-direction:column;transition:all 0.2s;}
  .tst-card:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(20,17,15,0.10);border-color:var(--coffee);}
  .tst-logo-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;}
  .logo-ph{font-family:'Fraunces',serif;font-weight:600;font-size:15px;color:var(--blue-deep);border:1.5px solid var(--blue-deep);border-radius:3px;padding:5px 10px;line-height:1;}
  .tst-stars{color:var(--gold-text);letter-spacing:2px;font-size:16px;}
  .tst-quote{font-family:'Fraunces',serif;font-style:italic;font-size:1.05rem;line-height:1.5;color:var(--ink-soft);margin-bottom:1.25rem;flex:1;}
  .tst-quote::before{content:"\201C";font-family:'Fraunces',serif;font-size:2.5rem;line-height:0;color:var(--coffee);opacity:0.4;vertical-align:-0.4em;margin-right:0.1em;}
  .tst-by{display:flex;align-items:center;gap:0.6rem;border-top:1px dashed rgba(20,17,15,0.18);padding-top:1rem;}
  .tst-av{width:38px;height:38px;border-radius:50%;background:var(--coffee);color:var(--white);display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:600;font-size:16px;flex-shrink:0;}
  .tst-name{font-weight:600;font-size:14px;color:var(--ink);line-height:1.2;}
  .tst-role{font-size:12px;color:var(--ink-faded);}
  .tst-src{margin-left:auto;font-size:10px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-muted);display:flex;align-items:center;gap:4px;}
  .tst-src .gd{width:14px;height:14px;border-radius:50%;background:conic-gradient(#4285F4 0deg 90deg,#EA4335 90deg 180deg,#FBBC05 180deg 270deg,#34A853 270deg 360deg);}
  .tst-foot{text-align:center;margin-top:2.5rem;}

  .gov{background:var(--white);}
  .gov-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;}
  .gov-check{list-style:none;margin:1.5rem 0;}
  .gov-check li{padding-left:32px;position:relative;margin-bottom:0.65rem;font-size:16px;color:var(--ink-soft);}
  .gov-check li::before{content:"✓";position:absolute;left:0;top:1px;width:22px;height:22px;background:var(--coffee);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;}
  .gov-quote{background:var(--off-white);border:1px solid var(--line);border-left:4px solid var(--coffee);border-radius:4px;padding:2rem;position:relative;}
  .gov-quote::before{content:"\201C";position:absolute;top:-26px;left:18px;font-family:'Fraunces',serif;font-size:100px;color:var(--coffee);opacity:0.4;}
  .gov-quote p{font-family:'Fraunces',serif;font-style:italic;font-size:18px;line-height:1.55;color:var(--ink);margin-bottom:1rem;}
  .gov-quote cite{font-style:normal;font-size:12px;letter-spacing:0.15em;text-transform:uppercase;color:var(--coffee);font-weight:600;}

  .faq{background:#FFFFFF;}
  .faq-list{max-width:880px;margin:0 auto;}
  .faq-item{background:var(--off-white);border:1px solid var(--line);border-radius:4px;margin-bottom:0.85rem;overflow:hidden;transition:border-color 0.2s;}
  .faq-item:hover,.faq-item[open]{border-color:var(--coffee);}
  .faq-item summary{list-style:none;cursor:pointer;padding:1.1rem 1.5rem;font-family:'Fraunces',serif;font-weight:500;font-size:1.1rem;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:1rem;}
  .faq-item summary::-webkit-details-marker{display:none;}
  .faq-item summary::after{content:"+";font-family:'Fraunces',serif;font-size:28px;color:var(--coffee);line-height:1;flex-shrink:0;}
  .faq-item[open] summary::after{content:"\2212";}
  .faq-item .a{padding:0 1.5rem 1.4rem;font-size:15.5px;color:var(--ink-faded);line-height:1.65;}
  .faq-item .a strong{color:var(--ink);}
  .faq-item .a a{color:var(--blue);font-weight:500;text-decoration:underline;text-underline-offset:2px;}
  .faq-item .a .fine{font-size:13px;color:var(--ink-faded);font-style:italic;margin-top:0.5rem;}

  .community{background:linear-gradient(180deg,#FBF7F1,#F5EDE3);}
  .giving-closer{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:600;font-size:clamp(1.2rem,2.2vw,1.7rem);color:var(--blue);line-height:1.3;margin-top:1.5rem;white-space:nowrap;}
  @media (max-width:760px){.giving-closer{white-space:normal;}}
  .stories{background:var(--white);}
  .story-card{display:grid;grid-template-columns:1.1fr 1fr;gap:0;max-width:880px;margin:0 auto;background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden;text-decoration:none;transition:transform 0.25s,box-shadow 0.25s,border-color 0.25s;}
  .story-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(20,17,15,0.14);border-color:var(--coffee);}
  .story-img{position:relative;overflow:hidden;min-height:240px;background:var(--off-white);}
  .story-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.4s ease;}
  .story-card:hover .story-img img{transform:scale(1.05);}
  .story-body{padding:2rem;display:flex;flex-direction:column;justify-content:center;}
  .story-tag{font-family:'Inter',sans-serif;font-size:11px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--coffee);margin-bottom:0.6rem;}
  .story-body h3{font-family:'Fraunces',serif;font-weight:900;font-style:normal;font-size:1.5rem;line-height:1.12;letter-spacing:-0.02em;color:var(--ink);margin-bottom:0.7rem;font-variation-settings:"opsz" 144;}
  .story-body p{font-size:15.5px;color:var(--ink-faded);line-height:1.6;margin-bottom:1.1rem;}
  .story-link{font-family:'Inter',sans-serif;font-size:14px;font-weight:600;color:var(--blue);}
  .story-card:hover .story-link{color:var(--coffee);}
  @media (max-width:700px){.story-card{grid-template-columns:1fr;}.story-img{min-height:200px;}}
  .community-row{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:0.5rem;}
  .community-chip{background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:10px 20px;font-family:'Inter',sans-serif;font-size:14px;font-weight:600;color:var(--ink-soft);box-shadow:0 2px 10px rgba(20,17,15,0.05);}
  .community-chip:nth-child(1){color:var(--scarlet);}
  .community-chip:nth-child(2){color:var(--coffee);}
  .community-chip:nth-child(3){color:var(--blue);}

  .cta{background:var(--ink);color:var(--white);text-align:center;overflow:hidden;position:relative;}
  .cta::before{content:"";position:absolute;inset:0;background:url("../images/coffee-cta.jpg") center/cover no-repeat;z-index:0;}
  .cta::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,9,8,0.82),rgba(43,30,20,0.88));z-index:1;}
  .cta .wrap{position:relative;z-index:2;}
  .cta .script-pre{font-family:'Caveat',cursive;font-weight:700;font-size:2.2rem;color:#FFFFFF;display:inline-block;transform:rotate(-2deg);margin-bottom:0.5rem;text-shadow:0 2px 12px rgba(0,0,0,0.4);}
  .cta h2{color:var(--white);font-size:clamp(2rem,4.2vw,3rem);}
  .cta h2 em{font-style:italic;color:var(--coffee-light);}
  .cta p{font-size:18px;color:rgba(255,255,255,0.85);max-width:560px;margin:0 auto 2rem;}
  .cta-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;}
  .cta .btn-primary{background:var(--white);color:var(--ink);border-color:var(--white);}
  .cta .btn-primary:hover{background:var(--coffee);color:var(--white);border-color:var(--coffee);}
  .cta .btn-ghost{color:var(--white);border-color:var(--white);}
  .cta .btn-ghost:hover{background:var(--white);color:var(--ink);}

  footer{background:#FFFFFF;padding:3rem 0 1.5rem;}
  .foot-grid{display:grid;grid-template-columns:2.2fr 1fr 1fr 1.3fr;gap:2rem;margin-bottom:2rem;}
  .foot-brand .mark{font-family:'Fraunces',serif;font-style:italic;font-weight:900;font-size:1.6rem;font-variation-settings:"opsz" 144;color:var(--ink);}
  .foot-brand p{font-size:14px;color:var(--ink-faded);max-width:300px;margin-top:0.5rem;}
  .foot-social{display:flex;gap:0.6rem;margin-top:1rem;}
  .foot-social a{width:38px;height:38px;border-radius:50%;background:var(--panel);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--ink);transition:all 0.2s;}
  .foot-social a:hover{background:var(--coffee);color:var(--white);border-color:var(--coffee);transform:translateY(-2px);}
  .foot-social svg{width:18px;height:18px;}
  .substack-card{background:var(--coffee);color:var(--white);border-radius:6px;padding:1.25rem;margin-top:0.5rem;}
  .substack-card .st-k{font-family:'Caveat',cursive;font-weight:700;font-size:1.3rem;line-height:1.1;}
  .substack-card .st-sub{font-size:13px;color:rgba(255,255,255,0.85);margin:0.3rem 0 0.75rem;}
  .substack-card a{display:inline-block;background:var(--white);color:var(--coffee);font-size:12px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;padding:8px 14px;border-radius:3px;}
  footer h3,footer h4{font-family:'Inter',sans-serif;color:var(--coffee);font-size:12px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;margin-bottom:0.85rem;}
  footer ul{list-style:none;}
  footer li{margin-bottom:0.4rem;}
  footer a{color:var(--ink-soft);font-size:14.5px;text-decoration:none;}
  footer a:hover{color:var(--coffee);}
  .foot-bottom{padding-top:1.25rem;font-family:'Special Elite',monospace;font-size:13px;color:var(--ink-faded);text-align:center;}
  .foot-bottom a{color:var(--ink-faded);}

  @media (max-width:980px){.hero-grid,.doj-grid,.gov-grid,.brew-feed{grid-template-columns:1fr;gap:2.5rem;}.brew-layout{grid-template-columns:1fr;gap:1.5rem;}.brew-side{position:static;max-width:360px;margin:0 auto;}.tst-grid{grid-template-columns:1fr 1fr;}.svc-grid{grid-template-columns:1fr 1fr;}.doj-stats{grid-template-columns:1fr 1fr;}.foot-grid{grid-template-columns:1fr 1fr;}
    .nav-toggle{display:block;}
    .nav-cta-desktop{display:none;}
    .nav .wrap{flex-wrap:wrap;}
    .nav-links{display:flex;flex-direction:column;align-items:stretch;gap:0;width:100%;max-height:0;overflow:hidden;transition:max-height 0.3s ease;order:3;}
    .nav.open .nav-links{max-height:480px;margin-top:0.5rem;}
    .nav-links li{border-top:1px solid rgba(255,255,255,0.08);}
    .nav-links a{display:block;padding:14px 4px;}
    .nav-links a::after{display:none;}
    .nav-cta-mobile{display:block;border-top:none !important;padding-top:0.75rem;}
    .nav-cta-mobile .nav-cta{display:inline-block;}
    .hero{min-height:0 !important;height:auto !important;display:block !important;background:var(--blue);overflow:hidden;padding:0 !important;}
    
    .hero-lastframe{display:none !important;}
    .hero-scrim{display:none !important;}
    .hero-mobile-bg{display:block;position:relative;width:100%;height:52vh;max-height:460px;min-height:300px;font-size:0;line-height:0;margin:0;padding:0;}
    .hero-mobile-bg img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 30%;vertical-align:top;}
    /* the copy card laps up over the photo so the two read as one piece */
    .hero .wrap{display:block;position:relative;z-index:2;margin-top:-3.25rem;
                padding-top:0;padding-bottom:2.5rem;background:transparent;}
    .hero .hero-copy{background:rgba(12,10,9,0.90) !important;border-radius:18px 18px 14px 14px !important;
                     padding:1.5rem !important;max-width:100%;
                     box-shadow:0 -14px 34px rgba(12,10,9,0.28),0 14px 30px rgba(12,10,9,0.22) !important;
                     backdrop-filter:blur(3px);}
    .hero-copy>*{opacity:1 !important;transform:none !important;}
  }
  @media (max-width:600px){.tst-grid{grid-template-columns:1fr;}.svc-grid{grid-template-columns:1fr;}.trust-stat{border-right:none;border-bottom:1px solid var(--line);padding-bottom:1rem;}.foot-grid{grid-template-columns:1fr;}.brew-header{flex-direction:column;align-items:flex-start;}}
  @media (prefers-reduced-motion:reduce){.pf-track.brew-steam.live-pill .dot{animation:none !important;}.pf-viewport{overflow-x:auto;}.hero-lastframe{display:none;}.hero{background:var(--ink);}.hero.reveal .hero-copy{background:transparent;box-shadow:none;padding:0;}.hero-copy>*{opacity:1 !important;transform:none !important;}*,*::before,*::after{transition-duration:0.01ms !important;}}

  .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
  .foot-award-band{display:flex;align-items:center;gap:1.5rem;background:var(--blue);border-radius:10px;padding:1.25rem 1.75rem;margin-bottom:1.9rem;}
  .foot-award-band a.award-img{flex-shrink:0;display:block;line-height:0;}
  .foot-award-band img{width:118px;height:auto;border-radius:6px;}
  .foot-award-copy strong{display:block;font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:1.18rem;color:#fff;line-height:1.2;margin-bottom:0.25rem;letter-spacing:-0.01em;}
  .foot-award-copy strong em{font-style:italic;color:#EDD4AE;}
  .foot-award-copy span{font-size:14px;color:rgba(255,255,255,0.85);line-height:1.5;}
  @media (max-width:600px){.foot-award-band{flex-direction:column;text-align:center;gap:1rem;padding:1.5rem;}}
