/* style.css */
/*
Theme Name: Сервис — каталог залов
Version: 1.0.0
*/
:root{--accent:#9b442f;--accent-soft:#f5eae4;--ink:#302b28;--muted:#756c65;--paper:#faf7f3;--line:#e5ddd5;--white:#fff;--radius:14px;--shadow:0 16px 48px #302b2810}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font:16px/1.6 Arial,sans-serif;color:var(--ink);background:var(--paper);overflow-x:hidden}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}p{margin:0 0 16px}h1,h2,h3,h4{margin:0 0 18px;line-height:1.16;letter-spacing:normal}h1{font-size:clamp(34px,4.2vw,60px);font-weight:700}h2{font-size:clamp(27px,2.5vw,38px)}h3{font-size:23px}h4{font-size:18px}img{display:block;max-width:100%}figure{margin:0}button{border:0;color:inherit;background:none}input,textarea{border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink);padding:12px 14px;min-height:48px;width:100%}input:focus,textarea:focus{border-color:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.wrap{max-width:1440px;margin:0 auto;padding:0 48px}.sr-only{position:absolute;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;left:12px;top:-80px;background:var(--ink);color:white;z-index:200;padding:12px}.skip-link:focus{top:10px}.dev-bar{padding:7px 18px;font-size:12px;text-align:center;background:#eee5dc;color:#675d55}.site-header{background:#fffefc;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.header-inner{max-width:1540px;padding:20px 40px;margin:auto;display:flex;align-items:center;gap:30px;justify-content:space-between}.brand{display:inline-flex;gap:12px;align-items:center;font-size:31px;font-weight:700;line-height:1.1;flex-shrink:0}.brand i{font-style:normal;color:var(--accent)}.brand small{display:block;font-size:10px;font-weight:400;margin-top:6px;line-height:1.4;color:var(--muted)}.site-header nav{display:flex;gap:24px;align-items:center;font-size:14px}.site-header nav a:hover,.text-btn:hover{color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;background:var(--accent);color:white;border-radius:9px;padding:14px 22px;font-size:14px;font-weight:700;min-height:48px;white-space:normal;transition:transform .15s,filter .15s}.btn:hover{filter:brightness(.92);transform:translateY(-1px)}.btn.outline{background:transparent;color:var(--accent);border:1px solid var(--accent)}.text-btn{font-size:14px;font-weight:700;color:var(--accent);padding:8px 0;display:inline-flex;gap:8px;align-items:center}.round-btn{border:1px solid var(--line);background:white;width:44px;height:44px;border-radius:50%;font-size:22px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.round-btn:hover{border-color:var(--accent);color:var(--accent)}.icon-btn{padding:10px 12px;color:var(--muted);font-size:13px}.icon-btn[aria-pressed=true]{color:var(--accent);font-weight:bold}.mobile-menu-btn{display:none}.eyebrow{font-size:11px;font-weight:700;color:var(--accent);margin:0 0 13px;text-transform:uppercase;letter-spacing:0}.muted{color:var(--muted)}.fine{font-size:12px;color:var(--muted);line-height:1.6}.hero{padding-top:58px;padding-bottom:70px;display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center}.hero h1{max-width:660px;margin-bottom:25px}.hero-lead{font-size:18px;max-width:550px;color:var(--muted)}.hero-actions{display:flex;gap:25px;align-items:center;margin:28px 0}.hero-assurances{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted);max-width:490px}.hero-assurances span{padding-left:14px;border-left:2px solid #d9b6a4}.hero-visual{position:relative;min-width:0}.photo{position:relative;overflow:hidden;border-radius:var(--radius);background:#e7dace}.photo img{width:100%;height:100%;object-fit:cover}.hero-photo{height:490px;border-radius:80px 14px 14px 14px}.badge{position:absolute;left:14px;bottom:14px;background:#302b28e8;color:white;padding:5px 9px;border-radius:5px;font-size:11px;font-weight:500}.hero-note{position:absolute;left:-25px;right:35px;bottom:-20px;display:flex;gap:15px;align-items:center;background:white;padding:20px;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.hero-note p{margin:4px 0 0;font-size:12px;color:var(--muted)}.note-icon{width:46px;height:46px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:26px}.quick-pick{padding-top:30px;padding-bottom:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;gap:35px;align-items:center;justify-content:space-between}.quick-pick h2{font-size:25px;margin:0}.quick-pick .eyebrow{margin-bottom:5px}.quick-pick-form{display:flex;gap:12px;flex:1;max-width:800px}.quick-pick-form input:first-of-type{max-width:100px}.quick-pick-form input:nth-of-type(2){flex:1;min-width:0}.home-catalog{padding-top:70px;padding-bottom:70px}.section-head{display:flex;gap:25px;align-items:flex-end;justify-content:space-between;margin-bottom:28px}.section-head h2{margin-bottom:0}.section-head .muted{margin:12px 0 0;max-width:650px}.featured-grid,.three,.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature-card,.hall-card,.article-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:white}.feature-card .photo{height:240px;border-radius:0}.feature-body{padding:23px}.feature-body h3{font-size:21px;min-height:48px}.feature-body .muted{font-size:13px}.facts{display:flex;gap:7px;flex-wrap:wrap;margin:13px 0 18px}.facts span{background:#f4efe9;color:#675d55;padding:5px 9px;border-radius:6px;font-size:12px}.price{font-size:14px;margin:15px 0}.price strong{font-size:23px;color:var(--ink)}.price span{color:var(--muted);font-size:12px}.how-section{background:#efe8df;padding:64px 0}.three article{padding:8px 18px 8px 0}.three p{font-size:14px;max-width:350px;color:var(--muted)}.step-number{display:block;color:var(--accent);font-size:15px;font-weight:bold;margin-bottom:24px}.menu-section{padding:70px 0}.slider-controls{display:flex;gap:10px}.menu-tabs{display:flex;gap:8px;margin-bottom:22px}.chip{padding:8px 14px;border:1px solid var(--line);border-radius:100px;background:white;font-size:13px;min-height:38px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.chip:hover,.chip.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.menu-slider{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#b7a99d transparent;padding:4px 2px 20px;overscroll-behavior-x:contain}.menu-card{flex:0 0 290px;scroll-snap-align:start;padding:25px;border:1px solid var(--line);border-radius:14px;background:white;display:flex;flex-direction:column;min-height:340px}.menu-card:has(.menu-pick[aria-pressed=true]){border:2px solid var(--accent);padding:24px}.menu-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px}.menu-number{font-size:13px;color:#aaa095}.menu-type{font-size:11px;background:#f4efe9;padding:4px 8px;border-radius:5px;color:var(--muted)}.menu-card h3{font-size:24px;margin-bottom:14px}.menu-price{font-size:28px;font-weight:700;line-height:1.3;margin-bottom:12px}.menu-price span{font-weight:400;font-size:12px;color:var(--muted)}.menu-summary{font-size:13px;color:var(--muted);min-height:64px}.menu-card .text-btn{margin-top:auto;margin-bottom:14px}.menu-pick{width:100%}.menu-pick[aria-pressed=true]{background:var(--accent);color:white}.calculator{display:grid;grid-template-columns:1.2fr .8fr .8fr auto;gap:30px;align-items:center;margin-top:24px;padding:28px 30px;border-radius:14px;background:#eee5da}.calculator h3{font-size:24px;margin:0 0 6px}.calculator p{margin-bottom:0;font-size:13px}.calc-guests{font-size:12px;color:var(--muted)}.stepper{display:flex;background:white;border:1px solid var(--line);border-radius:9px;margin-top:7px;overflow:hidden;max-width:190px}.stepper button{width:42px;flex-shrink:0;font-size:22px}.stepper input{text-align:center;min-width:45px;border:0;border-radius:0;padding:10px 0;appearance:textfield;-moz-appearance:textfield}.stepper input::-webkit-inner-spin-button{appearance:none}.calc-total{display:flex;flex-direction:column}.calc-total span,.calc-total small{font-size:12px;color:var(--muted)}.calc-total strong{font-size:30px;line-height:1.4}.location-links{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:60px}.location-links a{border-bottom:1px solid var(--line);padding:12px 0;display:flex;justify-content:space-between;font-size:14px}.location-links a:hover{color:var(--accent)}.editorial{border-top:1px solid var(--line);padding:50px 0;margin-top:30px}.prose{max-width:780px;line-height:1.8;font-size:16px}.prose p,.prose ul{margin-bottom:22px}.prose h2{font-size:28px;margin-top:35px}.prose h3{font-size:22px;margin-top:28px}.prose a{text-decoration:underline;text-underline-offset:3px;color:var(--accent)}.help-band{display:flex;gap:40px;align-items:center;justify-content:space-between;padding:45px 50px;margin:40px 0 70px;background:#eee5da;border-radius:18px}.help-band p{max-width:580px;color:var(--muted);font-size:14px}.help-band h2{font-size:34px}.help-band .eyebrow{color:var(--accent)}.help-band .btn{flex-shrink:0}.breadcrumbs{font-size:12px;color:var(--muted);padding:24px 0;overflow-wrap:anywhere}.breadcrumbs a:hover{color:var(--accent)}.catalog-intro{display:grid;grid-template-columns:1fr 260px;gap:50px;align-items:center;padding:20px 0 30px}.catalog-intro h1{font-size:clamp(32px,3.8vw,50px);max-width:850px}.intro-text{font-size:14px;max-width:720px;color:var(--muted)}.intro-text p:last-child{margin-bottom:0}.intro-help{border-left:2px solid #d9b6a4;padding:12px 0 12px 24px}.intro-help p{font-size:13px;color:var(--muted);margin-top:10px}.intro-help .btn{font-size:12px;padding:12px 16px}.filters{display:flex;gap:12px;align-items:stretch;margin:0 0 15px;padding:20px;background:white;border:1px solid var(--line);border-radius:14px}.search-field{display:flex;align-items:center;gap:8px;flex:1;min-width:150px;border:1px solid var(--line);border-radius:9px;padding:0 12px;background:#fcfaf7}.search-field>span:not(.sr-only){font-size:28px;color:var(--muted)}.search-field input{border:0;background:transparent;padding:8px;min-width:0}.filter-pill{display:flex;align-items:center;gap:14px;text-align:left;border:1px solid var(--line);border-radius:9px;padding:10px 13px;min-width:180px}.filter-pill>span:first-child{font-size:11px;color:var(--muted)}.filter-pill strong{font-size:13px;font-weight:500}.guest-field{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:0 12px;font-size:12px;color:var(--muted)}.guest-field input{max-width:62px;border:0;padding:8px 0;min-width:40px}.filter-bottom{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:24px}.chips{display:flex;gap:8px;flex-wrap:wrap}.filter-bottom>.text-btn{color:var(--muted);font-weight:400;font-size:12px}.results-top{display:flex;align-items:center;justify-content:space-between;margin:0 0 16px}.results-top p{font-size:14px;margin:0}.view-toggle{display:none;gap:8px}.catalog-workspace{display:grid;grid-template-columns:1.06fr 1fr;gap:22px;align-items:start}.venue-rows{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}.venue-row{display:grid;grid-template-columns:185px 1fr;gap:20px;padding:22px;border-bottom:1px solid var(--line)}.venue-row:last-child{border:0}.row-photo{min-width:0}.row-photo .photo{height:210px;border-radius:9px}.row-body{min-width:0}.row-body .eyebrow{font-size:10px;margin-bottom:8px}.row-body h3{font-size:20px;margin-bottom:10px;overflow-wrap:anywhere}.address{font-size:12px;color:var(--muted);line-height:1.5;margin:0}.row-body .facts{margin:13px 0 10px}.row-body .price strong{font-size:20px}.row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row-actions .btn{font-size:12px;padding:10px 13px;min-height:42px}.map-panel{position:sticky;top:106px;background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}.map-top{padding:16px 18px;display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:13px}.map-top button{font-size:12px}.map-stage{position:relative;height:520px;background:#ede9e1}.map{height:100%;width:100%}.map-cover{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:35px;text-align:center;background:radial-gradient(ellipse at 10% 20%,#dddcd1,transparent 60%),linear-gradient(130deg,#eceade,#e5e0d6)}.map-cover h3{font-size:25px;max-width:300px}.map-cover p{max-width:300px;font-size:13px;color:var(--muted)}.map-symbol{font-size:66px;color:var(--accent);margin-bottom:16px}.map-cover[hidden]{display:none}.map-status{padding:14px 18px 0;font-size:12px;color:var(--muted);margin-bottom:8px}.map-attribution{padding:0 18px 14px;font-size:10px;color:var(--muted);margin:0}.map-attribution a{text-decoration:underline}.map-pin{display:inline-flex;align-items:center;gap:5px;transform:translate(-50%,-100%);padding:7px 10px;border-radius:20px;background:var(--accent);color:white;border:2px solid white;box-shadow:0 3px 12px #0003;white-space:nowrap;font-weight:bold;font-size:12px;cursor:pointer}.map-pin.cluster{border-radius:50%;width:42px;height:42px;padding:0;justify-content:center;transform:translate(-50%,-50%)}.pagination{display:flex;gap:12px;justify-content:center;margin:25px 0}.venue-row.highlight{background:var(--accent-soft)}.empty-state{padding:35px;max-width:100%;text-align:center}.empty-state p{font-size:14px;color:var(--muted)}.venue-hero{display:grid;grid-template-columns:1fr 300px;gap:30px;align-items:start}.venue-cover{height:430px}.venue-title{background:white;margin:-45px 24px 0;position:relative;padding:30px;border-radius:14px;border:1px solid var(--line)}.venue-title h1{font-size:38px}.venue-address{font-size:14px;color:var(--muted)}.booking-card{padding:28px;border:1px solid var(--line);border-radius:14px;background:white;position:sticky;top:110px}.booking-card h3{font-size:25px}.booking-card p{font-size:14px;color:var(--muted)}.booking-card .btn{width:100%}.section-nav{display:flex;gap:26px;border-bottom:1px solid var(--line);padding:22px 0;font-size:14px;margin-top:20px}.section-nav a:hover{color:var(--accent)}.venue-content{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;padding:45px 0}.facts-table{margin:0;border-top:1px solid var(--line);font-size:13px}.facts-table>div{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.facts-table dt{color:var(--muted)}.facts-table dd{margin:0}.hall-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.hall-card .photo{height:210px;border-radius:0}.hall-card-body{padding:22px}.hall-card-body h3{font-size:22px}.hall-card-body p{font-size:14px;color:var(--muted)}.hall-card-body .btn{width:100%;font-size:13px}.faq-section{padding:45px 0}.faq-section details{border-bottom:1px solid var(--line);padding:18px 0}.faq-section summary{cursor:pointer;font-weight:bold;list-style:none;display:flex;justify-content:space-between}.faq-section summary:after{content:'+';font-size:22px;color:var(--accent)}.faq-section details[open] summary:after{content:'−'}.faq-section details p{margin:18px 0 0;color:var(--muted);font-size:14px;max-width:800px}.related-rows{display:grid;gap:18px;grid-template-columns:repeat(3,1fr)}.related-rows .venue-row{display:block;border:1px solid var(--line);border-radius:14px;background:white}.related-rows .row-photo .photo{height:180px;margin-bottom:20px}.page-intro{padding:40px 0 30px}.page-intro h1{max-width:920px}.page-intro p{max-width:760px;color:var(--muted)}.content-layout{display:grid;grid-template-columns:1fr 350px;gap:70px;align-items:start;margin-bottom:55px}.side-panel{padding:30px;background:#eee5da;border-radius:14px}.side-panel a{overflow-wrap:anywhere}.side-panel p{font-size:14px;color:var(--muted)}.article-grid{grid-template-columns:repeat(2,1fr);margin-bottom:40px}.article-card{padding:30px}.article-card h2{font-size:27px}.article-card p:not(.eyebrow){font-size:14px;color:var(--muted)}.site-footer{background:#fffefc;border-top:1px solid var(--line);padding-top:50px}.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px;padding-bottom:40px}.footer-top p{font-size:13px;color:var(--muted);margin-top:18px}.footer-top>div>strong{display:block;font-size:14px;margin-bottom:16px}.footer-top>div>a:not(.brand){display:block;font-size:13px;margin-bottom:10px;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:20px;padding-bottom:24px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.comparison-tray{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:40;background:white;border:1px solid var(--line);border-radius:13px;padding:12px 18px;display:flex;align-items:center;gap:20px;box-shadow:var(--shadow);font-size:13px}.comparison-tray[hidden]{display:none}.site-dialog{border:1px solid var(--line);border-radius:18px;padding:30px;width:min(740px,calc(100% - 32px));max-height:90vh;overflow-y:auto;color:var(--ink);background:var(--paper)}.site-dialog::backdrop{background:#302b2875;backdrop-filter:blur(3px)}.dialog-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.dialog-top h2{font-size:28px;margin:5px 0 0}.dialog-top .round-btn{width:38px;height:38px}.menu-detail-header{padding:20px;background:var(--accent-soft);border-radius:12px;margin-bottom:25px}.menu-detail-header strong{font-size:27px}.dish-group{margin-bottom:26px}.dish-group h3{font-size:20px;margin-bottom:10px}.dish-list{padding:0;list-style:none}.dish-list li{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:9px 0;font-size:14px}.dish-list li span:last-child{font-size:12px;color:var(--muted);flex-shrink:0}.chooser-search{margin:0 0 20px}.chooser-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-height:45vh;overflow:auto}.chooser-options .chip{white-space:normal;text-align:left;justify-content:flex-start;border-radius:9px}.compare-table{border-collapse:collapse;font-size:13px;width:100%;min-width:450px}.compare-table th,.compare-table td{padding:14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.compare-table th{font-size:14px}.table-scroll{overflow:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wpcf7 label{display:block;font-size:13px;color:var(--muted);margin-bottom:15px}.wpcf7 label input,.wpcf7 label textarea{margin-top:6px;color:var(--ink)}.wpcf7 textarea{min-height:100px;max-height:250px}.wpcf7 input[type=submit]{background:var(--accent);color:white;border:0;font-size:14px;font-weight:bold;cursor:pointer}.wpcf7 input[type=checkbox]{width:18px;min-height:18px;flex-shrink:0;margin:2px 10px 0 0}.wpcf7-list-item{margin:0}.wpcf7-list-item label{display:flex;align-items:flex-start;font-size:12px}.wpcf7-list-item-label{flex:1}.wpcf7-list-item a{text-decoration:underline;color:var(--accent)}.wpcf7-not-valid-tip{font-size:12px}.wpcf7 form .wpcf7-response-output{border-radius:8px;padding:12px;margin:14px 0;font-size:13px}.wpcf7 form.sent .wpcf7-response-output{border-color:#7c8d70}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.mobile-nav-open nav{display:flex!important}body:has(dialog[open]){overflow:hidden}
@media(min-width:1500px){.venue-row{grid-template-columns:220px 1fr}.row-photo .photo{height:230px}}
@media(max-width:1200px){.header-inner{padding:18px 25px;gap:20px}.site-header nav{gap:16px;font-size:12px}.header-action .btn{font-size:12px;padding:12px 14px}.brand{font-size:26px}.brand small{display:none}.wrap{padding-left:30px;padding-right:30px}.hero{gap:32px}.hero-photo{height:440px}.filters{flex-wrap:wrap}.filters .search-field{flex-basis:45%}.catalog-workspace{grid-template-columns:1fr 1fr}.venue-row{grid-template-columns:140px 1fr;gap:16px;padding:18px}.row-photo .photo{height:200px}.row-body h3{font-size:18px}.row-actions .btn{font-size:11px}.calculator{grid-template-columns:1fr 1fr 1fr}.calculator>.btn{grid-column:1/-1;width:max-content}.venue-hero{grid-template-columns:1fr 270px}.content-layout{gap:35px}.related-rows{grid-template-columns:repeat(2,1fr)}.related-rows .venue-row:last-child{display:none}}
@media(max-width:900px){.header-action{display:none}.mobile-menu-btn{display:flex;gap:15px;align-items:center}.header-inner{flex-wrap:wrap}.site-header nav{display:none;flex-basis:100%;flex-wrap:wrap;gap:18px;padding:15px 0 5px;font-size:15px}.hero{grid-template-columns:1fr 1fr;padding-top:38px;padding-bottom:50px}.hero h1{font-size:39px}.hero-lead{font-size:16px}.hero-photo{height:390px}.hero-actions{flex-wrap:wrap;gap:15px}.hero-assurances{font-size:11px}.hero-note{left:0;right:15px;padding:14px}.quick-pick{display:block}.quick-pick-form{margin-top:20px}.featured-grid{grid-template-columns:repeat(2,1fr)}.feature-card:last-child{display:none}.three{gap:20px}.three h3{font-size:20px}.three p{font-size:13px}.catalog-workspace{grid-template-columns:1fr}.map-panel{position:relative;top:0}.map-panel{display:none}.catalog-section.show-map .map-panel{display:block}.catalog-section.show-map .catalog-workspace>div{display:none}.view-toggle{display:flex}.venue-row{grid-template-columns:210px 1fr}.row-photo .photo{height:205px}.row-body h3{font-size:22px}.catalog-intro{grid-template-columns:1fr}.intro-help{display:none}.venue-hero{grid-template-columns:1fr}.booking-card{position:static;display:flex;flex-wrap:wrap;gap:8px 25px;align-items:center}.booking-card h3{margin:0}.booking-card>.eyebrow{flex-basis:100%}.booking-card p{margin:0;flex:1}.booking-card .btn{width:auto}.booking-card>.fine{flex-basis:100%;font-size:11px;margin-top:6px}.venue-content{gap:35px}.hall-grid{grid-template-columns:repeat(2,1fr)}.location-links{grid-template-columns:repeat(3,1fr)}.content-layout{grid-template-columns:1fr 270px}.help-band{padding:35px}.help-band h2{font-size:29px}.help-band .btn{max-width:210px}.footer-top{gap:30px}.site-dialog{padding:24px}.map-stage{height:450px}}
@media(max-width:600px){html{scroll-padding-top:85px}.wrap{padding-left:20px;padding-right:20px}.header-inner{padding:14px 20px}.brand{font-size:27px}.brand img{width:34px;height:34px}.dev-bar{font-size:10px;line-height:1.4;padding:6px 15px}.hero{display:flex;flex-direction:column;gap:30px;padding-top:32px;padding-bottom:45px}.hero h1{font-size:40px;line-height:1.08}.hero-copy{width:100%}.hero-lead{font-size:15px}.hero-actions{margin:23px 0}.hero-visual{width:100%}.hero-photo{height:310px;border-radius:55px 12px 12px 12px}.hero-note{bottom:-18px;left:14px;right:14px}.hero-note strong{font-size:13px}.hero-note p{font-size:11px}.note-icon{width:34px;height:34px;font-size:20px}.hero-assurances{gap:8px;font-size:10px}.quick-pick{padding-top:25px;padding-bottom:25px}.quick-pick-form{display:grid;grid-template-columns:80px 1fr;gap:10px}.quick-pick-form>.btn{grid-column:1/-1}.quick-pick-form input:first-of-type{width:100%;max-width:none}.home-catalog{padding-top:42px;padding-bottom:42px}.section-head{align-items:flex-start;gap:12px}.section-head h2{font-size:27px}.section-head>.text-btn{font-size:12px;max-width:100px;flex-shrink:0}.featured-grid,.three,.hall-grid,.article-grid{grid-template-columns:1fr}.feature-card:last-child{display:block}.feature-card .photo{height:240px}.feature-body h3{min-height:0}.how-section{padding:40px 0}.how-section .section-head{display:block}.step-number{margin-bottom:12px}.three article{padding:8px 0;border-bottom:1px solid #d9ccbf}.three p{max-width:none}.menu-section{padding:45px 0}.menu-section .section-head{align-items:center}.menu-section .section-head .muted{font-size:13px}.menu-card{flex-basis:270px}.slider-controls{gap:6px}.slider-controls .round-btn{width:36px;height:36px;font-size:18px}.menu-tabs .chip{font-size:12px;padding:7px 12px}.calculator{grid-template-columns:1fr 1fr;padding:23px;gap:22px}.calculator>div:first-child{grid-column:1/-1}.calculator>.btn{width:100%}.calc-total strong{font-size:26px}.stepper{max-width:160px}.stepper button{width:34px}.location-links{grid-template-columns:repeat(2,1fr);gap:8px}.location-links a{font-size:13px}.editorial{padding:35px 0}.prose{font-size:15px}.help-band{display:block;padding:28px;margin:25px 0 45px}.help-band h2{font-size:29px}.help-band .btn{max-width:none;margin-top:8px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{display:block;font-size:10px}.footer-bottom span{display:block;margin-bottom:8px}.site-footer{padding-top:35px}.catalog-intro{padding:10px 0 25px}.catalog-intro h1{font-size:34px}.intro-text{font-size:13px}.filters{padding:12px;gap:9px}.filters .search-field{flex-basis:100%}.filter-pill{min-width:0;flex:1;gap:7px;padding:9px}.filter-pill>span:first-child{display:none}.filter-pill strong{font-size:12px}.guest-field{padding:0 8px}.filters>.btn{flex-basis:100%}.filter-bottom{display:block}.filter-bottom>.text-btn{margin-top:8px}.chips{gap:6px}.chips .chip{font-size:12px;padding:7px 11px}.venue-row{grid-template-columns:110px 1fr;gap:13px;padding:16px}.row-photo .photo{height:160px}.row-photo .badge{font-size:8px;left:5px;bottom:5px;padding:3px 5px}.row-body h3{font-size:17px;line-height:1.2}.row-body .facts{gap:4px;margin:10px 0}.facts span{font-size:10px;padding:4px 6px}.row-body .price{font-size:11px}.row-body .price strong{font-size:17px}.row-body .price span{font-size:10px}.row-actions .btn{font-size:10px;min-height:36px;padding:8px 11px}.row-actions .icon-btn{font-size:10px;padding:4px 0}.row-body .eyebrow{font-size:8px}.address{font-size:10px}.map-stage{height:430px}.map-top{font-size:12px}.venue-cover{height:290px}.venue-title{margin:-25px 10px 0;padding:22px}.venue-title h1{font-size:29px}.booking-card{display:block;padding:24px}.booking-card h3{font-size:24px;margin:10px 0}.booking-card p{margin:12px 0}.booking-card .btn{width:100%}.section-nav{gap:20px;overflow-x:auto;white-space:nowrap;font-size:12px}.venue-content{grid-template-columns:1fr;padding:32px 0;gap:30px}.facts-table>div{grid-template-columns:100px 1fr}.hall-card .photo{height:230px}.related-rows{grid-template-columns:1fr}.related-rows .venue-row:last-child{display:block}.related-rows .venue-row{display:grid;grid-template-columns:110px 1fr}.related-rows .row-photo .photo{height:160px;margin:0}.faq-section h2{font-size:27px}.faq-section summary{font-size:14px;gap:18px}.page-intro{padding:25px 0}.content-layout{grid-template-columns:1fr;gap:25px}.article-card{padding:24px}.article-card h2{font-size:25px}.site-dialog{padding:20px;width:calc(100% - 20px);max-height:92dvh;border-radius:14px}.dialog-top h2{font-size:24px}.chooser-options{grid-template-columns:repeat(2,1fr)}.dish-list li{font-size:12px;gap:12px}.dish-list li span:last-child{font-size:11px;max-width:100px}.form-grid{grid-template-columns:1fr}.comparison-tray{width:calc(100% - 24px);padding:10px;gap:10px;font-size:12px}.comparison-tray .btn{font-size:12px;padding:10px}.menu-detail-header strong{font-size:24px}.results-top p{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
[hidden]{display:none!important} .menu-slider{touch-action:pan-x pan-y} .btn:disabled{opacity:.6;cursor:wait}
.brand-mark{width:42px;height:42px;display:inline-flex;color:var(--accent);flex-shrink:0}.brand-mark svg{width:100%;height:100%}.custom-logo-link img{max-width:48px;height:auto}
.map-controls{position:absolute;right:12px;top:14px;z-index:3;display:flex;flex-direction:column;gap:8px}.map-controls .round-btn{box-shadow:0 3px 15px #0002}
/* Compact catalogue controls */
.compact-intro{display:block;padding:5px 0 22px}.compact-intro h1{font-size:38px;margin:0 0 12px}.compact-intro .intro-text{font-size:14px;max-width:none;margin:0}.compact-filters{display:block;border:0;padding:0;background:none;margin-bottom:22px}.search-line{display:flex;gap:10px;margin-bottom:16px}.search-line .search-field{border:1px solid #ded6ce;background:white;flex:1;padding:0 16px;min-height:52px}.search-line .search-field input{min-height:50px;font-size:14px}.search-line .search-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #9b442f10}.search-line .search-field input:focus-visible{outline:0}.search-submit{min-width:95px}.filter-toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.filter-control{display:flex;align-items:center;gap:10px;min-height:42px;padding:9px 13px;border:1px solid var(--line);border-radius:8px;background:white;line-height:1.2}.filter-control>span:first-child{font-size:12px;color:var(--muted)}.filter-control>strong{font-size:13px;font-weight:500;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-control>span:last-child{font-size:13px;color:var(--muted);margin-left:4px}.filter-control.active{background:var(--accent-soft);border-color:#dab8a7}.filter-control:hover{border-color:#bea99b}.filter-reset{margin-left:auto;font-size:12px;color:var(--muted);padding:8px}.site-dialog.filter-dialog{margin:0;width:360px;max-height:560px;padding:18px;border-radius:12px;background:white;box-shadow:0 15px 45px #302b2828}.filter-dialog::backdrop{background:transparent;backdrop-filter:none}.filter-dialog .dialog-top{margin-bottom:14px;align-items:center;gap:15px}.filter-dialog .dialog-top h2{font-size:19px;line-height:1.3;margin:0}.filter-dialog .dialog-top .round-btn{width:28px;height:28px;font-size:19px;border:0;background:#f5f1ec}.picker-search-wrap{position:relative;margin-bottom:12px}.picker-search-wrap input{min-height:42px;padding:10px 13px;border-radius:7px;background:#faf8f5;font-size:13px;border:1px solid #e5ddd5}.picker-search-wrap input:focus-visible{outline:0;border-color:var(--accent);box-shadow:0 0 0 2px #9b442f12}.picker-list{max-height:330px;overflow:auto;scrollbar-width:thin}.picker-row{display:flex;width:100%;align-items:center;justify-content:space-between;gap:15px;padding:11px 12px;border:0;border-radius:7px;text-align:left;font-size:13px;line-height:1.4}.picker-row:hover{background:#f7f3ee}.picker-row.active{background:var(--accent-soft);color:var(--accent)}.picker-row .picker-count{font-size:11px;color:var(--muted);padding-left:8px}.picker-row.active .picker-count:after{content:' ✓';color:var(--accent)}.picker-empty{padding:15px 10px;font-size:13px;color:var(--muted)}.picker-subtitle{font-size:11px;color:var(--muted);margin:0 0 15px}.guest-picker-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:12px 0 20px}.guest-picker-controls .stepper{margin:0;max-width:170px}.guest-picker-options{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.guest-picker-options .chip{font-size:12px}.picker-apply{width:100%}.breadcrumbs{padding:20px 0 16px}.results-top{margin-bottom:14px}.brand-mark svg{display:block}
@media(max-width:600px){.compact-intro h1{font-size:29px}.compact-intro{padding-bottom:20px}.compact-intro .intro-text{font-size:13px;line-height:1.6}.search-line{gap:8px;margin-bottom:12px}.search-submit{min-width:70px;padding:10px 14px}.search-line .search-field{padding:0 9px}.search-line .search-field input{font-size:12px;padding:8px 5px}.filter-toolbar{gap:7px}.filter-control{padding:9px 10px;gap:6px;min-height:38px}.filter-control>span:first-child{font-size:11px}.filter-control>strong{font-size:12px;max-width:140px}.filter-control>span:last-child{margin:0}.filter-reset{margin-left:0;font-size:11px}.site-dialog.filter-dialog{width:calc(100% - 24px);max-height:70dvh;padding:19px;left:12px!important;top:auto!important;bottom:12px;right:12px}.filter-dialog::backdrop{background:#302b2845}.picker-list{max-height:40dvh}.picker-row{padding:12px;font-size:14px}.compact-filters{margin-bottom:18px}}
/* Sobrano visual system */
:root{--ink:#202326;--muted:#687076;--paper:#fff;--line:#e6e8ea;--accent-soft:#fbf0e9;--radius:12px}body{background:#fff}.dev-bar{background:#f3f4f5;color:#687076;font-size:10px;padding:5px}.site-header{background:#fff}.header-inner{padding-top:16px;padding-bottom:16px}.brand{font-size:32px;font-weight:750;letter-spacing:-1px;text-transform:lowercase;gap:11px}.brand small{font-size:10px;letter-spacing:0;text-transform:none;margin-top:5px}.brand-mark{width:38px;height:38px}.site-header nav{gap:26px;font-size:14px}.header-action .btn{min-height:44px;padding:12px 19px}.btn{border-radius:7px;min-height:44px;font-size:13px;background:var(--ink)}.btn:hover{filter:none;background:#383d42;transform:none}.btn.outline{color:var(--ink);border-color:#cfd3d6;background:white}.btn.outline:hover{border-color:var(--ink);background:#f5f6f6}.text-btn{color:var(--ink);font-weight:600;border-bottom:1px solid #c4c8cb;padding-bottom:3px}.text-btn:hover{color:var(--accent);border-color:var(--accent)}.eyebrow{color:#8b5d43;font-size:10px;letter-spacing:0}.hero{gap:52px;padding-top:46px;padding-bottom:55px}.hero h1{font-size:clamp(38px,4vw,57px);letter-spacing:-1.2px;line-height:1.07}.hero-lead{font-size:17px;line-height:1.6;max-width:500px}.hero-photo{border-radius:14px;height:430px}.hero-note{background:white;border-radius:9px;left:20px;right:20px;bottom:20px;padding:15px;box-shadow:0 8px 24px #20232620;border:0}.hero-note .note-icon{background:#f7ede3}.hero-assurances span{border:0;padding:0;display:inline-flex;align-items:center;gap:6px}.hero-assurances span:before{content:'✓';color:#946a4d}.quick-pick{border:1px solid var(--line);border-radius:12px;background:#f7f8f9;margin-top:0;max-width:1344px;padding:24px 30px}.quick-pick h2{font-size:22px}.quick-pick input{background:white;border-color:#dadddf}.how-section{background:#f7f8f9;padding:45px 0}.three article{border-right:1px solid #e0e3e5;padding-right:25px}.three article:last-child{border:0}.step-number{font-size:12px;color:#8e6a51;background:#eee5dc;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;margin-bottom:16px}.three h3{font-size:21px}.home-catalog{padding:48px 48px}.section-head h2{font-size:32px;letter-spacing:-.4px}.feature-card .photo{height:210px}.feature-body{padding:20px}.feature-body h3{font-size:20px;min-height:0}.feature-body .facts{margin:12px 0}.feature-body .text-btn{font-size:12px}.feature-card:hover{border-color:#c8cccf;box-shadow:0 8px 24px #2023260a}.row-body .eyebrow{color:#768086;text-transform:none;font-size:11px}.venue-row{padding:20px}.row-body .facts span{background:#f1f3f4;color:#556169}.row-body h3{font-size:20px}.row-body .price strong{font-size:21px}.row-actions .btn{background:#202326}.compare-btn{border:1px solid #e0e3e6;border-radius:7px;font-size:11px;padding:10px}.row-photo .photo{height:205px}.badge{background:#fffef0e8;color:#41413a;border:1px solid #ffffffa0;left:10px;bottom:10px;font-size:9px;padding:4px 7px;border-radius:4px}.featured-grid .badge,.hero .badge{font-size:10px}.map-panel{top:95px;border-color:#e1e5e7;border-radius:12px}.map-stage{height:560px}.map-top{font-size:12px}.map-status{font-size:11px}.map-pin{background:#202326;border-color:white}.map-pin.cluster{background:#a25937}.catalog-section{padding-bottom:20px}.compact-intro h1{font-size:36px;letter-spacing:-.6px}.intro-text{color:#687076}.filter-control{border-color:#dce1e4;border-radius:7px;padding:10px 13px;min-height:40px}.filter-control.active{background:#f5eee6;border-color:#cdb59f}.filter-control>span:first-child{color:#7c8388}.compact-filters{margin-bottom:19px}.search-line .search-field{background:#f7f8f9;border-color:#e0e3e6}.filter-reset{font-size:11px}.filter-dialog .dialog-top h2{font-size:18px}.picker-row:hover{background:#f4f6f7}.picker-row.active{background:#f4eee7;color:#323537}.picker-row.active .picker-count:after{color:#946440}.picker-search-wrap input{background:#f5f7f8;border-color:#e4e7e9}.menu-section{padding:48px 0}.menu-card{padding:0;flex-basis:306px;min-height:465px;border-radius:12px;overflow:hidden;border-color:#e1e5e7}.menu-card:has(.menu-pick[aria-pressed=true]){padding:0;border:2px solid #9b7757}.menu-photo{height:180px;position:relative;overflow:hidden;background:#f0ede9}.menu-photo img{width:100%;height:100%;object-fit:cover}.menu-card-top{padding:15px 18px 0;margin-bottom:12px}.menu-type{font-size:10px;background:#f3f4f4;color:#687076;border-radius:4px;padding:4px 7px}.menu-card>h3{margin:0 18px 13px;font-size:23px;min-height:28px}.menu-card>.menu-price{margin:0 18px 10px;font-size:27px}.menu-card>.menu-summary{margin:0 18px 14px;min-height:51px;font-size:12px;line-height:1.6}.menu-card>.text-btn{margin:0 18px 16px;width:max-content;font-size:12px}.menu-card>.menu-pick{width:calc(100% - 36px);margin:0 18px 18px;font-size:12px;min-height:42px}.menu-card>.menu-pick[aria-pressed=true]{background:#202326;color:white;border-color:#202326}.menu-slider{gap:16px;padding-bottom:14px}.calculator{background:#f6f7f8;border:1px solid #dfe3e6;border-radius:12px;padding:24px 26px;grid-template-columns:1.25fr .8fr 1fr auto;gap:26px}.calculator h3{font-size:22px}.calculator .eyebrow{margin-bottom:6px;font-size:10px}.calculator .muted{font-size:12px}.calc-total strong{font-size:31px}.calc-total>span,.calc-total small{font-size:11px}.calc-total>span span{font-size:11px}.stepper{border-color:#d2d7db}.calculator .btn{font-size:12px;background:#a35c35}.calculator .btn:hover{background:#8e4f2b}.menu-popup-photo{position:relative;height:220px;border-radius:10px;overflow:hidden;margin-bottom:18px}.menu-popup-photo img{width:100%;height:100%;object-fit:cover}.menu-detail-header{padding:16px 20px;border-radius:9px;background:#f5f7f8;margin-bottom:24px}.menu-detail-header p{margin:5px 0 0;font-size:12px}.menu-dialog{width:min(850px,calc(100% - 32px));background:white}.menu-composition{display:grid;grid-template-columns:1fr 1fr;gap:18px 28px;align-items:start}.dish-group{margin-bottom:10px}.dish-group h3{font-size:17px}.dish-list li{font-size:12px;padding:9px 0}.dish-list li span:last-child{font-size:11px}.menu-popup-footer{position:sticky;bottom:-30px;background:white;border-top:1px solid #e1e5e7;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;margin-top:20px}.menu-popup-footer strong{display:block;font-size:24px}.menu-popup-footer span{font-size:12px;color:#687076}.site-dialog{background:white;border-color:#e1e5e7;border-radius:13px}.site-dialog::backdrop{background:#1e232955;backdrop-filter:blur(2px)}.filter-dialog::backdrop{background:transparent;backdrop-filter:none}.dialog-top h2{font-size:25px}.help-photo{display:grid;grid-template-columns:1fr 1fr;padding:0;gap:0;overflow:hidden;border:1px solid #e1e5e7;border-radius:14px;background:#f8f9fa;align-items:stretch;margin:35px 0 55px}.help-copy{padding:45px;align-self:center}.help-copy h2{font-size:35px;letter-spacing:-.5px;line-height:1.15}.help-copy p{max-width:420px}.help-copy .btn{background:#202326}.help-image{position:relative;min-height:320px}.help-image img{width:100%;height:100%;object-fit:cover;object-position:75% center}.help-image .badge{font-size:10px}.venue-title{border-color:#e1e5e7;padding:25px}.venue-title h1{font-size:35px;letter-spacing:-.5px}.venue-cover{height:390px}.booking-card{background:#f7f8f9;border-color:#e1e5e7;padding:25px}.booking-card .btn{font-size:12px}.booking-card h3{font-size:25px}.facts-table dt{color:#687076}.hall-card{border-color:#e1e5e7}.hall-card-body h3{font-size:21px}.page-intro h1{font-size:42px;letter-spacing:-.6px}.side-panel{background:#f7f8f9;border:1px solid #e1e5e7}.site-footer{background:#f7f8f9;border-color:#e1e5e7}.footer-bottom{border-color:#e1e5e7}.footer-top .brand-mark{width:34px;height:34px}.footer-top .brand{font-size:28px}.location-links a{font-size:13px;border-color:#e1e5e7}.eyebrow,.logo small{letter-spacing:0}input:focus-visible,textarea:focus-visible{outline:none;box-shadow:0 0 0 3px #9b775718;border-color:#9b7757}.menu-tabs .chip.active{background:#f1ebe4;border-color:#cbb8a5;color:#38342e}.menu-tabs .chip{border-radius:6px}.article-card{border-color:#e1e5e7}.article-card h2{font-size:25px}.article-card .eyebrow{color:#8b5d43}
@media(max-width:1200px){.calculator{grid-template-columns:1fr .8fr 1fr}.calculator>.btn{grid-column:1/-1}.hero h1{font-size:45px}.hero-photo{height:390px}}
@media(max-width:900px){.hero h1{font-size:38px}.hero-photo{height:350px}.help-copy{padding:30px}.help-copy h2{font-size:29px}.help-image{min-height:290px}.calculator{gap:22px}.brand small{display:none}.home-catalog{padding-left:30px;padding-right:30px}}
@media(max-width:600px){.brand{font-size:28px;gap:8px}.brand-mark{width:33px;height:33px}.header-inner{padding:12px 20px}.hero{gap:24px;padding-top:28px;padding-bottom:30px}.hero h1{font-size:40px;letter-spacing:-.8px}.hero-lead{font-size:15px}.hero-photo{height:270px;border-radius:12px}.hero-note{bottom:12px;left:12px;right:12px;padding:13px}.hero-assurances{font-size:10px}.quick-pick{border-radius:0;padding:22px 20px;margin:0;border-left:0;border-right:0}.quick-pick h2{font-size:22px}.home-catalog{padding:34px 20px}.section-head h2{font-size:27px}.featured-grid .feature-card .photo{height:220px}.feature-body h3{font-size:20px}.feature-body{padding:19px}.three article{border:0;padding:10px 0}.how-section{padding:32px 0}.menu-section{padding:35px 0}.menu-card{flex-basis:278px;min-height:450px}.menu-photo{height:164px}.menu-card>h3{font-size:22px}.menu-card>.menu-price{font-size:26px}.calculator{padding:21px;grid-template-columns:1fr 1fr;gap:18px}.calculator>div:first-child{grid-column:1/-1}.calculator>.btn{width:100%;grid-column:1/-1}.calc-total strong{font-size:27px}.help-photo{grid-template-columns:1fr;margin:25px 0 35px}.help-copy{padding:28px;order:2}.help-copy h2{font-size:30px}.help-image{min-height:240px;height:240px;order:1}.help-image img{object-position:70% 30%}.help-copy .btn{width:100%}.compact-intro h1{font-size:29px;line-height:1.15}.map-stage{height:430px}.map-panel{top:0}.row-body h3{font-size:17px}.row-photo .photo{height:165px}.venue-title h1{font-size:28px}.venue-cover{height:280px}.page-intro h1{font-size:33px}.menu-popup-photo{height:180px}.menu-composition{grid-template-columns:1fr;gap:16px}.menu-dialog{padding:20px}.menu-popup-footer{bottom:-20px}.menu-popup-footer strong{font-size:23px}.menu-popup-footer .btn{font-size:12px}.site-dialog.filter-dialog{background:white}.filter-dialog::backdrop{background:#1e232944}.footer-top .brand{font-size:26px}.help-band .eyebrow{font-size:10px}}
.picker-hint{display:block;font-size:10px;font-weight:400;color:#7c8388;margin-top:2px}.metro-meta{font-size:11px;color:#717a80;margin:7px 0 0}.menu-card .text-btn{border-bottom:none;text-decoration:underline;text-underline-offset:3px}.filter-dialog .dialog-top .round-btn:focus-visible{outline-width:2px;outline-offset:2px}
.wpcf7 input[type=number]{appearance:textfield;-moz-appearance:textfield}.wpcf7 input[type=number]::-webkit-inner-spin-button{appearance:none}

/* Side navigation and transport details */
:root{--sidebar-width:222px}body{padding-left:var(--sidebar-width)}.site-header{display:none}.side-navigation{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);z-index:50;background:#fff;border-right:1px solid #e9e9e7;padding:30px 20px;display:flex;flex-direction:column;gap:18px;overflow-y:auto}.side-brand .brand{font-size:26px;gap:10px}.side-brand .brand-mark{width:31px;height:31px}.side-caption{font-size:12px;color:#777;line-height:1.5;margin:0 0 10px}.side-navigation nav{display:flex;flex-direction:column;gap:7px}.side-navigation nav>a,.side-catalog{padding:12px 13px;text-align:left;border-radius:10px;font-size:14px;font-weight:600;transition:background .2s,color .2s}.side-navigation nav>a:hover,.side-catalog:hover{background:#f4f3f0}.side-catalog{display:flex;justify-content:space-between;background:#f4f3f0}.side-shortcuts{display:flex;flex-wrap:wrap;gap:9px;padding:4px 13px 13px}.side-shortcuts button{font-size:11px;color:#777;padding:0}.side-shortcuts button:hover{color:#222}.side-bottom{margin-top:auto;padding-top:25px}.side-bottom p{font-size:12px;color:#777;line-height:1.5}.side-bottom .btn{width:100%;padding:12px}.side-close{display:none}.sidebar-scrim{position:fixed;inset:0;background:#20232665;backdrop-filter:blur(3px);z-index:45}.sidebar-scrim[hidden]{display:none}.dev-bar{font-size:11px}.wrap{padding-left:32px;padding-right:32px}.access-summary{display:grid;gap:7px;margin:12px 0}.access-summary small{display:block;color:#777;font-size:11px;margin-top:3px}.metro-station{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;flex-wrap:wrap}.metro-line{font-style:normal;display:inline-grid;place-items:center;background:var(--line-color);color:#fff;border-radius:50%;width:19px;height:19px;font-size:10px;font-weight:700;text-shadow:0 1px 2px #0005;border:1px solid #0001;flex-shrink:0}.access-place{font-size:11px!important;color:#777;margin:0!important}.access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.access-group{padding:22px;border:1px solid #e6e6e3;border-radius:16px;background:#fff}.access-group h3{font-size:18px}.access-item{padding:13px 0;border-top:1px solid #eee}.access-item strong{font-size:13px}.journey-times{display:flex;gap:16px;margin-top:9px;font-size:11px;color:#777;flex-wrap:wrap}.journey-times b{display:block;font-size:13px;color:#222}.mega-dialog{width:min(780px,calc(100vw - 260px));max-width:none;max-height:min(760px,calc(100dvh - 40px));margin:20px 0 20px 238px;padding:26px;overflow:auto;border-radius:18px}.mega-dialog .dialog-top h2{font-size:26px}.mega-tabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid #e5e5e3;padding-bottom:14px}.mega-tabs button{padding:8px 12px;font-size:13px;border-radius:8px;transition:background .2s}.mega-tabs button.active{background:#202326;color:#fff}.mega-search{display:flex;gap:20px;align-items:center;margin:18px 0}.mega-search input{flex:1;min-width:0}.mega-search a{white-space:nowrap}.mega-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;max-height:450px;overflow:auto}.mega-option{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;font-size:13px;border-radius:8px;transition:background .2s}.mega-option:hover{background:#f4f3f0}.mega-option small{color:#888}.mega-option[hidden]{display:none}.mobile-quote{display:none}.choice-toast{position:fixed;bottom:24px;left:calc(var(--sidebar-width) + 24px);z-index:70;background:white;box-shadow:0 7px 35px #0002;border:1px solid #ddd;border-radius:13px;padding:14px 20px;display:flex;align-items:center;gap:25px;font-size:13px}.choice-toast[hidden]{display:none}.calculator{scroll-margin-top:30px;transition:box-shadow .3s}.calculator-highlight{animation:calc-pulse 1.2s ease-out}.comparison-tray{left:calc(50% + var(--sidebar-width)/2)}
@keyframes calc-pulse{0%{box-shadow:0 0 0 5px #a35c3540}100%{box-shadow:0 0 0 0 transparent}}@keyframes modal-in{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}dialog[open]{animation:modal-in .22s ease-out}dialog::backdrop{animation:backdrop-in .2s ease-out}@keyframes backdrop-in{from{opacity:0}to{opacity:1}}a,button{transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s}.menu-card,.venue-row{transition:box-shadow .25s,border-color .25s}.menu-card:hover{box-shadow:0 8px 26px #2023260a}.map-pin{transition:transform .18s,box-shadow .18s}.map-pin:hover{box-shadow:0 5px 12px #0003}.picker-row{transition:background-color .18s}.access-section .fine{margin-top:18px}
@media(max-width:1200px) and (min-width:1001px){:root{--sidebar-width:196px}.side-navigation{padding:26px 15px}.wrap{padding-left:24px;padding-right:24px}.hero{gap:28px}.hero h1{font-size:44px}.venue-row{grid-template-columns:150px minmax(0,1fr)}.mega-dialog{margin-left:210px;width:calc(100vw - 230px)}.access-grid{grid-template-columns:1fr}}
@media(max-width:1000px){body{padding-left:0}.site-header{display:block}.header-inner{padding:14px 20px}.mobile-menu-btn{display:inline-flex;gap:12px;align-items:center}.site-header nav,.header-action{display:none}.side-navigation{width:min(310px,86vw);transform:translateX(-102%);transition:transform .28s cubic-bezier(.2,.7,.2,1);z-index:60;padding:24px}.sidebar-open .side-navigation{transform:translateX(0)}.side-brand{display:flex;justify-content:space-between;align-items:center}.side-close{display:block;font-size:28px;width:40px;height:40px}.side-navigation nav>a,.side-catalog{font-size:16px;padding:15px}.side-shortcuts button{font-size:13px}.wrap{padding-left:20px;padding-right:20px}.mega-dialog{width:calc(100vw - 24px);margin:12px;max-height:calc(100dvh - 24px);padding:22px}.mega-options{grid-template-columns:repeat(2,minmax(0,1fr));max-height:calc(100dvh - 290px)}.access-grid{grid-template-columns:1fr}.comparison-tray{left:50%}.choice-toast{left:20px;right:20px;bottom:22px}}
@media(max-width:600px){.mobile-quote:not([hidden]){display:flex;position:fixed;bottom:0;left:0;right:0;z-index:42;background:#fff;box-shadow:0 -5px 25px #0001;border-top:1px solid #e6e6e3;padding:10px 16px calc(10px + env(safe-area-inset-bottom));align-items:center;justify-content:space-between;gap:12px;animation:modal-in .25s ease-out}.mobile-quote>div{min-width:0}.mobile-quote>div strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-quote>div span{display:block;font-size:11px;color:#777}.mobile-quote .btn{display:grid;gap:1px;padding:8px 15px;min-height:46px;flex-shrink:0}.mobile-quote .btn strong{font-size:14px}.mobile-quote .btn span{font-size:10px;font-weight:400}.quote-visible{padding-bottom:85px}.quote-visible .choice-toast{bottom:88px;padding:12px;font-size:12px;gap:12px}.quote-visible .comparison-tray{bottom:85px}.mega-options{grid-template-columns:1fr}.mega-tabs{gap:4px}.mega-tabs button{padding:7px 9px;font-size:12px}.mega-search{gap:12px}.mega-search a{font-size:11px}.access-summary small{font-size:10px}.metro-station{font-size:11px}.calculator{scroll-margin-top:80px}.filter-control strong{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

dialog.closing{animation:modal-out .17s ease-in forwards}dialog.closing::backdrop{animation:backdrop-in .17s ease-in reverse forwards}@keyframes modal-out{to{opacity:0;transform:translateY(8px) scale(.99)}}.travel-note{margin:0 0 16px}

.navigation-rail{display:none}.filter-toolbar{position:relative}
@media(min-width:1001px){:root{--sidebar-width:64px}body{padding-left:64px}.navigation-rail{display:flex;position:fixed;inset:0 auto 0 0;width:64px;z-index:65;border-right:1px solid #e9e9e7;background:#fff;align-items:center;flex-direction:column;gap:25px;padding-top:26px}.navigation-rail>button{width:40px;height:40px;border-radius:9px;font-size:23px;display:grid;place-items:center}.navigation-rail>button:hover,.navigation-rail>button[aria-pressed=true]{background:#f1efeb}.navigation-rail a .brand-mark{display:block;width:29px;height:29px}.side-navigation{left:64px;width:222px;transform:translateX(-110%);visibility:hidden;opacity:0;box-shadow:8px 0 24px #00000008;transition:transform .28s cubic-bezier(.2,.7,.2,1),opacity .2s,visibility .28s}.desktop-nav-open .side-navigation,.desktop-nav-pinned .side-navigation{transform:translateX(0);visibility:visible;opacity:1}.desktop-nav-pinned{padding-left:286px}.desktop-nav-pinned .side-navigation{box-shadow:none}.mega-dialog{margin-left:302px;width:min(780px,calc(100vw - 324px))}.choice-toast{left:88px}.desktop-nav-pinned .choice-toast{left:310px}.desktop-nav-pinned .comparison-tray{left:calc(50% + 143px)}.comparison-tray{left:calc(50% + 32px)}}
@media(max-width:600px){.filter-toolbar{display:flex!important;flex-wrap:nowrap!important;gap:8px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:3px 1px 10px!important;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#d3d2ce transparent}.filter-toolbar .filter-control{flex:0 0 auto!important;white-space:nowrap;scroll-snap-align:start;min-height:41px}.filters.compact-filters{display:flex;flex-direction:column}.filters .filter-reset{align-self:flex-start;margin:1px 0 0;padding:7px 0;font-size:12px}.filters .filter-toolbar .filter-reset{display:none}.filter-toolbar::-webkit-scrollbar{height:3px}.filter-toolbar::-webkit-scrollbar-thumb{background:#d3d2ce;border-radius:3px}}

@media(max-width:600px){.filters.compact-filters{width:100%;min-width:0;max-width:100%}.filters .filter-toolbar{width:100%;min-width:0;max-width:100%;flex-shrink:1}.filters .search-line{display:grid;grid-template-columns:minmax(0,1fr)70px;width:100%;min-width:0;max-width:100%}.filters .search-field{min-width:0;width:auto!important;max-width:100%}.filters .search-field input{min-width:0;width:100%}}

.map-panel,.map-stage,.map{min-width:0;max-width:100%}.map-stage,.map{overflow:hidden;contain:layout paint}.map-popup-card{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;padding:12px 0}.map-popup-card .photo{height:180px}.map-popup-card h3{font-size:18px}.map-popup-card .address{overflow-wrap:anywhere}.map-dialog .dialog-top h2{overflow-wrap:anywhere;min-width:0}.map-dialog{max-width:calc(100vw - 24px);overflow-x:hidden}.map-dialog .dialog-top{align-items:flex-start}.map-popup-card .facts{flex-wrap:wrap}.map-popup-card .badge{font-size:9px}
@media(max-width:600px){.site-dialog.map-dialog{position:fixed;inset:auto 0 0;width:100%;max-width:100vw;max-height:80dvh;margin:0;padding:20px 18px calc(20px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;box-sizing:border-box}.map-dialog .dialog-top h2{font-size:22px}.map-popup-card{grid-template-columns:95px minmax(0,1fr);gap:14px}.map-popup-card .photo{height:130px}.map-popup-card .badge{font-size:8px;padding:4px;left:4px;bottom:4px}.map-popup-card p{font-size:13px}.map-popup-card .facts{font-size:10px;gap:5px}.map-popup-card .btn{width:100%;min-height:43px;padding:10px;font-size:12px}}

.hero-photo .badge,.venue-cover .badge{top:12px;bottom:auto}.dialog-top h2{min-width:0;overflow-wrap:anywhere}.request-dialog textarea{min-height:100px;height:110px;resize:vertical}.wp-block-table{max-width:100%;overflow-x:auto}.prose{overflow-wrap:anywhere}
@media(max-width:600px){input,textarea,select,.search-field input,.picker-search-wrap input{font-size:16px!important}.request-dialog [data-request-form="booking"] .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.request-dialog [data-request-form="booking"] .form-grid label:nth-child(-n+2){grid-column:1/-1}.request-dialog textarea{min-height:90px;height:100px}.request-dialog label{margin-bottom:12px}.request-dialog .form-grid label{margin-bottom:0}}

.metro-line{color:var(--line-ink,#fff);text-shadow:none}.navigation-rail a img{width:29px;height:29px;object-fit:contain}.side-brand .custom-logo{width:31px;height:31px;object-fit:contain}

.map-pin{min-height:44px;min-width:62px;padding:12px 17px;font-size:14px;line-height:1.2;transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s!important}.map-pin:hover,.map-pin:focus-visible{transform:translate(-50%,-100%)!important;background:#925332!important;border-color:#fff!important;box-shadow:0 3px 10px #0002}.map-pin.cluster{min-width:49px;width:49px;min-height:49px;height:49px;font-size:15px;padding:0}.map-pin.cluster:hover{background:#7d432a!important}
@media(max-width:600px){.access-grid,.hall-grid{display:grid!important;grid-auto-flow:column;grid-auto-columns:86%;grid-template-columns:none!important;overflow-x:auto;overflow-y:hidden;gap:14px;max-width:100%;min-width:0;padding:2px 1px 14px;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#c9c8c3 transparent;-webkit-overflow-scrolling:touch}.access-grid>.access-group,.hall-grid>.hall-card{min-width:0;scroll-snap-align:start}.access-grid>.access-group{padding:18px}.hall-grid .empty-state:only-child{grid-column:1;min-width:0}.map-pin{min-height:43px;font-size:13px;padding:11px 15px}.map-pin.cluster{width:46px;height:46px;min-width:46px;min-height:46px}}

/* Editorial articles and contextual catalog offers */
.article-offer{margin:32px 0;padding:28px;background:#f3f0eb;border:1px solid #e6dfd7;border-radius:18px;clear:both}
.article-offer h2{font-size:clamp(23px,2vw,30px);line-height:1.25;margin:8px 0 14px}
.article-offer .eyebrow{font-size:12px;margin:0}.article-offer-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin:20px 0 10px}
.article-offer .btn{text-decoration:none}.article-offer .fine{font-size:13px;line-height:1.5;margin:12px 0 0}
.article-venues{margin:32px 0}.article-venues .venue-row{min-width:0}.article-venues .venue-row img{max-width:100%}
.page-body>h2{margin-top:32px}.page-body>ul,.page-body>ol{padding-left:24px}.page-body li{margin-bottom:9px}
@media(max-width:600px){.article-offer{padding:20px;margin:26px 0}.article-offer-actions{align-items:stretch;flex-direction:column;gap:14px}.article-offer-actions .btn{width:100%;white-space:normal}.article-offer-actions .text-btn{text-align:center}}

.map-pin.cluster:hover,.map-pin.cluster:focus-visible{transform:translate(-50%,-50%)!important}.map-pin{touch-action:manipulation;user-select:none;-webkit-user-select:none;pointer-events:auto}

/* Marker wrappers must not cover neighbouring marker buttons. */
.map .ymaps3--marker:has(.map-pin){width:0!important;height:0!important;pointer-events:none!important;overflow:visible!important}.map .map-pin{pointer-events:auto!important}

.filter-chevron{display:block;flex:0 0 18px;color:#626c73}.filter-control .filter-chevron{margin-left:4px}
.map-top{padding:10px 14px;min-height:46px;gap:12px}.map-top .text-btn{padding:4px 0;font-size:12px}
@media(min-width:1001px){.map-panel{top:12px}.catalog-workspace{gap:12px}}
@media(max-width:600px){.map-top{padding:10px 12px}.map-top strong,.map-top .text-btn{font-size:12px}}

.access-filter{display:inline-flex;align-items:center;border-radius:5px;padding:3px 5px;margin-left:-5px}.access-filter:hover{background:#f2ede6}.access-filter,.access-filter:hover,.access-filter .metro-station,.access-filter:hover .metro-station{text-decoration:none}.load-more-count{font-size:12px;color:var(--muted)}.pagination{flex-wrap:wrap;gap:14px}.map-panel{scroll-margin-top:16px}

.comparison-dialog{width:min(1380px,calc(100vw - 32px));max-width:1380px}.compare-toolbar{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:20px}.compare-toolbar p{font-size:13px;max-width:650px;margin:0}.visual-compare{table-layout:fixed;width:max-content;min-width:100%}.visual-compare th:first-child{width:150px;min-width:150px}.visual-compare th:not(:first-child),.visual-compare td{width:300px;min-width:300px;vertical-align:top}.visual-compare thead th{padding:14px}.visual-compare th[scope=row]{font-size:13px;text-align:left;font-weight:600}.visual-compare td small{display:block;font-size:12px;color:var(--muted);margin-top:6px}.compare-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;margin:14px 0 8px}.compare-gallery figure{position:relative;flex:0 0 100%;scroll-snap-align:start;min-width:0}.compare-gallery img{width:100%;height:190px;object-fit:cover;border-radius:9px}.compare-gallery figcaption{font-size:12px;font-weight:400;line-height:1.4;padding-top:8px}.compare-gallery .badge{top:155px;bottom:auto;font-size:9px}.compare-gallery-controls{display:flex;justify-content:space-between;align-items:center;gap:8px}.compare-gallery-controls .round-btn{width:30px;height:30px;min-height:30px;font-size:20px}.compare-gallery-controls small{font-size:10px;font-weight:400}.compare-hall{padding:8px 0;border-bottom:1px solid var(--line)}.compare-hall strong,.compare-hall span{display:block;font-size:13px}.comparison-scroll{margin-bottom:20px}.visual-compare .btn{width:100%;margin-bottom:8px}.visual-compare .access-summary{margin:0}.visual-compare th[scope=row]{position:sticky;left:0;background:#fff;z-index:1}
@media(max-width:600px){.comparison-dialog{width:calc(100vw - 16px);padding:18px 12px}.compare-toolbar{flex-direction:column;align-items:stretch}.visual-compare th:first-child{width:95px;min-width:95px}.visual-compare th:not(:first-child),.visual-compare td{width:245px;min-width:245px;padding:12px}.visual-compare thead th>a{font-size:16px}.compare-gallery img{height:155px}.compare-gallery .badge{top:119px}.visual-compare th[scope=row]{font-size:11px}}

.venue-type-badge{display:inline-block;font-size:11px;color:#69737a;background:#f1f3f4;border-radius:5px;padding:3px 8px;margin:0 0 10px}.filter-toolbar{flex-wrap:wrap}

/* A single horizontally scrollable filter row at every viewport. */
.filter-toolbar{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;min-width:0;max-width:100%;gap:10px;padding:3px 1px 10px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#cbd0d3 transparent;-webkit-overflow-scrolling:touch}
.filter-toolbar .filter-control{flex:0 0 auto!important;white-space:nowrap;scroll-snap-align:start}
.filters.compact-filters{display:flex;flex-direction:column;min-width:0}.filters>.filter-reset{align-self:flex-end;margin:0 0 4px;padding:5px 0;font-size:12px}
.filter-toolbar::-webkit-scrollbar{height:4px}.filter-toolbar::-webkit-scrollbar-thumb{background:#cbd0d3;border-radius:4px}
@media(max-width:600px){.filters>.filter-reset{align-self:flex-start}}

/* CF7 wraps adjacent labels in a paragraph; it must not become one grid cell. */
.request-dialog{width:min(700px,calc(100vw - 32px));max-width:700px;padding:28px;max-height:90dvh}
.request-dialog .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.request-dialog .form-grid>p{display:contents}.request-dialog .form-grid label{grid-column:auto!important;min-width:0;display:block}
.request-dialog .form-grid .wpcf7-form-control-wrap{display:block}.request-dialog .dialog-top h2{font-size:28px}
@media(max-width:600px){.request-dialog{padding:20px 18px}.request-dialog .form-grid,.request-dialog [data-request-form="booking"] .form-grid{grid-template-columns:minmax(0,1fr)}.request-dialog .dialog-top h2{font-size:24px}}

.mega-region{grid-column:1/-1;margin:0 0 18px}.mega-region h3,.picker-region-title{font-size:15px;line-height:1.4;margin:14px 0 12px;font-weight:700}.mega-region-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mega-region[hidden]{display:none}.picker-region-title{padding:8px 12px;background:#f5f6f7;border-radius:6px}
@media(max-width:700px){.mega-region-options{grid-template-columns:minmax(0,1fr)}}

.metro-alphabet{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 16px;padding:10px 0;border-bottom:1px solid var(--line)}.metro-alphabet button{min-width:30px;min-height:34px;padding:4px 8px;border-radius:6px;font-size:13px;font-weight:600}.metro-alphabet button:hover:not(:disabled){background:#f2ede6}.metro-alphabet button[aria-pressed=true]{background:var(--ink);color:#fff}.metro-alphabet button:disabled{color:#c2c6c9;cursor:default}
@media(max-width:600px){.metro-alphabet{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.metro-alphabet button{flex:0 0 auto;min-height:40px}}

.facts .capacity-filter{display:inline-flex;align-items:center;background:#f1f3f4;color:#556169;padding:5px 9px;border:1px solid transparent;border-radius:6px;font-size:12px;line-height:1.6;text-decoration:none}.facts .capacity-filter:hover{background:#e7ecef;border-color:#cbd3d8}.facts .capacity-filter:focus-visible{outline:2px solid var(--ink);outline-offset:2px}

.place-station{display:inline-flex;align-items:center;gap:8px;vertical-align:middle}.place-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;border-radius:50%;background:#f0eeeb;color:#706257;font-style:normal}.access-item>strong{display:block}.access-place .place-icon{width:25px;height:25px;flex-basis:25px}.place-station>span{min-width:0}

/* The pointer tip is the geographic anchor; hover never changes its position. */
.map-pin{position:relative;border-radius:18px;overflow:visible;transform:translate(-50%,calc(-100% - 9px))!important}
.map-pin::before{content:"";position:absolute;left:50%;top:100%;transform:translateX(-50%);width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:11px solid #fff;pointer-events:none}
.map-pin::after{content:"";position:absolute;left:50%;top:calc(100% - 1px);transform:translateX(-50%);width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:10px solid #202326;pointer-events:none}
.map-pin:hover,.map-pin:focus-visible{transform:translate(-50%,calc(-100% - 9px))!important}.map-pin:hover::after,.map-pin:focus-visible::after{border-top-color:#925332}
.map-pin.cluster{border-radius:50%;transform:translate(-50%,calc(-100% - 9px))!important}.map-pin.cluster::after{border-top-color:#a25937}.map-pin.cluster:hover,.map-pin.cluster:focus-visible{transform:translate(-50%,calc(-100% - 9px))!important}.map-pin.cluster:hover::after,.map-pin.cluster:focus-visible::after{border-top-color:#7d432a}

.floating-filters{position:fixed;right:22px;top:18px;z-index:45;display:flex;gap:9px;align-items:center;background:#202326;color:white;border:1px solid #fff;border-radius:10px;padding:12px 18px;font-size:14px;font-weight:600;box-shadow:0 4px 18px #0002}.floating-filters[hidden]{display:none}
.filter-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(430px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-left:1px solid var(--line);padding:26px;background:white;overflow-y:auto;box-shadow:-12px 0 40px #0002}.filter-drawer::backdrop{background:#20232644}.filter-drawer .dialog-top h2{font-size:25px}.filter-drawer .muted{font-size:13px}.filter-drawer .filter-toolbar{display:flex!important;flex-direction:column;overflow:visible!important;padding:0;gap:12px}.filter-drawer .filter-control{width:100%;justify-content:space-between;min-height:48px}.filter-drawer .filter-control strong{flex:1;text-align:right;margin-left:12px}.filter-drawer .filter-reset{margin:14px 0 22px;padding:5px 0}.filter-drawer-apply{width:100%}
@media(max-width:600px){.floating-filters{top:72px;right:12px;padding:10px 14px;font-size:12px}.filter-drawer{inset:auto 0 0;width:100%;height:auto;max-height:90dvh;border-radius:18px 18px 0 0;padding:20px 18px}.filter-drawer .filter-toolbar{gap:8px}.filter-drawer .filter-control{min-height:43px}}

.filter-drawer{display:none;overflow:hidden}.filter-drawer[open]{display:flex;flex-direction:column;gap:12px}.filter-drawer .dialog-top{flex-shrink:0;margin:0}.filter-drawer>.muted{margin:0;flex-shrink:0}.filter-drawer-controls{min-height:0;overflow-y:auto;flex:1;padding:2px 3px;scrollbar-width:thin}.filter-drawer-apply{flex-shrink:0;margin:0}.map-filter-widget{position:absolute;left:12px;top:12px;z-index:5;display:flex;align-items:center;gap:7px;background:white;border:1px solid #dedede;border-radius:9px;padding:11px 14px;font-size:13px;font-weight:600;box-shadow:0 2px 8px #0002}
@media(max-width:600px){.filter-drawer[open]{height:min(760px,90dvh);padding-bottom:max(18px,env(safe-area-inset-bottom))}.filter-drawer .filter-control strong{max-width:none}.map-filter-widget{padding:10px 12px}}

.venue-title{position:relative}.venue-share-actions{float:right;display:flex;flex-direction:column;align-items:flex-end;gap:6px;margin:0 0 12px 15px}.share-button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;font-size:13px;background:white}.copy-link-button{font-size:12px;color:var(--muted);padding:4px;border:0;background:transparent}.share-button:hover,.copy-link-button:hover{color:var(--accent);text-decoration:none}.floating-filters{background:white;color:#202326;border-color:var(--line)}.compare-toolbar .btn{display:inline-flex;align-items:center;gap:8px}@media(max-width:600px){.venue-share-actions{float:none;flex-direction:row;align-items:center;justify-content:flex-end;margin:0 0 14px;gap:12px}.share-button{font-size:12px;padding:8px}.copy-link-button{font-size:11px}}

.filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;border-radius:50%;background:var(--accent);color:white;font-size:11px;padding:0 4px}.filter-count[hidden]{display:none}

.request-dialog{height:auto!important;min-height:0!important;width:min(620px,calc(100vw - 24px));padding:22px;max-height:calc(100dvh - 28px)}.request-dialog [data-request-form][hidden]{display:none!important}.request-dialog .wpcf7,.request-dialog form{min-height:0!important;height:auto!important}.request-dialog form>p{margin:10px 0}.request-dialog .fine{margin:12px 0 0;font-size:11px}.request-dialog #requestContext{font-size:13px;line-height:1.5;margin:10px 0 16px}.request-dialog input:not([type=checkbox]):not([type=hidden]){min-height:42px;padding:10px 12px}.request-dialog textarea{min-height:70px;height:76px;padding:10px 12px}.request-dialog .dialog-top{margin-bottom:10px}.request-dialog .dialog-top h2{font-size:24px}.request-dialog .wpcf7-response-output:empty{display:none}.request-dialog .wpcf7-spinner{position:absolute}@media(max-width:600px){.request-dialog{padding:18px 15px}.request-dialog .form-grid{gap:10px}.request-dialog .wpcf7 label{margin-bottom:10px}}

.wpcf7 input.wpcf7-hidden+br{display:none!important}.request-dialog form>p:has(input[type=submit])>br{display:none}.request-dialog form>p:has(input[type=submit]) input[type=submit]{display:block;margin-top:12px}

.category-links{display:grid;gap:12px;margin:0 0 22px}.category-link-group>strong{display:block;font-size:12px;color:var(--muted);margin-bottom:7px}.category-link-scroll{display:flex;gap:8px;overflow-x:auto;padding-bottom:5px;scrollbar-width:thin}.category-link-scroll>a,.category-guests{flex-shrink:0;border:1px solid var(--line);background:white;border-radius:8px;padding:9px 12px;display:inline-flex;align-items:center;gap:9px;font-size:13px;text-decoration:none}.category-link-scroll small{color:var(--muted);font-size:11px}.filter-drawer>.filter-reset{align-self:flex-start;padding:9px 14px;margin:0;border:1px solid #cbb8a5;border-radius:8px;background:#f7eee8;color:#7f4930;font-weight:600}.filter-drawer>.filter-reset:hover{background:#f0dfd3}

.seo-directory{margin:24px 0;border:1px solid var(--line);border-radius:10px;padding:14px 18px}.seo-directory summary{cursor:pointer;font-size:15px;font-weight:600}.seo-directory h3{font-size:16px;margin:20px 0 12px}.seo-directory section>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.seo-directory a{font-size:12px;line-height:1.5;color:var(--muted)}@media(max-width:600px){.seo-directory section>div{grid-template-columns:1fr 1fr;gap:12px}}

#seoDropdownSources[hidden]{display:none!important}.picker-row[href]{text-decoration:none;color:inherit}.picker-row[href]:hover{background:#f4eee7}.picker-row[href].active{color:var(--accent)}.category-link-group,.category-link-scroll{min-width:0}.catalog-section,.catalog-grid,.venue-list,.venueRows{min-width:0}@media(max-width:600px){.filter-toolbar{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.filter-control{min-height:44px}.view-switch button{min-height:44px}.picker-row{min-height:44px}.breadcrumbs{font-size:11px;line-height:1.6;overflow-wrap:anywhere}.compact-intro h1{font-size:27px}.filter-drawer>.filter-reset{min-height:42px}.request-dialog .dialog-top{position:sticky;top:-18px;background:white;padding:5px 0;z-index:2}.venue-share-actions{flex-wrap:wrap}}

.filters>#resetFilters,.filter-drawer>#resetFilters{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 16px;border:1px solid #b67852;border-radius:9px;background:#f5e8dd;color:#7b4328;font-size:13px;font-weight:600;box-shadow:0 2px 5px #884c1b0d;text-decoration:none;transition:background .18s,border-color .18s}
.filters>#resetFilters:before,.filter-drawer>#resetFilters:before{content:'×';font-size:22px;line-height:1;font-weight:400}.filters>#resetFilters:hover,.filter-drawer>#resetFilters:hover{background:#ecd7c5;border-color:#9b5b35}.filters>#resetFilters:focus-visible,.filter-drawer>#resetFilters:focus-visible{outline:2px solid #9b5b35;outline-offset:3px}@media(max-width:600px){.filters>#resetFilters{min-height:44px;padding:10px 14px;font-size:12px}}

.search-suggestions{position:fixed;z-index:1500;max-height:min(360px,50vh);overflow:auto;background:#fff;border:1px solid #d9c2af;border-radius:12px;box-shadow:0 12px 36px #20232426;padding:6px}.search-suggestions[hidden]{display:none}.search-suggestions a{display:flex;flex-direction:column;gap:3px;padding:11px 13px;min-height:44px;text-decoration:none;color:#252829;border-radius:7px}.search-suggestions a:hover,.search-suggestions a[aria-selected=true]{background:#f3ebe3}.search-suggestions strong{font-size:15px;font-weight:600}.search-suggestions small{font-size:12px;color:#727b80}.search-suggestions p{font-size:14px;padding:10px;margin:0}.html-sitemap details{margin:18px 0;border:1px solid #e0e3e5;border-radius:12px;padding:16px}.html-sitemap summary{font-weight:600;cursor:pointer}.sitemap-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;padding-top:18px}.sitemap-links a{line-height:1.4}

.blog-category-nav{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 26px}.blog-category-nav a{padding:10px 16px;border:1px solid #dce0e3;border-radius:9px;text-decoration:none}.blog-category-nav a[aria-current]{background:#222729;color:white}.service-articles{margin:40px 0}

.site-dialog:not(.filter-dialog)>.dialog-top{position:sticky;top:0;z-index:20;background:#fff;padding:8px 0;margin-top:-8px;box-shadow:0 8px 12px #fff}.site-dialog>.dialog-top .round-btn{flex-shrink:0;background:#fff}.site-dialog>.dialog-top h2{min-width:0}


.article-slider-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.article-slider-heading>div{display:flex;gap:8px;flex-shrink:0}.article-slider{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 2px 18px;min-width:0;scrollbar-width:thin}.article-slider .article-card{flex:0 0 320px;scroll-snap-align:start;padding:0;overflow:hidden}.article-card-copy{padding:22px}.article-slider h3{font-size:21px;line-height:1.3}.article-cover,.article-main-image,.article-service-offer figure{position:relative;overflow:hidden;margin:0}.article-cover img{width:100%;height:190px;object-fit:cover}.article-main-image{margin:20px 0 30px;border-radius:14px}.article-main-image img{width:100%;max-height:410px;object-fit:cover}.article-main-image .badge,.article-cover .badge,.article-service-offer .badge{position:absolute;left:12px;bottom:12px}.article-service-offer{padding:0;position:sticky;top:22px;align-self:start;overflow:hidden}.article-service-offer img{width:100%;height:170px;object-fit:cover}.article-service-offer-copy{padding:22px}.article-service-offer h3{font-size:25px;line-height:1.2}.article-service-offer p,.article-service-offer li{font-size:14px;line-height:1.5}.article-service-offer ul{padding-left:18px}.article-service-offer li{margin:8px 0}.article-service-offer .btn{width:100%;padding:13px 10px}.article-service-offer-result{font-weight:600}.content-layout>*{min-width:0}@media(max-width:900px){.article-service-offer{position:static}.article-slider .article-card{flex-basis:min(310px,82vw)}.article-slider-heading h2{font-size:25px}.article-service-offer img{height:200px}}@media(min-width:901px) and (max-height:760px){.article-service-offer img{height:120px}.article-service-offer-copy{padding:16px}.article-service-offer h3{font-size:22px}.article-service-offer p,.article-service-offer li{font-size:12px}}

.article-service-offer .article-offer-copy{padding:20px}.article-service-offer figure img{height:145px}.article-service-offer h3{font-size:23px;line-height:1.2;margin:0 0 12px}.article-service-offer .article-offer-copy>p{font-size:14px;line-height:1.5;margin:0 0 18px}.article-service-offer .btn{min-height:46px;font-size:14px}.article-service-offer .badge{font-size:10px;padding:4px 7px}@media(max-width:900px){.article-service-offer figure img{height:170px}}@media(min-width:901px) and (max-height:760px){.article-service-offer figure img{height:115px}.article-service-offer .article-offer-copy{padding:16px}.article-service-offer h3{font-size:21px}}

a,a:hover,a:focus,a:active,.prose a,.prose a:hover,.menu-card .text-btn,.wpcf7-list-item a,.map-attribution a{text-decoration:none!important}.text-btn,.text-btn:hover,.prose a.text-btn{border-bottom:0!important}


.article-content-layout{margin-top:26px}.article-hero{margin-bottom:26px}.article-hero .article-main-image{margin:0;overflow:hidden;border-radius:16px}.article-hero .article-main-image img{height:380px;max-height:none;width:100%;object-fit:cover}.article-hero .article-main-image .badge{top:12px;bottom:auto}.article-title-panel{position:relative;background:#fff;border:1px solid #e3e5e7;border-radius:15px;margin:-48px 22px 0;padding:26px;z-index:1}.article-title-panel h1{font-size:clamp(27px,2.5vw,42px);line-height:1.17;margin:0}.article-title-panel .eyebrow{font-size:11px;margin:0 0 12px}.article-content-layout .article-service-offer{margin-top:40px}@media(max-width:600px){.article-hero .article-main-image img{height:245px}.article-title-panel{margin:-30px 10px 0;padding:18px 16px;border-radius:12px}.article-title-panel h1{font-size:26px}.article-title-panel .eyebrow{font-size:10px;margin-bottom:10px}.article-content-layout .article-service-offer{margin-top:0}}

@media(max-width:600px){
 .venue-row,.related-rows .venue-row,.related-rows .venue-row:first-child,.related-rows .venue-row:last-child{display:flex;flex-direction:column;grid-template-columns:none;gap:0;min-width:0;padding:0;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.venue-rows{border:0;background:transparent;display:grid;gap:16px;overflow:visible}.venue-row .row-photo{display:block;width:100%;min-width:0}.venue-row .row-photo .photo,.related-rows .row-photo .photo{height:175px;width:100%;margin:0;border-radius:0}.venue-row .row-photo img{height:100%;width:100%;object-fit:cover}.venue-row .row-photo .badge{max-width:calc(100% - 20px);font-size:10px;white-space:normal}.venue-row .row-body{padding:16px;display:flex;flex-direction:column;gap:9px;min-width:0;flex:1}.venue-row .row-body>.eyebrow{margin:0;font-size:11px}.venue-row .venue-type-badge{align-self:flex-start;margin:0;font-size:11px}.venue-row .row-body h3{font-size:20px;line-height:1.25;margin:0;overflow-wrap:anywhere}.venue-row .address{font-size:12px;line-height:1.45;margin:0}.venue-row .facts,.related-rows .venue-row .facts{display:flex;flex-direction:row;flex-wrap:wrap;gap:5px;margin:3px 0}.venue-row .facts>*{width:auto;max-width:100%;font-size:11px;padding:5px 8px}.venue-row .price{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:4px;margin:5px 0;font-size:13px}.venue-row .price strong{font-size:24px;white-space:nowrap}.venue-row .price>span{font-size:11px}.venue-row .row-actions{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:8px;margin-top:auto;padding-top:5px}.venue-row .row-actions .btn,.venue-row .row-actions .icon-btn{display:flex;align-items:center;justify-content:center;min-height:44px;width:100%;font-size:12px;line-height:1.2;padding:10px 8px;border-radius:9px}.venue-row .row-actions .icon-btn{border:1px solid #cbd1d5;background:white}.venue-row .access-summary{margin:2px 0;gap:6px}
 .related-rows{display:flex;grid-template-columns:none;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 16px;scrollbar-width:thin;align-items:stretch}.related-rows .venue-row{flex:0 0 calc((100% - 12px)/1.5);scroll-snap-align:start}.related-rows .venue-row .row-photo .photo{height:135px}.related-rows .row-body{padding:12px;gap:8px}.related-rows .row-body h3{font-size:16px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:60px}.related-rows .address{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:34px}.related-rows .access-summary{display:none}.related-rows .facts{max-height:62px;overflow:hidden}.related-rows .price strong{font-size:21px}.related-rows .row-actions{grid-template-columns:1fr;gap:6px}.related-rows .row-actions .btn,.related-rows .row-actions .icon-btn{min-height:44px;font-size:12px}.related-rows .row-photo .badge{font-size:9px;padding:3px 5px;left:7px;bottom:7px}
 #halls .hall-grid>.empty-state:only-child{grid-column:1/-1;text-align:left;padding:20px;background:#f5f6f7;border:1px solid var(--line);border-radius:14px}#halls .empty-state h3{font-size:21px;line-height:1.25;margin-bottom:10px}#halls .empty-state p{font-size:14px;margin-bottom:16px}#halls .empty-state .btn{min-height:44px;width:100%;font-size:13px}#halls{margin-bottom:28px}.related-rows:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
}

.map-pin.region-cluster{width:auto;min-width:150px;max-width:none;white-space:nowrap;padding:12px 16px;border-radius:18px;font-size:14px;line-height:1.3}
.map-pin.region-cluster,.map-pin.region-cluster:hover,.map-pin.region-cluster:focus-visible{transform:translate(-10%,calc(-100% - 9px))!important}.map-pin.region-cluster::before,.map-pin.region-cluster::after{left:10%}

@media(max-width:900px){.results-top{flex-wrap:wrap;gap:12px}.results-top .view-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.view-toggle .chip{min-height:46px;padding:12px 16px;font-size:15px;border:1px solid #dce1e4;justify-content:center}.view-toggle .chip.active{background:#202326;border-color:#202326;color:#fff}.view-toggle #mapView::before{content:"⌖";margin-right:8px;font-size:19px}.catalog-section.show-map .map-panel{display:block;width:100%}}
@media(max-width:900px){.view-toggle .chip{border-radius:8px;font-weight:600;line-height:1.2;box-shadow:none}}

.map.leaflet-container{font:14px/1.4 Arial,sans-serif;background:#e5e8e3}.map .sa-leaflet-pin{border:0;background:none;overflow:visible;width:0!important;height:0!important}.map .leaflet-control-attribution{font-size:10px;line-height:1.3;max-width:100%;white-space:normal}.map-stage[data-provider="openstreetmap"] .map-controls{z-index:12}

/* Venue route planner: no map SDK required. */
.venue-location-column{min-width:0}.venue-location-column .facts-table{margin-top:0}.venue-directions{margin-top:24px;padding:26px;border:1px solid #dfe3e6;border-radius:16px;background:#f7f8f9}.directions-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px}.directions-heading>span{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#efe5da;color:#985530;font-size:27px}.directions-heading h3{font-size:24px;margin:0}.directions-destination{display:grid;gap:5px;margin:0 0 20px}.directions-destination>span{color:#687076;font-size:13px}.directions-destination strong{font-size:17px;line-height:1.45}.venue-directions form{display:grid;gap:9px}.venue-directions label{font-size:14px;color:#687076}.venue-directions input[type=text],.venue-directions select{width:100%;min-width:0;box-sizing:border-box;min-height:48px;padding:12px 14px;border:1px solid #dce1e4;border-radius:8px;background:white;font:inherit;font-size:16px;color:#202326}.venue-directions select{margin-bottom:7px}.venue-directions .btn{width:100%;min-height:48px;border-radius:8px}.venue-directions .fine{font-size:12px;line-height:1.5;margin:5px 0 0;color:#687076}@media(max-width:900px){.venue-directions{padding:20px;margin-top:20px}.directions-heading h3{font-size:22px}}

.venue-route-map{display:block;width:calc(100% + 52px);max-width:none;height:500px;margin:22px -26px 16px;border:0;background:#eae8e0}.directions-external{display:inline-flex;min-height:44px;align-items:center;font-size:14px}.venue-directions{overflow:hidden}@media(max-width:900px){.venue-directions{padding:16px}.venue-route-map{width:calc(100% + 32px);margin-left:-16px;margin-right:-16px;height:500px}}

.route-locate{margin-bottom:5px}.route-locate[hidden]{display:none}.venue-directions button:disabled{opacity:.65;cursor:wait}

/* Transport options share the site's rectangular selection style. */
.venue-directions .route-transport{border:0;padding:0;margin:8px 0;min-width:0}.venue-directions .route-transport legend{padding:0;margin-bottom:10px;font-size:14px;color:#687076}.route-transport-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.venue-directions .route-transport-options label{position:relative;display:block;cursor:pointer;margin:0;color:#202326}.route-transport-options input{position:absolute;opacity:0;width:1px;height:1px}.route-transport-options span{display:flex;justify-content:center;align-items:center;min-height:48px;padding:8px 6px;border:1px solid #dce1e4;border-radius:8px;background:#fff;font-size:14px;font-weight:600;line-height:1.25;text-align:center;box-sizing:border-box;transition:background .15s,color .15s,border-color .15s}.route-transport-options input:checked+span{background:#202326;color:#fff;border-color:#202326}.route-transport-options input:focus-visible+span{outline:2px solid #a35c35;outline-offset:3px}.route-transport-options label:hover span{border-color:#a35c35}@media(max-width:400px){.route-transport-options{gap:6px}.route-transport-options span{font-size:12px}}

.venue-description-facts{margin:28px 0 0}.venue-location-column>.venue-directions{margin-top:0}

.venue-facts-heading{margin:30px 0 14px;font-size:24px;line-height:1.25}.venue-facts-heading+.venue-description-facts{margin-top:0}

/* design-system.css */
:root{--bg:#f6f7f6;--surface:#fff;--raised:#f0f2f1;--ink:#252b28;--ink-strong:#121614;--muted:#555e5a;--line:#dde1de;--accent:#2c5b52;--action:#1a1f1d;--on-action:#fff;--field-line:#808884;color-scheme:light}
:root[data-theme=dark]{--bg:#0f1216;--surface:#151a1f;--raised:#1b2127;--ink:#d8dde0;--ink-strong:#f3f5f6;--muted:#9fa8af;--line:#353e47;--accent:#86bdb1;--action:#eef1f3;--on-action:#0f1216;--field-line:#6a737b;color-scheme:dark}
body{background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-size:16px;line-height:1.6;font-variant-numeric:tabular-nums}
h1,h2,h3,h4,strong{color:var(--ink-strong)}h1{font-size:clamp(30px,3.5vw,48px);line-height:1.15;font-weight:600;letter-spacing:-.02em}h2{font-size:clamp(24px,2.4vw,34px);font-weight:600;line-height:1.2}h3{font-weight:600}a{color:var(--accent)}a,a:hover{text-decoration:none}.muted,.fine,.address,.intro-text,.side-caption,.breadcrumbs{color:var(--muted)}
.side-navigation,.site-header,.site-dialog,.filter-dialog,.mega-dialog,.venue-row,.feature-card,.hall-card,.article-card,.booking-card,.venue-title,.side-panel,.venue-directions,.map-stage,.map-panel,.menu-card,.calculator,.help-photo,.content-dialog{background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:0 1px 2px rgb(18 22 20 / .04)}
.site-footer,.dev-bar,.menu-section,.quick-pick,.help-copy{background:var(--raised);color:var(--ink)}.navigation-rail{background:var(--bg);border-color:var(--line)}.side-catalog,.venue-type-badge,.facts span,.capacity-filter,.chip,.filter-control.active,.picker-row.active,.picker-row:hover,.text-btn:hover{background:var(--raised);color:var(--ink);border-color:var(--line)}
.btn,.venue-directions .btn,.calculator .btn,.menu-pick{background:var(--action);color:var(--on-action);border:1px solid var(--action);border-radius:8px;min-height:48px;font-size:15px;font-weight:600;box-shadow:none}.btn:hover,.calculator .btn:hover{background:var(--accent);border-color:var(--accent);color:var(--surface)}.btn.outline,.icon-btn,.compare-btn,.round-btn,.theme-toggle{background:var(--surface);color:var(--ink-strong);border:1px solid var(--line);border-radius:8px;min-height:44px;font-size:14px}.text-btn{color:var(--accent);border-color:var(--line)}
input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea,.search-line .search-field,.picker-search-wrap input,.venue-directions input[type=text],.venue-directions select{background:var(--surface);color:var(--ink);border-color:var(--field-line);border-radius:6px;font-size:16px;min-height:48px}input::placeholder,textarea::placeholder{color:var(--muted)}.filter-control{background:var(--surface);color:var(--ink);border-color:var(--line);border-radius:8px;min-height:44px}.filter-control>span:first-child{color:var(--muted)}.filter-control.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.facts-table div,.journey-times,.access-item,.section-nav,.breadcrumbs,.footer-bottom{border-color:var(--line)}.facts-table dt,.journey-times span,.access-summary small,.card-copy,.directions-destination>span,.venue-directions label{color:var(--muted)}.route-transport-options span{background:var(--surface);color:var(--ink);border-color:var(--line)}.route-transport-options input:checked+span{background:var(--action);color:var(--on-action);border-color:var(--action)}.directions-heading>span{background:var(--raised);color:var(--accent)}
.category-editorial{padding:30px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.category-editorial>.prose{max-width:900px}.category-editorial h3{margin-top:26px;font-size:21px}.category-venue-facts{padding-left:22px}.category-venue-facts li{margin:13px 0}.category-editorial p,.category-editorial li{font-size:17px}.category-venue-facts a{font-weight:600}
.theme-toggle{padding:9px 13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.side-theme-toggle{margin:0 0 20px;width:100%}.mobile-theme-toggle{margin-left:auto;font-size:13px;padding:7px 10px}.header-inner{gap:12px}.compact-intro h1,.venue-title h1,.page-intro h1{font-size:clamp(30px,3vw,44px);font-weight:600}.hero h1{font-size:clamp(34px,4vw,56px);font-weight:600}.hero p,.hero .hero-description{color:var(--muted)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}input:focus-visible,textarea:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}:root[data-theme=dark] .photo .badge{background:#202a24;color:#eef3ef}:root[data-theme=dark] .logo-image{filter:brightness(1.15)}:root[data-theme=dark] .article-offer,:root[data-theme=dark] .article-title-panel,:root[data-theme=dark] .access-group,:root[data-theme=dark] .empty-state{background:var(--surface);color:var(--ink);border-color:var(--line)}
@media(max-width:900px){body{font-size:16px}.category-editorial{padding:20px}.category-editorial p,.category-editorial li{font-size:16px}.header-inner .brand{font-size:24px}.mobile-theme-toggle{min-width:44px}.site-header .mobile-menu-btn{margin-left:0}.hero h1{font-size:36px}.category-editorial h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:0ms!important;animation-duration:0ms!important}}

@media(max-width:900px){.mobile-theme-toggle{width:44px;flex:0 0 44px;font-size:0;padding:0}.mobile-theme-toggle::before{content:"◐";font-size:21px}}
.filter-reset{background:var(--raised);color:var(--accent);border-color:var(--line)}.filter-reset:hover{background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.eyebrow{color:var(--accent)}.hero-note .note-icon,.step-number{background:var(--raised);color:var(--accent)}.hero-assurances span::before{color:var(--accent)}
.filters>#resetFilters,.filter-drawer>#resetFilters{background:var(--raised);color:var(--accent);border-color:var(--line);box-shadow:none}.filters>#resetFilters:hover,.filter-drawer>#resetFilters:hover{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:var(--accent)}.view-toggle .chip{background:var(--surface);color:var(--ink);border-color:var(--line)}.view-toggle .chip.active{background:var(--action);color:var(--on-action);border-color:var(--action)}.picker-row.active .picker-count::after{color:var(--accent)}
.hero-note,.how-section,.article-offer,.article-title-panel,.access-group,.empty-state,.cta,.comparison-tray,.mobile-quote{background:var(--surface);color:var(--ink);border-color:var(--line)}.hero-note p,.hero-note strong{color:var(--ink)}.row-actions .btn,.menu-card>.menu-pick[aria-pressed=true]{background:var(--action);color:var(--on-action);border-color:var(--action)}.menu-card:has(.menu-pick[aria-pressed=true]){border-color:var(--accent)}.row-body .facts span,.menu-type{background:var(--raised);color:var(--muted)}.map-pin.cluster{background:var(--accent)}
:root{--scroll-thumb:#849b94}:root[data-theme=dark]{--scroll-thumb:#688b83}.menu-slider,.article-slider,.related-rows,.access-grid,.halls-grid,.filter-toolbar,.category-link-scroll,.compare-gallery,.metro-alphabet{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}.menu-slider::-webkit-scrollbar,.article-slider::-webkit-scrollbar,.related-rows::-webkit-scrollbar,.access-grid::-webkit-scrollbar,.halls-grid::-webkit-scrollbar,.filter-toolbar::-webkit-scrollbar,.category-link-scroll::-webkit-scrollbar,.compare-gallery::-webkit-scrollbar,.metro-alphabet::-webkit-scrollbar{height:6px}.menu-slider::-webkit-scrollbar-thumb,.article-slider::-webkit-scrollbar-thumb,.related-rows::-webkit-scrollbar-thumb,.access-grid::-webkit-scrollbar-thumb,.halls-grid::-webkit-scrollbar-thumb,.filter-toolbar::-webkit-scrollbar-thumb,.category-link-scroll::-webkit-scrollbar-thumb,.compare-gallery::-webkit-scrollbar-thumb,.metro-alphabet::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:6px}.help-photo>.help-copy{align-self:stretch;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.help-copy .btn{background:var(--action);color:var(--on-action)}
.category-onpage-links{margin:28px 0;padding:20px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.category-onpage-links>strong{display:block;margin-bottom:12px}.category-onpage-links .category-link-scroll>a{background:var(--raised);color:var(--accent);font-size:14px;padding:9px 12px;white-space:nowrap}.category-faq{margin-top:32px}.category-faq details{background:var(--surface);border-color:var(--line)}.category-faq summary{color:var(--ink-strong)}.category-faq p{color:var(--ink)}
.menu-section{box-shadow:0 0 0 100vmax var(--raised);clip-path:inset(0 -100vmax)}.menu-tabs .chip.active{background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-color:var(--accent);color:var(--accent)}

/* Category FAQ and verified offers share the site spacing and surfaces. */
.category-faq details{padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:0 0 12px;background:var(--surface)}.category-faq summary{padding:22px 26px;position:relative;padding-right:60px;list-style:none}.category-faq summary::after{right:24px}.category-faq .faq-answer{padding:0 26px 22px}.category-faq .faq-answer p{margin:0}.offer-filter-controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.offer-filter-controls:empty{display:none}.offer-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.offer-card{padding:24px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.offer-card dl>div{display:grid;grid-template-columns:1fr 1.3fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.offer-card dd{margin:0}.offer-card dt{color:var(--muted)}.venue-offers{margin:36px 0}@media(max-width:600px){.category-faq summary{padding:18px 44px 18px 18px}.category-faq summary::after{right:18px}.category-faq .faq-answer{padding:0 18px 18px}.offer-filter-controls{flex-wrap:nowrap;overflow-x:auto}.offer-filter-controls .filter-control{flex-shrink:0}}

.filter-toolbar .offer-filter-controls{display:contents}.mega-selected{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0}.mega-tabs{overflow-x:auto}.mega-option.active{background:var(--raised);border-color:var(--accent)}

.offsite-results .view-toggle,.offsite-results .map-panel,.offsite-results .map-card{display:none}.offsite-results .catalog-workspace{display:block}.offsite-results.show-map #venueRows{display:block}

/* One theme switch in navigation, including mobile navigation. */
.side-theme-toggle.theme-switch{display:flex;justify-content:space-between;gap:16px;padding:12px 14px;border:0;background:transparent}.theme-switch-track{display:block;position:relative;width:44px;height:26px;border-radius:20px;background:var(--line);border:1px solid var(--muted);flex:0 0 44px}.theme-switch-track>span{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--surface);box-shadow:0 1px 3px #0003;transition:transform .15s}.theme-switch[aria-checked=true] .theme-switch-track{background:#2c5b52;border-color:#2c5b52}.theme-switch[aria-checked=true] .theme-switch-track>span{transform:translateX(18px);background:#fff}.site-header .mobile-menu-btn{margin-left:auto}
.map-pin,.map-pin.cluster{--pin-fill:#2c5b52;background:var(--pin-fill)!important}.map-pin:hover,.map-pin:focus-visible,.map-pin.cluster:hover,.map-pin.cluster:focus-visible{--pin-fill:#234b43;background:var(--pin-fill)!important}.map-pin::after,.map-pin.cluster::after,.map-pin:hover::after,.map-pin:focus-visible::after,.map-pin.cluster:hover::after,.map-pin.cluster:focus-visible::after{border-top-color:var(--pin-fill)!important}
@media(prefers-reduced-motion:reduce){.theme-switch-track>span{transition:none}}
.side-theme-toggle.theme-switch{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:12px;padding:8px 10px;min-height:44px;width:100%;margin-bottom:20px}.side-theme-toggle.theme-switch>span:first-child{white-space:nowrap;text-align:left;font-size:14px;line-height:1.3;min-width:0}.side-theme-toggle.theme-switch .theme-switch-track{box-sizing:border-box;width:40px;height:24px;min-width:40px;padding:0}.side-theme-toggle.theme-switch .theme-switch-track>span{top:2px;left:2px;width:18px;height:18px}.side-theme-toggle.theme-switch[aria-checked=true] .theme-switch-track>span{transform:translateX(16px)}
.catalog-filter-bar{display:flex;align-items:flex-start;gap:12px;margin:20px 0;min-width:0}.catalog-filter-bar>.btn{flex-shrink:0;display:flex;gap:9px;align-items:center}.catalog-selected{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.selected-filter{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:12px;color:var(--accent);min-height:44px;text-align:left}.selected-filter span{font-size:22px}.filters .filter-toolbar[hidden],.filters>#resetFilters[hidden]{display:none!important}.unified-filter-drawer{width:min(520px,100vw);background:var(--surface);color:var(--ink);padding:26px;inset:0 0 0 auto;border-radius:0;height:100dvh;max-height:100dvh}.unified-filter-drawer .dialog-top{align-items:center}.unified-filter-drawer .dialog-top .eyebrow{margin:0 0 6px;color:var(--accent)}.unified-filter-drawer .dialog-top h2{font-size:26px;margin:0}.unified-filter-drawer .round-btn{flex-shrink:0}.unified-filter-drawer .filter-drawer-controls{padding:0 6px 8px 0;overscroll-behavior:contain}.draft-group{margin:24px 0}.draft-group h3{font-size:14px;color:var(--muted);margin:0 0 12px}.draft-field{border:1px solid var(--line);border-radius:10px;margin-bottom:10px;background:var(--surface);overflow:hidden}.draft-field summary{padding:15px 16px;display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;font-size:14px}.draft-field summary::after{content:'⌄';margin-left:4px;color:var(--accent)}.draft-field summary::-webkit-details-marker{display:none}.draft-field summary strong{font-size:14px;font-weight:600;margin-left:auto;text-align:right;max-width:65%;overflow-wrap:anywhere}.draft-field[open] summary{border-bottom:1px solid var(--line)}.draft-options{padding:8px;max-height:280px;overflow-y:auto}.draft-options button{display:flex;justify-content:space-between;gap:12px;align-items:center;width:100%;min-height:46px;padding:11px 12px;border:0;border-radius:8px;background:transparent;color:var(--ink);text-align:left;font-size:14px}.draft-options button[aria-pressed=true]{background:var(--raised);color:var(--accent);font-weight:600}.draft-options button[hidden]{display:none}.draft-options button:hover{background:var(--raised)}.draft-options small{color:var(--muted);font-weight:400}.draft-search{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;margin-bottom:8px;background:var(--surface);color:var(--ink)}.filter-panel-footer{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:16px;padding-top:16px;border-top:1px solid var(--line);flex-shrink:0}.filter-panel-reset{border:0;background:transparent;color:var(--accent);min-height:46px;padding:8px}.filter-panel-footer .btn{padding:14px;font-size:14px;min-height:50px}.unified-filter-drawer:has([open]){overflow:hidden}body:has(.unified-filter-drawer[open]){overflow:hidden}@media(max-width:600px){.unified-filter-drawer[open]{inset:0;width:100%;height:100dvh;max-height:100dvh;border-radius:0;padding:18px;padding-bottom:max(18px,env(safe-area-inset-bottom))}.unified-filter-drawer .dialog-top h2{font-size:23px}.catalog-filter-bar{flex-direction:column;gap:10px}.catalog-selected{flex-wrap:nowrap;overflow-x:auto;width:100%;padding-bottom:4px}.selected-filter{white-space:nowrap;flex-shrink:0}.draft-field summary{padding:14px 12px}}
.draft-exact{display:flex;align-items:center;gap:12px;padding:8px 12px;font-size:14px}.draft-exact input{min-width:0;width:130px;margin-left:auto;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--surface);color:var(--ink)}
.catalog-filter-bar{align-items:center}.catalog-filter-bar>.btn{order:2;margin-left:auto}.catalog-selected{order:1;flex:1}.filter-edge-icon{flex-shrink:0}.unified-filter-drawer[open]{animation:filter-panel-enter .2s ease-out}@keyframes filter-panel-enter{from{transform:translateX(100%)}to{transform:translateX(0)}}@media(max-width:600px){.catalog-filter-bar>#openFilterDrawer{position:fixed;right:-3px;top:48%;z-index:55;order:0;margin:0;width:50px;min-width:50px;height:54px;min-height:54px;padding:12px;border-radius:12px 0 0 12px;justify-content:center;background:var(--surface);color:var(--accent);border:1px solid var(--line);box-shadow:-3px 3px 14px #0002}.filter-trigger-label{display:none}.catalog-filter-bar>#openFilterDrawer .filter-count{position:absolute;top:-8px;left:-7px;min-width:20px;height:20px;font-size:11px;padding:0 4px}.catalog-filter-bar:has(.catalog-selected:empty){margin:0}.catalog-selected{flex:none}.map-filter-widget{display:none!important}.catalog-filter-bar{margin:12px 0}.unified-filter-drawer[open]{z-index:100}}@media(prefers-reduced-motion:reduce){.unified-filter-drawer[open]{animation:none}}
@media(max-width:900px){.view-toggle #mapView{order:0}.view-toggle #listView{order:1}}
.map-pin{touch-action:manipulation;user-select:none;-webkit-user-select:none}
.map-interaction-toggle{position:absolute;z-index:6;left:12px;top:12px;max-width:calc(100% - 90px);background:var(--surface);color:var(--accent);border:1px solid var(--line);border-radius:9px;padding:10px 14px;font-size:13px;font-weight:600;min-height:44px;box-shadow:0 2px 8px #0002}.map-interaction-toggle[aria-pressed=true]{background:var(--action);color:var(--on-action)}.map-scroll-safe #yandexMap,.map-scroll-safe #yandexMap *{touch-action:pan-y!important}
html,body{max-width:100%;overflow-x:clip}.catalog-section,.catalog-workspace,.map-panel,.map-stage,.catalog-filter-bar{min-width:0;max-width:100%}.map-panel,.map-stage{overflow:hidden}@media(max-width:600px){.catalog-filter-bar>#openFilterDrawer{right:0}.catalog-selected{flex-wrap:wrap;overflow:visible}.selected-filter{white-space:normal;max-width:100%;overflow-wrap:anywhere}}
.map-gesture-hint{position:absolute;left:12px;top:12px;z-index:5;max-width:calc(100% - 100px);padding:8px 10px;margin:0;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);font-size:12px;line-height:1.4;pointer-events:none;box-shadow:0 1px 4px #0001}
.home-locations{padding-top:36px}.home-locations .section-head{align-items:flex-start;gap:20px;margin-bottom:24px}.home-locations .section-head h2{margin-bottom:0}.home-locations .eyebrow{margin-bottom:10px}.home-locations .section-head>.text-btn{flex-shrink:0;margin-top:5px}@media(max-width:600px){.home .menu-section{padding-bottom:20px}.home .menu-section>.fine:last-child{margin-bottom:0}.home-locations{padding-top:28px}.home-locations .section-head{gap:16px;margin-bottom:18px}.home-locations .section-head>.text-btn{max-width:112px;margin-top:0;line-height:1.5;padding-top:0}.home-locations .location-links a{min-width:0}}

/* gv-brand.css */
@font-face{font-family:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(assets/gv/onest-400.c8c82932d7.woff2) format('woff2')}@font-face{font-family:Onest;font-style:normal;font-weight:500;font-display:swap;src:url(assets/gv/onest-500.0d444931b1.woff2) format('woff2')}@font-face{font-family:Onest;font-style:normal;font-weight:600;font-display:swap;src:url(assets/gv/onest-600.eb1906c5da.woff2) format('woff2')}@font-face{font-family:Onest;font-style:normal;font-weight:700;font-display:swap;src:url(assets/gv/onest-700.4e4a163fca.woff2) format('woff2')}@font-face{font-family:Onest;font-style:normal;font-weight:800;font-display:swap;src:url(assets/gv/onest-800.649e3c7041.woff2) format('woff2')}
:root{--bg:#f5f3ed;--surface:#fff;--raised:#e8e6f5;--ink:#1d2943;--ink-strong:#1d2943;--muted:#606176;--line:#d8d7e3;--accent:#353a68;--action:#1d2943;--on-action:#fff;--field-line:#9392a3;--gv-lavender:#b6b8ee;--gv-memorial:#e8ede6;--gv-memorial-ink:#344a42;--gv-dark:#1d2943;--scroll-thumb:#b6b8ee;color-scheme:light}
:root[data-theme=dark]{--bg:#121a2c;--surface:#1d2943;--raised:#2a3551;--ink:#eeedf7;--ink-strong:#fff;--muted:#c3c2d4;--line:#515979;--accent:#c8cafa;--action:#b6b8ee;--on-action:#1d2943;--field-line:#858caf;color-scheme:dark}
body.gv-site{font-family:Onest,Arial,sans-serif;color:var(--ink);background:var(--bg);font-size:17px;line-height:1.53}body.gv-site main,body.gv-site footer.site-footer{margin-left:0!important;width:100%!important}body.gv-site main{padding-top:0}.gv-site h1,.gv-site h2,.gv-site h3{font-family:Onest,Arial,sans-serif;font-weight:700;letter-spacing:-.03em}.gv-site h1{font-size:clamp(36px,4.45vw,64px);line-height:1.06}.gv-site h2{font-size:clamp(30px,3.34vw,48px);line-height:1.125}.gv-site h3{font-size:28px;line-height:1.22;font-weight:600}.gv-site button,.gv-site input,.gv-site select,.gv-site textarea{font-family:inherit}.gv-site .btn{border-radius:999px;min-height:56px;font-size:16px;font-weight:500;padding:16px 24px}.gv-site .btn:hover{background:#353a68;color:white}.gv-site .btn.outline:hover{background:var(--raised);color:var(--ink)}.gv-site a:focus-visible,.gv-site button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.gv-site input:focus,.gv-site textarea:focus,.gv-site select:focus{outline:2px solid var(--accent);outline-offset:2px}.gv-site input:not([type=checkbox]):not([type=radio]),.gv-site textarea,.gv-site select{border-radius:16px;border-color:var(--field-line);background:var(--surface);color:var(--ink)}.gv-site input[type=checkbox],.gv-site input[type=radio]{accent-color:var(--action);width:20px;height:20px;min-width:20px}.gv-site .wpcf7-acceptance label{display:flex;align-items:flex-start;gap:12px;padding:12px 0;min-height:48px;font-size:14px;line-height:1.45}.gv-site .wpcf7-not-valid{border-color:#a73535!important}.gv-site .wpcf7-not-valid-tip{color:#a73535;font-size:14px;margin-top:8px}.gv-site textarea{min-height:160px}.gv-site .wrap{width:calc(100% - 96px);max-width:1440px;margin-left:auto;margin-right:auto}.gv-site .dev-bar{font-size:12px;background:var(--raised);padding:6px 16px;position:relative;text-align:center;z-index:2}.gv-site .navigation-rail{display:none!important}.gv-site .site-header{display:block!important;position:relative;inset:auto;height:auto;box-shadow:none;border:0;background:var(--bg);z-index:60}.gv-site .header-inner{max-width:1440px;min-height:104px;width:100%;padding:20px 48px;display:flex;align-items:center;gap:48px;margin:auto}.gv-site .brand{display:inline-flex;align-items:center;font-weight:800;color:var(--ink);text-decoration:none;flex-shrink:0}.gv-wordmark{display:flex;align-items:center;gap:12px;padding:4px 8px;width:280px;height:64px;font-size:26px;font-weight:800;line-height:26px;letter-spacing:-.78px}.gv-brand-symbol{width:52px;height:52px;display:grid;place-items:center;flex-shrink:0}.gv-brand-symbol picture,.gv-brand-symbol img{display:block;max-width:none}.gv-site .brand .gv-wordmark>span:last-child{font-size:inherit}.gv-site .gv-header-nav{display:flex;align-items:center;gap:32px;flex:1}.gv-header-nav a,.gv-header-nav button{background:transparent;border:0;padding:0;font-size:16px;font-weight:500;color:var(--ink);white-space:nowrap}.gv-header-nav .gv-location-link{font-size:14px;color:var(--muted)}.gv-site .gv-header-cta{width:270px;flex-shrink:0}.gv-site .mobile-menu-btn{display:none}.gv-site .side-navigation{display:none!important}.gv-site .sidebar-scrim{display:none!important}.gv-site .gv-icon{display:inline-grid;place-items:center;width:24px;height:24px;flex:0 0 24px}.gv-icon img{display:block;max-width:none}.gv-site .gv-button{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;min-height:56px;border-radius:999px;border:1px solid transparent;font-size:16px;font-weight:500;line-height:22px;text-decoration:none;color:var(--gv-dark);background:white;cursor:pointer;max-width:100%;text-align:left}.gv-site .gv-button-primary{background:var(--gv-dark);color:white}.gv-site .gv-button-primary:hover{background:#353a68}.gv-site .gv-button-secondary{background:white;color:var(--gv-dark)}.gv-site .gv-button-secondary:hover{background:#e8e6f5}.gv-site .gv-button-accent{background:var(--gv-lavender);color:var(--gv-dark)}.gv-site .gv-button-accent:hover{background:#9c9fdf}.gv-site .gv-button-inverse{border-color:#fff;background:transparent;color:#fff}.gv-site .gv-button-inverse:hover{background:#353a68}
/* The page geometry follows the desktop and 390 px frames; existing catalogue logic stays in place. */
.gv-home{max-width:1440px;margin:auto}.gv-home p{margin:0}.gv-home h1,.gv-home h2,.gv-home h3{margin:0}.gv-hero{position:relative;margin:0 32px;min-height:780px;padding:64px;display:flex;flex-direction:column;justify-content:space-between;gap:60px;border-radius:32px;overflow:hidden;background:var(--gv-dark);color:white}.gv-hero-photo,.gv-hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.gv-hero-shade{background:linear-gradient(90deg,rgba(14,18,31,.9),rgba(14,18,31,.35) 58%,rgba(14,18,31,.03))}.gv-hero-copy{position:relative;z-index:1;display:flex;flex-direction:column;gap:24px;max-width:790px}.gv-home .gv-hero h1{font-size:clamp(64px,6.12vw,88px);line-height:1.09;color:white;font-weight:700;letter-spacing:-.03em}.gv-hero-copy>p:last-of-type{font-size:20px;line-height:30px;max-width:610px}.gv-label{font-size:14px;font-weight:500;line-height:20px}.gv-caption{font-size:12px;line-height:18px;color:var(--muted)}.gv-hero-symbol{position:absolute;right:64px;top:58px;width:144px;height:144px;display:grid;place-items:center}.gv-hero-symbol img{display:block;max-width:none}.gv-mobile-start,.gv-mobile-photo,.gv-pick-title{display:none!important}.gv-pick{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr 1fr 1fr 292px;gap:16px;padding:16px;background:white;color:var(--gv-dark);border-radius:24px;width:100%;margin:0}.gv-pick label{display:flex;align-items:center;gap:12px;padding:12px 16px;min-width:0;position:relative}.gv-pick label>span:not(.gv-icon){flex:1;min-width:0}.gv-pick small{display:block;font-size:12px;color:#606176;line-height:18px}.gv-site .gv-pick input,.gv-site .gv-pick select{display:block;padding:0;margin:4px 0 0;border:0;background:white;color:#1d2943;border-radius:0;min-height:26px;height:26px;width:100%;max-width:100%;font-size:17px;appearance:none;min-width:0;line-height:26px}.gv-pick select{cursor:pointer}.gv-pick input::placeholder{color:#1d2943;opacity:1}.gv-pick>button{align-self:center}.gv-assurances{padding:32px 48px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;color:var(--muted);font-size:14px;font-weight:500}.gv-assurances>span{display:flex;align-items:center;gap:12px}.gv-section{padding:96px 48px}.gv-heading-pair{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:start;margin-bottom:48px}.gv-heading-pair>p{font-size:20px;line-height:30px;color:var(--muted)}.gv-occasion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.gv-occasion{overflow:hidden;border-radius:24px;background:#e8e6f5;color:#1d2943;display:flex;flex-direction:column}.gv-occasion>img,.gv-occasion>picture.sa-responsive>img{width:100%;height:280px;object-fit:cover;display:block}.gv-occasion>div{padding:28px;display:flex;flex-direction:column;gap:16px;flex:1;min-height:238px}.gv-category{display:flex;gap:12px;align-items:center;font-size:14px;font-weight:500}.gv-site .gv-occasion h3{color:inherit}.gv-occasion.remembrance{background:#e8ede6;color:#344a42}.gv-occasion.corporate{background:#1d2943;color:white}.gv-card-link{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding:0;min-height:24px;width:100%;background:transparent;border:0;color:inherit;font:inherit;font-weight:500;font-size:16px;text-align:left}.gv-site .gv-card-link{color:inherit}.gv-venues{padding-top:80px;padding-bottom:80px}.gv-venues>p:not(.gv-caption){margin-top:32px;margin-bottom:32px;font-size:20px}.gv-venue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.gv-venue-card{border-radius:24px;background:var(--surface);overflow:hidden;display:flex;flex-direction:column}.gv-venue-card>a>img,.gv-venue-card>a>picture.sa-responsive>img{width:100%;height:240px;object-fit:cover;display:block}.gv-venue-card>div{padding:24px;display:flex;flex-direction:column;gap:12px;flex:1}.gv-venue-card h3 a{color:var(--ink)}.gv-venue-card .gv-button{margin-top:auto;width:100%}.gv-venues>.gv-caption{margin:32px 0}.gv-venues>.gv-button{min-width:280px}.gv-menu-preview{padding-top:80px;padding-bottom:80px}.gv-menu-preview>h2{margin-bottom:32px}.gv-menu-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.gv-menu-composition{background:#1d2943;color:white;border-radius:24px;padding:32px;display:flex;flex-direction:column;gap:24px;min-height:740px}.gv-home .gv-menu-composition h2{color:white}.gv-menu-composition .gv-caption{color:white;opacity:.85;max-width:596px}.gv-table-graphic{display:block;margin-top:0;margin-bottom:auto;max-width:100%}.gv-table-graphic img{display:block;max-width:none}.gv-menu-composition>.gv-button{width:100%}.gv-cost-column{display:flex;flex-direction:column;gap:24px}.gv-cost{background:#e8e6f5;color:#1d2943;border-radius:24px;padding:24px;display:flex;flex-direction:column;gap:20px}.gv-site .gv-cost h3{font-size:22px;color:#1d2943;letter-spacing:0;line-height:28px}.gv-cost dl{margin:0;display:grid;gap:16px}.gv-cost dl>div{display:flex;justify-content:space-between;gap:12px}.gv-cost dd{margin:0;text-align:right}.gv-cost-total{font-size:22px;font-weight:600}.gv-cost .gv-caption{color:#606176}.gv-site input[data-gv-cost-guests]{padding:0 4px;display:inline;width:52px;min-width:0;min-height:28px;border:0;border-bottom:1px solid #9392a3;border-radius:0;background:transparent;color:#1d2943;font-size:17px;height:28px}.gv-conditions{background:var(--surface);border-radius:24px;padding:24px}.gv-site .gv-conditions h3{font-size:22px;margin-bottom:20px;letter-spacing:0}.gv-conditions>div{display:flex;gap:12px;margin-top:16px}.gv-conditions p{font-size:17px;color:var(--muted)}.gv-conditions strong,.gv-conditions p>span{display:block}.gv-conditions strong{font-weight:500;font-size:16px;margin-bottom:4px}.gv-how>h2{margin-bottom:48px}.gv-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.gv-steps article>div{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.gv-steps article>div>span:first-child{font-size:48px;line-height:54px;font-weight:700;letter-spacing:-.03em;color:var(--muted)}.gv-step-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:var(--raised)}.gv-steps h3{margin-bottom:24px}.gv-steps p{color:var(--muted)}.gv-remembrance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px;background:#e8ede6;color:#344a42;align-items:start}.gv-remembrance-photo{width:100%;height:500px;object-fit:cover;border-radius:32px}.gv-remembrance>div{display:flex;flex-direction:column;gap:24px}.gv-remembrance-icon{display:grid;place-items:center;width:48px;height:48px}.gv-remembrance-icon img{max-width:none}.gv-home .gv-remembrance h2{color:#344a42}.gv-remembrance p{font-size:20px;line-height:30px}.gv-remembrance .gv-button{width:280px}.gv-faq{display:grid;grid-template-columns:560fr 712fr;gap:72px}.gv-faq>div:first-child>p{color:var(--muted);margin-top:24px}.gv-faq details{background:var(--surface);border:0;border-radius:16px;padding:24px;margin:0 0 12px}.gv-faq summary{font-size:22px;line-height:28px;font-weight:600;display:flex;justify-content:space-between;gap:16px;cursor:pointer;list-style:none}.gv-faq summary::-webkit-details-marker{display:none}.gv-faq summary::after{content:'+';flex:0 0 24px}.gv-faq details[open]>summary::after{content:'−'}.gv-faq details>p{margin:16px 0 0;color:var(--muted);font-size:17px}.gv-final{display:grid;grid-template-columns:1fr 300px;gap:80px;background:#1d2943;color:white}.gv-home .gv-final h2{font-size:64px;line-height:68px;color:white}.gv-final p{margin-top:24px;opacity:.85}.gv-final-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px}.gv-final-actions>.gv-button{min-width:280px}.gv-final-symbol{display:grid;place-items:center;width:300px;height:300px}.gv-final-symbol img{display:block;max-width:none}
/* Common components on catalogue, venue, article, menu and information pages. */
.gv-site .site-footer{background:#1d2943;color:white;padding:40px 0;margin-top:0!important}.gv-site .site-footer a,.gv-site .site-footer strong,.gv-site .site-footer .brand{color:white}.gv-site .site-footer p{color:#d8d7e3}.gv-site .footer-top{display:grid;grid-template-columns:280px 1fr 1fr;gap:48px}.gv-site .footer-top .gv-wordmark{padding-left:0}.gv-site .footer-top strong{font-weight:500}.gv-site .footer-bottom{border-color:#515979;font-size:12px;gap:32px;margin-top:32px;padding-top:24px;color:#d8d7e3}.gv-site .footer-top>div>a:not(.brand){font-size:14px}.gv-site .page-intro{padding-top:64px;padding-bottom:36px}.gv-site .breadcrumbs{padding-top:32px;font-size:14px}.gv-site .venue-row,.gv-site .feature-card,.gv-site .hall-card,.gv-site .article-card,.gv-site .booking-card,.gv-site .venue-title,.gv-site .side-panel,.gv-site .venue-directions,.gv-site .menu-card,.gv-site .calculator,.gv-site .help-photo,.gv-site .memorial-tool,.gv-site .memorial-venue-card{border-radius:24px;box-shadow:none}.gv-site .article-card{padding:32px}.gv-site .article-card h2{font-size:28px;line-height:34px}.gv-site .article-grid{gap:24px}.gv-site .menu-card .photo,.gv-site .hall-card .photo{border-radius:24px 24px 0 0}.gv-site .filter-control,.gv-site .selected-filter,.gv-site .filter-dialog,.gv-site .draft-field,.gv-site .draft-search,.gv-site .memorial-links a{border-radius:16px}.gv-site .filter-control.active,.gv-site .selected-filter,.gv-site .draft-options button[aria-pressed=true]{background:var(--raised);color:var(--accent)}.gv-site .catalog-view-toggle .btn,.gv-site .round-btn{border-radius:999px}.gv-site .site-dialog,.gv-site .mega-dialog,.gv-site .filter-dialog{border-radius:24px}.gv-site .unified-filter-drawer{border-radius:24px 0 0 24px}.gv-site .site-dialog::backdrop{background:rgba(14,18,31,.55);backdrop-filter:blur(4px)}.gv-site .help-copy{background:var(--gv-memorial);color:var(--gv-memorial-ink)}.gv-site .help-copy h2,.gv-site .help-copy .eyebrow{color:var(--gv-memorial-ink)}.gv-site .help-copy .btn{background:#344a42;color:white}.gv-site .section-nav{border-color:var(--line)}.gv-site .memorial-date-card.focused{background:var(--raised)}.gv-site .memorial-calendar{border-radius:16px}.gv-site .prose{font-size:18px;line-height:1.65}.gv-site .prose h2{font-size:36px}.gv-site .content-layout{gap:48px}.gv-site .memorial-venue-card h3{font-size:18px;letter-spacing:-.02em}.gv-site .venue-title h1{font-size:clamp(32px,3.5vw,52px)}.gv-site .venue-row h2{font-size:26px}.gv-site .menu-section{background:var(--bg)}
@media(min-width:1001px) and (max-width:1250px){.gv-site .header-inner{gap:24px;padding:20px 32px}.gv-site .gv-header-nav{gap:20px}.gv-header-nav .gv-location-link{display:none}.gv-site .gv-header-cta{width:220px}.gv-pick{grid-template-columns:1fr 1fr 1fr 220px;gap:8px;padding:12px}.gv-pick label{padding:8px}.gv-hero{padding:48px}.gv-hero-symbol{right:48px}.gv-table-graphic{overflow:hidden}.gv-menu-composition{padding:24px}}
@media(max-width:1000px){.gv-site .gv-header-nav,.gv-site .gv-header-cta{display:none}.gv-site .header-inner{justify-content:space-between;padding:16px 24px;min-height:80px;gap:16px}.gv-site .mobile-menu-btn{display:grid;place-items:center;flex:0 0 48px;width:48px;min-height:48px;background:transparent;border:0;color:var(--ink);font-size:0;padding:12px}.gv-site .side-navigation{display:flex!important;flex-direction:column;position:fixed;inset:0 0 0 auto;width:min(390px,100vw);max-width:100vw;transform:translateX(105%);z-index:100;transition:transform .2s;overflow-y:auto;height:100dvh;padding:24px;box-shadow:none}.gv-site.sidebar-open .side-navigation{transform:translateX(0)}.gv-site.sidebar-open .sidebar-scrim{display:block!important;position:fixed;inset:0;background:#0e121f88;z-index:90}.gv-site .side-brand{display:flex;align-items:center;justify-content:space-between}.gv-site .side-close{display:block;flex-shrink:0}.gv-site .side-navigation .brand{min-width:0}.gv-site .side-navigation .gv-wordmark{width:auto}.gv-site .side-theme-toggle{margin:24px 0;justify-content:space-between}.gv-site .side-navigation nav{display:flex;flex-direction:column;gap:16px}.gv-site .side-bottom{margin-top:32px}.gv-site .wrap{width:calc(100% - 48px)}.gv-hero{margin:0 24px;padding:40px;min-height:700px}.gv-home .gv-hero h1{font-size:64px}.gv-hero-symbol{display:none}.gv-pick{grid-template-columns:1fr 1fr;gap:8px}.gv-assurances{padding:32px 24px;gap:24px}.gv-section{padding:64px 24px}.gv-occasion-grid{gap:16px}.gv-occasion>div{padding:20px}.gv-occasion>img,.gv-occasion>picture.sa-responsive>img{height:220px}.gv-site .gv-occasion h3{font-size:24px}.gv-heading-pair{grid-template-columns:1fr 1fr}.gv-menu-composition{padding:24px}.gv-remembrance{gap:32px}.gv-faq{gap:32px}.gv-final{grid-template-columns:1fr 180px;gap:32px}.gv-final-symbol{width:180px;height:300px;overflow:hidden}.gv-home .gv-final h2{font-size:48px;line-height:54px}.gv-site .footer-top{grid-template-columns:1fr 1fr;gap:32px}.gv-site .footer-top>div:first-child{grid-column:1/-1}}
@media(max-width:700px){.gv-site{font-size:17px}.gv-site .gv-wordmark{width:201.6px;height:46.08px;padding:2.88px 5.76px;gap:8.64px;font-size:18.72px;line-height:18.72px;letter-spacing:-.5616px}.gv-brand-symbol{width:37.44px;height:37.44px}.gv-site .header-inner{min-height:80px;padding:16px 24px}.gv-site .site-header{position:sticky;top:0}.gv-site .dev-bar{font-size:10px;line-height:15px;padding:4px 12px}.gv-site .wrap{width:calc(100% - 48px)}.gv-site h1{font-size:38px;line-height:42px}.gv-site h2{font-size:32px;line-height:38px}.gv-site h3{font-size:28px;line-height:34px}.gv-hero{margin:0;border-radius:0;padding:32px 24px;min-height:0;gap:24px;overflow:visible}.gv-hero-photo,.gv-hero-shade{display:none}.gv-home .gv-hero h1{font-size:48px;line-height:50px;letter-spacing:-1.44px}.gv-hero-copy{gap:24px;max-width:none}.gv-hero-copy>p:last-of-type{font-size:17px;line-height:26px}.gv-desktop-break{display:none}.gv-mobile-start{display:flex!important;width:100%}.gv-mobile-photo{display:block!important;position:relative;height:280px;border-radius:24px;overflow:hidden;width:100%}.gv-mobile-photo>img,.gv-mobile-photo>picture.sa-responsive>img{position:absolute;height:100%;width:146.84%;max-width:none;left:-46.84%;top:0;object-fit:cover}.gv-mobile-photo>span{position:absolute;right:16px;bottom:16px;width:72px;height:72px;display:grid;place-items:center}.gv-mobile-photo>span>img,.gv-mobile-photo>span>picture.sa-responsive>img{display:block;max-width:none}.gv-pick-title{display:block!important;font-size:28px!important;line-height:34px!important;color:white!important;scroll-margin-top:100px}.gv-pick{display:flex;flex-direction:column;gap:8px;padding:8px;background:#e8e6f5;border-radius:24px}.gv-pick label{padding:12px 16px;min-height:72px;background:white;border-radius:16px;width:100%;gap:12px}.gv-site .gv-pick input,.gv-site .gv-pick select{font-size:17px}.gv-pick>button{width:100%;min-height:48px!important;padding:12px 16px!important}.gv-assurances{display:flex;flex-direction:column;gap:16px;padding:24px;font-size:14px}.gv-section{padding:64px 24px}.gv-heading-pair{display:flex;flex-direction:column;gap:24px;margin-bottom:32px}.gv-heading-pair>p{font-size:17px;line-height:26px}.gv-occasion-grid{display:flex;flex-direction:column;gap:24px}.gv-occasion>img,.gv-occasion>picture.sa-responsive>img{height:240px}.gv-occasion>div{padding:24px;min-height:238px}.gv-site .gv-occasion h3{font-size:28px;line-height:34px}.gv-venue-grid{display:flex;flex-direction:column;gap:24px}.gv-venues>p:not(.gv-caption){font-size:17px;line-height:26px;margin:24px 0 32px}.gv-venue-card>a>img,.gv-venue-card>a>picture.sa-responsive>img{height:240px}.gv-venue-card>div{padding:24px}.gv-venue-card h3{font-size:28px}.gv-venues>.gv-button{width:100%;min-width:0}.gv-venues>.gv-caption{margin:24px 0}.gv-menu-preview>h2{margin-bottom:32px}.gv-menu-columns{display:flex;flex-direction:column;gap:24px}.gv-menu-columns>*{width:100%;min-width:0}.gv-menu-composition{padding:24px;min-height:0;gap:24px}.gv-home .gv-menu-composition h2{font-size:32px;line-height:38px}.gv-table-graphic{width:100%;display:flex;justify-content:flex-start}.gv-table-graphic img{display:block;max-width:none}.gv-cost{padding:24px;gap:20px}.gv-how>h2{margin-bottom:32px}.gv-steps{display:flex;flex-direction:column;gap:40px}.gv-steps article>div{margin-bottom:24px}.gv-steps h3{margin-bottom:24px}.gv-remembrance{display:flex;flex-direction:column;gap:32px}.gv-remembrance-photo{height:280px;border-radius:24px}.gv-remembrance p{font-size:17px;line-height:26px}.gv-remembrance .gv-button{width:100%}.gv-faq{display:flex;flex-direction:column;gap:32px}.gv-faq details{padding:24px}.gv-faq summary{font-size:22px;line-height:28px}.gv-final{display:flex;flex-direction:column;gap:32px}.gv-home .gv-final h2{font-size:40px;line-height:44px}.gv-final-actions{display:flex;flex-direction:column;gap:16px}.gv-final-actions>.gv-button{width:100%;min-width:0}.gv-final-symbol{width:120px;height:120px}.gv-site .site-footer{padding:40px 0}.gv-site .footer-top{display:flex;flex-direction:column;gap:32px}.gv-site .footer-top .gv-wordmark{font-size:26px;line-height:26px;width:280px;height:64px;gap:12px}.gv-site .footer-top .gv-brand-symbol{width:52px;height:52px}.gv-site .footer-bottom{flex-direction:column;align-items:flex-start;gap:20px}.gv-site .page-intro{padding-top:40px;padding-bottom:24px}.gv-site .breadcrumbs{padding-top:24px}.gv-site .article-card{padding:24px}.gv-site .article-card h2{font-size:28px;line-height:34px}.gv-site .prose h2{font-size:30px;line-height:36px}.gv-site .prose{font-size:17px}.gv-site .venue-title h1{font-size:36px}.gv-site .help-copy h2{font-size:36px}.gv-site .content-layout{gap:24px}.gv-site .unified-filter-drawer{border-radius:0}.gv-site .memorial-venue-card h3{font-size:18px;line-height:24px}.gv-site .gv-cost h3,.gv-site .gv-conditions h3{font-size:22px}.gv-site .site-dialog h2{font-size:28px;line-height:34px}.gv-site .memorial-tool h2{font-size:26px;line-height:32px}.gv-site .gv-cost-total{font-size:22px}}
@media(prefers-reduced-motion:reduce){.gv-site *{scroll-behavior:auto!important}.gv-site .side-navigation{transition:none}}

body.gv-site{padding-left:0!important}.gv-site .wrap{padding-left:0;padding-right:0}.gv-site .gv-wordmark,.gv-site .gv-wordmark span{text-transform:uppercase!important}.gv-site .mega-dialog{margin:auto;width:min(1100px,calc(100vw - 48px))}

@media(max-width:700px){html:has(body.gv-site){scrollbar-width:none}html:has(body.gv-site)::-webkit-scrollbar{display:none}}

@media(max-width:350px){.gv-table-graphic img{max-width:100%;height:auto}.gv-home .gv-hero h1{font-size:40px;line-height:44px}}

.gv-site .draft-group h3{font-size:14px;line-height:20px;font-weight:500;letter-spacing:0;color:var(--muted)}.gv-site .site-dialog h2{font-size:28px;line-height:34px}.gv-site .memorial-tool h2{font-size:clamp(24px,2.2vw,30px);line-height:1.2}.gv-site .memorial-date-card h3{font-size:17px;line-height:23px;letter-spacing:0}.gv-site .round-btn{min-width:48px;min-height:48px;font-size:20px}

.gv-site .gv-symbol-dark{display:none}:root[data-theme=dark] .gv-brand-symbol:has(.gv-symbol-dark)>picture{display:none}:root[data-theme=dark] .gv-site .gv-symbol-dark{display:block}:root[data-theme=dark] .mobile-menu-btn .gv-icon img,:root[data-theme=dark] .gv-assurances .gv-icon img,:root[data-theme=dark] .gv-step-icon .gv-icon img{filter:brightness(0) invert(1)}

.gv-site footer.site-footer .footer-top a:not(.brand){color:#fff}.gv-site footer.site-footer .footer-top a:not(.brand):hover{color:#b6b8ee}

.gv-site .gv-inner-cta{margin:48px 0;border-radius:24px;overflow:hidden}.gv-site .gv-inner-cta h2{font-size:clamp(36px,4.5vw,64px);line-height:1.06;color:#fff;margin:0;letter-spacing:-.03em}.gv-site .gv-inner-cta p{color:#fff}.gv-site .gv-inner-cta .gv-final-actions{margin-top:24px}.gv-site .map-pin,.gv-site .map-pin.cluster{--pin-fill:#1d2943!important;background:var(--pin-fill)!important;color:#fff}.gv-site .map-pin.cluster{--pin-fill:#b6b8ee!important;color:#1d2943}.gv-site .map-pin:hover,.gv-site .map-pin:focus-visible,.gv-site .map-pin.cluster:hover,.gv-site .map-pin.cluster:focus-visible{--pin-fill:#353a68!important;color:#fff}.gv-site .map-pin::after,.gv-site .map-pin.cluster::after{border-top-color:var(--pin-fill)!important}
@media(max-width:700px){.gv-site .gv-inner-cta{padding:40px 24px;margin:32px 0}.gv-site .gv-inner-cta h2{font-size:36px;line-height:40px}.gv-site .gv-inner-cta .gv-final-actions>.gv-button{min-width:0;width:100%}}

/* Keep the main navigation visible while the document scrolls. */
.gv-site .site-header{position:sticky;top:0;z-index:60;border-bottom:1px solid var(--line);box-shadow:0 3px 12px rgb(29 41 67 / .04)}
html:has(body.gv-site){scroll-padding-top:120px}.gv-site .section-nav{top:104px}
@media(max-width:1000px){html:has(body.gv-site){scroll-padding-top:96px}.gv-site .section-nav{top:80px}}

/* Frosted navigation only while the header is pinned to the viewport. */
.gv-site .site-header{transition:background-color .18s ease,box-shadow .18s ease}
.gv-site .site-header.is-stuck{background:rgba(245,243,237,.62);-webkit-backdrop-filter:blur(20px) saturate(140%);backdrop-filter:blur(20px) saturate(140%);border-bottom-color:rgba(147,146,163,.24);box-shadow:0 4px 20px rgba(29,41,67,.06)}
[data-theme="dark"] .gv-site .site-header.is-stuck,.gv-site[data-theme="dark"] .site-header.is-stuck{background:rgba(20,29,49,.68)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.gv-site .site-header.is-stuck{background:var(--bg)}}
@media(prefers-reduced-motion:reduce){.gv-site .site-header{transition:none}}

/* Keep the desktop map and its controls below the pinned navigation. */
@media(min-width:901px){.gv-site .map-panel{top:calc(var(--gv-header-height,105px) + 16px);scroll-margin-top:calc(var(--gv-header-height,105px) + 16px)}}

/* Venue halls form one scrollable row, with a preview of the next card. */
.gv-site #halls .hall-grid{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:0 0 16px;min-width:0;max-width:100%;overscroll-behavior-x:contain}
.gv-site #halls .hall-card{flex:0 0 calc((100% - 64px)/3);min-width:280px;scroll-snap-align:start;display:flex;flex-direction:column}
.gv-site #halls .hall-card-body{flex:1;display:flex;flex-direction:column;align-items:flex-start}.gv-site #halls .hall-card-body button{margin-top:auto;width:100%}
@media(max-width:900px){.gv-site #halls .hall-card{flex-basis:calc((100% - 40px)/2);min-width:260px}}
@media(max-width:600px){.gv-site #halls .hall-grid{gap:16px}.gv-site #halls .hall-card{flex-basis:88%;min-width:0}}
/* Match the menu's full-width backdrop to the page. */
.gv-site .menu-section{box-shadow:0 0 0 100vmax var(--bg)}
/* Related venue photos reach the card edges without a white inset frame. */
.gv-site .venue-related .venue-row{padding:0;overflow:hidden;gap:0}
.gv-site .venue-related .row-photo,.gv-site .venue-related .row-photo figure,.gv-site .venue-related .row-photo img{border-radius:0;margin:0;width:100%}
.gv-site .venue-related .row-body{padding:24px}
/* Prose link styling must retain the contrast of filled buttons. */
.gv-site .prose a.btn:not(.outline){color:var(--on-action)}
.gv-site .prose a.btn:not(.outline):hover,.gv-site .prose a.btn:not(.outline):focus-visible{color:#fff}

/* Editorial carousel cards follow the shared image-and-copy card layout. */
.gv-site .article-slider .article-card{padding:0;display:flex;flex-direction:column;flex:0 0 340px;border-radius:24px;overflow:hidden}
.gv-site .article-slider .article-cover{display:block;margin:0;border-radius:0;flex-shrink:0}
.gv-site .article-slider .article-cover img{display:block;width:100%;height:200px;object-fit:cover;border-radius:0;margin:0}
.gv-site .article-slider .article-card-copy{padding:24px;display:flex;flex:1;flex-direction:column;gap:16px}
.gv-site .article-slider .article-card h3{font-size:22px;line-height:1.3;margin:0;letter-spacing:-.02em}
.gv-site .article-slider .article-card p{font-size:15px;line-height:1.55;margin:0}
.gv-site .article-slider .article-card-copy>.text-btn{margin-top:auto;padding-top:8px}
@media(max-width:600px){.gv-site .article-slider .article-card{flex-basis:86%;min-width:0}.gv-site .article-slider .article-card-copy{padding:20px}.gv-site .article-slider .article-card h3{font-size:21px}}

.gv-side-brand{background:var(--gv-dark);border-radius:20px;display:grid;place-items:center;min-height:160px;margin-bottom:24px}.gv-side-brand img{width:96px;height:96px;display:block}
@media(min-width:901px){.gv-site .content-layout>.side-panel,.gv-site .article-service-offer{position:sticky;top:calc(var(--gv-header-height,105px) + 16px);align-self:start}}
.gv-site .gv-pick label{cursor:pointer}.gv-site .gv-pick label>.gv-icon{pointer-events:none}.gv-site .gv-pick select{min-height:40px;height:40px}

/* Brand theme switch: light by default, lavender when explicitly enabled. */
.gv-site .side-theme-toggle.theme-switch{padding:12px 14px;grid-template-columns:minmax(0,1fr) 44px;min-height:52px;border-radius:16px;color:var(--ink);background:var(--raised);margin-bottom:24px}
.gv-site .side-theme-toggle.theme-switch>span:first-child{font-size:15px;font-weight:500;line-height:1.4}
.gv-site .side-theme-toggle.theme-switch .theme-switch-track{width:44px;min-width:44px;height:26px;background:#d8d7e3;border:1px solid #9392a3;border-radius:999px}
.gv-site .side-theme-toggle.theme-switch .theme-switch-track>span{top:3px;left:3px;width:18px;height:18px;background:#fff;box-shadow:0 1px 3px rgba(29,41,67,.2)}
.gv-site .side-theme-toggle.theme-switch[aria-checked=true] .theme-switch-track{background:#b6b8ee;border-color:#b6b8ee}
.gv-site .side-theme-toggle.theme-switch[aria-checked=true] .theme-switch-track>span{transform:translateX(18px);background:#1d2943}
.gv-site .side-theme-toggle.theme-switch:focus-visible{outline:2px solid var(--accent);outline-offset:4px}

@media(max-width:600px){.gv-site .filter-panel-footer{display:flex;align-items:center;gap:12px;padding-top:16px;padding-bottom:max(16px,env(safe-area-inset-bottom));flex-shrink:0}.gv-site .filter-panel-reset{flex:0 0 auto;font-size:15px;min-height:48px;padding:10px 8px}.gv-site .filter-drawer-apply{flex:1;min-width:0;min-height:52px;padding:14px 18px;font-size:16px;line-height:24px;white-space:nowrap}}

/* Search lives with the draft filters; the panel slides from the right. */
.gv-site #filters>.search-line[hidden]{display:none!important}
.gv-site .draft-query{display:flex;flex-direction:column;gap:10px;margin:0 0 24px;font-size:14px;color:var(--muted)}
.gv-site .draft-query input{min-height:52px;font-size:16px;width:100%}
.gv-site .unified-filter-drawer[open]{inset:0 0 0 auto;margin:0;width:min(520px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;animation:gv-filter-in .22s ease-out}
.gv-site .unified-filter-drawer[open].is-closing{animation:gv-filter-out .18s ease-in forwards;pointer-events:none}
@keyframes gv-filter-in{from{transform:translateX(100%)}to{transform:translateX(0)}}
@keyframes gv-filter-out{from{transform:translateX(0)}to{transform:translateX(100%)}}
@media(prefers-reduced-motion:reduce){.gv-site .unified-filter-drawer[open],.gv-site .unified-filter-drawer[open].is-closing{animation:none}}
@media(min-width:901px){.gv-site .map-panel{top:var(--gv-header-height,105px);scroll-margin-top:var(--gv-header-height,105px)}}

/* Desktop uses the map control; mobile keeps one independent edge trigger. */
@media(min-width:901px){.gv-site .catalog-filter-bar>#openFilterDrawer{display:none}}
@media(max-width:900px){.gv-site .map-filter-widget{display:none!important}}

.gv-site #filters>[hidden]{display:none!important}
.gv-site #filters.compact-filters{padding:0;gap:0;margin-bottom:16px;min-height:0}
.gv-site .catalog-filter-bar:has(.catalog-selected:empty){margin:0;padding:0;min-height:0}
.gv-site .map-panel>.map-top{display:none}

/* One FAQ treatment for venue and category pages. */
.gv-site .faq-section details{padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:0 0 12px;background:var(--surface)}
.gv-site .faq-section summary{padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:18px;line-height:1.45;font-weight:600;list-style:none;color:var(--ink)}
.gv-site .faq-section summary::-webkit-details-marker{display:none}
.gv-site .faq-section summary::after{position:static;flex:0 0 20px;font-size:22px}
.gv-site .faq-section details>p{padding:0 26px 22px;margin:0;color:var(--ink);line-height:1.6}
@media(max-width:600px){.gv-site .faq-section summary{padding:18px;font-size:17px}.gv-site .faq-section details>p{padding:0 18px 18px}}

.gv-site .catalog-workspace,.gv-site .catalog-grid{overflow-anchor:none}
/* Keep venue content readable without desktop controls narrowing mobile copy. */
@media(max-width:700px){
 .gv-site.single-sa_venue .venue-hero>*{min-width:0}
 .gv-site.single-sa_venue .venue-title{margin:-24px 8px 0;padding:20px}
 .gv-site.single-sa_venue .venue-title h1{font-size:30px;line-height:1.16;overflow-wrap:anywhere}
 .gv-site.single-sa_venue .venue-cover{height:250px}
 .gv-site.single-sa_venue .venue-share-actions{flex-wrap:wrap;gap:8px;justify-content:flex-start}
 .gv-site.single-sa_venue .section-head{flex-direction:column;align-items:stretch;gap:16px}
 .gv-site.single-sa_venue .section-head>div{min-width:0;width:100%}
 .gv-site.single-sa_venue .section-head>.text-btn{max-width:none;align-self:flex-start;font-size:15px;min-height:44px;display:inline-flex;align-items:center}
 .gv-site.single-sa_venue .section-head .slider-controls{width:auto;align-self:flex-end}
 .gv-site.single-sa_venue .section-nav{gap:8px;padding:12px 0;scrollbar-width:none}
 .gv-site.single-sa_venue .section-nav::-webkit-scrollbar{display:none}
 .gv-site.single-sa_venue .section-nav a{padding:10px 12px;min-height:44px;display:flex;align-items:center;font-size:14px;flex-shrink:0;border-radius:12px;background:var(--surface)}
 .gv-site.single-sa_venue .related-rows{gap:16px}
 .gv-site.single-sa_venue .related-rows .venue-row{flex-basis:88%}
 .gv-site.single-sa_venue .venue-related .row-body{padding:18px}
 .gv-site.single-sa_venue .related-rows .row-body h3{font-size:20px;line-height:1.3;min-height:0}
 .gv-site.single-sa_venue .related-rows .row-photo .photo{height:180px}
 .gv-site.single-sa_venue .related-rows .row-actions .btn,.gv-site.single-sa_venue .related-rows .row-actions .icon-btn{font-size:14px;min-height:48px}
 .gv-site.single-sa_venue .hall-grid,.gv-site.single-sa_venue .related-rows,.gv-site.single-sa_venue .menu-slider{scrollbar-color:var(--gv-lavender) transparent;scrollbar-width:thin}
 .gv-site.single-sa_venue .calculator{grid-template-columns:minmax(0,1fr);gap:20px;padding:20px}
 .gv-site.single-sa_venue .calculator>*{min-width:0;grid-column:1}
 .gv-site.single-sa_venue .calculator .guest-stepper{max-width:100%}
 .gv-site.single-sa_venue .calculator>.btn{white-space:normal}
 .gv-site.single-sa_venue .venue-route-map{height:360px}
}
@media(max-width:360px){
 .gv-site.single-sa_venue .venue-title h1{font-size:27px}
 .gv-site.single-sa_venue .booking-card{padding:20px}
 .gv-site.single-sa_venue #halls .hall-card-body h3{font-size:24px;line-height:1.25}
 .gv-site.single-sa_venue .menu-tabs{gap:6px;flex-wrap:wrap}
}
/* Searchable service/city controls and filter options, 18 October. */
.gv-site #filters>.search-line[hidden],.gv-site #filters>.filter-toolbar[hidden],.gv-site .gv-pick select[hidden]{display:none!important}
.gv-site .gv-choice-trigger{display:block;width:100%;min-height:40px;padding:4px 0;border:0;background:transparent;color:var(--ink);font:inherit;font-size:17px;line-height:26px;text-align:left;cursor:pointer}
.gv-site .gv-choice-dialog{position:fixed;inset:auto;margin:0;width:360px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:20px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:24px;box-shadow:0 16px 48px #0e121f26;overflow:hidden}
.gv-site .gv-choice-dialog[open]{display:flex;flex-direction:column;gap:16px}
.gv-choice-dialog::backdrop{background:#0e121f45}
.gv-choice-top{display:flex;align-items:center;justify-content:space-between;gap:16px}
.gv-site .gv-choice-top h2{font-size:22px;line-height:28px;margin:0;letter-spacing:-.02em}
.gv-site .gv-choice-search{width:100%;min-height:48px;padding:12px 16px;font-size:16px;border:1px solid var(--field-line);flex-shrink:0}
.gv-choice-options{overflow-y:auto;overscroll-behavior:contain;max-height:280px;scrollbar-color:var(--gv-lavender) transparent;scrollbar-width:thin}
.gv-site .gv-choice-option{display:block;width:100%;min-height:48px;padding:12px;border:0;border-radius:12px;background:transparent;color:var(--ink);font-size:16px;text-align:left;cursor:pointer}
.gv-site .gv-choice-option:hover,.gv-site .gv-choice-option[aria-pressed=true]{background:var(--raised)}
.gv-site .gv-choice-option:disabled{opacity:.5;cursor:default}
.gv-site .gv-choice-moscow,.gv-site [data-draft-key=city][data-draft-value="Москва"]{font-weight:700}
.gv-site .filter-option-group{font-size:14px;font-weight:600;color:var(--muted);padding:12px;margin:4px 0 0;pointer-events:none}
.gv-site .filter-options-empty{font-size:16px;color:var(--muted);padding:12px;margin:0}
.gv-site .filter-option-group[hidden],.gv-site .filter-options-empty[hidden]{display:none}
.gv-site .draft-search{position:sticky;top:0;z-index:1;background:var(--surface);font-size:16px}
@media(max-width:700px){.gv-site .gv-choice-dialog{inset:auto 16px 16px!important;width:calc(100% - 32px);max-height:calc(100dvh - 32px);padding:20px}.gv-site .gv-choice-options{max-height:45dvh}}

/* Archive implementation, wave 1: G-01..03, G-31, G-34, F-01/06/09/39. */
:root{--muted:#4a4c60;--field-line:#6f6e86;--accent-soft:#f0effa;--focus:#1d2943;--state-error:#a73535;--state-error-bg:#fbeaea;--state-info-bg:#eceaf8;--overlay-scrim:rgba(18,26,44,.64)}
:root[data-theme=dark]{--field-line:#9aa0c4;--focus:#c8cafa;--state-error:#ff9a9a;--state-error-bg:#3a1f2a;--state-info-bg:#2a3551;--overlay-scrim:rgba(5,8,16,.72)}
.gv-site :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--focus);outline-offset:3px;box-shadow:0 0 0 3px #fff}
.gv-site :is(input,textarea,select):focus:not(:focus-visible){outline:0;box-shadow:none}
.gv-site .prose :is(p,li) a,.gv-site .wpcf7-acceptance a,.gv-site .request-dialog a{text-decoration:underline;text-underline-offset:3px}
.gv-site .fine,.gv-site .gv-caption,.gv-site .breadcrumbs,.gv-site .badge{font-size:14px;line-height:1.5}
.gv-site .eyebrow,.gv-site .row-body>.eyebrow{color:var(--muted)}
.gv-site dialog::backdrop{background:var(--overlay-scrim);backdrop-filter:none}
.gv-site .request-dialog{width:620px;max-width:calc(100vw - 48px);max-height:calc(100dvh - 48px);padding:24px;overflow:hidden;background:var(--surface);color:var(--ink)}
.gv-site .request-dialog[open]{display:flex;flex-direction:column;gap:0}
.gv-site .request-dialog .dialog-top{position:static;flex-shrink:0;background:var(--surface);padding:0;margin:0 0 12px}
.gv-site .request-dialog .dialog-top h2{font-size:28px;line-height:1.2;margin:0}
.gv-site .request-dialog .round-btn{width:48px;height:48px;min-width:48px;flex-shrink:0}
.gv-site .request-dialog #requestContext{font-size:16px;line-height:1.5;margin:0 0 16px;flex-shrink:0}
.gv-site .request-dialog>[data-request-form]:not([hidden]),.gv-site .request-dialog .wpcf7{display:flex;flex-direction:column;min-height:0!important;flex:1;overflow:hidden}
.gv-site .request-dialog form{display:flex;flex-direction:column;min-height:0!important;overflow:hidden;margin:0}
.gv-request-body{overflow-y:auto;overscroll-behavior:contain;min-height:0;flex:1;padding:4px 6px 8px 4px;margin-left:-4px;scrollbar-color:var(--gv-lavender) transparent;scrollbar-width:thin}
.gv-request-footer{flex-shrink:0;border-top:1px solid var(--line);padding:12px 0 0;margin-top:8px;background:var(--surface)}
.gv-request-footer>p{margin:0}
.gv-site .request-dialog .wpcf7 label{font-size:16px;line-height:1.5;margin-bottom:12px}
.gv-site .request-dialog input:not([type=checkbox]):not([type=hidden]),.gv-site .request-dialog textarea{min-height:48px;font-size:16px;padding:12px 14px}
.gv-site .request-dialog textarea{height:96px;min-height:96px}
.gv-site .request-dialog .fine{font-size:14px;margin:12px 0 0;flex-shrink:0}
.gv-site .request-dialog .wpcf7-acceptance label{font-size:14px;padding:0;margin:0;min-height:48px;align-items:flex-start}
.gv-site .request-dialog input[type=submit]{width:100%;border:1px solid transparent;background:var(--action);color:var(--on-action);font-size:16px;font-weight:600;min-height:56px;border-radius:999px;cursor:pointer}
.gv-site .request-dialog input[type=submit]:disabled{background:var(--raised);color:var(--muted);cursor:default;opacity:1}
.gv-site .request-dialog .wpcf7-not-valid-tip,.gv-site .gv-field-error{font-size:14px;color:var(--state-error);line-height:1.5;margin-top:6px}
.gv-site .request-dialog [aria-invalid=true]{border-color:var(--state-error)!important}
.gv-site .gv-required-note,.gv-site .gv-consent-hint{font-size:14px;color:var(--muted);line-height:1.5;margin:0 0 12px}
.gv-site .gv-required-mark{color:var(--state-error);margin-left:4px}
.gv-site .gv-consent-hint{margin:8px 0 0}
.gv-site .gv-request-notice{background:var(--state-info-bg);font-size:14px;line-height:1.5;padding:12px;border-radius:12px;margin:8px 0 0}
.gv-site .wpcf7-response-output:not(:empty){font-size:16px;color:var(--ink);padding:12px;border-radius:12px;margin:12px 0 0}
.gv-site .request-dialog [hidden]{display:none!important}
html{scrollbar-gutter:stable}
html:has(.gv-site dialog[open]),.gv-site:has(dialog[open]){overflow:hidden}
@media(max-width:600px){.gv-site .request-dialog{inset:0;width:100%;height:100dvh!important;max-width:100%;max-height:100dvh;min-height:0!important;margin:0;padding:16px;padding-bottom:max(16px,env(safe-area-inset-bottom));border:0;border-radius:0}.gv-site .request-dialog .dialog-top h2{font-size:24px}.gv-site .request-dialog #requestContext{font-size:14px;margin-bottom:12px}.gv-site .request-dialog .fine{margin-top:8px}.gv-site .request-dialog .form-grid{grid-template-columns:minmax(0,1fr)}.gv-site .request-dialog .wpcf7-acceptance label{font-size:14px}}
@media(prefers-reduced-motion:reduce){.gv-site dialog,.gv-site dialog::backdrop{animation:none!important;transition:none!important}}

/* Editable A/B routes in a dedicated popup. No inline map is loaded. */
.gv-site .venue-directions>p{margin:16px 0}
.gv-site .venue-directions>[data-open-route]{width:100%;margin-top:8px}
.gv-site .venue-route-dialog{width:1100px;max-width:calc(100vw - 48px);max-height:calc(100dvh - 48px);padding:24px;overflow:hidden}
.gv-site .venue-route-dialog[open]{display:flex;flex-direction:column}
.gv-site .venue-route-dialog .dialog-top{flex-shrink:0;margin-bottom:20px;gap:16px}
.gv-site .venue-route-dialog .dialog-top h2{font-size:28px;line-height:1.2;margin:0}
.venue-route-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:24px;min-height:0;overflow:auto;overscroll-behavior:contain}
.gv-site .venue-route-layout form{display:flex;flex-direction:column;gap:12px;margin:0;min-width:0}
.gv-site .venue-route-layout input[type=text]{min-height:48px;font-size:16px;padding:12px 14px;width:100%;margin:0}
.gv-site .venue-route-layout label{font-size:16px;margin:0}
.gv-site .venue-route-layout .btn{width:100%;min-height:48px;font-size:16px;padding:12px 16px}
.gv-site .venue-route-layout .route-transport{margin:4px 0;padding:0;border:0}
.gv-site .venue-route-layout .route-transport legend{font-size:16px;color:var(--muted);margin-bottom:8px}
.gv-site .venue-route-layout .route-transport-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.gv-site .venue-route-layout .route-transport-options label{display:flex;min-width:0;position:relative}
.gv-site .venue-route-layout .route-transport-options span{padding:12px 4px;min-height:48px;font-size:14px;line-height:22px;display:flex;align-items:center;justify-content:center;width:100%;border-radius:12px}
.gv-site .venue-route-layout .route-transport-options input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}
.venue-route-preview{display:flex;flex-direction:column;gap:12px;min-width:0;min-height:0}
.gv-site .venue-route-dialog .venue-route-map{width:100%;min-height:360px;height:100%;max-height:none;border:1px solid var(--line);border-radius:16px;margin:0;flex:1;background:var(--raised)}
.gv-site .venue-route-dialog .directions-external{font-size:16px;min-height:44px;display:flex;align-items:center}
@media(max-width:700px){.gv-site .venue-route-dialog{inset:0;width:100%;height:100dvh;max-width:100%;max-height:100dvh;margin:0;padding:16px;border:0;border-radius:0}.gv-site .venue-route-dialog .dialog-top h2{font-size:24px}.venue-route-layout{display:flex;flex-direction:column;gap:20px}.venue-route-preview{flex-shrink:0}.gv-site .venue-route-dialog .venue-route-map{height:360px;min-height:300px}.gv-site .venue-route-layout .route-transport-options span{font-size:14px}}

.gv-site .request-dialog input[type=submit]:not([type=checkbox]):not([type=hidden]){min-height:56px}
.gv-site .request-dialog [data-request-form=booking] .form-grid label:nth-child(-n+2){grid-column:1/-1!important}
.gv-site .gv-required-mark{float:right;font-size:14px;font-weight:400;color:var(--muted)}
.gv-site .prose :is(p,li) a,.gv-site .request-dialog a{text-decoration:underline!important;text-decoration-thickness:2px;text-underline-offset:3px}
/* Owner override: links without underlines; keyboard focus remains visible. */
.gv-site a,.gv-site a:hover,.gv-site a:focus,.gv-site .prose :is(p,li) a,.gv-site .request-dialog a,.gv-site .wpcf7-acceptance a{text-decoration:none!important}
/* Dialog shell stays still; only the inset content scrolls. */
.gv-site #contentDialog{overflow:hidden;max-height:calc(100dvh - 48px)}
.gv-site #contentDialog[open]{display:flex;flex-direction:column}
.gv-site #contentDialog>.dialog-top{flex-shrink:0;margin-bottom:20px;padding-right:4px}
.gv-site #contentDialog>#contentDialogBody{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:4px 12px 8px 4px;margin-left:-4px;scrollbar-color:var(--gv-lavender) transparent;scrollbar-width:thin}
.gv-site #contentDialog.map-dialog{padding:28px;max-height:calc(100dvh - 48px)}
.gv-site .company-placeholder{color:var(--state-error,#a73535)!important;font-size:14px;line-height:1.6;padding:12px 0}
.gv-site .company-placeholder strong,.gv-site .company-placeholder small{color:inherit!important;display:block}
.gv-site .company-placeholder small{font-size:14px}
.gv-site .site-footer .company-placeholder{color:#ff9a9a!important}
@media(max-width:600px){.gv-site #contentDialog{max-height:calc(100dvh - 24px)}.gv-site #contentDialog.map-dialog{max-height:85dvh;padding:20px 16px calc(16px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.gv-site #contentDialog>.dialog-top{margin-bottom:16px}}

/* Selected conditions live inside the drawer; page introduction stays compact. */
.gv-site .catalog-intro>.intro-text[hidden],.gv-site .travel-note[hidden],.gv-site #filters .catalog-selected{display:none!important}
.gv-site .catalog-filter-bar{margin:0;padding:0;min-height:0}
.drawer-selected{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.drawer-selected:empty{display:none}
.gv-site .drawer-selected .selected-filter{font-size:14px;min-height:44px;max-width:100%;overflow-wrap:anywhere;white-space:normal;background:var(--raised)}
.gv-site .drawer-help{border:0;background:var(--accent-soft);border-radius:16px;padding:12px 16px;margin:16px 0;font-size:14px;color:var(--muted)}
.gv-site .drawer-help summary{font-size:14px;font-weight:500;cursor:pointer;min-height:32px;display:flex;align-items:center}
.gv-site .drawer-help p{font-size:14px;line-height:1.6;margin:12px 0 0}
.gv-site #halls .hall-grid>.empty-state{grid-column:1/-1;width:100%;padding:clamp(24px,4vw,48px);border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--ink);text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:16px;box-sizing:border-box}
.gv-site #halls .hall-grid>.empty-state h3{font-size:clamp(24px,2.3vw,32px);line-height:1.2;margin:0;max-width:850px}
.gv-site #halls .hall-grid>.empty-state p{font-size:17px;line-height:1.6;color:var(--muted);margin:0;max-width:760px}
.gv-site #halls .hall-grid>.empty-state .btn{margin-top:8px}
@media(max-width:600px){.gv-site #halls .hall-grid>.empty-state .btn{width:100%}.gv-site #halls .hall-grid>.empty-state h3{font-size:24px}}

/* Route popup: controls and map share one viewport. */
.gv-site .venue-route-dialog{height:min(680px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);padding:20px}
.gv-site .venue-route-dialog .dialog-top{margin-bottom:12px}
.gv-site .venue-route-layout{flex:1;overflow:hidden;gap:20px}
.gv-site .venue-route-layout form{gap:8px;overflow-y:auto;padding:3px;scrollbar-width:thin;overscroll-behavior:contain}
.gv-site .route-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gv-site .venue-route-layout .route-actions .btn{font-size:14px;min-height:44px;padding:8px}
.gv-site .venue-route-preview{position:relative;height:100%;overflow:hidden;border-radius:16px}
.gv-site .venue-route-dialog .venue-route-map{height:100%;min-height:0;flex:1}
.gv-site .venue-route-dialog .directions-external{position:absolute;left:8px;bottom:8px;max-width:calc(100% - 16px);min-height:36px;padding:8px 12px;border-radius:12px;background:var(--surface);box-shadow:0 2px 8px #0002;font-size:14px}
.gv-site .venue-route-dialog [data-route-status]{font-size:14px;line-height:1.45;margin:0}
.gv-site .venue-route-dialog .round-btn{width:48px;height:48px;min-width:48px}
@media(max-width:700px){.gv-site .venue-route-dialog{height:100dvh;max-height:100dvh;padding:12px 16px}.gv-site .venue-route-dialog .dialog-top{margin-bottom:8px}.gv-site .venue-route-dialog .dialog-top h2{font-size:22px}.gv-site .venue-route-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(120px,1fr);gap:12px}.gv-site .venue-route-layout form{gap:6px;overflow:visible;padding:3px}.gv-site .venue-route-layout label{font-size:14px}.gv-site .venue-route-layout input[type=text]{height:44px;min-height:44px;font-size:16px;padding:8px 12px}.gv-site .venue-route-layout .route-transport{margin:0}.gv-site .venue-route-layout .route-transport legend{font-size:14px;margin-bottom:4px}.gv-site .venue-route-layout .route-transport-options span{min-height:40px;padding:8px 4px;font-size:14px}.gv-site .venue-route-layout .btn{min-height:44px;padding:8px 12px}.gv-site .venue-route-dialog .venue-route-map{height:100%;min-height:0}.gv-site .venue-route-dialog [data-route-status]{font-size:14px;line-height:1.4}.gv-site .venue-route-preview{min-height:0;height:100%}}
@media(max-height:600px){.gv-site .venue-route-layout{overflow:auto}}

/* Owner request: keep the directions card below the sticky header. */
@media(min-width:901px){.gv-site.single-sa_venue .venue-directions{position:sticky;top:calc(var(--gv-header-height,104px) + 16px)}}

/* One responsive hero image: the same composition at desktop and mobile. */
.gv-mobile-photo.gv-hero-media{display:block!important;position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0;z-index:0}
.gv-mobile-photo.gv-hero-media>.gv-hero-photo{display:block!important;position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
.gv-mobile-photo.gv-hero-media>span{display:none}
.gv-hero-shade{z-index:1}.gv-hero-copy,.gv-hero-symbol,.gv-hero .gv-pick,.gv-hero .gv-pick-title{z-index:2}
@media(max-width:700px){.gv-mobile-photo.gv-hero-media{position:relative;inset:auto;height:280px;flex-shrink:0;border-radius:24px}.gv-mobile-photo.gv-hero-media>.gv-hero-photo{width:146.84%;left:-46.84%}.gv-mobile-photo.gv-hero-media>span{display:grid}}

/* Ready screen 69: compact sticky header, with scroll hysteresis in gv-brand.js. */
.gv-site .site-header .header-inner{transition:min-height .24s ease-out,padding .24s ease-out}
.gv-site .site-header .gv-wordmark{transition:width .24s ease-out,height .24s ease-out,padding .24s ease-out}
.gv-site .site-header .gv-compact-wordmark,.gv-site .site-header .gv-compact-symbol{display:none}
.gv-site .site-header.is-compact .header-inner{min-height:63px;height:63px;padding-block:9px}
.gv-site .site-header.is-compact .gv-wordmark{width:280px;height:32px;padding:0;gap:8px}
.gv-site .site-header.is-compact .gv-wordmark>span:last-of-type:not(.gv-brand-symbol){display:block;font-size:18px;line-height:24px;letter-spacing:-.78px;white-space:nowrap}
.gv-site .site-header.is-compact .gv-wordmark>span:not(.gv-brand-symbol):not(.gv-compact-wordmark){display:none}
.gv-site .site-header.is-compact .gv-brand-symbol{width:32px;height:32px}
.gv-site .site-header.is-compact .gv-brand-symbol>picture,.gv-site .site-header.is-compact .gv-symbol-dark{display:none!important}
.gv-site .site-header.is-compact .gv-compact-symbol-32{display:block}
.gv-site .site-header.is-compact .gv-header-cta{min-height:44px;height:44px;padding-block:9px}
.gv-site .section-nav{top:var(--gv-header-height,104px)}
html:has(body.gv-site){scroll-padding-top:calc(var(--gv-header-height,104px) + 16px)}
.gv-site .gv-request-label-icon{display:inline-block;vertical-align:middle;margin-right:8px;max-width:none}
[data-theme=dark] .gv-site .gv-request-label-icon,[data-theme=dark] .gv-site .gv-compact-symbol{filter:brightness(0) invert(1)}
@media(max-width:1000px){
 .gv-site .site-header.is-compact .header-inner{min-height:51px;height:51px;padding-block:1px}
 .gv-site .site-header.is-compact .gv-wordmark{width:174px;height:28px;gap:8px;padding:0}
 .gv-site .site-header.is-compact .gv-wordmark>.gv-compact-wordmark{font-size:15px!important;line-height:20px!important;letter-spacing:-.5616px!important}
 .gv-site .site-header.is-compact .gv-brand-symbol{width:28px;height:28px}
 .gv-site .site-header.is-compact .gv-compact-symbol-32{display:none}
 .gv-site .site-header.is-compact .gv-compact-symbol-28{display:block}
 .gv-site .site-header.is-compact .mobile-menu-btn{min-height:48px;height:48px}
}
@media(prefers-reduced-motion:reduce){.gv-site .site-header .header-inner,.gv-site .site-header .gv-wordmark{transition:none}}

@media(max-width:700px){.gv-mobile-photo.gv-hero-media>span{width:96px;height:96px;right:16px;bottom:16px}}

.gv-site .gv-request-label-heading{display:flex;align-items:center;gap:8px}.gv-site .gv-request-label-heading>.gv-request-label-icon{margin-right:0;flex-shrink:0}

@media(max-width:700px){.gv-site .menu-tabs{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px;width:100%;max-width:420px;align-self:stretch}.gv-site .menu-tabs>button{width:100%;min-width:0;min-height:44px;justify-content:center;padding:10px 8px;font-size:13px;white-space:nowrap}.gv-site .menu-card[hidden]{display:none!important}}

@media(max-width:700px){.gv-site .menu-toolbar{flex-direction:column;align-items:stretch;gap:12px}.gv-site .menu-tabs{flex:none;max-width:none}.gv-site .menu-toolbar>.slider-controls{align-self:flex-end}}

/* Shared page grid: align header logo and action to the hero outer edges. */
@media(min-width:1001px){.gv-site .site-header .header-inner{max-width:none;padding-inline:32px;gap:32px}.gv-site .site-header .gv-wordmark{width:auto;padding-inline:0}.gv-site .site-header.is-compact .gv-wordmark{width:auto;padding-inline:0}.gv-site .site-header .gv-header-nav{justify-content:center;gap:clamp(20px,2vw,32px)}.gv-site .site-header .gv-header-cta{width:auto;min-width:0;justify-content:center;gap:24px;padding-inline:24px}.gv-site .service-breadcrumbs{padding-inline:32px}}
@media(max-width:1000px){.gv-site .site-header .gv-wordmark{padding-inline:0;width:auto}.gv-site .site-header.is-compact .gv-wordmark{padding-inline:0;width:auto}}

/* request-states.css */
.gv-request-message{background:var(--state-error-bg,#fbeaea);border:1px solid var(--state-error,#a73535);border-radius:16px;padding:12px 16px;margin:0 0 16px;color:var(--ink)}
.gv-request-message strong{display:block;font-size:17px;line-height:1.5}.gv-request-message p{font-size:16px;line-height:1.5;margin:8px 0 0}
.gv-error-links{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:8px}.gv-error-links button,.gv-draft-note button{font:inherit;font-size:14px;min-height:44px;padding:8px 4px;border:0;background:transparent;color:var(--accent);text-align:left;cursor:pointer}
.gv-site .gv-validation-error{font-size:14px;line-height:1.5;color:var(--state-error);margin:6px 0 0}
.gv-draft-note{display:flex;align-items:center;gap:12px;background:var(--state-info-bg);color:var(--ink);padding:8px 12px;border-radius:12px;margin-bottom:16px;font-size:14px;line-height:1.5}.gv-draft-note button{flex-shrink:0}
.gv-send-status{font-size:16px;line-height:1.5;background:var(--state-info-bg);color:var(--ink);border-radius:12px;padding:12px;margin:0 0 12px}
.gv-site .request-dialog [aria-busy=true] input[readonly],.gv-site .request-dialog [aria-busy=true] textarea[readonly]{background:var(--surface);color:var(--ink);opacity:1}
.gv-site .request-dialog [data-request-form]:has(.gv-request-success){overflow:hidden!important}
.gv-request-success{display:flex;flex-direction:column;gap:16px;padding:4px;overflow:hidden;min-height:0;flex:1}
.gv-request-success h2{font-size:28px;line-height:1.2;margin:0}.gv-success-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#e6f2ea;color:#2e5e43;font-size:28px;flex-shrink:0}
.gv-success-phone{font-size:18px;font-weight:600;line-height:1.5;margin:0}.gv-request-success dl{font-size:14px;line-height:1.5;margin:0}.gv-request-success dt{color:var(--muted);margin-top:8px}.gv-request-success dd{margin:0;font-size:16px;overflow-wrap:anywhere}
.gv-request-success>.btn{width:100%;min-height:56px;flex-shrink:0}.gv-request-success .text-btn{min-height:44px;padding:8px 0;align-self:flex-start;color:var(--accent);font-size:16px;border:0;background:transparent;cursor:pointer}
.gv-success-next{font-size:16px;line-height:1.5}.gv-success-next summary{font-size:16px;font-weight:600;min-height:48px;cursor:pointer}.gv-success-next ol{padding-left:24px;margin:12px 0}.gv-success-next li{padding-left:4px;margin:8px 0}
.gv-site .request-dialog .gv-request-success .fine{margin:0;display:block!important;font-size:14px}
:root[data-theme=dark] .gv-success-mark{background:#17352a;color:#8fd3a8}
.gv-site .request-dialog .gv-request-message[hidden],.gv-site .request-dialog .gv-draft-note[hidden],.gv-site .request-dialog .gv-send-status[hidden]{display:none!important}
@media(max-width:600px){.gv-request-success h2{font-size:26px}.gv-draft-note{align-items:flex-start}}

.gv-site .request-dialog .screen-reader-response{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.gv-success-body{display:flex;flex-direction:column;gap:16px;overflow-y:auto;overscroll-behavior:contain;min-height:0;flex:1;padding:4px 6px 4px 0;scrollbar-width:thin;scrollbar-color:var(--gv-lavender) transparent}
.gv-site .request-dialog .wpcf7-spinner{display:none!important}
.gv-send-status::before{content:"";display:inline-block;vertical-align:-2px;width:14px;height:14px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;margin-right:8px;animation:gv-request-spin .8s linear infinite}
[data-request-state=uncertain] .gv-send-status::before{display:none}
@keyframes gv-request-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.gv-send-status::before{animation:none}}

/* completion-foundation.css */
:root{--action-hover:#2d3a58;--action-pressed:#111c33;--state-warning:#895900;--state-warning-bg:#fff3d9;--state-success:#2e5e43;--state-success-bg:#e6f2ea;--motion-fast:120ms;--motion-base:200ms}
:root[data-theme=dark]{--action-hover:#c8cafa;--action-pressed:#9c9fdf;--state-warning:#f1c372;--state-warning-bg:#3c301d;--state-success:#8fd3a8;--state-success-bg:#17352a}
.gv-site .gv-caption,.gv-site .gv-pick small,.gv-site .fine,.gv-site .badge,.gv-site .eyebrow,.gv-site .memorial-source,.gv-site .memorial-date-card p,.gv-site .memorial-venue-card .eyebrow,.gv-site .memorial-venue-grid .badge{font-size:14px;line-height:1.5}
.gv-site .btn,.gv-site .gv-button{transition:background-color var(--motion-fast),border-color var(--motion-fast),transform 80ms}
.gv-site .btn:not(.outline):not(:disabled):hover,.gv-site .gv-button-primary:hover{background:var(--action-hover);color:var(--on-action)}
.gv-site .btn:not(.outline):not(:disabled):active,.gv-site .gv-button-primary:active{background:var(--action-pressed);transform:translateY(1px)}
.gv-site button:disabled,.gv-site input[type=submit]:disabled{cursor:not-allowed}
.gv-site .gv-header-nav a,.gv-site .text-btn,.gv-site .gv-card-link,.gv-site .capacity-filter{min-height:44px;display:inline-flex;align-items:center}
.gv-site .capacity-filter{padding:8px 12px}.gv-site .footer-top a{min-height:44px;display:inline-flex;align-items:center}
.gv-site .breadcrumbs a{display:inline-block;min-height:44px;padding:10px 0;vertical-align:middle}
.gv-site .calc-guests>label{display:block;font-size:16px;line-height:1.5;margin-bottom:8px}.gv-site .calc-guests .stepper{min-width:0}
.gv-site .side-panel h2{font-size:28px;line-height:1.2;margin:0 0 16px}.gv-site .article-service-offer h2{font-size:25px;line-height:1.2}
.gv-site .faq-section details,.gv-site .gv-faq details{padding:0;background:var(--surface);border:1px solid var(--line);border-radius:16px;margin:0 0 12px;overflow:hidden;color:var(--ink)}
.gv-site .faq-section summary,.gv-site .gv-faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:20px 24px;font-size:20px;line-height:1.4;font-weight:600;list-style:none;cursor:pointer}
.gv-site .faq-section summary::-webkit-details-marker,.gv-site .gv-faq summary::-webkit-details-marker{display:none}
.gv-site .faq-section summary::after,.gv-site .gv-faq summary::after{content:'+';position:static;flex-shrink:0;float:none;color:var(--accent);font-size:24px;line-height:24px}
.gv-site .faq-section details[open]>summary::after,.gv-site .gv-faq details[open]>summary::after{content:'−'}
.gv-site .faq-section .faq-answer,.gv-site .gv-faq .faq-answer{padding:0 24px 24px}.gv-site .faq-section .faq-answer p,.gv-site .gv-faq .faq-answer p{padding:0;margin:0;font-size:16px;line-height:1.6}
.gv-site .map-cover{background:linear-gradient(140deg,var(--raised),var(--surface));color:var(--ink);padding:80px 24px 32px;text-align:center}
.gv-site .map-cover p{max-width:360px;font-size:16px;line-height:1.5;margin:16px auto 24px}.gv-site .map-cover h3{font-size:28px;line-height:1.2}.gv-site .map-symbol{font-size:48px;color:var(--accent)}
.gv-site .dev-bar{font-size:14px;line-height:1.5;padding:8px 16px}
.gv-site .memorial-venue-card .btn,.gv-site .memorial-venue-card .text-btn{font-size:16px;min-height:44px}
@media(max-width:700px){.gv-site .faq-section summary,.gv-site .gv-faq summary{font-size:18px;padding:20px}.gv-site .faq-section .faq-answer,.gv-site .gv-faq .faq-answer{padding:0 20px 20px}}
@media(prefers-reduced-motion:reduce){.gv-site .btn,.gv-site .gv-button{transition:none}.gv-site .btn:active,.gv-site .gv-button:active{transform:none!important}}
.gv-site .article-search{margin:24px 0;max-width:760px}.gv-site .article-search label{display:block;margin-bottom:8px;font-weight:600}.gv-site .article-search>div{display:flex;gap:12px}.gv-site .article-search input{min-width:0;flex:1;font-size:16px}.gv-site .article-search .btn{flex-shrink:0}
.gv-site .article-grid .article-card{padding:0;overflow:hidden;display:flex;flex-direction:column;border-radius:24px;background:var(--surface);border:1px solid var(--line)}
.gv-site .article-card-image{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.gv-site .article-card-copy{padding:24px;display:flex;flex-direction:column;flex:1}.gv-site .article-card-copy h2{font-size:24px;line-height:1.25;margin:8px 0 16px;overflow-wrap:anywhere}.gv-site .article-card-copy p{font-size:16px;line-height:1.6}.gv-site .article-card-copy time,.gv-site .article-dates{font-size:14px;line-height:1.5;color:var(--muted)}.gv-site .article-card-copy .text-btn{margin-top:auto;padding-top:16px}
.gv-site .article-pagination ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:32px 0}.gv-site .article-pagination a,.gv-site .article-pagination span{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;padding:8px 14px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.gv-site .article-pagination .current{background:var(--action);color:var(--on-action)}
.gv-site .article-empty{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:32px}
@media(max-width:480px){.gv-site .article-search>div{flex-direction:column}.gv-site .article-card-copy{padding:20px}}
.gv-site .faq-section summary::after,.gv-site .gv-faq summary::after{display:none}.gv-site .faq-toggle{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;flex-shrink:0;font-size:24px;color:var(--accent)}.gv-site .faq-toggle>span:last-child{display:none}.gv-site details[open]>summary .faq-toggle>span:first-child{display:none}.gv-site details[open]>summary .faq-toggle>span:last-child{display:inline}
.gv-site .article-summaries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0;margin:24px 0;list-style:none}.gv-site .article-summaries li{min-width:0}.gv-site .article-summaries article{height:100%;background:var(--surface);border:1px solid var(--line);border-radius:24px;overflow:hidden}.gv-site .article-summary-link{display:flex;flex-direction:column;height:100%;padding:24px;color:var(--ink);text-decoration:none}.gv-site .article-summary-link h3{font-size:20px;line-height:1.35;margin:0 0 12px}.gv-site .article-summary-link p{font-size:16px;line-height:1.5;color:var(--muted);margin:0 0 16px}.gv-site .article-summary-link>span{font-size:16px;margin-top:auto;color:var(--accent)}.gv-site .article-summary-link:hover{background:var(--raised)}
@media(max-width:700px){.gv-site .article-summaries{grid-template-columns:1fr}.gv-site .article-summary-link{padding:20px}.gv-site .article-summary-link h3{font-size:18px}.gv-site .article-summary-link p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}
.sa-responsive{display:contents}
.gv-mobile-photo.gv-hero-media>picture.sa-responsive>.gv-hero-photo{display:block!important;position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
@media(max-width:700px){.gv-mobile-photo.gv-hero-media>picture.sa-responsive>.gv-hero-photo{width:146.84%;left:-46.84%}}
.gv-site :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #1d2943;outline-offset:3px;box-shadow:0 0 0 3px #fff}
.gv-site .site-footer p,.gv-site .footer-bottom,.gv-site .footer-bottom span,.gv-site small,.gv-site .access-summary small{font-size:14px;line-height:1.5}
.gv-site .menu-price span,.gv-site .price>span,.gv-site .calculator .muted,.gv-site .calculator-note{font-size:16px;line-height:1.5}
.gv-site .faq-toggle{min-width:48px;min-height:48px}.gv-site .faq-section summary,.gv-site .gv-faq summary{padding-top:8px;padding-bottom:8px}.gv-site .faq-answer p{max-width:70ch}
.gv-site .calculator{grid-template-columns:minmax(0,1fr) minmax(220px,.8fr) minmax(180px,.8fr) minmax(200px,.8fr);gap:24px;padding:24px}.gv-site .calculator>*{min-width:0}.gv-site .calculator>.btn{grid-column:auto;width:100%;white-space:normal}
.gv-site .calculator .stepper,.gv-site .gv-example-stepper{display:grid;grid-template-columns:56px minmax(60px,1fr) 56px;width:100%;max-width:232px;min-height:56px;border:1px solid var(--field-line);border-radius:16px;background:var(--surface);margin-top:8px}
.gv-site .stepper button{width:56px;min-height:56px;padding:0;border:0;border-radius:0;background:transparent;color:var(--ink)}.gv-site .stepper button:disabled{opacity:.4}
.gv-site .calculator .stepper input,.gv-site .gv-cost input[data-gv-cost-guests]{width:100%;min-width:0;max-width:none;min-height:56px;height:56px;padding:0 4px;border:0;border-radius:0;text-align:center;font-size:18px;background:var(--surface);color:var(--ink)}
.gv-site .gv-example-guests>label{display:block;font-size:16px;line-height:1.5;font-weight:600}.gv-site .stepper:has(:focus-visible){outline:3px solid #1d2943;outline-offset:3px;box-shadow:0 0 0 3px #fff}
.gv-site .stepper:has(input[aria-invalid=true]){border:2px solid #b42318}.gv-site .guest-error,.gv-site [data-gv-cost-hint]{font-size:14px;line-height:1.5;color:#b42318;margin-top:8px}.gv-site .guest-error:empty,.gv-site [data-gv-cost-hint]:empty{display:none}
.gv-site .gv-cost .gv-button{width:100%;min-width:0;text-align:center}.gv-site .gv-cost dd{max-width:52%;overflow-wrap:anywhere}
@media(max-width:1100px){.gv-site .calculator{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-site .calculator>div:first-child,.gv-site .calculator>.btn{grid-column:1/-1}}
@media(max-width:600px){.gv-site .calculator{grid-template-columns:minmax(0,1fr);padding:20px}.gv-site .calculator>*{grid-column:1}.gv-site .calculator .stepper{max-width:100%}}

/* Screenshot review, 18 October: consistent spacing and stable card actions. */
.gv-assurances>span{justify-content:center;text-align:center}
.gv-home .gv-section{padding-top:72px;padding-bottom:72px}
.gv-home .gv-remembrance{margin:0 32px;border-radius:24px;align-items:center}
.gv-home .gv-remembrance-photo{height:400px;width:100%;object-fit:cover}
.gv-home .gv-final{margin:0 32px 72px;border-radius:24px;align-items:center}
.gv-home .gv-final-symbol{width:100%;height:auto;aspect-ratio:1;overflow:visible;display:block}
.gv-home .gv-final-symbol img{display:block;width:100%;height:100%;object-fit:contain;max-width:100%}
.gv-home .gv-menu-columns{align-items:stretch}
.gv-home .gv-menu-composition{min-height:0;height:100%;gap:24px}
.gv-home .gv-table-graphic{margin:auto 0;width:100%;max-width:440px;align-self:center}
.gv-home .gv-table-graphic img{width:100%;height:auto;max-width:100%}
.gv-home .gv-steps article>div{display:grid;grid-template-columns:48px 1fr 48px;gap:16px}
.gv-home .gv-steps article>div:before{content:"";grid-column:2;grid-row:1;height:1px;background:var(--line)}
.gv-home .gv-steps article>div>span:first-child{grid-column:1;grid-row:1;font-size:32px;color:var(--accent,#b6b8ee)}
.gv-home .gv-step-icon{grid-column:3;grid-row:1}
.footer-top>div>a{margin-top:12px}.footer-top>div>strong{display:block;margin-bottom:20px;font-size:18px}
.venue-row .row-body{display:flex;flex-direction:column;min-width:0}
.venue-row .price{margin-top:auto;padding-top:24px}
.venue-row .row-actions{display:flex;align-items:stretch;gap:12px}
.venue-row .row-actions>.btn{min-height:56px;display:inline-flex;align-items:center;justify-content:center;white-space:normal}
.menu-slider{scrollbar-width:none;padding-bottom:4px}
.menu-slider::-webkit-scrollbar{display:none}
.menu-card{display:flex;flex-direction:column}
.menu-card .menu-summary{flex:0 0 auto}.menu-card [data-menu-detail]{align-self:flex-start;border:1px solid transparent;border-radius:12px;padding:12px;margin:8px 24px 12px;transition:background .15s,border-color .15s}
.menu-card [data-menu-detail]:hover{background:var(--raised);border-color:var(--line)}
.menu-pagination{display:flex;justify-content:center;gap:4px;padding:8px 0 16px}
.menu-page-dot{display:grid;place-items:center;width:40px;height:40px;border:0;background:transparent;border-radius:50%;padding:0}
.menu-page-dot:after{content:"";width:8px;height:8px;border-radius:50%;background:var(--line)}
.menu-page-dot[aria-pressed=true]:after{background:var(--ink);width:10px;height:10px}
.comparison-scroll{max-height:65dvh;overflow:auto;scrollbar-gutter:stable}
.visual-compare thead th{vertical-align:top;position:sticky;top:0;background:var(--surface);z-index:2}
.visual-compare thead th>a{display:flex;align-items:flex-start;min-height:96px;font-size:16px;line-height:24px}
.visual-compare tr>th:first-child{position:sticky;left:0;z-index:3;background:var(--surface);min-width:140px;width:140px;box-shadow:1px 0 var(--line)}
.visual-compare thead tr>th:first-child{z-index:4}
.compare-gallery-controls{min-height:56px}.compare-gallery-controls.single-photo{justify-content:center}
.venue-route-dialog>[data-route-status]{margin:0 0 16px;font-size:14px;line-height:20px;min-height:20px}
.venue-route-preview{position:relative;background:var(--raised)}
.venue-route-preview:not(.route-frame-loaded):before{content:"Загружаем карту… Можно открыть маршрут в Яндекс Картах";position:absolute;inset:30% 24px auto;text-align:center;font-size:16px;pointer-events:none}
.mobile-quote small,.mobile-quote [id=mobileQuoteFormula]{font-size:14px}.mobile-quote strong{font-size:18px}
@media(max-width:1000px){.gv-home .gv-final{grid-template-columns:1fr 160px}.gv-home .gv-final-symbol{width:160px;height:160px}.venue-hero{grid-template-columns:minmax(0,1fr)}.venue-hero aside{position:static;width:100%}}
@media(max-width:700px){.gv-home .gv-section{padding-top:48px;padding-bottom:48px}.gv-home .gv-remembrance{margin:0 24px;padding:24px}.gv-home .gv-final{margin:0 24px 48px;padding:32px 24px}.gv-home .gv-final-symbol{width:120px;height:120px}.gv-home .gv-menu-composition{height:auto}.visual-compare tr>th:first-child{min-width:100px;width:100px}.visual-compare thead th>a{min-height:120px}.venue-row .row-actions{flex-direction:column}.venue-row .row-actions>.btn{width:100%}}

.venue-row .row-actions>.compare-btn{min-height:56px;padding:12px 20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center}.venue-row .row-actions>.btn{flex:1}.article-slider .venue-row{height:100%}@media(max-width:700px){.venue-row .row-actions>.compare-btn{width:100%}}

/* Comparison keeps one scrolling table inside the fixed popup frame. */
.gv-site #contentDialog.comparison-dialog>#contentDialogBody{display:flex;flex-direction:column;overflow:hidden;min-height:0}
.comparison-dialog .compare-toolbar{flex:0 0 auto;margin-bottom:12px}
.comparison-dialog .comparison-scroll{flex:1 1 auto;min-height:160px;max-height:none;overflow:auto;margin-bottom:12px}
.comparison-dialog #contentDialogBody>.fine,.comparison-dialog #contentDialogBody>.btn{flex:0 0 auto}
.visual-compare thead th>a{min-height:72px}
.visual-compare .compare-gallery{height:218px;scrollbar-width:none;margin-top:8px;margin-bottom:8px}
.visual-compare .compare-gallery::-webkit-scrollbar{display:none}
.visual-compare .compare-gallery figure{height:218px;margin:0}
.visual-compare .compare-gallery img{height:180px}
.visual-compare .compare-gallery figcaption{height:38px;box-sizing:border-box;font-size:14px;line-height:20px}
.visual-compare .compare-gallery .badge{top:145px;font-size:12px}
.visual-compare .compare-gallery-controls{height:56px;min-height:56px}
.visual-compare .compare-gallery-controls small,.visual-compare td small{font-size:14px}
.visual-compare .compare-gallery-controls .round-btn{width:44px;height:44px;min-height:44px;flex-shrink:0}
.menu-slider{cursor:grab;touch-action:pan-x pan-y}.menu-slider.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.menu-slider img{-webkit-user-drag:none;user-select:none}
@media(max-width:700px){.visual-compare thead th>a{min-height:120px}.visual-compare .compare-gallery,.visual-compare .compare-gallery figure{height:190px}.visual-compare .compare-gallery img{height:152px}.visual-compare .compare-gallery .badge{top:118px}.comparison-dialog #contentDialogBody>.fine{display:none}.comparison-dialog .compare-toolbar>p{display:none}.comparison-dialog .compare-toolbar{gap:8px}.comparison-dialog .compare-toolbar .btn{min-height:44px;padding:8px 12px}}

@media(max-width:700px){.gv-site .menu-slider .menu-card{flex:0 0 calc(100% - 4px);min-width:0;max-width:100%}.gv-site .menu-slider .menu-card h3{overflow-wrap:anywhere}}

.venue-route-preview:not(.route-frame-loaded) .venue-route-map{opacity:0}.venue-route-preview .directions-external{position:absolute;z-index:2;bottom:12px;left:12px}

/* Regression fixes from screenshots 17:27–17:31: explicit component sizing. */
.gv-site .row-body>.venue-type-badge{align-self:flex-start;flex:0 0 auto;width:auto;max-width:100%}
.gv-site .booking-card h2{font-size:28px;line-height:1.2;letter-spacing:-.02em;margin:0 0 16px}
.gv-site .booking-card>.eyebrow{margin-bottom:16px}
.gv-site .booking-card>p:not(.eyebrow):not(.price){font-size:16px;line-height:1.5;margin:0 0 20px}
.gv-site .venue-related .related-rows{align-items:stretch}
.gv-site .venue-related .related-rows>.venue-row{display:flex;flex-direction:column;height:auto;min-width:0}
.gv-site .venue-related .related-rows>.venue-row>.row-body{display:flex;flex-direction:column;flex:1;min-height:0}
.gv-site .venue-related .related-rows .row-body>.price{margin-top:auto;padding-top:24px;margin-bottom:16px}
.gv-site .venue-related .related-rows .row-actions{margin-top:0}
.gv-site .menu-slider{align-items:stretch}
.gv-site .menu-slider>.menu-card{min-height:0;height:auto;padding:0;gap:0}
.gv-site .menu-slider>.menu-card .menu-photo{height:200px;margin:0 0 16px}
.gv-site .menu-slider>.menu-card .menu-photo img{height:200px;width:100%;object-fit:cover}
.gv-site .menu-slider>.menu-card>.menu-card-top{padding:0;margin:0 24px 12px;min-height:24px}
.gv-site .menu-slider>.menu-card>h3{font-size:28px;line-height:34px;min-height:68px;margin:0 24px 12px}
.gv-site .menu-slider>.menu-card>.menu-price{font-size:28px;line-height:36px;min-height:36px;margin:0 24px 12px}
.gv-site .menu-slider>.menu-card>.menu-summary{flex:0 0 auto;font-size:16px;line-height:24px;min-height:72px;margin:0 24px 16px}
.gv-site .menu-slider>.menu-card>[data-menu-detail]{margin:auto 24px 12px;padding:8px 12px;border-radius:12px;min-height:44px;max-width:calc(100% - 48px);width:auto;align-self:flex-start;font-size:16px;line-height:24px}
.gv-site .menu-slider>.menu-card>.menu-pick{width:calc(100% - 48px);margin:0 24px 24px;min-height:56px;font-size:16px}
.gv-site .choice-toast{padding:16px 20px;gap:16px;border-radius:20px;max-width:calc(100vw - 48px);align-items:center}
.gv-site .choice-toast>[data-next-menu-venue]{padding:12px 16px;border:1px solid var(--line);border-radius:999px;background:var(--raised);line-height:22px;min-height:48px;white-space:normal;text-align:center;justify-content:center}
.gv-site footer.site-footer .footer-top{align-items:start}
.gv-site footer.site-footer .footer-top>div{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.gv-site footer.site-footer .footer-top>div>strong{font-size:18px;line-height:26px;margin:0 0 12px;padding:0}
.gv-site footer.site-footer .footer-top>div>a:not(.brand){display:flex;align-items:center;min-height:44px;margin:0;padding:4px 0;font-size:16px;line-height:24px}
.gv-site footer.site-footer .footer-top>div>.brand{margin:0;padding:0;min-height:0;height:64px;align-items:flex-start}
.gv-site footer.site-footer .footer-top .gv-wordmark{padding:0;height:64px;align-items:flex-start}
.gv-site footer.site-footer .footer-top>div:first-child>p{margin:20px 0 24px;font-size:16px;line-height:24px}
.gv-site .venue-route-dialog .dialog-top{align-items:flex-start;gap:20px;margin-bottom:20px}
.gv-site .venue-route-dialog .route-heading{display:flex;flex-direction:column;gap:8px;min-width:0}
.gv-site .venue-route-dialog .route-heading h2{margin:0;font-size:28px;line-height:34px}
.gv-site .venue-route-dialog .route-heading>[data-route-status]{font-size:14px;font-weight:400;line-height:22px;color:var(--muted);margin:0;min-height:22px;max-width:900px}
@media(max-width:700px){.gv-site .booking-card h2{font-size:24px;line-height:30px}.gv-site .venue-route-dialog .route-heading h2{font-size:22px;line-height:28px}.gv-site .venue-route-dialog .dialog-top{gap:12px;margin-bottom:16px}.gv-site .choice-toast{left:16px;right:16px;bottom:16px;max-width:none;padding:12px;gap:12px;flex-wrap:wrap}.gv-site .choice-toast>[data-next-menu-venue]{flex:1}.gv-site .menu-slider>.menu-card>h3{font-size:24px;line-height:30px;min-height:60px}.gv-site .menu-slider>.menu-card>.menu-price{font-size:26px;line-height:34px}.gv-site .menu-slider>.menu-card>.menu-summary{font-size:15px;line-height:22px;min-height:66px}.gv-site footer.site-footer .footer-top>div>.brand{height:64px}}

.gv-site .access-summary .access-place{font-size:inherit;line-height:inherit;margin:12px 0 0}
.gv-site .access-summary small,.gv-site .access-summary .access-place>small{display:block;margin:6px 0 0;font-size:14px;line-height:22px;color:var(--muted)}
.gv-site #pagination{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;padding:24px 0}
.gv-site #pagination>*{margin:0;align-self:center;letter-spacing:0;font-variant-numeric:proportional-nums}
.gv-site #pagination [data-load-more]{letter-spacing:0;word-spacing:0;font-feature-settings:"pnum" 1,"tnum" 0}
.gv-site .category-onpage-links .category-link-scroll{display:flex;flex-wrap:wrap;gap:10px;overflow:visible;white-space:normal;padding:0;margin:16px 0 0;scroll-snap-type:none}
.gv-site .category-onpage-links .category-link-scroll>a{flex:0 1 auto;max-width:100%;white-space:normal;min-height:44px;padding:10px 14px;line-height:22px}
.gv-site .category-tags-more{display:none}
@media(max-width:700px){.gv-site .category-onpage-links:not(.tags-expanded) .category-link-scroll>a:nth-child(n+4){display:none}.gv-site .category-tags-more{display:inline-flex;margin-top:12px}.gv-site #pagination{flex-direction:column;gap:8px}}

/* Shared layout repair: source is metadata, never a grid item. */
.gv-site picture>source{display:none!important}
.gv-home .gv-remembrance>picture.sa-responsive{display:block;grid-column:2;grid-row:1;min-width:0}
.gv-home .gv-remembrance>div{grid-column:1;grid-row:1;min-width:0;align-self:center}
.gv-home .gv-remembrance{min-height:0}
.gv-home .gv-occasions .gv-heading-pair{display:flex;flex-direction:column;align-items:flex-start;gap:16px;max-width:820px}
.gv-home .gv-occasions .gv-heading-pair>p br{display:none}
.gv-section-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}
.gv-home .gv-venues>.gv-section-head>.gv-button{border-color:var(--line);flex-shrink:0}
.gv-site .gv-cost .gv-button-secondary{border-color:var(--line);background:var(--surface)}
.gv-site .gv-cost .gv-button-secondary:hover{background:var(--action);border-color:var(--action);color:var(--on-action)}
.gv-site footer.site-footer .footer-top>div{gap:0}
.gv-site footer.site-footer .footer-top>div>a:not(.brand){min-height:36px;padding:4px 0}
.gv-site .menu-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:0 0 24px}
.gv-site .menu-toolbar .menu-tabs{margin:0;flex-wrap:wrap}
.gv-site .menu-toolbar .slider-controls{flex:0 0 auto;align-self:center}
.gv-site .catalog-support{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:32px;align-items:start;margin:48px 0}
.gv-site .catalog-support>div{min-width:0}
.gv-site .catalog-support .category-onpage-links,.gv-site .catalog-support .faq-section,.gv-site .catalog-support .seo-directory{margin:0}
.gv-site .catalog-support h2{font-size:28px;line-height:34px;margin-bottom:24px}
.gv-site .catalog-support .category-onpage-links{padding:24px}
.gv-site .catalog-support .category-link-scroll>a{font-size:14px;line-height:20px;padding:8px 12px}
.gv-site .request-dialog{width:720px;padding:24px;max-height:calc(100dvh - 32px)}
.gv-site .request-dialog #requestContext{font-size:14px;line-height:20px;margin:0 0 12px}
.gv-site .request-dialog .gv-required-note{display:none}
.gv-site .request-dialog .gv-request-body{padding:6px 14px 6px 6px;margin-left:-6px;scroll-padding:8px}
.gv-site .request-dialog .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;align-items:start;margin:0 0 12px}
.gv-site .request-dialog [data-request-form=booking] .form-grid label:nth-child(-n+2){grid-column:auto!important}
.gv-site .request-dialog .form-grid label{display:flex;flex-direction:column;justify-content:flex-end;margin:0;min-width:0;line-height:22px;font-size:14px}
.gv-site .request-dialog .form-grid label>.wpcf7-form-control-wrap{display:block;width:100%;margin-top:auto;padding-top:8px}
.gv-site .request-dialog .form-grid label{min-height:86px}
.gv-site .request-dialog input:not([type=checkbox]):not([type=hidden]),.gv-site .request-dialog textarea{min-height:48px;padding:10px 12px;font-size:16px;border-radius:14px}
.gv-site .request-dialog input:not([type=checkbox]):not([type=hidden]):focus,.gv-site .request-dialog textarea:focus{outline:2px solid var(--focus);outline-offset:-2px;box-shadow:none}
.gv-site .request-dialog textarea{height:76px;min-height:76px}
.gv-site .request-dialog .gv-request-footer{padding-top:12px;margin-top:4px}
.gv-site .request-dialog>.gv-request-note{font-size:12px;line-height:18px;margin-top:8px}
.gv-site .request-dialog .gv-consent-hint{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
.gv-site .faq-section summary:not(:has(.faq-toggle)):after{content:"+";font-size:24px;line-height:24px;flex-shrink:0;margin-left:16px;color:var(--accent)}
.gv-site .faq-section details[open]>summary:not(:has(.faq-toggle)):after{content:"−"}
.gv-site .faq-section summary:hover{background:var(--raised)}
.gv-site .memorial-links>strong{flex-basis:100%;font-size:16px;line-height:24px;color:var(--ink)}
.gv-site .memorial-links>a{border-color:var(--line);transition:background .15s,color .15s}
.gv-site .memorial-links>a:hover{background:var(--raised);color:var(--ink);border-color:var(--accent)}
.gv-site .memorial-links>a[aria-current=page]{background:var(--action);color:var(--on-action);border-color:var(--action)}
.gv-site .memorial-venues{position:relative}
.memorial-rail-controls{display:flex;justify-content:flex-end;gap:12px;margin:16px 0}
.gv-site .memorial-venue-grid{scrollbar-width:none;cursor:grab}
.gv-site .memorial-venue-grid::-webkit-scrollbar{display:none}
.gv-site .memorial-venue-grid.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.gv-site .memorial-venue-grid img{-webkit-user-drag:none}
@media(max-width:900px){.gv-site .catalog-support{grid-template-columns:minmax(0,1fr);gap:32px}}
@media(max-width:700px){.gv-home .gv-remembrance{display:flex;flex-direction:column}.gv-home .gv-remembrance>div{order:1}.gv-home .gv-remembrance>picture.sa-responsive{order:2;width:100%}.gv-home .gv-remembrance-photo{height:260px}.gv-section-head{align-items:flex-start;flex-direction:column;gap:16px}.gv-site .menu-toolbar{align-items:flex-end;gap:12px}.gv-site .menu-toolbar .menu-tabs{gap:6px}.gv-site .menu-toolbar .slider-controls{gap:6px}.gv-site .menu-toolbar .round-btn{width:44px;height:44px;min-width:44px;min-height:44px}.gv-site .request-dialog{padding:20px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.gv-site .request-dialog .form-grid{grid-template-columns:minmax(0,1fr)}.gv-site .request-dialog .form-grid label{min-height:0}.gv-site .request-dialog .form-grid label>.wpcf7-form-control-wrap{margin-top:0}.gv-site footer.site-footer .footer-top>div>a:not(.brand){min-height:44px}}

.guide-page{padding-bottom:64px}.guide-intro{max-width:920px;padding:40px 0 32px}.guide-intro h1{font-size:clamp(36px,4vw,56px);line-height:1.08;margin:12px 0 24px}.guide-intro>p{font-size:18px;line-height:28px}.guide-notice{padding:16px 20px;background:var(--raised);border-radius:16px;margin-top:24px;font-size:16px!important;line-height:24px!important}
.guide-contents{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 32px}.guide-contents>a{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:999px;font-size:14px;line-height:22px;color:var(--ink);background:var(--surface)}.guide-contents>a>span{display:grid;place-items:center;width:24px;height:24px;flex-shrink:0;background:var(--raised);border-radius:50%;font-weight:600}.guide-contents>a:hover{background:var(--raised)}
.guide-view-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:32px 0 24px}.guide-view-controls p{margin:0;font-weight:600}.guide-view-controls [role=group]{display:flex;gap:8px}.guide-view-controls [aria-pressed=true]{background:var(--action);color:var(--on-action);border-color:var(--action)}
.guide-step{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;padding:32px;border:1px solid var(--line);border-radius:24px;background:var(--surface);margin:0 0 32px;scroll-margin-top:140px}.gv-site .guide-step h2{font-size:32px;line-height:38px;margin:8px 0 20px}.guide-step ol{margin:0;padding-left:22px}.guide-step li{padding-left:4px;margin:0 0 14px;font-size:16px;line-height:25px}.guide-result{font-size:16px;line-height:24px;border-left:3px solid var(--accent);padding-left:16px;margin:24px 0}.guide-result>strong{display:block;margin-bottom:6px}
.guide-screen{margin:0;min-width:0}.guide-screen>a{display:block;background:var(--bg);border:1px solid var(--line);border-radius:16px;overflow:hidden}.guide-screen picture{display:block}.guide-screen img{display:block;width:100%;height:auto;max-height:600px;object-fit:contain}.guide-screen figcaption{font-size:14px;line-height:22px;color:var(--muted);margin-top:12px}.guide-page[data-screenshot-view=mobile] .guide-screen>a{max-width:330px;margin:auto}.guide-page[data-screenshot-view=mobile] .guide-screen img{max-height:600px}
.guide-confirmation{background:var(--raised);padding:32px;border-radius:24px}.guide-confirmation>span{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--action);color:var(--on-action);font-size:32px}.gv-site .guide-confirmation h3{font-size:24px;line-height:30px;margin:20px 0}.guide-confirmation li{margin-bottom:12px}.guide-help{border-radius:24px;background:var(--raised);padding:32px}.gv-site .guide-help h2{font-size:32px;line-height:38px;margin:0 0 16px}.guide-help p{font-size:18px;line-height:28px;max-width:700px;margin-bottom:24px}
@media(max-width:900px){.guide-step{grid-template-columns:minmax(0,1fr);gap:24px}}@media(max-width:700px){.guide-intro{padding-top:24px}.guide-step{padding:20px;margin-bottom:24px;scroll-margin-top:110px}.gv-site .guide-step h2{font-size:26px;line-height:32px}.guide-view-controls{align-items:flex-start;flex-direction:column}.guide-step li{font-size:16px;line-height:25px}.guide-contents>a{border-radius:14px;width:100%}.guide-confirmation,.guide-help{padding:24px}.guide-screen img{max-height:660px}}

/* A single inset focus indicator stays visible inside scrolling dialogs. */
.gv-site :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=range]),textarea,select):is(:focus,:focus-visible){outline:2px solid var(--focus)!important;outline-offset:-2px!important;box-shadow:none!important;border-color:var(--focus)!important}
.gv-site .stepper:has(input:focus){outline:none;box-shadow:none}
@media(forced-colors:active){.gv-site :is(input,textarea,select):focus{outline-color:Highlight!important;border-color:Highlight!important}}

/* Latest owner decisions: separate support blocks and compact request labels. */
.gv-site .catalog-support{display:block}
.gv-site .catalog-support>div+div{margin-top:48px}
.gv-site .request-dialog .gv-required-mark{display:none!important}
.gv-site .request-dialog>.gv-request-note{margin:-8px 0 12px;font-size:13px;line-height:19px}
.gv-site .request-dialog .form-grid label{min-height:78px}
@media(max-width:700px){.gv-site .request-dialog .form-grid label{min-height:0}.gv-site .request-dialog>.gv-request-note{margin:0 0 12px}}

.gv-site .faq-section summary:not(:has(.faq-toggle))::after{display:block;content:'+';flex:0 0 24px;text-align:center}
.gv-site .faq-section details[open]>summary:not(:has(.faq-toggle))::after{content:'−'}
.gv-site .text-btn{border:1px solid transparent;border-radius:6px;padding:3px;transition:background .15s,border-color .15s}
.gv-site .text-btn:hover{border-color:var(--line);background:var(--raised)}
@media(min-width:901px){.gv-site .catalog-section>#pagination{width:calc((100% - 12px)*1.06/2.06);margin:0}}
@media(max-width:900px){.gv-site .catalog-section.show-map>#pagination{display:none}}

@media(max-width:600px){.gv-site .request-dialog{width:100vw;max-width:100vw;max-height:100dvh;height:100dvh!important;inset:0;margin:0;padding:16px}}

/* Comparison prioritizes parameters and reserves most of the viewport for them. */
.gv-site #contentDialog.comparison-dialog{width:calc(100vw - 32px);max-width:1600px;height:calc(100dvh - 32px);max-height:calc(100dvh - 32px);padding:20px;overflow:hidden}
.gv-site #contentDialog.comparison-dialog>.dialog-top{margin:0 0 12px;gap:16px;flex-shrink:0}
.gv-site #contentDialog.comparison-dialog>.dialog-top h2{font-size:26px;line-height:32px;margin:0}
.gv-site #contentDialog.comparison-dialog>.dialog-top .round-btn{width:40px;height:40px;min-height:40px;min-width:40px}
.gv-site #contentDialog.comparison-dialog>#contentDialogBody{flex:1;min-height:0}
.gv-site .comparison-dialog .compare-toolbar{display:flex;justify-content:flex-end;gap:12px;align-items:center;margin:0 0 12px}
.gv-site .comparison-dialog .compare-toolbar>p{display:none}
.gv-site .comparison-dialog .compare-toolbar .btn,.gv-site .comparison-dialog .compare-toolbar .copy-link-button{font-size:14px;line-height:20px;min-height:40px;padding:8px 14px}
.gv-site .comparison-dialog .comparison-scroll{min-height:0;flex:1;max-height:none;margin:0;overscroll-behavior:contain}
.gv-site .comparison-dialog .visual-compare{width:100%;table-layout:fixed;min-width:calc(120px + var(--compare-count)*220px);font-size:14px;line-height:20px}
.gv-site .visual-compare th,.gv-site .visual-compare td{padding:10px;min-width:0;overflow-wrap:anywhere}
.gv-site .visual-compare tr>th:first-child{width:120px;min-width:120px;font-size:13px}
.gv-site .visual-compare thead th>a{min-height:0;font-size:14px;line-height:20px}
.gv-site .visual-compare .compare-hall{padding:6px 0}
.gv-site .visual-compare .compare-hall:first-child{padding-top:0}
.gv-site .comparison-dialog #contentDialogBody>.fine{font-size:12px;line-height:18px;margin:8px 0}
.gv-site .comparison-dialog #contentDialogBody>.btn{font-size:14px;min-height:44px;padding:10px 16px}
@media(max-width:700px){.gv-site #contentDialog.comparison-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;inset:0;margin:0;padding:16px;border-radius:0}.gv-site #contentDialog.comparison-dialog>.dialog-top h2{font-size:22px;line-height:28px}.gv-site .comparison-dialog .compare-toolbar{justify-content:flex-start;flex-wrap:wrap;gap:4px}.gv-site .comparison-dialog .compare-toolbar .btn,.gv-site .comparison-dialog .compare-toolbar .copy-link-button{min-height:40px;padding:6px 10px;font-size:13px}.gv-site .visual-compare thead th>a{min-height:0}.gv-site .visual-compare tr>th:first-child{width:96px;min-width:96px}.gv-site .comparison-dialog .visual-compare{min-width:calc(96px + var(--compare-count)*220px)}}

.gv-site .visual-compare thead th:not(:first-child){width:calc((100% - 120px)/var(--compare-count))}
@media(max-width:700px){.gv-site .visual-compare thead th:not(:first-child){width:calc((100% - 96px)/var(--compare-count))}}

.gv-site .catalog-support-tags-standalone{margin:40px 0}
.gv-site .catalog-support-tags-standalone .category-onpage-links{margin:0}
.gv-site .venue-row .row-actions{display:flex;align-items:stretch;gap:12px}
.gv-site .venue-row .row-actions>:is(.btn,.compare-btn){flex:1 1 0!important;width:0;min-width:0;min-height:56px;font-size:16px;line-height:20px;padding:12px 10px;display:flex;align-items:center;justify-content:center;text-align:center}
@media(min-width:701px) and (max-width:1200px){.gv-site .venue-row .row-actions>:is(.btn,.compare-btn){font-size:14px}}
@media(max-width:700px){.gv-site .venue-row .row-actions{flex-direction:column}.gv-site .venue-row .row-actions>:is(.btn,.compare-btn){width:100%;flex-basis:auto!important;min-height:52px}}

/* Instruction anchors remain available beside the current step on desktop. */
.guide-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:28px;align-items:start}
.guide-sidebar{position:sticky;top:calc(var(--site-header-height,104px) + 16px);max-height:calc(100dvh - var(--site-header-height,104px) - 32px);overflow:auto;padding:2px}
.guide-contents-panel>summary{display:none}
.guide-sidebar .guide-contents{display:flex;flex-direction:column;gap:6px;margin:0}
.guide-sidebar .guide-contents>a{border-radius:12px;align-items:flex-start;min-height:48px;padding:10px;font-size:14px;line-height:21px}
.guide-sidebar .guide-contents>a>span{margin-top:0}
.guide-sidebar .guide-contents>a[aria-current=step]{background:var(--raised);border-color:var(--accent);font-weight:600}
.guide-main{min-width:0}
.guide-main>.guide-view-controls{margin-top:0}
.guide-main .guide-step{padding:24px;gap:24px}
.gv-site .guide-main .guide-step h2{font-size:28px;line-height:34px}
@media(max-width:1000px){.guide-layout{display:block}.guide-sidebar{position:static;max-height:none;overflow:visible;padding:0;margin:0 0 24px}.guide-contents-panel{border:1px solid var(--line);border-radius:16px;background:var(--surface)}.guide-contents-panel>summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none;padding:16px;font-weight:600;min-height:52px}.guide-contents-panel>summary::after{content:'+';font-size:22px}.guide-contents-panel[open]>summary::after{content:'−'}.guide-sidebar .guide-contents{padding:0 12px 12px}.guide-main .guide-step{padding:24px}}

.gv-site .menu-dialog .menu-popup-intro{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;align-items:center;margin-bottom:20px}
.gv-site .menu-dialog .menu-popup-photo{height:140px;min-height:0;margin:0;border-radius:16px}
.gv-site .menu-dialog .menu-detail-header{padding:16px 20px;margin:0;border-radius:16px;align-self:stretch;display:flex;align-content:center;align-items:center;flex-wrap:wrap;gap:4px}
.gv-site .menu-dialog .menu-detail-header strong{font-size:28px}
.gv-site .menu-dialog .menu-detail-header p{flex-basis:100%;font-size:14px;margin:4px 0 0}
.gv-site .menu-dialog .menu-popup-photo .badge{font-size:11px;line-height:16px;padding:4px 8px;bottom:8px;left:8px;right:8px;max-width:max-content}
.gv-site .menu-dialog .menu-composition{gap:12px 24px}
.gv-site .menu-dialog .dish-group{margin-bottom:12px}
.gv-site .menu-dialog .dish-group h3{font-size:20px;line-height:26px;margin-bottom:8px}
.gv-site .menu-dialog .dish-list li{font-size:14px;padding:7px 0}
.gv-site .menu-dialog .menu-popup-footer{padding-top:12px;padding-bottom:0;margin-top:12px}
@media(max-width:700px){.gv-site .menu-dialog .menu-popup-intro{grid-template-columns:120px minmax(0,1fr);gap:12px}.gv-site .menu-dialog .menu-popup-photo{height:110px}.gv-site .menu-dialog .menu-detail-header{padding:12px;font-size:13px}.gv-site .menu-dialog .menu-detail-header strong{font-size:24px}.gv-site .menu-dialog .menu-detail-header p{font-size:12px}.gv-site .menu-dialog .menu-popup-photo .badge{font-size:10px;line-height:13px;padding:3px 4px}}

.gv-site .menu-dialog .menu-popup-footer{bottom:0!important;padding:12px 0!important;background:var(--surface);align-items:center;gap:16px}
.gv-site .menu-dialog .menu-popup-footer>div{min-width:0}
.gv-site .menu-dialog .menu-popup-footer>div>span{display:block!important;font-size:13px;line-height:20px;margin-top:4px;color:var(--muted)}
.gv-site .menu-dialog .menu-popup-footer .btn{min-height:48px;padding:12px 20px;flex-shrink:0}

.gv-site .venue-row .row-photo,.gv-site .menu-photo{position:relative}
.gv-site .image-type-badge{position:absolute;top:12px;left:12px;z-index:2;max-width:calc(100% - 24px);margin:0!important;padding:5px 9px;border:1px solid color-mix(in srgb,var(--line) 65%,transparent);border-radius:8px;background:var(--raised);color:var(--ink);font-size:12px;line-height:18px;white-space:normal;box-shadow:0 1px 5px #0001}
.gv-site .menu-slider>.menu-card>.menu-photo{margin-bottom:20px}

.gv-site .faq-section.faq-unified{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:start;padding:40px 0}
.gv-site .faq-unified-heading{min-width:0}
.gv-site .faq-unified .faq-unified-heading h2{font-size:clamp(30px,3.2vw,46px);line-height:1.12;margin:0;max-width:450px}
.gv-site .faq-unified-items{min-width:0}
.gv-site .faq-unified-items>details{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px 24px;margin:0 0 12px}
.gv-site .faq-unified-items>details:last-child{margin-bottom:0}
.gv-site .faq-unified-items summary{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;font-size:20px;line-height:28px;font-weight:600;min-height:28px;list-style:none;padding:0;border:0;background:none}
.gv-site .faq-unified-items summary:hover{background:none;color:var(--accent)}
.gv-site .faq-unified-items summary::-webkit-details-marker{display:none}
.gv-site .faq-unified-items details>p,.gv-site .faq-unified-items .faq-answer{font-size:16px;line-height:25px;margin:16px 0 0;color:var(--ink)}
.gv-site .faq-unified-items .faq-toggle{flex-shrink:0}
@media(max-width:1000px){.gv-site .faq-section.faq-unified{grid-template-columns:minmax(0,1fr);gap:24px}.gv-site .faq-unified .faq-unified-heading h2{max-width:none;font-size:30px;line-height:36px}}
@media(max-width:700px){.gv-site .faq-unified-items>details{padding:18px}.gv-site .faq-unified-items summary{font-size:18px;line-height:26px}}

.gv-site .venue-hero-media,.gv-site .memorial-venue-card>a:first-child{position:relative;display:block}
.gv-site .venue-hero-media .photo>.badge{top:auto;bottom:72px}

.guide-step{scroll-margin-top:24px}

/* All image entities share the bottom-left badge area, above the image notice. */
.gv-site .row-photo,.gv-site .hall-photo{position:relative;min-width:0}
.gv-site .image-type-badge{top:auto;bottom:12px;left:12px;max-width:calc(100% - 24px);cursor:pointer}
.gv-site :is(.row-photo,.hall-photo,.menu-photo,.venue-hero-media,.memorial-venue-card>a):has(.badge) .image-type-badge{bottom:64px}
.gv-site .venue-hero-media .photo>.badge{bottom:12px;top:auto}
.gv-site .hall-name-badge{cursor:default}
.gv-site .photo-gallery-trigger{display:block;padding:0;margin:0;width:100%;border:0;background:none;border-radius:inherit;overflow:hidden;text-align:left;cursor:zoom-in}
.gv-site .comparison-photo-trigger figure{position:relative;margin:0}
.gv-site .comparison-photo-trigger img{width:100%;height:150px;object-fit:cover;border-radius:10px}
.gv-site .comparison-photo-trigger .badge{position:absolute;left:8px;bottom:8px;top:auto;font-size:11px;padding:4px 6px;max-width:calc(100% - 16px)}
.gv-site .comparison-dialog>.dialog-top{display:flex;flex-wrap:wrap;align-items:center}
.gv-site .comparison-dialog>.dialog-top h2{flex:1}
.gv-site .comparison-dialog>.dialog-top .compare-toolbar{margin:0}
.gv-site .comparison-dialog #contentDialogBody>.btn{width:auto;align-self:flex-end;flex:0 0 auto}
.gv-site .compare-remove{margin-top:8px;width:auto;font-size:13px;min-height:40px;padding:8px 12px}
.gv-site .photo-lightbox{width:min(1100px,calc(100vw - 32px));max-width:calc(100vw - 32px);height:min(850px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--ink);overflow:hidden}
.gv-site .photo-lightbox[open]{display:flex;flex-direction:column;gap:12px}
.gv-site .photo-lightbox::backdrop{background:#101b31bb}
.photo-lightbox-head{display:flex;align-items:center;justify-content:space-between;gap:20px;flex:0 0 auto}
.photo-lightbox-head h2{font-size:22px;margin:0}
.photo-lightbox figure{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;gap:10px;margin:0}
.photo-lightbox img{width:100%;height:100%;min-height:0;object-fit:contain;flex:1}
.photo-lightbox figcaption{flex:0 0 auto;text-align:center}
.photo-lightbox-controls{display:flex;gap:20px;align-items:center;justify-content:center;flex:0 0 auto}
@media(max-width:700px){.gv-site .comparison-dialog>.dialog-top h2{flex-basis:calc(100% - 60px)}.gv-site .comparison-dialog>.dialog-top .compare-toolbar{order:3;flex-basis:100%}.gv-site .photo-lightbox{padding:14px}.photo-lightbox-head h2{font-size:18px}}

.photo-lightbox-controls[hidden]{display:none}
.gv-site .menu-popup-photo>.photo-gallery-trigger{height:100%}
.gv-site .venue-row>.row-photo{align-self:start;height:auto}
.gv-site .row-photo:has(.badge) .image-type-badge{bottom:72px}

/* A complete, identical logo in all breakpoints; intrinsic SVG aspect ratio preserved. */
.gv-site .gv-brand-symbol picture,.gv-site .gv-brand-symbol img{width:100%;height:100%;object-fit:contain}
.gv-site .gv-brand-symbol picture>img,
.gv-site .gv-brand-symbol picture>picture.sa-responsive>img{width:100%;height:100%}
.gv-site .gv-brand-symbol .gv-symbol-dark{width:100%;height:100%}
/* Catalog view controls: a check marks the current view, pictograms mark alternatives. */
.gv-site .view-toggle button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px}
.gv-site .view-toggle button::before{content:'';width:20px;height:20px;flex:0 0 20px;background:currentColor;mask-repeat:no-repeat;mask-position:center;mask-size:contain}
.gv-site #listView::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' d='M8 6h13M8 12h13M8 18h13M3 6h1M3 12h1M3 18h1'/%3E%3C/svg%3E")}
.gv-site #mapView::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linejoin='round' d='m3 5 6-2 6 2 6-2v16l-6 2-6-2-6 2Zm6-2v16m6-14v16'/%3E%3C/svg%3E")}
.gv-site .view-toggle button.active::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='m5 12 4 4L19 6'/%3E%3C/svg%3E")}

.gv-site .image-type-badge,.gv-site :is(.row-photo,.hall-photo,.menu-photo,.venue-hero-media,.memorial-venue-media):has(.badge) .image-type-badge{top:auto;bottom:12px;left:12px}
.gv-site span.image-type-badge{cursor:default}
.gv-site .catalog-support-tags-standalone:empty{display:none}
.gv-site .memorial-venue-media{position:relative;display:block}
.gv-site .memorial-venue-media .photo{height:200px}

.request-menu-controls{display:flex;gap:12px;align-items:flex-end;flex:0 0 auto;margin:0 0 12px}.request-menu-controls>label{flex:1;min-width:0;font-size:14px}.request-menu-controls select{width:100%;min-height:44px;padding:10px 12px;margin-top:4px;font-size:15px}.request-menu-controls>.btn{min-height:44px;padding:10px 16px;font-size:14px;white-space:nowrap}.request-menu-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.request-menu-option{padding:20px;border-radius:16px;background:var(--raised)}.request-menu-option h3{margin:0 0 10px}.request-menu-option .btn{margin-top:12px}.request-menu-option p{font-size:14px}.request-menu-help{font-size:13px;margin:4px 0 0;color:var(--muted)}
@media(max-width:600px){.request-menu-controls{align-items:stretch;flex-wrap:wrap;gap:6px}.request-menu-controls>label{flex-basis:100%}.request-menu-controls>.btn{align-self:flex-start}.request-menu-options{grid-template-columns:1fr}}

.gv-site .view-toggle button.active{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.gv-site .view-toggle button:not(.active){background:var(--surface);border:1px solid var(--field-line)}

/* Equal compact actions in comparison; clear hover feedback only for venue filter tags. */
.gv-site .comparison-dialog .visual-compare td>:is(.compare-view,.compare-remove){display:flex;align-items:center;justify-content:center;width:190px;max-width:100%;min-height:40px;height:40px;padding:8px 12px;font-size:13px;line-height:20px;text-align:center;box-sizing:border-box}.gv-site .comparison-dialog .visual-compare td>.compare-remove{margin-top:8px}
.gv-site [data-venue-type-filter]{cursor:pointer;transition:background-color .15s,color .15s,box-shadow .15s}.gv-site [data-venue-type-filter]:is(:hover,:focus-visible){background:var(--ink);color:var(--surface);box-shadow:inset 0 0 0 1px var(--ink)}

.gv-site .article-toc{padding:16px 20px;border:1px solid var(--line);border-radius:24px;background:var(--surface);margin:24px 0}.gv-site .article-toc summary{font-size:18px;font-weight:600;min-height:48px;display:flex;align-items:center;cursor:pointer}.gv-site .article-toc ol{list-style:none;margin:0;padding:0}.gv-site .article-toc a{display:flex;align-items:center;min-height:44px;padding:10px 12px;border-left:3px solid transparent;font-size:16px;line-height:1.4;color:var(--ink)}.gv-site .article-toc a[aria-current]{border-left-color:var(--action);font-weight:600;background:var(--raised)}.gv-site .article-content-layout h2,.gv-site .article-content-layout #memorial-calculator{scroll-margin-top:calc(var(--gv-header-height,105px) + 20px)}.gv-site .article-toc-sidebar{min-width:0;align-self:start}.gv-site .article-toc-sidebar .article-service-offer{position:static}.gv-site .article-toc-sidebar .article-toc{margin:0 0 24px}@media(min-width:1101px){.gv-site .article-toc-sidebar{position:sticky;top:calc(var(--gv-header-height,105px) + 16px);max-height:calc(100dvh - var(--gv-header-height,105px) - 32px);overflow:auto}.gv-site .article-toc-sidebar .article-toc summary{cursor:default}}.gv-site .choice-toast .round-btn{flex-shrink:0;width:44px;min-width:44px;height:44px;min-height:44px}

.gv-site .catalog-sort{min-height:44px;padding:10px 16px;font-size:14px;margin-left:auto}.gv-site .results-top{gap:12px;flex-wrap:wrap}.gv-site .sitemap-search{display:block;margin:32px 0 12px;max-width:640px;font-size:16px}.gv-site .sitemap-search input{display:block;width:100%;min-height:56px;margin-top:8px}.gv-site .html-sitemap [hidden]{display:none!important}.gv-site .article-card-link{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}.gv-site .article-card .eyebrow{font-size:16px;text-transform:none}.gv-site .article-card-link:hover{background:var(--raised)}.gv-site .article-read-time{font-size:16px;color:var(--muted)}.gv-site .nojs-request{max-width:720px}.gv-site .nojs-request .form-grid{display:grid;gap:16px}@media(max-width:700px){.gv-site .catalog-sort{margin-left:0}}

.gv-site .menu-compare-choice{display:flex;align-items:center;gap:12px;min-height:48px;cursor:pointer;font-size:16px;margin-top:12px}.gv-site .menu-compare-choice input{width:24px;height:24px;min-width:24px}.gv-site .menu-compare-strip{display:flex;align-items:center;flex-wrap:wrap;gap:16px;background:var(--raised);border:1px solid var(--line);border-radius:16px;padding:16px;margin:20px 0}.gv-site .menu-compare-strip[hidden],.gv-site .menu-comparison[hidden]{display:none}.gv-site .menu-compare-hint,.gv-site .menu-compare-status{font-size:16px;line-height:1.5}.gv-site .menu-compare-hint:empty,.gv-site .menu-compare-status:empty{display:none}.gv-site .menu-comparison{padding:24px;border:1px solid var(--line);border-radius:24px;background:var(--surface);margin:32px 0}.gv-site #menuComparisonTitle{scroll-margin-top:calc(var(--gv-header-height,105px) + 20px)}.gv-site .menu-compare-table{width:100%;table-layout:fixed;border-collapse:collapse}.gv-site .menu-compare-table th,.gv-site .menu-compare-table td{text-align:left;vertical-align:top;padding:16px;border-bottom:1px solid var(--line);font-size:16px;overflow-wrap:anywhere}.gv-site .menu-compare-table td>.btn{width:auto;max-width:100%;min-height:48px;font-size:14px;padding:10px 14px}.gv-site .menu-compare-table td>.text-btn{display:block;min-height:44px;font-size:14px}@media(max-width:700px){.gv-site .menu-comparison{padding:16px}.gv-site .menu-compare-table thead tr,.gv-site .menu-compare-table tbody tr{display:grid;grid-template-columns:repeat(var(--menu-compare-count),minmax(0,1fr));gap:12px}.gv-site .menu-compare-table thead th:first-child{display:none}.gv-site .menu-compare-table tbody th{grid-column:1/-1;padding-bottom:0;border-bottom:0}.gv-site .menu-compare-table th,.gv-site .menu-compare-table td{padding:12px 0}.gv-site .menu-compare-table td>.btn{width:100%}}

.gv-site .menu-card,.gv-site .menu-compare-choice{position:relative}.gv-site .menu-compare-choice{padding-inline:24px}.gv-site .menu-compare-hint{margin:8px 24px 16px}

.gv-site .catalog-section.is-empty .map-panel{display:none}.gv-site .catalog-section.is-empty .catalog-workspace{display:block;min-height:0!important}.gv-site .catalog-section.is-empty .empty-state{padding:32px;border:1px solid var(--line);border-radius:24px;background:var(--surface)}.gv-site .catalog-section.is-empty .empty-state>.btn{margin:8px 12px 0 0}.gv-site .catalog-thin-note{font-size:16px;margin:16px 0}@media(max-width:700px){.gv-site .catalog-section.is-empty .empty-state{padding:24px}.gv-site .catalog-section.is-empty .empty-state>.btn{width:100%;margin-right:0}}

.gv-site .gv-venue-card>.gv-venue-media{position:relative;display:block;padding:0;flex:0 0 auto}.gv-site .gv-venue-media>a,.gv-site .gv-venue-media picture{display:block}.gv-site .gv-venue-media img{display:block;width:100%;height:240px;object-fit:cover}

.gv-site .gv-ui-icon{display:inline-block;vertical-align:middle;flex-shrink:0;width:20px;height:20px;pointer-events:none}.gv-site .map-filter-widget{display:flex;align-items:center;gap:8px}.gv-site .faq-sign .gv-ui-icon{width:20px;height:20px}.gv-site .draft-field summary::after{content:"";width:18px;height:18px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}.gv-site .draft-field[open] summary::after{transform:rotate(180deg)}

.gv-site .article-toc summary{min-height:56px}.gv-site .faq-sign .gv-ui-icon{width:24px;height:24px}.gv-site .menu-compare-strip .btn{min-height:48px;padding:12px 20px}@media(min-width:1101px){.gv-site .article-content-layout{grid-template-columns:minmax(0,1fr) 384px;gap:32px}}

/* Keep the marker body and tail on the same hover transition. */
.gv-site .map-pin::after{transition:border-top-color .18s ease!important}.gv-site .map-pin{transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease!important}
.gv-site .article-content-layout>.article-service-offer{align-self:start;position:sticky;top:calc(var(--gv-header-height,105px) + 16px)}@media(max-width:1100px){.gv-site .article-content-layout>.article-service-offer{position:static}}

/* Article covers are media containers, not intrinsic-size images. */
.gv-site .article-card-image{margin:0;overflow:hidden;aspect-ratio:16/9;flex-shrink:0}.gv-site .article-card-image picture,.gv-site .article-card-image img{display:block;width:100%;height:100%;object-fit:cover}.gv-site .article-title-panel h1{font-size:36px;line-height:1.2;letter-spacing:-.025em}.gv-site .article-title-panel{padding:24px}.gv-site .article-title-panel .article-dates{margin-top:16px}
.gv-site .article-toc summary{justify-content:space-between;gap:16px;list-style:none}.gv-site .article-toc summary::-webkit-details-marker{display:none}.gv-site .article-toc summary:after{content:'+';font-size:24px;line-height:1;flex:0 0 24px;text-align:center;color:var(--accent)}.gv-site .article-toc details[open]>summary:after{content:'−'}.gv-site .article-toc ol{counter-reset:toc;display:grid;gap:4px;padding-top:12px;border-top:1px solid var(--line)}.gv-site .article-toc li{margin:0;list-style:none}.gv-site .article-toc li[data-toc-level="2"]{counter-increment:toc}.gv-site .article-toc li[data-toc-level="2"]>a:before{content:counter(toc,decimal-leading-zero);flex:0 0 24px;color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}.gv-site .article-toc a{gap:12px;border-radius:8px}.gv-site .article-toc li[data-toc-level="3"]>a{padding-left:48px;font-size:15px}.gv-site .article-toc a:hover{background:var(--raised)}
.gv-site .article-offer,.gv-site .article-service-offer{background:#e8e6f5;color:#1d2943;border:1px solid var(--line);border-radius:24px}.gv-site .article-offer{padding:28px}.gv-site .article-offer h2{font-size:30px;line-height:1.2;color:inherit;margin:16px 0}.gv-site .article-offer>p:not(.eyebrow):not(.fine){font-size:17px;line-height:1.6;max-width:700px}.gv-site .article-offer .eyebrow{display:flex;align-items:center;gap:10px;color:#53566b}.gv-site .article-offer-points{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.gv-site .article-offer-points>span{padding:6px 10px;border:1px solid #cbc8df;border-radius:10px;font-size:14px;background:#ffffff50}.gv-site .article-offer .fine{color:#53566b;font-size:14px}.gv-site .article-offer .btn{min-height:48px;font-size:15px;padding:12px 20px}.gv-site .article-offer .text-btn{color:#353a68}.gv-site .article-service-offer :is(h2,h3,p){color:inherit}
@media(max-width:700px){.gv-site .article-title-panel h1{font-size:28px;line-height:1.2}.gv-site .article-title-panel{padding:20px}.gv-site .article-offer{padding:24px}.gv-site .article-offer h2{font-size:26px}.gv-site .article-offer-points{gap:6px}.gv-site .article-offer-actions{align-items:flex-start}.gv-site .article-offer-actions .btn{width:auto;max-width:100%}.gv-site .article-toc{padding:12px 16px}.gv-site .article-toc a{padding-right:4px}}

.gv-site a.image-type-badge:hover,.gv-site a.image-type-badge:focus-visible,.gv-site a.venue-type-badge:hover,.gv-site a.venue-type-badge:focus-visible{background:var(--gv-memorial);color:var(--gv-memorial-ink);box-shadow:inset 0 0 0 1px var(--gv-memorial-ink)}

/* Keep menu actions aligned regardless of description length. */
.request-menu-option{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line)}
.request-menu-option-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-top:auto;padding-top:20px}
.request-menu-option-actions .btn{margin-top:0;min-height:48px}
.request-menu-option-actions .text-btn{min-height:32px;text-align:left}
.gv-site .memorial-venue-media{position:relative;overflow:hidden}
.gv-site .memorial-venue-media>.image-type-badge{top:auto;bottom:12px;left:12px;transform:none}

.request-menu-field{flex:1;min-width:0;font-size:14px}.request-menu-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;margin-top:4px;padding:10px 14px;text-align:left;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);font:inherit;font-size:15px}.request-menu-trigger:hover{background:var(--raised)}.request-menu-reset{margin-bottom:20px}
/* Keep the label above the overlapping title panel. */
.gv-site .venue-hero-media>.image-type-badge{bottom:76px;top:auto}
@media(max-width:700px){.request-menu-field{flex-basis:100%}.gv-site .venue-hero-media>.image-type-badge{bottom:76px}}

/* Request context scrolls with fields, leaving room for input at short heights. */
.gv-site .request-dialog .gv-request-body>.gv-request-note{font-size:12px;line-height:18px;margin:0 0 12px}
.gv-site .request-dialog .gv-request-body>#requestContext{margin:0 0 12px}
@media(max-height:500px){.gv-site .site-header{position:relative!important;top:auto!important}}
@media(max-height:420px){
 .gv-site .request-dialog[open]{display:block!important;overflow-y:auto!important;height:auto!important;max-height:100dvh!important;padding:12px!important}
 .gv-site .request-dialog [data-request-form]:not([hidden]),.gv-site .request-dialog .wpcf7:not([hidden]),.gv-site .request-dialog form{display:block!important;overflow:visible!important;height:auto!important;max-height:none!important}
 .gv-site .request-dialog .gv-request-body{display:block;overflow:visible!important;max-height:none!important;min-height:96px;flex:none}
 .gv-site .request-dialog .gv-request-footer{position:static!important}
}

/* Mobile review supplied on 19 October: compact, consistent controls. */
@media(max-width:1000px){
 body.gv-site .side-navigation{overflow:hidden;gap:12px;padding:20px;height:100dvh}
 .gv-site .side-brand,.gv-site .side-caption,.gv-site .side-bottom{flex:none}
 .gv-site .side-caption{margin:0;font-size:12px;line-height:18px}
 .gv-site .side-navigation #mainNav{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;gap:4px;padding:4px 0;scrollbar-width:thin}
 .gv-site .side-navigation #mainNav>a,.gv-site .side-navigation .side-catalog{min-height:44px;padding:10px 12px;font-size:16px;line-height:24px}
 .gv-site .side-shortcuts{padding:0 12px 8px;gap:12px;flex:none}
 .gv-site .side-bottom{margin:0;padding:12px 0 max(0px,env(safe-area-inset-bottom));border-top:1px solid var(--line)}
 .gv-site .side-bottom>p{display:none}
 .gv-site .side-bottom .btn{display:flex;width:100%;height:48px;min-height:48px;padding:12px 16px;border-radius:999px;font-size:15px;line-height:20px;justify-content:center}
}
@media(max-width:700px){
 .gv-site #catalogSort{display:none!important}
 .gv-site :is(.btn,.gv-button,.compare-btn,.menu-pick){border-radius:999px;min-height:48px;font-size:14px;line-height:20px;padding:12px 16px}
 .gv-site .venue-row .row-actions>:is(.btn,.compare-btn){height:48px;min-height:48px;border-radius:999px;font-size:14px;line-height:20px;padding:12px 16px;flex:none!important}
 .gv-site .venue-row .row-actions{gap:8px;margin-top:0}
 .gv-site .row-body{gap:12px}
 .gv-site .row-body>.facts{margin:0;gap:8px;min-height:0}
 .gv-site .row-body>.price{margin:0;padding:0}
 .gv-site .row-body>.price strong{white-space:nowrap}
 .gv-site .row-body>.address{margin-bottom:0}
 .gv-site .gv-final,.gv-site .gv-inner-cta{gap:20px;padding:28px 24px}
 .gv-site .gv-final h2,.gv-site .gv-inner-cta h2{font-size:30px;line-height:34px}
 .gv-site .gv-final p{font-size:16px;line-height:24px;margin:16px 0}
 .gv-site .gv-final-actions{gap:10px;margin-top:20px}
 .gv-site .gv-final-actions>.gv-button{height:48px;min-height:48px;padding:12px 16px;font-size:14px;line-height:20px;gap:12px}
 .gv-site .gv-final-symbol{width:72px;height:72px;align-self:flex-start}
 .gv-site .gv-final-symbol img{width:100%;height:100%;object-fit:contain}
 .gv-site .choice-toast{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;gap:8px;align-items:center;padding:12px;left:12px;right:12px}
 .gv-site .choice-toast>strong{min-width:0;font-size:13px;line-height:18px;overflow-wrap:anywhere}
 .gv-site .choice-toast>[data-next-menu-venue]{height:44px;min-height:44px;padding:10px 12px;font-size:13px;line-height:20px;white-space:nowrap;flex:none}
 .gv-site .choice-toast>.round-btn{width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border-radius:50%}
 .gv-site .mobile-quote:not([hidden]){gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom))}
 .gv-site .mobile-quote .btn{height:44px;min-height:44px;padding:10px 16px;border-radius:999px;font-size:14px;line-height:20px;display:flex;align-items:center;justify-content:center}
 .gv-site .mobile-quote .btn>strong{display:none}
 .gv-site .mobile-quote .btn>span{font-size:14px;line-height:20px}
 .gv-site .menu-dialog[open]{display:flex;flex-direction:column;overflow:hidden;padding:20px;width:calc(100vw - 24px);max-height:calc(100dvh - 24px);margin:auto;border-radius:24px}
 .gv-site .menu-dialog>.dialog-top{flex:none;margin-bottom:16px}
 .gv-site .menu-dialog #contentDialogBody{display:flex;flex-direction:column;min-height:0;overflow:hidden;flex:1}
 .gv-site .menu-dialog .menu-popup-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:6px;scrollbar-width:thin}
 .gv-site .menu-dialog .menu-popup-intro{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch;margin-bottom:20px}
 .gv-site .menu-dialog .menu-popup-photo,.gv-site .menu-dialog .menu-detail-header{height:112px;min-height:112px;border-radius:16px;margin:0}
 .gv-site .menu-dialog .menu-detail-header{padding:12px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;flex-wrap:nowrap;gap:2px;font-size:13px;line-height:18px}
 .gv-site .menu-dialog .menu-detail-header strong{font-size:22px;line-height:28px;white-space:nowrap}
 .gv-site .menu-dialog .menu-detail-header p{font-size:12px;line-height:16px;margin:4px 0 0;flex:none}
 .gv-site .menu-dialog .menu-popup-footer{position:static;flex:none;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin:0;border-top:1px solid var(--line);padding:12px 0 0!important;align-items:center}
 .gv-site .menu-dialog .menu-popup-footer strong{font-size:20px;line-height:26px;white-space:nowrap}
 .gv-site .menu-dialog .menu-popup-footer>div>span{font-size:11px;line-height:16px;margin-top:2px}
 .gv-site .menu-dialog .menu-popup-footer .btn{height:44px;min-height:44px;padding:10px 14px;font-size:14px;line-height:20px;white-space:nowrap}
 .gv-site .service-page .service-card-grid{display:flex;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;gap:12px;padding:0 0 12px;max-width:100%;scrollbar-width:thin;scrollbar-color:var(--accent) transparent}
 .gv-site .service-page .service-card-grid>.service-value-card{flex:0 0 calc(100% - 24px);scroll-snap-align:start;padding:20px;gap:12px}
 .gv-site .service-page .service-value-card h3{font-size:20px;line-height:26px}
 .gv-site .service-page .service-value-card p{font-size:16px;line-height:24px}
 .gv-site .service-page .service-actions{gap:10px;margin:20px 0}
 .gv-site .service-page .btn{height:48px;min-height:48px;min-width:0;gap:8px;font-size:14px;line-height:20px;padding:12px 16px;white-space:nowrap;border-radius:999px}
 .gv-site .service-page .btn>.gv-icon{width:20px;height:20px;flex:0 0 20px}
 .gv-site .service-page .service-section{padding-top:32px;padding-bottom:32px}
 .gv-site .service-page .service-section-head{margin-bottom:20px}
 .gv-site .service-page .service-section h2{font-size:28px;line-height:34px;margin-bottom:20px}
}
@media(max-width:360px){.gv-site .service-page .btn{font-size:13px;padding:12px}.gv-site .menu-dialog{padding:16px}.gv-site .menu-dialog .menu-detail-header strong{font-size:20px}}

@media(max-width:700px){
 .gv-site .service-page .service-card-grid{scrollbar-color:#b6b8ee transparent}
 .gv-site .service-card-grid::-webkit-scrollbar{height:6px}
 .gv-site .service-card-grid::-webkit-scrollbar-thumb{background:#b6b8ee;border-radius:999px}
 .gv-site .service-card-grid::-webkit-scrollbar-button{display:none}
 .gv-site .menu-slider>.menu-card{min-height:0}
 .gv-site .menu-slider>.menu-card>h3,.gv-site .menu-slider>.menu-card>.menu-summary{min-height:0}
}

/* Approved comparison: shared parameter rows, four desktop columns and a mobile pair. */
.gv-site #contentDialog.comparison-dialog{background:#f5f3ed;padding:32px;max-width:1280px}
.gv-site #contentDialog.comparison-dialog>.dialog-top{background:#f5f3ed}
.gv-site #contentDialog.comparison-dialog>.dialog-top h2{font-size:40px;line-height:44px;letter-spacing:-1.2px}
.gv-site #contentDialog.comparison-dialog>#contentDialogBody{display:block;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.gv-site .cmp-v3{color:#1d2943;padding-right:4px}
.gv-site .cmp-v3 p,.gv-site .cmp-v3 h3{margin:0}
.gv-site .cmp-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 28px}
.gv-site .cmp-top p{font-size:17px;color:#606176}
.gv-site .cmp-v3 .btn{min-height:50px;padding:12px 20px;gap:16px;font-size:16px;line-height:22px;width:auto;max-width:100%;border-radius:999px}
.gv-site .cmp-v3 .btn img{width:24px;height:24px;flex-shrink:0;margin:0}
.gv-site .cmp-modes{display:flex;gap:4px;padding:4px;background:#e8e6f5;border-radius:16px;max-width:390px;margin-bottom:20px}
.gv-site .cmp-modes button{flex:1;min-height:44px;padding:12px 16px;border:0;border-radius:12px;background:transparent;color:inherit;font:500 15px/22px Onest,sans-serif;cursor:pointer}
.gv-site .cmp-modes button[aria-pressed=true]{background:white;box-shadow:0 1px 4px #1d294315}
.gv-site .cmp-shell{padding:24px;border:1px solid #d8d7e3;border-radius:28px;background:white}
.gv-site .cmp-grid{display:grid;grid-template-columns:repeat(var(--cmp-cols),minmax(0,1fr));gap:24px}
.gv-site .cmp-grid>*{min-width:0}
.gv-site .cmp-place{background:#e8e6f5;border-radius:20px;overflow:hidden;display:flex;flex-direction:column}
.gv-site .cmp-place:nth-child(even){background:#e8ede6}
.gv-site .cmp-place>a,.gv-site .cmp-place picture{display:block;width:100%}
.gv-site .cmp-photo{display:block;width:100%;height:145px;object-fit:cover;border-radius:12px}
.gv-site .cmp-place-body{padding:16px;display:flex;flex-direction:column;gap:10px;flex:1}
.gv-site .cmp-place h3{font-size:20px;line-height:25px;font-weight:600;overflow-wrap:anywhere}
.gv-site .cmp-place h3 a{color:inherit;text-decoration:none}
.gv-site .cmp-place-body>p{font-size:14px;line-height:21px;color:#606176;margin-top:auto}
.gv-site .cmp-tools{display:flex;align-items:center;justify-content:space-between;gap:8px}
.gv-site .cmp-tools button,.gv-site .cmp-cross{border:0;background:transparent;color:inherit;cursor:pointer;min-height:44px;font:500 14px/21px Onest,sans-serif;padding:4px 0;text-decoration:underline}
.gv-site .cmp-tools .cmp-cross,.gv-site .cmp-cross{width:36px;min-width:36px;font-size:26px;text-decoration:none}
.gv-site .cmp-row{padding:20px 0;border-bottom:1px solid #d8d7e3}
.gv-site .cmp-row>h3{font-size:14px;line-height:21px;font-weight:400;color:#606176;margin-bottom:10px}
.gv-site .cmp-value{font-size:18px;font-weight:500;line-height:26px;overflow-wrap:anywhere}
.gv-site .cmp-value strong{font-weight:600}
.gv-site .cmp-value small,.gv-site .cmp-common-value small{display:block;font-size:13px;line-height:21px;font-weight:400;color:#606176;margin-top:6px}
.gv-site .cmp-common-value{padding:12px 16px;border-radius:12px;background:#f5f3ed;font-size:17px;line-height:25px}
.gv-site .cmp-same-tag{display:block;font-size:12px;line-height:18px;font-weight:400;color:#606176;margin-top:6px}
.gv-site .cmp-hall+.cmp-hall,.gv-site .cmp-metro+.cmp-metro{margin-top:12px}
.gv-site .cmp-hall>span{display:block;font-size:13px;line-height:20px;color:#606176;font-weight:400}
.gv-site .cmp-common-toggle{padding:18px 4px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:0;background:transparent;width:100%;text-align:left;color:#353a68;font:500 15px/22px Onest,sans-serif;cursor:pointer}
.gv-site .cmp-same-panel{padding:16px;background:#f5f3ed;border-radius:16px;margin:0 0 20px}
.gv-site .cmp-same-panel .cmp-row{border:0;padding:10px 0}
.gv-site .cmp-same-panel .cmp-common-value{padding:0}
.gv-site .cmp-foot{padding-top:24px}
.gv-site .cmp-foot .btn{width:100%}
.gv-site .cmp-note{font-size:13px;line-height:20px;color:#606176;margin-top:16px!important}
.gv-site .cmp-help{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px;background:#e8e6f5;border-radius:24px;margin-top:24px}
.gv-site .cmp-help>p{font-size:20px;font-weight:600}
.gv-site .cmp-context{font-size:14px;line-height:21px;color:#606176;margin-bottom:16px!important}
.gv-site .cmp-picker{padding:16px;background:white;border:1px solid #d8d7e3;border-radius:16px;box-shadow:0 8px 32px #1d29431a;margin-bottom:20px;max-width:580px}
.gv-site .cmp-picker>div{display:flex;align-items:center;justify-content:space-between;gap:12px}
.gv-site .cmp-picker h3{font-size:16px;line-height:24px}
.gv-site .cmp-picker>button{display:flex;justify-content:space-between;gap:16px;width:100%;border:0;border-bottom:1px solid #d8d7e3;background:transparent;padding:14px 8px;font:500 15px/22px Onest,sans-serif;color:inherit;text-align:left;cursor:pointer}
.gv-site .cmp-picker>button span{font-size:12px;font-weight:400}
.gv-site .cmp-picker>button:disabled{color:#898997;cursor:default}
.gv-site .cmp-empty{padding:32px 24px;text-align:center;background:#e8ede6;border-radius:20px;margin-top:20px}
.gv-site .cmp-empty h3{font-size:24px;line-height:30px}
.gv-site .cmp-empty p{margin:12px 0 20px}
@media(max-width:1000px){.gv-site .cmp-photo{height:160px}}
@media(max-width:700px){
 .gv-site #contentDialog.comparison-dialog{padding:16px}
 .gv-site #contentDialog.comparison-dialog>.dialog-top h2{font-size:30px;line-height:34px}
 .gv-site .cmp-top{display:block;margin-bottom:20px}
 .gv-site .cmp-top .btn{margin-top:16px;font-size:14px;min-height:44px;padding:10px 16px}
 .gv-site .cmp-modes{max-width:none;width:100%}
 .gv-site .cmp-modes button{padding:10px 8px;font-size:14px}
 .gv-site .cmp-shell{padding:12px;border-radius:24px}
 .gv-site .cmp-grid{gap:12px}
 .gv-site .cmp-photo{height:105px}
 .gv-site .cmp-place-body{padding:12px;gap:8px}
 .gv-site .cmp-place h3{font-size:18px;line-height:23px}
 .gv-site .cmp-place-body>p{font-size:12px;line-height:18px}
 .gv-site .cmp-tools button{font-size:12px}
 .gv-site .cmp-tools .cmp-cross{font-size:24px;min-width:28px;width:28px}
 .gv-site .cmp-row{padding:16px 4px}
 .gv-site .cmp-row>h3{font-size:13px;margin-bottom:8px}
 .gv-site .cmp-value{font-size:16px;line-height:24px}
 .gv-site .cmp-common-value{padding:12px;font-size:16px}
 .gv-site .cmp-foot .btn{font-size:14px;gap:8px;padding:12px 8px;min-height:44px}
 .gv-site .cmp-help{padding:20px;align-items:stretch;flex-direction:column;gap:16px}
 .gv-site .cmp-help .btn{align-self:flex-start;font-size:14px}
 .gv-site .cmp-empty{padding:24px 16px}
}

/* Lifecycle continues the existing site instruction. */
.guide-journey-visual{padding:28px;border-radius:24px;background:#e8ede6;color:#344a42;min-width:0}
.guide-journey-reminders{background:#e8e6f5;color:#1d2943}
.guide-journey-review{background:#1d2943;color:white}
.guide-journey-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#ffffff70;margin-bottom:20px}
.guide-journey-icon .gv-icon,.guide-journey-icon img{width:28px;height:28px}
.guide-journey-review .guide-journey-icon{background:white}
.gv-site .guide-journey-visual h3{font-size:25px;line-height:31px;color:inherit;margin:0 0 20px}
.guide-journey-visual p,.guide-journey-visual .eyebrow{color:inherit}
.guide-journey-visual ul{padding-left:20px;margin:0 0 20px}
.guide-journey-visual li{font-size:16px;line-height:25px;margin-bottom:8px;padding-left:0}
.guide-journey-visual .guide-visual-foot{font-size:13px;line-height:21px;margin:20px 0 0;padding-top:16px;border-top:1px solid currentColor}
.guide-reminder-timeline{list-style:none;margin:0!important;padding:0 0 0 16px!important;border-left:2px solid #b6b8ee}
.guide-reminder-timeline li{padding-left:0!important;margin:0 0 24px!important}
.guide-reminder-timeline li:last-child{margin-bottom:0!important}
.guide-reminder-timeline span,.guide-reminder-timeline strong{display:block}
.guide-reminder-timeline span{font-size:13px;line-height:20px;margin-bottom:4px}
.guide-reminder-timeline strong{font-size:18px;line-height:25px}
.guide-reminder-timeline p{font-size:14px;line-height:22px;margin:6px 0 0}
.guide-visual-stars{display:block;color:#e4edb8;font-size:clamp(24px,3vw,36px);letter-spacing:2px;white-space:nowrap;margin-bottom:16px}

@media(max-width:1000px){.guide-main .guide-step-final:has(.guide-journey-visual){grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){.guide-journey-visual{padding:24px}.guide-visual-stars{font-size:28px;letter-spacing:1px}}
.guide-page #guide-confirmation,.guide-page #guide-invitation,.guide-page #guide-reminders,.guide-page #guide-review{scroll-margin-top:calc(var(--gv-header-height,104px) + 24px)}

/* Approved service selector · 23.10.2026 */
.venue-formats{margin:0 0 24px;padding:0;max-width:650px}.venue-formats>p{font:500 14px/22px Onest,sans-serif;color:#606176;margin:0 0 10px}.venue-format-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:6px;background:#fff;border:1px solid #d8d7e3;border-radius:20px}.venue-format{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:64px;padding:8px 12px;border:0;border-radius:14px;background:transparent;color:#606176;text-decoration:none;opacity:1;font-family:Onest,sans-serif}.venue-format.active{background:#1d2943;color:white}.format-name{font-size:16px;font-weight:500;line-height:22px;white-space:nowrap}.format-state{font-size:11px;font-weight:400;line-height:16px;display:flex;align-items:center;gap:4px;color:#73758a}.selected-state{color:#e8e6f5}.venue-format:disabled{cursor:default;background:#f5f3ed;color:#606176}.venue-format-tabs button:disabled{opacity:1}.format-state svg{flex:0 0 16px}.venue-format:focus-visible{outline:2px solid #353a68;outline-offset:2px}.venue-title h1{font-size:clamp(30px,3.5vw,46px)!important;line-height:1.08!important}.venue-hero{margin-bottom:24px!important}.venue-hero+.section-nav{margin-top:20px!important}@media(max-width:700px){.venue-formats{margin-bottom:20px}.venue-formats>p{font-size:13px;line-height:20px}.venue-format-tabs{padding:4px;gap:4px;border-radius:18px}.venue-format{padding:8px 4px;min-height:64px;border-radius:13px}.format-name{font-size:13px;line-height:20px}.format-state{font-size:10px;line-height:15px}.venue-title h1{font-size:30px!important;line-height:34px!important}}

/* Real page and request counts · 23.10.2026 */
.sa-page-stats{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;margin:14px 0 18px;color:#606176;font-size:14px;line-height:22px;font-weight:400}.sa-page-stat{display:inline-flex;gap:6px;align-items:center;white-space:nowrap}.sa-page-stat svg{width:18px;height:18px;flex:0 0 18px}.article-title-panel .sa-page-stats{margin:12px 0 0}.article-title-panel:has(.sa-page-stats){padding-bottom:24px}@media(max-width:700px){.sa-page-stats{font-size:13px;gap:8px 16px;margin:12px 0 16px}.article-title-panel .sa-page-stats{margin-bottom:0}}

/* Article reading grid: no empty track between body and sidebar. */
.gv-site .article-content-layout{width:100%;max-width:1600px;margin-left:auto;margin-right:auto}.gv-site .article-content-layout>.page-body{width:100%;max-width:none;min-width:0}.gv-site .article-hero .article-main-image{display:block;aspect-ratio:16/9;position:relative}.gv-site .article-hero .article-main-image picture,.gv-site .article-hero .article-main-image img{display:block;width:100%;height:100%;max-height:none;object-fit:cover}.gv-site .memorial-article-hero .article-title-panel{background:#fff;border:1px solid var(--line);margin:-32px 20px 0;padding:24px}.gv-site .article-hero .article-title-panel{margin-top:-32px}.gv-site .article-main-image .badge{position:absolute;top:12px;left:12px;bottom:auto;background:#fffffff0;color:#53566b;border-radius:8px;padding:4px 8px;font-size:11px}@media(min-width:1101px){.gv-site .article-content-layout{grid-template-columns:minmax(0,1fr) 340px;gap:32px}}@media(max-width:1100px){.gv-site .article-content-layout{grid-template-columns:minmax(0,1fr);gap:24px}}@media(max-width:700px){.gv-site .memorial-article-hero .article-title-panel,.gv-site .article-hero .article-title-panel{margin:-20px 10px 0;padding:20px}}
.cmp-pair-selectors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 18px}.cmp-pair-selectors label{min-width:0;font-size:12px;color:#606176}.cmp-pair-selectors select{display:block;width:100%;min-width:0;min-height:44px;margin-top:6px;padding:9px 24px 9px 10px;border:1px solid #d8d7e3;border-radius:12px;background:#fff;color:#1d2943;font:inherit;font-size:13px;white-space:nowrap;text-overflow:ellipsis}.cmp-pair-selectors select:focus-visible{outline:2px solid #353a68;outline-offset:2px}

.calculator-included{grid-column:1/-1;border-top:1px solid #d8d7e3;padding-top:16px;margin-top:2px}.calculator-included>p{margin:0 0 10px;font-size:13px;color:#606176}.calculator-included dl{display:flex;flex-wrap:wrap;gap:12px 32px;margin:0}.calculator-included dl>div{display:flex;gap:16px;align-items:center}.calculator-included dt{font-size:15px;color:#1d2943}.calculator-included dd{margin:0;font-size:17px;font-weight:700;color:#355044}@media(max-width:700px){.calculator-included{padding-top:14px}.calculator-included dl{display:grid;gap:8px}.calculator-included dl>div{justify-content:space-between}}

.gv-site .article-hero .article-title-panel,.gv-site .memorial-article-hero .article-title-panel{margin-left:0;margin-right:0}.occasion-category-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0 20px;font-size:14px;line-height:20px}.occasion-category-links>span{color:#606176;margin-right:4px}.occasion-category-links>a{padding:8px 12px;border-radius:10px;background:#e8e6f5;color:#353a68;text-decoration:none}.occasion-category-links>a[aria-current]{background:#1d2943;color:#fff}.occasion-category-links>a:focus-visible{outline:2px solid #353a68;outline-offset:2px}

/* Article cover and title form a single aligned card, without overlap. */
.gv-site .article-hero{border-radius:24px;overflow:hidden}.gv-site .article-hero .article-main-image{height:clamp(240px,25vw,380px);max-height:380px;aspect-ratio:auto;border-radius:24px 24px 0 0}.gv-site .article-hero .article-title-panel,.gv-site .memorial-article-hero .article-title-panel{margin:0;border-radius:0 0 24px 24px;position:relative;z-index:2}.gv-portion-preview{margin:20px 0}.gv-portion-total{font-size:18px;line-height:1.5;margin:0 0 14px}.gv-portion-groups{display:grid;gap:8px;margin:0;font-size:15px}.gv-portion-groups>div{display:flex;justify-content:space-between;gap:16px}.gv-portion-groups dd{margin:0;white-space:nowrap;color:#d8d7e3}.gv-portion-details{margin-top:16px;border-top:1px solid #ffffff30;padding-top:12px}.gv-portion-details summary{cursor:pointer;font-size:15px;font-weight:600}.gv-portion-details h3{font-size:15px!important;line-height:1.4!important;margin:16px 0 8px!important;color:inherit}.gv-portion-details ul{list-style:none;padding:0;margin:0;font-size:14px}.gv-portion-details li{display:flex;justify-content:space-between;gap:12px;margin:8px 0}.gv-portion-details li strong{white-space:nowrap;font-weight:500}.gv-example-table{margin:16px auto 0;max-width:380px;width:100%}.gv-example-table svg{display:block;width:100%;height:auto}.gv-example-table>p{text-align:center;margin:0 0 8px}@media(max-width:700px){.gv-site .article-hero .article-main-image{height:auto;aspect-ratio:16/9;max-height:none}.gv-portion-groups{font-size:14px}.gv-example-table{max-width:320px}}

/* Article hero follows venue cards: rounded image and an inset white title card. */
.gv-site .article-hero{overflow:visible;border-radius:0}.gv-site .article-hero .article-main-image{border-radius:24px;overflow:hidden}.gv-site .article-hero .article-title-panel,.gv-site .memorial-article-hero .article-title-panel{margin:-32px 20px 0;padding:24px;border-radius:24px;background:#fff;position:relative;z-index:2}@media(max-width:700px){.gv-site .article-hero .article-title-panel,.gv-site .memorial-article-hero .article-title-panel{margin:-20px 10px 0;padding:20px;border-radius:24px}}

/* Article title follows the venue title geometry, including intrinsic width. */
.gv-site .article-hero .article-title-panel,.gv-site .memorial-article-hero .article-title-panel{width:auto;max-width:none;margin:-45px 24px 0;padding:25px;border-radius:24px}
.gv-site .article-title-panel h1{font-size:clamp(30px,3.5vw,46px);line-height:1.08;margin:0 0 18px}
@media(max-width:700px){.gv-site .article-hero .article-title-panel,.gv-site .memorial-article-hero .article-title-panel{margin:-24px 12px 0;padding:20px}.gv-site .article-title-panel h1{font-size:30px;line-height:34px}}

.map-controls.map-zoom-slider{display:flex;flex-direction:column;align-items:center;gap:0;width:48px;padding:6px 2px;background:#fff;border:1px solid #d8d7e3;border-radius:28px;box-shadow:0 3px 12px #1d294320;touch-action:none}
.map-zoom-slider>span{display:grid;place-items:center;height:28px;line-height:1;font-size:23px;color:#1d2943;pointer-events:none}
.map-controls.map-zoom-slider input{writing-mode:vertical-lr;direction:rtl;appearance:auto;accent-color:#353a68;width:40px;height:140px;min-height:0;margin:2px 0;padding:0;border:0;background:transparent;cursor:ns-resize;touch-action:none;box-shadow:none}
.map-zoom-slider input:focus-visible{outline:2px solid #353a68;outline-offset:2px;border-radius:12px}
@media(max-width:700px){.map-controls.map-zoom-slider{right:12px;top:12px}.map-controls.map-zoom-slider input{height:112px}}

.gv-site .article-content-layout>.article-service-offer{margin-top:0}.article-back-link{margin:24px 0}.gv-site .article-content-layout{margin-top:0}
@media(min-width:1101px){.gv-site .article-hero .article-main-image{height:var(--article-cover-height,380px);max-height:none}}

.gv-site .catalog-section.is-empty.has-map-area .map-panel{display:block}.gv-site .catalog-section.is-empty.has-map-area .catalog-workspace{display:grid}
@media(max-width:900px){.gv-site .catalog-section.is-empty.has-map-area .catalog-workspace{display:flex;flex-direction:column}}

.article-card-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;margin-top:auto}.article-card-meta .article-view-count{font-size:14px;color:#606176;margin-left:auto;line-height:22px;white-space:nowrap}

.map-zoom-slider>button{display:grid;place-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:50%;background:#fff;color:#1d2943;font-size:25px;line-height:1;cursor:pointer}.map-zoom-slider>button:hover{background:#e8e6f5}.map-zoom-slider>button:focus-visible{outline:2px solid #353a68;outline-offset:-3px}

.menu-card.is-recommended,.request-menu-option.is-recommended{border-color:#626792;box-shadow:inset 0 0 0 1px #626792}.menu-recommendation{display:inline-flex;align-self:flex-start;padding:6px 10px;border-radius:9px;background:#e7eee6;color:#304d42;font-size:12px!important;line-height:18px;font-weight:600;margin:12px 0}.menu-card>.menu-recommendation{margin:16px 24px 0}.menu-photo,.menu-popup-photo{position:relative}.menu-illustration-label{position:absolute;top:10px;left:10px;z-index:1;background:#fffffff0;border-radius:7px;padding:4px 8px;font-size:11px;line-height:16px;color:#53566b}.request-menu-image{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:14px;margin-bottom:16px}.request-menu-option .menu-recommendation{margin:0 0 12px}
.article-downloads{display:grid;grid-template-columns:160px minmax(0,1fr);gap:24px;align-items:start;border:1px solid var(--line);border-radius:24px;background:#fff;padding:24px;margin:32px 0}.gv-site .article-downloads h2{font-size:27px;line-height:1.2;margin:8px 0 16px}.article-download-preview{display:block;text-decoration:none;color:#606176}.article-download-preview img{display:block;width:100%;height:auto;border:1px solid #d8d7e3;border-radius:8px}.article-download-preview>span{display:block;font-size:12px;line-height:18px;margin-top:8px}.article-downloads p{font-size:16px;line-height:1.6}.article-downloads .eyebrow{font-size:12px}.article-downloads .download-status{font-size:14px;color:#53566b}.article-download-actions{display:grid;gap:12px;margin:20px 0}.article-download-actions .btn{display:flex;align-items:center;justify-content:flex-start;gap:12px;white-space:normal;text-align:left;min-height:66px;padding:12px}.document-format{display:grid;place-items:center;border:1px solid #cbc8df;border-radius:7px;width:48px;height:40px;flex-shrink:0;font-size:11px;color:#353a68}.article-download-actions small{display:block;font-size:12px;font-weight:400;color:#606176}.article-downloads .fine{font-size:12px;line-height:1.5}@media(max-width:700px){.article-downloads{grid-template-columns:minmax(0,1fr);padding:20px;gap:20px}.article-download-preview{max-width:120px}.gv-site .article-downloads h2{font-size:25px}.article-download-actions .btn{font-size:14px}}

.request-menu-photo{position:relative;margin:0 0 16px}.request-menu-photo .request-menu-image{margin-bottom:0}
@media(max-width:700px){.article-downloads{grid-template-columns:76px minmax(0,1fr);gap:12px 16px}.article-downloads>div{display:contents}.article-download-preview{grid-column:1;grid-row:1 / span 2;max-width:76px}.article-download-preview>span{font-size:10px;line-height:14px}.article-downloads .eyebrow{grid-column:2;margin:0;align-self:end;font-size:10px}.gv-site .article-downloads h2{grid-column:2;margin:0;font-size:22px;line-height:1.2}.article-downloads>div>p:not(.eyebrow){grid-column:1/-1;margin:6px 0}.article-download-actions{grid-column:1/-1;margin:6px 0;gap:8px}.article-download-actions .btn{min-height:58px;padding:10px}.article-downloads .fine{font-size:11px;line-height:16px}}

.funeral-forms{margin:32px 0;padding:28px;border:1px solid #d8d7e3;border-radius:24px;background:#fff}.funeral-forms article{padding:20px 0;border-bottom:1px solid #e8e6f4}.funeral-forms h3{font-size:22px;line-height:1.3;margin:12px 0}.funeral-forms .btn{white-space:normal}.memorial-kit ol{padding-left:22px}.memorial-kit li{margin-bottom:10px}@media(max-width:600px){.funeral-forms{padding:20px}.funeral-forms h3{font-size:20px}}

.official-form-preview{display:block;object-fit:contain;object-position:left top;width:140px;height:auto;max-height:200px;border:1px solid #d8d7e3;margin:16px 0}

.funeral-forms details{padding:20px 0;border-bottom:1px solid #e8e6f4}.funeral-forms summary{display:flex;align-items:center;gap:14px;cursor:pointer;list-style:none}.funeral-forms summary:after{content:"+";margin-left:auto;font-size:24px}.funeral-forms details[open] summary:after{content:"−"}.funeral-forms summary strong{font-size:20px;line-height:1.35}.funeral-forms details p{margin-top:18px}@media(max-width:700px){.article-downloads>div>ol,.article-downloads>div>a{grid-column:1/-1}.memorial-kit>div>a.btn{width:100%;text-align:center}.funeral-forms summary strong{font-size:17px}.funeral-forms .document-format{flex-shrink:0;min-width:48px}}
