@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600;700&display=swap');
:root{--ink:#381d13;--text:#5c4234;--muted:#896e5e;--cream:#fbf4e9;--paper:#fffaf3;--sand:#f3e0c8;--gold:#bd804b;--brown:#592d1a;--brown2:#864a2d;--line:#e7d2bc;--shadow:0 20px 65px rgba(83,44,22,.12);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:108px}body{margin:0;color:var(--ink);font-family:'DM Sans',ui-sans-serif,system-ui,Arial,sans-serif;background:radial-gradient(circle at 4% 4%,#f6dcc0 0,transparent 30%),radial-gradient(circle at 95% 12%,#d49a68 0,transparent 29%),#f8eddd;min-width:300px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:600}h1,h2,.serif{font-family:'Playfair Display',Georgia,serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #bf783f;outline-offset:4px}::selection{color:white;background:#8c522f}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:999;top:-60px;left:18px;padding:12px 18px;background:white;border-radius:12px}.skip-link:focus{top:12px}.page-wrap{width:min(calc(100% - 44px),1456px);margin:30px auto 0;overflow:visible}.page-wrap:before{content:'';position:absolute;z-index:-1;width:120px;height:120px;top:190px;left:-35px;background:radial-gradient(ellipse,#7f492e 0%,transparent 60%);filter:blur(30px);opacity:.15}.site-header{height:96px;position:relative;z-index:30;border:1px solid rgba(120,75,43,.14);border-bottom:0;background:linear-gradient(110deg,rgba(255,249,236,.96),rgba(243,214,179,.85));border-radius:30px 30px 0 0}.header-inner{height:100%;width:min(100% - 74px,1350px);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:18px}.logo{display:flex;align-items:center;flex-shrink:0}.logo img{width:190px;height:auto}.site-nav{display:flex;align-items:center;gap:clamp(13px,2.7vw,38px)}.site-nav>a{font-size:13px;font-weight:700;white-space:nowrap;transition:color .2s}.site-nav>a:hover,.site-nav>a[aria-current]{color:var(--brown2)}.site-nav>a[aria-current]:not(.nav-club):after{content:'';display:block;width:22px;height:2px;background:#965932;margin:8px auto -10px;border-radius:3px}.site-nav .nav-club{display:inline-flex;gap:10px;align-items:center;justify-content:center;background:#582b19;color:#fff;font-size:12px;letter-spacing:.02em;border:1px solid #9a6847;border-radius:100px;padding:13px 19px;box-shadow:0 10px 25px rgba(62,29,13,.13)}.site-nav .nav-club:hover{color:white;background:#794027}.menu-toggle{display:none;border:1px solid #ddc2a3;background:#fff6e8;border-radius:12px;padding:9px;color:var(--brown)}
.hero-panel{position:relative;isolation:isolate;min-height:655px;border:1px solid rgba(120,75,43,.16);border-top:0;border-radius:0 0 31px 31px;overflow:hidden;background:linear-gradient(115deg,#fff5e5 0%,#f8e5c7 40%,#dda976 100%);box-shadow:var(--shadow)}.hero-media{position:absolute;inset:0 0 0 auto;width:59%;background-image:linear-gradient(90deg,rgba(255,247,231,.95) 0%,rgba(255,247,231,.2) 19%,transparent 42%),url('img/hero-coffee-cafe.webp');background-size:cover;background-position:50% center;z-index:-1}.hero-panel:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,246,227,.55),transparent 45%)}.hero-copy{position:relative;z-index:2;width:53%;padding:70px 10px 70px clamp(34px,6.1vw,100px)}.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.29em;font-size:11px;font-weight:700;color:#9f6948}.eyebrow:before{content:'';width:34px;height:1px;background:#b89474}.eyebrow svg{color:var(--brown2)}.hero-copy h1{font-size:clamp(47px,5vw,81px);line-height:1.10;letter-spacing:-.035em;margin:29px 0 24px;color:#3d1b10;max-width:680px}.hero-copy h1 em{font-weight:400;font-style:italic;color:#875339}.hero-description{max-width:410px;font-size:17px;line-height:1.83;color:#654939}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:31px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:12px;border-radius:100px;border:1px solid transparent;padding:15px 23px;font-size:13px;font-weight:700;min-height:50px;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{color:white;background:var(--brown);box-shadow:0 14px 25px rgba(77,39,19,.18)}.btn-primary:hover{color:white;background:#784129}.btn-outline{border-color:#a76e47;background:rgba(255,247,235,.58);color:var(--ink)}.btn-outline:hover{background:#fff3de}.btn-light{color:#482515;background:#fff9ed}.hero-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:550px;margin-top:65px;gap:12px}.hero-features>div{position:relative;padding:0 12px}.hero-features>div:first-child{padding-left:0}.hero-features>div+div:before{content:'';position:absolute;left:0;top:15px;bottom:5px;background:#bf9a7c;width:1px}.hero-features svg{color:#8e5533;margin-bottom:6px}.hero-features strong{display:block;font-size:13px;color:#4c2b19}.hero-features small{display:block;font-size:11px;color:#83634c;line-height:1.6;margin-top:3px}.floating-note{position:absolute;z-index:3;right:42px;top:35px;background:rgba(255,250,241,.92);box-shadow:0 9px 30px rgba(60,28,11,.17);border:1px solid rgba(255,255,255,.75);padding:12px 16px;border-radius:15px;display:flex;align-items:center;gap:10px;font-size:12px;color:#5d3523;font-weight:700}.float-bean{position:absolute;border:5px solid #75432a;border-radius:60% 45% 60% 42%;width:28px;height:45px;opacity:.4;transform:rotate(33deg)}.bean-one{bottom:70px;left:50%;z-index:3}.bean-two{right:26px;top:240px;transform:scale(.65) rotate(-20deg);z-index:1}
.section{padding:112px 18px 0;scroll-margin-top:110px}.section-inner{width:min(100%,1220px);margin:auto}.section-head{text-align:center;max-width:710px;margin:0 auto 44px}.section-kicker{display:inline-flex;align-items:center;gap:7px;color:#a36542;text-transform:uppercase;letter-spacing:.25em;font-weight:700;font-size:11px}.section-kicker:before,.section-kicker:after{content:'';width:20px;height:1px;background:#c9a57f}.section-head h2,.section-copy h2{font-size:clamp(34px,4.2vw,54px);line-height:1.2;margin:15px 0;color:var(--ink)}.section-head>p,.section-copy>p{font-size:15px;line-height:1.9;color:#816858}.section-head .accent{font-style:italic;font-weight:400;color:#98603b}.section-cta{display:flex;justify-content:center;margin-top:27px}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}.product-card{overflow:hidden;border:1px solid rgba(155,105,64,.13);background:rgba(255,252,245,.86);border-radius:19px;box-shadow:0 8px 22px rgba(83,45,22,.035);transition:transform .23s,box-shadow .23s}.product-card:hover{transform:translateY(-6px);box-shadow:0 19px 35px rgba(82,42,20,.14)}.product-card[hidden]{display:none!important}.product-image{height:230px;position:relative;background:#e6c6a4;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.product-card:hover .product-image img{transform:scale(1.05)}.product-category{position:absolute;top:14px;left:13px;padding:8px 12px;background:rgba(255,250,238,.91);border:1px solid rgba(255,255,255,.8);font-size:10px;border-radius:30px;font-weight:700;color:#704729}.product-info{padding:19px 20px 18px}.product-info h3{font-family:'Playfair Display',Georgia,serif;font-size:24px;margin:0 0 8px;font-weight:600}.product-info p{font-size:13px;color:#907562;min-height:22px;margin-bottom:15px}.product-meta{border-top:1px solid #f0e3d6;padding-top:14px;display:flex;justify-content:space-between;align-items:center}.product-meta span{font-size:12px;font-weight:700;color:#a16d4e}.product-meta a{display:grid;place-items:center;background:#f3e3d1;color:var(--ink);width:31px;height:31px;border-radius:50%}.product-meta a:hover{background:#e5c9ac}
.story-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:70px;align-items:center}.story-image-wrap{position:relative;padding:12px 38px 38px 0}.story-image-main{border-radius:160px 160px 22px 22px;overflow:hidden;box-shadow:var(--shadow);height:500px;background:#d5a67c}.story-image-main img{height:100%;width:100%;object-fit:cover;object-position:50% 29%}.story-badge{position:absolute;bottom:5px;right:0;display:flex;gap:12px;align-items:center;background:#fffaf0;border-radius:18px;padding:18px 20px;box-shadow:0 12px 38px rgba(74,39,16,.2);max-width:220px}.story-badge span{font-size:12px;line-height:1.6}.story-badge svg{color:#945330;flex-shrink:0}.section-copy h2{max-width:590px}.story-lines{display:grid;gap:14px;margin:24px 0 31px}.story-line{display:flex;gap:11px;align-items:flex-start;font-size:14px;color:#654b3b}.story-line span{border-radius:50%;display:grid;place-items:center;background:#eee0ce;color:#86452c;width:30px;height:30px;flex-shrink:0}.story-line b{padding-top:4px;font-weight:500}
.campaign-wrapper{background:linear-gradient(130deg,#582e1d,#331a12);border-radius:30px;padding:70px clamp(20px,5vw,74px);box-shadow:0 25px 50px rgba(64,30,18,.2);position:relative;overflow:hidden}.campaign-wrapper:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 82% 20%,rgba(218,157,99,.16),transparent 38%),radial-gradient(circle at 16% 85%,rgba(216,164,110,.15),transparent 39%);pointer-events:none}.campaign-wrapper .section-head{position:relative;margin-bottom:33px}.campaign-wrapper .section-head h2{color:#fff1de}.campaign-wrapper .section-head p{color:#dfc5ad}.campaign-wrapper .section-kicker{color:#f3cb9c}.campaign-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:20px}.campaign-card{display:flex;align-items:center;gap:20px;background:#fff9f0;border-radius:21px;padding:14px;min-height:180px}.campaign-image{overflow:hidden;flex:0 0 38%;height:166px;border-radius:13px;background:#e4bf96}.campaign-image img{width:100%;height:100%;object-fit:cover}.campaign-text{flex:1;min-width:0}.tiny-label{color:#ae7855;font-size:10px;font-weight:700;letter-spacing:.14em}.campaign-text h3{font-family:'Playfair Display',Georgia,serif;font-size:23px;margin:9px 0 9px}.campaign-text p{font-size:12px;line-height:1.6;color:#8b6e5b}.campaign-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.campaign-meta>span:first-child{color:#653721;font-size:16px;font-weight:700}.status{border-radius:24px;padding:5px 9px;background:#e9f4df;color:#45752c;font-weight:700;font-size:10px}.status-soon{color:#9b693a;background:#f7e9d4}.campaign-explain{color:#d7bda6;text-align:center;font-size:12px;margin:22px auto 0;position:relative}.campaign-wrapper .section-cta{position:relative}
.loyalty-wrap{display:grid;grid-template-columns:.95fr 1fr;gap:65px;align-items:center}.loyalty-card{background:#fffaf1;border:1px solid #eedbc5;border-radius:30px;padding:36px;box-shadow:var(--shadow);position:relative;max-width:530px}.loyalty-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:27px;border-bottom:1px dashed #d4b595}.loyalty-mini{font-size:11px;letter-spacing:.18em;color:#98663e;text-transform:uppercase}.loyalty-title{font-family:Georgia,serif;font-size:31px;margin:14px 0 8px}.loyalty-card p{color:#9b775a;font-size:13px}.stamp-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:29px 0}.stamp{aspect-ratio:1;display:grid;place-items:center;border:2px dashed #d8bd9f;border-radius:50%;font-size:27px;color:#d2b392;background:#fbf4e7}.stamp.is-filled{color:#fff;background:#72432b;border:2px solid #72432b;box-shadow:0 4px 15px rgba(71,33,16,.15)}.loyalty-progress{height:9px;background:#e9d9c4;border-radius:100px;overflow:hidden}.loyalty-progress>span{display:block;background:linear-gradient(90deg,#935634,#c88e54);width:60%;height:100%;border-radius:100px}.loyalty-foot{display:flex;justify-content:space-between;gap:20px;margin-top:15px;color:#72513d;font-size:12px}.loyalty-foot b{color:#6b3a25}.loyalty-wrap .section-copy{padding-right:10px}.loyalty-perks{display:grid;gap:13px;margin:25px 0}.loyalty-perks>span{display:flex;align-items:center;gap:11px;font-size:14px;color:#6b4e3c}.loyalty-perks svg{color:#97532e}
.visit-panel{display:grid;grid-template-columns:1fr 1.15fr;gap:20px}.visit-photo{border-radius:26px;overflow:hidden;min-height:365px;position:relative;background:#a76f4d}.visit-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.visit-photo:after{content:'';position:absolute;inset:20% 0 0;background:linear-gradient(transparent,rgba(37,18,12,.69))}.visit-caption{position:absolute;bottom:26px;left:30px;z-index:1;color:white;font:600 31px Georgia,serif;max-width:350px}.visit-info{display:grid;align-content:center;gap:26px;padding:34px;background:#fff9ee;border:1px solid #eedac2;border-radius:26px}.visit-info h3{font:600 36px Georgia,serif;margin:0}.contact-row{display:flex;align-items:start;gap:17px;color:#6d4a34}.contact-row svg{color:#9d6239;flex-shrink:0}.contact-row b{display:block;font-size:12px;color:#5b3624;margin-bottom:4px}.contact-row span{font-size:13px;line-height:1.6}.contact-small{margin:0;color:#9d846d;font-size:11px;line-height:1.7}.map-link{display:inline-flex;align-items:center;gap:8px;color:#75452a;font-size:13px;font-weight:700}.map-link[hidden]{display:none}
.site-footer{width:min(calc(100% - 44px),1456px);margin:100px auto 0;background:#2f1a13;color:#e9d3bd;border-radius:31px 31px 0 0}.footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr 1.35fr;gap:36px;padding:56px clamp(30px,5vw,79px) 42px}.footer-brand img{width:177px;height:auto;filter:brightness(0) invert(1);opacity:.88}.footer-brand p{font:italic 17px Georgia,serif;margin-top:15px;color:#c8a98e}.footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:15px;font-size:12px}.footer-col b{font-size:13px;color:#fff4e6;margin-bottom:5px}.footer-col a:hover{color:white}.footer-hello span{line-height:1.6}.footer-contact{display:inline-flex;align-items:center;gap:9px;color:#e8ad77}.footer-bottom{margin:0 clamp(30px,5vw,79px);padding:22px 0 26px;display:flex;justify-content:space-between;gap:15px;border-top:1px solid #704c3e;font-size:11px;color:#c3a793;flex-wrap:wrap}
/* Interior pages */
.inner-hero{padding:73px 35px 72px;background:linear-gradient(105deg,#fff6e7,#f5dec1 56%,#e0ad7d);border:1px solid #e3c5a5;border-top:0;border-radius:0 0 31px 31px;text-align:center;position:relative;overflow:hidden}.inner-hero:after{content:'';position:absolute;width:330px;height:330px;right:-80px;bottom:-230px;border:70px solid rgba(162,92,46,.13);border-radius:50%}.inner-hero h1{font-size:clamp(44px,6vw,72px);margin:18px 0}.inner-hero p{font-size:15px;line-height:1.7;color:#81624b;max-width:660px;margin:0 auto}.inner-main{width:min(calc(100% - 44px),1220px);margin:70px auto 0}.menu-toolbar{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;align-items:center;margin-bottom:27px}.filter-row{display:flex;flex-wrap:wrap;gap:9px}.filter-btn{padding:11px 15px;border-radius:100px;background:#fff9ee;color:#674736;border:1px solid #e4cfb5;font-size:12px;font-weight:700}.filter-btn.active,.filter-btn:hover{background:#5e341f;color:white;border-color:#5e341f}.search-box{position:relative;display:flex;align-items:center;gap:9px;background:#fff9f0;border:1px solid #e6ceb4;border-radius:100px;padding:0 14px;min-width:min(100%,280px)}.search-box svg{color:#876c56;flex-shrink:0}.search-box input{width:100%;min-height:43px;background:transparent;border:0;outline:0;color:#5f3d29;font-size:13px}.result-count{font-size:12px;color:#937157;margin-bottom:18px}.empty-state{text-align:center;padding:40px;background:#fff9ee;border-radius:20px;color:#795741}.notice{padding:16px 19px;background:#fff8eb;border:1px solid #e6d0b7;border-radius:14px;color:#81644e;font-size:12px;line-height:1.7}.notice strong{color:#5c3826}.inner-main .campaign-grid{margin-top:29px}.inner-main .loyalty-wrap{padding:35px 0 20px}.inner-main .loyalty-card{max-width:100%}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:46px 0 0}.benefit{background:#fffaf0;border:1px solid #e9d4ba;padding:33px;border-radius:22px}.benefit span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;color:#84502f;background:#f2ddc6}.benefit h3{font:600 24px Georgia,serif;margin:20px 0 10px}.benefit p{color:#856b59;font-size:13px;line-height:1.8;margin:0}.inline-links{display:flex;flex-wrap:wrap;gap:13px;justify-content:center;margin:38px auto 0}.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s,transform .6s}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:1100px){.header-inner{width:calc(100% - 45px)}.site-nav{gap:17px}.logo img{width:158px}.site-nav>a{font-size:12px}.hero-copy{width:58%;padding-left:45px}.hero-copy h1{font-size:clamp(44px,5vw,66px)}.hero-media{width:58%;background-position:55% center}.hero-features{margin-top:43px}.floating-note{right:25px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.story-grid{gap:45px}.campaign-card{gap:14px}.campaign-image{height:150px}.footer-inner{grid-template-columns:1.6fr 1fr 1fr;gap:26px}.footer-hello{grid-column:1/-1}.story-image-main{height:450px}}
@media(max-width:760px){.page-wrap{width:calc(100% - 20px);margin:10px auto 0}.site-header{height:75px;border-radius:21px 21px 0 0}.header-inner{width:calc(100% - 28px)}.logo img{width:145px}.menu-toggle{display:grid;place-items:center}.site-nav{display:none;position:absolute;top:68px;left:10px;right:10px;padding:19px;background:#fff8ee;border:1px solid #ebd3b9;border-radius:16px;box-shadow:0 20px 35px rgba(65,34,17,.2);gap:0;flex-direction:column;align-items:stretch}.site-nav.is-open{display:flex}.site-nav>a{padding:12px 9px;font-size:14px}.site-nav>a[aria-current]:not(.nav-club):after{display:none}.site-nav .nav-club{justify-content:center;margin-top:10px;padding:14px}.hero-panel{border-radius:0 0 22px 22px;min-height:850px;background:#fff1de;display:flex;flex-direction:column}.hero-panel:after{display:none}.hero-copy{width:100%;padding:45px 27px 0}.hero-copy h1{font-size:clamp(44px,10vw,65px);margin:23px 0 16px;max-width:520px}.hero-description{font-size:14px;max-width:430px;line-height:1.75}.hero-actions{margin-top:24px}.hero-features{margin-top:26px;max-width:550px;padding-bottom:15px;gap:2px}.hero-features>div{padding:0 8px}.hero-features strong{font-size:11px}.hero-features small{font-size:9px}.hero-media{inset:auto 0 0;bottom:0;width:100%;height:350px;background-image:linear-gradient(180deg,#fff1de 0%,rgba(255,241,222,.3) 24%,transparent 46%),url('img/hero-coffee-cafe.webp');background-position:center 61%;border-radius:0 0 22px 22px}.floating-note{right:18px;top:auto;bottom:277px;font-size:10px;padding:9px 12px}.float-bean{display:none}.section{padding:79px 8px 0}.section-head{margin-bottom:29px}.section-head h2,.section-copy h2{font-size:clamp(34px,8vw,47px)}.section-head>p{font-size:13px}.product-grid{gap:12px}.product-image{height:185px}.product-info{padding:15px}.product-info h3{font-size:21px}.product-info p{font-size:11px}.product-category{font-size:9px;padding:7px 9px}.story-grid{grid-template-columns:1fr;gap:24px}.story-image-wrap{padding:0 30px 23px 0}.story-image-main{height:360px}.section-copy{padding:0 9px}.campaign-wrapper{border-radius:20px;padding:50px 17px}.campaign-grid{grid-template-columns:1fr;gap:13px}.campaign-card{min-height:138px}.campaign-image{height:134px}.campaign-text h3{font-size:20px}.loyalty-wrap{grid-template-columns:1fr;gap:27px}.loyalty-card{padding:25px;max-width:100%}.stamp-grid{gap:8px}.stamp{font-size:22px}.visit-panel{grid-template-columns:1fr}.visit-photo{min-height:260px}.visit-info{padding:26px}.visit-info h3{font-size:28px}.site-footer{width:calc(100% - 20px);margin-top:80px;border-radius:22px 22px 0 0}.footer-inner{grid-template-columns:1fr 1fr;padding:39px 25px 29px;gap:28px}.footer-brand{grid-column:1/-1}.footer-hello{grid-column:1/-1}.footer-bottom{margin:0 25px;font-size:10px}.inner-hero{border-radius:0 0 22px 22px;padding:54px 22px}.inner-main{width:calc(100% - 28px);margin-top:43px}.menu-toolbar{align-items:stretch}.filter-row{overflow:auto;flex-wrap:nowrap;padding:0 0 5px;width:100%}.filter-btn{white-space:nowrap}.search-box{width:100%}.benefits{grid-template-columns:1fr;gap:12px}.benefit{padding:23px}.inner-main .campaign-card{min-height:150px}}
@media(max-width:400px){.hero-panel{min-height:830px}.hero-copy{padding-left:21px;padding-right:19px}.hero-copy h1{font-size:43px}.hero-features{gap:0}.hero-features>div{padding:0 6px}.hero-features strong{font-size:10px}.btn{padding:14px 17px;font-size:12px}.product-image{height:145px}.product-info h3{font-size:19px}.product-category{max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.floating-note{bottom:267px}.campaign-text h3{font-size:18px}.campaign-image{flex-basis:33%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}

.product-meta .product-open{display:grid;place-items:center;width:31px;height:31px;border:0;border-radius:50%;background:#f3e3d1;color:var(--ink)}.product-meta .product-open:hover{background:#e5c9ac}.product-dialog{width:min(calc(100% - 30px),550px);border:1px solid #e8d2b7;border-radius:24px;box-shadow:0 22px 70px rgba(49,23,11,.38);background:#fff9ef;padding:0;overflow:hidden;color:var(--ink)}.product-dialog::backdrop{background:rgba(38,18,9,.58);backdrop-filter:blur(3px)}.product-dialog>img{width:100%;height:270px;object-fit:cover;background:#e3bd95}.dialog-info{padding:25px 29px 30px}.dialog-info h2{font-size:35px;margin:10px 0}.dialog-info p{font-size:14px;color:#80634f;line-height:1.7}.dialog-info>strong{font-size:17px;color:#72442d}.dialog-disclaimer{font-size:11px!important;margin-top:16px}.dialog-close{position:absolute;right:17px;top:15px;background:#fff7eb;color:#5b301b;border:0;width:37px;height:37px;border-radius:50%;font-size:26px;display:grid;place-items:center;box-shadow:0 5px 20px #3e241b32}

/* ====== KAFFA V2: 91 gerçek menü ürünü ve kenar hızlı bağlantıları ====== */
.edge-actions{pointer-events:none;position:relative;z-index:100}
.edge-link{pointer-events:auto;position:fixed;top:53%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;gap:9px;background:#5c321e;color:#fff8ed;text-decoration:none;box-shadow:0 11px 28px #49231340;border:1px solid #e3c4a184;min-height:52px;transition:background .2s,transform .2s;z-index:100}
.edge-link:hover{background:#80462c;transform:translateY(-50%) scale(1.04)}
.edge-link:focus-visible{outline:3px solid #d89d62;outline-offset:3px}
.edge-link--left{left:0;padding:12px 18px 12px 13px;border-radius:0 30px 30px 0;font-size:12px;font-weight:700}
.edge-link--right{right:0;width:57px;border-radius:30px 0 0 30px}
.full-menu-catalog{display:grid;gap:27px}
.menu-category{background:#fffaf1;border:1px solid #ead3b9;border-radius:24px;padding:26px 27px 22px;box-shadow:0 8px 27px #3c1e0d0c;scroll-margin-top:100px}
.menu-category-head{display:flex;align-items:center;gap:13px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid #e5d2c0}
.menu-category-icon{display:grid;place-items:center;flex:none;background:#f4e3d1;border-radius:12px;width:43px;height:43px;font-size:20px}
.menu-category-head h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(19px,2vw,26px);margin:0;flex:1;color:#583020}
.menu-category-count{font-size:11px;color:#876c59;white-space:nowrap}
.menu-product-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:33px;row-gap:4px}
.menu-product-row{min-width:0;background:transparent;border:0;border-bottom:1px dotted #e9d8c7;display:flex;align-items:baseline;gap:10px;justify-content:space-between;text-align:left;padding:12px 2px;color:#4b2b1c;cursor:pointer;font-family:inherit;transition:background .2s}
.menu-product-row:hover,.menu-product-row:focus-visible{background:#f6e7d6;outline:0;border-radius:6px}
.menu-product-name{font-size:14px;line-height:1.4;min-width:0;overflow-wrap:anywhere}
.menu-product-line{flex:1;min-width:8px}
.menu-product-row strong{flex:none;font-size:14px;color:#7b4228;white-space:nowrap}
.qr-menu-note{margin-top:23px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px 26px;border:1px solid #e6cbb0;border-radius:18px;background:#f7e7d4}
.qr-menu-note strong{font-size:15px}.qr-menu-note p{margin:6px 0 0;font-size:13px;color:#725743}.qr-menu-note .btn{white-space:nowrap}
.campaign-empty{grid-column:1/-1;display:flex;align-items:center;gap:23px;min-height:125px;padding:23px 28px;border-radius:20px;background:rgba(255,245,225,.12);color:#fff6e9;border:1px solid rgba(255,238,214,.24)}
.campaign-empty>span{font-size:44px;color:#d9b68d}.campaign-empty strong{font-family:'Playfair Display',Georgia,serif;font-size:24px}.campaign-empty p{margin:8px 0 0;font-size:13px;opacity:.83}
.inner-main .campaign-empty{background:#f5e1ca;color:#542b19;border-color:#e9c8a7}
.contact-row a{color:#5c341f;font-weight:700;text-decoration:underline;text-decoration-color:#d5aa7d;text-underline-offset:4px}
@media(max-width:760px){
  .edge-link{top:auto;bottom:15px;min-height:47px;transform:none;box-shadow:0 7px 22px #49231355}
  .edge-link:hover{transform:scale(1.04)}
  .edge-link--left{left:10px;border-radius:27px;padding:9px 13px;font-size:11px}
  .edge-link--right{right:10px;width:48px;border-radius:27px}
  .menu-category{padding:19px 15px 16px;border-radius:18px}
  .menu-product-list{grid-template-columns:1fr}
  .menu-product-row{padding:11px 1px}
  .menu-product-name,.menu-product-row strong{font-size:13px}
  .menu-category-head{gap:9px}.menu-category-head h2{font-size:21px}
  .qr-menu-note{display:block;padding:18px}
  .qr-menu-note .btn{margin-top:14px;white-space:normal}
  body[data-page="home"] .site-footer{padding-bottom:45px}
}


/* KAFFA V2.1: premium açılış ve hafif sayfa geçiş animasyonları. */
.kaffa-intro{display:none}
.has-intro .kaffa-intro{
 display:grid;place-items:center;position:fixed;inset:0;z-index:10000;
 overflow:hidden;isolation:isolate;
 background:radial-gradient(ellipse at 50% 46%,#ffeed5 0%,#eac59e 49%,#ad754c 100%);
 animation:kaffa-intro-out .52s cubic-bezier(.4,0,.2,1) 1.78s both;
}
.kaffa-intro__glow{position:absolute;width:min(78vw,650px);aspect-ratio:1;border-radius:50%;opacity:.6;background:radial-gradient(circle,rgba(255,251,243,.95),rgba(255,245,224,.12) 68%,transparent 70%);animation:kaffa-intro-breathe 2s ease-in-out infinite alternate}
.kaffa-intro__orb{position:absolute;width:min(36vw,330px);aspect-ratio:1;border-radius:46%;border:1px solid rgba(111,60,32,.15);pointer-events:none}
.kaffa-intro__orb--left{top:-105px;left:-115px;transform:rotate(25deg);box-shadow:0 0 0 27px rgba(130,72,36,.045),0 0 0 59px rgba(130,72,36,.04)}
.kaffa-intro__orb--right{bottom:-135px;right:-95px;transform:rotate(-20deg);box-shadow:0 0 0 25px rgba(130,72,36,.045),0 0 0 55px rgba(130,72,36,.04)}
.kaffa-intro__center{position:relative;z-index:1;display:flex;align-items:center;flex-direction:column;text-align:center;color:#522b1c;padding:22px 28px}
.kaffa-intro__mark{display:grid;place-items:center;width:116px;height:116px;animation:kaffa-intro-mark .82s cubic-bezier(.2,.95,.34,1.03) .12s both}
.kaffa-intro__mark img{width:105px;height:105px;object-fit:contain;mix-blend-mode:multiply}
.kaffa-intro__title{font-family:'Playfair Display',Georgia,serif;font-size:clamp(54px,9vw,90px);font-weight:500;line-height:1;letter-spacing:.20em;padding-left:.2em;animation:kaffa-intro-rise .6s ease .38s both}
.kaffa-intro__subtitle{font-size:clamp(10px,1.3vw,14px);letter-spacing:.53em;padding-left:.53em;margin-top:13px;font-weight:600;animation:kaffa-intro-rise .6s ease .52s both}
.kaffa-intro__divider{display:block;width:195px;height:1px;background:rgba(93,46,28,.2);margin:28px 0 17px;overflow:hidden;animation:kaffa-intro-rise .6s ease .7s both}
.kaffa-intro__divider span{display:block;width:100%;height:100%;background:#70402b;transform:translateX(-100%);animation:kaffa-intro-progress 1.25s ease-in-out .45s both}
.kaffa-intro__tagline{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:clamp(16px,2.1vw,21px);letter-spacing:.03em;animation:kaffa-intro-rise .6s ease .83s both}
.kaffa-intro__skip{position:absolute;right:clamp(15px,4vw,60px);bottom:clamp(15px,3vw,40px);border:1px solid rgba(77,43,25,.35);border-radius:28px;padding:9px 18px;color:#58311e;background:rgba(255,250,239,.45);font:600 12px 'DM Sans',sans-serif;cursor:pointer;z-index:2}
.kaffa-intro__skip:hover,.kaffa-intro__skip:focus-visible{background:#fff7e8;outline:2px solid #7f5135;outline-offset:2px}
.has-intro .site-header{animation:kaffa-page-rise .68s ease 1.85s both}
.has-intro .hero-panel{animation:kaffa-page-rise .72s ease 1.88s both}
.has-intro .hero-media{animation:kaffa-image-entrance 1.15s ease 2.0s both}
.has-intro .hero-copy .eyebrow{animation:kaffa-page-rise .65s ease 2.12s both}
.has-intro .hero-copy h1{animation:kaffa-page-rise .72s ease 2.22s both}
.has-intro .hero-description{animation:kaffa-page-rise .7s ease 2.33s both}
.has-intro .hero-actions{animation:kaffa-page-rise .7s ease 2.44s both}
.has-intro .hero-features{animation:kaffa-page-rise .7s ease 2.55s both}
.has-intro .floating-note{animation:kaffa-page-rise .85s ease 2.52s both}
html:not([data-page="home"]) .inner-hero{animation:kaffa-page-rise .7s cubic-bezier(.22,1,.36,1) both}
html:not([data-page="home"]) .inner-main{animation:kaffa-page-rise .66s cubic-bezier(.22,1,.36,1) .12s both}
@keyframes kaffa-intro-out{0%,80%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden;pointer-events:none}}
@keyframes kaffa-intro-mark{from{opacity:0;transform:scale(.78) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@keyframes kaffa-intro-rise{from{opacity:0;transform:translateY(17px)}to{opacity:1;transform:translateY(0)}}
@keyframes kaffa-intro-progress{to{transform:translateX(0)}}
@keyframes kaffa-intro-breathe{from{transform:scale(.9)}to{transform:scale(1.08)}}
@keyframes kaffa-page-rise{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@keyframes kaffa-image-entrance{from{opacity:.38;transform:scale(1.055) translateX(15px)}to{opacity:1;transform:scale(1) translateX(0)}}
@media(max-width:760px){.kaffa-intro__title{letter-spacing:.16em;padding-left:.16em}.kaffa-intro__mark{width:90px;height:90px}.kaffa-intro__mark img{width:82px;height:82px}.kaffa-intro__divider{margin:24px 0 16px}.has-intro .hero-media{animation-name:kaffa-image-entrance}}
@media(prefers-reduced-motion:reduce){.kaffa-intro{display:none!important}.has-intro .site-header,.has-intro .hero-panel,.has-intro .hero-media,.has-intro .hero-copy .eyebrow,.has-intro .hero-copy h1,.has-intro .hero-description,.has-intro .hero-actions,.has-intro .hero-features,.has-intro .floating-note,html:not([data-page="home"]) .inner-hero,html:not([data-page="home"]) .inner-main{animation:none!important;opacity:1!important;transform:none!important}}
