@font-face{font-family:Inter;src:url('/assets/inter-latin-variable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--paper:#F4F3EF;--ink:#171A18;--muted:#5A625D;--rule:#D9DDD6;--dark:#111714;--light:#D9DDD6;--accent:#536244;--hero-bg:var(--paper);--hero-fg:var(--ink);--hero-muted:var(--muted);--accent-fg:#fff;--gutter:clamp(24px,4.45vw,64px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:not(:disabled),summary{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:5px}a:hover{text-decoration:underline;text-underline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}h1{font-size:clamp(64px,6.12vw,88px);line-height:1;letter-spacing:-.045em}h2{font-size:clamp(40px,3.9vw,56px);line-height:1.08;letter-spacing:-.035em}h3{font-size:28px;line-height:1.22;letter-spacing:-.018em}button:disabled{opacity:.65;cursor:default}[hidden]{display:none!important}
.skip{position:fixed;top:8px;left:8px;transform:translateY(-150%);background:white;padding:12px;z-index:20}.skip:focus{transform:none}.wrap{max-width:1440px;margin-inline:auto;padding-inline:var(--gutter)}.preview-bar{background:var(--ink);color:var(--paper);font-size:12px;line-height:1.4}.preview-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:44px;padding-block:8px}.preview-inner a{padding-block:6px}.preview-note{text-align:right;color:#D9DDD6}
.hero{background:var(--hero-bg);color:var(--hero-fg)}.hero-wrap{min-height:calc(100svh - 44px);padding-block:32px;display:flex;flex-direction:column;gap:48px}.navigation{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-weight:600;font-size:18px;line-height:24px;letter-spacing:-.3px;max-width:330px}.nav-links{display:flex;gap:24px;padding:16px 24px;background:#fff;border-radius:999px;align-items:center;font-size:14px}.dark .nav-links{background:var(--ink)}.nav-links a{padding-block:4px}.nav-action{display:flex;align-items:center;gap:16px}.language{display:flex;gap:4px;font-size:12px;letter-spacing:.02em}.language a{min-height:44px;min-width:36px;display:grid;place-items:center;border:1px solid transparent;border-radius:999px}.language [aria-current]{border-color:currentColor}.button{display:inline-flex;justify-content:center;align-items:center;gap:20px;min-height:52px;padding:14px 24px;background:var(--accent);color:var(--accent-fg);border:1px solid transparent;border-radius:999px;line-height:24px;font-size:16px;text-align:center;transition:transform .16s ease}.button:hover{text-decoration:none;transform:translateY(-2px)}.button.secondary{background:transparent;color:inherit;border-color:currentColor}.button.light{background:#fff;color:var(--ink)}.menu{display:none}
.eyebrow{font-size:12px;line-height:16px;letter-spacing:1.2px;font-weight:500;text-transform:uppercase}.hero-copy{display:flex;flex-direction:column;gap:16px;margin-top:16px}.hero-copy>.eyebrow{color:var(--hero-muted)}.hero-grid{display:grid;grid-template-columns:minmax(0,2.16fr) minmax(260px,1fr);gap:48px;align-items:end}.hero-aside{display:flex;flex-direction:column;align-items:flex-start;gap:24px}.hero-aside p{font-size:18px;line-height:28px;color:var(--hero-muted);max-width:400px}.art{width:100%;margin:auto 0 0}.art img{width:100%;height:auto}.hero-caption{display:flex;justify-content:space-between;gap:16px;align-items:center;color:var(--hero-muted)}.hero-caption a{font-size:28px;min-width:44px;min-height:44px;text-align:right}
.section{padding-block:96px;display:flex;flex-direction:column;gap:32px}.section>.eyebrow,.cards .number{color:var(--muted)}.intro h2{max-width:1100px}.services{padding-top:32px}.rule{height:1px;background:var(--rule);width:100%}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card{border-top:1px solid var(--rule);padding:24px 0;display:flex;flex-direction:column;gap:16px}.card .number{font-size:12px;letter-spacing:1.2px}.card p{color:var(--muted);max-width:370px}
.feature{background:var(--dark);color:var(--paper)}.feature .section{padding-block:64px}.feature .eyebrow,.feature p{color:var(--light)}.feature-grid{display:grid;grid-template-columns:minmax(0,440fr) minmax(0,824fr);gap:48px;align-items:center}.feature-copy{display:flex;flex-direction:column;gap:24px}.feature-picture img{width:100%;height:auto}
.reviews{padding-top:64px}.reviews-head{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:end}.reviews-head p{color:var(--muted);max-width:450px}.reviews-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.review-status{font-size:14px;color:var(--muted)}.google-panel{max-width:650px;width:100%}.google-panel:empty{display:none}gmp-place-details{display:block;width:100%;height:auto;color-scheme:light;background:white;border-radius:16px;overflow:hidden}.listing-link{text-decoration:underline;text-underline-offset:4px;font-size:14px}
.contact{background:var(--accent);color:var(--accent-fg)}.contact .section{padding-block:64px}.contact-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:48px}.contact-copy{display:flex;flex-direction:column;gap:32px}.contact-info{display:flex;flex-direction:column;gap:24px;align-items:flex-start;justify-content:end}.contact-info address{font-style:normal;max-width:350px;font-size:18px;line-height:28px}.contact-info p{font-size:14px;max-width:390px}.contact-actions{display:flex;gap:16px;flex-wrap:wrap}.contact .button{background:var(--accent-fg);color:var(--accent)}.contact .button.secondary{background:transparent;color:var(--accent-fg)}.footer{background:var(--dark);color:var(--paper)}.footer .section{padding-block:64px}.wordmark{font-size:clamp(60px,12.23vw,176px);line-height:1;letter-spacing:-.04em;font-weight:500}.footer .rule{background:var(--muted)}.footer-row{display:flex;gap:32px;justify-content:space-between;font-size:14px;color:var(--light)}.footer-row nav{display:flex;gap:24px}.footer-small{font-size:12px;color:var(--light);max-width:760px}
.collection-header{padding-block:64px;display:flex;flex-direction:column;gap:24px}.collection-header h1{max-width:1100px}.collection-header p{max-width:670px;color:var(--muted);font-size:18px}.collection-top{display:flex;justify-content:space-between;align-items:center}.collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;padding-bottom:64px}.concept-card{background:var(--card-bg);color:var(--card-fg);padding:32px;display:flex;flex-direction:column;gap:24px;min-width:0}.concept-card .concept-art{height:170px;width:100%;object-fit:contain}.concept-card h2{font-size:36px}.concept-card p{font-size:14px}.concept-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:auto}.concept-links .button{background:var(--card-accent);color:var(--card-button-fg)}.concept-links .secondary{background:transparent;color:var(--card-fg);border-color:currentColor}.collection-footer{padding-block:32px;border-top:1px solid var(--rule);font-size:14px;color:var(--muted)}
.contact .section>.eyebrow{color:var(--accent-fg)}
@media(min-width:1441px){.hero-wrap{gap:48px}.hero-copy{margin-top:32px}}
@media(max-width:1150px){.navigation{gap:16px}.nav-links{gap:16px;padding:12px 16px}.nav-action>.button{display:none}.hero-grid{grid-template-columns:1.7fr 1fr;gap:32px}.hero-wrap{gap:32px}.hero-copy{margin-top:24px}.feature-grid{gap:32px}}
@media(max-width:760px){h1{font-size:44px;line-height:48px;letter-spacing:-2px}h2{font-size:32px;line-height:36px;letter-spacing:-1px}h3{font-size:26px;line-height:32px}.preview-inner{align-items:flex-start;gap:10px}.preview-note{max-width:210px;font-size:11px}.hero-wrap{min-height:0;gap:32px;padding-block:24px 32px}.navigation{flex-wrap:wrap}.brand{max-width:220px;font-size:16px}.nav-links,.nav-action>.button{display:none}.nav-action{gap:8px;margin-left:auto}.menu{display:block;position:relative;order:3;width:100%}.menu summary{list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:44px;border-block:1px solid color-mix(in srgb,currentColor 20%,transparent);font-size:14px}.menu summary::-webkit-details-marker{display:none}.menu nav{display:flex;flex-wrap:wrap;gap:8px 24px;padding-top:16px}.menu nav a{min-height:44px;display:flex;align-items:center}.hero-copy{margin-top:0;gap:16px}.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:16px}.hero-aside{gap:24px}.hero-aside p{font-size:16px;line-height:26px}.hero-caption .eyebrow{max-width:260px;font-size:11px}.section{padding-block:48px;gap:32px}.services{padding-top:16px}.cards{grid-template-columns:1fr;gap:0}.card{padding:24px 0}.feature .section{padding-block:48px}.feature-grid,.reviews-head,.contact-grid{grid-template-columns:1fr;gap:32px}.feature-picture{width:100%}.reviews{padding-top:48px}.reviews-actions{align-items:flex-start;flex-direction:column}.google-panel{max-width:100%}.contact .section{padding-block:48px}.contact-info{gap:24px}.contact-info address{font-size:16px;line-height:26px}.contact-actions{align-items:flex-start;flex-direction:column}.footer .section{padding-block:48px}.wordmark{font-size:56px;line-height:60px;letter-spacing:-2px}.footer-row{flex-direction:column;gap:24px}.footer-row nav{gap:20px;flex-wrap:wrap}.collection-header{padding-block:40px}.collection-header p{font-size:16px}.collection-grid{grid-template-columns:1fr;gap:24px}.concept-card{padding:24px}.concept-card h2{font-size:28px}.collection-top{gap:16px;align-items:flex-start}.collection-top .language{flex-shrink:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}
/* Real Google listing photography, consistent crops, and location layouts. */
.photo-slot{width:100%;min-width:0}.hero-photo-slot{min-height:360px}.business-photo{margin:0;width:100%;min-width:0;overflow:hidden}.business-photo>img{display:block;width:100%;height:300px;object-fit:cover;background:var(--rule)}.hero-business-photo>img{height:360px}.detail-photo-slot .business-photo>img{height:320px}.business-photo figcaption{font-size:12px;line-height:18px;margin-top:10px;overflow-wrap:anywhere}.business-photo figcaption a{text-decoration:underline;text-underline-offset:3px}.business-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.phone-number{font-size:22px;font-weight:500}.hours{width:100%;max-width:390px}.hours summary{min-height:44px;cursor:pointer;display:flex;align-items:center;text-decoration:underline;text-underline-offset:4px}.hours dl{margin:12px 0 0;display:flex;flex-direction:column;gap:8px}.hours dl>div{display:flex;justify-content:space-between;gap:16px}.hours dd{margin:0}.map-wrap{display:flex;flex-direction:column;gap:16px}.business-map{height:360px;width:100%;background:var(--paper);color:var(--ink);border-radius:12px;overflow:hidden}.map-status{font-size:14px}.language a{min-width:44px}
@media(max-width:760px){.hero-photo-slot{min-height:224px}.hero-business-photo>img{height:224px}.detail-photo-slot .business-photo>img{height:250px}.business-gallery{grid-template-columns:1fr;gap:24px}.business-map{height:300px}.phone-number{font-size:20px}.hours dl>div{font-size:14px}.hours dd{white-space:nowrap}}
[hidden]{display:none!important}
.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}.review-card{border-top:1px solid var(--rule);padding:24px 0;overflow-wrap:anywhere}.review-card>a{font-weight:600}.review-rating{font-size:14px;color:var(--muted)}.review-card p{font-size:16px;line-height:1.65}.review-card summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:14px}.review-text{white-space:pre-line}@media(max-width:760px){.review-grid{grid-template-columns:1fr;gap:8px}}

.content-author{display:inline-flex;align-items:center;gap:8px;min-height:32px}.content-author img{width:32px;height:32px;object-fit:cover;border-radius:50%}.business-photo figcaption .content-author img{width:24px;height:24px}.content-source{display:block;font-size:13px!important;line-height:1.6;padding-block:12px}

/* ===== Modern polish layer (UI/UX Pro Max pass): surfaces, radius, depth, motion ===== */
:root{--radius:24px;--radius-sm:14px;--shadow-sm:0 1px 2px rgba(17,23,20,.06),0 4px 12px rgba(17,23,20,.05);--shadow-md:0 2px 4px rgba(17,23,20,.06),0 16px 40px rgba(17,23,20,.10);--surface:#fff;--line:rgba(23,26,24,.10)}
body{background:var(--paper);font-feature-settings:"cv11","ss01"}
h1,h2{font-weight:600}h1{letter-spacing:-.05em}h2{letter-spacing:-.04em}
::selection{background:var(--accent);color:var(--accent-fg)}
/* header: floating glass bar */
.preview-bar{font-size:12px;letter-spacing:.01em}
.navigation{position:sticky;top:12px;z-index:30;padding:8px 10px 8px 24px;background:color-mix(in srgb,var(--hero-bg) 78%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(16px);backdrop-filter:saturate(1.4) blur(16px);border:1px solid color-mix(in srgb,var(--hero-fg) 10%,transparent);border-radius:999px;box-shadow:var(--shadow-sm)}
.nav-links{background:transparent;padding:0;gap:4px}.dark .nav-links{background:transparent}
.nav-links a{padding:10px 16px;border-radius:999px;transition:background-color .2s ease}.nav-links a:hover{background:color-mix(in srgb,var(--hero-fg) 8%,transparent);text-decoration:none}
.brand{text-transform:capitalize;font-weight:700;letter-spacing:-.02em}
/* buttons */
.button{font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.12),0 6px 16px color-mix(in srgb,var(--accent) 35%,transparent);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
.button:hover{transform:translateY(-2px);box-shadow:0 2px 4px rgba(0,0,0,.14),0 12px 28px color-mix(in srgb,var(--accent) 45%,transparent);filter:brightness(1.05)}
.button.secondary,.contact .button.secondary{box-shadow:none}.button.secondary:hover{background:color-mix(in srgb,currentColor 10%,transparent);filter:none}
.nav-action .button{min-height:46px;padding:10px 20px}
/* hero */
.hero-wrap{gap:40px}
.hero-copy>.eyebrow{display:inline-flex;align-self:flex-start;padding:6px 14px;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--hero-fg);font-weight:600}
.dark .hero-copy>.eyebrow{background:color-mix(in srgb,var(--accent) 20%,transparent)}
.hero-photo-slot{min-height:0}.hero-business-photo>img,.art img{border-radius:var(--radius);box-shadow:var(--shadow-md)}
.hero-business-photo>img{height:clamp(300px,36vw,500px)}.art img{background:color-mix(in srgb,var(--accent) 8%,transparent)}
.hero-caption a{border:1px solid color-mix(in srgb,currentColor 25%,transparent);border-radius:50%;display:grid;place-items:center;width:44px;font-size:20px;transition:transform .2s ease}.hero-caption a:hover{transform:translateY(3px);text-decoration:none}
/* facts strip */
.facts{margin-top:-28px;position:relative;z-index:2}.facts-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:24px;align-items:center;padding:24px 32px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-md)}
.facts-grid>div{display:flex;flex-direction:column;gap:4px;min-width:0}.facts .eyebrow{color:var(--muted)}.facts p,.facts a:not(.button){font-weight:600;font-size:16px;line-height:1.4}.facts a:not(.button):hover{color:var(--accent)}
/* sections */
.section{padding-block:104px}.intro h2{font-size:clamp(34px,3.6vw,52px);max-width:980px}
.section>.eyebrow{display:flex;align-items:center;gap:12px}.section>.eyebrow::before{content:"";width:28px;height:2px;background:var(--accent);border-radius:2px}
.contact .section>.eyebrow::before,.feature .section>.eyebrow::before{background:currentColor}
.rule{background:var(--line)}
.cards{gap:24px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:32px;gap:14px;box-shadow:var(--shadow-sm);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}
.cards .number{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--ink);font-weight:700;font-size:13px;letter-spacing:0}
.card h3{font-size:24px;font-weight:600}.card p{line-height:1.6}
/* feature */
.feature{background:radial-gradient(80% 120% at 85% 0%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 60%),var(--dark);border-radius:clamp(24px,3vw,48px);margin-inline:clamp(8px,1.5vw,20px)}
.feature-picture img,.detail-photo-slot .business-photo>img{border-radius:var(--radius)}.detail-photo-slot .business-photo>img{height:clamp(260px,28vw,400px)}
.feature h2{font-size:clamp(40px,4.4vw,64px)}
/* photos */
.business-gallery{gap:24px}.business-photo>img{border-radius:var(--radius);height:340px;transition:transform .5s ease}.business-photo{border-radius:var(--radius)}.business-gallery .business-photo:hover>img{transform:scale(1.02)}
.business-gallery .business-photo{overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow-sm);background:var(--surface)}.business-gallery figcaption{padding:0 16px 14px}
/* reviews */
.review-grid{gap:20px}.review-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow-sm)}
.review-rating{color:var(--accent);filter:brightness(.8);font-weight:600}.dark .review-rating{filter:none}
gmp-place-details{border-radius:var(--radius);box-shadow:var(--shadow-md);border:1px solid var(--line)}
/* contact + footer */
.contact{background:radial-gradient(70% 140% at 100% 0%,color-mix(in srgb,#fff 18%,transparent),transparent 60%),var(--accent);border-radius:clamp(24px,3vw,48px);margin:clamp(8px,1.5vw,20px)}
.contact h2{font-size:clamp(40px,4.4vw,64px)}.contact .section{padding-block:88px}
.business-map{border-radius:var(--radius);box-shadow:var(--shadow-md)}
.contact-info{padding:28px;border-radius:var(--radius);background:color-mix(in srgb,var(--accent-fg) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent-fg) 22%,transparent)}
.contact .listing-link,.contact .hours summary{color:inherit}
.footer{background:transparent;color:var(--ink)}.footer .section{padding-block:56px}.footer .eyebrow,.footer p,.footer .footer-small,.footer-row{color:var(--muted)}.footer .wordmark{color:var(--ink);font-weight:700}.footer .rule{background:var(--line)}
.footer-row nav a:hover{color:var(--ink)}
/* collection */
.collection-header h1{font-size:clamp(48px,6.5vw,96px)}.collection-grid{gap:28px}
.concept-card{--card-bg:var(--surface);background:var(--card-bg);border:1px solid var(--line);border-radius:32px;padding:32px;box-shadow:var(--shadow-sm);transition:transform .3s ease,box-shadow .3s ease;overflow:hidden}
.concept-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}
.concept-card .concept-art{height:200px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--card-accent,var(--accent)) 10%,transparent);padding:12px}
.concept-card h2{font-size:clamp(28px,2.8vw,40px)}.concept-card p{opacity:.8}.concept-card .button{box-shadow:none}
.concept-card .listing-link{color:var(--accent);font-weight:600}
/* scroll reveal (progressive enhancement) */
@supports (animation-timeline:view()){@media(prefers-reduced-motion:no-preference){.card,.review-card,.business-gallery .business-photo,.concept-card,.facts-grid{animation:rise linear both;animation-timeline:view();animation-range:entry 0% entry 30%}@keyframes rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}}}
@media(max-width:1150px){.facts-grid{grid-template-columns:1fr 1fr}.facts-grid .button{grid-column:1/-1}.navigation{padding-left:20px}}
@media(max-width:760px){.navigation{border-radius:24px;padding:8px 16px;top:8px}.menu summary{border-block:0;border-top:1px solid var(--line)}.section{padding-block:64px}.facts{margin-top:-16px}.facts-grid{grid-template-columns:1fr;padding:20px;gap:16px}.card{padding:24px}.feature,.contact{margin-inline:8px}.contact .section{padding-block:56px}.business-photo>img{height:260px}.hero-business-photo>img{height:240px}.footer .section{padding-block:40px}.concept-card .concept-art{height:150px}}
.facts{margin-top:8px}.hero-wrap{min-height:0;padding-bottom:24px}.hero-caption{padding-block:4px}@media(max-width:760px){.facts{margin-top:0}}
.navigation{position:relative;top:0}
.intro{padding-bottom:48px}.services{padding-top:16px}@media(max-width:760px){.intro{padding-bottom:24px}}

/* ===== Round 2: glass header, framed photos, illustrated service cards, reviews, square map, real footer ===== */
::selection{background:color-mix(in srgb,var(--accent) 28%,transparent);color:inherit}
.hero{background:radial-gradient(55% 60% at 6% 0%,color-mix(in srgb,var(--accent) 24%,transparent),transparent 70%),radial-gradient(45% 55% at 97% 8%,color-mix(in srgb,var(--accent) 15%,transparent),transparent 70%),var(--hero-bg)}
.navigation{padding:8px 10px 8px 10px;background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(255,255,255,.42));border:1px solid rgba(255,255,255,.8);box-shadow:inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(23,26,24,.05),0 10px 34px rgba(23,26,24,.10);-webkit-backdrop-filter:blur(22px) saturate(1.8);backdrop-filter:blur(22px) saturate(1.8)}
.dark .navigation{background:linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.04));border-color:rgba(255,255,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 10px 34px rgba(0,0,0,.4)}
.nav-links a:hover{background:color-mix(in srgb,var(--hero-fg) 9%,transparent)}
.brand{display:inline-flex;align-items:center;gap:10px;text-transform:none;max-width:none;font-size:17px;font-weight:700}
.logo-mark{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:13px;background:var(--accent,#2766E8);color:var(--accent-fg,#fff);font-size:14px;font-weight:700;letter-spacing:-.02em;box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 4px 12px color-mix(in srgb,var(--accent,#2766E8) 40%,transparent)}
.facts-grid{background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(255,255,255,.66));border:1px solid rgba(255,255,255,.85);box-shadow:inset 0 1px 0 #fff,var(--shadow-md);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
/* framed photography */
.business-photo{--frame-bg:#fff;--frame-fg:var(--ink);background:var(--frame-bg);color:var(--frame-fg);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-md);overflow:hidden;margin:0}
.dark .hero .business-photo,.feature .business-photo{--frame-bg:#1A211D;--frame-fg:#E8EBE6;border-color:rgba(255,255,255,.12)}
.business-photo>img{width:100%;height:auto!important;aspect-ratio:4/3;object-fit:cover;border-radius:0!important;box-shadow:none!important;filter:contrast(1.07) saturate(1.14) brightness(1.03)}
.hero-business-photo>img{aspect-ratio:2.6/1}
.business-photo figcaption{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:12px 18px 14px;font-size:12px;line-height:1.4}
.business-gallery{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important}
.business-gallery .business-photo{box-shadow:var(--shadow-sm)}.business-gallery figcaption{padding:12px 18px 14px}
.art{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 26%,#fff),color-mix(in srgb,var(--accent) 6%,#fff))}
.dark .art{border-color:rgba(255,255,255,.12);background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 30%,#111714),color-mix(in srgb,var(--accent) 6%,#111714))}
.art img{border-radius:0;box-shadow:none;background:none}
/* service cards with art */
.card{padding:0!important;gap:0;overflow:hidden}
.card-body{display:flex;flex-direction:column;gap:12px;padding:28px 32px 32px}
.card-art{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-bottom:1px solid var(--line);transition:transform .5s ease}
.card:hover .card-art{transform:scale(1.04)}
/* reviews: fill the full width */
.google-panel{max-width:none;display:grid;grid-template-columns:minmax(300px,400px) minmax(0,1fr);gap:24px;align-items:start}
.google-panel>gmp-place-details{grid-column:1;grid-row:1;position:sticky;top:24px}
.google-panel>.review-grid{grid-column:2;grid-row:1;margin-top:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.review-grid .review-card:last-child:nth-child(odd){grid-column:1/-1}
.review-card{position:relative;display:flex;flex-direction:column;gap:10px;padding:28px 28px 22px;overflow:hidden}
.review-card::before{content:"\201C";position:absolute;right:22px;top:4px;font-size:88px;line-height:1;font-weight:700;color:var(--accent);opacity:.2;pointer-events:none}
.review-card>a.content-author{gap:12px;font-size:16px;align-self:flex-start}.review-card .content-author img{width:44px;height:44px}
.review-rating{display:flex;align-items:center;gap:10px;filter:none!important;color:var(--muted);font-size:13px;font-weight:500}
.review-rating .stars{color:#F5A524;font-size:17px;letter-spacing:2px}
.review-card p{font-size:15px;line-height:1.65}.review-card .content-source{margin-top:auto;padding-block:8px 0}
/* contact: copy + info left, square map right */
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);grid-template-areas:"copy map" "info map";gap:40px 72px;align-items:start}
.contact-copy{grid-area:copy}.contact-info{grid-area:info;max-width:520px;justify-content:flex-start}.map-wrap{grid-area:map}
.business-map{aspect-ratio:1/1;height:auto!important;width:100%}
/* footer */
.footer{background:var(--dark);color:#E8EBE6;border-radius:clamp(24px,3vw,48px);margin:0 clamp(8px,1.5vw,20px) clamp(8px,1.5vw,20px)}
.footer p{color:#B8C0BA}.footer-inner{padding-block:64px 32px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px}
.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.footer-brand .brand{font-size:22px;color:#fff}.footer-brand p{max-width:280px}
.footer .footer-h{font-size:12px;line-height:16px;letter-spacing:1.2px;text-transform:uppercase;font-weight:600;color:#9AA49D;margin-bottom:6px}
.footer-col{display:flex;flex-direction:column;gap:10px;align-items:flex-start;font-size:15px;color:#E8EBE6}.footer-col address{font-style:normal;line-height:1.5}
.footer-col a,.footer-col nav a{text-decoration:underline;text-decoration-color:rgba(255,255,255,.3);text-underline-offset:4px}.footer-col a:hover{text-decoration-color:currentColor}
.footer-col nav{display:flex;flex-direction:column;gap:10px}
.footer-hours{margin:0;display:flex;flex-direction:column;gap:8px;width:100%}.footer-hours div{display:flex;justify-content:space-between;gap:16px}.footer-hours dd{margin:0;color:#B8C0BA;white-space:nowrap}
.footer .footer-bottom{margin-top:48px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12)}.footer .footer-bottom p{font-size:12px;color:#9AA49D;max-width:none}
@media(max-width:1150px){.footer-grid{grid-template-columns:1fr 1fr}.google-panel{grid-template-columns:1fr}.google-panel>gmp-place-details{position:static;grid-column:1;max-width:520px}.google-panel>.review-grid{grid-column:1;grid-row:2}}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr;grid-template-areas:"copy" "info" "map"}.business-map{max-width:560px}}
@media(max-width:760px){.hero-business-photo>img{aspect-ratio:4/3}.card{padding:0!important}.card-body{padding:24px}.footer-inner{padding-block:48px 24px}.footer-grid{grid-template-columns:1fr;gap:32px}.google-panel>.review-grid{grid-template-columns:1fr}.review-card{padding:24px}.navigation{padding:8px 12px}}
.business-gallery{display:block!important;columns:3 300px;column-gap:24px}
.business-gallery .business-photo{break-inside:avoid;margin:0 0 24px;display:block}
.business-gallery .business-photo>img{aspect-ratio:auto;object-fit:contain;background:#EEF0EC}
@media(max-width:760px){.business-gallery{columns:1}}
.footer .button{background:#fff;color:#171A18;box-shadow:none}.footer .button:hover{filter:none;background:#E8EBE6}

/* ===== Round 3: steps timeline band + card links ===== */
.card-link{margin-top:auto;padding-top:8px;font-weight:600;font-size:15px;color:var(--ink);display:inline-flex;gap:8px;align-items:center;align-self:flex-start;min-height:44px}
.card-link span{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:color-mix(in srgb,var(--accent) 16%,transparent);transition:transform .2s ease,background-color .2s ease}
.card-link:hover{text-decoration:none}.card-link:hover span{transform:translateX(4px);background:var(--accent);color:var(--accent-fg)}
.card-body{flex:1}

.steps-band{margin-inline:clamp(8px,1.5vw,20px)}
.steps-panel{position:relative;overflow:hidden;border-radius:clamp(24px,3vw,48px);color:#F4F3EF;background:radial-gradient(70% 120% at 100% 0%,color-mix(in srgb,var(--accent) 38%,transparent),transparent 60%),radial-gradient(50% 80% at 0% 100%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 70%),var(--dark)}
.steps-panel .section{padding-block:88px;gap:0}
.steps-panel .eyebrow{color:#C9D0C6}.steps-panel .eyebrow::before{background:#fff}
.steps-panel h2{color:#fff;margin-top:16px}
.steps-track{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.step{display:flex;flex-direction:column;gap:8px;padding:0 32px 8px;border-left:1px solid rgba(255,255,255,.18)}.step:first-child{padding-left:0;border-left:0}
.step-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.step-num{font-size:clamp(72px,8vw,120px);line-height:1;font-weight:700;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:2px color-mix(in srgb,var(--accent) 55%,#fff)}
.step-art{flex:none;width:clamp(64px,6.4vw,92px);height:auto;color:color-mix(in srgb,var(--accent) 30%,#fff);--g:var(--accent);transition:transform .3s ease}
.step:hover .step-art{transform:translateY(-4px) rotate(-3deg)}
.step h3{font-size:26px;color:#fff}.step p{color:#B8C0BA;max-width:320px}
.steps-cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:48px}
.steps-panel .button{background:#fff;color:#171A18;box-shadow:none}.steps-panel .button:hover{filter:none;background:#E8EBE6}.steps-panel .listing-link{color:#fff;font-weight:600;font-size:15px}
@media(max-width:900px){.steps-panel .section{padding-block:56px}.steps-track{grid-template-columns:1fr;gap:32px;margin-top:32px}.step,.step:first-child{padding:24px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.18)}.step:first-child{border-top:0;padding-top:0}}
@media(prefers-reduced-motion:reduce){.step-art{transition:none}.step:hover .step-art{transform:none}}
/* ===== Round 4: clearer hero, tighter rhythm ===== */
.hero{background:radial-gradient(60% 70% at 100% 0%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 70%),var(--hero-bg)}
.hero-wrap{gap:32px;padding-bottom:40px}
.hero-main{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(32px,4vw,64px);align-items:center}
.hero-text{display:flex;flex-direction:column;align-items:flex-start;gap:24px}
.kicker{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0;font-size:clamp(18px,1.5vw,21px);font-weight:600}
.kicker-type{background:var(--accent);color:var(--accent-fg);border-radius:999px;padding:9px 22px;font-weight:700;letter-spacing:-.01em;box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 35%,transparent)}
.kicker-city{color:color-mix(in srgb,var(--hero-fg) 72%,var(--hero-bg))}
.hero h1{font-size:clamp(48px,5.6vw,84px)}
.lede{max-width:520px;font-size:clamp(18px,1.4vw,20px);line-height:1.55;color:color-mix(in srgb,var(--hero-fg) 84%,var(--hero-bg))}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}
.hero-link{font-weight:600;text-decoration:underline;text-underline-offset:5px}
.hero .photo-slot{min-height:0}.hero-main .hero-business-photo>img{aspect-ratio:5/4}
.hero-main .art{margin:0}
.nav-call .ico{width:18px;height:18px;flex:none}.nav-call{gap:10px;min-height:46px;padding:10px 20px;box-shadow:none}
.section{padding-block:80px;gap:28px}
.intro{padding-block:72px 8px}.intro h2{font-size:clamp(30px,3.2vw,46px);max-width:900px}
.services{padding-top:32px}.feature .section{padding-block:56px}.contact .section{padding-block:72px}.facts{margin-top:0}
@media(max-width:900px){.hero-main{grid-template-columns:1fr;gap:32px}.hero h1{font-size:clamp(40px,11vw,56px)}.section{padding-block:56px}.intro{padding-block:48px 8px}}

/* language switch: larger segmented control */
.language{gap:2px;padding:4px;border-radius:999px;background:color-mix(in srgb,currentColor 9%,transparent);font-size:16px;font-weight:700;letter-spacing:.02em}
.language a{min-height:44px;min-width:56px;padding-inline:6px;border:0;border-radius:999px;transition:background-color .2s ease}
.language a:hover{text-decoration:none;background:color-mix(in srgb,currentColor 12%,transparent)}
.language [aria-current]{border:0;background:var(--hero-fg,var(--ink));color:var(--hero-bg,var(--paper))}
.language [aria-current]:hover{background:var(--hero-fg,var(--ink))}

/* intro: statement + at-a-glance card */
.intro-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:clamp(32px,5vw,80px);align-items:center}
.glance{display:flex;flex-direction:column;gap:20px;padding:28px 32px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-md);border-left:4px solid var(--accent)}
.glance-rating{display:flex;align-items:center;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.glance-score{font-size:56px;line-height:1;font-weight:700;letter-spacing:-.05em}
.glance-rating .stars{color:#F5A524;font-size:20px;letter-spacing:2px}.glance-count{font-size:14px;color:var(--muted);margin-top:2px}
.glance-row{display:flex;flex-direction:column;gap:2px}.glance-row .eyebrow{color:var(--muted)}.glance-row p{font-size:22px;font-weight:600;letter-spacing:-.01em}
.glance-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600;color:var(--ink)}.glance-link span{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:color-mix(in srgb,var(--accent) 16%,transparent);transition:transform .2s ease}.glance-link:hover{text-decoration:none}.glance-link:hover span{transform:translateX(4px)}
@media(max-width:900px){.intro-grid{grid-template-columns:1fr}}

.business-gallery.static{display:grid!important;columns:auto;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px}
.business-gallery.static .business-photo{margin:0}
.business-gallery.static .business-photo>img{aspect-ratio:16/10;object-fit:cover;background:#E7E9E3}
@media(max-width:760px){.business-gallery.static{grid-template-columns:1fr!important;gap:16px}}

/* slideshow near the map */
.slideshow{margin-top:24px;padding:16px;border-radius:var(--radius);background:rgba(0,0,0,.2);border:1px solid color-mix(in srgb,var(--accent-fg) 24%,transparent);color:var(--accent-fg)}
.slideshow[hidden]{display:none}
.slides-title{font-size:12px;letter-spacing:1.2px;text-transform:uppercase;font-weight:600;margin:0 0 12px}
.slides-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:16px;outline-offset:4px}.slides-track::-webkit-scrollbar{display:none}
.slide{flex:0 0 100%;scroll-snap-align:start;margin:0;min-width:0}
.slide img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px;background:rgba(255,255,255,.12);filter:contrast(1.05) saturate(1.1)}
.slide figcaption{display:flex;flex-wrap:wrap;gap:4px 6px;padding:10px 4px 0;font-size:12px;line-height:1.4}.slide figcaption a{text-decoration:underline;text-underline-offset:3px}
.slides-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.slides-btn{flex:none;width:44px;height:44px;border-radius:50%;border:1px solid color-mix(in srgb,var(--accent-fg) 40%,transparent);background:transparent;color:inherit;font-size:20px;line-height:1;transition:background-color .2s ease,color .2s ease}
.slides-btn:hover{background:var(--accent-fg);color:var(--accent)}
.slides-dots{display:flex;gap:2px;flex-wrap:wrap;justify-content:center}
.slides-dot{width:28px;height:44px;padding:0;border:0;background:transparent;position:relative;cursor:pointer}
.slides-dot::after{content:"";position:absolute;left:50%;top:50%;width:10px;height:10px;border-radius:50%;background:color-mix(in srgb,var(--accent-fg) 45%,transparent);transform:translate(-50%,-50%);transition:transform .2s ease,background-color .2s ease}
.slides-dot[aria-current="true"]::after{background:var(--accent-fg);transform:translate(-50%,-50%) scale(1.3)}

/* contact layout: details + photos side by side, map underneath */
.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"copy copy" "info slides" "map map";gap:32px;align-items:stretch}
.contact-copy{grid-area:copy}
.contact-info{grid-area:info;max-width:none;justify-content:flex-start}
.slideshow{grid-area:slides;margin-top:0;display:flex;flex-direction:column}
.slideshow .slides-track{flex:0 0 auto}
.map-wrap{grid-area:map}
.business-map{aspect-ratio:2/1;max-height:560px;height:auto!important;width:100%;max-width:none}
@media(max-width:900px){.contact-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "info" "slides" "map"}.contact-grid>*{min-width:0}.business-map{aspect-ratio:1/1;max-height:none;max-width:none}}

/* good-to-know list in the details card */
.know{list-style:none;margin:4px 0 0;padding:20px 0 0;border-top:1px solid color-mix(in srgb,var(--accent-fg) 24%,transparent);display:flex;flex-direction:column;gap:12px;width:100%}
.know li{position:relative;padding-left:30px;font-size:16px;line-height:1.4}
.know li[hidden]{display:none}
.know li::before{content:"✓";position:absolute;left:0;top:1px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:color-mix(in srgb,var(--accent-fg) 22%,transparent);font-size:12px;font-weight:700}
.know li.is-open{font-weight:700}.know li.is-open::before{background:#2EBD6B;color:#0B2415}
.know li.is-closed::before{content:"–";background:color-mix(in srgb,var(--accent-fg) 16%,transparent)}

/* round: full border on glance card, 3-up gallery, centered photos */
.glance{border:2px solid var(--accent)}
.business-gallery.static{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.business-gallery.static .business-photo>img{aspect-ratio:4/3;object-position:50% 50%}
@media(max-width:1000px){.business-gallery.static{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){.business-gallery.static{grid-template-columns:1fr!important}}
.slide img{object-position:50% 50%}

/* hours in the white card match the footer; category is a heading above the checklist */
.glance-hours{margin:6px 0 0;display:flex;flex-direction:column;gap:8px}
.glance-hours div{display:flex;justify-content:space-between;gap:16px;font-size:17px}
.glance-hours dt{font-weight:600}.glance-hours dd{margin:0;color:var(--muted);white-space:nowrap}
.know-wrap{width:100%;padding-top:20px;border-top:1px solid color-mix(in srgb,var(--accent-fg) 24%,transparent)}
.know-title{margin:0 0 14px;font-size:18px;font-weight:700;letter-spacing:-.01em}
.know-wrap .know{margin:0;padding:0;border-top:0}

/* justified collage: every photo keeps its own shape, rows line up exactly */
.collage{display:flex;flex-direction:column;gap:16px}
.collage-row{display:flex;gap:16px;align-items:stretch}
.collage .business-photo{min-width:0;margin:0;border:0;border-radius:20px;box-shadow:var(--shadow-sm);background:#E7E9E3}
.collage .business-photo>img{display:block;width:100%;height:auto!important;aspect-ratio:var(--ar)!important;object-fit:cover;object-position:50% 50%}
@media(max-width:760px){.collage-row{flex-direction:column}.collage .business-photo{flex:none!important;width:100%}}

/* green = confirmed by the shop's Google listing; neutral dot = generic prompt */
.know li.is-yes::before,.know li.is-open::before{content:"✓";background:#2EBD6B;color:#0B2415}
.know li.is-generic::before{content:"•";background:color-mix(in srgb,var(--accent-fg) 16%,transparent);font-size:14px}

.card-art{filter:none;object-position:50% 50%}

/* header links as white pills */
.nav-links{gap:10px}
.nav-links a,.menu nav a{background:#fff;color:#171A18;border:1px solid rgba(23,26,24,.1);border-radius:999px;padding:10px 22px;font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.12);transition:background-color .2s ease,transform .2s ease}
.menu nav a{min-height:44px;padding-block:8px}
.nav-links a:hover,.menu nav a:hover{background:color-mix(in srgb,var(--accent,#2766E8) 24%,#fff);text-decoration:none;transform:translateY(-1px)}

/* ===== events / florist / boutique / rentals / bakery sites ===== */
.logo-mark.logo-img{background-size:cover;background-position:center;background-color:#000;color:transparent;box-shadow:inset 0 0 0 1.5px rgba(212,160,46,.55),0 4px 12px rgba(0,0,0,.3)}
.collection-main{display:flex;flex-direction:column;gap:8px}
.collection-group{display:flex;flex-direction:column}
.group-title{font-size:clamp(28px,3vw,40px);margin:28px 0 24px;letter-spacing:-.03em}
.concept-card .concept-photo{display:block;width:100%;height:210px;object-fit:cover;border-radius:16px;background:none;padding:0}
/* Sweet Corner Bakery: looping food-video hero */
.hero--video{position:relative;overflow:hidden;--hero-fg:#fff;--hero-muted:#FFF1EA;background:#2b1117}
.hero--video>.wrap{position:relative;z-index:2}
.hero-video{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-video .hv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.4s ease;transform:scale(1.04)}
.hero-video .hv.on{opacity:1;animation:hv-zoom 14s ease-in-out both}
@keyframes hv-zoom{from{transform:scale(1.04)}to{transform:scale(1.12)}}
.hv-shade{position:absolute;inset:0;background:linear-gradient(100deg,rgba(43,17,23,.82) 0%,rgba(43,17,23,.55) 45%,rgba(43,17,23,.2) 100%),linear-gradient(0deg,rgba(43,17,23,.55),transparent 35%)}
.hv-float{position:absolute;width:clamp(70px,9vw,150px);aspect-ratio:1;height:auto;object-fit:cover;border-radius:50%;border:4px solid #FFF1EA;opacity:.92;filter:drop-shadow(0 14px 22px rgba(0,0,0,.35));animation:hv-drift 16s ease-in-out infinite;will-change:transform}
.hv-f1{left:60%;top:30%;animation-duration:17s}.hv-f2{left:82%;top:22%;animation-duration:21s;animation-delay:-6s}.hv-f3{left:68%;top:58%;animation-duration:19s;animation-delay:-3s}
.hv-f4{left:90%;top:64%;width:clamp(50px,6vw,100px);animation-duration:24s;animation-delay:-11s}.hv-f5{left:52%;top:80%;width:clamp(50px,6vw,100px);animation-duration:22s;animation-delay:-8s}.hv-f6{left:76%;top:82%;width:clamp(44px,5vw,84px);animation-duration:26s;animation-delay:-14s}
@keyframes hv-drift{0%,100%{transform:translate(0,0) rotate(-6deg)}25%{transform:translate(18px,-26px) rotate(4deg)}50%{transform:translate(-10px,-44px) rotate(10deg)}75%{transform:translate(-22px,-18px) rotate(-2deg)}}
.hero--video .hero-text{text-shadow:0 2px 24px rgba(0,0,0,.35)}
.hero--video .hero-main{grid-template-columns:minmax(0,1fr)}.hero--video .hero-text{max-width:640px;min-height:46vh;justify-content:center}
.hero--video .hero-copy>.eyebrow,.hero--video .kicker{color:#fff}
.hero--video .button{box-shadow:0 8px 24px rgba(0,0,0,.3)}
.hero--video .navigation{background:rgba(43,17,23,.5);border-color:rgba(255,255,255,.28);color:#fff}.hero--video .brand,.hero--video .menu summary{color:#fff}.hero--video .nav-links a{color:#171A18}.hero--video .nav-call{color:#fff;border-color:rgba(255,255,255,.5)}
@media(max-width:760px){.hv-f1,.hv-f2,.hv-f3,.hv-f5{display:none}.hv-f4{left:78%;top:86%}.hv-f6{left:8%;top:90%}.hv-shade{background:linear-gradient(0deg,rgba(43,17,23,.85),rgba(43,17,23,.45))}}
@media(prefers-reduced-motion:reduce){.hero-video .hv{display:none}.hero-video{background:#2b1117}.hv-float,.hero-video .hv.on{animation:none}}
.hero--video .navigation [aria-current],.hero--video .navigation .lang-current,.hero--video .navigation .active{color:#171A18}
/* ===== Venue layout: calm editorial look (events / weddings / boutique) ===== */
.venue{--v-bg:#ECEAE3;--v-ink:#1C1A16;--v-mute:#6B665C;--v-line:rgba(28,26,22,.16);--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--script:"Great Vibes","Cormorant Garamond",cursive;background:var(--v-bg);color:var(--v-ink);--hero-bg:#1C1A16;--hero-fg:#fff;--hero-muted:#F3EEE4}
body:has(.venue){background:#ECEAE3}
.venue h2,.venue h3{font-weight:400}
.venue .section h2,.venue .intro h2,.venue .reviews h2,.venue .contact h2,.venue .feature h2{font-family:var(--serif);font-weight:400;letter-spacing:-.01em;font-size:clamp(40px,5.2vw,76px);line-height:1}
.venue .eyebrow{letter-spacing:.18em;font-size:11px;color:var(--v-mute)}
.venue .rule{background:var(--v-line)}
.venue .hero--venue{position:relative;overflow:hidden;min-height:100svh;display:flex;flex-direction:column;background:#1C1A16;color:#fff}
.venue .hero--venue>.wrap{position:relative;z-index:2;flex:1;display:flex}
.venue .hero--venue .navigation,.venue .hero--venue .menu{display:none}
.vhero-bg{position:absolute;inset:0;z-index:0}
.vhero-bg img{width:100%;height:100%;object-fit:cover;animation:vzoom 22s ease-out both}
.vhero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(18,15,10,.88),rgba(18,15,10,.45) 50%,rgba(18,15,10,.5)),rgba(18,15,10,.18)}
@keyframes vzoom{from{transform:scale(1.12)}to{transform:scale(1)}}
.venue .hero--venue .hero-wrap{min-height:0;flex:1;justify-content:flex-end;padding-block:120px 72px;gap:0}
.venue .hero--venue .hero-main{grid-template-columns:minmax(0,1fr)}
.venue .hero--venue .hero-text{max-width:900px;gap:28px;color:#fff;text-shadow:0 2px 30px rgba(0,0,0,.25)}
.venue .hero--venue h1{font-size:clamp(44px,6.6vw,108px);line-height:.94;letter-spacing:-.035em;font-weight:400}
.venue .hero--venue .hl-b{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.02em;font-size:1.08em}
.venue .hero--venue .lede{max-width:520px;font-size:clamp(16px,1.3vw,19px);color:#F3EEE4}
.venue .hero--venue .kicker,.venue .hero--venue .kicker *{color:#fff}
.venue .hero--venue .kicker-type{background:rgba(255,255,255,.14);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.venue .hero--venue .button{background:#fff;color:#1C1A16;border-color:#fff}
.venue .hero--venue .button:hover{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}
.vbar{position:fixed;top:0;left:0;right:0;z-index:70;display:flex;align-items:center;justify-content:space-between;padding:54px clamp(20px,4vw,48px) 22px;color:#fff;pointer-events:none;transition:padding .35s ease,background .35s ease}
.vbar.scrolled{padding-block:16px;background:rgba(28,26,22,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.vbar>*{pointer-events:auto}
.vbrand{font-size:22px;letter-spacing:-.01em;color:#fff;text-decoration:none}
.vbrand em{font-family:var(--serif);font-style:italic;font-size:1.25em}
.venue .facts-grid{background:var(--v-surface,#F6F4EE);border:1px solid var(--v-line);box-shadow:none;border-radius:4px}
.venue .intro h2{max-width:14ch}
.venue .glance{background:transparent;border:0;border-left:1px solid var(--v-line);border-radius:0}

/* Services showcase: always visible (no hover needed). "rows" = alternating wide frames, "arch" = tall arch frames */
.showcase{margin-top:56px;display:grid;gap:clamp(40px,5vw,72px)}
.show-card{position:relative}
.show-media-wrap{position:relative;min-width:0}
.show-media{margin:0;overflow:hidden;background:var(--v-line)}
.show-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.show-card:hover .show-media img{transform:scale(1.04)}
.show-n{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--v-mute)}
.show-body h3{font-family:var(--serif);font-size:clamp(30px,3.4vw,52px);line-height:1.04;letter-spacing:-.01em;margin:6px 0 12px}
.show-body p{color:var(--v-mute);max-width:46ch}
.show-link{display:inline-flex;align-items:center;gap:10px;margin-top:20px;font-weight:600;color:var(--v-ink);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}
.show-link::after{content:"";position:absolute;inset:0;z-index:2}
.show-link span{color:var(--accent);transition:transform .3s ease}
.show-card:hover .show-link span{transform:translateX(5px)}
.show-card:focus-within .show-media{outline:2px solid var(--accent);outline-offset:6px}
.showcase--rows .show-card{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,5vw,72px);align-items:center}
.showcase--rows .show-card:nth-child(even) .show-media-wrap{order:2}
.showcase--rows .show-media{aspect-ratio:3/2;border-radius:4px;box-shadow:0 24px 50px rgba(28,26,22,.12)}
.showcase--rows .show-body{border-top:1px solid var(--v-line);padding-top:22px}
.showcase--arch{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4.4vw,64px);align-items:start}
.showcase--arch .show-card:nth-child(2){margin-top:64px}
.showcase--arch .show-media{aspect-ratio:3/4;border-radius:999px 999px 22px 22px}
.showcase--arch .show-body{padding-top:30px;text-align:center}
.showcase--arch .show-body p{margin-inline:auto}
@media(max-width:860px){.showcase--rows .show-card{grid-template-columns:1fr;gap:22px}.showcase--rows .show-card:nth-child(even) .show-media-wrap{order:0}.showcase--arch{grid-template-columns:1fr;max-width:420px;margin-inline:auto;gap:56px}.showcase--arch .show-card:nth-child(2){margin-top:0}}

.venue .steps-band{background:transparent}
.venue .steps-panel{background:transparent!important;color:var(--v-ink)!important;border-top:1px solid var(--v-line);border-radius:0}
.venue .steps-panel h2,.venue .steps-panel .eyebrow,.venue .steps-panel .listing-link{color:var(--v-ink)}
.venue .steps-panel .eyebrow{color:var(--v-mute)}
.vtl{list-style:none;margin:48px 0 40px;padding:0;position:relative}
.vtl::before{content:"";position:absolute;left:35px;top:8px;bottom:8px;width:1px;background:var(--v-line)}
.vtl-i{display:grid;grid-template-columns:72px minmax(0,1fr);gap:24px;padding:0 0 56px;position:relative;opacity:.25;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}
.vtl-i.in{opacity:1;transform:none}
.vtl-n{width:70px;height:70px;border-radius:50%;background:var(--v-bg);border:1px solid var(--v-line);display:grid;place-items:center;font-family:var(--serif);font-style:italic;font-size:26px;position:relative;z-index:1;transition:background .6s,color .6s,border-color .6s}
.vtl-i.in .vtl-n{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}
.vtl-i h3{font-family:var(--serif);font-size:clamp(30px,3.6vw,48px);line-height:1.05;margin-bottom:8px}
.vtl-i p{max-width:52ch;color:var(--v-mute)}
.venue .steps-cta{margin-top:8px}
.venue .contact{border-radius:0}
.venue .business-photo,.venue .collage .business-photo{border-radius:3px}
.venue .feature,.venue .feature-grid{border-radius:6px}

/* Even photo grid for portrait galleries (gowns, dresses) */
.collage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,24px);padding-bottom:36px}
.collage-grid .business-photo{margin:0;aspect-ratio:4/5;overflow:hidden;position:relative}
.collage-grid .business-photo>img{position:absolute;inset:0;display:block;width:100%;height:100%!important;aspect-ratio:auto!important;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.collage-grid .business-photo:hover>img{transform:scale(1.04)}
.collage-grid .business-photo:nth-child(3n+2){transform:translateY(36px)}
@media(max-width:760px){.collage-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:24px}.collage-grid .business-photo:nth-child(3n+2){transform:none}.collage-grid .business-photo:nth-child(even){transform:translateY(24px)}}

/* ===== Princess theme (quinceañera boutique): blush, plum and gold; arches, crown and sparkle ornaments ===== */
.venue--princess{--v-bg:#FBF3F6;--v-ink:#2E1A3A;--v-mute:#6F5B7B;--v-line:rgba(176,126,140,.34);--gold:#C09A62;--gold-l:#F1D9A8;
--star:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 0c.9 7.4 4.6 11.1 12 12-7.4.9-11.1 4.6-12 12-.9-7.4-4.6-11.1-12-12C7.4 11.1 11.1 7.4 12 0z'/%3E%3C/svg%3E");
--crown:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 44' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 36 4 12l16 13L32 6l12 19 16-13-4 24z'/%3E%3Cpath d='M8 40h48'/%3E%3Ccircle cx='4' cy='9' r='2.4' fill='%23000'/%3E%3Ccircle cx='32' cy='3.5' r='2.4' fill='%23000'/%3E%3Ccircle cx='60' cy='9' r='2.4' fill='%23000'/%3E%3C/svg%3E");
background:linear-gradient(180deg,#FBF3F6 0%,#F8ECF2 36%,#F4EDF9 72%,#FBF3F6 100%)}
body:has(.venue--princess){background:#FBF3F6}
.venue--princess .star,.venue--princess .crown{display:inline-block;flex:none;background:currentColor;-webkit-mask:var(--star) center/contain no-repeat;mask:var(--star) center/contain no-repeat}
.venue--princess .crown{-webkit-mask-image:var(--crown);mask-image:var(--crown);width:44px;height:30px}
.venue--princess .star{width:12px;height:12px;animation:twinkle-s 4.5s ease-in-out infinite}
@keyframes twinkle-s{0%,100%{opacity:.55;transform:scale(.85)}50%{opacity:1;transform:scale(1.12) rotate(18deg)}}
@keyframes twinkle{0%,100%{opacity:0;transform:scale(.3) rotate(0)}50%{opacity:.9;transform:scale(1) rotate(45deg)}}
@keyframes petal{0%{transform:translate3d(0,-8vh,0) rotate(0)}50%{transform:translate3d(var(--sway),52vh,0) rotate(200deg)}100%{transform:translate3d(calc(var(--sway)*-.7),112vh,0) rotate(400deg)}}
.vhero-fx{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.spark{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);background:#fff;opacity:0;-webkit-mask:var(--star) center/contain no-repeat;mask:var(--star) center/contain no-repeat;animation:twinkle var(--d) ease-in-out infinite;animation-delay:var(--o)}
.petal{position:absolute;left:var(--x);top:-6%;width:var(--s);height:calc(var(--s)*1.3);background:linear-gradient(135deg,var(--c1,#FFE0EC),var(--c2,#F3A9C6));border-radius:75% 0 75% 0;opacity:.62;animation:petal var(--d) linear infinite;animation-delay:var(--o)}
.venue--princess .vhero-bg::after{background:linear-gradient(0deg,rgba(40,16,52,.88),rgba(64,26,82,.34) 52%,rgba(110,48,128,.28)),radial-gradient(60% 50% at 80% 10%,rgba(255,190,220,.2),transparent 70%)}
.venue--princess .hero--venue .kicker{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px}
.venue--princess .hero--venue .kicker::before{content:"";width:38px;height:26px;flex:none;background:var(--gold-l);-webkit-mask:var(--crown) center/contain no-repeat;mask:var(--crown) center/contain no-repeat}
.venue--princess .hero--venue .kicker-type{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.4)}
.venue--princess .hero--venue .hl-b{color:#FFE4EF;text-shadow:0 0 42px rgba(255,170,210,.4)}
.venue--princess .vbar.scrolled{background:rgba(43,18,56,.88)}
.venue--princess .xv{font-family:var(--script);font-weight:400;font-size:1.12em;letter-spacing:0;color:var(--accent);padding-inline:.05em;white-space:nowrap;position:relative;display:inline-block;line-height:.9}
.venue--princess .xv::after{content:"";position:absolute;right:-.26em;top:-.08em;width:.3em;height:.3em;background:var(--gold);-webkit-mask:var(--star) center/contain no-repeat;mask:var(--star) center/contain no-repeat;animation:twinkle-s 4.5s ease-in-out infinite}
.venue--princess .feature .xv,.venue--princess .contact .xv{color:#F7D7E6}
.venue--princess .rule{display:none}
.venue--princess .eyebrow::before{width:11px;height:11px;border-radius:0;background:var(--gold);-webkit-mask:var(--star) center/contain no-repeat;mask:var(--star) center/contain no-repeat;flex:none}
.venue--princess .feature .eyebrow::before,.venue--princess .contact .eyebrow::before{background:var(--gold-l)}
.venue--princess .feature .eyebrow,.venue--princess .contact .eyebrow{color:#EBD9F5}
.venue--princess .feature p{color:#F3E8F8}
.orn{display:flex;align-items:center;justify-content:center;gap:16px;width:min(1312px,calc(100% - 48px));margin:clamp(32px,5vw,64px) auto 0;color:var(--gold)}
.orn-l,.orn-r{flex:1;max-width:320px;height:1px}
.orn-l{background:linear-gradient(90deg,transparent,currentColor)}
.orn-r{background:linear-gradient(270deg,transparent,currentColor)}
.venue--princess .facts-grid{background:#fff;border:1px solid var(--v-line);border-radius:22px;box-shadow:0 18px 46px rgba(123,63,160,.10)}
.venue--princess .glance{background:#fff;border:1px solid var(--v-line);border-radius:22px;box-shadow:0 22px 50px rgba(123,63,160,.12);position:relative;overflow:hidden}
.venue--princess .glance::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.venue--princess .glance::after{content:"";position:absolute;right:18px;top:16px;width:14px;height:14px;background:var(--gold);-webkit-mask:var(--star) center/contain no-repeat;mask:var(--star) center/contain no-repeat;animation:twinkle-s 4.5s ease-in-out infinite}
.venue--princess .show-n{color:#9A7440;font-size:26px}
.venue--princess .show-link{border-bottom-color:var(--gold)}
.venue--princess .showcase--arch .show-media-wrap::before{content:"";position:absolute;inset:-12px;border:1px solid var(--gold);border-radius:999px 999px 32px 32px;opacity:.75;pointer-events:none}
.venue--princess .showcase--arch .show-media-wrap::after{content:"";position:absolute;left:50%;top:-34px;width:20px;height:20px;margin-left:-10px;background:var(--gold);-webkit-mask:var(--star) center/contain no-repeat;mask:var(--star) center/contain no-repeat;animation:twinkle-s 4.5s ease-in-out infinite}
.venue--princess .showcase--arch .show-media{box-shadow:0 26px 50px rgba(123,63,160,.16)}
.venue--princess .feature{background:radial-gradient(60% 90% at 88% 10%,rgba(255,190,222,.28),transparent 62%),radial-gradient(50% 70% at 5% 100%,rgba(196,150,255,.22),transparent 65%),linear-gradient(135deg,#3A1A4B,#5E2A78 55%,#7B3FA0);color:#fff;border-radius:34px;position:relative;overflow:hidden}
.venue--princess .feature-grid{grid-template-columns:minmax(0,1fr) minmax(0,.8fr)}
.venue--princess .feature .detail-photo-slot{max-width:420px;width:100%;margin-inline:auto;position:relative}
.venue--princess .feature .detail-photo-slot::before{content:"";position:absolute;inset:-12px;border:1px solid rgba(241,217,168,.75);border-radius:999px 999px 36px 36px;pointer-events:none}
.venue--princess .feature .business-photo{aspect-ratio:4/5;border-radius:999px 999px 24px 24px;overflow:hidden;position:relative}
.venue--princess .feature .business-photo>img{position:absolute;inset:0;height:100%!important;width:100%;aspect-ratio:auto!important;border-radius:0!important;object-fit:cover}
.venue--princess .collage .business-photo{border-radius:18px;box-shadow:0 14px 34px rgba(123,63,160,.12)}
.venue--princess .steps-panel{background:linear-gradient(135deg,rgba(255,255,255,.85),rgba(249,228,236,.7))!important;border:1px solid var(--v-line);border-radius:36px;box-shadow:0 24px 60px rgba(123,63,160,.08)}
.venue--princess .vtl::before{background:linear-gradient(180deg,var(--gold),rgba(192,154,98,.15))}
.venue--princess .vtl-n{border-color:var(--gold);color:var(--gold);background:#fff;box-shadow:0 8px 20px rgba(123,63,160,.12)}
.venue--princess .vtl-i.in .vtl-n{background:linear-gradient(135deg,var(--accent),#A867C9);color:#fff;border-color:transparent}
.venue--princess .vtl-i.in .vtl-n::after{content:"";position:absolute;right:-4px;top:-4px;width:16px;height:16px;background:var(--gold);-webkit-mask:var(--star) center/contain no-repeat;mask:var(--star) center/contain no-repeat;animation:twinkle-s 4s ease-in-out infinite}
.venue--princess .review-card{background:#fff;border:1px solid var(--v-line);border-radius:22px;box-shadow:0 14px 34px rgba(123,63,160,.07)}
.venue--princess .contact{background:radial-gradient(60% 90% at 100% 0%,rgba(255,196,224,.3),transparent 60%),radial-gradient(40% 60% at 0% 100%,rgba(200,150,255,.25),transparent 70%),linear-gradient(135deg,#43205A,#7B3FA0 58%,#9C56BE);border-radius:34px;position:relative;overflow:hidden}
.venue--princess .contact>.wrap{position:relative;z-index:1}
.venue--princess .contact::before,.venue--princess .contact::after{content:"";position:absolute;background:#fff;opacity:.09;pointer-events:none;-webkit-mask:var(--star) center/contain no-repeat;mask:var(--star) center/contain no-repeat}
.venue--princess .contact::before{width:180px;height:180px;right:5%;top:8%}
.venue--princess .contact::after{width:90px;height:90px;right:22%;bottom:10%}

@media(max-width:760px){.venue .hero--venue .hero-wrap{padding-block:120px 48px}.vbar{padding:50px 20px 16px}.vbar.scrolled{padding-block:12px}.vbrand{font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:62vw}.vtl::before{left:23px}.vtl-i{grid-template-columns:48px minmax(0,1fr);gap:16px}.vtl-n{width:46px;height:46px;font-size:20px}.spark:nth-child(n+9){display:none}.petal:nth-child(n+21){display:none}.venue--princess .feature-grid{grid-template-columns:1fr}.venue--princess .crown{width:38px;height:26px}}
@media(prefers-reduced-motion:reduce){.vhero-bg img{animation:none}.vtl-i{opacity:1;transform:none;transition:none}.show-media img{transition:none}.spark{animation:none;opacity:.55}.petal{display:none}.venue--princess .star,.venue--princess .xv::after,.venue--princess .glance::after,.venue--princess .showcase--arch .show-media-wrap::after,.venue--princess .vtl-i.in .vtl-n::after{animation:none}}

/* ===== Auto theme (auto body, window tint): condensed type, mono labels, measuring marks, gauges ===== */
.venue--auto{--serif:"Barlow Condensed","Arial Narrow","Helvetica Neue",Arial,sans-serif;--mono:"Space Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;--hi:color-mix(in srgb,var(--accent) 58%,#fff);
--v-bg:#EFEEE8;--v-ink:#16181A;--v-mute:#5C625F;--v-line:rgba(22,24,26,.16);--v-surface:#F8F7F3;
--ico-drop:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M24 5C24 5 10 21 10 31a14 14 0 0 0 28 0C38 21 24 5 24 5z'/%3E%3Cpath d='M17.500 33a6.500 6.500 0 0 0 6.500 6.500'/%3E%3C/svg%3E");
--ico-car:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 40' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 29v-5c0-2 1-3.500 3.500-4.200L26 15l9-9c1-1 2.200-1.500 3.600-1.500h22c1.600 0 3 .6 4 1.700L76 15l12 3.600c2 .6 3 2 3 4V29'/%3E%3Cpath d='M5 29h10m18 0h30m18 0h10'/%3E%3Ccircle cx='24' cy='29' r='7'/%3E%3Ccircle cx='72' cy='29' r='7'/%3E%3Cpath d='M38 6l-5 9h37l-7-9'/%3E%3C/svg%3E");
--ico-gauge:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 40' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 36A26 26 0 0 1 58 36'/%3E%3Cpath d='M32 36 46 17'/%3E%3Ccircle cx='32' cy='36' r='3' fill='%23000'/%3E%3Cpath d='M12 24l3 2M20 14l2 3M32 9v4M44 14l-2 3M52 24l-3 2' stroke-width='2.400'/%3E%3C/svg%3E")}
.motif--droplet{--orn-ico:var(--ico-drop)}
.motif--pinstripe{--orn-ico:var(--ico-car)}
.motif--gauge{--orn-ico:var(--ico-gauge)}
.venue--auto h2,.venue--auto h3{text-transform:uppercase}
.venue--auto .section h2,.venue--auto .intro h2,.venue--auto .reviews h2,.venue--auto .contact h2,.venue--auto .feature h2{font-weight:600;letter-spacing:.005em;font-size:clamp(42px,5.6vw,84px);line-height:.95}
.venue--auto .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--v-mute)}
.venue--auto .eyebrow::before{width:22px;height:2px;border-radius:0;background:var(--accent)}
.venue--auto .button{border-radius:6px;font-family:var(--serif);font-weight:600;font-size:19px;letter-spacing:.07em;text-transform:uppercase;min-height:54px}
.venue--auto .hero--venue h1{font-family:var(--serif);font-weight:700;text-transform:uppercase;letter-spacing:.005em;line-height:.88;font-size:clamp(60px,10.6vw,172px)}
.venue--auto .hero--venue .hl-b{font-weight:700;font-size:1em;letter-spacing:.005em;color:var(--hi);text-shadow:none}
.venue--auto .hero--venue .kicker,.venue--auto .hero--venue .kicker *{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.venue--auto .hero--venue .kicker-type{border-radius:3px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.1)}
.venue--auto .vhero-bg::after{background:linear-gradient(0deg,rgba(9,10,11,.86),rgba(9,10,11,.26) 48%,rgba(9,10,11,.32)),linear-gradient(90deg,rgba(9,10,11,.6),transparent 64%)}
.venue--auto .shine{position:absolute;top:-12%;bottom:-12%;left:-40%;width:24%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.2) 50%,transparent);transform:skewX(-20deg);animation:shine 11s ease-in-out 1.4s infinite;mix-blend-mode:screen}
@keyframes shine{0%,58%{left:-40%}100%{left:130%}}
.venue--auto .brk{position:absolute;width:46px;height:46px;border:0 solid var(--hi);opacity:.9}
.venue--auto .brk.tl{left:clamp(16px,3vw,40px);top:clamp(108px,13vh,140px);border-left-width:2px;border-top-width:2px}
.venue--auto .brk.br{right:clamp(16px,3vw,40px);bottom:clamp(16px,3vw,40px);border-right-width:2px;border-bottom-width:2px}
.venue--auto .htag{position:absolute;right:clamp(14px,3vw,38px);top:50%;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl;font:11px/1 var(--mono);letter-spacing:.22em;color:rgba(255,255,255,.72);text-transform:uppercase;white-space:nowrap}
.venue--auto .htach{position:absolute;right:clamp(64px,9vw,150px);bottom:clamp(64px,13vh,140px);width:clamp(110px,14vw,200px);height:auto;opacity:.95}
.htach .face{fill:rgba(9,10,11,.5);stroke:rgba(255,255,255,.35);stroke-width:2}
.htach line{stroke:rgba(255,255,255,.85);stroke-linecap:round}
.htach line.red{stroke:var(--hi)}
.htach .zone{fill:none;stroke:var(--accent);stroke-width:5;stroke-linecap:round}
.htach .needle{transform-origin:110px 110px;animation:needle 2.8s cubic-bezier(.2,.9,.25,1) .5s both}
.htach .needle line{stroke:#fff;stroke-width:3}
.htach .hub{fill:var(--accent);stroke:#fff;stroke-width:2}
@keyframes needle{0%{transform:rotate(-135deg)}62%{transform:rotate(112deg)}100%{transform:rotate(98deg)}}
.hpin{position:absolute;left:0;right:0;bottom:0;width:100%;height:30%;pointer-events:none}
.hpin path{fill:none;stroke:var(--accent);stroke-width:2.200;stroke-dasharray:1;stroke-dashoffset:1;animation:draw 2.6s cubic-bezier(.4,0,.2,1) .7s forwards}
.hpin path+path{stroke-width:1.200;animation-delay:1s;opacity:.75}
@keyframes draw{to{stroke-dashoffset:0}}
.orn--auto{color:var(--accent)}
.orn--auto .ruler{flex:1;height:16px;opacity:.75;background:linear-gradient(90deg,currentColor 1px,transparent 1px) 0 100%/60px 16px repeat-x,linear-gradient(90deg,currentColor 1px,transparent 1px) 0 100%/12px 8px repeat-x;-webkit-mask:linear-gradient(90deg,transparent,#000 22%);mask:linear-gradient(90deg,transparent,#000 22%)}
.orn--auto .ruler.r{transform:scaleX(-1)}
.orn--auto .ico{width:50px;height:32px;flex:none;background:currentColor;-webkit-mask:var(--orn-ico) center/contain no-repeat;mask:var(--orn-ico) center/contain no-repeat}
.venue--auto .show-n{font-family:var(--mono);font-size:12px;letter-spacing:.16em;font-style:normal;color:var(--accent)}
.venue--auto .show-body h3{font-weight:600;font-size:clamp(36px,4.2vw,64px);line-height:.95;letter-spacing:.005em}
.venue--auto .show-media-wrap::before,.venue--auto .show-media-wrap::after{content:"";position:absolute;width:28px;height:28px;border:0 solid var(--accent);pointer-events:none;z-index:3;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.venue--auto .show-media-wrap::before{top:-9px;left:-9px;border-left-width:2px;border-top-width:2px}
.venue--auto .show-media-wrap::after{bottom:-9px;right:-9px;border-right-width:2px;border-bottom-width:2px}
.venue--auto .show-card:hover .show-media-wrap::before{transform:translate(-5px,-5px)}
.venue--auto .show-card:hover .show-media-wrap::after{transform:translate(5px,5px)}
.venue--auto .showcase--rows .show-media,.venue--auto .showcase--cols .show-media{border-radius:2px}
.show-big{display:none}
.showcase--flip .show-card:nth-child(odd) .show-media-wrap{order:2}
.showcase--flip .show-card:nth-child(even) .show-media-wrap{order:0}
.showcase--cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,3.4vw,48px);align-items:start}
.showcase--cols .show-card:nth-child(2){margin-top:54px}
.showcase--cols .show-media{aspect-ratio:3/4}
.showcase--cols .show-big{display:block;position:absolute;right:14px;bottom:-.34em;z-index:4;font:700 clamp(84px,9.5vw,150px)/.8 var(--serif);color:transparent;-webkit-text-stroke:1.5px var(--accent);pointer-events:none}
.showcase--cols .show-body{padding-top:46px}
@media(max-width:860px){.showcase--flip .show-card:nth-child(odd) .show-media-wrap,.showcase--flip .show-card:nth-child(even) .show-media-wrap{order:0}.showcase--cols{grid-template-columns:1fr;max-width:460px;margin-inline:auto;gap:64px}.showcase--cols .show-card:nth-child(2){margin-top:0}}
@property --ring{syntax:"<angle>";inherits:false;initial-value:0deg}
.venue--auto .vtl-n{font-family:var(--mono);font-style:normal;font-size:16px;letter-spacing:.04em;border:0;background:conic-gradient(var(--accent) var(--ring),var(--v-line) 0);color:var(--v-ink);transition:--ring 1.4s cubic-bezier(.3,.7,.2,1),color .6s}
.venue--auto .vtl-n::before{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--v-bg);z-index:-1}
.venue--auto .vtl-i.in .vtl-n{--ring:360deg;background:conic-gradient(var(--accent) var(--ring),var(--v-line) 0);color:var(--v-ink);border:0}
.venue--auto .vtl-i h3{font-weight:600;font-size:clamp(32px,3.8vw,54px);line-height:.95}
.venue--auto .vtl::before{background:var(--v-line)}
.venue--auto .vtl-wrap{position:relative}
.venue--auto .vtl-wrap::after{content:"";position:absolute;left:34.500px;top:8px;width:2px;height:calc((100% - 48px)*var(--p,0));background:var(--accent);transition:height .15s linear}
.venue--auto .vbar.scrolled{background:rgba(14,16,17,.86)}
.venue--auto .feature .detail-photo-slot{position:relative}
.venue--auto .feature .detail-photo-slot::before,.venue--auto .feature .detail-photo-slot::after{content:"";position:absolute;width:30px;height:30px;border:0 solid var(--hi);pointer-events:none;z-index:2}
.venue--auto .feature .detail-photo-slot::before{top:-10px;left:-10px;border-left-width:2px;border-top-width:2px}
.venue--auto .feature .detail-photo-slot::after{bottom:-10px;right:-10px;border-right-width:2px;border-bottom-width:2px}
.venue--auto .feature{border-radius:4px}
.venue--auto .feature .eyebrow{color:#C9CDCE}
.venue--auto .collage .business-photo{border-radius:2px}
.venue--auto .contact{border-radius:4px}
.venue--auto .steps-panel .eyebrow{color:var(--v-mute)}

/* Dark mode (e.g. Inkline): remaps the shared page variables so every component follows */
.venue--dark{--paper:#0F1112;--ink:#F3F2EE;--muted:#A9ADAE;--rule:rgba(255,255,255,.14);--surface:#17191B;--line:rgba(255,255,255,.12);--light:#C9CDCE;--v-bg:#0F1112;--v-ink:#F3F2EE;--v-mute:#A9ADAE;--v-line:rgba(255,255,255,.16);--v-surface:#17191B}
body:has(.venue--dark){background:#0F1112}
.venue--dark .facts-grid{box-shadow:none}
.venue--dark .review-card{box-shadow:none}

@media(max-width:760px){.venue--auto .hero--venue h1{font-size:clamp(56px,18vw,96px)}.venue--auto .htag,.venue--auto .brk.tl{display:none}.venue--auto .htach{right:16px;bottom:auto;top:112px;width:92px}.venue--auto .orn--auto .ico{width:42px;height:28px}.venue--auto .vtl-wrap::after{left:22.500px}}
@media(prefers-reduced-motion:reduce){.venue--auto .shine{display:none}.hpin path{animation:none;stroke-dashoffset:0}.htach .needle{animation:none;transform:rotate(98deg)}.venue--auto .vtl-n{transition:none}.venue--auto .vtl-wrap::after{transition:none}.venue--auto .show-media-wrap::before,.venue--auto .show-media-wrap::after{transition:none}}
.venue--auto .hero--venue .hero-text{max-width:min(1100px,92vw)}
.venue--auto .hero--venue .hl-b{display:block}
.venue--auto .steps-panel .button{background:var(--accent);color:var(--accent-fg)}
.venue--dark .feature{color:#F3F2EE}
.venue--dark .feature h2{color:#fff}
.venue--auto .contact .eyebrow{color:var(--accent-fg)}

.vhero-bg.flip{transform:scaleX(-1)}
@media(max-width:760px){.vhero-bg img{object-position:var(--pm,var(--po,50% 50%))!important}}

/* Language switch in the top bar: a clear pill with a globe, the active language filled in white (most visitors may read Spanish, so it has to be easy to find) */
.vbar>*{pointer-events:auto}
.vlang .language{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:999px;background:rgba(20,12,10,.5);border:1.5px solid rgba(255,255,255,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 16px rgba(0,0,0,.28)}
.vlang .language::before{content:"";flex:none;width:18px;height:18px;margin:0 4px 0 9px;background:#fff;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18'/%3E%3Cpath d='M12 3c2.600 2.700 4 5.700 4 9s-1.400 6.300-4 9c-2.600-2.700-4-5.700-4-9s1.400-6.300 4-9z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18'/%3E%3Cpath d='M12 3c2.600 2.700 4 5.700 4 9s-1.400 6.300-4 9c-2.600-2.700-4-5.700-4-9s1.400-6.300 4-9z'/%3E%3C/svg%3E") center/contain no-repeat}
.vlang .language a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;min-width:46px!important;height:auto!important;padding:0 14px!important;border:0!important;border-radius:999px!important;background:none!important;box-shadow:none!important;color:#fff;font:800 14px/1 Inter,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;transition:background-color .2s ease,color .2s ease}
.vlang .language a:hover{background:rgba(255,255,255,.22)!important;color:#fff}
.vlang .language a[aria-current]{background:#fff!important;color:#1C1A16;box-shadow:none!important}
.vlang .language a[aria-current]:hover{background:#fff!important}
.vlang .language a:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(max-width:480px){.vlang .language::before{display:none}.vlang .language a{min-height:34px;min-width:40px!important;padding:0 12px!important;font-size:13px}}

/* ===== Tint theme (window tint): glass, film and shade. Builds on the auto theme. ===== */
.venue--tint{--serif:"Jost","Futura","Century Gothic","Avenir Next",Arial,sans-serif;--film:10,18,30;
--ico-window:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 40' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 34 16 10c1-3 3-4 6-4h21c2 0 3.500.8 4.700 2.300L60 25c1.500 2 .5 5-2 5h-3'/%3E%3Cpath d='M6 34h52'/%3E%3Cpath d='M32 6v28'/%3E%3C/svg%3E")}
.motif--warm{--film:40,23,9}
.venue--tint{--hi:color-mix(in srgb,var(--accent) 40%,#fff)}
.venue--tint h2,.venue--tint h3{text-transform:none}
.venue--tint .section h2,.venue--tint .intro h2,.venue--tint .reviews h2,.venue--tint .contact h2,.venue--tint .feature h2{font-weight:300;letter-spacing:-.015em;font-size:clamp(40px,5vw,74px);line-height:1.04;text-transform:none}
.venue--tint .eyebrow{letter-spacing:.2em}
.venue--tint .button{border-radius:999px;font-family:var(--serif);font-weight:500;font-size:13px;letter-spacing:.16em;text-transform:uppercase;min-height:52px}
.venue--tint .hero--venue h1{font-weight:300;text-transform:none;letter-spacing:-.03em;line-height:.98;font-size:clamp(52px,8.2vw,132px)}
.venue--tint .hero--venue .hl-b{font-weight:300;font-style:italic;letter-spacing:-.02em;color:var(--hi)}
.venue--tint .hero--venue .kicker,.venue--tint .hero--venue .kicker *{letter-spacing:.18em}
.venue--tint .vhero-bg::after{background:linear-gradient(0deg,rgba(var(--film),.72),rgba(var(--film),.08) 52%,rgba(var(--film),.16)),linear-gradient(90deg,rgba(var(--film),.42),transparent 60%)}
.venue--tint .tintfilm{position:absolute;inset:0;background:linear-gradient(180deg,rgba(var(--film),.42),rgba(var(--film),.1));box-shadow:0 2px 0 rgba(255,255,255,.38);transform-origin:top;animation:filmdrop 2.8s cubic-bezier(.3,.7,.2,1) .5s both}
@keyframes filmdrop{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.venue--tint .glint{position:absolute;top:-10%;bottom:-10%;left:-45%;width:34%;background:linear-gradient(100deg,transparent 0 38%,rgba(255,255,255,.2) 39% 41%,transparent 42% 50%,rgba(255,255,255,.1) 51% 56%,transparent 57%);transform:skewX(-14deg);animation:glint 12s ease-in-out 2.2s infinite;mix-blend-mode:screen}
@keyframes glint{0%,60%{left:-45%}100%{left:130%}}
.venue--tint .pane{position:absolute;inset:clamp(12px,1.6vw,22px);border:1px solid rgba(255,255,255,.24);border-radius:16px}
.hscale{position:absolute;right:clamp(64px,9vw,150px);bottom:clamp(64px,13vh,140px);display:flex;flex-direction:column;gap:6px;padding:7px;border-radius:10px;background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.3)}
.hscale i{display:block;width:clamp(36px,3.8vw,56px);height:clamp(15px,1.7vw,24px);border:1px solid rgba(255,255,255,.42);border-radius:4px;background:rgba(var(--film),var(--a,0));-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.hscale i:nth-child(1){--a:.05}
.hscale i:nth-child(2){--a:.28}
.hscale i:nth-child(3){--a:.5}
.hscale i:nth-child(4){--a:.7}
.hscale i:nth-child(5){--a:.88}
.flare{position:absolute;right:-8%;top:-14%;width:62%;height:74%;background:radial-gradient(closest-side,rgba(255,196,120,.5),rgba(255,160,70,.18) 55%,transparent 72%);mix-blend-mode:screen;animation:flare 9s ease-in-out infinite alternate}
@keyframes flare{from{transform:translate(0,0) scale(1);opacity:.7}to{transform:translate(-7%,5%) scale(1.15);opacity:1}}
.orn--tint{color:var(--accent)}
.orn--tint .scale{flex:1;height:12px;border-radius:4px;background:linear-gradient(90deg,transparent 0 20%,color-mix(in srgb,currentColor 16%,transparent) 20% 40%,color-mix(in srgb,currentColor 34%,transparent) 40% 60%,color-mix(in srgb,currentColor 54%,transparent) 60% 80%,color-mix(in srgb,currentColor 76%,transparent) 80%);-webkit-mask:repeating-linear-gradient(90deg,#000 0 calc(20% - 3px),transparent calc(20% - 3px) 20%);mask:repeating-linear-gradient(90deg,#000 0 calc(20% - 3px),transparent calc(20% - 3px) 20%)}
.orn--tint .scale.r{transform:scaleX(-1)}
.orn--tint .ico{width:56px;height:35px;flex:none;background:currentColor;-webkit-mask:var(--ico-window) center/contain no-repeat;mask:var(--ico-window) center/contain no-repeat}
.venue--tint .show-body h3,.venue--tint .vtl-i h3{font-weight:400;text-transform:none;font-size:clamp(30px,3.8vw,54px);line-height:1.04;letter-spacing:-.01em}
.venue--tint .showcase--rows .show-media{border-radius:12px;position:relative;box-shadow:0 22px 50px rgba(0,0,0,.2)}
.venue--tint .show-media::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.15) 48%,transparent 58%);pointer-events:none}
.venue--tint .show-media-wrap::before{display:none}
.venue--tint .show-media-wrap::after{top:0;right:0;left:auto;bottom:auto;width:56px;height:56px;border:0;background:linear-gradient(225deg,var(--v-bg) 0 50%,rgba(255,255,255,.78) 50%,rgba(255,255,255,.22));box-shadow:-5px 6px 12px rgba(0,0,0,.24);border-radius:0 12px 0 14px;transition:width .5s cubic-bezier(.2,.7,.2,1),height .5s cubic-bezier(.2,.7,.2,1);z-index:3}
.venue--tint .show-card:hover .show-media-wrap::after{width:72px;height:72px;transform:none}
.venue--tint .vtl-n{background:transparent;border:1.5px solid var(--accent);transition:background .9s ease}
.venue--tint .vtl-n::before{display:none}
.venue--tint .vtl-i:nth-child(1){--fill:20%}
.venue--tint .vtl-i:nth-child(2){--fill:46%}
.venue--tint .vtl-i:nth-child(3){--fill:74%}
.venue--tint .vtl-i.in .vtl-n{background:color-mix(in srgb,var(--accent) var(--fill),transparent);border:1.5px solid var(--accent);color:var(--v-ink)}
.venue--tint .feature{border-radius:22px}
.venue--tint .feature .business-photo{border-radius:14px;position:relative;overflow:hidden}
.venue--tint .feature .business-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.14) 50%,transparent 60%);pointer-events:none}
.venue--tint .feature .detail-photo-slot::before,.venue--tint .feature .detail-photo-slot::after{display:none}
.venue--tint .collage .business-photo{border-radius:12px}
.venue--tint .contact{border-radius:22px}

/* ===== Florist theme: botanical, fresh and cheerful ===== */
.venue--florist{--serif:"Fraunces",Georgia,"Times New Roman",serif;--v-bg:#F8F4EA;--v-ink:#1E2B22;--v-mute:#5B6A5F;--v-line:rgba(47,100,66,.22);--v-surface:#FFFDF8;--leaf:#2F8A57;--bloom:#EE9C94;--sun:#F2B632;
--ico-bloom:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='2.4' stroke-linejoin='round'%3E%3Cellipse cx='24' cy='11.500' rx='5.500' ry='8.500'/%3E%3Cellipse cx='24' cy='11.500' rx='5.500' ry='8.500' transform='rotate(72 24 24)'/%3E%3Cellipse cx='24' cy='11.500' rx='5.500' ry='8.500' transform='rotate(144 24 24)'/%3E%3Cellipse cx='24' cy='11.500' rx='5.500' ry='8.500' transform='rotate(216 24 24)'/%3E%3Cellipse cx='24' cy='11.500' rx='5.500' ry='8.500' transform='rotate(288 24 24)'/%3E%3Ccircle cx='24' cy='24' r='3.600' fill='%23000'/%3E%3C/svg%3E");
--ico-leaf:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='2.600' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 40C6 20 20 8 42 8c0 22-14 34-36 32z'/%3E%3Cpath d='M6 40 30 18'/%3E%3C/svg%3E");
background:linear-gradient(180deg,#F8F4EA 0%,#F4F1E3 38%,#F8EFE7 74%,#F8F4EA 100%)}
body:has(.venue--florist){background:#F8F4EA}
.venue--florist .rule{display:none}
.venue--florist .hero--venue h1{font-family:var(--serif);font-weight:400;letter-spacing:-.025em}
.venue--florist .hero--venue .hl-b{font-weight:400;color:#FFD9C9;text-shadow:0 0 40px rgba(255,170,140,.3)}
.venue--florist .vhero-bg::after{background:linear-gradient(0deg,rgba(15,38,26,.86),rgba(15,38,26,.24) 54%,rgba(15,38,26,.32)),linear-gradient(90deg,rgba(15,38,26,.5),transparent 62%)}
.venue--florist .hero--venue .kicker{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px}
.venue--florist .hero--venue .kicker::before{content:"";width:30px;height:30px;flex:none;background:#CDEBD3;-webkit-mask:var(--ico-leaf) center/contain no-repeat;mask:var(--ico-leaf) center/contain no-repeat}
.venue--florist .hero--venue .kicker-type{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.4)}
.sprig{position:absolute;color:#CDEBD3;height:auto;transform-origin:50% 100%;animation:sway 7s ease-in-out infinite alternate;pointer-events:none}
.sprig.a{right:clamp(8px,4vw,70px);bottom:-2px;width:clamp(120px,17vw,260px);opacity:.92}
.sprig.b{right:clamp(130px,19vw,330px);bottom:-2px;width:clamp(80px,11vw,170px);opacity:.7;animation-delay:-3s}
.sprig .stem{fill:none;stroke:currentColor;stroke-width:2.200;stroke-linecap:round}
.sprig .lf{fill:currentColor;opacity:.9}
.sprig .lf.b{opacity:.55}
@keyframes sway{from{transform:rotate(-2.400deg)}to{transform:rotate(2.800deg)}}
.petal.leaf{border-radius:0 100% 0 100%;height:calc(var(--s)*2);opacity:.7}
.venue--florist .eyebrow::before{width:14px;height:14px;border-radius:0;background:var(--bloom);-webkit-mask:var(--ico-bloom) center/contain no-repeat;mask:var(--ico-bloom) center/contain no-repeat;flex:none}
.venue--florist .feature .eyebrow::before,.venue--florist .contact .eyebrow::before{background:#FFD9C9}
.venue--florist .feature .eyebrow,.venue--florist .contact .eyebrow{color:#DCEFE0}
.venue--florist .feature p{color:#E8F3EA}
.orn--florist{color:var(--leaf)}
.orn--florist .orn-l,.orn--florist .orn-r{flex:1;max-width:320px;height:1px}
.orn--florist .orn-l{background:linear-gradient(90deg,transparent,currentColor)}
.orn--florist .orn-r{background:linear-gradient(270deg,transparent,currentColor)}
.orn--florist .bloom{width:34px;height:34px;flex:none;background:var(--bloom);-webkit-mask:var(--ico-bloom) center/contain no-repeat;mask:var(--ico-bloom) center/contain no-repeat;animation:bloomspin 18s linear infinite}
.orn--florist .leaf{width:24px;height:24px;flex:none;background:currentColor;-webkit-mask:var(--ico-leaf) center/contain no-repeat;mask:var(--ico-leaf) center/contain no-repeat;transform:rotate(-12deg)}
.orn--florist .leaf.r{transform:scaleX(-1) rotate(-12deg)}
@keyframes bloomspin{to{transform:rotate(360deg)}}
.venue--florist .facts-grid{background:#fff;border:1px solid var(--v-line);border-radius:22px;box-shadow:0 18px 46px rgba(31,94,59,.1)}
.venue--florist .glance{background:#fff;border:1px solid var(--v-line);border-radius:22px;box-shadow:0 22px 50px rgba(31,94,59,.12);position:relative;overflow:hidden}
.venue--florist .glance::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,transparent,var(--bloom),var(--sun),transparent)}
.showcase--oval{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4.4vw,64px);align-items:start}
.showcase--oval .show-card:nth-child(2){margin-top:60px}
.showcase--oval .show-media{aspect-ratio:3/4;border-radius:50%;box-shadow:0 26px 50px rgba(31,94,59,.18)}
.showcase--oval .show-media-wrap::before{content:"";position:absolute;inset:-12px;border:1px solid var(--leaf);border-radius:50%;opacity:.6;pointer-events:none}
.showcase--oval .show-media-wrap::after{content:"";position:absolute;left:50%;top:-34px;width:24px;height:24px;margin-left:-12px;background:var(--bloom);-webkit-mask:var(--ico-bloom) center/contain no-repeat;mask:var(--ico-bloom) center/contain no-repeat}
.showcase--oval .show-body{padding-top:30px;text-align:center}
.showcase--oval .show-body p{margin-inline:auto}
.venue--florist .show-n{font-family:var(--serif);font-style:italic;font-size:26px;color:var(--leaf)}
.venue--florist .show-link{border-bottom-color:var(--bloom)}
.venue--florist .feature{background:radial-gradient(60% 90% at 90% 10%,rgba(238,156,148,.26),transparent 62%),radial-gradient(50% 70% at 5% 100%,rgba(242,182,50,.14),transparent 65%),linear-gradient(135deg,#143626,#1D5C3C 58%,#2F8A57);color:#fff;border-radius:34px;position:relative;overflow:hidden}
.venue--florist .feature-grid{grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}
.venue--florist .feature .detail-photo-slot{max-width:430px;width:100%;margin-inline:auto;position:relative}
.venue--florist .feature .detail-photo-slot::before{content:"";position:absolute;inset:-12px;border:1px solid rgba(255,217,201,.7);border-radius:50%;pointer-events:none}
.venue--florist .feature .business-photo{aspect-ratio:1/1;border-radius:50%;overflow:hidden;position:relative}
.venue--florist .feature .business-photo>img{position:absolute;inset:0;height:100%!important;width:100%;aspect-ratio:auto!important;border-radius:0!important;object-fit:cover}
.venue--florist .collage .business-photo{border-radius:22px;box-shadow:0 14px 34px rgba(31,94,59,.12)}
.venue--florist .steps-panel{background:linear-gradient(135deg,rgba(255,253,248,.92),rgba(246,238,222,.8))!important;border:1px solid var(--v-line);border-radius:36px;box-shadow:0 24px 60px rgba(31,94,59,.08)}
.venue--florist .vtl::before{background:linear-gradient(180deg,var(--leaf),rgba(47,138,87,.12))}
.venue--florist .vtl-n{border-color:var(--leaf);color:var(--leaf);background:#fff;box-shadow:0 8px 20px rgba(31,94,59,.12)}
.venue--florist .vtl-i.in .vtl-n{background:linear-gradient(135deg,var(--leaf),#52A777);color:#fff;border-color:transparent}
.venue--florist .vtl-i.in .vtl-n::after{content:"";position:absolute;right:-6px;top:-8px;width:20px;height:20px;background:var(--bloom);-webkit-mask:var(--ico-leaf) center/contain no-repeat;mask:var(--ico-leaf) center/contain no-repeat;animation:sprout .9s cubic-bezier(.3,1.4,.4,1) both}
@keyframes sprout{from{transform:scale(0) rotate(-40deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}
.venue--florist .review-card{background:#fff;border:1px solid var(--v-line);border-radius:22px;box-shadow:0 14px 34px rgba(31,94,59,.07)}
.venue--florist .contact{background:radial-gradient(60% 90% at 100% 0%,rgba(238,156,148,.3),transparent 60%),radial-gradient(40% 60% at 0% 100%,rgba(242,182,50,.18),transparent 70%),linear-gradient(135deg,#143626,#1F6B43 58%,#2F8A57);border-radius:34px;position:relative;overflow:hidden}
.venue--florist .contact>.wrap{position:relative;z-index:1}
.venue--florist .contact::before,.venue--florist .contact::after{content:"";position:absolute;background:#fff;opacity:.08;pointer-events:none;-webkit-mask:var(--ico-bloom) center/contain no-repeat;mask:var(--ico-bloom) center/contain no-repeat}
.venue--florist .contact::before{width:220px;height:220px;right:4%;top:6%}
.venue--florist .contact::after{width:110px;height:110px;right:24%;bottom:8%}

@media(max-width:860px){.showcase--oval{grid-template-columns:1fr;max-width:420px;margin-inline:auto;gap:56px}.showcase--oval .show-card:nth-child(2){margin-top:0}}
@media(max-width:760px){.hscale{right:16px;bottom:auto;top:112px}.hscale i{width:30px;height:14px}.venue--tint .pane{inset:8px;border-radius:12px}.sprig.b{display:none}.sprig.a{width:130px}.petal:nth-child(n+9):not(.leaf){display:none}.venue--florist .feature-grid{grid-template-columns:1fr}.venue--tint .show-media-wrap::after{width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){.venue--tint .tintfilm,.venue--tint .glint,.flare,.sprig,.orn--florist .bloom,.venue--florist .vtl-i.in .vtl-n::after{animation:none}.venue--tint .glint{display:none}.venue--tint .tintfilm{transform:none}}
@media(max-width:760px){.vbar{gap:12px}.vbrand{max-width:56vw}}

/* ===== Web-studio theme (Sitio Local's own site): wireframes, breakpoint rulers and browser frames ===== */
.venue--web{--sans:"Bricolage Grotesque",Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--serif:var(--sans);--ital:"Instrument Serif",Georgia,"Times New Roman",serif;--mono:"JetBrains Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;--hi:color-mix(in srgb,var(--accent) 46%,#fff);--chrome:#E5EBF5;
--v-bg:#F1F4F9;--v-ink:#0B1531;--v-mute:#51607C;--v-line:rgba(11,21,49,.15);--v-surface:#FBFCFE}
body:has(.venue--web){background:#F1F4F9}
.venue--web .section h2,.venue--web .intro h2,.venue--web .contact h2,.venue--web .feature h2{font-weight:600;letter-spacing:-.04em;font-size:clamp(38px,5vw,74px);line-height:.98}
.venue--web .intro h2{max-width:17ch}
.venue--web .intro-grid{grid-template-columns:minmax(0,1fr)}
.venue--web .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--v-mute);background:none;padding:0;border-radius:0}
.venue--web .eyebrow::before{width:22px;height:2px;border-radius:0;background:var(--accent)}
.venue--web .button{border-radius:10px;font-weight:600;letter-spacing:-.01em}
.venue--web .vbar.scrolled{background:rgba(8,18,44,.86)}
.venue--web .vbrand{font-weight:600;letter-spacing:-.03em}
.venue--web .vbrand em{font-family:var(--ital);font-weight:400;font-size:1.3em;letter-spacing:0}

/* Hero: navy-tinted photo, layout grid, wireframe that builds itself */
.venue--web .vhero-bg::after{background:linear-gradient(0deg,rgba(6,13,34,.9),rgba(6,13,34,.3) 52%,rgba(6,13,34,.4)),linear-gradient(90deg,rgba(6,13,34,.62),transparent 66%),rgba(39,102,232,.14)}
.venue--web .hero--venue .hero-text{max-width:min(1100px,92vw)}
.venue--web .hero--venue h1{font-family:var(--sans);font-weight:600;letter-spacing:-.05em;line-height:.9;font-size:clamp(50px,7.8vw,124px)}
.venue--web .hero--venue .hl-a{display:block}
.venue--web .hero--venue .hl-b{display:block;font-family:var(--ital);font-style:italic;font-weight:400;letter-spacing:-.025em;font-size:1.08em;line-height:.95;color:var(--hi);text-shadow:none}
.venue--web .hero--venue .kicker *{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.venue--web .hero--venue .kicker-type{border-radius:4px;border:1px solid rgba(255,255,255,.36);background:rgba(255,255,255,.1)}
.venue--web .hero--venue .kicker-type::after{content:"";display:inline-block;width:7px;height:14px;margin-left:9px;background:var(--hi);vertical-align:-2px;animation:caret 1.1s steps(1) infinite}
@keyframes caret{50%{opacity:0}}
.venue--web .hero--venue .button:hover{background:var(--accent);color:#fff;border-color:var(--accent)}
.wgrid{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.4) 1px,transparent 1.5px);background-size:36px 36px;-webkit-mask:linear-gradient(180deg,#000,transparent 72%);mask:linear-gradient(180deg,#000,transparent 72%);opacity:.45}
.venue--web .htag{position:absolute;right:clamp(14px,3vw,38px);top:50%;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl;font:11px/1 var(--mono);letter-spacing:.22em;color:rgba(255,255,255,.72);text-transform:uppercase;white-space:nowrap}
.wf{position:absolute;right:clamp(64px,8vw,150px);top:clamp(112px,16vh,160px);width:clamp(300px,31vw,500px);border-radius:16px;background:rgba(8,18,44,.36);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);box-shadow:0 30px 80px rgba(2,8,24,.4)}
.wf svg{display:block;width:100%;height:auto;overflow:visible}
.wf .w-frame{fill:none;stroke:rgba(255,255,255,.62);stroke-width:1.5;stroke-dasharray:1;stroke-dashoffset:1;animation:wDraw 1.3s cubic-bezier(.4,0,.2,1) .35s forwards}
.wf .w-bar{animation-delay:.9s}
@keyframes wDraw{to{stroke-dashoffset:0}}
.wf .b{opacity:0;animation:wIn .55s cubic-bezier(.2,.8,.2,1) calc(.7s + var(--i)*.28s) forwards}
@keyframes wIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.wf .b circle{fill:rgba(255,255,255,.34)}
.wf .w-soft{fill:rgba(255,255,255,.3)}
.wf .w-ink{fill:rgba(255,255,255,.92)}
.wf .w-acc{fill:var(--accent)}
.wf .w-btn{filter:drop-shadow(0 0 10px color-mix(in srgb,var(--accent) 70%,transparent))}
.wf .w-img{fill:rgba(255,255,255,.08);stroke:rgba(255,255,255,.46);stroke-width:1.2}
.wf .w-line{fill:none;stroke:rgba(255,255,255,.72);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.wf .w-cursor{fill:#fff;stroke:#0A1633;stroke-width:1.2;stroke-linejoin:round;opacity:0;transform:translate(74px,210px);animation:wCur 5.2s cubic-bezier(.45,.05,.25,1) 3.4s forwards;filter:drop-shadow(0 3px 5px rgba(0,0,0,.4))}
@keyframes wCur{0%{opacity:0;transform:translate(430px,40px)}12%{opacity:1}62%{opacity:1;transform:translate(72px,208px)}72%{transform:translate(72px,208px) scale(.84)}84%,100%{opacity:1;transform:translate(74px,210px)}}
.wf .w-ripple{fill:none;stroke:#fff;stroke-width:2;opacity:0;transform-origin:76px 217px;transform-box:view-box;animation:wRip .9s ease-out 7.1s forwards}
@keyframes wRip{0%{opacity:.85;transform:scale(.3)}100%{opacity:0;transform:scale(2.4)}}

/* Dividers: a breakpoint ruler with phone, tablet and desktop outlines */
.orn--web{color:var(--accent);gap:14px;align-items:flex-end;padding-bottom:8px}
.orn--web .ruler{flex:1;height:16px;opacity:.7;background:linear-gradient(90deg,currentColor 1px,transparent 1px) 0 100%/60px 16px repeat-x,linear-gradient(90deg,currentColor 1px,transparent 1px) 0 100%/12px 8px repeat-x;-webkit-mask:linear-gradient(90deg,transparent,#000 22%);mask:linear-gradient(90deg,transparent,#000 22%)}
.orn--web .ruler.r{transform:scaleX(-1)}
.orn--web .dv{display:block;flex:none;border:2px solid currentColor;position:relative}
.orn--web .dv.phone{width:14px;height:26px;border-radius:5px}
.orn--web .dv.tab{width:32px;height:24px;border-radius:5px}
.orn--web .dv.desk{width:46px;height:30px;border-radius:4px;margin-bottom:8px}
.orn--web .dv.desk::after{content:"";position:absolute;left:50%;bottom:-9px;width:18px;height:2px;background:currentColor;transform:translateX(-50%)}

/* Services: every photo sits in a browser window; the mobile one gets a phone inset */
.venue--web .show-n{font-family:var(--mono);font-size:12px;letter-spacing:.16em;font-style:normal;color:var(--accent)}
.venue--web .show-body h3{font-weight:600;letter-spacing:-.035em;font-size:clamp(30px,3.6vw,54px);line-height:1}
.venue--web .show-media-wrap{position:relative;background:var(--chrome);border:1px solid var(--v-line);border-radius:14px;padding-top:30px;box-shadow:0 26px 60px rgba(11,21,49,.14)}
.venue--web .show-media-wrap::before{content:"";position:absolute;left:14px;top:10px;width:9px;height:9px;border-radius:50%;background:rgba(11,21,49,.26);box-shadow:15px 0 0 rgba(11,21,49,.26),30px 0 0 rgba(11,21,49,.26)}
.venue--web .show-media-wrap::after{content:"";position:absolute;left:68px;right:14px;top:7px;height:16px;border-radius:8px;background:rgba(255,255,255,.8)}
.venue--web .showcase--rows .show-media{border-radius:0 0 13px 13px;box-shadow:none}
.show-pip{position:absolute;right:clamp(10px,2.2vw,28px);bottom:-26px;width:clamp(84px,13%,128px);aspect-ratio:9/18;border-radius:20px;border:4px solid #0B1531;background:#0B1531;box-shadow:0 22px 44px rgba(11,21,49,.4);overflow:hidden;z-index:4}
.show-pip::before{content:"";position:absolute;left:50%;top:5px;width:30%;height:5px;border-radius:3px;background:#0B1531;transform:translateX(-50%);z-index:2}
.show-pip img{display:block;width:100%;height:100%;object-fit:cover;border-radius:15px}

/* Feature photo: framed like a selected element in a design tool */
.venue--web .feature{border-radius:22px}
.venue--web .feature .eyebrow{color:#B7C5E4}
.venue--web .feature .detail-photo-slot{position:relative}
.venue--web .feature .detail-photo-slot::before,.venue--web .feature .detail-photo-slot::after{content:"";position:absolute;pointer-events:none;z-index:2}
.venue--web .feature .detail-photo-slot::before{inset:-10px;border:1.5px solid var(--hi)}
.venue--web .feature .detail-photo-slot::after{inset:-15px;background:linear-gradient(#fff,#fff) 0 0/10px 10px no-repeat,linear-gradient(#fff,#fff) 100% 0/10px 10px no-repeat,linear-gradient(#fff,#fff) 0 100%/10px 10px no-repeat,linear-gradient(#fff,#fff) 100% 100%/10px 10px no-repeat}
.venue--web .feature .business-photo{border-radius:2px}

/* The work: ten drafts as browser windows, each with its own accent stripe */
.work-sub{max-width:56ch;color:var(--v-mute);margin-top:-6px}
.wk-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2vw,28px);margin-block:12px 8px}
.wk{grid-column:span 4;position:relative;display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--v-line);border-radius:14px;overflow:hidden;color:var(--v-ink);text-decoration:none;box-shadow:0 14px 34px rgba(11,21,49,.08);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease}
.wk:nth-child(n+7){grid-column:span 3}
.wk:hover{transform:translateY(-6px);box-shadow:0 26px 54px rgba(11,21,49,.16)}
.wk:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.wk-win{display:flex;align-items:center;gap:6px;height:28px;padding:0 12px;background:var(--chrome);border-bottom:1px solid var(--v-line)}
.wk-win i{width:8px;height:8px;border-radius:50%;background:rgba(11,21,49,.24)}
.wk-win::after{content:"";flex:1;height:12px;margin-left:8px;border-radius:6px;background:rgba(255,255,255,.8)}
.wk-shot{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--v-line)}
.wk-shot img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.wk:hover .wk-shot img{transform:scale(1.05)}
.wk-meta{display:flex;flex-direction:column;gap:3px;padding:14px 60px 16px 16px;border-top:3px solid var(--c)}
.wk-name{font:600 18px/1.2 var(--sans);letter-spacing:-.025em}
.wk-niche{font:500 11px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--v-mute)}
.wk-go{position:absolute;right:14px;bottom:14px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--v-ink);color:#fff;font-size:15px;transition:transform .3s ease}
.wk:hover .wk-go{transform:translate(3px,-3px)}
.venue--web .work .listing-link{color:var(--accent);font-weight:600;align-self:flex-start}

/* Steps: square markers that fill in as the line reaches them */
.venue--web .vtl::before{left:31px;background:var(--v-line)}
.venue--web .vtl-i{grid-template-columns:64px minmax(0,1fr)}
.venue--web .vtl-n{width:64px;height:64px;border-radius:16px;font:500 16px/1 var(--mono);font-style:normal;letter-spacing:.04em;background:var(--v-bg);color:var(--v-ink);border:1.5px solid var(--v-line)}
.venue--web .vtl-i.in .vtl-n{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 12px 28px color-mix(in srgb,var(--accent) 38%,transparent)}
.venue--web .vtl-i h3{font-weight:600;letter-spacing:-.035em;font-size:clamp(28px,3.4vw,46px);line-height:1}
.venue--web .vtl-wrap{position:relative}
.venue--web .vtl-wrap::after{content:"";position:absolute;left:30px;top:8px;width:2px;height:calc((100% - 48px)*var(--p,0));background:var(--accent);transition:height .15s linear}
.venue--web .steps-panel .button{background:var(--accent);color:#fff}

/* Closing band and footer */
.venue--web .contact{border-radius:22px;background:radial-gradient(60% 120% at 100% 0%,rgba(255,255,255,.22),transparent 60%),linear-gradient(135deg,#1A47B8,var(--accent) 56%,#4F88FF)}
.venue--web .contact .eyebrow{color:#fff}
.venue--web .contact .eyebrow::before{background:#fff}
.web-contact{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:end}
.web-contact-copy{display:flex;flex-direction:column;align-items:flex-start;gap:32px;min-width:0}
.web-contact-info{display:flex;flex-direction:column;gap:10px;padding-left:clamp(20px,3vw,40px);border-left:1px solid rgba(255,255,255,.4);min-width:0}
.web-contact-info .eyebrow{margin-bottom:4px}
.web-contact-info p{color:#fff;opacity:.9;max-width:34ch}
.web-contact-info .phone-number{display:block;color:#fff;font:600 clamp(20px,2.1vw,30px)/1.25 var(--sans);letter-spacing:-.02em;text-decoration:none;overflow-wrap:anywhere}
.web-contact-info .phone-number:hover{text-decoration:underline;text-underline-offset:5px}
.venue--web .footer{border-radius:22px}
.venue--web .footer-grid{grid-template-columns:1.2fr 1fr 1.4fr}
.venue--web .footer-grid--two{grid-template-columns:1.6fr 1fr}
.venue--web .footer-col nav{display:flex;flex-direction:column;gap:8px}

@media(max-width:1000px){.wk,.wk:nth-child(n+7){grid-column:span 6}.web-contact{grid-template-columns:1fr;align-items:start}.web-contact-info{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.4);padding-top:24px}}
@media(max-width:900px){.wf{width:min(340px,40vw);right:56px}.venue--web .footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.venue--web .hero--venue h1{font-size:clamp(44px,13.6vw,84px)}.wf{right:16px;top:max(250px,32svh);width:min(290px,64vw)}.venue--web .htag{display:none}.venue--web .vtl::before{left:23px}.venue--web .vtl-i{grid-template-columns:48px minmax(0,1fr);gap:16px}.venue--web .vtl-n{width:48px;height:48px;border-radius:12px;font-size:14px}.venue--web .vtl-wrap::after{left:22px}.orn--web .dv.desk{width:38px;height:24px}.venue--web .footer-grid{grid-template-columns:1fr}}
@media(max-width:560px){.wk,.wk:nth-child(n+7){grid-column:span 12}}
@media(max-width:760px) and (max-height:759px){.wf{display:none}}
@media(prefers-reduced-motion:reduce){.wf .w-frame{animation:none;stroke-dashoffset:0}.wf .b{animation:none;opacity:1}.wf .w-cursor{animation:none;opacity:1}.wf .w-ripple{display:none}.venue--web .hero--venue .kicker-type::after{animation:none}.wk,.wk-go,.wk-shot img{transition:none}}

/* ===== Bakery theme (Sweet Corner Bakery): warm oven shade, steam, falling sprinkles, piped-bead borders, scalloped cookie-cutter edges ===== */
.venue--bakery{--serif:"DM Serif Display",Georgia,"Times New Roman",serif;--v-bg:#FFF7EC;--v-ink:#3A1F1A;--v-mute:#6E5548;--v-line:rgba(160,96,60,.24);--v-surface:#FFFDF8;--crust:#D9993B;--icing:#F8C9D3;
--ico-concha:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 32C6 18 14 10 24 10s18 8 18 22z'/%3E%3Cpath d='M5 37h38'/%3E%3Cpath d='M24 32V14'/%3E%3Cpath d='M24 32C18 27 14 22 13 16'/%3E%3Cpath d='M24 32C30 27 34 22 35 16'/%3E%3C/svg%3E");
--ico-wheat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M24 45V14'/%3E%3Cellipse cx='24' cy='8' rx='3' ry='5.500'/%3E%3Cg transform='rotate(-32 19 18)'%3E%3Cellipse cx='19' cy='18' rx='3' ry='5.500'/%3E%3C/g%3E%3Cg transform='rotate(32 29 18)'%3E%3Cellipse cx='29' cy='18' rx='3' ry='5.500'/%3E%3C/g%3E%3Cg transform='rotate(-32 19 27)'%3E%3Cellipse cx='19' cy='27' rx='3' ry='5.500'/%3E%3C/g%3E%3Cg transform='rotate(32 29 27)'%3E%3Cellipse cx='29' cy='27' rx='3' ry='5.500'/%3E%3C/g%3E%3Cg transform='rotate(-32 19 36)'%3E%3Cellipse cx='19' cy='36' rx='3' ry='5.500'/%3E%3C/g%3E%3Cg transform='rotate(32 29 36)'%3E%3Cellipse cx='29' cy='36' rx='3' ry='5.500'/%3E%3C/g%3E%3C/svg%3E");
--scallop:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ccircle cx='50' cy='50' r='42'/%3E%3Ccircle cx='91.00' cy='50.00' r='9'/%3E%3Ccircle cx='87.88' cy='65.69' r='9'/%3E%3Ccircle cx='78.99' cy='78.99' r='9'/%3E%3Ccircle cx='65.69' cy='87.88' r='9'/%3E%3Ccircle cx='50.00' cy='91.00' r='9'/%3E%3Ccircle cx='34.31' cy='87.88' r='9'/%3E%3Ccircle cx='21.01' cy='78.99' r='9'/%3E%3Ccircle cx='12.12' cy='65.69' r='9'/%3E%3Ccircle cx='9.00' cy='50.00' r='9'/%3E%3Ccircle cx='12.12' cy='34.31' r='9'/%3E%3Ccircle cx='21.01' cy='21.01' r='9'/%3E%3Ccircle cx='34.31' cy='12.12' r='9'/%3E%3Ccircle cx='50.00' cy='9.00' r='9'/%3E%3Ccircle cx='65.69' cy='12.12' r='9'/%3E%3Ccircle cx='78.99' cy='21.01' r='9'/%3E%3Ccircle cx='87.88' cy='34.31' r='9'/%3E%3C/svg%3E");
background:linear-gradient(180deg,#FFF7EC 0%,#FDEFDD 38%,#FFF3EC 74%,#FFF7EC 100%)}
body:has(.venue--bakery){background:#FFF7EC}
.venue--bakery .rule{display:none}
.venue--bakery .hero--venue h1{font-family:var(--serif);font-weight:400;letter-spacing:-.02em}
.venue--bakery .hero--venue .hl-b{font-weight:400;color:#FFD3DC;text-shadow:0 0 44px rgba(255,150,170,.35)}
.venue--bakery .vhero-bg::after{display:none}
.venue--bakery .hv-shade{background:radial-gradient(70% 60% at 12% 100%,rgba(232,140,52,.34),transparent 70%),linear-gradient(0deg,rgba(46,18,25,.92),rgba(46,18,25,.36) 54%,rgba(46,18,25,.48)),linear-gradient(90deg,rgba(46,18,25,.6),transparent 66%)}
.venue--bakery .hero--venue .kicker{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px}
.venue--bakery .hero--venue .kicker::before{content:"";width:34px;height:34px;flex:none;background:var(--icing);-webkit-mask:var(--ico-concha) center/contain no-repeat;mask:var(--ico-concha) center/contain no-repeat}
.venue--bakery .hero--venue .kicker-type{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.4)}
.venue--bakery .vbar.scrolled{background:rgba(46,18,25,.9)}
/* scalloped pie-crust edge where the hero meets the page */
.venue--bakery .hero--venue::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:22px;z-index:3;pointer-events:none;background:radial-gradient(circle at 50% 100%,#FFF7EC 0 19px,transparent 20px) 0 0/44px 22px repeat-x}
/* sprinkles drift down, steam rises, the bakery stamp turns */
.spr{position:absolute;left:var(--x);top:-4%;width:var(--s);height:calc(var(--s)*.4);border-radius:99px;background:var(--c);opacity:0;animation:sprfall var(--d) linear infinite;animation-delay:var(--o)}
@keyframes sprfall{0%{transform:translate3d(0,-6vh,0) rotate(var(--r));opacity:0}8%{opacity:.85}92%{opacity:.85}100%{transform:translate3d(26px,108vh,0) rotate(calc(var(--r) + 300deg));opacity:0}}
.steam{position:absolute;bottom:0;height:clamp(150px,27vh,270px);width:auto;fill:none;stroke:rgba(255,255,255,.72);stroke-width:5;stroke-linecap:round;pointer-events:none;filter:blur(1.3px)}
.steam.a{right:clamp(14px,5vw,90px)}
.steam.b{right:clamp(140px,15vw,290px);height:clamp(110px,20vh,200px)}
.steam .wisp{opacity:0;transform-box:fill-box;transform-origin:50% 100%;animation:steamrise var(--d) ease-in-out infinite;animation-delay:var(--o)}
@keyframes steamrise{0%{opacity:0;transform:translateY(34px) scaleX(.9)}35%{opacity:.55}100%{opacity:0;transform:translateY(-46px) scaleX(1.14)}}
.hstamp{position:absolute;right:clamp(16px,5vw,84px);top:clamp(108px,16vh,168px);width:clamp(112px,11vw,168px);height:auto;color:#fff}
.hstamp .st-disc{fill:rgba(46,18,25,.5);stroke:rgba(255,255,255,.6);stroke-width:1.4}
.hstamp .st-ring{fill:none;stroke:rgba(255,255,255,.42);stroke-width:1;stroke-dasharray:2 5}
.hstamp .st-text{font:600 16px/1 "Inter",system-ui,sans-serif;fill:#fff}
.hstamp .st-icon{fill:none;stroke:var(--icing);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.hstamp .st-spin{transform-box:view-box;transform-origin:50% 50%;animation:stampspin 52s linear infinite}
@keyframes stampspin{to{transform:rotate(360deg)}}
/* section markers and dividers */
.venue--bakery .eyebrow::before{width:15px;height:15px;border-radius:0;background:var(--accent);-webkit-mask:var(--ico-concha) center/contain no-repeat;mask:var(--ico-concha) center/contain no-repeat;flex:none}
.venue--bakery .feature .eyebrow::before,.venue--bakery .contact .eyebrow::before{background:var(--icing)}
.venue--bakery .feature .eyebrow,.venue--bakery .contact .eyebrow{color:#F6DDE2}
.venue--bakery .feature p{color:#F6E6E0}
.orn--bakery{color:var(--crust)}
.orn--bakery .orn-l,.orn--bakery .orn-r{flex:1;max-width:320px;height:8px;background:radial-gradient(circle,currentColor 2.2px,transparent 2.7px) 0 50%/12px 8px repeat-x}
.orn--bakery .orn-l{-webkit-mask:linear-gradient(90deg,transparent,#000 70%);mask:linear-gradient(90deg,transparent,#000 70%)}
.orn--bakery .orn-r{-webkit-mask:linear-gradient(270deg,transparent,#000 70%);mask:linear-gradient(270deg,transparent,#000 70%)}
.orn--bakery .concha{width:42px;height:42px;flex:none;background:var(--accent);-webkit-mask:var(--ico-concha) center/contain no-repeat;mask:var(--ico-concha) center/contain no-repeat}
.orn--bakery .wheat{width:30px;height:30px;flex:none;background:currentColor;-webkit-mask:var(--ico-wheat) center/contain no-repeat;mask:var(--ico-wheat) center/contain no-repeat;transform:rotate(-26deg)}
.orn--bakery .wheat.r{transform:scaleX(-1) rotate(-26deg)}
/* facts card and glance card: white cards with a piped-bead top edge */
.venue--bakery .facts-grid{background:#fff;border:1px solid var(--v-line);border-radius:22px;box-shadow:0 18px 46px rgba(150,70,50,.1)}
.venue--bakery .glance{background:#fff;border:1px solid var(--v-line);border-radius:22px;box-shadow:0 22px 50px rgba(150,70,50,.12);position:relative;overflow:hidden}
.venue--bakery .glance::before{content:"";position:absolute;left:0;right:0;top:0;height:9px;background:radial-gradient(circle,var(--accent) 2.4px,transparent 2.9px) 0 50%/12px 9px repeat-x}
/* services: wide rounded frames, a scalloped number sticker and a dotted "stitch" line inside the photo */
.venue--bakery .showcase--rows .show-media{aspect-ratio:3/2;border-radius:30px;box-shadow:0 24px 50px rgba(120,50,40,.16)}
.venue--bakery .showcase--rows .show-body{border-top:0;padding-top:0}
.venue--bakery .show-n{display:none}
.venue--bakery .show-big{display:grid;place-items:center;position:absolute;left:-16px;top:-16px;width:78px;height:78px;z-index:4;background:var(--accent);color:#fff;font:400 30px/1 var(--serif);-webkit-mask:var(--scallop) center/100% 100% no-repeat;mask:var(--scallop) center/100% 100% no-repeat;transform:rotate(-9deg);transition:transform .5s cubic-bezier(.3,1.4,.4,1);pointer-events:none}
.venue--bakery .showcase--rows .show-card:nth-child(even) .show-big{left:auto;right:-16px;transform:rotate(9deg)}
.venue--bakery .show-card:hover .show-big{transform:rotate(6deg) scale(1.07)}
.venue--bakery .show-media-wrap::after{content:"";position:absolute;inset:11px;border:2px dotted rgba(255,255,255,.8);border-radius:22px;pointer-events:none;z-index:3}
.venue--bakery .show-link{border-bottom-color:var(--crust)}
/* feature: cocoa-to-raspberry panel, photo cut with a scalloped cookie cutter on a slowly turning halo */
.venue--bakery .feature{background:radial-gradient(60% 90% at 90% 10%,rgba(248,201,211,.22),transparent 62%),radial-gradient(50% 70% at 5% 100%,rgba(217,153,59,.2),transparent 65%),linear-gradient(135deg,#2E1219,#5A1F33 55%,#8E2C4B);color:#fff;border-radius:34px;position:relative;overflow:hidden}
.venue--bakery .feature-grid{grid-template-columns:minmax(0,1fr) minmax(0,.8fr)}
.venue--bakery .feature .detail-photo-slot{max-width:440px;width:100%;margin-inline:auto;position:relative}
.venue--bakery .feature .detail-photo-slot::before{content:"";position:absolute;inset:-20px;background:rgba(248,201,211,.2);-webkit-mask:var(--scallop) center/100% 100% no-repeat;mask:var(--scallop) center/100% 100% no-repeat;animation:stampspin 70s linear infinite;pointer-events:none}
.venue--bakery .feature .business-photo{aspect-ratio:1/1;overflow:hidden;position:relative;border-radius:0;-webkit-mask:var(--scallop) center/100% 100% no-repeat;mask:var(--scallop) center/100% 100% no-repeat}
.venue--bakery .feature .business-photo>img{position:absolute;inset:0;height:100%!important;width:100%;aspect-ratio:auto!important;border-radius:0!important;object-fit:cover}
.venue--bakery .collage .business-photo{border-radius:22px;box-shadow:0 14px 34px rgba(120,50,40,.14)}
/* steps: piped-bead line, scalloped markers that turn raspberry as they are reached */
.venue--bakery .steps-panel{background:linear-gradient(135deg,rgba(255,253,248,.94),rgba(253,236,222,.82))!important;border:1px solid var(--v-line);border-radius:36px;box-shadow:0 24px 60px rgba(120,50,40,.08)}
.venue--bakery .vtl::before{left:32px;width:6px;background:radial-gradient(circle,var(--crust) 2.5px,transparent 3px) 50% 0/6px 14px repeat-y}
.venue--bakery .vtl-n{border:0;border-radius:0;background:var(--icing);color:var(--v-ink);font-family:var(--serif);font-style:normal;font-size:28px;box-shadow:none;-webkit-mask:var(--scallop) center/100% 100% no-repeat;mask:var(--scallop) center/100% 100% no-repeat;transition:background .6s,color .6s,transform .7s cubic-bezier(.3,1.4,.4,1)}
.venue--bakery .vtl-i.in .vtl-n{background:var(--accent);color:#fff;transform:rotate(-8deg) scale(1.05)}
.venue--bakery .review-card{background:#fff;border:1px solid var(--v-line);border-radius:22px;box-shadow:0 14px 34px rgba(120,50,40,.07)}
/* contact + footer */
.venue--bakery .contact{background:radial-gradient(60% 90% at 100% 0%,rgba(248,201,211,.3),transparent 60%),radial-gradient(40% 60% at 0% 100%,rgba(217,153,59,.22),transparent 70%),linear-gradient(135deg,#3A1620,#7A2640 58%,#B03357);border-radius:34px;position:relative;overflow:hidden}
.venue--bakery .contact>.wrap{position:relative;z-index:1}
.venue--bakery .contact::before,.venue--bakery .contact::after{content:"";position:absolute;background:#fff;opacity:.09;pointer-events:none}
.venue--bakery .contact::before{width:240px;height:240px;right:4%;top:6%;-webkit-mask:var(--ico-concha) center/contain no-repeat;mask:var(--ico-concha) center/contain no-repeat}
.venue--bakery .contact::after{width:120px;height:120px;right:27%;bottom:6%;transform:rotate(18deg);-webkit-mask:var(--ico-wheat) center/contain no-repeat;mask:var(--ico-wheat) center/contain no-repeat}
.venue--bakery .footer p{color:#D9BFC3}
.venue--bakery .footer .footer-h{color:#E8B9C4}
.venue--bakery .footer .footer-bottom p{color:#C79DA6}
@media(max-width:1100px){.steam.b{display:none}}
@media(max-width:860px){.venue--bakery .showcase--rows .show-card:nth-child(even) .show-big{left:-16px;right:auto;transform:rotate(-9deg)}.venue--bakery .feature-grid{grid-template-columns:1fr}}
@media(max-width:760px){.hstamp{display:none}.steam.a{right:6%;height:150px}.spr:nth-child(n+9){display:none}.venue--bakery .hero--venue::after{height:16px;background:radial-gradient(circle at 50% 100%,#FFF7EC 0 13.5px,transparent 14.5px) 0 0/32px 16px repeat-x}.venue--bakery .show-big{width:64px;height:64px;font-size:25px}}
@media(prefers-reduced-motion:reduce){.spr{display:none}.steam .wisp{animation:none;opacity:.32}.hstamp .st-spin,.venue--bakery .feature .detail-photo-slot::before{animation:none}.venue--bakery .hero-video{background:transparent}.venue--bakery .vtl-n,.venue--bakery .show-big{transition:none}}

/* ===== Hall theme (De Gloriana): black and gold gala. A swaying chandelier with twinkling crystals, a slow light beam, a gold art-deco frame, diamond dividers, Roman-numeral diamond badges ===== */
.venue--hall{--serif:"Bodoni Moda","Cormorant Garamond",Georgia,"Times New Roman",serif;--gold:#D4A02E;--gold-l:#F0D48A;--gold-d:#9A6F17;--champ:#F4EBD9;--star:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 0c.9 7.4 4.6 11.1 12 12-7.4.9-11.1 4.6-12 12-.9-7.4-4.6-11.1-12-12C7.4 11.1 11.1 7.4 12 0z'/%3E%3C/svg%3E");--ico-gem:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 8h24l8 11-20 23L4 19z'/%3E%3Cpath d='M4 19h40M17 8l-5 11 12 23M31 8l5 11-12 23'/%3E%3C/svg%3E");--ico-chand:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M24 2v8'/%3E%3Cpath d='M20 12h8l-2-3h-4z'/%3E%3Cpath d='M24 12v24'/%3E%3Cpath d='M24 17C17 17 12 20 10 26'/%3E%3Cpath d='M24 17C31 17 36 20 38 26'/%3E%3Cpath d='M24 25C13 25 6 31 5 39'/%3E%3Cpath d='M24 25C35 25 42 31 43 39'/%3E%3Ccircle cx='10' cy='24' r='1.800' fill='%23000'/%3E%3Ccircle cx='38' cy='24' r='1.800' fill='%23000'/%3E%3Ccircle cx='5' cy='37' r='1.800' fill='%23000'/%3E%3Ccircle cx='43' cy='37' r='1.800' fill='%23000'/%3E%3Cpath d='M24 36l-3 5 3 6 3-6z' fill='%23000'/%3E%3C/svg%3E");--swag:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='44' viewBox='0 0 72 44'%3E%3Cpath d='M0 0Q36 52 72 0Z' fill='rgba(212,160,46,.14)' stroke='rgba(240,212,138,.55)' stroke-width='1.2'/%3E%3Cpath d='M0 0Q36 34 72 0' fill='none' stroke='rgba(240,212,138,.3)' stroke-width='1'/%3E%3C/svg%3E");
background:linear-gradient(180deg,#100D09 0%,#15100A 42%,#0F0C08 100%)}
body:has(.venue--hall){background:#100D09}
.venue--hall .rule{display:none}
.venue--hall .hero--venue h1{font-family:var(--serif);font-weight:400;letter-spacing:-.02em}
.venue--hall .hero--venue .hl-b{font-weight:400;color:var(--gold-l);text-shadow:0 0 40px rgba(212,160,46,.35)}
.venue--hall .vhero-bg::after{background:linear-gradient(0deg,rgba(10,8,5,.92),rgba(10,8,5,.34) 52%,rgba(10,8,5,.5)),radial-gradient(60% 50% at 78% 0%,rgba(240,212,138,.18),transparent 70%)}
.venue--hall .hero--venue .kicker{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px}
.venue--hall .hero--venue .kicker::before{content:"";width:30px;height:30px;flex:none;background:var(--gold-l);-webkit-mask:var(--ico-gem) center/contain no-repeat;mask:var(--ico-gem) center/contain no-repeat}
.venue--hall .hero--venue .kicker-type{background:rgba(212,160,46,.16);border:1px solid rgba(240,212,138,.55)}
.venue--hall .vbar.scrolled{background:rgba(10,8,5,.9)}
.hframe{position:absolute;inset:clamp(10px,1.6vw,22px);border:1px solid rgba(240,212,138,.5);pointer-events:none}
.hframe::before{content:"";position:absolute;inset:7px;border:1px solid rgba(240,212,138,.24)}
.hframe i{position:absolute;width:10px;height:10px;background:var(--gold);transform:rotate(45deg)}
.hframe .c1{left:-6px;top:-6px}.hframe .c2{right:-6px;top:-6px}.hframe .c3{left:-6px;bottom:-6px}.hframe .c4{right:-6px;bottom:-6px}
.hbeam{position:absolute;inset:-10% -25%;background:linear-gradient(104deg,transparent 42%,rgba(240,212,138,.15) 50%,transparent 58%);animation:hbeam 18s ease-in-out infinite alternate}
@keyframes hbeam{from{transform:translateX(-16%)}to{transform:translateX(16%)}}
.hglow{position:absolute;right:clamp(0px,6vw,110px);top:-8%;width:clamp(260px,30vw,520px);aspect-ratio:1;background:radial-gradient(circle,rgba(255,226,150,.36),transparent 65%);animation:hglow 6s ease-in-out infinite alternate}
@keyframes hglow{from{opacity:.55}to{opacity:.95}}
.chand{position:absolute;top:0;right:clamp(24px,9vw,150px);width:clamp(150px,16vw,250px);height:auto;overflow:visible;color:var(--gold-l);transform-origin:50% 0;animation:chsway 9s ease-in-out infinite alternate}
@keyframes chsway{from{transform:rotate(-1.600deg)}to{transform:rotate(1.800deg)}}
.chand .chain,.chand .arm,.chand .thr{fill:none;stroke:currentColor;stroke-width:1.600;stroke-linecap:round;stroke-linejoin:round}
.chand .bead{fill:currentColor}
.chand .cdl{fill:#F4EBD9;opacity:.92}
.chand .flm{fill:#FFE9A8;transform-box:fill-box;transform-origin:50% 100%;animation:flick 3.2s ease-in-out infinite;animation-delay:calc(var(--i)*-.37s)}
.chand .flg{fill:rgba(255,211,107,.3);transform-box:fill-box;transform-origin:50% 50%;animation:flick 3.2s ease-in-out infinite;animation-delay:calc(var(--i)*-.37s)}
@keyframes flick{0%,100%{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}
.chand .gem{fill:rgba(255,248,225,.85);stroke:currentColor;stroke-width:.8;animation:gemtw 4.6s ease-in-out infinite;animation-delay:calc(var(--i)*-.29s)}
@keyframes gemtw{0%,100%{opacity:.5}50%{opacity:1}}
.venue--hall .spark{background:var(--gold-l)}
.venue--hall .eyebrow{color:var(--gold-l);letter-spacing:.2em}
.venue--hall .eyebrow::before{width:9px;height:9px;border-radius:0;background:var(--gold);transform:rotate(45deg);flex:none}
.orn--hall{color:var(--gold)}
.orn--hall .orn-l,.orn--hall .orn-r{flex:1;max-width:340px;height:1px;background:linear-gradient(90deg,transparent,currentColor)}
.orn--hall .orn-r{background:linear-gradient(270deg,transparent,currentColor)}
.orn--hall .dia{width:8px;height:8px;flex:none;background:currentColor;transform:rotate(45deg)}
.orn--hall .chd{width:44px;height:44px;flex:none;background:var(--gold-l);-webkit-mask:var(--ico-chand) center/contain no-repeat;mask:var(--ico-chand) center/contain no-repeat}
.venue--hall .facts-grid{background:var(--v-surface);border:1px solid var(--v-line);border-radius:4px;box-shadow:0 0 0 4px rgba(212,160,46,.06),0 24px 50px rgba(0,0,0,.35)}
.venue--hall .glance{background:var(--v-surface);border:1px solid var(--v-line);border-radius:4px;position:relative;overflow:hidden;box-shadow:0 24px 50px rgba(0,0,0,.35)}
.venue--hall .glance::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),var(--gold-l),var(--gold),transparent)}
/* services: gold offset frame behind each photo, Roman-numeral diamond badge */
.venue--hall .showcase{counter-reset:sv}
.venue--hall .show-card{counter-increment:sv}
.venue--hall .showcase--rows .show-media{position:relative;z-index:1;aspect-ratio:3/2;border-radius:2px;box-shadow:0 26px 54px rgba(0,0,0,.5)}
.venue--hall .show-media-wrap::before{content:"";position:absolute;inset:14px -14px -14px 14px;border:1px solid var(--gold);z-index:0;pointer-events:none}
.venue--hall .showcase--rows .show-card:nth-child(even) .show-media-wrap::before{inset:14px 14px -14px -14px}
.venue--hall .show-n{display:none}
.venue--hall .show-big{display:grid;place-items:center;position:absolute;left:-22px;top:-22px;width:56px;height:56px;z-index:4;background:#0F0C08;border:1px solid var(--gold);transform:rotate(45deg);font-size:0;color:var(--gold-l);pointer-events:none;box-shadow:0 0 0 4px #0F0C08}
.venue--hall .show-big::before{content:counter(sv,upper-roman);font:400 20px/1 var(--serif);letter-spacing:.04em;transform:rotate(-45deg)}
.venue--hall .showcase--rows .show-card:nth-child(even) .show-big{left:auto;right:-22px}
.venue--hall .show-link{border-bottom-color:var(--gold)}
/* feature: black panel with a draped-curtain edge and an arched photo */
.venue--hall .feature{background:radial-gradient(60% 90% at 85% 8%,rgba(240,212,138,.2),transparent 62%),linear-gradient(160deg,#0A0806,#171008 60%,#241709);color:#F4EBD9;border:1px solid rgba(212,160,46,.35);border-radius:6px;position:relative;overflow:hidden}
.venue--hall .feature::before{content:"";position:absolute;left:0;right:0;top:0;height:44px;background:var(--swag) 0 0/72px 44px repeat-x;pointer-events:none}
.venue--hall .feature .section{padding-top:96px}
.venue--hall .feature-grid{grid-template-columns:minmax(0,1fr) minmax(0,.78fr)}
.venue--hall .feature .eyebrow{color:var(--gold-l)}
.venue--hall .feature p{color:#E8DEC8}
.venue--hall .feature .detail-photo-slot{max-width:400px;width:100%;margin-inline:auto;position:relative}
.venue--hall .feature .detail-photo-slot::before{content:"";position:absolute;inset:-14px;border:1px solid var(--gold);border-radius:999px 999px 6px 6px;pointer-events:none}
.venue--hall .feature .business-photo{aspect-ratio:4/5;border-radius:999px 999px 4px 4px;overflow:hidden;position:relative}
.venue--hall .feature .business-photo>img{position:absolute;inset:0;height:100%!important;width:100%;aspect-ratio:auto!important;border-radius:0!important;object-fit:cover}
.venue--hall .collage .business-photo{border-radius:2px;box-shadow:0 0 0 1px rgba(212,160,46,.4),0 18px 40px rgba(0,0,0,.4)}
/* steps: gold line, diamond markers with Roman numerals that light up when reached */
.venue--hall .steps-panel{background:linear-gradient(135deg,rgba(26,21,16,.92),rgba(16,13,9,.6))!important;border:1px solid var(--v-line);border-radius:6px}
.venue--hall .vtl{counter-reset:st}
.venue--hall .vtl-i{counter-increment:st}
.venue--hall .vtl::before{background:linear-gradient(180deg,var(--gold),rgba(212,160,46,.12))}
.venue--hall .vtl-n{width:46px;height:46px;margin:12px 0 0 12px;border-radius:0;transform:rotate(45deg);border:1px solid var(--gold);background:#0F0C08;color:var(--gold-l);font-size:0;box-shadow:none;transition:background .6s,color .6s,box-shadow .6s}
.venue--hall .vtl-n::before{content:counter(st,upper-roman);font:400 19px/1 var(--serif);transform:rotate(-45deg)}
.venue--hall .vtl-i.in .vtl-n{background:var(--gold);color:#16100A;border-color:var(--gold-l);box-shadow:0 0 22px rgba(212,160,46,.45)}
.venue--hall .review-card{background:var(--v-surface);border:1px solid var(--v-line);border-radius:4px;box-shadow:none}
.venue--hall .contact{--accent-fg:#F4EBD9;color:#F4EBD9;background:radial-gradient(60% 90% at 100% 0%,rgba(240,212,138,.2),transparent 60%),linear-gradient(135deg,#0A0806,#1B1209 60%,#2A1B0A);border:1px solid rgba(212,160,46,.4);border-radius:6px;position:relative;overflow:hidden}
.venue--hall .contact>.wrap{position:relative;z-index:1}
.venue--hall .contact::before,.venue--hall .contact::after{content:"";position:absolute;background:var(--gold-l);opacity:.09;pointer-events:none;-webkit-mask:var(--ico-gem) center/contain no-repeat;mask:var(--ico-gem) center/contain no-repeat}
.venue--hall .contact::before{right:4%;top:6%;width:240px;height:240px}
.venue--hall .contact::after{right:26%;bottom:8%;width:110px;height:110px;transform:rotate(-12deg)}
.venue--hall .contact .section>.eyebrow{color:var(--gold-l)}
.venue--hall .contact .button{background:var(--gold);color:#16100A;border-color:var(--gold)}
.venue--hall .contact .button.secondary{background:transparent;color:#F4EBD9;border:1px solid rgba(244,235,217,.55)}
.venue--hall .footer p{color:#CDBF9F}
.venue--hall .footer .footer-h{color:var(--gold)}
@media(max-width:860px){.venue--hall .feature-grid{grid-template-columns:1fr}.venue--hall .showcase--rows .show-card:nth-child(even) .show-big{left:-22px;right:auto}.venue--hall .show-media-wrap::before,.venue--hall .showcase--rows .show-card:nth-child(even) .show-media-wrap::before{inset:10px -8px -10px 10px}}
@media(max-width:760px){.chand,.hglow{display:none}.hframe{inset:8px}.venue--hall .spark:nth-child(n+7){display:none}.venue--hall .feature .section{padding-top:80px}}
@media(prefers-reduced-motion:reduce){.hbeam,.hglow,.chand,.chand .flm,.chand .flg,.chand .gem{animation:none}.hbeam{display:none}.venue--hall .vtl-n{transition:none}}

/* ===== Party theme (Sky Party Rentals): sky blue, pennant bunting, balloons, confetti, drifting clouds ===== */
.venue--party{--serif:"Fredoka","Nunito",system-ui,sans-serif;--sky:#139DB8;--sun:#FFC93C;--coral:#FF6F83;--lilac:#A98BFF;--navy:#0E3340;--ico-balloon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M24 2c-8.500 0-15 6.500-15 15 0 9 7.500 16 15 20 7.500-4 15-11 15-20C39 8.500 32.500 2 24 2z' fill='%23000'/%3E%3Cpath d='M24 36l-3.500 4.500h7z' fill='%23000'/%3E%3Cpath d='M24 40.500c-3.500 2.500 3.500 4 0 6.500' fill='none' stroke='%23000' stroke-width='1.800' stroke-linecap='round'/%3E%3C/svg%3E");--cloud:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 80'%3E%3Cg fill='%23fff'%3E%3Ccircle cx='44' cy='52' r='22'/%3E%3Ccircle cx='82' cy='40' r='30'/%3E%3Ccircle cx='126' cy='46' r='26'/%3E%3Ccircle cx='160' cy='56' r='18'/%3E%3Crect x='30' y='52' width='146' height='22' rx='11'/%3E%3C/g%3E%3C/svg%3E");--bunt:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='144' height='26' viewBox='0 0 144 26'%3E%3Cpath d='M0 3H144' stroke='rgba(14,51,64,.45)' stroke-width='1.500'/%3E%3Cpath d='M5 3h26L18 23z' fill='%23139DB8'/%3E%3Cpath d='M41 3h26L54 23z' fill='%23FFC93C'/%3E%3Cpath d='M77 3h26L90 23z' fill='%23FF6F83'/%3E%3Cpath d='M113 3h26L126 23z' fill='%23A98BFF'/%3E%3C/svg%3E");
background:linear-gradient(180deg,#EAF8FC 0%,#F4FBF6 38%,#FFF8EC 72%,#EAF8FC 100%)}
body:has(.venue--party){background:#EAF8FC}
.venue--party .rule{display:none}
.venue--party .hero--venue h1{font-family:var(--serif);font-weight:500;letter-spacing:-.02em}
.venue--party .hero--venue .hl-b{font-style:normal;font-weight:500;color:#FFD76A;font-size:1em;letter-spacing:-.02em;text-shadow:0 0 36px rgba(255,201,60,.35)}
.venue--party .vhero-bg::after{background:linear-gradient(0deg,rgba(7,36,48,.9),rgba(7,36,48,.28) 54%,rgba(7,36,48,.45)),linear-gradient(90deg,rgba(7,36,48,.55),transparent 62%)}
.venue--party .hero--venue .kicker{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px}
.venue--party .hero--venue .kicker::before{content:"";width:30px;height:30px;flex:none;background:#FFD76A;-webkit-mask:var(--ico-balloon) center/contain no-repeat;mask:var(--ico-balloon) center/contain no-repeat}
.venue--party .hero--venue .kicker-type{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.5)}
.venue--party .vbar.scrolled{background:rgba(9,48,62,.9)}
.bunt{position:absolute;left:0;top:clamp(86px,12vh,118px);width:100%;height:clamp(64px,9vw,120px);pointer-events:none;overflow:visible}
.bunt .str{fill:none;stroke:rgba(255,255,255,.78);stroke-width:2}
.bunt .pen{transform-box:fill-box;transform-origin:50% 0;animation:pensway 4.6s ease-in-out infinite alternate;animation-delay:calc(var(--i)*-.45s)}
@keyframes pensway{from{transform:rotate(-5deg)}to{transform:rotate(5deg)}}
.bln{position:absolute;left:var(--x);bottom:-30%;width:var(--s);height:calc(var(--s)*1.22);margin-left:calc(var(--s)*-.5);border-radius:50% 50% 48% 48%/58% 58% 42% 42%;background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.75) 0 7%,transparent 22%),radial-gradient(circle at 60% 72%,rgba(0,0,0,.12),transparent 55%),var(--c);box-shadow:inset -6px -8px 14px rgba(0,0,0,.14);will-change:transform;animation:blnrise var(--d) linear infinite;animation-delay:var(--o)}
.bln::after{content:"";position:absolute;left:50%;bottom:-7px;width:10px;height:9px;margin-left:-5px;background:var(--c);clip-path:polygon(50% 0,100% 100%,0 100%);background-image:linear-gradient(rgba(0,0,0,.14),rgba(0,0,0,.14))}
.bln b{position:absolute;left:50%;top:calc(100% + 6px);width:1.500px;height:calc(var(--s)*1.5);margin-left:-.5px;background:linear-gradient(rgba(255,255,255,.8),rgba(255,255,255,.1))}
@keyframes blnrise{0%{transform:translate3d(0,0,0) rotate(-3deg)}25%{transform:translate3d(var(--sway),-34vh,0) rotate(3deg)}50%{transform:translate3d(calc(var(--sway)*-.5),-72vh,0) rotate(-3deg)}75%{transform:translate3d(var(--sway),-110vh,0) rotate(3deg)}100%{transform:translate3d(0,-148vh,0) rotate(-3deg)}}
.cft{position:absolute;left:var(--x);top:-4%;width:var(--s);height:calc(var(--s)*.5);background:var(--c);opacity:0;will-change:transform;animation:cftfall var(--d) linear infinite;animation-delay:var(--o)}
.cft.sh1{height:var(--s);border-radius:50%}
.cft.sh2{width:calc(var(--s)*.5);height:calc(var(--s)*1.4);border-radius:2px}
@keyframes cftfall{0%{transform:translate3d(0,-6vh,0) rotate(0);opacity:0}8%{opacity:.9}92%{opacity:.9}100%{transform:translate3d(30px,108vh,0) rotate(540deg);opacity:0}}
.venue--party .eyebrow::before{width:14px;height:16px;border-radius:0;background:var(--coral);-webkit-mask:var(--ico-balloon) center/contain no-repeat;mask:var(--ico-balloon) center/contain no-repeat;flex:none}
.venue--party .feature .eyebrow::before,.venue--party .contact .eyebrow::before{background:var(--sun)}
.venue--party .feature .eyebrow,.venue--party .contact .eyebrow{color:#E6F7FB}
.venue--party .feature p{color:#EAF8FC}
.orn--party{color:var(--sky)}
.orn--party .orn-l,.orn--party .orn-r{flex:1;max-width:340px;height:26px;background:var(--bunt) 0 0/144px 26px repeat-x}
.orn--party .orn-l{-webkit-mask:linear-gradient(90deg,transparent,#000 60%);mask:linear-gradient(90deg,transparent,#000 60%)}
.orn--party .orn-r{-webkit-mask:linear-gradient(270deg,transparent,#000 60%);mask:linear-gradient(270deg,transparent,#000 60%)}
.orn--party .bli{width:36px;height:36px;flex:none;background:var(--coral);-webkit-mask:var(--ico-balloon) center/contain no-repeat;mask:var(--ico-balloon) center/contain no-repeat}
.venue--party .facts-grid{background:#fff;border:1px solid var(--v-line);border-radius:26px;box-shadow:0 18px 46px rgba(19,157,184,.12)}
.venue--party .glance{background:#fff;border:1px solid var(--v-line);border-radius:26px;box-shadow:0 22px 50px rgba(19,157,184,.14);position:relative;overflow:hidden}
.venue--party .glance::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:linear-gradient(90deg,var(--sky) 0 25%,var(--sun) 25% 50%,var(--coral) 50% 75%,var(--lilac) 75%)}
/* services: white-bordered photo frames, a colored number badge on the outer corner and a balloon bunch on the inner one */
.venue--party .showcase--rows .show-media{aspect-ratio:3/2;border-radius:30px;border:6px solid #fff;box-shadow:0 24px 50px rgba(14,51,64,.18)}
.venue--party .showcase--rows .show-body{border-top:0;padding-top:0}
.venue--party .show-n{display:none}
.venue--party .show-big{display:grid;place-items:center;position:absolute;left:-14px;top:-14px;width:62px;height:62px;border-radius:50%;z-index:4;background:var(--coral);color:#fff;border:4px solid #fff;font:600 24px/1 var(--serif);transform:rotate(-8deg);box-shadow:0 8px 18px rgba(255,111,131,.35);pointer-events:none}
.venue--party .showcase--rows .show-card:nth-child(2) .show-big{background:var(--sun);color:var(--navy);box-shadow:0 8px 18px rgba(255,201,60,.4)}
.venue--party .showcase--rows .show-card:nth-child(3) .show-big{background:var(--sky);box-shadow:0 8px 18px rgba(19,157,184,.35)}
.venue--party .showcase--rows .show-card:nth-child(even) .show-big{left:auto;right:-14px;transform:rotate(8deg)}
.venue--party .show-media-wrap::after{content:"";position:absolute;right:-18px;top:-30px;width:78px;height:78px;z-index:3;pointer-events:none;background:radial-gradient(circle at 24px 40px,var(--coral) 0 17px,transparent 18px),radial-gradient(circle at 50px 24px,var(--sun) 0 19px,transparent 20px),radial-gradient(circle at 56px 52px,var(--sky) 0 16px,transparent 17px);filter:drop-shadow(0 6px 6px rgba(0,0,0,.15))}
.venue--party .showcase--rows .show-card:nth-child(even) .show-media-wrap::after{right:auto;left:-18px}
.venue--party .show-link{border-bottom-color:var(--sun)}
/* feature: sky gradient with clouds drifting across, the photo cut as a balloon on a string */
.venue--party .feature{background:radial-gradient(60% 90% at 90% 0%,rgba(255,255,255,.28),transparent 62%),linear-gradient(160deg,#0E7F96,#139DB8 55%,#41BFD6);color:#fff;border-radius:34px;position:relative;overflow:hidden}
.venue--party .feature::before,.venue--party .feature::after{content:"";position:absolute;background:var(--cloud) center/contain no-repeat;opacity:.5;pointer-events:none}
.venue--party .feature::before{width:260px;height:104px;top:10%;left:-300px;animation:cloudmove 70s linear infinite}
.venue--party .feature::after{width:180px;height:72px;top:64%;left:-220px;opacity:.38;animation:cloudmove 95s linear infinite;animation-delay:-40s}
@keyframes cloudmove{from{transform:translateX(0)}to{transform:translateX(calc(100vw + 360px))}}
.venue--party .feature .section{position:relative;z-index:1}
.venue--party .feature-grid{grid-template-columns:minmax(0,1fr) minmax(0,.7fr)}
.venue--party .feature .detail-photo-slot{max-width:340px;width:100%;margin:0 auto 76px;position:relative;animation:blnbob 6s ease-in-out infinite alternate}
@keyframes blnbob{from{transform:translateY(0) rotate(-1deg)}to{transform:translateY(-10px) rotate(1deg)}}
.venue--party .feature .business-photo{aspect-ratio:4/5;border-radius:50% 50% 50% 50%/58% 58% 42% 42%;overflow:hidden;position:relative;border:6px solid #fff;box-shadow:0 24px 50px rgba(0,40,55,.35)}
.venue--party .feature .business-photo>img{position:absolute;inset:0;height:100%!important;width:100%;aspect-ratio:auto!important;border-radius:0!important;object-fit:cover}
.venue--party .feature .detail-photo-slot::before{content:"";position:absolute;left:50%;top:calc(100% - 6px);width:22px;height:16px;margin-left:-11px;background:#fff;clip-path:polygon(50% 0,100% 100%,0 100%);z-index:2}
.venue--party .feature .detail-photo-slot::after{content:"";position:absolute;left:50%;top:100%;width:2px;height:76px;margin-left:-1px;background:linear-gradient(rgba(255,255,255,.9),rgba(255,255,255,.15))}
.venue--party .collage .business-photo{border-radius:22px;box-shadow:0 14px 34px rgba(14,51,64,.14)}
.venue--party .feature .business-photo>img{transform:scale(1.28);transform-origin:50% 35%}
.venue--party .vbrand{font-family:var(--serif);font-weight:600}
.venue--party .vbrand em{font-family:var(--serif);font-style:normal;font-weight:600;font-size:1em;color:#FFD76A}
/* steps: balloon markers on a dashed string that float up and take their color when reached */
.venue--party .steps-panel{background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(222,244,250,.8))!important;border:1px solid var(--v-line);border-radius:36px;box-shadow:0 24px 60px rgba(14,51,64,.08)}
.venue--party .vtl::before{left:35px;width:2px;background:repeating-linear-gradient(180deg,rgba(19,157,184,.5) 0 6px,transparent 6px 12px)}
.venue--party .vtl-n{width:58px;height:68px;margin:0 0 0 6px;border:0;border-radius:50% 50% 48% 48%/58% 58% 42% 42%;background:rgba(19,157,184,.16);color:var(--navy);font:600 24px/1 var(--serif);box-shadow:inset -5px -7px 10px rgba(0,0,0,.06);transition:background .6s,color .6s,transform .8s cubic-bezier(.3,1.4,.4,1)}
.venue--party .vtl-n::before{content:"";position:absolute;left:24%;top:15%;width:15px;height:22px;border-radius:50%;background:rgba(255,255,255,.55);transform:rotate(25deg)}
.venue--party .vtl-n::after{content:"";position:absolute;left:50%;bottom:-8px;width:12px;height:10px;margin-left:-6px;background:inherit;clip-path:polygon(50% 0,100% 100%,0 100%)}
.venue--party .vtl-i.in .vtl-n{transform:translateY(-8px) rotate(-4deg);color:#fff}
.venue--party .vtl-i:nth-child(1).in .vtl-n{background:var(--coral)}
.venue--party .vtl-i:nth-child(2).in .vtl-n{background:var(--sun);color:var(--navy)}
.venue--party .vtl-i:nth-child(3).in .vtl-n{background:var(--sky)}
.venue--party .review-card{background:#fff;border:1px solid var(--v-line);border-radius:24px;box-shadow:0 14px 34px rgba(14,51,64,.08)}
.venue--party .contact{background:radial-gradient(60% 90% at 100% 0%,rgba(255,255,255,.25),transparent 60%),radial-gradient(40% 60% at 0% 100%,rgba(255,201,60,.25),transparent 70%),linear-gradient(135deg,#0E7F96,#139DB8 60%,#2DB5CE);border-radius:34px;position:relative;overflow:hidden}
.venue--party .contact>.wrap{position:relative;z-index:1}
.venue--party .contact::before,.venue--party .contact::after{content:"";position:absolute;pointer-events:none;opacity:.16;background:#fff}
.venue--party .contact::before{width:300px;height:120px;right:4%;top:5%;-webkit-mask:var(--cloud) center/contain no-repeat;mask:var(--cloud) center/contain no-repeat}
.venue--party .contact::after{width:110px;height:110px;right:27%;bottom:6%;opacity:.12;-webkit-mask:var(--ico-balloon) center/contain no-repeat;mask:var(--ico-balloon) center/contain no-repeat}
@media(max-width:860px){.venue--party .feature-grid{grid-template-columns:1fr}.venue--party .showcase--rows .show-card:nth-child(even) .show-big{left:-14px;right:auto;transform:rotate(-8deg)}.venue--party .showcase--rows .show-card:nth-child(even) .show-media-wrap::after{left:auto;right:-18px}}
@media(max-width:760px){.bunt{top:80px;height:60px}.bln:nth-child(n+5){display:none}.cft:nth-child(n+9){display:none}.venue--party .show-big{width:54px;height:54px;font-size:21px}}
@media(prefers-reduced-motion:reduce){.bln,.cft{display:none}.bunt .pen,.venue--party .feature .detail-photo-slot{animation:none}.venue--party .feature::before{animation:none;left:8%}.venue--party .feature::after{animation:none;left:62%}.venue--party .vtl-n{transition:none}}
/* hero decorations stop animating once the hero is scrolled out of view */
.hero-off .vhero-fx,.hero-off .vhero-fx *,.hero-off .vhero-fx *::before,.hero-off .vhero-fx *::after{animation-play-state:paused!important}
/* "Good to know": thin divider where the grey-dot prompts start after the green-check facts */
.know li.group-start{margin-top:8px}
.know li.group-start::after{content:"";position:absolute;left:0;right:0;top:-13px;border-top:1px dashed color-mix(in srgb,var(--accent-fg) 30%,transparent)}
