.gatewayPage { --coffee-dark:#1C1B18; --coffee-brown:#8A694F; --coffee-paper:#F4EFE6; --coffee-surface:#EDE4D6; --coffee-sand:#D8C7AE; color:var(--coffee-dark); background:var(--coffee-paper); }
.coffeeSite .brand { width:220px; overflow:hidden; }
.coffeeSite .brand img { height:70px; transform:scale(1.42); }
.coffeeSite .footerBrand { overflow:hidden; }
.coffeeSite .footerBrand img { width:220px; height:128px; object-position:left center; transform:scale(1.32); transform-origin:left center; }
.gatewayHero { min-height:760px; display:grid; grid-template-columns:minmax(500px,42%) minmax(0,58%); background:var(--coffee-dark); }
.gatewayIntro { position:relative; z-index:1; display:flex; flex-direction:column; justify-content:center; padding:68px clamp(48px,5vw,90px) 76px; color:var(--coffee-paper); }
.gatewayIntro::after { content:""; position:absolute; right:0; top:9%; width:1px; height:82%; background:rgba(244,239,230,.15); }
.backLink { align-self:flex-start; margin-bottom:38px; color:rgba(244,239,230,.58); text-decoration:none; font:600 .72rem/1.4 var(--font-family-base); letter-spacing:.13em; text-transform:uppercase; }
.coffeeLockup { width:218px; margin-bottom:42px; }
.coffeeLogo { height:70px; overflow:hidden; }
.coffeeLogo img { display:block; width:100%; height:70px; object-fit:contain; transform:scale(1.42); filter:invert(1) brightness(1.15); }
.branchName { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:12px; }
.branchName span { height:1px; background:rgba(244,239,230,.43); }
.branchName strong { font:700 .66rem/1 var(--font-family-base); letter-spacing:.23em; }
.eyebrow { margin:0 0 22px; color:var(--coffee-sand); font:700 .7rem/1 var(--font-family-base); letter-spacing:.17em; text-transform:uppercase; }
.gatewayIntro h1 { max-width:9ch; margin:0; font:400 clamp(3.5rem,4.4vw,5.3rem)/.9 var(--font-family-display); letter-spacing:-.045em; }
.gatewayIntro h1 em { color:var(--coffee-sand); font-weight:400; }
.heroLead { max-width:500px; margin:30px 0 0; color:rgba(244,239,230,.7); font:400 1rem/1.75 var(--font-family-base); }
.destinationPanel { display:grid; grid-template-rows:230px 1fr auto auto; background:var(--coffee-paper); }
.visualStrip { position:relative; overflow:hidden; border-bottom:1px solid rgba(28,27,24,.15); }
.visualStrip::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(28,27,24,.48),rgba(28,27,24,.03) 68%); }
.visualStrip img { width:100%; height:100%; object-fit:cover; object-position:center 55%; filter:saturate(.65) sepia(.16) contrast(1.06); }
.visualStrip span { position:absolute; z-index:1; left:48px; bottom:30px; color:var(--coffee-paper); font:400 2rem/1 var(--font-family-display); }
.destinations { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
.destinationCard { min-width:0; display:grid; grid-template-rows:auto auto 1fr auto; padding:46px 48px 42px; border-right:1px solid rgba(28,27,24,.15); }
.destinationCard:last-child { border-right:0; }
.destinationNumber { margin-bottom:34px; color:rgba(28,27,24,.19); font:400 3.8rem/.8 var(--font-family-display); }
.cardEyebrow { margin:0 0 13px; color:var(--coffee-brown); font:800 .64rem/1.3 var(--font-family-base); letter-spacing:.15em; text-transform:uppercase; }
.destinationCopy h2 { min-height:2.05em; margin:0 0 17px; font:400 clamp(2rem,2.6vw,3rem)/1.02 var(--font-family-display); letter-spacing:-.03em; }
.destinationCopy > p:last-child { margin:0; color:rgba(28,27,24,.67); font:400 .92rem/1.65 var(--font-family-base); }
.destinationButton { align-self:end; justify-self:start; min-height:46px; display:inline-flex; align-items:center; margin-top:36px; padding:0 18px; border:1px solid rgba(28,27,24,.22); color:rgba(28,27,24,.56); background:rgba(216,199,174,.2); font:700 .66rem/1 var(--font-family-base); letter-spacing:.1em; text-transform:uppercase; cursor:not-allowed; }
.franchiseBand { display:grid; grid-template-columns:74px minmax(0,1fr) auto; align-items:center; gap:28px; padding:34px 48px; color:var(--coffee-paper); background:var(--coffee-brown); border-top:1px solid rgba(28,27,24,.14); }
.franchiseNumber { color:rgba(244,239,230,.32); font:400 3.5rem/.8 var(--font-family-display); }
.franchiseCopy .cardEyebrow { color:var(--coffee-sand); }
.franchiseCopy h2 { margin:0 0 9px; font:400 clamp(2rem,2.4vw,2.8rem)/1 var(--font-family-display); letter-spacing:-.025em; }
.franchiseCopy > p:last-child { max-width:620px; margin:0; color:rgba(244,239,230,.76); font:400 .9rem/1.55 var(--font-family-base); }
.franchiseButton { min-height:48px; display:inline-flex; align-items:center; justify-content:center; padding:0 20px; border:1px solid rgba(244,239,230,.72); color:var(--coffee-paper); text-decoration:none; white-space:nowrap; font:700 .68rem/1 var(--font-family-base); letter-spacing:.1em; text-transform:uppercase; transition:background .2s ease,color .2s ease; }
.franchiseButton:hover,.franchiseButton:focus-visible { color:var(--coffee-brown); background:var(--coffee-paper); }
.launchNote { min-height:70px; display:flex; align-items:center; gap:14px; padding:0 48px; color:rgba(28,27,24,.58); background:var(--coffee-surface); border-top:1px solid rgba(28,27,24,.12); }
.launchNote span { width:7px; height:7px; border-radius:50%; background:var(--coffee-brown); }
.launchNote p { margin:0; font:500 .78rem/1.5 var(--font-family-base); letter-spacing:.03em; }
.gatewayContact { min-height:112px; display:flex; align-items:center; justify-content:center; gap:20px 38px; padding:28px 32px; background:var(--coffee-brown); color:var(--coffee-paper); }
.gatewayContact p { margin:0; font:400 1.25rem/1.3 var(--font-family-display); }
.gatewayContact a { color:var(--coffee-paper); text-underline-offset:6px; text-decoration-color:var(--coffee-sand); font:700 .74rem/1.5 var(--font-family-base); letter-spacing:.09em; text-transform:uppercase; }
.gatewayContact a span { margin-left:8px; }
@media(max-width:1180px){.gatewayHero{grid-template-columns:minmax(430px,42%) minmax(0,58%)}.gatewayIntro{padding-left:42px;padding-right:42px}.destinationCard{padding-left:34px;padding-right:34px}.visualStrip span{left:34px}.franchiseBand{grid-template-columns:58px minmax(0,1fr);padding-left:34px;padding-right:34px}.franchiseButton{grid-column:2;justify-self:start}.launchNote{padding-left:34px;padding-right:34px}}
@media(max-width:1040px){.gatewayHero{grid-template-columns:1fr}.gatewayIntro{min-height:650px;padding:58px max(28px,calc((100vw - 760px)/2)) 72px}.gatewayIntro::after{display:none}.gatewayIntro h1{max-width:10ch}.destinationPanel{grid-template-rows:230px 1fr auto auto}.destinations{min-height:430px}.visualStrip span,.destinationCard,.launchNote{padding-left:max(28px,calc((100vw - 760px)/2));padding-right:max(28px,calc((100vw - 760px)/2))}.destinationCard:first-child{padding-right:34px}.destinationCard:last-child{padding-left:34px}.franchiseBand{padding-left:max(28px,calc((100vw - 760px)/2));padding-right:max(28px,calc((100vw - 760px)/2))}}
@media(max-width:680px){.coffeeSite .brand{width:172px}.coffeeSite .brand img{height:60px}.gatewayIntro{min-height:590px;padding:44px 22px 64px}.backLink{margin-bottom:38px}.coffeeLockup{width:190px;margin-bottom:40px}.coffeeLogo,.coffeeLogo img{height:62px}.gatewayIntro h1{font-size:clamp(3.35rem,15vw,4.7rem)}.heroLead{font-size:.95rem}.destinationPanel{grid-template-rows:180px auto auto auto}.visualStrip span{left:22px;padding:0;font-size:1.7rem}.destinations{grid-template-columns:1fr;min-height:0}.destinationCard,.destinationCard:first-child,.destinationCard:last-child{min-height:390px;padding:32px 22px;border-right:0;border-bottom:1px solid rgba(28,27,24,.15)}.destinationCopy h2{min-height:0}.destinationNumber{margin-bottom:25px}.destinationButton{margin-top:38px}.franchiseBand{grid-template-columns:1fr;gap:22px;padding:34px 22px 38px}.franchiseNumber{font-size:3rem}.franchiseButton{grid-column:1;justify-self:stretch}.launchNote{min-height:76px;padding:0 22px}.gatewayContact{align-items:flex-start;flex-direction:column;gap:12px;padding:30px 22px}}
