:root{--pink:#e84482;--pink-dark:#bc245f;--blush:#fff0f5;--cream:#fffaf3;--chocolate:#512817;--brown:#7a4028;--gold:#c59a48;--lime:#a4d95d;--ink:#251813;--white:#fff;--shadow:0 24px 70px rgba(81,40,23,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.announcement{background:var(--chocolate);color:#fff;text-align:center;padding:8px 16px;font-size:.78rem;letter-spacing:.13em;text-transform:uppercase}.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5vw,82px);background:rgba(255,250,243,.93);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(81,40,23,.09)}.brand{display:flex;align-items:center;gap:12px;font-family:'Playfair Display',serif;font-size:1.32rem;font-weight:700}.brand img{width:60px;height:60px;border-radius:50%;object-fit:cover}.brand i{color:var(--pink)}nav{display:flex;align-items:center;gap:28px;font-size:.91rem;font-weight:600}nav>a:not(.nav-cta):after{content:"";display:block;width:0;height:2px;background:var(--pink);transition:.25s}nav>a:hover:after{width:100%}.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;border-radius:100px;font-weight:700}.nav-cta{padding:12px 20px;background:var(--pink);color:#fff}.menu-button{display:none;background:none;border:0;padding:10px}.hero{min-height:700px;padding:70px clamp(24px,7vw,112px) 90px;display:grid;grid-template-columns:1fr .88fr;gap:8vw;align-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 17% 20%,#fff 0 16%,transparent 42%),linear-gradient(115deg,var(--cream) 0 56%,var(--blush) 56%)}.hero:after{content:"";position:absolute;width:450px;height:450px;border:1px solid rgba(197,154,72,.5);border-radius:50%;right:-220px;bottom:-220px}.hero-copy,.hero-visual{position:relative;z-index:2}.eyebrow{margin:0 0 13px;text-transform:uppercase;font-size:.75rem;letter-spacing:.22em;font-weight:700;color:var(--pink-dark)}h1,h2,h3{font-family:'Playfair Display',serif;line-height:1.05;margin:0}h1{font-size:clamp(3.6rem,6vw,6.8rem);letter-spacing:-.055em;max-width:820px}h1 em{color:var(--pink);font-weight:600}.lead{font-size:1.16rem;max-width:610px;color:#5d4a42;margin:28px 0}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}.button{border:0;cursor:pointer;padding:15px 27px;font-size:.95rem}.button.primary{background:var(--pink);color:#fff;box-shadow:0 14px 32px rgba(232,68,130,.25);transition:.25s}.button.primary:hover{transform:translateY(-2px);background:var(--pink-dark)}.text-link{font-weight:700;border-bottom:1px solid #8d7467;padding-bottom:4px}.text-link span{color:var(--pink)}.trust-row{display:flex;gap:24px;margin-top:44px;color:#715c52;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}.trust-row span:before{content:"✦";color:var(--gold);margin-right:8px}.hero-visual{justify-self:end;width:min(100%,520px)}.arch{height:610px;border-radius:260px 260px 18px 18px;overflow:hidden;box-shadow:var(--shadow);border:12px solid #fff}.arch img{width:100%;height:100%;object-fit:cover}.seal{position:absolute;left:-55px;bottom:72px;width:126px;height:126px;border-radius:50%;background:var(--chocolate);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;border:5px solid var(--cream);transform:rotate(-9deg)}.seal strong{font-family:'Playfair Display',serif;font-size:1.5rem}.seal span{font-size:.72rem;letter-spacing:.13em;text-transform:uppercase}.mini-card{position:absolute;right:-35px;top:100px;background:#fff;padding:16px 22px;box-shadow:var(--shadow);border-left:4px solid var(--gold)}.mini-card span,.mini-card strong{display:block}.mini-card span{font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;color:#856e62}.mini-card strong{font-family:'Playfair Display',serif}.intro{text-align:center;padding:120px 24px;max-width:1000px;margin:auto}.intro h2,.section-head h2,.menu-title h2,.process h2,.inquiry-copy h2,.faq-section h2,.future h2{font-size:clamp(2.5rem,4.5vw,4.6rem);letter-spacing:-.035em}.intro>p:last-child{max-width:720px;margin:28px auto 0;color:#66544c;font-size:1.08rem}.gallery-section{padding:0 clamp(20px,5vw,78px) 120px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.section-head>p{max-width:380px;color:#6b574e}.gallery-grid{display:grid;grid-template-columns:1.1fr .85fr .85fr;grid-auto-rows:285px;gap:18px}.gallery-item{border:0;padding:0;position:relative;overflow:hidden;cursor:zoom-in;border-radius:12px;background:#eee}.gallery-item.tall{grid-row:span 2}.gallery-item.wide{grid-column:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.5s}.gallery-item:hover img{transform:scale(1.035)}.gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(34,16,10,.72))}.gallery-item span{position:absolute;z-index:1;bottom:18px;left:20px;color:#fff;font-family:'Playfair Display',serif;font-size:1.35rem}.menu-section{background:var(--chocolate);color:#fff;padding:110px clamp(24px,6vw,96px)}.menu-title{text-align:center;max-width:760px;margin:0 auto 48px}.menu-title .eyebrow{color:#ff95bc}.menu-title>p:last-child{color:#dac9c0}.menu-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1220px;margin:auto}.menu-cards article{position:relative;background:#fff;color:var(--ink);border-radius:14px;padding:38px;min-height:440px}.menu-cards article.featured{background:var(--blush);transform:translateY(-12px)}.number{font-family:'Playfair Display',serif;color:var(--pink);font-size:1.8rem}.popular{position:absolute;right:22px;top:20px;background:var(--pink);color:#fff;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;padding:6px 10px;border-radius:20px}.menu-cards h3{font-size:2rem;margin:22px 0 15px}.menu-cards p{color:#6a554b}.menu-cards ul{padding:0;list-style:none;margin:24px 0}.menu-cards li{padding:8px 0;border-bottom:1px solid #ebdfd9}.menu-cards li:before{content:"✓";color:var(--pink);margin-right:10px;font-weight:700}.menu-cards a{font-weight:700;color:var(--pink-dark);position:absolute;bottom:32px}.flavor-strip{max-width:1220px;margin:52px auto 0;padding:23px 26px;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px;color:#f5e7df}.flavor-strip>span{color:#ff95bc;text-transform:uppercase;font-size:.75rem;letter-spacing:.16em;font-weight:700}.flavor-strip i{color:var(--gold)}.process{padding:115px clamp(24px,7vw,112px);display:grid;grid-template-columns:.8fr 1.4fr;gap:8vw;align-items:start}.process ol{list-style:none;padding:0;margin:0;border-top:1px solid #d6c5bb}.process li{display:grid;grid-template-columns:52px 180px 1fr;align-items:start;padding:28px 0;border-bottom:1px solid #d6c5bb}.process li>span{background:var(--pink);width:34px;height:34px;color:#fff;border-radius:50%;display:grid;place-items:center;font-weight:700}.process li strong{font-family:'Playfair Display',serif;font-size:1.2rem}.process li p{margin:0;color:#6d584d}.inquiry-section{background:var(--blush);padding:110px clamp(24px,7vw,112px);display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.inquiry-copy>p:nth-of-type(2){color:#6d584d}.contact-card{margin-top:40px;border-left:3px solid var(--gold);padding-left:22px}.contact-card span,.contact-card a{display:block}.contact-card span{font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:#896f63;margin-bottom:8px}.contact-card a{font-weight:600;margin:5px 0}form{background:#fff;padding:42px;border-radius:16px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid label{font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;font-weight:700;color:#6e574c}.form-grid .full{grid-column:1/-1}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #cdbeb6;background:#fff;padding:11px 2px;font:inherit;font-size:.95rem;color:var(--ink);border-radius:0;outline:none}textarea{border:1px solid #d8cac2;padding:13px;margin-top:8px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--pink)}.submit{margin-top:28px;width:100%;gap:15px}.form-note{text-align:center;font-size:.78rem;color:#7f6b61;margin-bottom:0}.faq-section{padding:115px clamp(24px,7vw,112px);display:grid;grid-template-columns:.75fr 1.25fr;gap:9vw}.faq-intro{color:#715e55}.accordion{border-top:1px solid #d2c2b8}.accordion details{border-bottom:1px solid #d2c2b8;padding:19px 0}.accordion summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;font-weight:700;font-size:1.05rem}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{font-size:1.4rem;color:var(--pink);transition:.2s}.accordion details[open] summary span{transform:rotate(45deg)}.accordion p{color:#6d584d;max-width:680px;margin:14px 32px 4px 0}.future{margin:0 clamp(24px,5vw,76px) 100px;background:linear-gradient(125deg,#f7cfe0,#fff0f5);min-height:340px;border-radius:18px;padding:55px 7%;display:flex;align-items:center;gap:6vw;position:relative;overflow:hidden}.future:before{content:"";position:absolute;width:240px;height:240px;background:var(--pink);border-radius:50%;right:-100px;top:-130px;opacity:.16}.future>span{position:absolute;top:24px;left:28px;background:var(--chocolate);color:#fff;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;padding:7px 12px;border-radius:30px}.future>div{flex:1}.future>div>p:last-child{color:#684f44}.future>a{font-weight:700;border-bottom:2px solid var(--pink)}footer{background:#25140e;color:#fff;padding:70px clamp(24px,6vw,96px) 28px}.footer-brand{display:flex;align-items:center;gap:18px}.footer-brand img{width:75px;height:75px;border-radius:50%}.footer-brand strong,.footer-brand span{display:block}.footer-brand strong{font-family:'Playfair Display',serif;font-size:1.6rem}.footer-brand span{color:#d8c7bd;font-size:.85rem}.footer-links{display:flex;gap:30px;justify-content:flex-end;margin-top:-45px}.footer-bottom{display:flex;justify-content:space-between;margin-top:60px;border-top:1px solid rgba(255,255,255,.14);padding-top:22px;color:#ad9589;font-size:.78rem}dialog{border:0;padding:0;background:transparent;max-width:min(900px,92vw)}dialog::backdrop{background:rgba(20,10,7,.88);backdrop-filter:blur(8px)}dialog img{max-height:86vh;border-radius:10px}dialog button{position:fixed;right:24px;top:20px;background:#fff;border:0;width:44px;height:44px;border-radius:50%;font-size:1.8rem;cursor:pointer}@media(max-width:900px){.site-header{height:78px;padding:0 20px}.brand img{width:48px;height:48px}.brand span{font-size:1.05rem}.menu-button{display:block;z-index:2}.menu-button span{display:block;width:26px;height:2px;background:var(--chocolate);margin:6px}nav{display:none;position:absolute;left:0;right:0;top:78px;background:var(--cream);padding:28px;flex-direction:column;align-items:stretch;box-shadow:0 20px 30px rgba(50,20,10,.12)}nav.open{display:flex}.hero{grid-template-columns:1fr;padding-top:55px;background:linear-gradient(160deg,var(--cream) 0 60%,var(--blush) 60%)}.hero-visual{justify-self:center;width:min(88%,480px)}.arch{height:550px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item.tall{grid-row:span 1}.gallery-item.wide{grid-column:span 2}.menu-cards{grid-template-columns:1fr}.menu-cards article.featured{transform:none}.process,.inquiry-section,.faq-section{grid-template-columns:1fr}.process li{grid-template-columns:50px 1fr}.process li p{grid-column:2;margin-top:5px}.future{align-items:flex-start;flex-direction:column;gap:15px}.footer-links{justify-content:flex-start;margin:32px 0 0}}@media(max-width:600px){h1{font-size:3.25rem}.hero{padding-left:20px;padding-right:20px;min-height:auto}.hero-actions{align-items:flex-start;flex-direction:column}.trust-row{flex-direction:column;gap:7px}.arch{height:440px;border-width:8px}.seal{width:104px;height:104px;left:-22px}.mini-card{right:-13px;top:48px}.section-head{align-items:flex-start;flex-direction:column}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:330px}.gallery-item.wide{grid-column:auto}.menu-section,.intro,.process,.inquiry-section,.faq-section{padding-top:82px;padding-bottom:82px}.menu-cards article{padding:30px;min-height:430px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}form{padding:28px 20px}.future{margin-left:16px;margin-right:16px;padding:72px 28px 38px}.footer-links{flex-wrap:wrap}.footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}}
