:root{
      --bg:#fff;
      --panel:#f3f5f0;
      --panel-2:#f6f8f2;
      --ink:#20231e;
      --muted:#656b60;
      --line:#e4e8de;
      --accent:#47651f;
      --rose:#c93470;
      --lime:#d3f58a;
      --lime-strong:#c5ed70;
      --pink:#ffa7c7;
      --pink-soft:#ffe5ef;
      --dark:#141613;
      --white:#fff;
      --radius:28px;
      --max:1320px;
      --pad:clamp(20px,4.5vw,76px);
      --shadow:0 18px 60px rgba(26,35,17,.09);
      --label-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    }
    *,*::before,*::after{box-sizing:border-box}
    html{scroll-behavior:smooth;scroll-padding-top:124px}
    body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
    ::selection{background:var(--pink);color:var(--dark)}
    a{color:inherit;text-decoration:none}
    button{font:inherit}
    button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
    button{cursor:pointer}
    img{display:block;width:100%;height:auto}
    svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;flex-shrink:0}
    a:focus-visible,button:focus-visible{outline:3px solid var(--rose);outline-offset:6px}
    h1,h2,h3,h4,p{margin:0}
    h1,h2,h3,h4{font-weight:800}
    p{line-height:1.65}
    address{font-style:normal}
    .wrap{width:min(var(--max),100% - var(--pad)*2);margin-inline:auto}
    .eyebrow,.flavor-tag,.product-label,.visit-details h3,.about-photo span{font-family:var(--label-font)}
    .eyebrow{font-size:14px;line-height:1.45;letter-spacing:.025em;text-transform:none;font-weight:700}
    .muted{color:var(--muted)}
    .skip{position:fixed;top:12px;left:12px;z-index:100;background:var(--lime);color:var(--dark);padding:14px 22px;transform:translateY(-150%);border-radius:8px}.skip:focus{transform:translateY(0)}

    /* Navigation */
    .nav-shell{position:sticky;top:0;z-index:40;background:var(--white);border-bottom:1px solid var(--line)}
    .nav{display:flex;align-items:center;justify-content:space-between;min-height:106px;gap:30px}
    .logo{flex-shrink:0;background:white;padding:12px 16px;border-radius:10px;display:block;width:202px;transition:transform .2s}.logo:hover{transform:rotate(-2deg)}
    .logo img{width:170px;height:48px;object-fit:contain}
    .nav-links{display:flex;align-items:center;gap:28px}
    .nav-links>a{font-size:16px;font-weight:600;color:#444b3d;transition:color .2s}
    .nav-links>a:hover,.nav-links>a[aria-current="page"]{color:var(--accent)}
    .nav-links .nav-visit{background:#f6f9f0;display:flex;align-items:center;gap:18px;border:1px solid #d9e4ca;padding:14px 19px;border-radius:999px;color:var(--accent)}
    .menu-toggle{display:none;background:none;border:1px solid var(--line);color:var(--ink);border-radius:999px;padding:12px 16px;align-items:center;gap:12px}

    /* Hero */
    .hero{position:relative;padding-top:42px;padding-bottom:36px;display:grid;grid-template-columns:1.08fr 1fr;gap:5%;align-items:center;min-height:720px}
    .hero-copy{padding:20px 0 35px;position:relative;z-index:2;animation:copy-in .8s .1s both}
    .hero .eyebrow{display:flex;align-items:center;gap:13px;color:var(--accent);margin-bottom:34px;font-size:14px;font-weight:700;letter-spacing:.025em}
    .hero .eyebrow::before{content:"";display:block;width:28px;height:1px;background:var(--accent)}
    h1{font-size:clamp(64px,7.45vw,110px);line-height:.94;letter-spacing:-.072em;margin-left:-5px}
    h1>span{display:block}
    .sweet-word{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;letter-spacing:-.07em;color:var(--rose);font-size:1.15em;line-height:1.05}
    .hero-description{max-width:480px;color:var(--muted);font-size:19px;line-height:1.7;margin-top:28px}
    .hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:32px}
    .hero-actions .button{min-height:60px;padding:21px 29px;font-size:16px}
    .hero-actions .text-link{padding-block:12px;font-size:16px}
    .button{display:inline-flex;justify-content:center;align-items:center;gap:24px;border:0;border-radius:999px;padding:19px 25px;font-weight:700;font-size:14px;line-height:1.2;transition:background .2s,transform .2s,box-shadow .2s;min-height:54px}
    .button svg{width:18px;height:18px}
    .button-primary{background:var(--lime);color:var(--dark)}
    .button-primary:hover{background:var(--lime-strong);transform:translateY(-3px);box-shadow:0 10px 28px #47651f18}
    .button-dark{background:var(--dark);color:var(--white)}
    .button-dark:hover{background:#31352d;transform:translateY(-3px)}
    .text-link{font-size:14px;font-weight:600;padding-block:10px;border-bottom:1px solid #a6af9a;transition:color .2s,border-color .2s}
    .text-link:hover{color:var(--accent);border-color:var(--accent)}
    .hero-visual{position:relative;isolation:isolate;min-width:0;align-self:stretch;min-height:600px;margin:0}
    .hero-photo{height:100%;position:absolute;inset:0;border-radius:190px 190px 26px 26px;overflow:hidden;background:var(--panel)}
    .hero-photo>img{height:100%;object-fit:cover;object-position:50% 49%;animation:photo-in 1.2s ease-out both}
    .hero-photo::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#151713b8);pointer-events:none}
    .photo-note{position:absolute;bottom:26px;left:28px;right:28px;color:white;z-index:1}
    .photo-note p{font-size:23px;font-weight:700;letter-spacing:-.035em;line-height:1.25}
    .hero-stamp{position:absolute;right:-19px;top:28px;width:122px;height:122px;background:var(--pink);color:var(--dark);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:13px;letter-spacing:.06em;line-height:1.5;font-weight:700;text-align:center;transform:rotate(12deg);z-index:2;border:5px solid var(--bg);animation:stamp-in .7s .3s both}
    .hero-stamp span{display:block;white-space:nowrap;font-size:12px;line-height:1.25;letter-spacing:.045em}
    .hero-stamp strong{font-size:32px;line-height:1.05;letter-spacing:-.07em}
    .flavor-strip{background:var(--lime);color:var(--dark);overflow:hidden;padding:23px 0;margin-top:24px}
    .strip-content{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(24px,4vw,70px);white-space:nowrap;font-size:clamp(18px,2vw,28px);letter-spacing:-.035em;font-weight:800}
    .strip-content i{font-style:normal;font-weight:400;font-size:25px}.strip-content span{display:inline-flex;align-items:center;gap:clamp(24px,4vw,70px)}

    /* Shared section language */
    .section{padding-block:105px}
    .section-intro{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:44px}
    .section-intro .eyebrow{color:var(--accent);margin-bottom:18px}
    .section-title{font-size:clamp(40px,5vw,68px);line-height:1.02;letter-spacing:-.055em}
    .section-intro>p{max-width:340px;color:var(--muted);font-size:16px;padding-bottom:3px}
    .section-rule{border-top:1px solid var(--line)}
    .split-title{font-size:clamp(48px,7vw,94px);letter-spacing:-.065em;line-height:.95}
    .split-title em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--rose)}

    /* Overview cards */
    .overview{padding-block:104px 118px}
    .product-grid{display:grid;grid-template-columns:1.12fr 1fr 1fr;gap:24px;align-items:start}
    .product{min-width:0}.product:nth-child(2){margin-top:64px}.product:nth-child(3){margin-top:128px}
    .product-photo{position:relative;display:block;overflow:hidden;border-radius:18px;aspect-ratio:4/5;background:var(--panel)}
    .product-photo img{height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
    .product-photo:hover img{transform:scale(1.06)}
    .product-label{position:absolute;left:18px;top:18px;background:var(--white);color:var(--dark);border-radius:999px;font-size:12px;font-weight:700;padding:10px 14px;z-index:1}
    .product:nth-child(2) .product-label{background:var(--pink)}.product:nth-child(3) .product-label{background:var(--lime)}
    .photo-arrow{position:absolute;right:18px;bottom:18px;width:46px;height:46px;background:var(--white);color:var(--dark);display:grid;place-items:center;border-radius:50%;transition:transform .3s}
    .product-photo:hover .photo-arrow{transform:rotate(-35deg)}
    .product-info{padding-top:22px}.product-info h3{font-size:26px;letter-spacing:-.04em;line-height:1.15;margin-bottom:12px}
    .product-info p{color:var(--muted);font-size:15px;line-height:1.65;max-width:340px}
    .product-info>a{display:inline-block;color:var(--accent);font-weight:700;font-size:14px;margin-top:20px;border-bottom:1px solid transparent;padding-bottom:5px}.product-info>a:hover{border-color:var(--accent)}

    /* Froyo */
    .froyo{background:var(--panel-2);padding-block:106px 118px}
    .froyo-head{display:grid;grid-template-columns:1.15fr .85fr;gap:8%;align-items:end;margin-bottom:56px}
    .froyo-head .eyebrow{color:var(--accent);margin-bottom:20px;font-size:14px;font-weight:700}
    .froyo-head p:last-child{color:var(--muted);font-size:20px;line-height:1.7;max-width:540px;padding-bottom:8px}
    .flavor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
    .flavor-card{background:var(--white);border:1px solid var(--line);border-radius:22px;overflow:hidden;min-width:0;transition:transform .25s,box-shadow .25s,border-color .25s}
    .flavor-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#d4dacd}
    .flavor-image{aspect-ratio:1/1;background:#fff;overflow:hidden;display:grid;place-items:center;padding:8px}
    .flavor-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
    .flavor-card:hover .flavor-image img{transform:scale(1.06)}
    .flavor-card.white-image .flavor-image img{object-fit:contain;padding:12px}
    .flavor-copy{padding:20px 20px 22px}
    .flavor-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}
    .flavor-tag{font-size:15px;text-transform:none;letter-spacing:.025em;font-weight:700;color:var(--accent)}
    .flavor-copy h3{font-size:26px;letter-spacing:-.04em;line-height:1.1}
    .flavor-copy p{font-size:16px;color:var(--muted);margin-top:9px;line-height:1.6}
    .toppings-callout{margin-top:24px;border-radius:28px;background:var(--dark);color:white;display:grid;grid-template-columns:1.05fr 1fr;overflow:hidden;min-height:420px}
    .toppings-photo{min-height:420px}.toppings-photo img{height:100%;object-fit:cover}
    .toppings-copy{padding:clamp(34px,5vw,72px);display:flex;flex-direction:column;justify-content:center}
    .toppings-copy .eyebrow{color:var(--lime);margin-bottom:20px;font-size:14px;font-weight:700}
    .toppings-copy h3{font-size:clamp(42px,4.8vw,68px);line-height:1;letter-spacing:-.055em;max-width:560px}
    .toppings-copy p{color:#d7dbd3;font-size:19px;line-height:1.7;max-width:540px;margin-top:24px}
    .toppings-copy .button{align-self:flex-start;margin-top:28px;background:var(--lime);color:var(--dark);font-size:16px}

    /* Drinks */
    .drinks{padding-block:112px 124px}
    .drinks-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:5%;align-items:stretch;margin-bottom:28px}
    .drinks-copy{background:linear-gradient(145deg,var(--pink-soft),#ffeaf2);border:1px solid #f3d4df;border-radius:28px;padding:clamp(38px,5vw,72px);display:flex;flex-direction:column;justify-content:center}
    .drinks-copy .eyebrow{margin-bottom:20px;font-size:14px;font-weight:700}.drinks-copy h2{font-size:clamp(52px,7vw,96px);line-height:.91;letter-spacing:-.07em}
    .drinks-copy h2 em{font-family:Georgia,serif;font-weight:400;color:var(--rose)}
    .drinks-copy>p{max-width:470px;margin-top:25px;color:#51464a;font-size:19px;line-height:1.7}
    .drinks-visual{min-height:560px;border-radius:28px;overflow:hidden;position:relative;background:var(--panel)}
    .drinks-visual img{height:100%;object-fit:cover}
    .drinks-badge{position:absolute;right:26px;bottom:26px;width:120px;height:120px;border-radius:50%;background:var(--lime);display:grid;place-items:center;text-align:center;font-weight:800;font-size:14px;line-height:1.3;transform:rotate(-7deg);border:5px solid white}
    .drink-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}
    .drink-card{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:white;display:grid;grid-template-columns:200px 1fr;min-height:310px}
    .drink-card-photo{min-height:310px;background:var(--panel)}
    .drink-card-photo img{height:100%;object-fit:cover}
    .drink-card-body{padding:28px 28px 30px}
    .drink-card-body .eyebrow{color:var(--accent);font-size:15px;line-height:1.3;letter-spacing:.03em;margin-bottom:12px;font-weight:700}
    .drink-card-body h3{font-size:35px;letter-spacing:-.045em;line-height:1}
    .drink-card-body>p{font-size:16px;line-height:1.6;color:var(--muted);margin-top:12px;max-width:520px}
    .chip-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
    .chip{display:inline-flex;padding:9px 12px;border-radius:999px;background:#f5f7f2;border:1px solid #e4e9df;font-size:14px;line-height:1.1;color:#46503f}
    .protein-note{margin-top:18px;background:var(--lime);border-radius:18px;padding:16px 18px;font-weight:800;font-size:16px;display:flex;align-items:center;gap:12px}
    .protein-note strong{font-size:28px;letter-spacing:-.04em}

    /* About */
    .about{background:var(--white);color:var(--ink);padding-block:112px}
    .about-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:8%;align-items:start}
    .about-intro .eyebrow{color:var(--accent);margin-bottom:24px;font-size:14px;font-weight:700}
    .about-intro h2{font-size:clamp(50px,6.5vw,92px);letter-spacing:-.065em;line-height:.95}
    .about-intro h2 em{font-family:Georgia,serif;font-weight:400;color:var(--rose)}
    .about-copy{padding-top:20px}
    .about-copy .lede{font-size:21px;color:#394033;line-height:1.55;letter-spacing:-.015em}
    .about-copy p+p{margin-top:18px;color:var(--muted);font-size:18px;line-height:1.7}
    .about-gallery{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:300px 300px;gap:16px;margin-top:68px}
    .about-photo{border-radius:22px;overflow:hidden;position:relative;background:var(--panel)}
    .about-photo img{height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
    .about-photo:hover img{transform:scale(1.035)}
    .about-photo:first-child{grid-row:1/3}
    .about-photo:nth-child(4){grid-column:2/4}
    .about-photo span{position:absolute;left:18px;bottom:18px;background:#ffffffdb;color:var(--dark);padding:10px 13px;border-radius:999px;font-size:13px;font-weight:700;text-transform:none;letter-spacing:.025em;backdrop-filter:blur(8px)}
    .moment{padding-block:96px 104px;background:linear-gradient(125deg,#ffedf4 0%,var(--pink-soft) 58%,#ffdeea 100%);border-block:1px solid #f3ccd9}
    .moment-inner{display:grid;grid-template-columns:190px 1fr;gap:clamp(42px,7vw,100px);align-items:center}
    .moment-mark{width:164px;height:164px;border-radius:50%;display:grid;place-items:center;padding-top:34px;background:#ffffff80;border:1px solid #ffffffb8;box-shadow:0 18px 50px #a82b5c12;font-size:142px;line-height:.7;font-family:Georgia,serif;color:var(--rose)}
    .moment-copy .eyebrow{margin-bottom:20px;font-size:14px;font-weight:700;color:#68464f}.moment-copy h3{font-size:clamp(40px,5vw,70px);line-height:1.01;letter-spacing:-.055em;max-width:790px}

    /* Visit */
    .visit{background:var(--panel-2);color:var(--dark);padding-block:84px 72px;position:relative}
    .visit-heading{display:flex;justify-content:space-between;align-items:start;gap:50px;margin-bottom:65px}
    .visit-heading h2{font-size:clamp(56px,8.4vw,118px);line-height:.94;letter-spacing:-.068em}.visit-heading h2 span{display:block}
    .visit-details{display:grid;grid-template-columns:1.15fr 1.25fr 1fr;gap:50px;padding-top:34px;border-top:1px solid #14161340}
    .visit-details h3{font-size:16px;letter-spacing:.025em;text-transform:none;font-weight:700;margin-bottom:20px}
    .visit-address{font-size:25px;letter-spacing:-.04em;line-height:1.35;font-weight:600}
    .visit-details .text-link{display:inline-flex;margin-top:15px;gap:20px;align-items:center;border-color:#14161360;font-size:16px}
    .visit-details .text-link:hover{color:#405526;border-color:#405526}
    .hours{margin:0;font-size:17px}.hours>div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #14161325;padding:0 0 12px;margin-bottom:12px}.hours dd{margin:0;text-align:right;white-space:nowrap}.hours dt{font-weight:600}
    .visit-contact{display:flex;flex-direction:column;align-items:flex-start;gap:13px;font-size:17px;overflow-wrap:anywhere}.visit-contact a:hover{text-decoration:underline;text-underline-offset:4px}.visit-contact a:first-child{font-size:25px;font-weight:600;letter-spacing:-.04em}
    .visit-social{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.visit-social a{font-size:12px;font-weight:700;border:1px solid #cbd1c3;border-radius:999px;padding:9px 12px;transition:background .2s,border-color .2s}.visit-social a:hover{background:white;border-color:#aeb8a3}


    /* Single-file routed pages */
    .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
    .site-page[hidden]{display:none!important}
    .site-page:focus{outline:none}
    .site-page.is-entering{animation:route-in .48s cubic-bezier(.2,.7,.2,1) both}
    @keyframes route-in{from{opacity:.15;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
    .home-cta{background:var(--pink-soft);padding-block:82px 88px;border-top:1px solid #f3cbd9}
    .home-cta-inner{display:grid;grid-template-columns:1.12fr .88fr;gap:9%;align-items:end}
    .home-cta .eyebrow{color:var(--rose);margin-bottom:18px}
    .home-cta h2{font-size:clamp(46px,6.2vw,82px);line-height:.98;letter-spacing:-.062em}
    .home-cta h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--rose)}
    .home-cta-copy>p{font-size:18px;color:#58454d;max-width:460px}
    .home-cta .text-link{border-color:#9b6e7e}
    @media(max-width:860px){.home-cta{padding-block:66px}.home-cta-inner{gap:6%}.home-cta-copy>p{font-size:16px}}
    @media(max-width:700px){.home-cta{padding-block:56px}.home-cta-inner{grid-template-columns:1fr;gap:28px}.home-cta h2{font-size:50px}.home-cta .hero-actions{flex-direction:row;align-items:center}}
    @media(max-width:460px){.home-cta .hero-actions{flex-direction:column;align-items:flex-start}}

    /* Footer */
    .footer{padding-block:34px 26px}
    .footer-main{display:flex;justify-content:space-between;align-items:center;gap:35px;padding-bottom:30px;border-bottom:1px solid var(--line)}
    .footer-brand{display:block;width:180px;flex-shrink:0}
    .footer-brand img{width:100%;height:auto;object-fit:contain}
    .social-links{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:15px;color:#505849;max-width:480px;justify-content:flex-end}.social-links a{padding-block:9px}.social-links a:hover{color:var(--accent)}
    .footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:22px;font-size:12px;color:var(--muted)}.footer-bottom a{display:flex;align-items:center;gap:10px}.footer-bottom svg{height:15px;width:15px}

    /* Motion */
    @keyframes copy-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
    @keyframes photo-in{from{transform:scale(1.08)}to{transform:scale(1)}}
    @keyframes stamp-in{from{opacity:0;transform:rotate(-12deg) scale(.8)}to{opacity:1;transform:rotate(12deg) scale(1)}}
    .will-reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.will-reveal.is-visible{opacity:1;transform:translateY(0)}

    /* Responsive */
    @media(min-width:1600px){.hero{min-height:800px}.hero-visual{min-height:670px}}
    @media(max-width:1120px){
      .nav-links{gap:19px}.hero{gap:4%;min-height:650px}.hero-visual{min-height:550px}h1{font-size:clamp(60px,8vw,88px)}
      .flavor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.drink-card{grid-template-columns:160px 1fr}.visit-details{gap:32px}.about-gallery{grid-template-rows:260px 260px}
    }
    @media(max-width:860px){
      :root{--pad:26px}.nav{min-height:92px;gap:15px}.logo{width:176px;padding:10px 13px}.logo img{width:150px;height:42px}
      .nav-links{gap:15px}.nav-links>a{font-size:15px}.nav-links .nav-visit{padding:12px 15px;gap:12px}
      .hero{padding-top:32px;min-height:0;gap:25px;align-items:start}.hero-copy{padding-top:22px}h1{font-size:65px}.hero-description{font-size:18px}.hero-visual{min-height:530px}.hero-photo{border-radius:160px 160px 22px 22px}.hero-stamp{width:100px;height:100px;right:-12px;font-size:11px}.hero-stamp span{font-size:11px}.hero-stamp strong{font-size:27px}
      .section,.overview{padding-block:76px}.product-grid{gap:18px}.product-info h3{font-size:24px}
      .froyo{padding-block:78px}.froyo-head{grid-template-columns:1fr;gap:22px}.flavor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.toppings-callout{grid-template-columns:1fr 1fr}
      .drinks{padding-block:78px}.drinks-hero{grid-template-columns:1fr 1fr}.drinks-visual{min-height:500px}.drink-grid{grid-template-columns:1fr}.drink-card{grid-template-columns:220px 1fr}
      .about{padding-block:78px}.about-intro{gap:45px}.about-gallery{grid-template-columns:1fr 1fr;grid-template-rows:320px 260px 260px}.about-photo:first-child{grid-row:auto;grid-column:1/-1}.about-photo:nth-child(4){grid-column:1/-1}
      .moment-inner{grid-template-columns:164px 1fr;gap:42px}.visit{padding-block:62px 50px}.visit-heading{gap:30px}.visit-details{grid-template-columns:1fr 1fr;gap:34px}.visit-details>div:last-child{grid-column:1/-1}.visit-contact{flex-direction:row;align-items:center;flex-wrap:wrap;gap:22px}.footer-main{align-items:start}.social-links{max-width:280px;gap:8px 17px}
    }
    @media(max-width:700px){
      :root{--pad:20px}
      .hero{grid-template-columns:1fr;padding-top:30px;gap:20px;padding-bottom:24px}.hero-copy{padding:0}.hero .eyebrow{font-size:14px;margin-bottom:25px}.hero .eyebrow::before{width:23px}h1{font-size:clamp(66px,15.4vw,93px);letter-spacing:-.065em}.hero-description{font-size:18px;max-width:420px;margin-top:22px}.hero-actions{flex-direction:row;align-items:center;gap:22px;margin-top:25px}.hero-visual{min-height:500px;margin-top:22px}.hero-photo{border-radius:170px 170px 22px 22px}.hero-stamp{width:110px;height:110px;right:0;top:10px;font-size:12px}.hero-stamp strong{font-size:30px}.photo-note{left:24px;right:24px}.photo-note p{font-size:25px}.flavor-strip{margin-top:10px;padding-block:19px}.strip-content{font-size:18px;gap:14px 24px;justify-content:center;width:100%;padding-inline:20px;white-space:normal}.strip-content span{gap:12px;max-width:100%}
      .section-intro{display:block;margin-bottom:30px}.section-intro>p{margin-top:21px;max-width:360px;font-size:16px}.section-title{font-size:45px}
      .product-grid{display:block}.product,.product:nth-child(2),.product:nth-child(3){margin:0 0 38px;display:block}.product:last-child{margin-bottom:0}.product-photo{aspect-ratio:1/1.06}.product-info{padding-top:21px}.product-info h3{font-size:29px}.product-info p{max-width:none;font-size:16px}
      .froyo-head p:last-child{font-size:18px}.split-title{font-size:55px}.flavor-grid{grid-template-columns:1fr 1fr;gap:12px}.flavor-copy{padding:18px}.flavor-copy h3{font-size:23px}.flavor-copy p{font-size:15px}.toppings-callout{grid-template-columns:1fr;min-height:0}.toppings-photo{min-height:330px}.toppings-copy{padding:34px 28px 38px}
      .drinks-hero{grid-template-columns:1fr;align-items:start}.drinks-copy{min-height:0;padding:42px 30px 46px;justify-content:flex-start}.drinks-copy .eyebrow{margin-bottom:22px}.drinks-copy h2{font-size:64px}.drinks-visual{min-height:480px}.drink-card{grid-template-columns:1fr;min-height:0}.drink-card-photo{min-height:300px}.drink-card-body{padding:26px}.drink-card-body h3{font-size:35px}
      .about-intro{grid-template-columns:1fr;gap:30px}.about-intro h2{font-size:58px}.about-copy{padding-top:0}.about-copy .lede{font-size:19px}.about-gallery{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:280px 220px 260px;gap:10px;margin-top:48px}.about-photo:first-child{grid-column:1/-1}.about-photo:nth-child(4){grid-column:1/-1}.about-photo span{left:12px;bottom:12px}
      .moment{padding-block:60px 68px}.moment-inner{grid-template-columns:1fr;gap:26px}.moment-mark{width:104px;height:104px;padding-top:22px;font-size:90px}.moment-copy h3{font-size:43px}
      .visit{padding-block:60px 64px}
      .visit-heading{margin-bottom:44px}
      .visit-heading h2{font-size:clamp(53px,13.3vw,80px)}
      .visit-details{display:block;padding-top:38px}
      .visit-details>div+div{margin-top:56px}
      .visit-details h3{margin-bottom:24px}
      .visit-details .text-link{margin-top:24px}
      .visit-address{font-size:26px}
      .hours{max-width:390px;font-size:17px}
      .hours>div{padding-bottom:16px;margin-bottom:16px;flex-wrap:wrap;gap:8px 16px}
      .hours>div:last-child{margin-bottom:0}
      .visit-contact{display:flex;flex-direction:column;gap:22px;align-items:flex-start;font-size:17px}
      .visit-contact a:first-child{font-size:26px}
      .footer{padding-block:28px 22px}.footer-main{flex-direction:column;gap:21px;padding-bottom:20px}.social-links{justify-content:flex-start;max-width:none;gap:4px 20px;font-size:15px}.footer-bottom{align-items:start;gap:20px;font-size:11px}.footer-bottom>span{max-width:220px;line-height:1.65}
    }
    @media(max-width:460px){
      .flavor-grid{grid-template-columns:1fr}.flavor-image{aspect-ratio:1.15/1}.hero-actions{align-items:flex-start;flex-direction:column}.drinks-visual{min-height:410px}.about-gallery{display:block}.about-photo{height:270px;margin-bottom:10px}.about-photo:last-child{margin-bottom:0}.footer-bottom{flex-direction:column}
    }
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.will-reveal{opacity:1;transform:none}}

    /* Homepage preserved from the original redesign */
    .home-page .flavor-strip{margin-top:0}
    .home-page .menu-section{padding-block:105px 112px}
    .home-page .menu-section .section-intro .eyebrow{font-size:14px;font-weight:700}
    .home-page .menu-section .section-intro>p{max-width:400px;font-size:18px;line-height:1.7}
    .home-page .product-label{font-size:14px;padding:11px 15px}
    .home-page .product-info h3{font-size:29px}
    .home-page .product-info p{max-width:380px;font-size:17px;line-height:1.7}
    .home-page .product-info>a{font-size:16px}
    .home-page .home-about{background:var(--bg);color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:72px;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}
    .home-page .home-about .eyebrow{color:var(--accent);margin-bottom:24px;font-size:14px;font-weight:700}
    .home-page .home-about h2{font-size:clamp(38px,4.6vw,63px);letter-spacing:-.06em;line-height:1.05}
    .home-page .home-about h2 em{color:var(--rose);font-family:Georgia,serif;font-weight:400}
    .home-page .home-about .about-copy{padding-top:24px}
    .home-page .home-about .about-copy>p{font-size:20px;letter-spacing:-.02em;line-height:1.6;max-width:495px;color:#505849}
    .home-page .home-about .about-copy .text-link{display:inline-block;margin-top:24px;color:inherit;font-size:16px}
    @media(max-width:800px){.home-page .menu-section{padding-block:75px}.home-page .home-about{gap:40px;padding-block:55px}.home-page .home-about .about-copy{padding-top:0}.home-page .home-about .about-copy>p{font-size:18px}}
    @media(max-width:620px){.home-page .menu-section{padding-block:64px}.home-page .home-about{grid-template-columns:1fr;gap:26px;padding-block:48px}.home-page .home-about h2{font-size:45px}.home-page .home-about .eyebrow{margin-bottom:18px}.home-page .home-about .about-copy>p{font-size:19px}.home-page .home-about .about-copy .text-link{margin-top:19px}}

/* Shared utility. */
[hidden]{display:none!important}
figure{margin:0}

/* Collapse the enlarged navigation before the links become crowded. */
@media(max-width:860px){
  .nav{flex-wrap:wrap;gap:0;padding-block:14px;min-height:92px}
  .js .menu-toggle{display:inline-flex}
  .nav-links{width:100%;flex-wrap:wrap;gap:6px 20px;padding-top:16px;padding-bottom:5px}
  .js .nav-links{display:none}.js .nav-links.is-open{display:flex}
  .nav-links>a{font-size:16px;padding-block:12px}
  .nav-links .nav-visit{border:0;padding:12px 0;border-radius:0;background:transparent}
}

/* Major section labels use a leading rule for clearer visual hierarchy. */
.hero .eyebrow,
.home-page .menu-section .section-intro .eyebrow,
.home-page .home-about .eyebrow,
.froyo-head .eyebrow,
.toppings-copy>.eyebrow,
.drinks-copy>.eyebrow,
.about-intro .eyebrow,
.moment-copy>.eyebrow{
  display:flex;
  align-items:center;
  gap:13px;
  font-size:clamp(15px,1.05vw,16px);
  line-height:1.4;
}
.hero .eyebrow::before,
.home-page .menu-section .section-intro .eyebrow::before,
.home-page .home-about .eyebrow::before,
.froyo-head .eyebrow::before,
.toppings-copy>.eyebrow::before,
.drinks-copy>.eyebrow::before,
.about-intro .eyebrow::before,
.moment-copy>.eyebrow::before{
  content:"";
  display:block;
  width:28px;
  height:1px;
  flex:0 0 28px;
  background:currentColor;
  opacity:.8;
}

.toppings-copy>.eyebrow{font-size:17px}

/* The homepage hero is the single primary marker; other sections stay clean. */
.home-page .menu-section .section-intro .eyebrow::before,
.home-page .home-about .eyebrow::before,
.froyo-head .eyebrow::before,
.toppings-copy>.eyebrow::before,
.drinks-copy>.eyebrow::before,
.about-intro .eyebrow::before,
.moment-copy>.eyebrow::before{
  display:none;
}
