/* A single dark surface system; source photographs and artwork keep their own colors. */
:root{--ink:#0d0d0d;--paper:#f5f5f5;--muted:#c3c3c3;--line:#343434;--surface:#151515;--radius:16px;--control-radius:10px}
body{background:var(--ink);color:var(--paper)}
h1,h2,h3{text-wrap:balance}h2{line-height:1.08}.approved-copy{line-height:1.8}.lead-copy{line-height:1.8}
.section{padding-block:96px}.container{width:min(1240px,calc(100% - 112px))}.two-columns{gap:clamp(48px,6vw,86px)}
.site-header{top:16px;width:min(1424px,calc(100% - 40px));margin:16px auto 0;border:1px solid #ffffff29;border-radius:20px;background:#1a1a1a;box-shadow:0 12px 40px #00000025,inset 0 1px 0 #ffffff12;isolation:isolate}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.site-header{background:linear-gradient(125deg,#ffffff0f,#ffffff03 50%,#ffffff09),#10101088;backdrop-filter:blur(28px) saturate(0);-webkit-backdrop-filter:blur(28px) saturate(0)}}
.header-inner{width:calc(100% - 56px);min-height:104px;gap:28px}.brand img{width:75px;height:88px}.desktop-nav nav{gap:clamp(20px,2.1vw,32px)}.desktop-nav a{font-size:16px}.header-actions{gap:16px}.header-socials a{border-radius:9px}.header-socials a:hover{background:#ffffff0c;color:#fff}
.mobile-menu{border-radius:0 0 20px 20px;border-top-color:#ffffff1c;padding:15px 28px 25px}.mobile-menu a{font-size:20px;border-color:#ffffff16}.mobile-menu a:last-child{border:0}.menu-toggle{border-radius:8px}
.hero{margin-top:-122px;min-height:820px;padding-top:122px;background:#0d0d0d}.hero-plate{inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;transform:none;opacity:1;border:0;border-radius:0}.hero-art:after{background:linear-gradient(180deg,#00000012 0%,#00000015 60%,#0d0d0d 100%)}#light-rays{opacity:.38;pointer-events:none}.hero-content{padding:100px 0 150px}.hero h1{font-size:clamp(70px,7.2vw,108px);max-width:1100px;text-shadow:0 2px 30px #00000055}.hero-content>p{font-size:20px;max-width:720px;color:#e3e3e3}.hero-bottom{bottom:35px}.motion-control{border:1px solid #ffffff26;border-radius:50px;background:#10101040;padding:9px 16px;color:#ddd}.scroll-cue{border-color:#ffffff50;background:#10101040}
.button{border-radius:var(--control-radius);padding-inline:24px;box-shadow:0 1px 0 #ffffff14;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000020}.button:active{transform:translateY(0)}.button-outline{border-color:#696969;background:#ffffff03}.button-outline:hover{background:#f5f5f5;border-color:#f5f5f5}.button-small{border-radius:9px;min-height:48px;padding:12px 18px}.text-link{padding-bottom:13px;gap:30px;border-color:#777;transition:border-color .2s}.text-link:hover{border-color:#fff}
.gift-feature{border-top:0}.gift-visual{background:#121212;border:1px solid #ffffff0c;border-radius:var(--radius);padding:25px}.gift-visual img{border-radius:10px}.gift-feature h2{font-size:clamp(46px,4.3vw,62px)}
.patio-feature,.stats-section,.patio-hours{background:var(--surface);color:var(--paper);--muted:#c3c3c3;--line:#393939;border-block:1px solid #ffffff0c}.patio-layout{align-items:center}.patio-copy h2{font-size:clamp(44px,4.2vw,60px);margin-bottom:28px}.patio-copy .asl-graphic{width:180px;padding:0;background:transparent;filter:none;margin-bottom:30px}.status{display:inline-flex;border:1px solid #666;border-radius:30px;padding:8px 14px;font-size:12px;line-height:1.5;letter-spacing:.08em;margin-bottom:24px}.status i{width:6px;height:6px}.patio-photo{width:100%;max-width:510px;justify-self:end;border-radius:var(--radius);overflow:hidden;border:1px solid #ffffff19}.patio-photo img{width:100%;height:auto;object-fit:contain}.patio-feature .approved-copy{font-size:17px}
.concept-visual,.vision-visual,.about-visual,.menu-visual{border-radius:var(--radius);overflow:hidden;border:1px solid #ffffff12}.concept-visual img,.vision-visual img,.about-visual img{height:auto;aspect-ratio:auto;object-fit:contain}.about-visual{max-width:540px;justify-self:end}.about-visual img{max-height:650px}.vision-visual{max-height:none}.menu-visual img{height:auto;min-height:0;object-fit:contain}.menu-feature-body{align-items:center}.menu-visual{position:static}.press-strip{padding-top:58px}.press-strip img{border-radius:10px}.perspective{padding-block:80px}.perspective .quote-text{font-size:clamp(40px,4.2vw,58px)}
.values-section{padding-top:0}.values-grid{gap:32px;padding-top:40px}.values-grid article{padding-right:28px;border-right:1px solid #ffffff17}.values-grid article:last-child{border-right:0;padding-right:0}.value-symbol{color:#eee;font-size:34px}.values-grid h3{font-size:34px}.values-grid .approved-copy{font-size:17px}.menu-feature,.contact-section,.how-section,.social-section{background:var(--surface);border-block:1px solid #ffffff0a}.menu-item{padding-block:25px}.menu-item h2,.menu-item h3{font-size:33px;text-wrap:initial}.menu-item .approved-copy{font-size:17px}.approved-prices ul{font-size:20px;color:#eee}.menu-price-panel{background:#151515;border:1px solid #ffffff18;border-radius:var(--radius);padding:28px}.menu-price-panel .approved-prices{font-size:18px}.menu-page{gap:65px}.menu-price-panel p{margin-bottom:0}.menu-price-panel ul{margin-bottom:26px}
.page-hero{padding:82px 0 54px}.page-hero h1{font-size:clamp(62px,7vw,96px)}.patio-intro{padding-bottom:50px}.illustrated-menu{max-width:960px}.menu-art-link{display:block;border-radius:14px;overflow:hidden;border:1px solid #ffffff24;background:#151515;box-shadow:0 20px 65px #00000030}.menu-art-link img{width:100%;height:auto;object-fit:contain;filter:none}.menu-original-action{display:flex;justify-content:center;margin-top:25px}.closure-copy{font-size:46px;color:#eee}.stats-grid{gap:40px}.stats-grid article{padding:8px 30px;border-right:1px solid #ffffff20}.stats-grid article:last-child{border:0}.stat-value{font-size:88px}.stats-grid h3{font-size:32px}.stats-grid .approved-copy{font-size:17px}.origins-section{gap:85px}.approved-socials{margin-top:30px}.hours-contact{gap:80px}.opening-hours{font-variant-numeric:tabular-nums}.opening-hours p{border-bottom:1px solid #ffffff12;padding:8px 0;line-height:1.8}
.faq-section{grid-template-columns:1fr 1.65fr;gap:80px}.faq-list details{padding-inline:2px}.faq-list summary{font-size:18px;padding-block:23px}.faq-list summary i{display:grid;place-items:center;width:32px;height:32px;border:1px solid #ffffff30;border-radius:50%;font-size:22px;line-height:1}.faq-list details[open] summary{color:#fff}.faq-list .approved-copy{font-size:17px;line-height:1.8;padding-bottom:28px}.faq-list details[open]{background:linear-gradient(90deg,#ffffff02,transparent)}
.form-grid{gap:22px}.form-grid input,.form-grid textarea{background:#1c1c1c;border:1px solid #494949;border-radius:10px;padding:13px 15px;margin-top:9px;transition:border-color .2s,background .2s}.form-grid input:hover,.form-grid textarea:hover{border-color:#777}.form-grid input:focus,.form-grid textarea:focus{border-color:#bbb;background:#212121}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#aaa}.inquiry-result{border-radius:10px}.df-contact-form>.demo-note{color:#b3b3b3}.df-contact-form .button{min-width:145px}
.contact-details{gap:20px;grid-template-columns:1fr 1fr 1.35fr;margin-bottom:38px;font-size:17px}.contact-card{display:flex;align-items:center;gap:16px;min-height:112px;padding:22px!important;border:1px solid #ffffff24!important;border-radius:14px;background:#161616;transition:background .2s,border-color .2s}.contact-card:hover{background:#202020;border-color:#ffffff70!important;color:#fff!important}.contact-icon{width:45px;height:45px;display:grid;place-items:center;flex:none;border:1px solid #ffffff30;border-radius:50%;background:#ffffff04}.contact-icon svg{width:21px;height:21px}.contact-card>span:nth-child(2){flex:1;min-width:0}.contact-card>span:last-child{font-size:22px;align-self:center}.map-frame{border-radius:var(--radius);overflow:hidden;border:1px solid #ffffff20}.map-frame iframe{background:#151515}
.events-section{padding-top:75px;max-width:1050px}.events-intro{max-width:820px;margin:0 auto 65px;text-align:center}.events-intro h2{font-size:clamp(46px,5vw,70px);max-width:800px;margin-inline:auto}.events-intro .lead-copy{max-width:720px;margin:auto;font-size:19px}.event-contact-panel{background:#151515;border:1px solid #ffffff22;border-radius:20px;padding:48px}.event-contact-panel>h2{font-size:43px;text-align:center}.event-contact-panel>.approved-copy{max-width:690px;text-align:center;margin:auto}.event-contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:35px;font-size:17px}.event-contact-actions .contact-card{min-height:90px}.provider-frame{border-radius:var(--radius);border:1px solid #ffffff24;background:#151515}.provider-link .button{min-width:180px}
.site-footer{background:#090909;border-color:#303030;padding-top:65px}.footer-top{gap:40px;padding-bottom:48px}.footer-brand img{width:88px;height:105px}.footer-heading{margin-top:4px;font-size:15px}.footer-bottom{border-color:#2b2b2b}.footer-socials a{padding-block:5px}.footer-top nav{gap:9px}.footer-credit img{border-radius:0}
@media(min-width:1600px){.hero{min-height:900px}}
@media(max-width:1250px){.header-inner{width:calc(100% - 40px);gap:20px}.header-actions{gap:10px}.desktop-nav nav{gap:18px}.desktop-nav a{font-size:15px}.container{width:calc(100% - 80px)}.contact-details{grid-template-columns:1fr 1fr}.contact-details .contact-card:last-child{grid-column:1/-1}.hero{min-height:780px}.hero h1{font-size:clamp(72px,7.5vw,100px)}}
@media(max-width:1100px){.header-inner{min-height:96px}.hero{margin-top:-114px;padding-top:114px}.header-actions{gap:20px}.container{width:calc(100% - 64px)}.section{padding-block:76px}.values-section{padding-top:0}.two-columns{gap:42px}.patio-photo{max-width:450px}.patio-copy h2{font-size:45px}.faq-section{grid-template-columns:1fr;gap:25px}.stats-grid{gap:20px}.stats-grid article{padding:0 20px}.stat-value{font-size:76px}.stats-grid h3{font-size:30px}.values-grid{gap:24px}.values-grid article{padding-right:20px}.values-grid h3{font-size:31px}.event-contact-panel{padding:36px}.footer-top{gap:45px 60px}.menu-page{gap:40px}.menu-price-panel{padding:24px}}
@media(max-width:700px){.container{width:calc(100% - 40px)}.section{padding-block:62px}.site-header{top:10px;width:calc(100% - 20px);margin-top:10px;border-radius:16px}.header-inner{width:calc(100% - 24px);min-height:84px;gap:10px}.brand img{width:52px;height:65px}.header-actions{gap:9px}.button-small{font-size:12px;padding:10px 12px;min-height:43px;gap:12px}.header-socials a{width:32px}.header-socials svg{width:21px;height:21px}.menu-toggle{width:29px;padding-left:3px}.hero{margin-top:-96px;padding-top:96px;min-height:740px}.hero-plate{width:100%;height:100%;object-fit:cover;object-position:51% center}.hero-content{padding:110px 0 150px}.hero h1{font-size:clamp(51px,12.5vw,82px);line-height:1.04}.hero-content>p{font-size:18px;line-height:1.75;max-width:420px}.hero-bottom{left:22px;right:22px;bottom:32px}.motion-control{font-size:10px;padding:8px 12px}.scroll-cue{width:40px;height:40px}.two-columns{grid-template-columns:1fr;gap:32px}.gift-visual{padding:15px}.gift-feature h2{font-size:46px}.patio-layout{gap:38px}.patio-photo{max-width:470px;justify-self:center}.patio-photo img{max-height:560px;object-fit:contain}.patio-copy h2{font-size:45px}.patio-copy .asl-graphic{width:170px;margin-bottom:25px}.patio-copy .approved-copy{font-size:17px}.concept-visual,.vision-visual{max-height:none}.values-section{padding-top:0}.values-grid{grid-template-columns:1fr;gap:27px}.values-grid article{padding:0 0 27px;border-right:0;border-bottom:1px solid #ffffff1c}.values-grid article:last-child{border:0;padding:0}.values-grid h3{font-size:34px}.menu-feature-body{gap:35px}.menu-item h2,.menu-item h3{font-size:32px}.menu-price-panel{border:1px solid #ffffff24;padding:25px}.menu-page{gap:36px}.approved-prices ul{font-size:19px}.perspective{padding-block:65px}.page-hero{padding:60px 0 40px}.page-hero h1{font-size:62px}.stats-grid{grid-template-columns:1fr;gap:32px}.stats-grid article{padding:0 0 30px;border-right:0;border-bottom:1px solid #ffffff22}.stats-grid article:last-child{padding:0}.stats-grid h3{font-size:34px}.stat-value{font-size:78px}.about-visual{max-width:470px;justify-self:center}.about-visual img{max-height:none}.faq-section{gap:25px}.faq-list summary{font-size:17px;line-height:1.7}.faq-list .approved-copy{font-size:16px}.contact-details{grid-template-columns:1fr;gap:14px;font-size:17px}.contact-card{min-height:91px;padding:20px!important}.form-grid{gap:20px 15px}.form-grid input,.form-grid textarea{padding:12px}.event-contact-panel{padding:28px 20px;border-radius:16px}.events-intro{margin-bottom:36px}.events-intro h2{font-size:46px}.events-intro .lead-copy{font-size:17px}.event-contact-panel>h2{font-size:37px}.event-contact-panel>.approved-copy{font-size:17px}.event-contact-actions{grid-template-columns:1fr;gap:14px;margin-top:25px;font-size:16px}.event-contact-actions .contact-card{padding:17px!important;gap:12px}.event-contact-actions .contact-icon{width:38px;height:38px}.footer-top{gap:35px 25px}.footer-brand{grid-column:1/-1}.footer-top>div:nth-child(3){grid-column:1/-1;grid-row:3}.site-footer{padding-top:55px}.closure-copy{font-size:38px}.illustrated-menu{width:calc(100% - 28px)}.menu-original-action .button{font-size:13px}.mobile-menu{padding-inline:22px}}
@media(max-width:370px){.site-header{width:calc(100% - 16px)}.header-inner{width:calc(100% - 20px);gap:6px}.header-actions{gap:5px}.header-socials a{width:29px}.brand img{width:47px;height:61px}.button-small{padding:10px;font-size:11px;gap:9px}.hero h1{font-size:49px}.hero-content{padding-top:100px}.container{width:calc(100% - 36px)}.footer-top{grid-template-columns:1fr}.footer-top>div:nth-child(3){grid-row:auto}.event-contact-panel{padding:25px 16px}.event-contact-actions .contact-card{padding:15px!important;gap:9px;font-size:14px}}
@media(prefers-reduced-motion:reduce){.button:hover{transform:none}}
/* Beat WordPress's first-block margin reset so the image continues behind the glass. */
.entry-content.wp-block-post-content>.hero{margin-block-start:-122px}
@media(max-width:1100px){.entry-content.wp-block-post-content>.hero{margin-block-start:-114px}}
@media(max-width:700px){.entry-content.wp-block-post-content>.hero{margin-block-start:-96px}}
/* Keep the Events contact options alongside the introduction on larger screens. */
.events-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;max-width:1240px}
.events-intro{margin:0;text-align:left}.events-intro h2{font-size:60px;margin:0 0 26px}.events-intro .lead-copy{font-size:18px}
.event-contact-panel{padding:36px}.event-contact-panel>h2{font-size:38px;text-align:left}.event-contact-panel>.approved-copy{text-align:left;font-size:17px}
.event-contact-actions{grid-template-columns:1fr;gap:14px;margin-top:26px}
@media(max-width:1100px){.events-section{gap:32px}.events-intro h2{font-size:49px}.event-contact-panel{padding:28px}.event-contact-panel>h2{font-size:33px}.event-contact-actions{font-size:15px}.event-contact-actions .contact-card{gap:12px;padding:16px!important}}
@media(max-width:700px){.events-section{grid-template-columns:1fr;gap:35px}.events-intro h2{font-size:46px}.events-intro .lead-copy{font-size:17px}.event-contact-panel{padding:26px 20px}.event-contact-panel>h2{font-size:36px}}

/* Compact header and centered compositions, requested after the first polish. */
:root{--control-radius:999px;--header-offset:98px}
html{scroll-padding-top:110px}
.site-header{border-radius:36px}
.header-inner{min-height:80px;width:calc(100% - 48px);gap:24px}
.brand img{width:59px;height:70px}
.desktop-nav nav{gap:clamp(17px,1.7vw,26px)}
.desktop-nav a{font-size:15px}
.header-actions{gap:12px}
.mobile-menu{border-radius:0 0 32px 32px}
.button,.button-small{border-radius:999px}
.button{padding-inline:28px;min-height:54px}
.button-small{min-height:44px;padding:10px 20px;gap:20px}
.hero,.entry-content.wp-block-post-content>.hero{margin-block-start:calc(-1 * var(--header-offset))}
.hero{padding-top:var(--header-offset)}
.hero-art:after{background:linear-gradient(180deg,#00000040 0%,#00000059 60%,#0d0d0d 100%)}
#light-rays{opacity:.20}
.hero-bottom{justify-content:center}
.scroll-cue{width:46px;height:46px;background:#10101060;transition:background .2s,border-color .2s}
.scroll-cue:hover{background:#ffffff12;border-color:#fff}
.gift-feature{padding-block:64px}
.gift-layout{max-width:1000px;grid-template-columns:330px 1fr;gap:64px;align-items:center}
.gift-artwork{width:100%;max-width:330px;margin:auto}
.gift-artwork img{width:100%;height:auto;object-fit:contain}
.gift-layout>div:last-child{text-align:center}
.gift-feature h2{font-size:clamp(43px,4vw,56px);margin-inline:auto}
.gift-feature .approved-copy{font-size:17px;max-width:590px;margin-inline:auto}
.gift-feature .button{margin-top:26px}
.patio-hero{padding-bottom:40px}
.patio-context{text-align:center;margin-bottom:50px}
.patio-context .asl-graphic{margin:0 auto 24px}
.patio-walkins{font-family:var(--sans);font-size:20px;line-height:1.6;letter-spacing:0}
.footer-brand img{width:112px;height:132px;margin-bottom:18px}
.footer-top{grid-template-columns:1.25fr .9fr 1.25fr 1fr;gap:42px;align-items:start}
.footer-heading{margin-top:10px;margin-bottom:22px}
.footer-top nav a{padding-block:2px}
.footer-socials{gap:22px}
@media(min-width:1101px) and (max-width:1240px){.desktop-nav{display:none}.menu-toggle{display:flex}.mobile-menu{display:block}.mobile-menu[hidden]{display:none!important}}
@media(max-width:1100px){.header-inner{min-height:80px}.brand img{width:59px;height:70px}.footer-top{grid-template-columns:1.1fr 1fr;gap:40px 70px}.gift-layout{grid-template-columns:.75fr 1.25fr;gap:36px}.gift-artwork{max-width:280px}.gift-feature h2{font-size:44px}}
@media(max-width:700px){:root{--header-offset:80px}.site-header{border-radius:30px}.header-inner{min-height:68px;width:calc(100% - 24px);gap:8px}.brand img{width:45px;height:56px}.header-actions{gap:8px}.button-small{padding:9px 13px;min-height:42px;gap:12px}.button{min-height:52px}.header-actions .button{min-height:42px}.mobile-menu{padding-inline:24px;border-radius:0 0 28px 28px}.hero-content{padding-top:110px}.hero-bottom{bottom:30px}.gift-feature{padding-block:52px}.gift-layout{grid-template-columns:1fr;gap:20px}.gift-artwork{max-width:245px}.gift-feature .image-feature>div:last-child{order:0}.gift-feature h2{font-size:44px}.gift-feature .approved-copy{font-size:16px}.gift-feature .button{margin-top:24px}.footer-top{gap:30px 25px}.footer-brand img{width:102px;height:120px}.footer-brand p{max-width:300px}.footer-heading{margin-bottom:16px}.patio-context{margin-bottom:36px}.patio-walkins{font-size:17px}.patio-hero{padding-bottom:30px}}
@media(max-width:370px){.header-inner{width:calc(100% - 20px);gap:5px}.header-actions{gap:4px}.button-small{padding-inline:10px}.brand img{width:42px}.gift-artwork{max-width:220px}.footer-top{grid-template-columns:1fr}}

/* Final layout: fixed navigation, centered gift artwork, quieter hierarchy. */
:root{--sans:Manrope,Arial,sans-serif;--body-copy:19px}
body{font-size:var(--body-copy);font-weight:400;letter-spacing:.005em;line-height:1.75}
.approved-copy,.lead-copy{font-size:var(--body-copy);font-weight:400;line-height:1.75;color:#c8c8c8}
.gift-feature .approved-copy,.patio-feature .approved-copy,.values-grid .approved-copy,.menu-item .approved-copy,.stats-grid .approved-copy,.faq-list .approved-copy,.events-intro .lead-copy,.event-contact-panel>.approved-copy{font-size:var(--body-copy);line-height:1.75}
.hero-content>p{font-size:21px;line-height:1.65;font-weight:400;max-width:650px}
.section-copy{font-size:20px;line-height:1.75}
.site-header{position:fixed;left:50%;transform:translateX(-50%);margin:0;top:16px}
.entry-content.wp-block-post-content{padding-block-start:var(--header-offset)}
.header-inner{min-height:80px}
.brand img{width:68px;height:78px}
.desktop-nav a{font-size:16px;font-weight:600}
.header-actions{gap:12px}
.mobile-menu{position:absolute;top:calc(100% + 10px);left:0;right:0;max-height:calc(100dvh - 128px);overflow-y:auto;overscroll-behavior:contain;background:#111111;border:1px solid #ffffff26;border-radius:26px;padding:16px 28px 22px;box-shadow:0 24px 65px #0008;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}
.mobile-menu a{font-size:19px;font-weight:500;padding-block:12px}
.button{position:relative;font-size:16px;font-weight:600;line-height:1.4;min-height:46px;padding:9px 25px;gap:28px}
.button span:last-child{font-size:19px}
.header-actions .button-small{min-height:38px;padding:7px 19px;font-size:15px;gap:18px}
.header-actions .button-small:before{content:'';position:absolute;inset:-3px 0;border-radius:inherit}
.hero-actions .button{min-height:46px;padding:9px 25px}
.scroll-cue{width:44px;height:62px;border-radius:24px;border:1px solid #ffffff40;background:#0d0d0d66;display:grid;place-items:center}
.scroll-cue svg{width:20px;height:30px;transition:transform .25s}
.scroll-cue:hover svg,.scroll-cue:focus-visible svg{transform:translateY(4px)}
.scroll-cue:hover{border-color:#ffffffaa;background:#ffffff0d}
.hero-bottom{bottom:28px}
.gift-layout{display:flex;flex-direction:column;align-items:center;max-width:780px;gap:16px;text-align:center}
.gift-artwork{width:260px;max-width:100%;margin:0 auto}
.gift-layout>div:last-child{width:100%}
.gift-feature h2{max-width:720px;margin-inline:auto;font-size:clamp(42px,4vw,56px)}
.gift-feature .approved-copy{max-width:680px;margin-inline:auto}
.gift-feature{padding-block:50px 72px}
.gift-feature .button{margin-top:24px}
.press-strip{width:min(560px,calc(100% - 64px));padding:45px 0 0;margin-inline:auto}
.press-strip img{width:100%;height:auto;max-height:none;object-fit:contain;border-radius:0}
.vision-feature{padding-top:55px}
.page-hero{padding-top:60px;padding-bottom:38px}
.page-hero h1{font-size:clamp(46px,5vw,68px);line-height:1.1}
.page-hero.patio-hero{padding-bottom:30px}
.form-grid label{font-size:16px;font-weight:600}
.form-grid input,.form-grid textarea{font-size:18px;font-weight:400}
.faq-list summary{font-size:19px;font-weight:600}
.footer-brand img{width:122px;height:142px}
.footer-brand p,.footer-top,.footer-socials{font-size:16px}
.footer-heading{font-size:16px;font-weight:600}
body.admin-bar .site-header{top:48px}
@media(max-width:1240px){.header-actions{gap:18px}}
@media(max-width:1100px){:root{--body-copy:19px}.brand img{width:68px;height:78px}.gift-artwork{width:250px}.gift-layout{gap:16px;max-width:730px}.gift-feature h2{font-size:50px}.press-strip{width:min(460px,calc(100% - 64px))}.hero-content>p{font-size:21px}}
@media(max-width:782px){body.admin-bar .site-header{top:56px}}
@media(max-width:700px){:root{--body-copy:18px}.site-header{top:10px}.header-inner{min-height:68px;gap:6px}.brand img{width:54px;height:64px}.header-actions{gap:7px}.header-actions .button-small{min-height:36px;padding:7px 12px;font-size:13px;gap:12px}.button,.hero-actions .button{font-size:15px;min-height:44px;padding:9px 22px}.hero-content>p{font-size:20px;line-height:1.65}.scroll-cue{height:55px;width:40px}.scroll-cue svg{height:27px;width:18px}.mobile-menu{max-height:calc(100dvh - 108px);padding:12px 24px 18px;border-radius:24px}.gift-layout{gap:12px}.gift-artwork{width:220px}.gift-feature{padding-block:36px 55px}.gift-feature h2{font-size:43px}.gift-feature .approved-copy{font-size:18px}.press-strip{width:min(340px,calc(100% - 56px));padding-top:32px}.vision-feature{padding-top:36px}.page-hero{padding-top:45px;padding-bottom:28px}.page-hero h1{font-size:46px}.faq-list summary{font-size:18px}.form-grid label{font-size:15px}.form-grid input,.form-grid textarea{font-size:17px}.footer-brand img{width:112px;height:132px}.section-copy{font-size:19px}}
@media(max-width:370px){.header-inner{gap:4px}.header-actions{gap:3px}.header-actions .button-small{font-size:12px;padding-inline:10px;gap:9px}.brand img{width:48px;height:62px}.header-socials a{width:27px}.menu-toggle{width:26px}}
@media(prefers-reduced-motion:reduce){.scroll-cue:hover svg,.scroll-cue:focus-visible svg{transform:none}}

.button>span:last-child svg,.text-link>span:last-child svg,.contact-card>span:last-child svg{width:17px;height:17px}

/* Client review pass: balanced header, filled photo frames and clear content groups. */
html{scroll-behavior:smooth}
.site-header{width:min(1280px,90%)}
.header-inner{width:calc(100% - 44px);gap:20px;flex-wrap:nowrap}
.brand img{width:74px;height:80px}
.header-actions{flex-wrap:nowrap;flex:none;gap:12px}
.desktop-nav nav{gap:clamp(16px,1.5vw,22px)}
.desktop-nav a{font-size:15px}
.menu-toggle{width:32px;padding-left:0;justify-content:center;flex:none}
.menu-feature{padding-block:72px}
.menu-feature .section-heading{margin-bottom:34px;gap:56px;grid-template-columns:1.1fr 1fr}
.menu-feature .section-heading h2{margin-bottom:20px}
.menu-feature .section-heading .approved-copy{font-size:18px;line-height:1.7}
.menu-feature .approved-prices ul{font-size:18px;line-height:1.8;margin-bottom:0}
.menu-feature-body{align-items:stretch;gap:56px;grid-template-columns:1.1fr 1fr}
.menu-visual{position:relative;top:auto;min-height:540px;height:100%;width:100%;align-self:stretch}
.menu-visual img{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;object-position:44% center}
.menu-feature .menu-item{padding-block:19px}
.menu-feature .menu-item:first-child{padding-top:0}
.menu-feature .menu-item:last-child{padding-bottom:0}
.menu-feature .menu-item h3{font-size:31px;margin-bottom:7px}
.menu-feature .menu-item .approved-copy{font-size:18px;line-height:1.65}
.vision-feature{padding-top:80px;align-items:center}
.vision-copy{min-width:0}
.vision-copy .press-strip{width:100%;max-width:none;margin:0 0 36px;padding:0}
.vision-copy .press-strip img{width:100%;height:auto;object-fit:contain}
.about-intro{align-items:stretch}
.about-visual,.vision-visual{position:relative;width:100%;max-width:none;min-height:540px;align-self:stretch}
.about-visual img,.vision-visual img{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;object-position:center}
.patio-photo{position:relative;aspect-ratio:4/5;max-width:none}
.patio-photo img{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;object-position:center}
.concept-visual{align-self:center;height:auto;max-height:none}
.concept-visual img{width:100%;height:auto;max-height:none;object-fit:contain}
.how-section{padding-block:72px}
.how-section h2{margin-bottom:36px}
.how-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.how-step{padding:26px 22px;border:1px solid #ffffff20;border-radius:18px;background:#ffffff02}
.how-step .approved-copy{font-size:17px;line-height:1.7}
.how-step .approved-copy>:is(p,h3):first-child{font-size:20px;line-height:1.4;color:#f5f5f5;margin-bottom:22px}
.how-step .approved-copy>:is(p,h3):first-child strong{font-weight:600}
.how-step .approved-copy>ul{list-style:none;padding:0;margin:0}
.how-step .approved-copy>ul>li{margin:0}
.how-step .approved-copy ul ul{padding-left:19px;margin-top:14px}
.value-animation{width:92px;height:92px;margin:0 0 22px}
.value-animation svg{width:100%;height:100%}

.values-grid h3{font-size:32px}
.values-grid .approved-copy{font-size:18px}
.faq-list details{overflow-anchor:none}
.faq-list summary i{transition:transform .3s,background .3s,border-color .3s}
.faq-list details[data-collapsing] summary i{transform:none}
.faq-list details[data-expanding] summary i,.faq-list details[open]:not([data-collapsing]) summary i{transform:rotate(45deg);border-color:#aaa;background:#ffffff0a}
@media(max-width:1100px){.site-header{width:90%}.header-actions{gap:16px}.brand img{width:74px;height:80px}.how-steps{gap:12px}.how-step{padding:22px 16px}.how-step .approved-copy{font-size:16px}.how-step .approved-copy>:is(p,h3):first-child{font-size:19px}.menu-feature .section-heading,.menu-feature-body{gap:36px;grid-template-columns:1fr 1fr}.menu-visual{min-height:530px}.about-visual,.vision-visual{min-height:500px}.vision-copy .press-strip{margin-bottom:28px}.value-animation{width:80px;height:80px}.values-grid h3{font-size:30px}}
@media(max-width:700px){.site-header{width:calc(100% - 20px)}.header-inner{width:calc(100% - 24px);gap:6px}.brand img{width:57px;height:64px}.header-actions{gap:7px}.menu-toggle{width:29px}.menu-feature,.how-section{padding-block:55px}.menu-feature .section-heading,.menu-feature-body{grid-template-columns:1fr;gap:28px}.menu-feature .section-heading{margin-bottom:30px}.menu-visual{min-height:0;height:auto;aspect-ratio:4/3}.menu-feature .menu-item h3{font-size:31px}.menu-feature .menu-item .approved-copy{font-size:18px}.how-steps{grid-template-columns:1fr;gap:14px}.how-step{padding:25px}.how-step .approved-copy{font-size:18px}.how-step .approved-copy>:is(p,h3):first-child{font-size:21px;margin-bottom:18px}.about-visual,.vision-visual{min-height:0;aspect-ratio:4/5;max-height:none}.vision-feature{padding-top:55px}.vision-copy .press-strip{margin-bottom:28px}.value-animation{width:78px;height:78px;margin-bottom:18px}.values-grid h3{font-size:32px}}
@media(max-width:370px){.site-header{width:calc(100% - 16px)}.header-inner{width:calc(100% - 20px);gap:4px}.brand img{width:50px;height:62px}.header-actions{gap:3px}.menu-toggle{width:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.faq-list summary i{transition:none}}

.menu-page{align-items:start}.menu-price-panel{align-self:start}

/* Patio page: separate the original menu from its divider and group supporting information. */
.patio-hero + .illustrated-menu{padding-top:48px}
.patio-intro{max-width:1080px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);gap:80px;align-items:start;padding-block:90px}
.patio-intro .patio-context{text-align:left;margin:0}
.patio-intro h2{font-size:clamp(38px,3.7vw,54px);line-height:1.1;margin:0 0 30px;text-wrap:balance}
.patio-intro .asl-graphic{width:180px;margin:0 0 26px}
.patio-intro .patio-walkins{max-width:330px;color:#eee;font-size:18px!important;line-height:1.65;padding-top:22px;border-top:1px solid var(--line)}
.patio-story .approved-copy{font-size:19px;line-height:1.8}
.patio-story .approved-copy>p:last-child{margin-bottom:0}
.patio-how{background:var(--surface);border-top:1px solid var(--line);padding-block:76px}
.patio-how>.container{max-width:1080px}
.patio-how h2{text-align:center;margin:0 0 36px;font-size:clamp(38px,3.7vw,54px)}
.patio-how .approved-copy>ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;list-style:none;margin:0;padding:0;counter-reset:patio-step}
.patio-how .approved-copy>ul>li{display:flex;align-items:center;gap:24px;padding:26px 28px;margin:0;border:1px solid #ffffff20;border-radius:18px;background:#ffffff02;counter-increment:patio-step}
.patio-how .approved-copy>ul>li::before{content:counter(patio-step,decimal-leading-zero);font:32px/1 var(--serif);color:#a8a8a8;flex:0 0 36px}
.patio-how .approved-copy>ul>li p{margin:0;font-size:19px;line-height:1.65;color:#eee}
.patio-how .approved-copy>p{max-width:740px;text-align:center;margin:36px auto 0;font-size:18px;line-height:1.8}
@media(max-width:1100px){.patio-intro{gap:40px;padding-block:70px}.patio-how .approved-copy>ul>li{padding:24px 22px;gap:18px}}
@media(max-width:700px){.patio-hero + .illustrated-menu{padding-top:30px}.patio-intro{grid-template-columns:1fr;gap:32px;padding-block:55px}.patio-intro h2{font-size:40px;margin-bottom:25px}.patio-intro .asl-graphic{width:165px;margin-bottom:22px}.patio-story .approved-copy{font-size:18px}.patio-how{padding-block:55px}.patio-how h2{text-align:left;margin-bottom:28px}.patio-how .approved-copy>ul{grid-template-columns:1fr;gap:14px}.patio-how .approved-copy>ul>li{padding:23px 20px;gap:16px}.patio-how .approved-copy>ul>li p{font-size:18px}.patio-how .approved-copy>p{text-align:left;margin-top:30px;font-size:18px}}

/* Responsive audit: readable forms, aligned business hours, and stable image loading. */
.perspective .quote-text{font-family:var(--serif);font-weight:400;line-height:1.15;letter-spacing:-.035em;margin:0 0 .55em}
.how-step .approved-copy>h3{font-family:var(--sans);font-weight:600;letter-spacing:0;text-wrap:initial}
.opening-hours p{display:grid;grid-template-columns:112px minmax(0,1fr);column-gap:14px;align-items:baseline}
.opening-hours .hours-time{font-variant-numeric:tabular-nums}
.provider-section>.provider-link:first-child{margin:0 0 26px;text-align:right}
.provider-frame{width:100%;max-width:100%}
.form-grid label{min-width:0}
.contact-card>span:not(.contact-icon){min-width:0;overflow-wrap:anywhere}
@media(min-width:701px) and (max-width:1000px){.events-section{align-items:start}.events-intro{padding-top:8px}.hours-contact{grid-template-columns:1fr;gap:42px}.hours-contact .opening-hours{max-width:620px}.contact-section>.two-columns{grid-template-columns:1fr;gap:28px}.contact-section h2{margin-bottom:14px}.contact-section .section-copy{margin-bottom:0}.form-grid{gap:22px}.opening-hours p{grid-template-columns:150px 1fr}}
@media(max-width:700px){.opening-hours p{font-size:17px;grid-template-columns:100px minmax(0,1fr);column-gap:12px}.provider-section>.provider-link:first-child{text-align:center;margin-bottom:24px}.footer-top nav a{display:inline-flex;align-items:center;min-height:40px}.footer-top nav{gap:3px}.footer-socials a{min-height:40px;display:inline-flex;align-items:center}.form-grid{grid-template-columns:1fr}.form-grid input,.form-grid textarea{font-size:18px}.form-grid .form-wide{grid-column:1}}
@media(max-width:370px){.opening-hours p{grid-template-columns:1fr;row-gap:2px}.contact-card{gap:12px}.event-contact-actions .contact-card{gap:8px}}

@media(max-width:700px){.provider-frame{display:none}.provider-section{padding-block:36px 55px}.provider-section>.provider-link:first-child{margin:0}}

/* Release footer, policy pages and accessible form anti-spam field. */
.footer-socials a{display:inline-flex;gap:.5rem;align-items:center;min-height:44px}.footer-socials svg{width:20px;height:20px;flex-shrink:0}.footer-socials{flex-wrap:wrap}.footer-legal{display:flex;flex-wrap:wrap;gap:8px 24px}.footer-legal a{display:inline-flex;align-items:center;min-height:44px}.footer-bottom{gap:24px;flex-wrap:wrap}.legal-content{max-width:850px;margin-inline:auto;padding:0 24px 80px}.legal-content h2{font-size:clamp(26px,4vw,36px);margin-top:36px}.legal-content p,.legal-content li{font-size:18px;line-height:1.75}.policy-draft{padding:20px;border:1px solid #666;border-radius:16px}.df-honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}

#df-close-rezplus{position:fixed;right:max(16px,env(safe-area-inset-right));top:max(16px,env(safe-area-inset-top));z-index:10000;border:1px solid #888;border-radius:999px;background:#111;color:#fff;padding:12px 18px;font:600 16px Manrope,sans-serif;min-height:44px;cursor:pointer}
