@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Playfair+Display:ital,wght@0,600;1,600&display=swap');
:root{--black:#100f0e;--cream:#f2ecdf;--orange:#ed4c22;--gold:#f5a526;--line:#ffffff22}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--cream);font-family:'DM Sans',sans-serif}button,a{font:inherit}button{color:inherit}a{text-decoration:none;color:inherit}header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:absolute;top:0;width:100%;z-index:20;border-bottom:1px solid var(--line)}.logo{display:flex;align-items:center;gap:10px;letter-spacing:3px;font-weight:700}.logo i{width:31px;height:31px;border-radius:50%;background:linear-gradient(#f5a526,#ed4c22 55%,#32100b);box-shadow:0 0 18px #ed4c2255}.logo b{color:var(--orange)}.langs{display:flex;gap:5px}.langs button{border:0;background:transparent;font-size:11px;padding:8px;cursor:pointer;color:#777}.langs button.active{color:#fff;border-bottom:1px solid var(--orange)}.gate{min-height:100vh;padding:145px 7vw 70px;position:relative;overflow:hidden}.gate:before{content:'';width:520px;height:520px;position:absolute;right:-120px;top:80px;border-radius:50%;background:radial-gradient(circle,#f4a428,#e74820 60%,#3d130c);opacity:.72}.gateIntro{position:relative;z-index:2;max-width:760px}.eyebrow{font-size:11px;letter-spacing:3px;color:var(--gold);font-weight:700}.gate h1,.panel h2,.contact h2{font:600 clamp(56px,8vw,110px)/.92 'Playfair Display',serif;margin:22px 0}.gate h1 em,.panel h2 em{color:var(--orange);font-weight:600}.gateIntro>p:last-child{font-size:17px;line-height:1.7;color:#c6beb3;max-width:570px}.choices{display:grid;grid-template-columns:1fr 1fr;position:relative;z-index:3;margin-top:70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.choice{height:135px;background:#100f0ecc;border:0;text-align:left;display:grid;grid-template-columns:60px 1fr 60px;align-items:center;padding:0 28px;cursor:pointer}.choice:first-child{border-right:1px solid var(--line)}.choice:hover{background:var(--orange)}.choice .number{font-size:11px;color:#918b83}.choiceTitle{font:600 clamp(32px,4vw,54px) 'Playfair Display',serif}.arrow{font-size:28px;text-align:right}.panel{display:none;background:var(--cream);color:var(--black);min-height:100vh}.panel.visible{display:block;position:absolute;z-index:10;inset:0 auto auto 0;width:100%}.back{position:absolute;top:24px;left:5vw;z-index:25;border:1px solid #ffffff55;background:#100f0e99;color:white;border-radius:30px;padding:11px 17px;cursor:pointer}.panelHero{min-height:720px;background:#111;color:white;display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden}.panelHero>div{padding:100px 7vw}.panelHero p:not(.eyebrow){line-height:1.7;color:#c5beb5;max-width:570px}.panelHero img{width:100%;height:720px;object-fit:cover}.pizzaHero img{object-position:center 46%}.sweetHero img{object-position:center 43%}.prices,.offers{padding:105px 7vw}.priceHead{max-width:720px}.priceHead h3,.photoStory h3{font:600 clamp(40px,5vw,68px) 'Playfair Display',serif;margin:18px 0}.priceHead>p:last-child{color:#756e65}.tiers,.offerGrid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:55px}.tiers article{border:1px solid #cfc5b4;padding:32px 24px;display:flex;flex-direction:column;min-height:250px}.tiers article+article{border-left:0}.tiers b{font:600 48px 'Playfair Display',serif}.tiers span{color:#756e65}.tiers strong{font-size:28px;color:var(--orange);margin-top:auto}.tiers small{color:#756e65}.tiers .best{background:var(--black);color:white}.tiers i,.featured i{font-style:normal;font-size:9px;letter-spacing:2px;color:var(--gold);margin-bottom:18px}.photoStory{background:#181715;color:white;display:grid;grid-template-columns:1fr 1fr;align-items:center}.photoStory img{width:100%;height:650px;object-fit:cover}.photoStory>div{padding:75px 8vw}.photoStory p:not(.eyebrow){line-height:1.7;color:#aaa}.cta{display:inline-block;background:var(--orange);color:white;padding:16px 22px;margin-top:20px;font-weight:700;font-size:13px}.dessertAdd{margin:0;background:var(--gold);padding:35px 7vw;display:flex;justify-content:space-between;align-items:center}.dessertAdd small{font-size:10px;letter-spacing:2px}.dessertAdd h3{font:600 34px 'Playfair Display',serif;margin:7px 0}.dessertAdd>strong{font-size:34px}.dessertAdd>strong span{font-size:12px}.offerGrid{grid-template-columns:repeat(3,1fr)}.offerGrid article{border:1px solid #cfc5b4;padding:35px;min-height:330px;display:flex;flex-direction:column}.offerGrid article+article{border-left:0}.offerGrid article>span{color:var(--orange);font-size:11px}.offerGrid h4{font:600 30px 'Playfair Display',serif;margin:24px 0 10px}.offerGrid p{color:#746c62;line-height:1.6}.offerGrid strong{font-size:30px;color:var(--orange);margin-top:auto}.offerGrid .featured{background:var(--orange);color:white}.offerGrid .featured p,.offerGrid .featured strong{color:white}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#111}.gallery img{width:100%;height:480px;object-fit:cover}.gallery img:nth-child(1){object-position:center 42%}.gallery img:nth-child(n+2):nth-child(-n+4){object-position:center 46%}.note{padding:45px 7vw;text-align:center}.note p{max-width:760px;margin:auto;line-height:1.7;color:#6f675e}.contact{padding:110px 7vw;background:linear-gradient(145deg,#f4a827,#e64220);text-align:center;color:white}.contact .eyebrow{color:white}.contact p:not(.eyebrow){max-width:620px;margin:0 auto;line-height:1.7}.contact .dark{background:#111;margin:30px 0}.contact small{display:block}footer{padding:32px 5vw;display:flex;justify-content:space-between;align-items:center;color:#817a71;font-size:11px}
@media(max-width:800px){.gate{padding:120px 6vw 50px}.gate:before{width:420px;height:420px;right:-240px;top:90px}.gate h1{font-size:58px}.choices{grid-template-columns:1fr;margin-top:45px}.choice{height:110px}.choice:first-child{border-right:0;border-bottom:1px solid var(--line)}.panelHero{grid-template-columns:1fr;min-height:0}.panelHero>div{padding:110px 6vw 55px}.panel h2{font-size:55px}.panelHero img{height:520px}.tiers{grid-template-columns:1fr 1fr}.tiers article+article{border-left:1px solid #cfc5b4}.tiers article:nth-child(n+3){border-top:0}.photoStory{grid-template-columns:1fr}.photoStory img{height:500px}.photoStory>div{padding:70px 6vw}.dessertAdd{align-items:flex-start;gap:20px;flex-direction:column}.offerGrid{grid-template-columns:1fr}.offerGrid article+article{border-left:1px solid #cfc5b4;border-top:0}.gallery{grid-template-columns:1fr 1fr}.gallery img{height:330px}.contact{padding:85px 6vw}footer{flex-direction:column;gap:10px}.prices,.offers{padding:75px 6vw}}@media(max-width:480px){.tiers{grid-template-columns:1fr}.tiers article{min-height:210px}.tiers article:nth-child(n+2){border-top:0}.gallery img{height:260px}.choice{grid-template-columns:35px 1fr 35px;padding:0 18px}.choiceTitle{font-size:37px}.logo span{font-size:13px}.panelHero img{height:450px}.pizzaHero img{object-position:center 44%}}
.arrow{width:46px;height:46px;justify-self:end;border:1px solid #ffffff42;border-radius:50%;display:grid;place-items:center;transition:transform .25s ease,background .25s ease,border-color .25s ease;font-size:0}.arrow svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.choice:hover .arrow{transform:translateX(5px);background:#fff;color:var(--orange);border-color:#fff}@media(max-width:480px){.arrow{width:38px;height:38px}.arrow svg{width:18px;height:18px}}
.panel.visible{position:relative;inset:auto}.subpage .gate,.subpage header{display:none}.serviceFee{margin:0 7vw 100px;padding:42px;background:#181715;color:white;display:grid;grid-template-columns:1.5fr .7fr;gap:60px;align-items:center}.serviceFee h3{font:600 58px 'Playfair Display',serif;margin:12px 0}.serviceFee p{color:#aaa;line-height:1.7;margin-bottom:0}.distance{border-left:1px solid #ffffff33;padding-left:45px}.distance strong{font-size:28px;color:var(--gold)}
@media(max-width:800px){.serviceFee{margin:0 6vw 75px;padding:30px;grid-template-columns:1fr;gap:30px}.distance{border-left:0;border-top:1px solid #ffffff33;padding:28px 0 0}.serviceFee h3{font-size:48px}.panel.visible{min-height:0}.back{position:fixed;top:14px;left:14px;background:#100f0eee}.panelHero>div{padding-top:85px}.gallery img{content-visibility:auto}.contact h2{font-size:52px}}
#quoteForm{max-width:900px;margin:45px auto 0;text-align:left;background:#fff;color:var(--black);padding:38px}.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}#quoteForm label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700}#quoteForm input,#quoteForm select,#quoteForm textarea{width:100%;border:1px solid #d9d1c4;background:#f8f4ed;border-radius:0;padding:14px;font:inherit;font-size:15px;color:#111;outline:none}#quoteForm input:focus,#quoteForm select:focus,#quoteForm textarea:focus{border-color:var(--orange);box-shadow:0 0 0 2px #ed4c2218}.wide{margin-top:22px}.submit{width:100%;margin-top:24px;border:0;background:var(--black);color:#fff;padding:17px 20px;font-weight:700;cursor:pointer}.submit:hover{background:#2b2825}.contactAlt{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:14px 26px;margin-top:28px}.contactAlt span{width:100%;font-size:12px}.contactAlt a{border-bottom:1px solid #ffffff99;padding-bottom:4px;font-weight:700}
@media(max-width:650px){#quoteForm{padding:24px 18px;margin-top:32px}.formGrid{grid-template-columns:1fr;gap:17px}.contact{padding-left:4vw;padding-right:4vw}.contactAlt{flex-direction:column}.submit{font-size:14px}}
.reviews{padding:110px 7vw;background:var(--cream);color:var(--black);display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:start}.reviewIntro{position:sticky;top:50px}.reviews h2{font:600 clamp(48px,6vw,82px)/.94 'Playfair Display',serif;margin:22px 0}.reviews h2 em{color:var(--orange);font-weight:600}.reviewLead{color:#756e65;line-height:1.7;max-width:520px}#reviewForm{background:#fff;padding:40px;border:1px solid #d9d1c4;box-shadow:0 20px 60px #271b1010}#reviewForm label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700}#reviewForm input:not([type=radio]):not([type=checkbox]),#reviewForm textarea{width:100%;border:1px solid #d9d1c4;background:#f8f4ed;padding:14px;font:inherit;font-size:15px;color:#111;outline:none}#reviewForm input:focus,#reviewForm textarea:focus{border-color:var(--orange);box-shadow:0 0 0 2px #ed4c2218}.reviewGrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.ratingField{border:0;padding:0;margin:0 0 30px}.ratingField legend{font-size:12px;font-weight:700;margin-bottom:10px}.stars{display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:5px}.stars input{position:absolute;opacity:0;pointer-events:none}.stars label{display:block!important;font-size:42px!important;line-height:1;cursor:pointer;color:#d8d0c5;transition:color .18s ease,transform .18s ease}.stars label:hover,.stars label:hover~label,.stars input:checked~label{color:var(--gold)}.stars label:hover{transform:translateY(-2px)}.stars input:focus-visible+label{outline:2px solid var(--orange);outline-offset:4px}.photoUpload{margin-top:22px;border:1px dashed #c8bca9;padding:20px;background:#faf7f1}.photoUpload input{padding:0!important;border:0!important;background:transparent!important}.photoUpload small{color:#756e65;font-weight:400}.photoPreview{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.photoPreview img{width:100%;height:120px;object-fit:cover}.reviewConsent{margin-top:22px;display:grid!important;grid-template-columns:20px 1fr;align-items:start;gap:10px!important;font-weight:400!important;line-height:1.5}.reviewConsent input{margin-top:3px;accent-color:var(--orange)}.reviewSubmit{width:100%;margin-top:24px;border:0;background:var(--orange);color:#fff;padding:17px 20px;font-weight:700;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.reviewSubmit:hover{background:#d9401a}.reviewStatus{min-height:20px;margin:15px 0 0;color:#756e65;font-size:12px;line-height:1.5}@media(max-width:900px){.reviews{grid-template-columns:1fr;gap:45px}.reviewIntro{position:static}}@media(max-width:650px){.reviews{padding:80px 4vw}.reviews h2{font-size:52px}#reviewForm{padding:25px 18px}.reviewGrid{grid-template-columns:1fr;gap:17px}.stars{justify-content:center}.stars label{font-size:39px!important}.photoPreview img{height:95px}}
