:root{--bg: #0e1113;
      --surface: #15191c;
      --surface-2: #1b2024;
      --surface-3: #242a2f;
      --line: rgba(236,240,238,.12);
      --muted-line: rgba(236,240,238,.07);
      --ink: #f4f5f2;
      --muted: #b5bab7;
      --faint: #a2aaa6;
      --red: #b6373c;
      --red-bright: #e06469;
      --red-dark: #76272b;
      --cream: #d8d2c9;
      --gold: #c39b5d;
      --green: #58aa79;
      --warning: #d3a65e;
      --shadow: 0 24px 80px rgba(0,0,0,.34);
      --radius: 20px;
      --serif: "Cinzel", Georgia, serif;
      --sans: "Barlow", system-ui, sans-serif;}
*{box-sizing: border-box;}
[hidden]{display: none !important;}
html{scroll-behavior: smooth; background: var(--bg);}
body{margin: 0; min-width: 320px; color: var(--ink); background: radial-gradient(circle at 82% 6%, rgba(83,95,98,.09), transparent 28%), var(--bg); font-family: var(--sans); -webkit-font-smoothing: antialiased;}
button, input, select{font: inherit;}
button, a{-webkit-tap-highlight-color: transparent;}
button{color: inherit;}
img{display: block; width: 100%;}
a{color: inherit; text-decoration: none;}
::selection{color: white; background: var(--red);}
.grain{position: fixed; inset: 0; z-index: 100; pointer-events: none; opacity: .025; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");}
.private-demo{position: sticky; top: 0; z-index: 90; min-height: 34px; display: flex; align-items: center; color: #f7ded9; border-bottom: 1px solid rgba(255,255,255,.09); background: linear-gradient(90deg,#5a1317,#341012);}
.private-demo .shell{display: flex; align-items: center; justify-content: space-between; gap: 16px; font-size: 9px; letter-spacing: .07em;}
.private-demo strong{display: inline-flex; align-items: center; gap: 7px; font-size: 9px; letter-spacing: .12em; text-transform: uppercase;}
.private-demo i{width: 13px;}
.private-demo span{color: #d6b8b4;}
.demo-chip{display: inline-flex; align-items: center; gap: 7px; width: max-content; margin-top: 12px; padding: 7px 10px; color: #e8c7c4; border: 1px solid rgba(216,91,96,.28); border-radius: 999px; background: rgba(184,32,37,.09); font-size: 8px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase;}
.demo-chip i{width: 13px;}
.shell{width: min(1320px, calc(100% - 32px)); margin: 0 auto;}
.view{display: none; min-height: calc(100vh - 132px); animation: enter .35s ease both;}
.view.active{display: block;}
@keyframes enter{ from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.eyebrow{margin: 0 0 12px; color: var(--red-bright); font-size: 11px; font-weight: 800; letter-spacing: .19em; text-transform: uppercase;}
.section-title{margin: 0; font-family: var(--serif); font-size: clamp(36px, 4vw, 54px); font-weight: 600; line-height: .98; letter-spacing: -.025em;}
.section-copy{max-width: 580px; margin: 13px 0 0; color: var(--muted); font-size: 15px; line-height: 1.7;}
.section-head{display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin-bottom: 28px;}
.text-link{display: inline-flex; align-items: center; gap: 8px; color: var(--cream); background: none; border: 0; padding: 7px 0; cursor: pointer; font-size: 13px; font-weight: 700;}
.text-link:hover{color: white;}
.text-link i{width: 16px;}
.topbar{position: relative; top: 0; z-index: 80; border-bottom: 1px solid var(--muted-line); background: rgba(8,8,8,.96);}
.topbar-inner{height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 28px;}
.brand{display: inline-flex; flex-direction: row; align-items: center; justify-content: flex-start; gap: 12px; min-width: 220px; cursor: pointer; background: none; border: 0; padding: 0; text-align: left;}
.brand-isotype{width: 56px; height: 56px; flex: 0 0 56px; object-fit: contain;}
.brand-copy{min-width: 0; display: inline-flex; flex-direction: column; justify-content: center;}
.brand-wordmark-image{position: relative; display: block; width: 145px; height: 48px; overflow: hidden;}
.brand-wordmark-image img{position: absolute; top: 52%; left: 50%; display: block; width: 145px; max-width: none; height: auto; transform: translate(-50%,-50%); mix-blend-mode: screen;}
.brand-main{font-family: var(--serif); font-size: 23px; font-weight: 700; line-height: .95; letter-spacing: .015em;}
.brand-sub{margin-top: 6px; color: var(--red-bright); font-size: 7px; font-weight: 800; letter-spacing: .42em; text-transform: uppercase;}
.desktop-nav{display: flex; align-items: center; gap: 7px;}
.nav-btn{display: inline-flex; align-items: center; gap: 8px; padding: 11px 14px; color: #aaa49d; background: none; border: 0; border-radius: 12px; cursor: pointer; font-size: 12px; font-weight: 700;}
.nav-btn:hover, .nav-btn.active{color: white; background: rgba(255,255,255,.055);}
.nav-btn i{width: 16px; height: 16px;}
.nav-dropdown{position: relative;}
.nav-dropdown summary{list-style: none;}
.nav-dropdown summary::-webkit-details-marker{display: none;}
.nav-dropdown summary i:last-child{width: 12px; transition: transform .2s ease;}
.nav-dropdown[open] summary{color: white; background: rgba(255,255,255,.055);}
.nav-dropdown[open] summary i:last-child{transform: rotate(180deg);}
.nav-dropdown-panel{position: absolute; z-index: 95; top: calc(100% + 9px); left: 0; width: 230px; display: grid; padding: 9px; border: 1px solid var(--line); border-radius: 14px; background: rgba(18,18,18,.98); box-shadow: var(--shadow);}
.nav-dropdown-panel a, .nav-dropdown-panel button{min-height: 42px; display: flex; align-items: center; padding: 0 12px; color: var(--muted); border: 0; border-radius: 9px; background: transparent; cursor: pointer; font: inherit; font-size: 11px; font-weight: 700; text-align: left;}
.nav-dropdown-panel a:hover, .nav-dropdown-panel button:hover{color: white; background: rgba(255,255,255,.055);}
.top-actions{display: flex; align-items: center; gap: 10px;}
.business-entry{min-height: 40px; display: inline-flex; align-items: center; padding: 0 14px; color: #f0d8d5; border: 1px solid rgba(212,45,50,.34); border-radius: 999px; background: rgba(184,32,37,.1); font-size: 9px; font-weight: 800; white-space: nowrap;}
.business-entry:hover{color: white; border-color: rgba(212,45,50,.65); background: rgba(184,32,37,.18);}
.city-pill{display: inline-flex; align-items: center; gap: 7px; height: 42px; padding: 0 14px; color: var(--cream); background: transparent; border: 1px solid var(--line); border-radius: 999px; font-size: 11px; font-weight: 700;}
.city-pill i{width: 14px;}
.account-entry{min-height: 40px; display: inline-flex; align-items: center; gap: 8px; padding: 0 14px; color: var(--cream); border: 1px solid var(--line); border-radius: 999px; background: #171515; cursor: pointer; font-size: 10px; font-weight: 800;}
.account-entry:hover{color: white; border-color: rgba(255,255,255,.25);}
.account-entry i{width: 15px;}
.global-search{border-top: 1px solid var(--muted-line); background: rgba(12,12,12,.96);}
.global-search-inner{height: 54px; display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 10px;}
.global-query{min-width: 0; display: flex; align-items: center; gap: 10px;}
.global-query i{width: 17px; color: var(--red-bright);}
.global-query input{width: 100%; color: white; border: 0; outline: 0; background: transparent; font-size: 11px;}
.global-query input::placeholder{color: #6f6a64;}
.global-location{height: 34px; padding: 0 11px; color: var(--cream); border: 1px solid var(--line); border-radius: 999px; background: #171615; font-size: 9px;}
.global-submit{width: 38px; height: 34px; display: grid; place-items: center; border: 0; border-radius: 9px; background: var(--red); cursor: pointer;}
.btn{min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 0 20px; border: 1px solid transparent; border-radius: 12px; cursor: pointer; font-size: 12px; font-weight: 800; transition: transform .2s ease, background .2s ease, border-color .2s ease;}
.btn:hover{transform: translateY(-1px);}
.btn i{width: 17px;}
.btn-primary{color: white; background: var(--red); box-shadow: 0 10px 30px rgba(184,32,37,.18);}
.btn-primary:hover{background: var(--red-bright);}
.btn-dark{background: #171515; border-color: var(--line);}
.btn-dark:hover{border-color: rgba(255,255,255,.22);}
.btn-ghost{background: transparent; border-color: var(--line);}
.btn-ghost:hover{background: rgba(255,255,255,.04);}
.navigation-hub{padding-bottom: 92px;}
.hub-grid{display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px;}
.hub-grid-territories{grid-template-columns: repeat(2,minmax(0,1fr));}
.hub-card{min-height: 220px; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; padding: 28px; color: var(--ink); border: 1px solid var(--line); border-radius: 20px; background: linear-gradient(145deg,var(--surface-2),var(--surface)); transition: transform .2s ease,border-color .2s ease;}
.hub-card:hover{transform: translateY(-2px); border-color: rgba(255,255,255,.22);}
.hub-card-featured{border-color: rgba(212,45,50,.3); background: linear-gradient(145deg,rgba(184,32,37,.16),var(--surface));}
.hub-card > i{width: 25px; height: 25px; margin-bottom: auto; color: var(--red-bright);}
.hub-card span{margin-bottom: auto; color: var(--red-bright); font-size: 9px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase;}
.hub-card h2{margin: 20px 0 8px; font-family: var(--serif); font-size: 34px; line-height: 1;}
.hub-card p{margin: 0; color: var(--muted); font-size: 12px; line-height: 1.65;}
.hub-card strong{display: inline-flex; align-items: center; gap: 8px; margin-top: 18px; font-size: 11px;}
.hub-card strong i{width: 15px;}
.hub-feature{display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 24px; padding: 30px; border: 1px solid var(--line); border-radius: 22px; background: var(--surface);}
.hub-feature > i{width: 36px; height: 36px; color: var(--red-bright);}
.hub-feature h2{margin: 0 0 7px; font-family: var(--serif); font-size: 31px;}
.hub-feature p{max-width: 760px; margin: 0; color: var(--muted); line-height: 1.7;}
.urgent-feature{border-color: rgba(212,45,50,.3); background: linear-gradient(90deg,rgba(184,32,37,.12),var(--surface));}
.hub-actions{display: flex; gap: 12px; margin-top: 24px;}
.map-hub{display: grid; grid-template-columns: .85fr 1.15fr; gap: 18px;}
.map-hub-copy, .map-hub-visual{min-height: 430px; padding: 32px; border: 1px solid var(--line); border-radius: 22px; background: var(--surface);}
.map-hub-copy strong{display: block; margin: 19px 0 8px; font-family: var(--serif); font-size: 33px;}
.map-hub-copy p{margin: 0 0 25px; color: var(--muted); line-height: 1.75;}
.map-hub-visual{position: relative; overflow: hidden; background: radial-gradient(circle at 56% 48%,rgba(184,32,37,.15),transparent 18%),linear-gradient(145deg,#171b1e,#0c0e10);}
.map-hub-visual::before{content: ""; position: absolute; inset: 8% 15%; opacity: .42; background: repeating-linear-gradient(30deg,transparent 0 28px,rgba(255,255,255,.07) 29px 30px),repeating-linear-gradient(115deg,transparent 0 38px,rgba(255,255,255,.05) 39px 40px); clip-path: polygon(23% 0,80% 5%,100% 39%,78% 100%,16% 84%,0 38%);}
.map-point{position: absolute; z-index: 2; display: inline-flex; align-items: center; gap: 7px; color: #eee; font-size: 10px; font-weight: 800;}
.map-point::before{content: ""; width: 10px; height: 10px; border: 3px solid rgba(255,255,255,.65); border-radius: 50%; background: var(--red); box-shadow: 0 0 0 7px rgba(184,32,37,.16);}
.point-barcelona{right: 22%; bottom: 25%;}
.point-girona{right: 20%; top: 23%;}
.point-tarragona{left: 27%; bottom: 18%;}
.point-lleida{left: 22%; top: 37%;}
body:not(.home) .empty-results{display: block;}
.hero{position: relative; min-height: 620px; display: flex; align-items: flex-end; overflow: hidden; border-bottom: 1px solid var(--muted-line);}
.hero-media{position: absolute; inset: 0; background-image: linear-gradient(90deg, rgba(4,4,4,.94) 0%, rgba(4,4,4,.73) 40%, rgba(4,4,4,.18) 76%), linear-gradient(0deg, #080808 0%, transparent 45%), url("https://images.unsplash.com/photo-1703419776762-56bf2020639d?auto=format&fit=crop&q=85&w=2000"); background-position: center; background-size: cover; transform: scale(1.01);}
.hero-media::after{content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 77% 39%, transparent 0 10%, rgba(0,0,0,.14) 45%, rgba(0,0,0,.48));}
.hero-content{position: relative; z-index: 2; padding: 92px 0 72px;}
.status-line{display: inline-flex; align-items: center; gap: 9px; margin-bottom: 20px; color: #c7c0b6; font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;}
.status-dot{position: relative; width: 7px; height: 7px; border-radius: 50%; background: var(--red-bright); box-shadow: 0 0 0 5px rgba(212,45,50,.13);}
.status-dot::after{content: ""; position: absolute; inset: -4px; border: 1px solid rgba(212,45,50,.5); border-radius: 50%; animation: pulse 1.8s infinite;}
@keyframes pulse{ 70%, 100% { transform: scale(2); opacity: 0; } }
.hero h1{max-width: 980px; margin: 0 0 31px; font-family: var(--serif); font-size: clamp(48px, 4.7vw, 68px); font-weight: 600; line-height: 1.02; letter-spacing: -.025em; text-wrap: balance;}
.hero h1 em{display: block; color: var(--red-bright); font-weight: 500;}
.hero-lead{max-width: 560px; margin: 23px 0 30px; color: #c3bdb4; font-size: 15px; line-height: 1.7;}
.search-panel{width: min(1100px, 100%); display: grid; grid-template-columns: 1.22fr .9fr .78fr 1.18fr 112px; background: rgba(17,16,15,.94); border: 1px solid rgba(255,255,255,.14); border-radius: 18px; box-shadow: var(--shadow); backdrop-filter: blur(18px); overflow: hidden;}
.search-field{position: relative; min-width: 0; min-height: 78px; display: flex; flex-direction: column; justify-content: center; padding: 14px 20px 13px; border-right: 1px solid var(--line);}
.search-field label, .search-field > span{display: block; margin-bottom: 7px; color: var(--faint); font-size: 11px; font-weight: 750; letter-spacing: .02em; text-transform: none;}
.search-field select, .search-field input{width: 100%; color: var(--ink); background: transparent; border: 0; outline: 0; font-size: 15px; font-weight: 650; appearance: none;}
.search-field select option{color: white; background: #151414;}
.search-go{width: auto; min-width: 96px; min-height: 62px; display: flex; align-items: center; justify-content: center; gap: 8px; margin: 8px; padding: 0 15px; border: 0; border-radius: 12px; background: var(--red); cursor: pointer; font-size: 12px; font-weight: 800;}
.search-go:hover{background: var(--red-bright);}
.search-go i{width: 19px;}
.trust-row{display: flex; gap: 25px; margin-top: 25px; color: #8d8881; font-size: 10px; font-weight: 600;}
.trust-row span{display: inline-flex; align-items: center; gap: 7px;}
.trust-row i{width: 13px; color: var(--cream);}
.section{padding: 86px 0;}
.section-tight{padding-top: 48px;}
.stats-strip{border-bottom: 1px solid var(--muted-line);}
.stats{display: grid; grid-template-columns: repeat(4,1fr); padding: 20px 0;}
.stat{padding: 7px 24px; border-right: 1px solid var(--muted-line); text-align: center;}
.stat:first-child{padding-left: 0;}
.stat:last-child{border: 0;}
.stat strong{display: block; font-family: var(--serif); font-size: 28px; font-weight: 600;}
.stat span{color: var(--faint); font-size: 9px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;}
.sponsored-section{padding-bottom: 24px;}
.sponsored-note{max-width: 590px;}
.sponsored-grid{display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px;}
.sponsored-card{position: relative; min-height: 390px; overflow: hidden; display: flex; align-items: flex-end; border: 1px solid rgba(255,255,255,.13); border-radius: 20px; background: #151312; cursor: pointer; box-shadow: 0 18px 46px rgba(0,0,0,.25); transition: transform .25s ease, border-color .25s ease;}
.sponsored-card:hover{transform: translateY(-4px); border-color: rgba(255,255,255,.28);}
.sponsored-card > img{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .55s ease;}
.sponsored-card:hover > img{transform: scale(1.035);}
.sponsored-card::after{content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(4,4,4,.98) 0%, rgba(4,4,4,.72) 37%, rgba(4,4,4,.08) 76%), linear-gradient(90deg, rgba(0,0,0,.24), transparent);}
.sponsor-label{position: absolute; z-index: 2; top: 15px; left: 15px; display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; color: #ded8ce; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; background: rgba(7,7,7,.7); backdrop-filter: blur(10px); font-size: 8px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase;}
.sponsor-label i{width: 11px;}
.sponsored-content{position: relative; z-index: 2; width: 100%; padding: 24px;}
.sponsored-content h3{margin: 8px 0 7px; font-family: var(--serif); font-size: 31px; font-weight: 600; line-height: 1;}
.sponsored-content p{margin: 0; color: #aaa39a; font-size: 11px; line-height: 1.55;}
.sponsored-meta{display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 19px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.13); color: var(--cream); font-size: 10px; font-weight: 700;}
.sponsored-meta span{display: inline-flex; align-items: center; gap: 6px;}
.sponsored-meta i{width: 13px; color: var(--red-bright);}
.offer-grid{display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px;}
.offer-card{position: relative; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); cursor: pointer; transition: transform .25s ease, border-color .25s ease;}
.offer-card:hover{transform: translateY(-4px); border-color: rgba(255,255,255,.22);}
.offer-card.featured{grid-column: span 2; display: grid; grid-template-columns: 1.12fr .88fr; min-height: 356px;}
.offer-image{position: relative; height: 210px; overflow: hidden; background: #1d1918;}
.featured .offer-image{height: 100%;}
.offer-image img{height: 100%; object-fit: cover; transition: transform .5s ease;}
.offer-card:hover .offer-image img{transform: scale(1.025);}
.offer-image::after{content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(0,0,0,.7), transparent 55%);}
.offer-top{position: absolute; z-index: 2; top: 14px; left: 14px; right: 14px; display: flex; align-items: center; justify-content: space-between;}
.discount{min-width: 72px; padding: 10px 12px; border-radius: 9px; background: linear-gradient(135deg,var(--red-bright),var(--red-dark)); box-shadow: 0 10px 28px rgba(184,32,37,.38); font-size: 17px; font-weight: 800; line-height: 1; text-align: center;}
.discount small{display: block; margin-top: 5px; color: #ffd6d6; font-size: 7px; letter-spacing: .08em; text-transform: uppercase;}
.like-btn{width: 34px; height: 34px; display: grid; place-items: center; color: white; background: rgba(8,8,8,.58); border: 1px solid rgba(255,255,255,.2); border-radius: 50%; backdrop-filter: blur(10px); cursor: pointer;}
.like-btn i{width: 15px; fill: transparent;}
.like-btn.liked{color: #ff6266;}
.like-btn.liked i{fill: currentColor;}
.offer-body{padding: 19px;}
.featured .offer-body{display: flex; flex-direction: column; justify-content: center; padding: 30px;}
.offer-type{color: var(--red-bright); font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;}
.offer-card h3{margin: 9px 0 7px; font-family: var(--serif); font-size: 31px; font-weight: 600; line-height: 1;}
.featured h3{font-size: 39px;}
.offer-location{display: flex; align-items: center; gap: 6px; color: #c3bbb1; font-size: 11px;}
.offer-location i{width: 12px;}
.offer-capacity{display: inline-flex; align-items: center; gap: 6px; margin-top: 8px; color: #e7dfd5; font-size: 11px; font-weight: 750;}
.offer-capacity i{width: 14px; color: var(--gold);}
.offer-info{display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin: 20px 0; padding: 15px 0; border-block: 1px solid var(--muted-line);}
.offer-info span{color: #8c857d; font-size: 9px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase;}
.offer-info strong{display: block; margin-top: 5px; color: #f3e9dc; font-size: 13px;}
.offer-bottom{display: flex; align-items: flex-end; justify-content: space-between; gap: 12px;}
.countdown-label{color: #938b83; font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;}
.countdown{display: block; margin-top: 4px; color: #ff666a; font-variant-numeric: tabular-nums; font-size: 17px; font-weight: 800;}
.price{text-align: right;}
.old-price{display: block; color: var(--faint); font-size: 9px; text-decoration: line-through;}
.price strong{font-family: var(--serif); font-size: 33px; font-weight: 600; line-height: 1;}
.price small{color: var(--faint); font-size: 8px;}
.agenda-wrap{background: #0c0c0c; border-block: 1px solid var(--muted-line);}
.agenda-list{border-top: 1px solid var(--line);}
.agenda-item{display: grid; grid-template-columns: 92px 1fr 150px 130px 30px; align-items: center; gap: 22px; padding: 22px 8px; border-bottom: 1px solid var(--muted-line); cursor: pointer; transition: background .2s;}
.agenda-item:hover{background: rgba(255,255,255,.025);}
.date-block strong{display: block; font-family: var(--serif); font-size: 35px; font-weight: 600; line-height: .8;}
.date-block span{color: var(--red-bright); font-size: 8px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;}
.agenda-main{display: flex; align-items: center; gap: 16px; min-width: 0;}
.agenda-thumb{width: 62px; height: 62px; flex: 0 0 auto; overflow: hidden; border-radius: 11px;}
.agenda-thumb img{height: 100%; object-fit: cover;}
.agenda-main h4{margin: 0 0 6px; font-family: var(--serif); font-size: 22px; font-weight: 600;}
.agenda-main p, .agenda-meta{margin: 0; color: var(--muted); font-size: 10px;}
.agenda-tag{justify-self: start; padding: 7px 9px; color: var(--cream); border: 1px solid var(--line); border-radius: 999px; font-size: 8px; font-weight: 700;}
.agenda-price{text-align: right;}
.agenda-price strong{font-size: 13px;}
.agenda-price span{display: block; color: var(--faint); font-size: 8px;}
.agenda-item > i{width: 17px; color: var(--faint);}
.agenda-period{margin: 38px 0 10px; padding-bottom: 11px; border-bottom: 1px solid var(--line); font-family: var(--serif); font-size: 29px; font-weight: 600;}
.agenda-period:first-child{margin-top: 0;}
.agenda-location-bar{display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 20px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface);}
.agenda-location-copy strong{display: block; font-size: 10px;}
.agenda-location-copy span{display: block; margin-top: 4px; color: var(--faint); font-size: 8px;}
.agenda-location-select{min-width: 250px; height: 41px; padding: 0 12px; color: white; border: 1px solid var(--line); border-radius: 10px; background: #181716; font-size: 9px;}
.agenda-location-combo{min-width: min(420px,100%); display: grid; grid-template-columns: minmax(0,1fr) 42px; gap: 7px;}
.agenda-location-combo input{min-width: 0; height: 42px; padding: 0 13px; color: white; border: 1px solid var(--line); border-radius: 10px; outline: 0; background: #181716; font-size: 10px;}
.agenda-location-combo input:focus{border-color: rgba(184,32,37,.7);}
.agenda-location-combo button{display: grid; place-items: center; border: 0; border-radius: 10px; background: var(--red); cursor: pointer;}
.agenda-location-combo i{width: 15px;}
.agenda-month-panel[hidden]{display: none;}
.agenda-month-panel.active{animation: agenda-month-in .2s ease-out;}
.agenda-empty-month, .agenda-empty-filter{min-height: 180px; display: grid; place-items: center; align-content: center; gap: 8px; padding: 28px; text-align: center; border: 1px dashed var(--line); border-radius: 16px; background: rgba(255,255,255,.018);}
.agenda-empty-filter[hidden]{display: none;}
.agenda-empty-month i{width: 27px; color: var(--gold);}
.agenda-empty-month strong, .agenda-empty-filter strong{font-family: var(--serif); font-size: 20px;}
.agenda-empty-month span, .agenda-empty-filter span{max-width: 510px; color: var(--muted); font-size: 11px; line-height: 1.55;}
.agenda-month-navigation{display: grid; grid-template-columns: minmax(150px,1fr) auto minmax(150px,1fr); align-items: center; gap: 12px; margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--line);}
.agenda-month-button{min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 16px; color: var(--ink); border: 1px solid var(--line); border-radius: 12px; background: var(--surface-2); cursor: pointer; font-size: 11px; font-weight: 800;}
.agenda-month-button:hover{border-color: rgba(224,100,105,.58); background: #252a2e;}
.agenda-month-button[hidden]{display: none;}
.agenda-month-button i{width: 17px;}
.agenda-month-next{justify-self: end;}
.agenda-month-previous{justify-self: start;}
.agenda-page-status{color: var(--muted); font-size: 10px; font-weight: 750; text-align: center;}
@keyframes agenda-month-in{ from { opacity: .35; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.date-block{min-height: 68px; display: flex; flex-direction: column; justify-content: center; padding-left: 10px; border-left: 2px solid var(--red);}
.date-block strong{font-size: 42px; line-height: .72;}
.date-block span{margin-top: 8px; color: #e4d9ca; font-size: 9px; letter-spacing: .12em;}
.info-badge, .verified-badge{display: inline-flex; align-items: center; gap: 5px; margin-top: 7px; padding: 5px 7px; border-radius: 999px; font-size: 7px; font-weight: 800; text-transform: uppercase;}
.info-badge{color: #a9a29a; border: 1px solid var(--line); background: #171615;}
.verified-badge{color: #cfe5d5; border: 1px solid rgba(99,173,122,.25); background: rgba(99,173,122,.08);}
.info-badge i, .verified-badge i{width: 10px;}
.results-header{display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 26px;}
.results-header h1{max-width: 880px; margin: 0; font-family: var(--serif); font-size: clamp(48px,6vw,72px); font-weight: 600; line-height: .9;}
.results-count{color: var(--muted); font-size: 10px; white-space: nowrap;}
.results-filters{display: grid; grid-template-columns: 1.1fr .8fr .7fr 1fr auto; gap: 1px; margin-bottom: 30px; padding: 6px; border: 1px solid var(--line); border-radius: 16px; background: #121110;}
.results-filter{min-width: 0; padding: 9px 12px; border-right: 1px solid var(--muted-line);}
.results-filter span{display: block; margin-bottom: 5px; color: var(--faint); font-size: 7px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase;}
.results-filter select, .results-filter input{width: 100%; min-width: 0; color: white; border: 0; outline: 0; background: transparent; font-size: 10px;}
.results-filter option{background: #171615;}
.results-apply{min-width: 118px; border: 0; border-radius: 11px; background: var(--red); cursor: pointer; font-size: 9px; font-weight: 800;}
.results-grid{display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px;}
.result-card{overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: var(--surface); cursor: pointer; transition: transform .2s, border-color .2s;}
.result-card:hover{transform: translateY(-3px); border-color: rgba(255,255,255,.23);}
.result-card.registered{border-color: rgba(99,173,122,.23); box-shadow: 0 14px 45px rgba(0,0,0,.24);}
.result-media{position: relative; height: 190px;}
.result-media img{height: 100%; object-fit: cover; filter: brightness(.72) saturate(.82);}
.result-distance{position: absolute; top: 12px; right: 12px; padding: 7px 9px; color: white; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; background: rgba(0,0,0,.65); font-size: 8px; font-weight: 800;}
.result-body{padding: 18px;}
.result-body h3{min-height: 52px; display: -webkit-box; overflow: hidden; margin: 7px 0 6px; font-family: var(--serif); font-size: 27px; font-weight: 600; line-height: .95; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.result-body p{margin: 0; color: var(--muted); font-size: 9px; line-height: 1.55;}
.result-footer{display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--muted-line);}
.result-footer strong{font-size: 10px;}
.result-footer span{color: var(--faint); font-size: 8px;}
.empty-results{display: none; padding: 55px 20px; grid-column: 1/-1; text-align: center; color: var(--muted); border: 1px dashed var(--line); border-radius: 18px;}
.editorial-lead{display: grid; grid-template-columns: 1.15fr .85fr; min-height: 410px; margin-bottom: 20px; overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: var(--surface);}
.editorial-lead-image{min-height: 360px; background: linear-gradient(90deg,transparent,rgba(0,0,0,.18)),url("https://images.unsplash.com/photo-1703419776762-56bf2020639d?auto=format&fit=crop&q=84&w=1300") center/cover;}
.editorial-lead-copy{display: flex; flex-direction: column; justify-content: center; padding: 45px;}
.editorial-lead-copy h2{margin: 0; font-family: var(--serif); font-size: 47px; font-weight: 600; line-height: .92;}
.editorial-lead-copy p{color: var(--muted); font-size: 11px; line-height: 1.7;}
.article-grid{display: grid; grid-template-columns: repeat(3,1fr); gap: 14px;}
.article-card{overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: var(--surface); cursor: pointer;}
.article-card img{height: 180px; object-fit: cover; filter: brightness(.7) saturate(.82);}
.article-card div{padding: 18px;}
.article-card h3{min-height: 49px; margin: 7px 0; font-family: var(--serif); font-size: 26px; font-weight: 600; line-height: .95;}
.article-card p{margin: 0; color: var(--muted); font-size: 9px; line-height: 1.55;}
.article-card time{display: block; margin-top: 14px; color: var(--faint); font-size: 8px;}
.archive-banner{display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 24px; padding: 17px 20px; color: #cec5b8; border: 1px solid rgba(182,154,111,.28); border-radius: 14px; background: rgba(182,154,111,.07);}
.archive-banner strong{font-size: 11px;}
.archive-banner span{display: block; margin-top: 4px; color: var(--muted); font-size: 8px;}
.archive-banner .btn{flex: 0 0 auto;}
.business-facts{display: grid; grid-template-columns: repeat(2,1fr); gap: 13px; margin: 25px 0 40px;}
.business-fact{position: relative; min-height: 108px; padding: 21px 22px 19px; overflow: hidden; border: 1px solid rgba(255,255,255,.13); border-radius: 15px; background: linear-gradient(135deg, #171615, #101010); box-shadow: inset 3px 0 0 rgba(184,32,37,.78);}
.business-fact::after{content: ""; position: absolute; top: -28px; right: -24px; width: 76px; height: 76px; border-radius: 50%; background: rgba(184,32,37,.07);}
.business-fact span{position: relative; z-index: 1; display: flex; align-items: center; gap: 7px; color: #b8b0a6; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;}
.business-fact span i{width: 15px; color: var(--red-bright);}
.business-fact strong{position: relative; z-index: 1; display: block; margin-top: 11px; color: var(--ink); font-size: 15px; font-weight: 650; line-height: 1.45;}
.related-experiences{margin: 40px 0; padding: 28px; border: 1px solid rgba(255,255,255,.12); border-radius: 18px; background: linear-gradient(145deg, rgba(111,17,23,.13), rgba(16,16,16,.96) 48%);}
.related-head{display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 19px;}
.related-head h2{margin: 4px 0 0;}
.related-head p:last-child{max-width: 330px; margin: 0; color: var(--muted); font-size: 10px; line-height: 1.55;}
.related-grid{display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px;}
.related-card{position: relative; min-width: 0; padding: 19px; text-align: left; color: var(--ink); border: 1px solid var(--line); border-radius: 14px; background: #111; cursor: pointer; transition: transform .2s, border-color .2s, background .2s;}
.related-card:hover{transform: translateY(-2px); border-color: rgba(212,45,50,.5); background: #171313;}
.related-card.current{border-color: rgba(212,45,50,.42); box-shadow: inset 0 0 0 1px rgba(212,45,50,.09);}
.related-card-top{display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 15px;}
.related-icon{display: grid; place-items: center; width: 35px; height: 35px; border-radius: 10px; color: #f1d8d2; background: linear-gradient(145deg, var(--red-dark), #3d0c10);}
.related-icon i{width: 17px;}
.related-state{color: var(--faint); font-size: 8px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase;}
.related-card.current .related-state{color: #ee8588;}
.related-card h3{display: -webkit-box; min-height: 44px; margin: 0 0 7px; overflow: hidden; font-family: var(--serif); font-size: 23px; font-weight: 650; line-height: .98; -webkit-box-orient: vertical; -webkit-line-clamp: 2;}
.related-card p{min-height: 31px; margin: 0; color: var(--muted); font-size: 9px; line-height: 1.55;}
.related-meta{display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px;}
.related-meta span{padding: 5px 7px; color: #bbb2a8; border: 1px solid var(--line); border-radius: 999px; font-size: 8px;}
.related-arrow{position: absolute; right: 17px; bottom: 17px; width: 15px; color: var(--red-bright);}
.booking-card .related-experiences{margin: 18px 0 0; padding: 19px 14px 15px; border-radius: 14px;}
.booking-card .related-head{align-items: flex-start; flex-direction: column; gap: 7px; margin-bottom: 14px;}
.booking-card .related-head h2{margin-top: 3px; font-size: 27px; line-height: .95;}
.booking-card .related-head p:last-child{max-width: none; font-size: 9px;}
.booking-card .related-grid{grid-template-columns: 1fr; gap: 8px;}
.booking-card .related-card{padding: 15px;}
.booking-card .related-card-top{margin-bottom: 11px;}
.booking-card .related-card h3{min-height: 0; padding-right: 18px; font-size: 21px;}
.booking-card .related-card p{min-height: 0; padding-right: 12px; font-size: 8px;}
.booking-card .related-meta{margin-top: 10px;}
.operations-grid{display: grid; grid-template-columns: repeat(2,1fr); gap: 10px;}
.operation-card{display: flex; gap: 12px; padding: 16px; border: 1px solid var(--line); border-radius: 13px; background: #161514;}
.operation-card i{flex: 0 0 auto; width: 18px; color: var(--red-bright);}
.operation-card strong{display: block; font-size: 9px;}
.operation-card span{display: block; margin-top: 4px; color: var(--faint); font-size: 8px; line-height: 1.5;}
.editorial{display: grid; grid-template-columns: 1fr 1fr; min-height: 560px; border: 1px solid var(--line); border-radius: 25px; overflow: hidden;}
.editorial-image{position: relative; min-height: 420px; background: url("https://noentres.com/wp-content/themes/no-entres-theme-0.17.4/assets/images/neo-caja-negra/neo-caja-negra-its-alive.jpg") center/cover;}
.editorial-image::after{content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 50%, rgba(0,0,0,.18));}
.editorial-content{display: flex; flex-direction: column; justify-content: center; padding: 60px; background: #12100f;}
.editorial-content blockquote{margin: 0; font-family: var(--serif); font-size: clamp(37px,4vw,54px); font-weight: 500; line-height: .96;}
.editorial-content p{margin: 22px 0 30px; color: var(--muted); font-size: 13px; line-height: 1.75;}
.business-cta{position: relative; overflow: hidden; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 50px; padding: 48px; border: 1px solid rgba(184,32,37,.32); border-radius: 24px; background: radial-gradient(circle at 85% 50%, rgba(184,32,37,.18), transparent 32%), #11100f;}
.business-cta::before{content: ""; position: absolute; inset: 0; opacity: .12; background: repeating-linear-gradient(125deg, transparent 0 18px, rgba(255,255,255,.025) 18px 19px); pointer-events: none;}
.business-cta h3{margin: 0; font-family: var(--serif); font-size: 38px; font-weight: 600;}
.business-cta p{max-width: 650px; margin: 8px 0 0; color: var(--muted); font-size: 13px; line-height: 1.6;}
.detail-hero{position: relative; height: 570px; overflow: hidden;}
.detail-hero img{height: 100%; object-fit: cover;}
.detail-hero::after{content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, #080808 0%, transparent 60%), linear-gradient(90deg, rgba(0,0,0,.48), transparent 65%);}
.back-button{position: absolute; z-index: 3; top: 28px; left: max(24px, calc((100% - 1220px)/2)); width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; background: rgba(0,0,0,.42); backdrop-filter: blur(10px); cursor: pointer;}
.back-button i{width: 17px;}
.image-disclaimer{position: absolute; z-index: 3; top: 29px; right: max(24px, calc((100% - 1220px)/2)); padding: 8px 11px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; background: rgba(0,0,0,.58); color: #ddd5ca; backdrop-filter: blur(10px); font-size: 8px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase;}
.detail-title{position: absolute; z-index: 2; bottom: 48px; left: max(24px, calc((100% - 1220px)/2)); right: 24px;}
.detail-title h1{max-width: 850px; margin: 8px 0 10px; font-family: var(--serif); font-size: clamp(49px,6.2vw,76px); font-weight: 600; line-height: .94; letter-spacing: -.022em;}
.detail-meta{display: flex; flex-wrap: wrap; gap: 16px; color: #d3cdc4; font-size: 11px;}
.detail-meta span{display: inline-flex; align-items: center; gap: 6px;}
.detail-meta i{width: 13px;}
.detail-layout{display: grid; grid-template-columns: 1fr 350px; gap: 60px; padding: 56px 0 95px;}
.detail-copy h2{margin: 0 0 16px; font-family: var(--serif); font-size: 36px; font-weight: 600;}
.detail-copy > p{color: #b7b0a7; font-size: 14px; line-height: 1.85;}
.feature-row{display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; margin: 32px 0 43px;}
.feature-box{min-height: 108px; padding: 17px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface);}
.feature-box i{width: 18px; color: var(--red-bright);}
.feature-box span{display: block; margin-top: 14px; color: var(--faint); font-size: 8px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;}
.feature-box strong{display: block; margin-top: 4px; font-size: 11px;}
.fear-meter{margin: 24px 0 42px;}
.fear-label{display: flex; justify-content: space-between; color: var(--muted); font-size: 10px;}
.fear-label strong{color: var(--red-bright);}
.fear-track{display: grid; grid-template-columns: repeat(5,1fr); gap: 5px; margin-top: 10px;}
.fear-track span{height: 8px; border-radius: 999px; background: #262322;}
.fear-track span.on{background: linear-gradient(90deg, var(--red-dark), var(--red-bright));}
.photo-grid{display: grid; grid-template-columns: 1.45fr 1fr; grid-template-rows: 180px 180px; gap: 10px;}
.photo-grid img{height: 100%; object-fit: cover; border-radius: 13px;}
.photo-grid img:first-child{grid-row: span 2;}
.booking-card{position: sticky; top: 104px; align-self: start; padding: 25px; border: 1px solid var(--line); border-radius: 19px; background: #121110; box-shadow: var(--shadow);}
.booking-card.has-catalog{position: relative; top: auto;}
.booking-card .mini-label{color: var(--faint); font-size: 8px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase;}
.booking-card .booking-price{margin: 7px 0 20px; font-family: var(--serif); font-size: 39px;}
.booking-price small{color: var(--muted); font-family: var(--sans); font-size: 10px;}
.date-options{display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; margin-bottom: 18px;}
.date-option{padding: 10px 5px; color: var(--muted); background: #191716; border: 1px solid var(--line); border-radius: 10px; cursor: pointer; text-align: center;}
.date-option.active{color: white; border-color: var(--red); background: rgba(184,32,37,.12);}
.date-option span{display: block; font-size: 8px; font-weight: 700; text-transform: uppercase;}
.date-option strong{display: block; margin-top: 3px; font-size: 13px;}
.booking-card .btn{width: 100%; margin-top: 8px;}
.detail-action{width: 100%; margin-top: 10px;}
.action-scope{margin-top: 12px; padding: 14px; border: 1px solid rgba(255,255,255,.1); border-radius: 13px; background: rgba(255,255,255,.025);}
.action-scope.business-wide{border-color: rgba(184,32,37,.25); background: linear-gradient(145deg, rgba(111,17,23,.13), rgba(255,255,255,.02));}
.action-scope-label{display: flex; align-items: center; gap: 7px; margin-bottom: 4px; color: #c2b9ae; font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;}
.action-scope-label i{width: 14px; color: var(--red-bright);}
.action-scope-copy{display: block; margin: 4px 0 9px; color: var(--faint); font-size: 9px; line-height: 1.45;}
.parent-business-name{display: block; margin: 6px 0 2px; font-family: var(--serif); color: var(--ink); font-size: 25px; font-weight: 650; line-height: 1;}
.action-scope .detail-action{margin-top: 8px;}
.booking-note{display: flex; gap: 8px; margin: 17px 0 0; color: var(--faint); font-size: 9px; line-height: 1.5;}
.booking-note i{flex: 0 0 auto; width: 13px; color: var(--green);}
.profile-origin{display: flex; align-items: center; gap: 8px; margin-bottom: 15px; padding: 11px 13px; color: #cfe5d5; border: 1px solid rgba(99,173,122,.25); border-radius: 11px; background: rgba(99,173,122,.07); font-size: 8px; font-weight: 800;}
.profile-origin i{width: 14px;}
.verified-reviews{margin-top: 42px; padding-top: 34px; border-top: 1px solid var(--line);}
.review-grid{display: grid; grid-template-columns: repeat(2,1fr); gap: 11px;}
.review-card{padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface);}
.review-card strong{font-size: 10px;}
.review-card p{margin: 9px 0; color: var(--muted); font-size: 9px; line-height: 1.6;}
.review-card span{color: var(--faint); font-size: 8px;}
.post-booking-actions{display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 17px;}
.post-booking-actions button{min-height: 42px; display: flex; align-items: center; justify-content: center; gap: 7px; color: var(--cream); border: 1px solid var(--line); border-radius: 10px; background: #171515; cursor: pointer; font-size: 8px; font-weight: 800;}
.post-booking-actions i{width: 14px;}
.subpage{padding: 66px 0 110px;}
.subpage-header{margin-bottom: 38px;}
.subpage-header h1{margin: 0; font-family: var(--serif); font-size: clamp(47px,6vw,68px); font-weight: 600; line-height: .9; letter-spacing: -.035em;}
.subpage-header p{margin: 14px 0 0; color: var(--muted); font-size: 13px;}
.checkout-layout{display: grid; grid-template-columns: 1fr 385px; gap: 42px;}
.checkout-section{margin-bottom: 17px; padding: 25px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface);}
.checkout-section h3{display: flex; align-items: center; gap: 10px; margin: 0 0 20px; font-family: var(--serif); font-size: 25px; font-weight: 600;}
.step-num{width: 24px; height: 24px; display: inline-grid; place-items: center; color: white; border-radius: 50%; background: var(--red); font-family: var(--sans); font-size: 9px; font-weight: 800;}
.form-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 13px;}
.field{display: block;}
.field.full{grid-column: 1 / -1;}
.field span{display: block; margin-bottom: 7px; color: var(--muted); font-size: 9px; font-weight: 700;}
.field input, .field select, .field textarea{width: 100%; height: 47px; padding: 0 13px; color: white; border: 1px solid var(--line); border-radius: 10px; outline: 0; background: #181716; font-size: 11px;}
.field textarea{height: 90px; padding-top: 13px; resize: vertical;}
.field input:focus, .field select:focus, .field textarea:focus{border-color: rgba(184,32,37,.7); box-shadow: 0 0 0 3px rgba(184,32,37,.09);}
.payment-choice{display: grid; grid-template-columns: 1fr 1fr; gap: 10px;}
.payment-option{padding: 17px; border: 1px solid var(--line); border-radius: 11px; background: #181716; cursor: pointer;}
.payment-option.active{border-color: var(--red); background: rgba(184,32,37,.08);}
.payment-option strong{display: block; font-size: 11px;}
.payment-option small{color: var(--faint); font-size: 8px;}
.order-summary{position: sticky; top: 103px; align-self: start; overflow: hidden; border: 1px solid var(--line); border-radius: 19px; background: #121110;}
.summary-image{height: 170px;}
.summary-image img{height: 100%; object-fit: cover;}
.summary-body{padding: 24px;}
.summary-body h3{margin: 4px 0 6px; font-family: var(--serif); font-size: 26px;}
.summary-body > p{margin: 0 0 20px; color: var(--muted); font-size: 9px;}
.summary-line{display: flex; justify-content: space-between; margin: 11px 0; color: var(--muted); font-size: 10px;}
.summary-line.total{margin-top: 18px; padding-top: 18px; color: white; border-top: 1px solid var(--line); font-size: 12px;}
.summary-line.total strong{font-family: var(--serif); font-size: 24px;}
.order-summary .btn{width: 100%; margin-top: 14px;}
.secure-line{display: flex; justify-content: center; gap: 6px; margin-top: 13px; color: var(--faint); font-size: 8px;}
.secure-line i{width: 11px;}
.registered-user{display: flex; align-items: center; gap: 13px; margin-bottom: 19px; padding: 14px; border: 1px solid rgba(99,173,122,.22); border-radius: 12px; background: rgba(99,173,122,.055);}
.registered-user > i{width: 21px; color: var(--green);}
.registered-user strong{display: block; font-size: 10px;}
.registered-user span{display: block; margin-top: 3px; color: var(--faint); font-size: 8px;}
.availability-line{display: flex; align-items: flex-start; gap: 9px; margin: 14px 0 0; color: var(--muted); font-size: 9px; line-height: 1.55;}
.availability-line i{flex: 0 0 auto; width: 14px; color: var(--gold);}
.reserve-button{width: 100%; margin-top: 18px;}
.checkout-section.is-reserved{border-color: rgba(99,173,122,.34);}
.checkout-section.is-reserved .step-num{background: var(--green);}
.payment-stage[hidden]{display: none;}
.reservation-success{display: none; align-items: center; gap: 12px; margin-top: 17px; padding: 14px; color: #cfe5d5; border: 1px solid rgba(99,173,122,.28); border-radius: 12px; background: rgba(99,173,122,.08); font-size: 9px; line-height: 1.5;}
.reservation-success.show{display: flex;}
.reservation-success i{width: 18px; color: var(--green);}
.summary-status{display: inline-flex; align-items: center; gap: 6px; margin: 0 0 14px; padding: 7px 9px; color: #d5cbbb; border: 1px solid var(--line); border-radius: 999px; background: #181615; font-size: 8px; font-weight: 800;}
.summary-status.locked{color: #cfe5d5; border-color: rgba(99,173,122,.3); background: rgba(99,173,122,.08);}
.summary-status i{width: 11px;}
.nonrefundable{margin: 15px 0 0; padding: 12px; color: #bbb2a6; border-left: 2px solid var(--red); background: rgba(184,32,37,.06); font-size: 8px; line-height: 1.55;}
.demo-state-controls{margin-bottom: 17px; padding: 16px; border: 1px dashed rgba(182,154,111,.32); border-radius: 14px; background: rgba(182,154,111,.045);}
.demo-state-controls > span{display: block; margin-bottom: 10px; color: var(--gold); font-size: 8px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase;}
.scenario-buttons{display: flex; flex-wrap: wrap; gap: 7px;}
.scenario-button{min-height: 34px; padding: 0 11px; color: var(--muted); border: 1px solid var(--line); border-radius: 9px; background: #171615; cursor: pointer; font-size: 8px; font-weight: 800;}
.scenario-button.active{color: white; border-color: var(--red); background: rgba(184,32,37,.15);}
.flow-message{display: none; align-items: flex-start; gap: 11px; margin-top: 16px; padding: 14px; border-radius: 12px; font-size: 9px; line-height: 1.55;}
.flow-message.show{display: flex;}
.flow-message i{flex: 0 0 auto; width: 18px;}
.flow-message:not(.error):not(.warning){color: #cfe5d5; border: 1px solid rgba(99,173,122,.3); background: rgba(99,173,122,.08);}
.flow-message:not(.error):not(.warning) i{color: var(--green);}
.flow-message.error{color: #f0c4c5; border: 1px solid rgba(221,67,72,.35); background: rgba(184,32,37,.1);}
.flow-message.error i{color: #f36c70;}
.flow-message.warning{color: #e3d1ad; border: 1px solid rgba(182,154,111,.34); background: rgba(182,154,111,.08);}
.flow-message.warning i{color: var(--gold);}
.flow-message .inline-retry{display: block; margin-top: 8px; padding: 0; color: white; border: 0; background: none; cursor: pointer; font-size: 8px; font-weight: 850; text-decoration: underline;}
.alert-tabs{display: inline-flex; gap: 4px; margin-bottom: 28px; padding: 4px; border-radius: 12px; background: var(--surface); border: 1px solid var(--line);}
.alert-tab{padding: 10px 16px; color: var(--muted); border: 0; border-radius: 8px; background: transparent; cursor: pointer; font-size: 10px; font-weight: 750;}
.alert-tab.active{color: white; background: #262220;}
.alert-grid{display: grid; grid-template-columns: 1.2fr .8fr; gap: 20px;}
.panel{padding: 24px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface);}
.panel-head{display: flex; justify-content: space-between; align-items: center; margin-bottom: 18px;}
.panel-head h3{margin: 0; font-family: var(--serif); font-size: 26px; font-weight: 600;}
.panel-head span{color: var(--faint); font-size: 9px;}
.followed-item{display: grid; grid-template-columns: 64px 1fr auto; align-items: center; gap: 14px; padding: 14px 0; border-top: 1px solid var(--muted-line);}
.followed-item img{width: 64px; height: 64px; object-fit: cover; border-radius: 10px;}
.followed-item h4{margin: 0 0 5px; font-size: 11px;}
.followed-item p{margin: 0; color: var(--faint); font-size: 9px;}
.toggle{position: relative; width: 38px; height: 22px; padding: 0; border: 0; border-radius: 999px; background: #332f2d; cursor: pointer;}
.toggle::after{content: ""; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: #8c8680; transition: .2s;}
.toggle.on{background: var(--red);}
.toggle.on::after{left: 19px; background: white;}
.preference{display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 17px 0; border-top: 1px solid var(--muted-line);}
.preference strong{display: block; font-size: 10px;}
.preference span{display: block; margin-top: 4px; color: var(--faint); font-size: 8px; line-height: 1.5;}
.city-card{display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 20px; padding: 20px; border-radius: 14px; background: linear-gradient(120deg, #1d1716, #141313); border: 1px solid rgba(184,32,37,.24);}
.city-card strong{display: block; font-family: var(--serif); font-size: 23px;}
.city-card span{color: var(--muted); font-size: 9px;}
.notification-card{display: flex; gap: 14px; padding: 16px 0; border-top: 1px solid var(--muted-line);}
.notification-icon{width: 37px; height: 37px; flex: 0 0 auto; display: grid; place-items: center; color: #ffb1b3; border-radius: 11px; background: rgba(184,32,37,.15);}
.notification-icon i{width: 15px;}
.notification-card h4{margin: 1px 0 5px; font-size: 10px;}
.notification-card p{margin: 0; color: var(--muted); font-size: 9px; line-height: 1.55;}
.notification-card time{display: block; margin-top: 6px; color: var(--faint); font-size: 8px;}
.notification-card > div:last-child{flex: 1;}
.notification-book{display: inline-flex; align-items: center; gap: 6px; margin-top: 10px; padding: 8px 10px; color: white; border: 0; border-radius: 8px; background: var(--red); cursor: pointer; font-size: 8px; font-weight: 800;}
.notification-book i{width: 12px;}
.account-pane{display: none;}
.account-pane.active{display: block;}
.account-list{display: grid; gap: 12px;}
.account-list-card{display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 16px; padding: 18px; border: 1px solid var(--line); border-radius: 15px; background: var(--surface);}
.account-list-card > i{width: 20px; color: var(--red-bright);}
.account-list-card h4{margin: 0 0 5px; font-size: 11px;}
.account-list-card p{margin: 0; color: var(--faint); font-size: 8px; line-height: 1.5;}
.account-list-card .card-meta{color: var(--cream); font-size: 9px; font-weight: 800; text-align: right;}
.business-view{background: #0b0b0b;}
.business-top{border-bottom: 1px solid var(--muted-line); background: #0e0d0d;}
.business-top .shell{min-height: 76px; display: flex; align-items: center; justify-content: space-between;}
.business-top-actions, .pending-account-actions{display: flex; align-items: center; gap: 10px;}
.business-mark{display: flex; align-items: center; gap: 12px;}
.business-mark i{width: 21px; color: var(--red-bright);}
.business-mark strong{display: block; font-family: var(--serif); font-size: 21px;}
.business-mark span{display: block; color: var(--faint); font-size: 8px;}
.business-status{display: inline-flex; align-items: center; gap: 7px; color: var(--green); font-size: 9px;}
.business-status::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor;}
.experience-admin-icon{width: 58px; height: 58px; display: grid; place-items: center; color: var(--red-bright); border: 1px solid var(--line); border-radius: 12px; background: var(--surface-2);}
.experience-admin-icon i{width: 22px;}
.business-pending-layout{min-height: calc(100vh - 210px); align-items: center;}
.business-pending-layout .approval-result{padding: 10px 0;}
.pending-account-actions{justify-content: center; flex-wrap: wrap; margin-top: 24px;}
.business-layout{display: grid; grid-template-columns: minmax(0,1fr) 365px; gap: 35px; padding: 45px 0 100px;}
.business-intro{display: flex; align-items: flex-start; justify-content: space-between; gap: 25px; margin-bottom: 26px;}
.business-intro h1{margin: 0; font-family: var(--serif); font-size: 47px; font-weight: 600; line-height: .9;}
.timer-chip{display: flex; align-items: center; gap: 8px; flex: 0 0 auto; padding: 10px 13px; color: var(--cream); border: 1px solid var(--line); border-radius: 10px; font-size: 10px;}
.timer-chip i{width: 14px; color: var(--red-bright);}
.quick-form{padding: 28px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface);}
.quick-form .form-grid{gap: 17px;}
.price-pair{display: grid; grid-template-columns: 1fr 1fr; gap: 12px;}
.helper{display: block; margin-top: 6px; color: var(--faint); font-size: 8px; line-height: 1.5;}
.business-submit{display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-top: 24px; padding-top: 23px; border-top: 1px solid var(--muted-line);}
.business-submit p{margin: 0; color: var(--faint); font-size: 8px; line-height: 1.5;}
.preview-label{margin: 2px 0 12px; color: var(--faint); font-size: 8px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase;}
.live-preview{position: sticky; top: 103px; align-self: start;}
.preview-phone{padding: 14px; border: 1px solid var(--line); border-radius: 26px; background: #070707; box-shadow: 0 30px 80px rgba(0,0,0,.5);}
.preview-card{overflow: hidden; border-radius: 17px; background: #151313;}
.preview-img{position: relative; height: 210px; background: url("https://images.unsplash.com/photo-1648142652719-b934e1f9b2de?auto=format&fit=crop&q=80&w=900") center/cover;}
.preview-discount{position: absolute; top: 12px; left: 12px; padding: 7px 9px; border-radius: 6px; background: var(--red); font-size: 10px; font-weight: 800;}
.preview-content{padding: 20px;}
.preview-content h3{margin: 7px 0 5px; font-family: var(--serif); font-size: 30px; font-weight: 600;}
.preview-content p{margin: 0; color: var(--muted); font-size: 9px;}
.preview-footer{display: flex; justify-content: space-between; align-items: flex-end; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--line);}
.preview-footer strong{display: block; font-family: var(--serif); font-size: 27px;}
.preview-footer span{color: var(--red-bright); font-size: 10px; font-weight: 800;}
.recent-offers{margin-top: 20px; padding: 18px; border: 1px solid var(--line); border-radius: 15px; background: var(--surface);}
.recent-offers h4{margin: 0 0 12px; font-size: 10px;}
.recent-row{display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 0; border-top: 1px solid var(--muted-line); font-size: 9px;}
.recent-row span{color: var(--faint);}
.recent-row b{color: var(--green); font-weight: 700;}
.geo-hint{display: flex; align-items: center; gap: 10px; margin-top: 16px; color: #9f9991; font-size: 10px;}
.geo-hint button{display: inline-flex; align-items: center; gap: 6px; padding: 0; color: white; border: 0; background: none; cursor: pointer; font-size: 10px; font-weight: 800;}
.geo-hint i{width: 13px; color: var(--red-bright);}
.nearby-list{display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px;}
.nearby-item{display: grid; grid-template-columns: 94px 1fr auto; align-items: center; gap: 17px; min-width: 0; padding: 13px; border: 1px solid var(--line); border-radius: 15px; background: var(--surface); cursor: pointer; transition: border-color .2s, transform .2s;}
.nearby-item:hover{transform: translateY(-2px); border-color: rgba(255,255,255,.22);}
.nearby-item img{width: 94px; height: 78px; object-fit: cover; border-radius: 10px; filter: brightness(.72) saturate(.82);}
.nearby-item h4{margin: 0 0 5px; font-family: var(--serif); font-size: 20px; font-weight: 600;}
.nearby-item p{margin: 0; color: var(--faint); font-size: 8px; line-height: 1.55;}
.distance-pill{min-width: 66px; padding: 8px 10px; color: var(--cream); border: 1px solid var(--line); border-radius: 999px; text-align: center; font-size: 9px; font-weight: 800;}
.nearby-pagination{display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 16px; margin-top: 16px;}
.nearby-page-center{display: grid; justify-items: center; gap: 7px; min-width: 0;}
.nearby-page-center > span{color: var(--muted); font-size: 12px; font-weight: 700;}
.nearby-page-numbers{display: flex; align-items: center; justify-content: center; gap: 7px;}
.nearby-page-number, .nearby-page-nav{min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; color: var(--ink); border: 1px solid var(--line); background: var(--surface-2); font-size: 13px; font-weight: 800; cursor: pointer; transition: border-color .2s, background .2s, opacity .2s;}
.nearby-page-number{border-radius: 50%;}
.nearby-page-number[aria-current="page"]{color: #fff; border-color: var(--red-bright); background: var(--red);}
.nearby-page-nav{gap: 7px; padding: 0 15px; border-radius: 999px;}
.nearby-page-number:hover, .nearby-page-nav:hover:not(:disabled){border-color: rgba(255,255,255,.3); background: #202529;}
.nearby-page-nav:disabled{opacity: .34; cursor: default;}
.nearby-page-nav i{width: 17px; height: 17px;}
.offer-actions{display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin: 16px 0 0;}
.alert-offer-btn, .quick-buy-btn{width: 100%; min-height: 38px; display: flex; align-items: center; justify-content: center; gap: 7px; padding: 0 10px; border-radius: 10px; cursor: pointer; font-size: 8px; font-weight: 800;}
.alert-offer-btn{color: #d9cdbd; border: 1px solid var(--line); background: #171515;}
.alert-offer-btn i{width: 13px;}
.alert-offer-btn.on{color: white; border-color: rgba(184,32,37,.55); background: rgba(184,32,37,.14);}
.quick-buy-btn{color: white; border: 1px solid var(--red); background: var(--red);}
.quick-buy-btn i{width: 13px;}
.account-summary{display: grid; grid-template-columns: 1.4fr repeat(3, .6fr); gap: 12px; margin-bottom: 25px;}
.welcome-card, .account-stat{min-height: 125px; padding: 23px; border: 1px solid var(--line); border-radius: 17px; background: var(--surface);}
.welcome-card{display: flex; align-items: center; justify-content: space-between; gap: 20px; background: radial-gradient(circle at 90% 30%, rgba(184,32,37,.18), transparent 38%), var(--surface);}
.welcome-card h2{margin: 0; font-family: var(--serif); font-size: 31px; font-weight: 600;}
.welcome-card p{margin: 6px 0 0; color: var(--muted); font-size: 9px;}
.welcome-avatar{width: 52px; height: 52px; display: grid; place-items: center; flex: 0 0 auto; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; background: #211c1b;}
.account-stat{display: flex; flex-direction: column; justify-content: center;}
.account-stat span{color: var(--faint); font-size: 8px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase;}
.account-stat strong{margin-top: 8px; font-family: var(--serif); font-size: 31px; font-weight: 600;}
.collector-card{margin-bottom: 20px; padding: 24px; border: 1px solid rgba(182,154,111,.28); border-radius: 18px; background: radial-gradient(circle at 85% 40%, rgba(182,154,111,.13), transparent 34%), #131210;}
.collector-head{display: flex; align-items: flex-end; justify-content: space-between; gap: 20px;}
.collector-head h3{margin: 0; font-family: var(--serif); font-size: 31px;}
.collector-head strong{color: var(--gold); font-size: 11px;}
.level-track{height: 8px; margin: 18px 0 9px; overflow: hidden; border-radius: 999px; background: #292622;}
.level-track span{display: block; width: 68%; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--red),var(--gold));}
.level-copy{display: flex; justify-content: space-between; color: var(--faint); font-size: 8px;}
.account-library{display: grid; grid-template-columns: repeat(4,1fr); gap: 11px; margin-bottom: 20px;}
.library-card{padding: 18px; border: 1px solid var(--line); border-radius: 15px; background: var(--surface); cursor: pointer;}
.library-card i{width: 18px; color: var(--red-bright);}
.library-card strong{display: block; margin-top: 15px; font-size: 10px;}
.library-card span{display: block; margin-top: 4px; color: var(--faint); font-size: 8px;}
.reservation-row{display: grid; grid-template-columns: 70px 1fr auto; align-items: center; gap: 15px; padding: 16px 0; border-top: 1px solid var(--muted-line);}
.reservation-date{width: 58px; height: 58px; display: grid; place-items: center; border-radius: 11px; background: #1d1918; text-align: center;}
.reservation-date strong{display: block; font-family: var(--serif); font-size: 23px; line-height: .75;}
.reservation-date span{color: var(--red-bright); font-size: 7px; font-weight: 800; text-transform: uppercase;}
.reservation-row h4{margin: 0 0 5px; font-size: 11px;}
.reservation-row p{margin: 0; color: var(--faint); font-size: 8px;}
.reservation-status{padding: 7px 9px; color: var(--green); border: 1px solid rgba(99,173,122,.25); border-radius: 999px; font-size: 8px; font-weight: 800;}
.channel-grid{display: grid; grid-template-columns: repeat(2,1fr); gap: 10px;}
.channel-card{padding: 17px; border: 1px solid var(--line); border-radius: 13px; background: #181716; cursor: pointer;}
.channel-card.active{border-color: rgba(184,32,37,.6); background: rgba(184,32,37,.09);}
.channel-card.future{grid-column: 1 / -1; cursor: default; opacity: .68;}
.channel-card[disabled]{color: var(--muted);}
.channel-card i{width: 17px; color: var(--red-bright);}
.channel-card strong{display: block; margin: 11px 0 4px; font-size: 10px;}
.channel-card span{color: var(--faint); font-size: 8px; line-height: 1.5;}
.channel-note{margin: 13px 0 0; color: var(--faint); font-size: 8px; line-height: 1.55;}
.auth-layout{display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: start;}
.auth-copy{position: sticky; top: 110px; padding: 26px 0;}
.auth-copy h1{margin: 0; font-family: var(--serif); font-size: clamp(50px,6vw,74px); font-weight: 600; line-height: .88;}
.auth-copy > p{max-width: 490px; margin: 20px 0 28px; color: var(--muted); font-size: 13px; line-height: 1.75;}
.auth-benefit{display: flex; gap: 12px; margin: 15px 0; color: var(--cream); font-size: 10px;}
.auth-benefit i{width: 17px; color: var(--red-bright);}
.auth-card{padding: 26px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface);}
.existing-login{width: 100%; min-height: 44px; display: flex; align-items: center; justify-content: center; gap: 8px; margin-bottom: 18px; color: var(--cream); border: 1px solid var(--line); border-radius: 11px; background: #181716; cursor: pointer; font-size: 9px; font-weight: 800;}
.existing-login:hover{border-color: rgba(255,255,255,.24);}
.existing-login i{width: 15px;}
.role-choice{display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 24px;}
.role-card{min-height: 122px; padding: 18px; text-align: left; border: 1px solid var(--line); border-radius: 14px; background: #171615; cursor: pointer;}
.role-card.active{border-color: var(--red); background: rgba(184,32,37,.09);}
.role-card i{width: 19px; color: var(--red-bright);}
.role-card strong{display: block; margin: 14px 0 5px; font-size: 11px;}
.role-card span{color: var(--faint); font-size: 8px; line-height: 1.45;}
.auth-card h3{margin: 0 0 18px; font-family: var(--serif); font-size: 28px; font-weight: 600;}
.auth-card .btn{width: 100%; margin-top: 18px;}
.forgot-password-link{min-height: 44px; display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 8px; color: #f1d9da; border-radius: 10px; font-size: 12px; font-weight: 800; text-decoration: underline; text-decoration-color: rgba(224,89,95,.55); text-underline-offset: 4px;}
.forgot-password-link:hover, .forgot-password-link:focus-visible{color: #fff; background: rgba(184,32,37,.1);}
.forgot-password-link i{width: 16px; height: 16px; color: var(--red-bright);}
.password-recovery-card{max-width: 610px; width: 100%;}
.password-recovery-card .field > span{font-size: 13px;}
.password-recovery-card .field input{font-size: 15px;}
.password-recovery-card .btn, .password-recovery-card .existing-login{font-size: 13px;}
.recovery-header{display: flex; align-items: flex-start; gap: 15px; margin-bottom: 22px;}
.recovery-header h3{margin: 0 0 7px; font-size: 27px; line-height: 1.08;}
.recovery-header p, .recovery-success p{margin: 0; color: var(--muted); font-size: 13px; line-height: 1.55;}
.recovery-icon{width: 48px; height: 48px; display: grid; place-items: center; flex: 0 0 auto; color: #fff; border: 1px solid rgba(224,89,95,.38); border-radius: 50%; background: rgba(184,32,37,.16);}
.recovery-icon i{width: 22px; height: 22px;}
.recovery-icon.success{color: #dff2e5; border-color: rgba(99,173,122,.4); background: rgba(99,173,122,.14);}
.recovery-note{display: flex; align-items: flex-start; gap: 10px; margin: 16px 0 0; color: var(--muted); font-size: 12px; line-height: 1.55;}
.recovery-note i{width: 18px; height: 18px; flex: 0 0 auto; color: var(--green);}
.recovery-back{margin-top: 13px !important; margin-bottom: 0;}
.recovery-success{padding: 18px 4px 4px; text-align: center;}
.recovery-success .recovery-icon{margin: 0 auto 18px;}
.recovery-success h3{margin: 0 0 9px; font-size: 29px;}
.auth-status.success{color: #e2f3e7; border-color: rgba(99,173,122,.5); background: rgba(99,173,122,.1);}
.auth-legal{margin: 12px 0 0; color: var(--faint); font-size: 7px; line-height: 1.55; text-align: center;}
.auth-status{display: none; margin: 14px 0 0; padding: 13px 15px; border: 1px solid rgba(224,174,81,.45); border-radius: 12px; background: rgba(224,174,81,.08); color: var(--cream); font-size: 11px; line-height: 1.55;}
.auth-status.show{display: block;}
.auth-status.error{border-color: rgba(215,74,74,.62); background: rgba(215,74,74,.1);}
.account-header-actions{display: flex; justify-content: space-between; align-items: end; gap: 20px;}
.account-header-actions .btn{flex: 0 0 auto;}
.approval-note{display: none; gap: 11px; margin-top: 15px; padding: 14px; color: #cfc6ba; border: 1px solid rgba(182,154,111,.25); border-radius: 12px; background: rgba(182,154,111,.06); font-size: 8px; line-height: 1.6;}
.approval-note.show{display: flex;}
.approval-note i{flex: 0 0 auto; width: 17px; color: var(--gold);}
.approval-result{display: none; padding: 35px 10px; text-align: center;}
.approval-result.show{display: block;}
.approval-result i{width: 42px; color: var(--gold);}
.approval-result h3{margin: 17px 0 9px;}
.approval-result p{margin: 0 auto; max-width: 390px; color: var(--muted); font-size: 10px; line-height: 1.65;}
.business-tabs{display: flex; gap: 5px; margin-bottom: 27px; padding: 5px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface);}
.business-tabs button{flex: 1; min-height: 40px; color: var(--muted); border: 0; border-radius: 9px; background: transparent; cursor: pointer; font-size: 9px; font-weight: 800;}
.business-tabs button.active{color: white; background: #272321;}
.business-pane{display: none;}
.business-pane.active{display: block;}
.ops-config{grid-column: 1 / -1; margin-top: 5px; padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-2);}
.ops-config h4{margin: 0 0 6px; font-size: 17px;}
.ops-config > p{margin: 0 0 17px; color: var(--muted); font-size: 13px; line-height: 1.55;}
.ops-config .form-grid{margin-top: 12px;}
.tier-editor, .ticket-editor, .question-editor{display: grid; gap: 9px; margin-top: 12px;}
.config-row{display: grid; grid-template-columns: 1fr 1fr auto; align-items: end; gap: 9px; padding: 11px; border: 1px solid var(--line); border-radius: 11px; background: var(--surface);}
.config-row.ticket-row{grid-template-columns: 1.05fr .58fr .58fr .9fr 1.25fr auto;}
.config-row.question-row{grid-template-columns: 1.4fr .8fr 1.1fr auto;}
.config-row .field span{font-size: 10px;}
.inline-check{display: flex; align-items: center; gap: 8px; min-height: 44px; color: var(--soft); font-size: 12px; font-weight: 700;}
.inline-check input{width: 20px; height: 20px;}
.inline-check a, .auth-legal a{color: var(--cream); text-decoration: underline; text-underline-offset: 3px;}
.checkout-terms{align-items: flex-start; margin: 14px 0 18px; padding: 13px 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-2); font-size: 10px; line-height: 1.55;}
.checkout-terms input{flex: 0 0 auto; margin-top: 1px;}
.checkout-terms > span{display: block; min-width: 0;}
[data-business-pane="compliance"] > * + *{margin-top: 18px;}
.legal-document{display: grid; gap: 14px; max-width: 880px; margin-top: 20px;}
.legal-document section{padding: 22px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface);}
.legal-document h2{margin: 0 0 8px; color: var(--cream); font-family: var(--sans); font-size: 18px;}
.legal-document p{margin: 0; color: var(--soft); font-size: 13px; line-height: 1.75;}
.legal-document .legal-version{padding: 12px 0; color: var(--faint); font-size: 11px;}
.ops-actions{display: flex; flex-wrap: wrap; gap: 9px; margin-top: 12px;}
.session-builder{margin-bottom: 20px;}
.weekday-options{display: flex; flex-wrap: wrap; gap: 7px;}
.weekday-options label{display: flex; align-items: center; gap: 6px; min-height: 42px; padding: 0 11px; border: 1px solid var(--line); border-radius: 9px; color: var(--soft); font-size: 12px;}
.weekday-options input{width: 18px; height: 18px;}
.private-admin-channel{max-width: 760px;}
.private-admin-channel textarea{min-height: 130px;}
.private-label{display: inline-flex; align-items: center; gap: 7px; margin-bottom: 12px; color: var(--gold); font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;}
.live-session-empty{padding: 22px; border: 1px dashed var(--line-strong); border-radius: 12px; color: var(--muted); text-align: center;}
.business-catalog-error{display: grid; justify-items: center; gap: 10px; color: var(--text);}
.business-catalog-error span{color: var(--muted); font-size: 1rem; line-height: 1.5;}
.business-catalog-error .btn{margin-top: 4px;}
.deposit-helper{display: block; margin-top: 7px; color: var(--muted); font-size: 11px; line-height: 1.45;}
.business-metrics{display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; margin-bottom: 22px;}
.business-metric{padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface);}
.business-metric span{color: var(--faint); font-size: 8px; font-weight: 800; text-transform: uppercase;}
.business-metric strong{display: block; margin-top: 8px; font-family: var(--serif); font-size: 27px; font-weight: 600;}
.business-metric small{color: var(--green); font-size: 7px;}
.portfolio-panel{margin-bottom: 22px; padding: 24px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface);}
.portfolio-head{display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 13px;}
.portfolio-head h3{margin: 0; font-family: var(--serif); font-size: 27px; font-weight: 600;}
.experience-admin{display: grid; grid-template-columns: 54px 1fr auto auto; align-items: center; gap: 13px; padding: 13px 0; border-top: 1px solid var(--muted-line);}
.experience-admin img{width: 54px; height: 54px; object-fit: cover; border-radius: 9px;}
.experience-admin h4{margin: 0 0 4px; font-size: 10px;}
.experience-admin p{margin: 0; color: var(--faint); font-size: 8px;}
.experience-admin .session-count{color: var(--cream); font-size: 8px; text-align: right;}
.mini-action{width: 32px; height: 32px; display: grid; place-items: center; color: var(--muted); border: 1px solid var(--line); border-radius: 9px; background: transparent; cursor: pointer;}
.mini-action i{width: 13px;}
.integration-card{display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 15px; margin-bottom: 22px; padding: 20px; border: 1px solid rgba(182,154,111,.22); border-radius: 16px; background: linear-gradient(120deg,#171513,#111010);}
.integration-card > i{width: 23px; color: var(--gold);}
.integration-card h4{margin: 0 0 5px; font-size: 11px;}
.integration-card p{margin: 0; color: var(--faint); font-size: 8px; line-height: 1.5;}
.commission-bar{display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 14px; padding: 14px 17px; border: 1px solid var(--line); border-radius: 12px; background: #151413;}
.commission-bar strong{font-size: 9px;}
.commission-bar span{color: var(--faint); font-size: 8px;}
.commission-badges{display: flex; gap: 7px;}
.commission-badges b{padding: 6px 8px; color: var(--cream); border-radius: 8px; background: #272321; font-size: 8px;}
.editor-shell{display: grid; grid-template-columns: 1.05fr .95fr; gap: 18px;}
.editor-card, .calendar-card, .admin-review-card{padding: 24px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface);}
.editor-card h3, .calendar-card h3, .admin-review-card h3{margin: 0 0 17px; font-family: var(--serif); font-size: 27px; font-weight: 600;}
.editor-card .btn{width: 100%; margin-top: 17px;}
.session-table{display: grid; gap: 8px;}
.session-row{display: grid; grid-template-columns: 92px 1fr auto auto; align-items: center; gap: 12px; padding: 13px 14px; border: 1px solid var(--muted-line); border-radius: 11px; background: #151413;}
.session-row time{color: var(--red-bright); font-size: 9px; font-weight: 850;}
.session-row strong{display: block; font-size: 10px;}
.session-row span{display: block; margin-top: 3px; color: var(--faint); font-size: 8px;}
.capacity-pill{padding: 7px 9px; color: var(--cream); border: 1px solid var(--line); border-radius: 999px; font-size: 8px; font-weight: 800; white-space: nowrap;}
.capacity-pill.warning{color: #e3d1ad; border-color: rgba(182,154,111,.3);}
.capacity-pill.danger{color: #f0c4c5; border-color: rgba(221,67,72,.34);}
.calendar-toolbar{display: flex; justify-content: space-between; align-items: center; gap: 14px; margin-bottom: 16px;}
.calendar-toolbar p{margin: 0; color: var(--faint); font-size: 8px; line-height: 1.5;}
.approval-timeline{display: grid; gap: 0; margin: 24px 0;}
.approval-step{display: grid; grid-template-columns: 28px 1fr; gap: 12px; min-height: 62px;}
.approval-step::before{content: ""; width: 10px; height: 10px; margin: 3px 0 0 5px; border: 2px solid #4b4642; border-radius: 50%; background: #111; box-shadow: 0 19px 0 -4px #4b4642, 0 38px 0 -4px #4b4642;}
.approval-step.done::before{border-color: var(--green); background: var(--green);}
.approval-step.current::before{border-color: var(--gold); background: var(--gold); box-shadow: 0 0 0 5px rgba(182,154,111,.1);}
.approval-step strong{display: block; font-size: 10px;}
.approval-step span{display: block; margin-top: 4px; color: var(--faint); font-size: 8px; line-height: 1.5;}
.admin-review-layout{display: grid; grid-template-columns: 1fr 360px; gap: 24px;}
.review-facts{display: grid; grid-template-columns: repeat(2,1fr); gap: 10px;}
.review-fact{padding: 15px; border: 1px solid var(--muted-line); border-radius: 11px; background: #151413;}
.review-fact span{display: block; color: var(--faint); font-size: 8px;}
.review-fact strong{display: block; margin-top: 5px; font-size: 10px;}
.review-actions{display: grid; gap: 9px;}
.review-result{display: none; margin-top: 15px;}
.review-result.show{display: flex;}
.toast{position: fixed; z-index: 200; left: 50%; bottom: 30px; display: flex; align-items: center; gap: 10px; max-width: calc(100% - 30px); padding: 13px 17px; color: white; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; background: #211f1e; box-shadow: var(--shadow); transform: translate(-50%, 130px); opacity: 0; transition: .35s ease; font-size: 10px; font-weight: 700;}
.toast.show{transform: translate(-50%, 0); opacity: 1;}
.toast i{width: 16px; color: var(--green);}
.confirmation{display: none; padding: 34px; text-align: center;}
.confirmation.show{display: block;}
.confirmation-icon{width: 60px; height: 60px; display: grid; place-items: center; margin: 0 auto 17px; color: var(--green); border: 1px solid rgba(99,173,122,.3); border-radius: 50%; background: rgba(99,173,122,.1);}
.confirmation-icon i{width: 26px;}
.confirmation h3{margin: 0; font-family: var(--serif); font-size: 34px;}
.confirmation p{color: var(--muted); font-size: 10px; line-height: 1.6;}
.footer{padding: 60px 0 94px; border-top: 1px solid var(--muted-line); background: #070707;}
.footer-grid{display: grid; grid-template-columns: 1.4fr repeat(3,1fr); gap: 45px;}
.footer-brand-mark{display: flex; align-items: center; gap: 11px;}
.footer-brand-mark .brand-wordmark-image{width: 170px; height: 56px;}
.footer-brand-mark .brand-wordmark-image img{width: 170px;}
.footer-brand p{max-width: 280px; color: var(--faint); font-size: 10px; line-height: 1.7;}
.footer h5{margin: 0 0 14px; color: var(--cream); font-size: 9px; letter-spacing: .12em; text-transform: uppercase;}
.footer a{display: block; width: fit-content; margin: 9px 0; color: var(--faint); font-size: 9px;}
.footer a:hover{color: white;}
.footer-bottom{display: flex; justify-content: space-between; gap: 20px; margin-top: 45px; padding-top: 22px; color: #5e5a56; border-top: 1px solid var(--muted-line); font-size: 8px;}
.topbar{background: rgba(14,17,19,.94);}
.global-search{background: rgba(17,21,24,.97);}
.account-entry, .global-location, .btn-dark, .post-booking-actions button{background: var(--surface-2);}
.agenda-wrap, .business-view{background: #111518;}
.business-top{background: #15191c;}
.results-filters, .booking-card, .order-summary, .editorial-content{background: var(--surface);}
.field input, .field select, .field textarea, .payment-option, .date-option{background: var(--surface-2);}
.search-panel{background: rgba(24,29,32,.95);}
.eyebrow{color: var(--gold);}
.brand-sub{color: #aaa39a;}
.global-query i, .sponsored-meta i, .feature-box i, .operation-card i, .related-arrow{color: var(--gold);}
.offer-type{color: var(--cream);}
.offer-card .offer-type, .preview-content .offer-type, .summary-body .offer-type{color: var(--red-bright);}
.date-block{border-left-color: var(--gold);}
.date-block span{color: var(--cream);}
.business-fact{background: linear-gradient(135deg, var(--surface-2), var(--surface)); box-shadow: inset 3px 0 0 rgba(195,155,93,.72);}
.business-fact span i{color: var(--gold);}
.related-experiences{background: linear-gradient(145deg, rgba(195,155,93,.07), rgba(21,25,28,.98) 48%);}
.operation-card, .related-card{background: var(--surface-2);}
.offer-card, .result-card, .article-card, .panel, .checkout-section, .feature-box, .review-card, .account-list-card, .quick-form, .portfolio-panel, .editor-card, .calendar-card, .admin-review-card, .business-metric, .nearby-item, .welcome-card, .account-stat, .library-card{box-shadow: inset 0 1px 0 rgba(255,255,255,.025), 0 12px 38px rgba(0,0,0,.12);}
.price strong, .booking-card .booking-price, .summary-line.total strong, .preview-footer strong, .business-metric strong, .account-stat strong, .stat strong, .date-block strong, .reservation-date strong{font-family: var(--sans); font-weight: 750; letter-spacing: -.035em;}
.result-media img, .article-card img, .sponsored-card > img, .offer-image img, .photo-grid img, .detail-hero img, .summary-image img, .experience-admin img, .nearby-item img, .agenda-thumb img{object-position: center; filter: brightness(.84) saturate(.88) contrast(1.04);}
.offer-image, .result-media, .article-card > img{aspect-ratio: 16 / 10;}
.offer-image, .result-media{height: auto;}
.featured .offer-image{height: 100%; aspect-ratio: auto;}
.article-card > img{height: auto;}
.photo-requirements{grid-column: 1 / -1; margin-top: 3px; padding: 18px; border: 1px solid rgba(195,155,93,.28); border-radius: 14px; background: rgba(195,155,93,.055);}
.photo-requirements-head{display: flex; align-items: flex-start; justify-content: space-between; gap: 16px;}
.photo-requirements-head div{min-width: 0;}
.photo-requirements-head strong{display: block; color: var(--ink); font-size: 11px;}
.photo-requirements-head p{margin: 5px 0 0; color: var(--muted); font-size: 8px; line-height: 1.55;}
.photo-requirements-head .btn{width: auto; min-height: 38px; flex: 0 0 auto; margin: 0; padding: 0 13px; font-size: 9px;}
.photo-standard-grid{display: grid; grid-template-columns: repeat(4,1fr); gap: 8px; margin-top: 14px;}
.photo-standard{min-height: 76px; padding: 12px; border: 1px solid var(--line); border-radius: 11px; background: rgba(255,255,255,.025);}
.photo-standard i{width: 16px; color: var(--gold);}
.photo-standard strong{display: block; margin-top: 9px; color: var(--cream); font-size: 8px;}
.photo-standard span{display: block; margin-top: 3px; color: var(--faint); font-size: 7px; line-height: 1.4;}
.photo-policy{display: flex; align-items: flex-start; gap: 8px; margin: 13px 0 0; color: var(--muted); font-size: 8px; line-height: 1.55;}
.photo-policy i{flex: 0 0 auto; width: 14px; color: var(--green);}
.mobile-nav{display: none;}
.mobile-discovery, .mobile-header-actions, .mobile-filter-toggle{display: none;}
@media (min-width: 981px) and (max-width: 1260px){.shell{width: min(100% - 22px, 1180px);}
.topbar-inner{gap: 12px;}
.brand{min-width: 142px;}
.nav-btn{gap: 5px; padding-inline: 9px; font-size: 10px;}
.city-pill{display: none;}
.business-entry{padding-inline: 11px; font-size: 8px;}}
@media (min-width: 721px) and (max-width: 1400px){.editor-shell{grid-template-columns: minmax(285px,.72fr) minmax(0,1.28fr);}
.config-row.ticket-row, .config-row.question-row{grid-template-columns: minmax(0,1fr) minmax(0,1fr);}
.question-row .inline-check{grid-column: 1 / -1; min-height: 38px;}}
@media (max-width: 980px){.desktop-nav{display: none;}
.hub-grid{grid-template-columns: repeat(2,minmax(0,1fr));}
.map-hub{grid-template-columns: 1fr;}
.map-hub-copy, .map-hub-visual{min-height: 330px;}
.hero{min-height: 700px;}
.results-grid{grid-template-columns: repeat(2,minmax(0,1fr));}
.results-filters{grid-template-columns: 1fr 1fr;}
.results-filter{border-bottom: 1px solid var(--muted-line);}
.results-apply{min-height: 44px; grid-column: 1/-1;}
.offer-grid{grid-template-columns: 1fr 1fr;}
.offer-card.featured{grid-column: 1 / -1;}
.agenda-item{grid-template-columns: 72px 1fr 110px 25px;}
.agenda-tag{display: none;}
.editorial-content{padding: 38px;}
.detail-layout, .checkout-layout, .business-layout{grid-template-columns: 1fr;}
.booking-card, .order-summary, .live-preview{position: static;}
.feature-row{grid-template-columns: repeat(2,1fr);}
.live-preview{max-width: 420px;}}
@media (max-width: 720px){.shell{width: min(100% - 20px, 620px);}
.topbar{height: auto;}
.topbar-inner{height: 58px; gap: 10px;}
.brand{min-width: auto;}
.brand-isotype{width: 44px; height: 44px; flex-basis: 44px;}
.brand-wordmark-image{width: 112px; height: 38px;}
.brand-wordmark-image img{width: 112px;}
.brand-main{font-size: 19px;}
.brand-sub{margin-top: 4px; font-size: 5px; letter-spacing: .28em;}
.city-pill{min-height: 44px; height: 44px; padding: 0 12px; background: #17191b;}
.account-entry{display: none;}
.business-entry{display: none;}
.global-search{padding: 8px 0; border-top-color: transparent; background: #0e1113;}
.global-search-inner{height: 48px; grid-template-columns: minmax(0,1fr) 48px; gap: 7px; padding: 0 6px 0 14px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; background: #181b1e; box-shadow: 0 8px 24px rgba(0,0,0,.24);}
.global-query{gap: 9px;}
.global-query i{color: #d6d0c8;}
.global-query input{font-size: 13px;}
.global-query-label{display: none;}
.private-demo{min-height: 31px;}
.private-demo .shell{justify-content: center; text-align: center;}
.private-demo span{display: none;}
.topbar{top: 0;}
.global-location{display: none;}
.global-submit{width: 44px; height: 40px; border-radius: 12px;}
.global-submit span{display: none;}
body[data-active-view="experience"] .topbar{display: block !important;}
body[data-active-view="experience"] .experience-intro{padding-top: 10px;}
.view{min-height: calc(100vh - 114px);}
.hero{min-height: 342px; align-items: flex-end;}
.hero-media{background-image: linear-gradient(0deg, #080b0d 0%, rgba(4,6,7,.32) 56%, rgba(4,4,4,.2) 100%), url("https://images.unsplash.com/photo-1703419776762-56bf2020639d?auto=format&fit=crop&q=82&w=1000"); background-position: 64% center;}
.hero-content{width: 100%; padding: 54px 0 18px;}
.hero h1{max-width: 330px; font-size: clamp(42px, 12.5vw, 54px); line-height: .94;}
.hero-lead{max-width: 320px; margin: 12px 0 17px; color: #ded8cf; font-size: 12px; line-height: 1.45;}
.search-panel{width: 100%; display: flex; gap: 7px; overflow-x: auto; border: 0; border-radius: 0; background: transparent; box-shadow: none; backdrop-filter: none; scrollbar-width: none; scroll-snap-type: x proximity;}
.search-panel::-webkit-scrollbar{display: none;}
.search-field{flex: 0 0 126px; min-height: 58px; padding: 9px 12px; border: 1px solid rgba(255,255,255,.14) !important; border-radius: 14px; background: rgba(22,25,27,.96); scroll-snap-align: start;}
.search-field > span{margin-bottom: 4px;}
.search-field select, .search-field input{min-height: 24px; padding: 0; font-size: 11px;}
.search-go{position: sticky; z-index: 2; right: 0; flex: 0 0 58px; width: 58px; min-height: 58px; margin: 0; border-radius: 14px; box-shadow: -12px 0 24px rgba(8,11,13,.72); scroll-snap-align: end;}
.search-go span{display: none;}
.geo-hint{display: none;}
.mobile-discovery{display: block; padding: 22px 0 6px; background: #101315;}
.mobile-discovery-head{display: flex; align-items: center; justify-content: space-between; margin-bottom: 13px;}
.mobile-discovery-head strong{font-size: 14px;}
.mobile-discovery-head button{min-height: 44px; color: #d8d1c8; border: 0; background: transparent; font-size: 10px; font-weight: 800;}
.mobile-category-strip{width: 100%; display: flex; gap: 9px; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none;}
.mobile-category-strip::-webkit-scrollbar{display: none;}
.mobile-category{flex: 0 0 88px; min-height: 82px; display: grid; place-items: center; align-content: center; gap: 7px; padding: 9px 7px; color: #e6e1da; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; background: #181b1e; scroll-snap-align: start; font-size: 9px; font-weight: 800; text-align: center;}
.mobile-category i{width: 23px; height: 23px; color: #c9c2b8;}
.mobile-category.urgent{color: white; border-color: rgba(212,45,50,.42); background: linear-gradient(145deg,rgba(184,32,37,.32),#211719);}
.mobile-category.urgent i{color: #ff6d71;}
#lastMinute{scroll-margin-top: 150px;}
.stats{grid-template-columns: repeat(2,1fr);}
.stat{border-bottom: 1px solid var(--muted-line);}
.stat:nth-child(2){border-right: 0;}
.stat:nth-child(3), .stat:nth-child(4){border-bottom: 0;}
.section{padding: 42px 0;}
.section-head{align-items: flex-start; margin-bottom: 22px;}
.section-head .text-link{display: none;}
.section-title{font-size: 34px;}
.section-copy{max-width: 310px; font-size: 11px; line-height: 1.55;}
.results-header{display: block; margin-bottom: 18px;}
.results-header h1{max-width: 340px; font-size: 36px; line-height: .94; letter-spacing: -.03em;}
.results-count{display: block; margin-top: 12px;}
.results-filters{grid-template-columns: 1fr 1fr; margin-bottom: 18px;}
.results-filter{padding: 9px;}
.results-grid{grid-template-columns: 1fr;}
.result-card{display: grid; grid-template-columns: 112px minmax(0,1fr); min-height: 168px; align-items: stretch;}
.result-media{width: 112px; height: 100%; min-height: 0; aspect-ratio: auto; overflow: hidden;}
.result-media img{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center;}
.result-distance{top: 8px; right: 8px; padding: 5px 6px;}
.result-body{min-width: 0; padding: 14px;}
.result-body h3{min-height: 0; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.result-body p{display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical;}
.result-footer{align-items: flex-start; flex-direction: column; gap: 3px;}
.result-body h3{min-height: auto; font-size: 23px;}
.alert-tabs{width: 100%; max-width: 100%; display: flex; overflow-x: auto; scrollbar-width: none;}
.alert-tabs::-webkit-scrollbar{display: none;}
.alert-tab{flex: 0 0 auto;}
.agenda-location-bar{align-items: stretch; flex-direction: column; gap: 11px; padding: 13px;}
.agenda-location-select{width: 100%; min-width: 0;}
.agenda-location-combo{width: 100%; min-width: 0;}
.discount{min-width: 66px; padding: 9px 10px; font-size: 15px;}
.editorial-lead{grid-template-columns: 1fr;}
.editorial-lead-image{min-height: 250px;}
.editorial-lead-copy{padding: 28px 22px;}
.editorial-lead-copy h2{font-size: 38px;}
.article-grid{grid-template-columns: 1fr;}
.business-facts, .operations-grid, .related-grid{grid-template-columns: 1fr;}
.related-experiences{margin: 30px 0; padding: 20px 16px;}
.related-head{align-items: flex-start; flex-direction: column; gap: 8px;}
.related-head p:last-child{max-width: none;}
.archive-banner{align-items: flex-start; flex-direction: column;}
.sponsored-section{padding-bottom: 10px;}
.sponsored-grid{display: flex; margin-right: -10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;}
.sponsored-grid::-webkit-scrollbar{display: none;}
.sponsored-card{min-width: 78vw; min-height: 318px; scroll-snap-align: start;}
.sponsored-content{padding: 19px;}
.sponsored-content h3{font-size: 27px;}
.sponsored-content p{display: none;}
.sponsored-meta{margin-top: 13px; padding-top: 12px; font-size: 9px;}
.sponsored-meta span:last-child{display: none;}
.offer-grid{display: flex; margin-right: -10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;}
.offer-grid::-webkit-scrollbar{display: none;}
.offer-card, .offer-card.featured{min-width: 82vw; display: block; scroll-snap-align: start;}
.featured .offer-image{height: 212px;}
.offer-image{height: 196px;}
.featured .offer-body, .offer-body{padding: 17px;}
.featured h3, .offer-card h3{font-size: 27px;}
.offer-info{margin: 13px 0; padding: 11px 0;}
.agenda-list{border-top: 0;}
.agenda-item{position: relative; grid-template-columns: 50px minmax(0,1fr); gap: 12px; min-height: 92px; padding: 17px 0;}
.agenda-thumb{width: 54px; height: 54px;}
.agenda-main{gap: 11px; padding-right: 72px;}
.agenda-main h4{font-size: 18px;}
.agenda-meta{display: none;}
.agenda-item > i{display: none;}
.date-block strong{font-size: 29px;}
.date-block{min-height: 67px; padding-left: 7px;}
.date-block strong{font-size: 35px;}
.date-block span{margin-top: 6px; font-size: 8px;}
.agenda-period{margin-top: 31px; font-size: 25px;}
.agenda-price{position: absolute; top: 25px; right: 0; width: 68px; text-align: right;}
.agenda-price strong{font-size: 10px; white-space: nowrap;}
.agenda-price span{max-width: 68px; margin-left: auto; line-height: 1.35;}
.editorial{grid-template-columns: 1fr;}
.editorial-image{min-height: 350px;}
.editorial-content{padding: 33px 25px;}
.business-cta{grid-template-columns: 1fr; gap: 24px; padding: 30px 24px;}
.business-cta h3{font-size: 31px;}
.footer{padding: 32px 0 96px;}
.footer-grid{display: block;}
.footer-brand{padding-bottom: 18px;}
.footer-brand p{display: none;}
.footer-group{border-top: 1px solid var(--line);}
.footer-group summary{min-height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--ink); cursor: pointer; font-size: 11px; font-weight: 800;}
.footer-group summary::-webkit-details-marker{display: none;}
.footer-group summary::after{content: "+"; color: var(--gold); font-size: 19px; font-weight: 500;}
.footer-group[open] summary::after{content: "−";}
.footer-group > div{padding: 0 0 12px;}
.footer-group a{min-height: 38px; display: flex; align-items: center; margin: 0; font-size: 10px;}
.footer-bottom{align-items: flex-start; flex-direction: column; gap: 12px; margin-top: 16px; font-size: 9px; line-height: 1.65;}
.footer-bottom span:last-child{display: flex; flex-wrap: wrap; gap: 4px 10px;}
.footer-bottom span:last-child a{min-height: 32px; display: inline-flex; align-items: center; margin: 0;}
.hub-grid, .hub-grid-territories{grid-template-columns: 1fr;}
.hub-card{min-height: 195px; padding: 23px;}
.hub-feature{grid-template-columns: 1fr; align-items: flex-start; padding: 23px;}
.hub-feature .btn{width: 100%;}
.hub-actions{flex-direction: column;}
.hub-actions .btn{width: 100%;}
.map-hub-copy, .map-hub-visual{min-height: 300px; padding: 23px;}
.detail-hero{height: 530px;}
.detail-title{bottom: 33px;}
.detail-title h1{font-size: 55px;}
.detail-layout{gap: 32px; padding: 38px 0 90px;}
.feature-row{grid-template-columns: repeat(2,1fr);}
.photo-grid{grid-template-rows: 130px 130px;}
.booking-card{border-radius: 17px;}
.subpage{padding: 45px 0 100px;}
.subpage-header{margin-bottom: 25px;}
.subpage-header h1{font-size: 48px;}
.checkout-layout{gap: 20px;}
.checkout-section{padding: 20px;}
.form-grid{grid-template-columns: 1fr;}
.field.full{grid-column: auto;}
.payment-choice{grid-template-columns: 1fr;}
.scenario-buttons{display: grid; grid-template-columns: 1fr 1fr;}
.alert-grid{grid-template-columns: 1fr;}
.panel{padding: 19px;}
.business-top .shell{min-height: 65px; gap: 10px;}
.business-mark{min-width: 0;}
.business-mark strong{font-size: 19px;}
.business-status{flex: 0 0 auto; white-space: nowrap; font-size: 8px;}
.business-layout{padding: 33px 0 90px;}
.business-intro h1{font-size: 30px; line-height: 1.05;}
.timer-chip{display: none;}
.quick-form{padding: 20px;}
.price-pair{grid-template-columns: 1fr;}
.business-submit{align-items: stretch; flex-direction: column;}
.business-submit .btn{width: 100%;}
.geo-hint{align-items: flex-start; line-height: 1.5;}
.geo-hint button{flex: 0 0 110px;}
.geo-hint span{min-width: 0;}
.nearby-list{grid-template-columns: 1fr;}
.nearby-item{grid-template-columns: 76px minmax(0,1fr) auto; gap: 11px;}
.nearby-item img{width: 76px; height: 68px;}
.nearby-item h4{font-size: 18px;}
.distance-pill{min-width: 56px; padding-inline: 7px;}
.account-summary{grid-template-columns: repeat(3,1fr);}
.welcome-card{grid-column: 1 / -1;}
.welcome-avatar{width: 45px; height: 45px;}
.account-stat{min-height: 98px; padding: 16px 10px; text-align: center;}
.account-stat strong{font-size: 27px;}
.collector-card{padding: 19px;}
.collector-head h3{font-size: 26px;}
.account-library{grid-template-columns: repeat(2,1fr);}
.account-list-card{grid-template-columns: auto minmax(0,1fr);}
.account-list-card .card-meta{grid-column: 2; text-align: left;}
.review-grid, .post-booking-actions{grid-template-columns: 1fr;}
.channel-grid{grid-template-columns: 1fr;}
.channel-card.future{grid-column: auto;}
.reservation-row{grid-template-columns: 60px minmax(0,1fr);}
.reservation-status{grid-column: 2; justify-self: start;}
.auth-layout{grid-template-columns: 1fr; gap: 18px;}
.auth-copy{position: static; padding: 0;}
.auth-copy h1{font-size: 49px;}
.auth-copy > p{font-size: 11px;}
.auth-benefits{display: none;}
.auth-card{padding: 20px;}
.role-card{min-height: 112px; padding: 15px;}
.business-tabs{display: flex; gap: 6px; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: x proximity; scrollbar-width: none;}
.business-tabs::-webkit-scrollbar{display: none;}
.business-tabs button{flex: 0 0 auto; min-width: 104px; min-height: 44px; padding-inline: 10px; font-size: 10px; scroll-snap-align: start;}
.config-row, .config-row.ticket-row, .config-row.question-row{grid-template-columns: 1fr;}
.business-layout > *, .business-layout > div > *{min-width: 0; max-width: 100%;}
.business-tabs{width: 100%; max-width: 100%;}
.business-metrics{grid-template-columns: repeat(2,minmax(0,1fr));}
.business-metric{min-width: 0;}
.business-metric strong{overflow-wrap: anywhere;}
.editor-shell, .admin-review-layout{grid-template-columns: 1fr;}
.review-facts{grid-template-columns: 1fr;}
.session-row{grid-template-columns: 72px minmax(0,1fr) auto;}
.session-row .mini-action{display: none;}
.calendar-toolbar{align-items: flex-start; flex-direction: column;}
.portfolio-panel, .quick-form{width: 100%; overflow: hidden;}
.portfolio-head{flex-wrap: wrap;}
.photo-requirements-head{flex-direction: column;}
.photo-requirements-head .btn{width: 100%;}
.photo-standard-grid{grid-template-columns: 1fr 1fr;}
.experience-admin{grid-template-columns: 48px 1fr auto;}
.experience-admin .session-count{display: none;}
.integration-card{grid-template-columns: auto 1fr;}
.integration-card .btn{grid-column: 1 / -1; width: 100%;}
.commission-bar{align-items: flex-start; flex-direction: column;}
body{padding-bottom: calc(72px + env(safe-area-inset-bottom));}
.mobile-nav{position: fixed; z-index: 90; left: 0; right: 0; bottom: 0; display: grid; grid-template-columns: repeat(5,1fr); min-height: 68px; padding: 7px 7px calc(7px + env(safe-area-inset-bottom)); border-top: 1px solid rgba(255,255,255,.1); background: rgba(14,17,19,.97); box-shadow: 0 -12px 30px rgba(0,0,0,.28); backdrop-filter: blur(20px);}
.mobile-nav.guest{grid-template-columns: repeat(5,1fr);}
.mobile-nav.professional{grid-template-columns: repeat(3,1fr);}
.mobile-nav button, .mobile-nav a{min-height: 48px; display: grid; place-items: center; align-content: center; gap: 4px; color: #8f9496; background: none; border: 0; cursor: pointer; font-size: 8px; font-weight: 750;}
.mobile-nav button.active, .mobile-nav a.active{color: white;}
.mobile-nav i{width: 19px; height: 19px;}
.mobile-nav .urgent-mobile{color: white;}
.mobile-nav .urgent-mobile i{width: 38px; height: 38px; padding: 9px; margin-top: -22px; color: white; border-radius: 50%; background: linear-gradient(145deg,var(--red-bright),var(--red-dark)); box-shadow: 0 8px 22px rgba(184,32,37,.42);}
.toast{bottom: 84px;}}
@media (max-width: 720px){.topbar-inner{height: 56px;}
.top-actions, .desktop-nav{display: none;}
.mobile-header-actions{display: flex; align-items: center; gap: 4px;}
.mobile-icon-button, .mobile-menu > summary{width: 44px; height: 44px; display: grid; place-items: center; padding: 0; color: #f2eee8; border: 0; border-radius: 12px; background: transparent; cursor: pointer; list-style: none;}
.mobile-icon-button:hover, .mobile-menu[open] > summary{background: rgba(255,255,255,.07);}
.mobile-icon-button i, .mobile-menu > summary i{width: 21px; height: 21px;}
.mobile-menu{position: relative;}
.mobile-menu > summary::-webkit-details-marker{display: none;}
.mobile-menu-panel{position: absolute; z-index: 120; top: 50px; right: 0; width: 230px; display: grid; gap: 3px; padding: 9px; border: 1px solid rgba(255,255,255,.13); border-radius: 16px; background: rgba(19,22,24,.98); box-shadow: 0 22px 60px rgba(0,0,0,.55);}
.mobile-menu-panel button{min-height: 46px; display: flex; align-items: center; gap: 10px; padding: 0 13px; color: #eee9e2; border: 0; border-radius: 10px; background: transparent; font-size: 13px; font-weight: 700; text-align: left;}
.mobile-menu-panel button:hover{background: rgba(255,255,255,.06);}
.mobile-menu-panel i{width: 18px; height: 18px; color: #c9c1b8;}
.global-search{padding: 7px 0;}
.global-search-inner{height: 46px; min-height: 46px; grid-template-columns: minmax(0,1fr) 44px;}
.global-query input{font-size: 14px;}
.global-submit{width: 40px; height: 40px;}
.hero{min-height: 286px;}
.hero-media{background-position: 62% center;}
.hero-content{padding: 38px 0 15px;}
.hero h1{max-width: 290px; font-size: 38px; line-height: .96;}
.hero-lead{max-width: 285px; margin: 9px 0 14px; font-size: 13px; line-height: 1.4;}
.mobile-filter-toggle{width: 100%; min-height: 52px; display: grid; grid-template-columns: 22px minmax(0,1fr) 20px; align-items: center; gap: 10px; padding: 0 14px; color: #f6f2ec; border: 1px solid rgba(255,255,255,.18); border-radius: 14px; background: rgba(22,25,27,.96); box-shadow: 0 10px 30px rgba(0,0,0,.3); text-align: left;}
.mobile-filter-toggle > i{width: 20px; color: #ff6a6e;}
.mobile-filter-toggle strong{display: block; font-size: 13px; line-height: 1.2;}
.mobile-filter-toggle span{display: block; margin-top: 3px; color: #aaa49c; font-size: 12px;}
.mobile-filter-toggle .toggle-chevron{width: 18px; color: #aaa49c; transition: transform .2s;}
.mobile-filter-toggle[aria-expanded="true"] .toggle-chevron{transform: rotate(180deg);}
.search-panel{display: none; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 8px; padding: 10px; overflow: visible; border: 1px solid rgba(255,255,255,.14); border-radius: 15px; background: rgba(17,20,22,.98); box-shadow: 0 16px 38px rgba(0,0,0,.34);}
.search-panel.is-open{display: grid;}
.search-field{min-height: 54px; padding: 8px 10px; border-radius: 11px; background: #202427;}
.search-field > span{color: #b7b1aa; font-size: 10px; letter-spacing: .06em;}
.search-field select, .search-field input{min-height: 28px; color: white; font-size: 13px;}
.search-go{position: static; grid-column: 1 / -1; width: 100%; min-height: 46px; margin: 0; display: flex; align-items: center; justify-content: center; gap: 8px; border-radius: 11px; box-shadow: none;}
.search-go span{display: inline; font-size: 13px; font-weight: 800;}
.mobile-discovery{padding: 18px 0 4px;}
.mobile-discovery-head strong{font-size: 16px;}
.mobile-discovery-head button{font-size: 12px;}
.mobile-category{flex-basis: 82px; min-height: 76px; font-size: 11px; line-height: 1.2;}
.mobile-category i{width: 21px; height: 21px;}
.section{padding: 34px 0;}
.eyebrow{font-size: 11px;}
.section-title{font-size: 32px;}
.section-copy{font-size: 13px; line-height: 1.45;}
.sponsored-grid{gap: 11px;}
.sponsored-card{min-width: min(68vw, 252px); min-height: 276px; border-radius: 16px;}
.sponsored-content{padding: 16px;}
.sponsored-content h3{margin-top: 7px; font-size: 23px;}
.sponsored-content .offer-type{font-size: 11px; line-height: 1.35;}
body .sponsored-meta{font-size: 12px;}
.offer-grid{gap: 11px;}
.offer-card, .offer-card.featured{min-width: min(74vw, 282px); border-radius: 16px;}
.featured .offer-image, .offer-image{height: 158px;}
.featured .offer-body, .offer-body{padding: 15px;}
.featured h3, .offer-card h3{margin: 7px 0 6px; font-size: 24px;}
.offer-type{font-size: 11px; line-height: 1.35;}
.offer-location{font-size: 12px; line-height: 1.35;}
.offer-info{gap: 6px; margin: 11px 0; padding: 10px 0;}
.offer-info span{font-size: 11px;}
.offer-info strong{font-size: 12px;}
.countdown-label, .old-price, .price small{font-size: 11px;}
.discount small, body #view-home .like-label{font-size: 11px;}
.countdown{font-size: 16px;}
.price strong{font-size: 27px;}
.demo-chip{font-size: 11px; line-height: 1.4;}
#nearbySection .section-head{align-items: center; margin-bottom: 14px;}
#nearbySection .section-title{font-size: 30px;}
#nearbySection .text-link{min-height: 44px; display: inline-flex; font-size: 12px;}
.nearby-list{gap: 8px;}
.nearby-item{grid-template-columns: minmax(0,1fr) auto; gap: 10px; min-height: 68px; padding: 12px 13px;}
.nearby-item img{display: none;}
.nearby-item h4{margin-bottom: 5px; font-size: 18px; line-height: 1.15;}
.nearby-item p{color: #b5aea6; font-size: 12px; line-height: 1.35;}
.distance-pill{min-width: 58px; font-size: 12px;}
.home-agenda .section-head{margin-bottom: 12px;}
.home-agenda .agenda-item{grid-template-columns: 58px minmax(0,1fr); min-height: 76px; padding: 11px 0;}
.home-agenda .agenda-main{padding-right: 0;}
.home-agenda .agenda-main h4{margin-bottom: 5px; font-size: 18px; line-height: 1.15;}
.home-agenda .agenda-main p{color: #b9b2aa; font-size: 12px; line-height: 1.35;}
.home-agenda .date-block{min-height: 58px;}
.home-agenda .date-block strong{font-size: 30px;}
.home-agenda .date-block span{font-size: 11px;}
.mobile-nav button, .mobile-nav a{font-size: 10px;}}
.experience-intro{padding: 28px 0 0; border-bottom: 1px solid var(--line); background: linear-gradient(180deg, #111518 0%, var(--bg) 100%);}
.experience-gallery{display: grid; grid-template-columns: minmax(0,1.8fr) .62fr .62fr; grid-template-rows: 225px 225px; gap: 10px;}
.experience-media-main, .experience-media-side, .experience-video-card{position: relative; min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--surface-2);}
.experience-media-main{grid-row: 1 / span 2; contain: paint; isolation: isolate;}
.experience-media-main img, .experience-media-side img, .experience-video-card img{width: 100%; height: 100%; object-fit: cover; filter: brightness(.82) saturate(.88) contrast(1.05); transition: transform .35s ease;}
.experience-media-main img{cursor: zoom-in;}
.experience-media-side, .experience-video-card{padding: 0; color: var(--ink); cursor: pointer;}
.experience-media-side:hover img, .experience-video-card:hover img{transform: scale(1.025);}
.experience-video-card{grid-column: 2 / 4;}
.experience-video-card::after{content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(9,12,14,.78), rgba(9,12,14,.2));}
.experience-media-caption{position: absolute; z-index: 2; left: 14px; bottom: 13px; display: inline-flex; align-items: center; gap: 7px; color: #f4f5f2; font-size: 9px; font-weight: 800;}
.experience-media-caption i{width: 15px;}
.experience-media-main .back-button{top: 18px; left: 18px;}
.experience-media-main .image-disclaimer{top: 18px; right: 18px;}
.experience-favorite-button{position: fixed; z-index: 120; top: 118px; right: max(16px, calc((100vw - 1280px) / 2 + 16px)); width: 48px; min-width: 48px; height: 48px; min-height: 48px; display: grid; place-items: center; padding: 0; color: white; border: 1px solid rgba(255,255,255,.3); border-radius: 50%; background: #b82025; box-shadow: 0 8px 26px rgba(0,0,0,.38); cursor: pointer;}
body.admin-bar .experience-favorite-button{top: 150px;}
.experience-favorite-button:hover, .experience-favorite-button[aria-pressed="true"]{background: #d12b31; transform: translateY(-1px);}
.experience-favorite-button i{width: 21px; height: 21px;}
body.lightbox-open{overflow: hidden;}
.photo-lightbox{position: fixed; z-index: 500; inset: 0; display: grid; grid-template-columns: 64px minmax(0,1fr) 64px; align-items: center; gap: 18px; padding: 28px; color: var(--ink); background: rgba(3,4,5,.96); backdrop-filter: blur(18px);}
.photo-lightbox[hidden]{display: none;}
.lightbox-figure{min-width: 0; margin: 0; text-align: center;}
.lightbox-image{display: block; width: auto; max-width: 100%; height: auto; max-height: calc(100vh - 125px); margin: 0 auto; object-fit: contain; border-radius: 12px; box-shadow: 0 30px 100px rgba(0,0,0,.7); touch-action: pan-y;}
.lightbox-caption{display: flex; justify-content: center; align-items: center; gap: 14px; margin-top: 14px; color: var(--soft); font-size: 11px; line-height: 1.5;}
.lightbox-caption small{flex: 0 0 auto; color: var(--faint); font-size: 9px; font-weight: 800;}
.lightbox-button{width: 52px; height: 52px; display: grid; place-items: center; color: white; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; background: rgba(23,25,27,.82); cursor: pointer; transition: border-color .2s, background .2s, transform .2s;}
.lightbox-button:hover{border-color: rgba(255,255,255,.38); background: rgba(44,46,48,.9); transform: scale(1.04);}
.lightbox-button i{width: 24px; height: 24px;}
.lightbox-close{position: absolute; z-index: 2; top: 20px; right: 20px;}
.lightbox-prev{justify-self: end;}
.lightbox-next{justify-self: start;}
.experience-title-block{display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; padding-top: 28px; padding-bottom: 31px;}
.experience-title-copy{min-width: 0;}
.experience-title-copy h1{max-width: 880px; margin: 8px 0 15px; font-family: var(--serif); font-size: clamp(48px,5.7vw,72px); font-weight: 600; line-height: .95; letter-spacing: -.022em;}
.experience-labels, .experience-head-meta{display: flex; flex-wrap: wrap; align-items: center; gap: 8px;}
.experience-head-meta{gap: 16px; color: var(--muted); font-size: 10px;}
.experience-head-meta span{display: inline-flex; align-items: center; gap: 6px;}
.experience-head-meta i{width: 14px; color: var(--gold);}
.experience-label{display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; color: #d9d4cd; border: 1px solid var(--line); border-radius: 999px; background: rgba(27,32,36,.84); font-size: 8px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;}
.experience-label i{width: 12px;}
.experience-label.verified{color: #cfe9d8; border-color: rgba(88,170,121,.32); background: rgba(88,170,121,.09);}
.experience-alert-top{flex: 0 0 auto; margin-bottom: 4px;}
.experience-alert-top i{width: 16px;}
.detail-layout{grid-template-columns: minmax(0,1fr) 380px; gap: 48px; padding-top: 42px;}
.detail-sidebar{min-width: 0;}
.detail-sidebar .booking-card{position: sticky; top: 104px;}
.detail-sidebar .related-experiences{margin-top: 16px;}
.experience-keyfacts{display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-bottom: 42px;}
.experience-keyfact{min-height: 112px; padding: 17px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface);}
.experience-keyfact > i{width: 18px; color: var(--gold);}
.experience-keyfact span{display: block; margin-top: 13px; color: var(--faint); font-size: 8px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;}
.experience-keyfact strong{display: block; margin-top: 5px; font-size: 11px; line-height: 1.35;}
.experience-keyfact.fear strong{color: var(--red-bright);}
.experience-section{margin-top: 42px; padding-top: 38px; border-top: 1px solid var(--line);}
.experience-section:first-of-type{margin-top: 0; padding-top: 0; border-top: 0;}
.experience-section h2{margin-bottom: 13px;}
.experience-section > p{max-width: 780px; color: var(--muted); font-size: 13px; line-height: 1.8;}
.experience-schedule{padding: 24px; border: 1px solid var(--line); border-radius: 17px; background: var(--surface);}
.experience-schedule h2{margin: 0 0 5px; font-size: 31px;}
.experience-schedule-note{margin: 0 0 18px; color: var(--muted); font-size: 12px;}
.schedule-controls{display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 22px;}
.schedule-control-group .select-label{display: block; margin-bottom: 8px; color: #c1c7c3; font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;}
.schedule-control-group .date-options{margin-bottom: 0;}
.experience-hours-only{display: flex; align-items: center; gap: 10px; margin-top: 16px; padding: 15px; color: var(--muted); border: 1px solid var(--line); border-radius: 12px; background: var(--surface-2); font-size: 12px; line-height: 1.5;}
.experience-hours-only i{flex: 0 0 auto; width: 18px; color: var(--gold);}
.included-grid{display: grid; grid-template-columns: repeat(2,1fr); gap: 9px; margin-top: 22px;}
.included-item{display: flex; align-items: flex-start; gap: 10px; padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); color: var(--muted); font-size: 9px; line-height: 1.5;}
.included-item i{flex: 0 0 auto; width: 15px; color: var(--green);}
.experience-answer-grid{display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; margin-top: 22px;}
.experience-answer-card{padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface);}
.experience-answer-card.warning{border-color: rgba(211,166,94,.28); background: rgba(211,166,94,.055);}
.experience-answer-card.sensitive{border-color: rgba(182,55,60,.25); background: rgba(182,55,60,.055);}
.experience-answer-card span{display: flex; align-items: center; gap: 7px; color: var(--gold); font-size: 8px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase;}
.experience-answer-card span i{width: 14px;}
.experience-answer-card strong{display: block; margin-top: 9px; font-size: 11px; line-height: 1.45;}
.experience-answer-card p{margin: 7px 0 0; color: var(--muted); font-size: 9px; line-height: 1.6;}
.location-card, .organizer-card{display: grid; grid-template-columns: 1.15fr .85fr; gap: 22px; margin-top: 22px; padding: 22px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface);}
.location-card h3, .organizer-card h3{margin: 0 0 8px; font-family: var(--serif); font-size: 27px;}
.location-card p, .organizer-card p{margin: 0; color: var(--muted); font-size: 9px; line-height: 1.65;}
.location-list{display: grid; gap: 9px;}
.location-list div{display: flex; gap: 9px; color: var(--muted); font-size: 9px; line-height: 1.45;}
.location-list i{flex: 0 0 auto; width: 15px; color: var(--gold);}
.location-map{position: relative; min-height: 220px; overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background-color: #dedbd2; background-image: linear-gradient(30deg,transparent 46%,rgba(116,119,112,.32) 47%,rgba(116,119,112,.32) 51%,transparent 52%),linear-gradient(150deg,transparent 44%,rgba(116,119,112,.24) 45%,rgba(116,119,112,.24) 49%,transparent 50%),linear-gradient(90deg,transparent 49%,rgba(255,255,255,.72) 50%,transparent 52%); background-size: 82px 66px,104px 92px,58px 100%;}
.location-map::before{content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 28% 34%,rgba(111,151,116,.34) 0 8%,transparent 9%),radial-gradient(circle at 72% 67%,rgba(111,151,116,.28) 0 10%,transparent 11%);}
.location-map-pin{position: absolute; z-index: 2; top: 42%; left: 50%; width: 48px; height: 48px; display: grid; place-items: center; color: white; border: 4px solid rgba(255,255,255,.9); border-radius: 50% 50% 50% 12%; background: #b82025; box-shadow: 0 8px 22px rgba(0,0,0,.28); transform: translate(-50%,-50%) rotate(-45deg);}
.location-map-pin i{width: 22px; transform: rotate(45deg);}
.location-map .btn{position: absolute; z-index: 3; right: 12px; bottom: 12px; left: 12px; min-height: 44px;}
.organizer-card{grid-template-columns: 1fr auto; align-items: center;}
.organizer-verified{display: inline-flex; align-items: center; gap: 7px; margin-bottom: 10px; color: var(--green); font-size: 8px; font-weight: 800; text-transform: uppercase;}
.organizer-verified i{width: 14px;}
.organizer-card .btn{white-space: nowrap;}
.booking-card{background: var(--surface);}
.booking-price-row{display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin: 7px 0 20px;}
.booking-price-row .booking-price{margin: 0;}
.booking-availability{display: inline-flex; align-items: center; gap: 5px; color: var(--green); font-size: 8px; font-weight: 800;}
.booking-availability i{width: 12px;}
.booking-card .select-label{display: block; margin: 15px 0 8px; color: var(--muted); font-size: 8px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase;}
.time-options{display: grid; grid-template-columns: repeat(3,1fr); gap: 7px;}
.time-option{min-height: 38px; color: var(--muted); border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); cursor: pointer; font-size: 9px; font-weight: 800;}
.time-option.active{color: var(--ink); border-color: var(--green); background: rgba(88,170,121,.09);}
.booking-summary-line{display: flex; justify-content: space-between; gap: 12px; margin: 17px 0 4px; padding-top: 15px; color: var(--muted); border-top: 1px solid var(--line); font-size: 8px;}
.booking-summary-line strong{color: var(--ink);}
.mobile-booking-bar{display: none;}
@media (max-width: 980px){.experience-gallery{grid-template-rows: 190px 190px;}
.detail-layout{grid-template-columns: 1fr;}
.detail-sidebar .booking-card{position: static;}
.experience-keyfacts{grid-template-columns: repeat(3,1fr);}}
@media (max-width: 720px){#view-experience{padding-bottom: 145px;}
.experience-intro{padding-top: 10px;}
.experience-gallery{grid-template-columns: 1fr 1fr; grid-template-rows: 220px 92px 76px; gap: 7px;}
.experience-media-main{grid-column: 1 / -1; grid-row: 1; border-radius: 13px;}
.experience-media-side{grid-row: 2; border-radius: 11px;}
.experience-video-card{grid-column: 1 / -1; grid-row: 3; border-radius: 11px;}
.experience-media-main .back-button{top: 12px; left: 12px;}
.experience-media-main .image-disclaimer{top: 12px; right: 12px;}
.photo-lightbox{grid-template-columns: 1fr 1fr; align-content: center; gap: 14px; padding: 68px 14px 22px;}
.lightbox-figure{grid-column: 1 / -1; grid-row: 1;}
.lightbox-image{max-height: calc(100vh - 180px); border-radius: 9px;}
.lightbox-prev, .lightbox-next{grid-row: 2; justify-self: center;}
.lightbox-button{width: 48px; height: 48px;}
.lightbox-close{top: 12px; right: 12px;}
.lightbox-caption{align-items: flex-start; justify-content: space-between; text-align: left;}
.experience-title-block{align-items: flex-start; padding-top: 20px; padding-bottom: 24px;}
.experience-title-copy h1{margin-top: 10px; font-size: 48px;}
.experience-alert-top{min-height: 44px; padding-inline: 13px; font-size: 11px;}
.experience-head-meta{gap: 9px 14px; font-size: 9px;}
.detail-layout{gap: 28px; padding-top: 28px; padding-bottom: 40px;}
.experience-keyfacts{grid-template-columns: repeat(2,1fr); gap: 8px; margin-bottom: 31px;}
.experience-keyfact{min-height: 101px; padding: 14px;}
.experience-section{margin-top: 32px; padding-top: 30px;}
.experience-section h2{font-size: 31px;}
.experience-schedule{padding: 18px;}
.schedule-controls{grid-template-columns: 1fr; gap: 18px;}
.included-grid, .experience-answer-grid, .location-card, .organizer-card{grid-template-columns: 1fr;}
.location-card, .organizer-card{padding: 18px;}
.organizer-card .btn{width: 100%;}
.mobile-booking-price span, .mobile-booking-price small{display: block; color: var(--faint); font-size: 7px; font-weight: 800; text-transform: uppercase;}
.mobile-booking-price strong{display: inline-block; margin: 1px 2px 0 0; font-family: var(--sans); font-size: 22px; letter-spacing: -.04em;}
.mobile-booking-bar .btn{min-height: 44px; padding: 0 18px;}}
.sr-only{position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important;}
.skip-link{position: fixed; z-index: 500; top: 10px; left: 10px; padding: 12px 16px; color: #111518; border-radius: 9px; background: #f3c86d; font-size: 12px; font-weight: 850; transform: translateY(-160%); transition: transform .18s ease;}
.skip-link:focus{transform: translateY(0);}
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible{outline: 3px solid #f3c86d !important; outline-offset: 3px !important; box-shadow: 0 0 0 6px rgba(243,200,109,.18) !important;}
main:focus, .view:focus{outline: none !important; box-shadow: none !important;}
:where(input, select, textarea)[aria-invalid="true"]{border-color: #f28589 !important; box-shadow: 0 0 0 2px rgba(242,133,137,.18);}
input::placeholder, textarea::placeholder{color: #9ca39f; opacity: 1;}
.field > span, .search-field label, .search-field > span, .results-filter span, .select-label, .mini-label{color: #c1c7c3;}
.field-error{display: flex; align-items: flex-start; gap: 6px; margin: 7px 0 0; color: #ffb9bc; font-size: 10px; font-weight: 700; line-height: 1.45;}
.field-error::before{content: "!"; flex: 0 0 auto; width: 16px; height: 16px; display: grid; place-items: center; border: 1px solid currentColor; border-radius: 50%; font-size: 9px;}
.btn, .nav-btn, .account-entry, .city-pill, .existing-login, .quick-buy-btn, .alert-offer-btn, .notification-book, .payment-option, .date-option, .time-option, .scenario-button, .alert-tab, .channel-card, .role-card, .library-card, .global-submit, .search-go, .agenda-location-combo button{min-height: 44px;}
.field input, .field select, .field textarea, .search-field select, .search-field input, .results-filter select, .results-filter input, .agenda-location-combo input{min-height: 44px;}
.like-btn, .mini-action, .back-button, .experience-save-top{min-width: 44px; min-height: 44px;}
.like-btn, .back-button{width: auto; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 0 11px; border-radius: 999px;}
.like-label, .back-label{font-size: 8px; font-weight: 850;}
.global-search-inner{grid-template-columns: minmax(0,1fr) auto auto;}
.global-query{position: relative; min-height: 44px; padding-top: 12px;}
.global-query-label{position: absolute; top: 1px; left: 27px; color: #c1c7c3; font-size: 7px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase;}
.global-search-inner{height: auto; min-height: 64px;}
.global-query input{min-height: 44px; padding-top: 8px;}
#heroGeoButton{min-height: 44px;}
.global-location-wrap{position: relative; min-width: 150px; min-height: 64px; padding: 13px 11px 2px; border: 1px solid var(--line); border-radius: 15px; background: var(--surface-2);}
.global-location-wrap > span{position: absolute; top: 5px; left: 12px; color: #c1c7c3; font-size: 7px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase;}
.global-location-wrap .global-location{width: 100%; height: 44px; padding: 8px 0 0; border: 0; background: transparent; outline: 0;}
body[data-active-view="results"] .global-location-wrap{display: none;}
.location-suggestions{position: fixed; z-index: 10000; max-height: min(330px,45vh); overflow-y: auto; padding: 6px; border: 1px solid rgba(255,255,255,.16); border-radius: 13px; background: #171a1d; box-shadow: 0 20px 50px rgba(0,0,0,.58);}
.location-suggestions[hidden]{display: none;}
.location-suggestion{width: 100%; min-height: 52px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 8px 10px; color: var(--ink); border: 0; border-radius: 9px; background: transparent; cursor: pointer; text-align: left;}
.location-suggestion:hover, .location-suggestion.active{background: rgba(255,255,255,.085);}
.location-suggestion span{min-width: 0; display: block;}
.location-suggestion strong{display: block; overflow: hidden; font-size: 13px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap;}
.location-suggestion small{display: block; margin-top: 4px; overflow: hidden; color: #aeb4b1; font-size: 11px; text-overflow: ellipsis; white-space: nowrap;}
.location-suggestion em{flex: 0 0 auto; color: var(--gold); font-size: 9px; font-style: normal; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;}
.location-no-results{padding: 14px 12px; color: #c2c7c4; font-size: 12px; line-height: 1.45;}
.global-submit{width: auto; min-width: 82px; height: 44px; display: flex; align-items: center; justify-content: center; gap: 7px; padding: 0 13px; font-size: 9px; font-weight: 850;}
.global-submit i{width: 15px;}
.agenda-location-combo{grid-template-columns: auto minmax(0,1fr) auto;}
.agenda-location-visible-label{align-self: center; color: #c1c7c3; font-size: 8px; font-weight: 850; text-transform: uppercase;}
.agenda-location-combo button{width: auto; min-width: 84px; display: flex; align-items: center; justify-content: center; gap: 6px; padding: 0 12px; font-size: 9px; font-weight: 800;}
.search-go{width: auto; min-width: 78px; display: flex; align-items: center; justify-content: center; gap: 7px; padding: 0 13px; font-size: 9px; font-weight: 850;}
.media-alternative{width: min(1320px, calc(100% - 32px)); margin: 10px auto 0; border: 1px solid var(--line); border-radius: 12px; background: var(--surface);}
.media-alternative summary{min-height: 44px; display: flex; align-items: center; gap: 9px; padding: 0 14px; color: var(--ink); cursor: pointer; font-size: 9px; font-weight: 800; list-style: none;}
.media-alternative summary::-webkit-details-marker{display: none;}
.media-alternative summary i{width: 16px; color: var(--gold);}
.media-alternative p{margin: 0; padding: 0 14px 14px 39px; color: var(--muted); font-size: 10px; line-height: 1.65;}
.mini-action{width: auto; padding: 0 11px; gap: 6px; border-radius: 10px;}
.mini-action .action-text{font-size: 8px; font-weight: 800;}
.toggle{width: auto; min-width: 90px; height: 44px; padding: 0 10px 0 36px; color: var(--muted); border: 1px solid var(--line); background: var(--surface-3); font-size: 8px; font-weight: 850;}
.toggle::after{top: 13px; left: 10px; width: 16px; height: 16px; background: #aeb5b1;}
.toggle.on{color: #d9f2e2; border-color: rgba(88,170,121,.5); background: rgba(88,170,121,.12);}
.toggle.on::after{left: 10px; background: var(--green); box-shadow: 0 0 0 3px rgba(88,170,121,.16);}
.session-row .capacity-pill::before{display: inline-block; margin-right: 5px; font-weight: 900;}
.session-row .capacity-pill::before{content: "Disponible ·"; color: var(--green);}
.session-row .capacity-pill.warning::before{content: "Pocas plazas ·"; color: var(--warning);}
.session-row .capacity-pill.danger::before{content: "Atención ·"; color: #f28589;}
.test-payment-banner, .real-flow-panel{display: flex; align-items: flex-start; gap: 13px; padding: 16px; margin-bottom: 18px; border: 1px solid rgba(88,170,121,.35); border-radius: 16px; background: linear-gradient(135deg,rgba(88,170,121,.12),rgba(17,20,19,.94));}
.test-payment-banner > i, .real-flow-panel > i{flex: 0 0 auto; width: 20px; color: var(--green);}
.test-payment-banner strong, .real-flow-panel strong{display: block; color: var(--ink); font-size: 11px;}
.test-payment-banner span, .real-flow-panel p{display: block; margin: 4px 0 0; color: var(--muted); font-size: 9px; line-height: 1.55;}
.real-flow-panel{display: block; margin-bottom: 20px;}
.real-flow-head{display: flex; align-items: flex-start; justify-content: space-between; gap: 16px;}
.real-flow-head h3{margin: 3px 0 0; font-family: var(--serif); font-size: 26px;}
.real-flow-badge{display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 0 10px; color: #d9f2e2; border: 1px solid rgba(88,170,121,.45); border-radius: 999px; font-size: 8px; font-weight: 850; text-transform: uppercase;}
.real-flow-steps{display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 8px; margin-top: 16px;}
.real-flow-step{min-height: 86px; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: rgba(0,0,0,.16);}
.real-flow-step span{display: block; color: var(--faint); font-size: 7px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase;}
.real-flow-step strong{margin-top: 6px; font-size: 9px; line-height: 1.4;}
.real-flow-step.done{border-color: rgba(88,170,121,.38); background: rgba(88,170,121,.08);}
.real-flow-step.done span::before{content: "✓ "; color: var(--green);}
.live-notification-panel{margin: 0 0 20px; border-color: rgba(195,155,93,.38);}
.live-notification-item{display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 14px 0; border-top: 1px solid var(--line);}
.live-notification-item:first-child{border-top: 0;}
.live-notification-icon{width: 42px; height: 42px; display: grid; place-items: center; color: var(--gold); border: 1px solid rgba(195,155,93,.35); border-radius: 50%; background: rgba(195,155,93,.08);}
.live-notification-icon i{width: 18px;}
.live-notification-item h4{margin: 0 0 4px; font-size: 11px;}
.live-notification-item p{margin: 0; color: var(--muted); font-size: 9px; line-height: 1.5;}
.live-offer-note{display: inline-flex; align-items: center; gap: 5px; margin-top: 7px; color: #d9f2e2; font-size: 8px; font-weight: 800;}
.live-offer-note i{width: 14px;}
.flow-message, .booking-note, .experience-answer-card p, .location-card p, .organizer-card p{font-size: 10px;}
#view-home .info-badge{display: none;}
.sponsored-content p{font-size: 13px; line-height: 1.55;}
.sponsored-meta{font-size: 11px;}
.detail-layout{grid-template-columns: minmax(0,1fr) 340px; gap: 38px; padding-top: 34px; padding-bottom: 24px;}
.experience-head-meta{font-size: 12px;}
.experience-label{font-size: 10px;}
.experience-keyfacts{grid-template-columns: repeat(4,minmax(0,1fr)); gap: 9px; margin-bottom: 32px;}
.experience-keyfact{min-height: 94px; padding: 15px;}
.experience-keyfact span{margin-top: 9px; font-size: 10px;}
.experience-keyfact strong{font-size: 14px;}
.experience-keyfact small{display: block; margin-top: 4px; color: var(--muted); font-size: 11px; line-height: 1.35;}
.experience-section{margin-top: 36px; padding-top: 34px;}
.experience-overview > p{max-width: 720px; font-size: 15px; line-height: 1.75;}
.practical-section > h2{margin-bottom: 18px;}
.experience-accordions{overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--surface);}
.experience-disclosure + .experience-disclosure{border-top: 1px solid var(--line);}
.experience-disclosure summary{min-height: 74px; display: grid; grid-template-columns: 40px minmax(0,1fr) 22px; align-items: center; gap: 13px; padding: 12px 18px; list-style: none; cursor: pointer;}
.experience-disclosure summary::-webkit-details-marker, .sidebar-disclosure summary::-webkit-details-marker, .location-disclosure summary::-webkit-details-marker{display: none;}
.disclosure-icon{width: 40px; height: 40px; display: grid; place-items: center; color: var(--gold); border: 1px solid rgba(195,155,93,.25); border-radius: 12px; background: rgba(195,155,93,.07);}
.disclosure-icon i{width: 18px;}
.experience-disclosure summary strong{display: block; color: var(--ink); font-size: 14px;}
.experience-disclosure summary small{display: block; margin-top: 3px; color: var(--muted); font-size: 12px;}
.disclosure-chevron{width: 18px; color: var(--muted); transition: transform .2s ease;}
.experience-disclosure[open] .disclosure-chevron{transform: rotate(180deg);}
.disclosure-body{margin: 0; padding: 4px 18px 18px 71px; border: 0;}
.disclosure-body.included-grid{margin-top: 0;}
.included-item{padding: 12px; font-size: 12px;}
.practical-list{display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px;}
.practical-list > div{padding: 13px; border: 1px solid var(--line); border-radius: 11px; background: var(--surface-2);}
.practical-list span{display: block; color: var(--gold); font-size: 10px; font-weight: 800; text-transform: uppercase;}
.practical-list strong{display: block; margin-top: 6px; font-size: 13px; line-height: 1.45;}
.location-card{grid-template-columns: 1fr; gap: 15px;}
.location-card p, .organizer-card p{font-size: 12px;}
.location-disclosure{padding-top: 14px; border-top: 1px solid var(--line);}
.location-disclosure summary{display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--ink); font-size: 13px; font-weight: 750; cursor: pointer;}
.location-disclosure summary i{width: 18px; color: var(--gold);}
.location-disclosure .location-list{margin-top: 16px;}
.location-list div{font-size: 12px;}
.organizer-verified{font-size: 10px;}
.booking-card .mini-label, .booking-card .select-label, .booking-summary-line, .booking-availability{font-size: 10px;}
.time-option{min-height: 44px; font-size: 12px;}
.action-scope-label{font-size: 10px;}
.sidebar-disclosure{margin-top: 12px; border: 1px solid rgba(255,255,255,.1); border-radius: 13px; background: rgba(255,255,255,.025);}
.sidebar-disclosure summary{min-height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 13px; color: var(--ink); font-size: 12px; cursor: pointer;}
.sidebar-disclosure summary span{display: inline-flex; align-items: center; gap: 7px;}
.sidebar-disclosure summary i{width: 16px; color: var(--gold);}
.sidebar-disclosure summary > i{transition: transform .2s ease;}
.sidebar-disclosure[open] summary > i{transform: rotate(180deg);}
.sidebar-disclosure > div{padding: 0 12px 12px;}
.profile-origin{font-size: 10px;}
.related-experiences-full{margin-top: 20px; margin-bottom: 90px;}
.related-experiences-full .related-grid{grid-template-columns: repeat(4,minmax(0,1fr));}
.related-card p{font-size: 12px; line-height: 1.55;}
.related-meta span{font-size: 10px;}
.detail-grid{display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 38px; padding: 34px 0 90px;}
.detail-grid > .booking-card{position: sticky; top: 104px; align-self: start;}
.php-keyfacts{grid-template-columns: repeat(3,minmax(0,1fr)); margin: 30px 0;}
.single-info-disclosure{margin-top: 22px; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--surface);}
.single-info-disclosure .disclosure-body p{margin: 0; color: var(--muted); font-size: 13px; line-height: 1.6;}
.business-profile-layout{padding-bottom: 38px;}
.business-catalog-section{padding: 36px 0 90px; border-top: 1px solid var(--line);}
.business-catalog-section > h2{margin: 4px 0 24px;}
.business-catalog-section .results-grid{grid-template-columns: repeat(3,minmax(0,1fr));}
.result-image{overflow: hidden; aspect-ratio: 16/10; background: var(--surface-2);}
.result-image img{width: 100%; height: 100%; object-fit: cover;}
.business-public-profile{padding: 34px 0 100px; background: #050606;}
.business-profile-hero{min-height: 410px; display: grid; grid-template-columns: minmax(0,.82fr) minmax(520px,1.18fr); overflow: hidden; padding: 0; border: 1px solid #2d3133; border-radius: 22px; background: linear-gradient(145deg,#16191b,#0d0f10); box-shadow: 0 28px 80px rgba(0,0,0,.34);}
.business-profile-hero.without-media{grid-template-columns: minmax(0,860px); min-height: 340px;}
.business-profile-hero-copy{display: flex; flex-direction: column; justify-content: center; padding: clamp(32px,5vw,70px);}
.business-profile-hero h1{max-width: 700px; margin: 0; font-family: var(--serif); font-size: clamp(46px,5.4vw,78px); font-weight: 650; line-height: .98; letter-spacing: -.03em;}
.business-profile-lead{max-width: 680px; margin: 22px 0 0; color: #d7d3cc; font-size: 18px; line-height: 1.65;}
.business-profile-hero .business-profile-meta{gap: 10px; margin: 23px 0 0;}
.business-profile-hero .business-profile-meta span{min-height: 38px; padding: 8px 12px; color: #d9d4cc; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; background: rgba(255,255,255,.035); font-size: 14px; line-height: 1.35;}
.business-profile-hero-media{position: relative; min-height: 410px; margin: 0; overflow: hidden; background: #0b0c0d;}
.business-profile-hero-media::after{content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(14,16,17,.58),transparent 28%); pointer-events: none;}
.business-profile-hero-media img{width: 100%; height: 100%; object-fit: cover;}
.business-profile-hero .single-b-review-summary{width: max-content; max-width: 100%; margin-top: 24px;}
.business-profile-overview{display: grid; grid-template-columns: minmax(0,1fr) minmax(330px,390px); gap: 34px; align-items: start; padding-top: 34px;}
.business-profile-main{min-width: 0; display: grid; gap: 24px;}
.business-profile-section, .business-profile-info-card{padding: clamp(24px,3vw,38px); border: 1px solid #2d3133; border-radius: 18px; background: #111416;}
.business-profile-section h2, .business-profile-info-card h2, .business-location-section h2, .business-catalog-section > h2{margin: 0; font-family: var(--serif); font-size: clamp(28px,3vw,42px); font-weight: 620; line-height: 1.08;}
.business-profile-copy{margin-top: 22px; color: #d3cfc8; font-size: 17px; line-height: 1.78;}
.business-profile-copy p{margin: 0 0 16px;}
.business-profile-copy p:last-child{margin-bottom: 0;}
.business-keyfacts{display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 24px;}
.business-keyfacts > div{min-height: 108px; padding: 18px; border: 1px solid rgba(255,255,255,.12); border-radius: 13px; background: #171a1c;}
.business-keyfacts span, .business-info-row small{display: block; color: #d89b63; font-size: 12px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;}
.business-keyfacts strong{display: block; margin-top: 9px; color: #fff; font-size: 16px; line-height: 1.5;}
.business-profile-sidebar{min-width: 0;}
.business-profile-info-card{padding: 26px;}
.business-profile-info-card h2{margin-bottom: 18px; font-size: 29px;}
.business-info-row{min-height: 72px; display: grid; grid-template-columns: 40px minmax(0,1fr); gap: 13px; align-items: start; padding: 15px 0; border-top: 1px solid rgba(255,255,255,.1);}
.business-info-row > svg{width: 21px; height: 21px; margin: 4px auto 0; color: #d33a3f;}
.business-info-row strong{display: block; margin-top: 6px; color: #f4f1eb; font-size: 15px; line-height: 1.5; overflow-wrap: anywhere;}
.business-profile-actions{display: grid; gap: 10px; padding-top: 18px;}
.business-profile-actions .btn{width: 100%;}
.business-location-section{display: grid; grid-template-columns: minmax(300px,.46fr) minmax(0,1fr); gap: 0; overflow: hidden; margin-top: 34px; padding: 0; border: 1px solid #2d3133; border-radius: 18px; background: #111416;}
.business-location-copy{padding: clamp(26px,4vw,46px);}
.business-location-copy h2{overflow-wrap: anywhere;}
.business-location-copy > p:not(.eyebrow){margin: 18px 0 0; color: #bbb6ae; font-size: 16px; line-height: 1.65;}
.business-location-copy .text-link{margin-top: 22px; color: #fff; font-size: 15px;}
.business-map{min-height: 360px; background: #ece9e2;}
.business-map iframe{width: 100%; height: 100%; min-height: 360px; display: block; border: 0; filter: none;}
.business-public-profile .business-catalog-section{margin-top: 34px; padding: 36px; border: 1px solid #2d3133; border-radius: 18px; background: #0e1011;}
.business-public-profile .business-catalog-section .results-grid{margin-top: 26px;}
.business-public-profile .result-card{overflow: hidden; border: 1px solid #303436; border-radius: 15px; background: #151819;}
.business-public-profile .result-card a{height: 100%; display: flex; flex-direction: column;}
.business-public-profile .result-body{flex: 1; display: flex; flex-direction: column; padding: 19px;}
.business-public-profile .result-body h3{margin: 8px 0; font-size: 22px; line-height: 1.12;}
.business-public-profile .result-body > p{min-height: 72px; margin: 0; color: #bdb7af; font-size: 15px; line-height: 1.55;}
.business-result-meta, .business-result-bottom{display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px;}
.business-result-meta{margin-top: 16px; color: #9f9991; font-size: 13px;}
.business-result-meta span{display: inline-flex; align-items: center; gap: 5px;}
.business-result-meta svg{width: 14px;}
.business-result-bottom{justify-content: space-between; margin-top: auto; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.09);}
.business-result-bottom strong{color: #fff; font-size: 16px;}
.business-result-bottom span{display: inline-flex; align-items: center; gap: 5px; color: #f3c94f; font-size: 14px; font-weight: 800;}
.business-result-bottom span svg{width: 15px; fill: currentColor;}
.business-result-bottom em{margin-left: auto; color: #e4494e; font-size: 14px; font-style: normal; font-weight: 800;}
.business-result-placeholder{min-height: 100%; display: grid; place-items: center; color: #6f7476; background: radial-gradient(circle at 50% 35%,#272c2e,#111416 70%);}
.business-result-placeholder svg{width: 42px; height: 42px;}
@media (max-width: 980px){.detail-layout{grid-template-columns: 1fr;}
.detail-grid{grid-template-columns: 1fr;}
.detail-grid > .booking-card{position: static;}
.experience-keyfacts{grid-template-columns: repeat(4,minmax(0,1fr));}
.related-experiences-full .related-grid{grid-template-columns: repeat(2,minmax(0,1fr));}
.business-catalog-section .results-grid{grid-template-columns: repeat(2,minmax(0,1fr));}
.business-profile-hero{grid-template-columns: 1fr;}
.business-profile-hero-media{min-height: 340px; grid-row: 1;}
.business-profile-hero-copy{grid-row: 2;}
.business-profile-overview{grid-template-columns: 1fr;}
.business-location-section{grid-template-columns: 1fr;}}
@media (max-width: 720px){.experience-head-meta{font-size: 11px;}
.experience-keyfacts{grid-template-columns: repeat(2,minmax(0,1fr));}
.php-keyfacts{grid-template-columns: 1fr;}
.experience-keyfact{min-height: 90px;}
.experience-overview > p{font-size: 14px;}
.experience-disclosure summary{grid-template-columns: 38px minmax(0,1fr) 20px; padding: 11px 13px;}
.disclosure-icon{width: 38px; height: 38px;}
.disclosure-body{padding: 3px 13px 15px;}
.included-grid, .practical-list{grid-template-columns: 1fr;}
.related-experiences-full{margin-top: 0; margin-bottom: 55px; padding: 20px 16px;}
.related-experiences-full .related-grid{grid-template-columns: 1fr;}
.business-catalog-section .results-grid{grid-template-columns: 1fr;}
.business-public-profile{padding: 14px 0 72px;}
.business-profile-hero{min-height: 0; border-radius: 16px;}
.business-profile-hero-media{min-height: 220px;}
.business-profile-hero-copy{padding: 26px 20px 30px;}
.business-profile-hero h1{font-size: 44px;}
.business-profile-lead{font-size: 16px;}
.business-profile-hero .business-profile-meta span{width: 100%; border-radius: 11px;}
.business-profile-overview{gap: 16px; padding-top: 16px;}
.business-profile-section, .business-profile-info-card{padding: 21px 18px; border-radius: 15px;}
.business-keyfacts{grid-template-columns: 1fr;}
.business-keyfacts > div{min-height: 0;}
.business-location-section{margin-top: 16px; border-radius: 15px;}
.business-map, .business-map iframe{min-height: 280px;}
.business-public-profile .business-catalog-section{margin-top: 16px; padding: 24px 16px; border-radius: 15px;}
.business-public-profile .result-body > p{min-height: 0;}}
body.reduce-motion, body.reduce-motion *, body.reduce-motion *::before, body.reduce-motion *::after{scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; transition-delay: 0ms !important;}
.ticket-live-row{align-items: center;}
.ticket-live-row .reservation-date strong{font-size: 17px; letter-spacing: .06em;}
.ticket-live-row.is-invalid{opacity: .72;}
.ticket-state-valid{color: var(--green);}
.ticket-state-used, .ticket-state-replaced, .ticket-state-cancelled, .ticket-state-refunded{color: var(--muted);}
.access-layout{display: grid; grid-template-columns: minmax(0,1.35fr) minmax(300px,.65fr); gap: 22px; align-items: start;}
.business-layout.access-expanded{grid-template-columns: minmax(0,1fr);}
.business-layout.access-expanded > .live-preview{display: none;}
.access-side{display: grid; gap: 22px;}
.access-scanner > p{max-width: 720px; color: var(--muted); line-height: 1.65;}
.scanner-frame{position: relative; overflow: hidden; min-height: 360px; display: grid; place-items: center; margin: 22px 0 16px; border: 1px solid var(--line); border-radius: 18px; background: #08090a;}
.scanner-frame video{width: 100%; height: 100%; min-height: 360px; object-fit: cover;}
.scanner-frame:not(.active) video{display: none;}
.scanner-placeholder{display: grid; justify-items: center; gap: 12px; max-width: 260px; padding: 30px; color: var(--muted); text-align: center;}
.scanner-placeholder i{width: 50px; height: 50px; color: var(--gold);}
.scanner-frame.active .scanner-placeholder{display: none;}
.scanner-guide{position: absolute; z-index: 2; width: min(70%,310px); aspect-ratio: 1; border: 2px solid rgba(255,255,255,.85); border-radius: 18px; box-shadow: 0 0 0 999px rgba(0,0,0,.32); pointer-events: none; opacity: 0;}
.scanner-frame.active .scanner-guide{opacity: 1;}
.manual-checkin{display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px; align-items: end; margin-top: 20px;}
.manual-checkin .field{margin: 0;}
.checkin-result{display: grid; grid-template-columns: 48px minmax(0,1fr); gap: 14px; align-items: center; min-height: 82px; margin-top: 18px; padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-2);}
.checkin-result > i{width: 28px; height: 28px; color: var(--muted); justify-self: center;}
.checkin-result strong, .checkin-result span{display: block;}
.checkin-result span{margin-top: 4px; color: var(--muted); font-size: 13px; line-height: 1.5;}
.checkin-result.valid{border-color: rgba(101,197,147,.55); background: rgba(45,105,72,.17);}
.checkin-result.valid > i{color: var(--green);}
.checkin-result.warning{border-color: rgba(218,169,77,.55); background: rgba(119,81,22,.16);}
.checkin-result.warning > i{color: var(--warning);}
.checkin-result.error{border-color: rgba(210,75,79,.55); background: rgba(115,33,37,.18);}
.checkin-result.error > i{color: #ef777b;}
.offline-status{display: flex; align-items: center; gap: 10px; min-height: 46px; margin-top: 16px; padding: 10px 12px; border-radius: 12px; background: rgba(101,197,147,.1); color: var(--green); font-weight: 700; font-size: 12px;}
.offline-status.offline{background: rgba(218,169,77,.12); color: var(--warning);}
.offline-status i{width: 18px;}
.staff-list{display: grid; gap: 9px; margin-top: 18px;}
.staff-row{display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px; align-items: center; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-2);}
.staff-row strong, .staff-row span{display: block;}
.staff-row span{margin-top: 3px; color: var(--muted); font-size: 11px;}
.staff-row button{min-height: 44px;}
@media (max-width: 980px){.access-layout{grid-template-columns: 1fr;}}
@media (max-width: 720px){.scanner-frame, .scanner-frame video{min-height: 300px;}
.manual-checkin{grid-template-columns: 1fr;}
.manual-checkin button{width: 100%;}
.access-layout{gap: 16px;}}
@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto !important;}
*, *::before, *::after{scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; transition-delay: 0ms !important;}}
@media (max-width: 720px){.brand, .city-pill, .global-submit, .search-go, .hero-geo, .quick-buy-btn, .alert-offer-btn, .mobile-nav button{min-height: 44px;}
.global-search-inner{grid-template-columns: minmax(0,1fr) 76px; gap: 6px;}
.global-location-wrap{display: none;}
.session-row{grid-template-columns: 72px minmax(0,1fr);}
.session-row > .capacity-pill,
      .session-row .mini-action{grid-column: 2; justify-self: start;}
.session-row .mini-action{display: inline-flex;}
.real-flow-head{flex-direction: column;}
.real-flow-steps{grid-template-columns: 1fr 1fr;}
.real-flow-step:last-child{grid-column: 1 / -1;}
.live-notification-item{grid-template-columns: 42px minmax(0,1fr);}
.live-notification-item .notification-book{grid-column: 2; justify-self: start;}
.global-submit{min-width: 70px; padding: 0 8px; border-radius: 10px;}
.global-query-label{left: 26px;}
.search-field select{min-height: 44px;}
.agenda-location-combo{grid-template-columns: 1fr auto;}
.agenda-location-visible-label{grid-column: 1 / -1;}
.agenda-location-combo button{min-width: 92px;}
.like-btn{width: 44px; height: 44px;}
.like-btn{width: auto; min-width: 72px;}
.experience-save-top{width: auto; padding: 0 10px;}
.experience-save-top span{display: inline;}
.mobile-nav button{height: auto; padding-top: 4px;}}
.incident-workspace{margin-top: 24px; padding: 24px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface);}
.admin-incident-workspace{margin-top: 28px;}
.incident-workspace-head{display: flex; align-items: flex-start; justify-content: space-between; gap: 22px; margin-bottom: 20px;}
.incident-workspace-head h2, .incident-workspace-head h3{margin: 0 0 7px; font-family: var(--serif); font-size: clamp(24px,3vw,34px);}
.incident-workspace-head p{max-width: 700px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.55;}
.privacy-badge{display: inline-flex; align-items: center; gap: 7px; flex: 0 0 auto; min-height: 36px; padding: 7px 11px; border: 1px solid rgba(110,178,125,.32); border-radius: 999px; color: #b9dfc1; background: rgba(50,107,63,.16); font-size: 11px; font-weight: 800;}
.privacy-badge svg{width: 15px;}
.incident-layout{display: grid; grid-template-columns: minmax(280px,.78fr) minmax(420px,1.35fr); min-height: 420px; overflow: hidden; border: 1px solid var(--muted-line); border-radius: 14px; background: #111010;}
.incident-list{padding: 10px; border-right: 1px solid var(--muted-line); background: #151314;}
.incident-empty{display: grid; place-items: center; min-height: 180px; padding: 25px; color: var(--muted); text-align: center; font-size: 13px; line-height: 1.5;}
.incident-card{width: 100%; margin-bottom: 8px; padding: 15px; border: 1px solid transparent; border-radius: 11px; color: var(--cream); background: #1c1a1a; text-align: left; cursor: pointer;}
.incident-card:hover, .incident-card.active{border-color: #65514a; background: #252020;}
.incident-card-head, .incident-card-foot, .incident-status-line{display: flex; align-items: center; justify-content: space-between; gap: 10px;}
.incident-card h4{margin: 9px 0 5px; font-size: 15px;}
.incident-card p{margin: 0 0 12px; color: var(--muted); font-size: 12px;}
.incident-code{color: var(--faint); font-size: 10px; font-weight: 800; letter-spacing: .08em;}
.incident-priority, .incident-state{padding: 4px 7px; border-radius: 999px; font-size: 9px; font-weight: 900; text-transform: uppercase;}
.incident-priority.urgent{color: #ffd5d5; background: rgba(184,32,37,.28);}
.incident-priority.normal{color: #d8cec0; background: #312d2b;}
.incident-state{color: #cbe4d0; background: rgba(50,107,63,.22);}
.incident-deadline{color: #d7b27a; font-size: 10px; font-weight: 800;}
.incident-detail{min-width: 0; padding: 24px;}
.incident-detail > svg{width: 30px; height: 30px; color: var(--red-light);}
.incident-detail h3{margin: 12px 0 7px; font-size: 22px;}
.incident-detail > p{color: var(--muted); line-height: 1.55;}
.incident-detail-header{display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; padding-bottom: 18px; border-bottom: 1px solid var(--muted-line);}
.incident-detail-header h3{margin: 5px 0;}
.incident-facts{display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin: 16px 0;}
.incident-fact{padding: 10px; border-radius: 9px; background: #1d1b1b;}
.incident-fact span{display: block; margin-bottom: 4px; color: var(--faint); font-size: 9px; text-transform: uppercase;}
.incident-fact strong{font-size: 12px;}
.incident-thread{display: grid; gap: 9px; max-height: 280px; margin: 16px 0; overflow: auto;}
.incident-message{padding: 12px; border-radius: 10px; background: #1c1a1a;}
.incident-message.internal{border: 1px dashed #81683f; background: rgba(129,104,63,.1);}
.incident-message header{display: flex; justify-content: space-between; gap: 10px; margin-bottom: 6px; color: var(--faint); font-size: 10px;}
.incident-message p{margin: 0; color: var(--cream); font-size: 13px; line-height: 1.5;}
.incident-attachments{display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px;}
.incident-attachments a{color: #d8b684; font-size: 10px;}
.incident-reply{display: grid; gap: 9px; padding-top: 14px; border-top: 1px solid var(--muted-line);}
.incident-reply textarea{min-height: 76px;}
.incident-reply-actions, .incident-admin-actions{display: flex; flex-wrap: wrap; align-items: end; gap: 8px;}
.incident-reply-actions .btn, .incident-admin-actions .btn{min-height: 44px;}
.incident-admin-actions{margin-top: 14px; padding: 14px; border-radius: 11px; background: #191717;}
.incident-admin-actions .field{min-width: 150px; flex: 1;}
.cancellation-builder{grid-column: 1 / -1;}
@media (max-width: 980px){.incident-layout{grid-template-columns: 1fr;}
.incident-list{max-height: 360px; border-right: 0; border-bottom: 1px solid var(--muted-line); overflow: auto;}}
@media (max-width: 720px){.incident-workspace{margin-inline: -8px; padding: 16px; border-radius: 14px;}
.incident-workspace-head{flex-direction: column;}
.incident-layout{min-height: 0;}
.incident-detail{padding: 18px 14px;}
.incident-facts{grid-template-columns: 1fr 1fr;}
.incident-admin-actions{align-items: stretch;}
.incident-admin-actions .field, .incident-admin-actions .btn{width: 100%;}}
body[data-active-view="home"] .global-search{display: none;}
.recommendation-sections{padding: 18px 0 56px; background: #0e1214;}
.recommendation-group{padding: 25px 0; border-top: 1px solid var(--muted-line);}
.recommendation-group:first-child{border-top: 0;}
.recommendation-head{display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px;}
.recommendation-head h2{margin: 0; font-family: var(--serif); font-size: 30px; font-weight: 600; line-height: 1;}
.recommendation-head button{min-height: 44px; padding: 0; color: #d5cec5; border: 0; background: transparent; font-size: 12px; font-weight: 800;}
.recommendation-track{display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px;}
.recommendation-card{min-width: 0; overflow: hidden; color: var(--ink); border: 1px solid var(--line); border-radius: 15px; background: var(--surface); cursor: pointer;}
.recommendation-card img{width: 100%; height: 150px; object-fit: cover; filter: brightness(.84) saturate(.88);}
.recommendation-card > div{padding: 14px;}
.recommendation-card h3{margin: 0 0 6px; font-family: var(--serif); font-size: 20px; line-height: 1.05;}
.recommendation-card p{margin: 0; color: var(--muted); font-size: 12px; line-height: 1.35;}
.recommendation-card strong{display: block; margin-top: 10px; color: #f1d6ae; font-size: 13px;}
.recommendation-bottom{display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 10px;}
.recommendation-bottom strong{margin-top: 0;}
.recommendation-rating{display: inline-flex; align-items: center; gap: 4px; color: #f4d487; font-size: 12px; font-weight: 800;}
.recommendation-rating i{width: 13px; fill: currentColor;}
@media (max-width: 720px){.shell{width: min(calc(100% - 24px),620px);}
.global-search{display: none;}
body[data-active-view="home"] .topbar{border-bottom-color: rgba(255,255,255,.09);}
.hero{min-height: 316px; overflow: hidden;}
.hero-media{background-image: linear-gradient(0deg,rgba(8,11,13,.88) 0%,rgba(5,7,8,.35) 60%,rgba(5,7,8,.18) 100%),url("https://images.unsplash.com/photo-1703419776762-56bf2020639d?auto=format&fit=crop&q=82&w=1000"); background-position: 62% center;}
.hero-content{padding: 34px 0 20px;}
.hero h1{max-width: 100%; margin-bottom: 16px; font-size: 32px; line-height: 1.02; text-wrap: balance;}
.hero-lead, .mobile-filter-toggle{display: none !important;}
.search-panel, .search-panel.is-open{position: relative; width: 100%; display: grid; grid-template-columns: minmax(0,1fr) 58px; gap: 0; margin: 0; padding: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.3); border-radius: 15px; background: #f3f0eb; box-shadow: 0 16px 40px rgba(0,0,0,.36);}
.search-field{min-height: 62px; padding: 10px 13px 7px; border: 0 !important; border-bottom: 1px solid #d5d1cb !important; border-radius: 0; background: transparent;}
.search-field:nth-child(4){grid-column: 1 / -1; grid-row: 1;}
.search-field:nth-child(1){grid-column: 1 / -1; grid-row: 2;}
.search-field:nth-child(2){grid-column: 1; grid-row: 3; border-bottom: 0 !important;}
.search-field:nth-child(3){display: none;}
.search-field > span{display: block; margin: 0 0 3px; color: #6d6b67; font-size: 11px; font-weight: 700; letter-spacing: 0; text-transform: none;}
.search-field select, .search-field input{min-height: 30px; padding: 0 22px 0 0; color: #242321; background: transparent; font-size: 14px; font-weight: 600;}
.search-field select option{color: #242321; background: white;}
.search-go{position: static; grid-column: 2; grid-row: 3; align-self: center; justify-self: center; width: 46px; min-width: 46px; height: 46px; min-height: 46px; margin: 0 7px 0 0; padding: 0; border-radius: 11px; box-shadow: none;}
.search-go span{display: none;}
.search-go i{width: 21px;}
.sponsored-grid, .offer-grid{margin-right: 0; padding-right: 9px;}
#lastMinute .eyebrow, #lastMinute .section-copy, #lastMinute .demo-chip{display: none;}
#lastMinute .section-head{margin-bottom: 15px;}
#lastMinute .offer-type, #lastMinute .offer-info, #lastMinute .live-offer-note{display: none;}
#lastMinute .offer-body{min-height: 132px;}
#lastMinute .like-btn{width: 44px; min-width: 44px; padding: 0;}
#lastMinute .like-label{display: none;}
#lastMinute .alert-offer-btn{display: none;}
#lastMinute .offer-actions{grid-template-columns: 1fr; margin-top: 13px;}
#lastMinute .quick-buy-btn{font-size: 12px;}
#lastMinute .offer-bottom{margin-top: 14px !important; padding-top: 12px; border-top: 1px solid var(--line);}
#nearbySection .section-head{display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 10px;}
#nearbySection .text-link{max-width: 132px; justify-content: flex-end; white-space: nowrap;}
.nearby-item{grid-template-columns: 68px minmax(0,1fr) auto; min-height: 82px; gap: 11px; padding: 8px;}
.nearby-item img{display: block; width: 68px; height: 64px; border-radius: 9px;}
.nearby-item h4{font-size: 17px;}
.nearby-item p{font-size: 12px;}
.distance-pill{min-width: 56px; padding: 7px 6px; font-size: 11px;}
.recommendation-sections{padding: 8px 0 34px;}
.recommendation-group{padding: 22px 0;}
.recommendation-head{margin-bottom: 13px;}
.recommendation-head h2{max-width: 75%; font-size: 25px;}
.recommendation-head button{font-size: 12px;}
.recommendation-track{display: flex; gap: 10px; padding-right: 8px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;}
.recommendation-track::-webkit-scrollbar{display: none;}
.recommendation-card{flex: 0 0 calc((100% - 10px) / 2); scroll-snap-align: start;}
.recommendation-card img{height: 108px;}
.recommendation-card > div{padding: 12px;}
.recommendation-card h3{font-size: 18px;}
.recommendation-card p{font-size: 12px;}
.recommendation-card strong{font-size: 12px;}
.subpage{padding-top: 30px;}
.subpage-header{margin-bottom: 20px;}
.subpage-header h1, .results-header h1{max-width: 100%; font-size: 31px; line-height: 1.04; letter-spacing: -.02em; text-wrap: balance;}
.subpage-header > p:not(.eyebrow){display: none;}
.experience-title-block{position: relative; display: block; padding: 16px 0 20px;}
.experience-title-copy{width: 100%;}
.experience-title-copy .experience-labels{padding-right: 92px;}
.experience-title-block{position: relative; display: block;}
.experience-alert-top{width: 100%; margin-top: 17px;}
.experience-title-copy h1{max-width: 100%; margin: 8px 0 10px; font-size: clamp(30px,9vw,38px); line-height: 1.02; overflow-wrap: anywhere; text-wrap: balance;}
.experience-head-meta{font-size: 11px;}
.experience-gallery{width: min(calc(100% - 24px),620px); display: flex; grid-template: none; gap: 8px; margin: 0 auto; padding: 0; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;}
.experience-gallery::-webkit-scrollbar{display: none;}
.experience-media-main, .experience-media-side, .experience-video-card{flex: 0 0 calc(100% - 34px); width: auto; height: 238px; grid-column: auto; grid-row: auto; scroll-snap-align: start; border-radius: 13px;}
.experience-media-main .back-button{top: 12px; left: 12px;}
.experience-media-main{position: relative !important; contain: layout paint; isolation: isolate;}
.experience-intro > .experience-favorite-button{position: fixed; top: 112px; right: 14px; width: 46px; min-width: 46px; height: 46px; min-height: 46px;}
body.admin-bar .experience-intro > .experience-favorite-button{top: 145px;}
.experience-media-main .image-disclaimer{right: 12px;}
.media-alternative{width: min(calc(100% - 24px),620px);}}
.auth-copy h1[hidden]{display: none;}
#registerTitle{max-width: 100%; white-space: nowrap; font-size: clamp(21px,3vw,31px);}
.location-map{min-height: 245px; padding: 0; background: #101417;}
.location-map::before, .location-map-pin{display: none;}
.location-map iframe{position: absolute; inset: 0; width: 100%; height: 100%; border: 0; filter: grayscale(.28) saturate(.7) contrast(1.04);}
.location-map .btn{z-index: 3; box-shadow: 0 10px 30px rgba(0,0,0,.45);}
.collection-overview{display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin-bottom: 18px;}
.collection-stat{padding: 15px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface-2);}
.collection-stat span{display: block; color: var(--faint); font-size: 8px; font-weight: 800; text-transform: uppercase;}
.collection-stat strong{display: block; margin-top: 5px; font-size: 23px;}
.completed-list{display: grid; gap: 10px;}
.completed-item{display: grid; grid-template-columns: 44px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 13px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface-2);}
.completed-item > i{width: 21px; color: var(--gold);}
.completed-item h4{margin: 0 0 4px; font-size: 14px;}
.completed-item p{margin: 0; color: var(--muted); font-size: 9px; line-height: 1.45;}
.completed-source{padding: 7px 9px; border-radius: 999px; color: #d4d7d4; background: rgba(255,255,255,.06); font-size: 8px; font-weight: 800; white-space: nowrap;}
.completed-source.verified{color: #d8f0df; background: rgba(88,170,121,.13);}
.completed-empty{padding: 20px; color: var(--muted); border: 1px dashed var(--line); border-radius: 13px; text-align: center; font-size: 10px;}
.is-completed-home{display: none !important;}
.mark-completed-button.done{color: #d8f0df; border-color: rgba(88,170,121,.4); background: rgba(88,170,121,.1);}
@media (min-width:721px){.footer-group > summary{pointer-events: none; list-style: none;}
.footer-group > summary::-webkit-details-marker{display: none;}
.footer-group > div{display: block !important;}}
@media (max-width:720px){.recovery-layout.auth-layout{width: min(calc(100% - 24px),620px); margin-inline: auto;}
.recovery-layout .auth-copy h1{max-width: 100%; font-size: clamp(30px,9vw,38px); line-height: 1.02;}
.recovery-layout .auth-copy > p{margin: 11px 0 5px; font-size: 14px; line-height: 1.5;}
.password-recovery-card{padding: 18px;}
.recovery-header h3{font-size: 23px;}
.recovery-header p, .recovery-success p, .recovery-note{font-size: 13px;}
.search-panel, .compact-search, .mobile-ticket-search{color: var(--ink); border-color: rgba(255,255,255,.1); background: #15191c; box-shadow: 0 16px 40px rgba(0,0,0,.3);}
.search-field, .search-field + .search-field{border-color: rgba(255,255,255,.08); background: transparent;}
.search-field > span, .search-field label{color: #aaa39a;}
.search-field select, .search-field input{color: var(--ink);}
.search-field select option{color: var(--ink); background: #15191c;}
.search-go{align-self: stretch;}
.search-go{color: #fff; display: grid; place-items: center;}
.search-go i{display: block; width: 21px; height: 21px; stroke-width: 2.35;}
.nearby-pagination{grid-template-columns: 44px minmax(0,1fr) 44px; gap: 9px; margin-top: 13px;}
.nearby-page-nav{width: 44px; min-width: 44px; padding: 0; border-radius: 12px;}
.nearby-page-nav span{display: none;}
.nearby-page-center{gap: 5px;}
.nearby-page-center > span{font-size: 12px;}
.nearby-page-numbers{gap: 6px;}
.date-block strong.date-range{font-size: 25px; letter-spacing: -.055em; white-space: nowrap;}
.date-block span.date-range-month{max-width: 54px; font-size: 7px; line-height: 1.25;}
.mobile-menu-label{padding: 9px 13px 4px; color: #8f8880; border-top: 1px solid rgba(255,255,255,.08); font-size: 10px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase;}
#registerTitle{font-size: clamp(18px,5.6vw,24px); letter-spacing: -.02em;}
.collection-overview{grid-template-columns: 1fr 1fr;}
.collection-stat:first-child{grid-column: 1/-1;}
.completed-item{grid-template-columns: 36px minmax(0,1fr);}
.completed-source{grid-column: 2; width: fit-content;}}
.business-card-action{display: inline-flex; align-items: center; margin-top: 13px; color: #f3ddd0; font-size: 13px; font-weight: 850;}
.trust-section{padding: 22px 0; background: #0d1012;}
.trust-panel{display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--line);}
.trust-panel > div{min-width: 0; padding: 18px; background: #17191b;}
.trust-panel i{width: 21px; color: var(--green);}
.trust-panel strong, .trust-panel span{display: block;}
.trust-panel strong{margin-top: 10px; font-size: 15px;}
.trust-panel span{margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.4;}
.home-editorial-links{padding: 40px 0 58px; background: #111416;}
.editorial-link-grid{display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-top: 18px;}
.editorial-link-grid a, .editorial-link-grid button{min-height: 64px; padding: 14px 16px; color: var(--ink); border: 1px solid var(--line); border-radius: 13px; background: var(--surface); font: inherit; font-size: 14px; font-weight: 800; line-height: 1.3; text-align: left; cursor: pointer;}
.editorial-link-grid a:hover, .editorial-link-grid button:hover{border-color: #76524e; background: var(--surface-2);}
.guest-checkout-fields{display: grid; gap: 14px; margin-bottom: 18px;}
.guest-checkout-note{display: flex; align-items: flex-start; gap: 12px; padding: 14px; border: 1px solid rgba(195,148,84,.25); border-radius: 12px; background: rgba(195,148,84,.07);}
.guest-checkout-note > i{flex: 0 0 auto; width: 21px; color: var(--gold);}
.guest-checkout-note strong, .guest-checkout-note span{display: block;}
.guest-checkout-note strong{font-size: 14px;}
.guest-checkout-note span{margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.45;}
.experience-keyfacts{grid-template-columns: repeat(5,minmax(0,1fr));}
.business-profile-meta{display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin: 13px 0; color: var(--muted); font-size: 13px;}
.business-profile-meta > span{display: inline-flex; align-items: center; gap: 6px;}
.business-profile-meta svg{width: 16px;}
.profile-status{padding: 6px 9px; border-radius: 999px; background: rgba(255,255,255,.06); color: #d6d0c8; font-weight: 800;}
.event-detail-hero{min-height: 480px;}
.event-keyfacts{grid-template-columns: repeat(4,minmax(0,1fr));}
.event-description{margin: 28px 0; color: #ddd8d1; font-size: 16px; line-height: 1.7;}
.event-booking-card{display: grid; gap: 11px;}
.event-booking-date{display: block; margin: 2px 0 13px; font-family: var(--serif); font-size: 28px; line-height: 1.15;}
.booking-kicker{color: var(--faint); font-size: 11px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase;}
.auth-layout, .auth-copy, .auth-card, .form-grid, .field{min-width: 0;}
.auth-card{box-sizing: border-box; width: 100%;}
@media (max-width:980px){.trust-panel{grid-template-columns: 1fr 1fr;}
.editorial-link-grid{grid-template-columns: 1fr 1fr;}
.experience-keyfacts{grid-template-columns: repeat(3,minmax(0,1fr));}
.event-keyfacts{grid-template-columns: 1fr 1fr;}}
@media (max-width:720px){.search-field{min-height: 68px;}
.search-field select, .search-field input{min-height: 40px; font-size: 15px;}
.search-field > span{font-size: 12px;}
.trust-section{padding: 14px 0;}
.trust-panel{grid-template-columns: 1fr 1fr; border-radius: 13px;}
.trust-panel > div{padding: 14px 12px;}
.trust-panel strong{font-size: 14px;}
.trust-panel span{font-size: 12px;}
.home-editorial-links{padding: 30px 0 42px;}
.editorial-link-grid{grid-template-columns: 1fr;}
.editorial-link-grid a, .editorial-link-grid button{min-height: 52px; font-size: 14px;}
.experience-keyfacts, .event-keyfacts{grid-template-columns: 1fr 1fr;}
.experience-keyfact span{font-size: 11px;}
.experience-keyfact strong{font-size: 13px;}
.event-detail-hero{min-height: 350px;}
.event-description{font-size: 15px;}
.auth-layout{width: 100%;}
.auth-card{padding: 16px; overflow: hidden;}
.auth-copy h1{font-size: clamp(29px,8.6vw,38px); line-height: 1.04;}
.field > span, .form-grid .field > span{font-size: 12px;}
.field input, .field select, .field textarea{min-height: 44px; font-size: 16px;}
.inline-check{font-size: 12px; line-height: 1.45;}
.inline-check input{flex: 0 0 22px; width: 22px; height: 22px;}
.registered-user strong{font-size: 13px;}
.registered-user span{font-size: 12px; line-height: 1.4;}
.mobile-nav button, .mobile-nav a{min-height: 52px; font-size: 11px;}
.location-disclosure summary{min-height: 48px;}}
:root{--bg: #050505;}
html, body{background: #050505;}
body{background-image: none;}
#view-home, #view-results, #view-agenda, #view-experience,
    .agenda-wrap, .business-view, .mobile-discovery, .home-editorial-links{background: #050505;}
.business-entry{min-height: 44px; padding: 0 17px; font-size: 13px;}
.global-query input{font-size: 15px;}
.global-location{font-size: 13px;}
.search-field label, .search-field > span{font-size: 13px;}
.search-field select, .search-field input{font-size: 16px;}
.results-filter span{font-size: 12px;}
.results-filter input, .results-filter select{font-size: 15px;}
.result-body p, .result-meta, .result-footer{font-size: 13px;}
.sponsored-grid, .offer-grid{display: flex;
      gap: 18px;
      overflow-x: auto;
      padding: 2px 2px 14px;
      scroll-behavior: smooth;
      scroll-snap-type: x mandatory;
      scrollbar-width: none;}
.sponsored-grid::-webkit-scrollbar, .offer-grid::-webkit-scrollbar{display: none;}
.sponsored-card{flex: 0 0 min(360px,calc((100% - 36px)/3));
      min-width: 300px;
      min-height: 360px;
      scroll-snap-align: start;}
.offer-card, .offer-card.featured{flex: 0 0 min(360px,calc((100% - 36px)/3));
      min-width: 300px;
      min-height: 0;
      display: flex;
      flex-direction: column;
      grid-column: auto;
      scroll-snap-align: start;}
.offer-image, .featured .offer-image{flex: 0 0 190px; height: 190px;}
.offer-body, .featured .offer-body{flex: 1; display: flex; flex-direction: column; padding: 20px;}
.offer-card h3, .featured h3{font-size: 29px; line-height: 1.05;}
.offer-location, .offer-capacity{font-size: 14px; line-height: 1.45;}
.offer-capacity{margin-top: 9px;}
.offer-type{font-size: 12px; line-height: 1.35;}
.offer-actions{gap: 9px; margin-top: 16px;}
.alert-offer-btn, .quick-buy-btn{min-height: 46px; padding: 0 12px; font-size: 13px; line-height: 1.25;}
.alert-offer-btn i, .quick-buy-btn i{width: 17px;}
.offer-bottom{margin-top: auto !important; padding-top: 16px;}
.countdown-label{font-size: 12px; letter-spacing: .04em;}
.countdown{font-size: 20px;}
.old-price, .price small{font-size: 12px;}
.price strong{font-size: 32px;}
.carousel-controls{display: flex; flex: 0 0 auto; gap: 8px;}
.carousel-controls button{width: 46px;
      height: 46px;
      display: grid;
      place-items: center;
      padding: 0;
      color: var(--ink);
      border: 1px solid var(--line);
      border-radius: 50%;
      background: var(--surface);
      cursor: pointer;}
.carousel-controls button:hover{border-color: rgba(255,255,255,.3); background: var(--surface-2);}
.carousel-controls button i{width: 19px;}
#agendaLocationLabel{display: none !important;}
.experience-head-meta, .business-profile-meta{font-size: 14px;}
.experience-label, .experience-keyfact span, .booking-card .mini-label,
    .booking-card .select-label, .booking-kicker{font-size: 12px;}
.experience-keyfact strong{font-size: 15px; line-height: 1.35;}
.detail-action, .booking-card .btn{min-height: 48px; font-size: 14px;}
.booking-price small{font-size: 13px;}
.booking-summary-line{font-size: 13px;}
@media (min-width:981px){.detail-sidebar{position: sticky; top: 112px; align-self: start;}
.detail-sidebar .booking-card{position: static;}
#detailFavoriteTop{display: none !important;}}
@media (max-width:720px){.search-panel, .search-panel.is-open{grid-template-columns: 1fr 1fr;}
.search-field:nth-child(2){grid-column: 1; grid-row: 3; border-bottom: 0 !important;}
.search-field:nth-child(3){display: flex; grid-column: 2; grid-row: 3; border-left: 1px solid rgba(255,255,255,.08) !important; border-bottom: 0 !important;}
.search-go{grid-column: 1 / -1; grid-row: 4; width: calc(100% - 14px); min-height: 50px; margin: 7px;}
.search-go span{display: inline; font-size: 14px;}
.sponsored-card{flex-basis: min(78vw,290px); min-width: 260px; min-height: 320px;}
.offer-card, .offer-card.featured{flex-basis: min(82vw,310px); min-width: 275px;}
.offer-location, .offer-capacity{font-size: 14px;}
#lastMinute .offer-actions{display: grid; grid-template-columns: 1fr 1fr;}
#lastMinute .alert-offer-btn{display: flex;}
#lastMinute .alert-offer-btn, #lastMinute .quick-buy-btn{font-size: 13px;}
.carousel-controls button{width: 44px; height: 44px;}
.experience-head-meta{font-size: 13px;}}
.test-business-label{position: absolute;
      z-index: 3;
      top: 15px;
      left: 15px;
      display: inline-flex;
      align-items: center;
      gap: 7px;
      padding: 8px 10px;
      color: #f4e5c9;
      border: 1px solid rgba(195,155,93,.45);
      border-radius: 999px;
      background: rgba(22,17,10,.84);
      backdrop-filter: blur(10px);
      font-size: 10px;
      font-weight: 850;
      letter-spacing: .04em;}
.test-business-label i{width: 15px;}
.sponsored-card-test{border-color: rgba(195,155,93,.35);}
.home-agenda{background: #050505;}
.home-agenda-grid{display: grid;
      grid-template-columns: repeat(2,minmax(0,1fr));
      gap: 18px;
      border: 0;}
.home-agenda-card{min-width: 0;
      min-height: 250px;
      display: grid;
      grid-template-columns: minmax(165px,34%) minmax(0,1fr);
      gap: 0;
      padding: 0;
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 18px;
      background: var(--surface);
      box-shadow: 0 16px 42px rgba(0,0,0,.2);}
.home-agenda-card:hover{border-color: rgba(255,255,255,.24); background: var(--surface-2);}
.home-agenda-media{position: relative; min-height: 250px; overflow: hidden;}
.home-agenda-media::after{content: ""; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(0,0,0,.66),transparent 54%);}
.home-agenda-media img{width: 100%; height: 100%; object-fit: cover; filter: brightness(.78) saturate(.85) contrast(1.06);}
.home-agenda-media > span{position: absolute; z-index: 2; left: 13px; bottom: 13px; padding: 7px 9px; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; background: rgba(5,5,5,.76); font-size: 11px; font-weight: 800;}
.home-agenda-content{min-width: 0; display: flex; flex-direction: column; padding: 19px;}
.home-agenda-top{display: flex; align-items: flex-start; justify-content: space-between; gap: 10px;}
.home-date-range{display: flex; align-items: center; gap: 7px;}
.home-date-range > span{width: 57px; min-height: 64px; display: grid; grid-template-columns: 1fr auto; align-content: center; padding: 7px 8px; border: 1px solid var(--line); border-radius: 11px; background: #101214;}
.home-date-range small{grid-column: 1 / -1; margin-bottom: 2px; color: var(--faint); font-size: 8px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase;}
.home-date-range strong{font-family: var(--sans); font-size: 25px; line-height: 1;}
.home-date-range b{align-self: end; padding-bottom: 2px; color: var(--red-bright); font-size: 9px;}
.home-date-range > i{width: 14px; color: var(--faint);}
.home-date-range.single > span{width: 64px;}
.home-agenda-duration{padding: 7px 9px; color: #e6decf; border-radius: 999px; background: rgba(195,155,93,.12); font-size: 10px; font-weight: 800; white-space: nowrap;}
.home-agenda-content h3{margin: 16px 0 7px; font-family: var(--serif); font-size: 23px; line-height: 1.08;}
.home-agenda-content > p{display: flex; align-items: center; gap: 7px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.4;}
.home-agenda-content > p i{flex: 0 0 auto; width: 15px; color: var(--red-bright);}
.home-agenda-footer{display: flex; align-items: flex-end; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 14px; border-top: 1px solid var(--muted-line);}
.home-agenda-footer span{display: inline-flex; align-items: center; gap: 6px; color: var(--faint); font-size: 11px; line-height: 1.35;}
.home-agenda-footer span i{flex: 0 0 auto; width: 14px;}
.home-agenda-footer strong{color: var(--cream); font-size: 12px; white-space: nowrap;}
@media (max-width:980px){.home-agenda-grid{grid-template-columns: 1fr;}
.home-agenda-card{grid-template-columns: minmax(180px,32%) minmax(0,1fr);}}
@media (max-width:720px){.home-agenda-grid{width: 100%; display: flex; gap: 13px; overflow-x: auto; margin-right: 0; padding: 1px 12px 13px 0; scroll-snap-type: x mandatory; scrollbar-width: none;}
.home-agenda-grid::-webkit-scrollbar{display: none;}
.home-agenda-card{flex: 0 0 min(84vw,325px); min-height: 420px; display: flex; flex-direction: column; scroll-snap-align: start;}
.home-agenda-media{flex: 0 0 166px; min-height: 166px;}
.home-agenda-content{flex: 1; padding: 16px;}
.home-agenda-content h3{margin-top: 14px; font-size: 22px;}
.home-agenda-footer{align-items: flex-start; flex-direction: column;}
.home-agenda-footer strong{font-size: 13px;}
.home-date-range > span{width: 55px; min-height: 60px;}
.home-agenda-duration{font-size: 9px;}}
.global-search-inner{grid-template-columns: minmax(0,1fr) auto;
      gap: 12px;}
.global-query{min-height: 54px;
      padding: 7px 14px;
      border: 1px solid rgba(255,255,255,.12);
      border-radius: 14px;
      background: var(--surface-2);}
.global-query-label{left: 43px; top: 5px;}
.global-query input{padding: 9px 0 0; font-size: 15px;}
.global-submit{min-width: 116px; min-height: 54px; border-radius: 14px;}
body[data-active-view="results"] .global-search-inner{grid-template-columns: minmax(0,1fr) auto;}
.related-experiences-sidebar{margin: 16px 0 0;
      padding: 19px;
      border-radius: 16px;}
.related-experiences-sidebar .related-head{display: block; margin-bottom: 14px;}
.related-experiences-sidebar .related-head h2{margin: 4px 0 8px; font-size: 25px; line-height: 1;}
.related-experiences-sidebar .related-head > p{max-width: none; margin: 0; font-size: 12px; line-height: 1.45;}
.related-experiences-sidebar .related-grid{grid-template-columns: 1fr; gap: 9px;}
.related-experiences-sidebar .related-card{min-height: 0; padding: 14px;}
.related-experiences-sidebar .related-card-top{margin-bottom: 9px;}
.related-experiences-sidebar .related-card h3{min-height: 0; margin-bottom: 5px; padding-right: 20px; font-size: 19px; line-height: 1.08;}
.related-experiences-sidebar .related-card p{min-height: 0; font-size: 12px; line-height: 1.4;}
.related-experiences-sidebar .related-meta{margin-top: 9px;}
.related-experiences-sidebar .related-meta span{font-size: 10px;}
.detail-grid > .booking-card,
    .business-profile-layout > .booking-card{position: static !important; top: auto !important; align-self: start;}
.business-catalog-section .result-card{border-radius: 17px;}
.business-catalog-section .result-card a{height: 100%; display: flex; flex-direction: column; color: inherit;}
.business-catalog-section .result-image{min-height: 180px; background: linear-gradient(145deg,#252a2d,#111416);}
.business-catalog-section .result-image img{width: 100%; height: 180px; object-fit: cover;}
.business-catalog-section .result-body{flex: 1; padding: 18px;}
@media (max-width:720px){.global-search-inner{grid-template-columns: minmax(0,1fr) 52px;}
.global-query{min-height: 50px; padding: 5px 9px 5px 12px;}
.global-query-label{display: none;}
.global-query input{min-height: 42px; padding: 0; font-size: 14px;}
.global-submit{min-width: 52px; width: 52px; min-height: 50px; padding: 0;}
.global-submit span{display: none;}
#searchForm.search-panel,
      #searchForm.search-panel.is-open{grid-template-columns: minmax(0,1fr) 56px;
        grid-template-rows: 64px;}
#searchForm .search-keyword-field{display: flex; grid-column: 1; grid-row: 1; border: 0 !important;}
#searchForm .search-date-field,
      #searchForm .search-people-field,
      #searchForm .search-category-field{display: none;}
#searchForm .search-go{grid-column: 2; grid-row: 1; width: 46px; min-width: 46px; min-height: 46px; margin: 9px 7px 9px 0;}
#searchForm .search-go span{display: none;}
.related-experiences-sidebar{margin-bottom: 16px;}}
body{font-size: 16px;}
.view p, .view small, .view label, .view button, .view input, .view select, .view textarea, .view time,
    .footer a, .footer-bottom, .section-copy, .result-meta, .offer-location, .offer-capacity, .offer-info span,
    .booking-note, .channel-note, .helper, .deposit-helper{font-size: max(13px, 1em) !important;}
.business-layout{grid-template-columns: minmax(0,1fr) 330px; gap: 28px; padding-top: 28px;}
.business-tabs{position: sticky; z-index: 30; top: 0; padding: 8px; gap: 7px; overflow-x: auto; background: rgba(21,25,28,.97); backdrop-filter: blur(14px);}
.business-tabs button{flex: 0 0 auto; min-width: 112px; min-height: 48px; padding: 0 15px; font-size: 14px !important;}
.business-tabs button.last-minute-tab{min-width: 150px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; color: #fff; border: 1px solid rgba(224,100,105,.55); background: rgba(182,55,60,.2);}
.business-tabs button.last-minute-tab.active{background: var(--red);}
.business-tabs button svg{width: 18px;}
.business-mark span, .business-status{font-size: 13px;}
.business-mark strong{font-size: 24px;}
.business-metric{min-height: 118px; padding: 22px;}
.business-metric span{color: var(--muted); font-size: 13px; letter-spacing: .04em;}
.business-metric strong{font-size: 34px;}
.business-metric small{display: block; margin-top: 7px; font-size: 13px; line-height: 1.35;}
.portfolio-panel, .quick-form, .editor-card, .calendar-card{padding: 30px;}
.portfolio-head{margin-bottom: 20px;}
.portfolio-head h3, .editor-card h3, .calendar-card h3{font-size: 30px; line-height: 1.12;}
.portfolio-head p, .editor-card-heading p{max-width: 720px; margin: 7px 0 0; color: var(--muted); font-size: 15px; line-height: 1.55;}
.portfolio-head .btn{min-height: 48px; font-size: 14px !important;}
.business-quick-actions{display: grid; grid-template-columns: 1.25fr 1fr 1fr; gap: 14px; margin-top: 22px;}
.business-quick-actions > *{min-height: 96px; display: flex; align-items: center; gap: 14px; padding: 20px; color: var(--ink); border: 1px solid var(--line); border-radius: 16px; background: var(--surface); text-align: left; cursor: pointer;}
.business-quick-actions > * > svg:first-child{flex: 0 0 auto; width: 25px;}
.business-quick-actions > * span{min-width: 0;}
.business-quick-actions strong{display: block; font-size: 17px;}
.business-quick-actions small{display: block; margin-top: 5px; color: var(--muted); font-size: 13px !important; line-height: 1.35;}
.urgent-business-action{color: #fff; border-color: rgba(224,100,105,.55); background: linear-gradient(135deg,#a52f34,#76272b);}
.urgent-business-action > svg:last-child{margin-left: auto;}
.urgent-business-action small{color: #f2dfe0;}
.business-action-card:hover, .business-action-card:focus-visible{border-color: rgba(255,255,255,.28); background: var(--surface-2);}
.editor-shell{display: block;}
.business-catalog-manager{margin-bottom: 22px;}
.editor-card-heading{display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 20px;}
.editor-card-heading h3{margin-bottom: 0;}
.editor-section{margin: 14px 0; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: #121619;}
.editor-section > summary{min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 16px 20px; cursor: pointer; list-style: none;}
.editor-section > summary::-webkit-details-marker{display: none;}
.editor-section > summary > span{display: grid; grid-template-columns: 24px 1fr; gap: 2px 12px; align-items: center;}
.editor-section > summary > span > svg{grid-row: 1 / 3; width: 22px; color: var(--gold);}
.editor-section > summary strong{font-size: 18px;}
.editor-section > summary small{color: var(--muted); font-size: 13px !important;}
.editor-section > summary > svg{width: 19px; transition: transform .2s;}
.editor-section[open] > summary > svg{transform: rotate(180deg);}
.editor-section-body{padding: 24px; border-top: 1px solid var(--line);}
.editor-section-body.form-grid{gap: 20px;}
.editor-card > .editor-section .ops-config{padding: 22px;}
.ops-config h4{font-size: 20px;}
.ops-config > p{font-size: 14px;}
.business-view .field > span, .business-view .field-heading > span{margin-bottom: 9px; color: #e6e8e5; font-size: 14px; font-weight: 750;}
.business-view .field input, .business-view .field select, .business-view .field textarea{min-height: 52px; padding-inline: 15px; border-radius: 11px; font-size: 16px !important;}
.business-view .field textarea{min-height: 126px; padding-top: 14px; line-height: 1.5;}
.business-view .inline-check{min-height: 48px; font-size: 14px !important; line-height: 1.45;}
.business-view .inline-check input{flex: 0 0 22px; width: 22px; height: 22px;}
.business-view .btn{min-height: 48px; font-size: 14px !important;}
.editor-submit-bar{position: sticky; z-index: 15; bottom: 14px; display: flex; gap: 12px; margin-top: 18px; padding: 14px; border: 1px solid var(--line); border-radius: 15px; background: rgba(21,25,28,.94); backdrop-filter: blur(14px);}
.editor-submit-bar .btn-primary{flex: 1;}
.experience-admin{display: grid; grid-template-columns: 92px minmax(0,1fr) auto; align-items: center; gap: 18px; margin-top: 12px; padding: 15px; border: 1px solid var(--line); border-radius: 15px; background: var(--surface-2);}
.experience-admin-media{width: 92px; height: 72px; display: grid; place-items: center; overflow: hidden; color: var(--gold); border-radius: 11px; background: #111416;}
.experience-admin-media img{width: 100%; height: 100%; object-fit: cover;}
.experience-admin-media svg{width: 24px;}
.experience-admin-copy h4{margin: 0 0 5px; font-size: 18px;}
.experience-admin-copy p, .experience-admin-copy span{display: block; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.45;}
.experience-admin-actions{display: flex; gap: 8px;}
.experience-admin-actions .btn{min-height: 44px; padding-inline: 14px;}
.photo-upload-panel, .photo-requirements{padding: 22px;}
.photo-upload-panel > div:first-child strong, .photo-requirements-head strong{font-size: 17px;}
.photo-upload-panel p, .photo-requirements-head p, .photo-policy{color: var(--muted); font-size: 14px; line-height: 1.5;}
.photo-upload-status{display: flex; align-items: center; gap: 9px; min-height: 46px; margin: 14px 0 0; padding: 11px 13px; border: 1px solid rgba(255,255,255,.15); border-radius: 10px; background: rgba(255,255,255,.045); color: var(--ink); font-size: 14px;}
.photo-upload-status[data-state="uploading"]{border-color: rgba(195,155,93,.55); color: #f1ca87;}
.photo-upload-status[data-state="success"]{border-color: rgba(108,190,130,.55); color: #a9e1b8;}
.photo-upload-status[data-state="error"]{border-color: rgba(210,66,76,.65); color: #ffafb5;}
.photo-upload-actions{display: flex; gap: 10px; margin: 16px 0;}
.file-button{cursor: pointer;}
.upload-preview-grid{display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin-top: 16px;}
.upload-preview{margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: #101315;}
.upload-preview img{width: 100%; aspect-ratio: 16/10; object-fit: cover;}
.upload-preview figcaption{padding: 10px; font-size: 13px; font-weight: 750;}
.upload-preview figcaption span{color: var(--muted); font-size: 12px; font-weight: 500; overflow-wrap: anywhere;}
.upload-empty{grid-column: 1/-1; min-height: 116px; display: grid; place-items: center; align-content: center; gap: 8px; color: var(--muted); border: 1px dashed rgba(255,255,255,.2); border-radius: 12px; font-size: 14px;}
.upload-empty svg{width: 25px;}
.vacation-builder, .multiple-time-builder{grid-column: 1/-1; padding: 20px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-2);}
.vacation-builder > div:first-child strong, .field-heading > span{display: block; color: var(--ink); font-size: 17px; font-weight: 750;}
.vacation-builder > div:first-child p{margin: 5px 0 15px; color: var(--muted); font-size: 14px;}
.vacation-fields{display: grid; grid-template-columns: 1fr 1fr auto; align-items: end; gap: 12px;}
.vacation-list{display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; color: var(--muted); font-size: 14px;}
.vacation-list button{min-height: 40px; display: inline-flex; align-items: center; gap: 8px; padding: 0 11px; color: var(--ink); border: 1px solid var(--line); border-radius: 999px; background: #111416; cursor: pointer;}
.vacation-list button svg{width: 16px;}
.field-heading{display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px;}
.field-heading button{min-height: 42px; display: inline-flex; align-items: center; gap: 7px; padding: 0 13px; color: var(--ink); border: 1px solid var(--line); border-radius: 10px; background: #111416; cursor: pointer;}
.field-heading button svg{width: 17px;}
#offerTimeRows{display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px;}
.time-row{display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 8px; padding: 10px; border: 1px solid var(--line); border-radius: 11px; background: #111416;}
.time-row > span{grid-column: 1/-1; color: var(--muted); font-size: 13px;}
.time-row input{width: 100%; min-height: 50px; padding: 0 12px; color: #fff; border: 1px solid var(--line); border-radius: 9px; background: var(--surface-2); font-size: 17px; cursor: pointer; color-scheme: dark;}
.last-minute-publisher{border-color: rgba(224,100,105,.48); box-shadow: 0 0 0 1px rgba(182,55,60,.08),0 24px 70px rgba(0,0,0,.28);}
.last-minute-heading{display: grid; grid-template-columns: 56px 1fr auto; align-items: center; gap: 16px; margin-bottom: 24px;}
.last-minute-icon{width: 56px; height: 56px; display: grid; place-items: center; color: #fff; border-radius: 15px; background: var(--red);}
.last-minute-icon svg{width: 28px;}
.last-minute-heading h3{margin: 0; font-family: var(--serif); font-size: 34px;}
.last-minute-heading p{margin: 5px 0 0; color: var(--muted); font-size: 14px; line-height: 1.45;}
.last-minute-price-result{margin-top: 20px; padding: 22px; border: 1px solid rgba(224,100,105,.4); border-radius: 16px; background: linear-gradient(135deg,rgba(182,55,60,.18),rgba(17,20,22,.96));}
.last-minute-price-result > span{color: #f0d8d9; font-size: 14px; font-weight: 750;}
.last-minute-price-result > strong{display: block; margin: 6px 0; font-size: 42px; line-height: 1;}
.last-minute-price-result p{margin: 8px 0 0; color: #d9d3cc; font-size: 14px; line-height: 1.5;}
.business-profile-editor .portfolio-head{align-items: flex-start;}
.business-profile-editor .form-grid{margin-top: 22px;}
@media (max-width:1100px){.business-layout{grid-template-columns: 1fr;}
.business-layout > .live-preview{position: static; max-width: 520px;}
.business-quick-actions{grid-template-columns: 1fr 1fr;}
.urgent-business-action{grid-column: 1/-1;}}
@media (max-width:720px){.business-layout{width: min(100% - 20px,1180px); padding-top: 14px;}
.business-top .shell{padding-inline: 10px;}
.business-mark strong{font-size: 20px;}
.business-status{display: none;}
.business-tabs{margin-inline: -2px; top: 0;}
.business-tabs button{min-width: 118px; min-height: 50px; font-size: 14px !important;}
.business-metrics, .business-quick-actions{grid-template-columns: 1fr;}
.urgent-business-action{grid-column: auto;}
.portfolio-panel, .quick-form, .editor-card, .calendar-card{padding: 18px; border-radius: 16px;}
.portfolio-head, .editor-card-heading, .last-minute-heading{align-items: stretch; grid-template-columns: 1fr; flex-direction: column;}
.last-minute-icon{width: 48px; height: 48px;}
.portfolio-head .btn, .editor-card-heading .btn{width: 100%;}
.editor-section > summary{min-height: 76px; padding: 14px;}
.editor-section-body{padding: 14px;}
.experience-admin{grid-template-columns: 72px minmax(0,1fr); gap: 13px;}
.experience-admin-media{width: 72px; height: 64px;}
.experience-admin-actions{grid-column: 1/-1; display: grid; grid-template-columns: 1fr 1fr;}
.upload-preview-grid{grid-template-columns: 1fr 1fr;}
.photo-upload-actions, .editor-submit-bar{flex-direction: column;}
.photo-upload-actions .btn, .editor-submit-bar .btn{width: 100%;}
.vacation-fields, #offerTimeRows{grid-template-columns: 1fr;}
.vacation-fields .btn{width: 100%;}
.last-minute-heading .timer-chip{width: fit-content;}
.last-minute-price-result > strong{font-size: 38px;}}
.private-demo{min-height: 42px;}
.private-demo .shell, .private-demo strong, .private-demo span{font-size: 13px; line-height: 1.35;}
.private-demo i{width: 17px;}
#view-business :is(p,small,label,button,input,select,textarea,time,span),
    #view-business .business-status,
    #view-business .live-preview h4,
    #view-business .live-preview strong{font-size: max(14px, 1em) !important;}
.view :is(.result-meta,.offer-location,.offer-capacity,.offer-info,.booking-note,.channel-note,.helper,.deposit-helper) span,
    .view :is(.result-meta,.offer-location,.offer-capacity,.offer-info,.booking-note,.channel-note,.helper,.deposit-helper){font-size: max(13px, 1em) !important;}
.view span{font-size: max(13px, 1em) !important;}
.login-remember{min-height: 60px; display: flex; align-items: flex-start; gap: 12px; margin: 4px 0 14px; padding: 13px 14px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.035); cursor: pointer;}
.login-remember input{flex: 0 0 22px; width: 22px; height: 22px; margin-top: 2px; accent-color: var(--red-bright);}
.login-remember span{min-width: 0;}
.login-remember strong{display: block; font-size: 15px; line-height: 1.3;}
.login-remember small{display: block; margin-top: 4px; color: var(--muted); font-size: 13px !important; line-height: 1.45;}
.home-date-range b,
    .home-agenda-footer strong,
    .result-footer strong,
    #view-expired .archive-banner strong,
    #view-experience .location-map .btn,
    #view-experience .review-card strong,
    #view-experience .profile-origin,
    #view-checkout .test-payment-banner strong,
    #view-checkout .registered-user strong,
    #view-checkout .summary-line strong,
    #view-checkout .secure-line,
    #view-register .auth-benefit,
    #view-register .role-card strong,
    .recommendation-bottom strong,
    .agenda-location-copy strong{font-size: 13px !important;}
@media (max-width:720px){.private-demo{min-height: 38px;}
.private-demo .shell, .private-demo strong{font-size: 13px;}}
.detail-hero-video{width: 100%; height: 100%; display: block; object-fit: cover; background: #050607;}
.single-media-gallery{display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin: 0 0 28px;}
.single-media-gallery a{min-height: 130px; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: #111;}
.single-media-gallery img{width: 100%; height: 100%; aspect-ratio: 4/3; display: block; object-fit: cover; transition: transform .22s ease;}
.single-media-gallery a:hover img{transform: scale(1.035);}
.organizer-inline-link, .organizer-title-link{display: inline-flex; align-items: center; gap: 7px; padding: 0; color: inherit; border: 0; background: transparent; font: inherit; text-align: left; text-decoration: underline; text-decoration-color: rgba(224,100,105,.48); text-underline-offset: 4px; cursor: pointer;}
.organizer-inline-link:hover, .organizer-title-link:hover{color: #fff; text-decoration-color: var(--red-bright);}
.organizer-inline-link svg{width: 17px;}
.organizer-title-link:disabled{text-decoration: none; cursor: default;}
.organizer-keyfact{color: inherit; text-decoration: none; transition: border-color .2s ease, transform .2s ease;}
.organizer-keyfact:hover{border-color: rgba(224,100,105,.62); transform: translateY(-2px);}
.organizer-keyfact small{color: var(--red-soft);}
.field-helper-actions{display: flex; justify-content: flex-start; margin-top: -7px;}
.field-helper-actions .btn{min-height: 44px;}
.experience-address-field{padding: 15px; border: 1px solid rgba(224,100,105,.34); border-radius: 13px; background: rgba(182,55,60,.07);}
.single-commerce-card{display: grid; gap: 10px;}
.single-commerce-status{display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 10px; border-bottom: 1px solid var(--line);}
.single-commerce-status span{display: inline-flex; align-items: center; gap: 7px; color: var(--positive); font-weight: 750;}
.single-commerce-status svg{width: 18px;}
.single-commerce-status strong{color: var(--ink); font-size: 20px;}
.single-next-session{display: grid; gap: 4px; padding: 12px 0;}
.single-next-session span{color: var(--muted); font-size: 13px;}
.single-next-session strong{color: var(--ink); font-size: 16px; line-height: 1.35;}
.single-booking-primary{min-height: 54px; font-size: 16px;}
.single-commerce-empty{display: flex; align-items: flex-start; gap: 12px; padding: 15px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-2);}
.single-commerce-empty > svg{flex: 0 0 21px; width: 21px; color: var(--gold);}
.single-commerce-empty strong, .single-commerce-empty span{display: block;}
.single-commerce-empty span{margin-top: 4px; color: var(--muted); font-size: 13px; line-height: 1.45;}
.single-official-site{margin-top: 2px;}
.single-official-site .btn{margin-top: 0;}
.single-mobile-booking-bar{display: none;}
@media (max-width:720px){.single-media-gallery{grid-template-columns: repeat(2,minmax(0,1fr));}
.single-media-gallery a{min-height: 105px;}
.field-helper-actions .btn{width: 100%;}
.single-yea_experience .site-footer, .single-yea_event .site-footer{padding-bottom: 92px;}
.single-mobile-booking-bar{position: fixed; z-index: 120; right: 10px; bottom: 10px; left: 10px; display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 70px; padding: 10px 10px 10px 16px; border: 1px solid rgba(255,255,255,.16); border-radius: 17px; background: rgba(17,20,22,.96); box-shadow: 0 16px 45px rgba(0,0,0,.55); backdrop-filter: blur(16px);}
.single-mobile-booking-bar > div{min-width: 0;}
.single-mobile-booking-bar span{display: block; color: var(--muted); font-size: 12px;}
.single-mobile-booking-bar strong{display: block; margin-top: 2px; color: #fff; font-size: 17px;}
.single-mobile-booking-bar .btn{flex: 0 0 auto; min-width: 125px; min-height: 50px;}}
.single-bookable-entity{animation: none;}
.detail-hero::after{pointer-events: none;}
.single-primary-open{position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; background: #090909; cursor: zoom-in;}
.single-primary-open img{width: 100%; height: 100%; display: block; object-fit: cover;}
.single-entity-shell{padding-top: 24px;}
.single-entity-shell .single-media-gallery{display: block; margin: 0 0 24px;}
.single-gallery-track{display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px;}
.single-gallery-track .single-gallery-open{min-width: 0; min-height: 150px; padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: #111; cursor: zoom-in;}
.single-gallery-track .single-gallery-open img{width: 100%; height: 100%; aspect-ratio: 4/3; display: block; object-fit: cover; transition: transform .2s ease;}
.single-gallery-track .single-gallery-open:hover img{transform: scale(1.025);}
.single-media-gallery.has-carousel .single-gallery-track{display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;}
.single-media-gallery.has-carousel .single-gallery-track::-webkit-scrollbar{display: none;}
.single-media-gallery.has-carousel .single-gallery-open{flex: 0 0 calc((100% - 20px) / 3); scroll-snap-align: start;}
.single-gallery-controls{display: flex; align-items: center; justify-content: flex-end; gap: 9px; margin-top: 10px; color: var(--muted);}
.single-gallery-controls button{width: 44px; height: 44px; display: grid; place-items: center; padding: 0; border: 1px solid var(--line); border-radius: 50%; background: var(--surface); color: var(--ink); cursor: pointer;}
.single-gallery-controls span{margin-right: auto; font-size: 14px;}
.single-detail-grid{padding-top: 0;}
.single-top-keyfacts{margin: 0 0 24px;}
.single-content-section{margin-top: 42px;}
.single-content-section > h2, .single-section-heading h2{margin: 0 0 16px; font-family: var(--serif); font-size: clamp(25px,3vw,34px); line-height: 1.1;}
.single-rich-copy, .single-rich-copy p{color: #c8c2bc; font-size: 17px; line-height: 1.72;}
.public-session-picker{padding: 22px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); box-shadow: inset 0 1px 0 rgba(255,255,255,.025);}
.public-session-heading, .session-calendar-toolbar, .single-section-heading{display: flex; align-items: center; justify-content: space-between; gap: 14px;}
.public-session-heading > div > span, .single-section-heading > div > span{color: var(--red-soft); font-size: 13px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase;}
.public-session-heading h2{margin: 3px 0 0; font-family: var(--serif); font-size: clamp(25px,3vw,33px); line-height: 1.08;}
.public-session-heading > span{display: inline-flex; align-items: center; gap: 7px; color: var(--positive); font-size: 14px; font-weight: 750; white-space: nowrap;}
.public-session-heading svg{width: 18px;}
.session-calendar-toolbar{margin-top: 22px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface-2);}
.session-calendar-toolbar strong{font-size: 18px; text-transform: capitalize;}
.session-calendar-toolbar button{width: 44px; height: 44px; display: grid; place-items: center; padding: 0; border: 1px solid var(--line); border-radius: 11px; background: #111517; color: var(--ink); cursor: pointer;}
.session-calendar-toolbar button:disabled{opacity: .28; cursor: default;}
.session-weekdays, .session-calendar-grid{display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 7px;}
.session-weekdays{margin-top: 14px;}
.session-weekdays span{padding: 7px 0; color: var(--muted); font-size: 13px; font-weight: 800; text-align: center;}
.session-calendar-grid button, .session-calendar-blank{min-height: 54px;}
.session-calendar-grid button{position: relative; display: grid; place-items: center; padding: 5px; border: 1px solid var(--line); border-radius: 11px; background: #111517; color: var(--ink); cursor: pointer;}
.session-calendar-grid button > span{font-size: 16px; font-weight: 800;}
.session-calendar-grid button small{position: absolute; right: 4px; bottom: 3px; min-width: 17px; padding: 2px 4px; border-radius: 10px; background: rgba(66,161,106,.18); color: #8de5b1; font-size: 10px; font-weight: 800;}
.session-calendar-grid button:disabled{border-color: transparent; background: transparent; color: #5d6265; cursor: default;}
.session-calendar-grid button.active{border-color: var(--red-bright); background: rgba(184,50,58,.2); box-shadow: 0 0 0 2px rgba(184,50,58,.12);}
.session-time-panel{margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line);}
.session-time-panel > strong{display: block; font-size: 16px; text-transform: capitalize;}
.session-time-options{display: flex; flex-wrap: wrap; gap: 9px; margin-top: 12px;}
.session-time-options button{min-width: 108px; min-height: 58px; display: grid; gap: 2px; padding: 9px 14px; border: 1px solid var(--line-strong); border-radius: 11px; background: #111517; color: var(--ink); text-align: left; cursor: pointer;}
.session-time-options button strong{font-size: 17px;}
.session-time-options button span{color: var(--muted); font-size: 13px;}
.session-time-options button.active{border-color: var(--red-bright); background: var(--red); color: #fff;}
.session-time-options button.active span{color: #fff;}
.single-inline-empty{margin-bottom: 28px;}
.single-commerce-status{min-width: 0;}
.single-commerce-status strong{flex: 0 0 auto; white-space: nowrap;}
.single-selected-session{display: grid; gap: 5px; padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-2);}
.single-selected-session span{color: var(--muted); font-size: 13px;}
.single-selected-session strong{font-size: 15px; line-height: 1.4;}
.single-booking-primary.is-disabled, .single-mobile-booking-bar .btn.is-disabled{opacity: .46; filter: saturate(.25); cursor: not-allowed;}
.single-practical-info .experience-disclosure{margin-bottom: 10px;}
.single-practical-info .experience-disclosure summary strong{font-size: 16px;}
.single-practical-info .experience-disclosure summary small{font-size: 14px; line-height: 1.4;}
.single-practical-info .experience-disclosure .disclosure-body p{font-size: 15px; line-height: 1.65;}
.single-section-heading .btn{flex: 0 0 auto; min-height: 46px;}
.single-location-address{display: flex; align-items: center; gap: 8px; margin: 0 0 13px; color: #d9d4ce; font-size: 16px;}
.single-location-address svg{flex: 0 0 19px; width: 19px; color: var(--red-soft);}
.single-map-preview{height: 310px; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: #111;}
.single-map-preview iframe{width: 100%; height: 100%; border: 0; filter: grayscale(.25) brightness(.82) contrast(1.08); pointer-events: none;}
.single-organizer-card{display: grid; grid-template-columns: 68px minmax(0,1fr) 24px; align-items: center; gap: 16px; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); color: inherit; text-decoration: none;}
.single-organizer-card > img, .single-organizer-placeholder{width: 68px; height: 68px; display: grid; place-items: center; border-radius: 13px; object-fit: cover; background: var(--surface-2);}
.single-organizer-placeholder svg{width: 28px; color: var(--gold);}
.single-organizer-card > span:nth-child(2){min-width: 0;}
.single-organizer-card strong{display: block; font-size: 20px;}
.single-organizer-card small{display: inline-flex; align-items: center; gap: 6px; margin-top: 5px; color: var(--positive); font-size: 13px;}
.single-organizer-card small svg{width: 16px;}
.single-organizer-card p{margin: 9px 0 0; color: var(--muted); font-size: 14px; line-height: 1.5;}
.single-lightbox[hidden]{display: none;}
.single-lightbox{position: fixed; z-index: 99999; inset: 0; display: grid; place-items: center; padding: 70px 72px; background: rgba(0,0,0,.94);}
.single-lightbox img{max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 8px; box-shadow: 0 25px 80px rgba(0,0,0,.6);}
.single-lightbox-close, .single-lightbox-nav{position: absolute; width: 50px; height: 50px; display: grid; place-items: center; padding: 0; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; background: rgba(20,22,24,.88); color: #fff; cursor: pointer;}
.single-lightbox-close{top: 18px; right: 18px;}
.single-lightbox-nav{top: 50%; transform: translateY(-50%);}
.single-lightbox-nav.previous{left: 15px;}
.single-lightbox-nav.next{right: 15px;}
.single-lightbox > span{position: absolute; bottom: 22px; color: #fff; font-size: 15px; font-weight: 800;}
body.single-lightbox-open{overflow: hidden;}
@media (max-width:900px){.single-gallery-track{grid-template-columns: repeat(2,minmax(0,1fr));}
.single-media-gallery.has-carousel .single-gallery-open{flex-basis: calc((100% - 10px) / 2);}}
@media (max-width:720px){.single-entity-shell{width: min(calc(100% - 24px),var(--max)); padding-top: 14px;}
.single-gallery-track{display: flex; gap: 8px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;}
.single-gallery-track .single-gallery-open, .single-media-gallery.has-carousel .single-gallery-open{flex: 0 0 78%; min-height: 120px; scroll-snap-align: start;}
.single-gallery-controls{display: none;}
.single-detail-grid{gap: 24px;}
.single-detail-grid > .single-commerce-card{display: none;}
.public-session-picker{padding: 16px; border-radius: 15px;}
.public-session-heading{align-items: flex-start;}
.public-session-heading > span{font-size: 12px;}
.session-weekdays, .session-calendar-grid{gap: 4px;}
.session-calendar-grid button, .session-calendar-blank{min-height: 47px;}
.session-calendar-grid button > span{font-size: 15px;}
.session-time-options{display: grid; grid-template-columns: 1fr 1fr;}
.session-time-options button{width: 100%; min-width: 0;}
.single-content-section{margin-top: 34px;}
.single-section-heading{align-items: flex-start; flex-direction: column;}
.single-section-heading .btn{width: 100%;}
.single-map-preview{height: 240px;}
.single-lightbox{padding: 70px 12px;}
.single-lightbox-nav{top: auto; bottom: 17px; transform: none;}
.single-lightbox > span{bottom: 32px;}}
.single-media-composition{display: grid; grid-template-columns: 1fr; gap: 10px; margin-top: 22px;}
.single-media-composition.has-side-gallery{grid-template-columns: minmax(0,2.15fr) minmax(250px,.85fr);}
.single-media-composition .detail-hero{height: 420px; border: 1px solid var(--line); border-radius: 20px;}
.single-media-composition .back-button{top: 18px; left: 18px;}
.single-media-composition .detail-title{bottom: 27px; left: 28px; right: 28px;}
.single-media-composition .detail-title h1{font-size: clamp(42px,5vw,64px);}
.single-media-composition .single-media-gallery{position: relative; min-width: 0; height: 420px; display: block; margin: 0; overflow: hidden; border-radius: 20px;}
.single-media-composition .single-gallery-track,
    .single-media-composition .single-media-gallery.has-carousel .single-gallery-track{width: 100%; height: 100%; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); grid-auto-rows: calc((100% - 10px)/2); gap: 10px; overflow-x: hidden; overflow-y: auto; scroll-snap-type: y mandatory; scrollbar-width: none;}
.single-media-composition .single-gallery-track::-webkit-scrollbar{display: none;}
.single-media-composition .single-gallery-track .single-gallery-open,
    .single-media-composition .single-media-gallery.has-carousel .single-gallery-open{width: 100%; height: 100%; min-height: 0; border-radius: 16px; scroll-snap-align: start;}
.single-media-composition .single-gallery-count-1 .single-gallery-track{grid-template-columns: 1fr; grid-auto-rows: 100%;}
.single-media-composition .single-gallery-count-2 .single-gallery-track{grid-template-columns: 1fr; grid-auto-rows: calc((100% - 10px)/2);}
.single-media-composition .single-gallery-track .single-gallery-open img{width: 100%; height: 100%; aspect-ratio: auto;}
.single-media-composition .single-gallery-controls{position: absolute; z-index: 4; right: 10px; bottom: 10px; left: 10px; justify-content: center; gap: 7px; margin: 0; padding: 7px; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; background: rgba(8,10,11,.82); backdrop-filter: blur(12px);}
.single-media-composition .single-gallery-controls span{margin: 0 auto; color: #fff; font-size: 13px; font-weight: 750;}
.single-media-composition .single-gallery-controls button{width: 36px; height: 36px; border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.08);}
.single-entity-shell{padding-top: 28px;}
.single-top-keyfacts{grid-template-columns: minmax(190px,1.35fr) repeat(4,minmax(0,1fr)); gap: 0; padding: 8px; overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(145deg,#161b1e,#101315); box-shadow: inset 0 1px 0 rgba(255,255,255,.035);}
.single-top-keyfacts .experience-keyfact{position: relative; min-height: 106px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 0; padding: 22px 17px 17px; border: 0; border-left: 1px solid rgba(255,255,255,.09); border-radius: 0; background: transparent;}
.single-top-keyfacts .experience-keyfact:first-child{border-left: 0;}
.single-top-keyfacts .organizer-keyfact{border-radius: 13px; background: linear-gradient(145deg,rgba(180,51,58,.18),rgba(255,255,255,.025));}
.single-top-keyfacts .experience-keyfact::before{content: ""; position: absolute; top: 11px; left: 17px; width: 30px; height: 2px; background: linear-gradient(90deg,#a52f39,#d7a25f 72%,transparent); box-shadow: 0 0 10px rgba(165,47,57,.28);}
.single-top-keyfacts .organizer-keyfact::before{width: 42px; background: linear-gradient(90deg,#d84b55,#e6b66e 72%,transparent);}
.single-top-keyfacts .experience-keyfact > span{margin: 0; color: #c7c1bb; font-size: 14px; letter-spacing: .035em;}
.single-top-keyfacts .experience-keyfact > strong{margin-top: 7px; color: #f4f1ed; font-family: var(--serif); font-size: 19px; line-height: 1.22; letter-spacing: .01em;}
.single-top-keyfacts .experience-keyfact > small{margin-top: 7px; color: #db8a8f; font-size: 13px;}
.single-top-keyfacts .fear-track{width: min(100%,105px); gap: 3px; margin-top: 10px;}
.single-top-keyfacts .fear-track span{height: 5px;}
.single-lightbox{padding: 76px; background: rgba(0,0,0,.91); backdrop-filter: blur(8px);}
.single-lightbox img{width: auto; height: auto; max-width: min(100%,980px); max-height: 72vh; padding: 8px; border: 1px solid rgba(255,255,255,.14); border-radius: 14px; background: #0f1112; box-shadow: 0 24px 75px rgba(0,0,0,.68);}
.single-lightbox > span{bottom: 26px; padding: 7px 12px; border-radius: 999px; background: rgba(20,22,24,.86);}
.experience-address-map-preview{grid-column: 1/-1; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px; padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: #111517;}
.experience-address-map-preview[hidden]{display: none;}
.experience-address-map-preview > div{min-width: 0;}
.experience-address-map-preview strong, .experience-address-map-preview span{display: block;}
.experience-address-map-preview strong{font-size: 16px;}
.experience-address-map-preview span{margin-top: 4px; color: var(--muted); font-size: 13px !important; overflow-wrap: anywhere;}
.experience-address-map-preview iframe{grid-column: 1/-1; width: 100%; height: 210px; border: 0; border-radius: 12px; background: #090b0c;}
.experience-address-map-preview .btn{align-self: center; margin: 0; white-space: nowrap;}
@media (max-width:980px){.single-media-composition.has-side-gallery{grid-template-columns: minmax(0,1.8fr) minmax(220px,.8fr);}
.single-top-keyfacts{grid-template-columns: repeat(2,minmax(0,1fr));}
.single-top-keyfacts .organizer-keyfact{grid-column: 1/-1;}
.single-top-keyfacts .experience-keyfact{border-left: 0; border-top: 1px solid rgba(255,255,255,.08);}}
@media (max-width:720px){.single-media-composition, .single-media-composition.has-side-gallery{width: min(calc(100% - 20px),var(--max)); display: block; margin-top: 10px;}
.single-media-composition .detail-hero{height: 310px; border-radius: 16px;}
.single-media-composition .detail-title{bottom: 18px; left: 18px; right: 18px;}
.single-media-composition .detail-title h1{font-size: clamp(36px,12vw,48px);}
.single-media-composition .detail-meta{gap: 8px 12px;}
.single-media-composition .single-media-gallery{height: 106px; margin-top: 8px; border-radius: 13px;}
.single-media-composition .single-gallery-track,
      .single-media-composition .single-media-gallery.has-carousel .single-gallery-track{display: flex; flex-direction: row; gap: 8px; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory;}
.single-media-composition .single-gallery-track .single-gallery-open,
      .single-media-composition .single-media-gallery.has-carousel .single-gallery-open,
      .single-media-composition .single-gallery-count-1 .single-gallery-open{flex: 0 0 46%; min-height: 106px; border-radius: 13px;}
.single-media-composition .single-gallery-count-1 .single-gallery-open{flex-basis: 100%;}
.single-top-keyfacts{grid-template-columns: 1fr 1fr; padding: 6px;}
.single-top-keyfacts .organizer-keyfact{grid-column: 1/-1;}
.single-top-keyfacts .experience-keyfact{min-height: 98px; padding: 23px 12px 13px;}
.single-top-keyfacts .experience-keyfact::before{top: 11px; left: 12px; width: 26px;}
.single-top-keyfacts .organizer-keyfact::before{width: 38px;}
.single-top-keyfacts .experience-keyfact > span{font-size: 13px;}
.single-top-keyfacts .experience-keyfact > strong{font-size: 16px;}
.single-lightbox{padding: 66px 12px 88px;}
.single-lightbox img{max-width: 94vw; max-height: 68vh; padding: 5px;}
.experience-address-map-preview{grid-template-columns: 1fr;}
.experience-address-map-preview .btn{width: 100%;}
.experience-address-map-preview iframe{height: 190px;}}
.detail-organizer-link{display: inline-flex; align-items: center; gap: 7px; color: #fff; font-weight: 750;}
.detail-organizer-link:hover{color: #efb1b4;}
.single-location-transport{display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0;}
.single-location-transport span{min-height: 42px; display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; color: #e9ece9; border: 1px solid var(--line); border-radius: 999px; background: #151a1d; font-size: 14px; font-weight: 700;}
.single-location-transport svg{width: 18px; color: var(--gold);}
@media (max-width:720px){.single-top-keyfacts .experience-keyfact:last-child:nth-child(odd){grid-column: 1 / -1;}}
.single-design-b{padding: 24px 0 124px; background: #050606;}
.single-design-b .shell{width: min(1320px,calc(100% - 40px));}
.single-b-hero{display: grid; grid-template-columns: minmax(0,1.58fr) minmax(360px,.82fr); overflow: hidden; border: 1px solid #292d30; border-radius: 14px; background: #101214; box-shadow: 0 28px 70px rgba(0,0,0,.35);}
.single-b-gallery{min-width: 0; padding: 10px; background: #090a0b;}
.single-b-gallery .detail-hero{position: relative; height: 480px; min-height: 0; overflow: hidden; border-radius: 9px; background: #151719;}
.single-b-gallery .single-primary-open,.single-b-gallery .detail-hero-video{width: 100%; height: 100%; display: block; border: 0; background: #111;}
.single-b-gallery .single-primary-open img,.single-b-gallery .detail-hero-video{width: 100%; height: 100%; object-fit: cover;}
.single-b-gallery .single-media-gallery{position: relative; margin-top: 8px; padding: 0; border: 0; background: transparent;}
.single-b-gallery .single-gallery-track{display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none;}
.single-b-gallery .single-gallery-track::-webkit-scrollbar{display: none;}
.single-b-gallery .single-gallery-track .single-gallery-open{flex: 0 0 102px; width: 102px; height: 68px; padding: 0; overflow: hidden; border: 2px solid transparent; border-radius: 7px; background: #181a1c;}
.single-b-gallery .single-gallery-track .single-gallery-open:hover,.single-b-gallery .single-gallery-track .single-gallery-open:focus-visible{border-color: #c33b42;}
.single-b-gallery .single-gallery-track .single-gallery-open img{width: 100%; height: 100%; object-fit: cover;}
.single-b-gallery .single-gallery-controls{position: absolute; right: 8px; bottom: 8px; display: flex; align-items: center; gap: 5px; padding: 5px; border-radius: 7px; background: rgba(8,9,10,.88);}
.single-b-gallery .single-gallery-controls button{width: 34px; height: 34px; display: grid; place-items: center; color: #fff; border: 0; border-radius: 5px; background: #26292b;}
.single-b-gallery .single-gallery-controls span{padding-inline: 5px; color: #fff; font-size: 12px; font-weight: 800;}
.single-b-summary{position: relative; display: flex; flex-direction: column; align-items: flex-start; padding: 36px 34px 28px; border-left: 1px solid #292d30; background: linear-gradient(145deg,#181b1d,#101214 70%);}
.single-b-favorite{position: absolute; top: 22px; right: 22px; width: 46px; height: 46px; display: grid; place-items: center; color: #fff; border: 1px solid #653439; border-radius: 50%; background: #9f2f35;}
.single-b-favorite svg{width: 21px;}
.single-b-favorite.is-saved,.single-b-favorite.active{color: #fff; background: #d1434a;}
.single-b-favorite.is-saved svg,.single-b-favorite.active svg{fill: currentColor;}
.single-b-organizer{display: inline-flex; align-items: center; gap: 10px; max-width: calc(100% - 58px); color: #f0ede8; font-size: 15px; font-weight: 800;}
.single-b-organizer > span{display: inline-flex; align-items: center; gap: 4px; color: #d1a156; font-size: 12px;}
.single-b-organizer svg{width: 15px;}
.single-b-summary h1{max-width: 100%; margin: 20px 0 7px; font-family: var(--serif); font-size: clamp(38px,4vw,57px); font-weight: 600; line-height: 1.01; letter-spacing: -.035em;}
.single-b-type{margin: 0; color: #c8c4be; font-size: 16px; line-height: 1.4;}
.single-b-review-summary{display: flex; align-items: center; gap: 9px; margin-top: 16px;}
.single-b-review-summary strong{display: inline-flex; align-items: center; gap: 5px; color: #f4c36c; font-size: 18px;}
.single-b-review-summary strong svg{width: 18px; fill: currentColor;}
.single-b-review-summary span{color: #bbb8b2; font-size: 14px;}
.single-b-price{display: flex; align-items: baseline; gap: 8px; margin-top: 22px;}
.single-b-price span,.single-b-price small{color: #bdb9b2; font-size: 14px;}
.single-b-price strong{color: #fff; font-family: var(--sans); font-size: 32px; font-weight: 850;}
.single-b-teaser{margin: 17px 0 0; color: #dbd8d2; font-size: 16px; line-height: 1.62;}
.single-b-keyfacts{width: 100%; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0; margin-top: 22px; border-top: 1px solid #303437; border-bottom: 1px solid #303437;}
.single-b-keyfacts > div,.single-b-keyfacts > span{min-width: 0; padding: 14px 10px 14px 0;}
.single-b-keyfacts span{display: block; margin-bottom: 4px; color: #9f9c97; font-size: 12px; font-weight: 700;}
.single-b-keyfacts strong{display: block; overflow: hidden; color: #f4f1ed; font-size: 15px; text-overflow: ellipsis; white-space: nowrap;}
.single-b-alert{width: 100%; min-height: 50px; margin-top: auto; color: #f0ede8; border-color: #464a4d; font-size: 15px;}
.single-b-booking-console{display: grid; grid-template-columns: 190px minmax(280px,1.25fr) minmax(230px,.9fr) 150px 205px; gap: 0; align-items: stretch; margin-top: 20px; overflow: hidden; border: 1px solid #34383b; border-radius: 12px; background: #141719; box-shadow: 0 20px 50px rgba(0,0,0,.3);}
.single-b-booking-intro,.single-b-booking-step,.single-b-booking-action{min-width: 0; padding: 21px 20px;}
.single-b-booking-intro{display: flex; flex-direction: column; justify-content: center; background: #0e1011;}
.single-b-booking-intro > span{color: #d34a51; font-size: 11px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase;}
.single-b-booking-intro h2{margin: 7px 0 4px; font-family: var(--serif); font-size: 24px; line-height: 1.05;}
.single-b-booking-intro p{margin: 0; color: #aaa7a1; font-size: 13px;}
.single-b-booking-step{display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 11px; border-left: 1px solid #303437;}
.single-b-step-number{width: 27px; height: 27px; display: grid; place-items: center; color: #fff; border-radius: 50%; background: #a83239; font-size: 13px; font-weight: 900;}
.single-b-booking-step strong{color: #f3f0eb; font-size: 15px;}
.single-b-booking-step small{display: block; margin-top: 6px; color: #aaa7a1; font-size: 12px;}
.single-b-booking-console .session-calendar-toolbar{display: grid; grid-template-columns: 36px minmax(0,1fr) 36px; align-items: center; gap: 4px; margin: 8px 0 7px;}
.single-b-booking-console .session-calendar-toolbar button{width: 36px; height: 36px; display: grid; place-items: center; color: #ddd9d3; border: 1px solid #3b3f42; border-radius: 6px; background: #1c1f21;}
.single-b-booking-console .session-calendar-toolbar button svg{width: 16px;}
.single-b-booking-console #sessionCalendarMonth{overflow: hidden; color: #dedbd6; font-size: 13px; font-weight: 800; text-align: center; text-overflow: ellipsis; white-space: nowrap;}
.single-b-booking-console .session-calendar-grid{display: flex; gap: 6px; overflow-x: auto; padding: 1px 0 5px; scrollbar-width: thin;}
.single-b-booking-console .session-calendar-grid button{flex: 0 0 49px; min-height: 49px; padding: 4px; color: #e9e5df; border: 1px solid #3c4043; border-radius: 7px; background: #1d2022; font-size: 13px; font-weight: 850;}
.single-b-booking-console .session-calendar-grid button.selected,.single-b-booking-console .session-calendar-grid button.active{border-color: #d24a51; background: #9f3036;}
.single-b-booking-console .session-time-panel{margin-top: 9px;}
.single-b-booking-console #sessionTimeTitle{display: block; color: #aaa7a1; font-size: 12px;}
.single-b-booking-console .session-time-options{display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px;}
.single-b-booking-console .session-time-options button{min-height: 38px; padding: 0 11px; color: #e9e5df; border: 1px solid #3c4043; border-radius: 6px; background: #1d2022; font-size: 13px; font-weight: 800;}
.single-b-booking-console .session-time-options button.selected,.single-b-booking-console .session-time-options button.active{border-color: #d24a51; background: #9f3036;}
.single-b-people-control{display: grid; grid-template-columns: 38px 42px 38px; align-items: center; margin-top: 12px;}
.single-b-people-control button{height: 38px; color: #fff; border: 1px solid #424649; background: #202326; font-size: 20px;}
.single-b-people-control button:first-child{border-radius: 7px 0 0 7px;}
.single-b-people-control button:last-child{border-radius: 0 7px 7px 0;}
.single-b-people-control span{height: 38px; display: grid; place-items: center; border-top: 1px solid #424649; border-bottom: 1px solid #424649; color: #fff; font-size: 16px; font-weight: 900;}
.single-b-booking-action{display: flex; flex-direction: column; justify-content: center; border-left: 1px solid #303437; background: #111314;}
.single-b-booking-action > span{color: #aaa7a1; font-size: 12px;}
.single-b-booking-action > strong{margin: 4px 0; color: #fff; font-size: 26px;}
.single-b-booking-action > small{min-height: 18px; overflow: hidden; color: #b8b5af; font-size: 11px; text-overflow: ellipsis; white-space: nowrap;}
.single-b-booking-action .btn{width: 100%; min-height: 46px; margin-top: 10px; font-size: 14px;}
.single-b-no-sessions{min-height: 76px; display: flex; align-items: center; gap: 15px; margin-top: 20px; padding: 18px 20px; border: 1px solid #34383b; border-radius: 10px; background: #121416;}
.single-b-no-sessions svg{color: #c3914b;}
.single-b-no-sessions strong,.single-b-no-sessions span{display: block;}
.single-b-no-sessions span{margin-top: 3px; color: #aaa7a1; font-size: 14px;}
.single-b-content{padding-top: 34px;}
.single-b-content-nav{position: sticky; top: 0; z-index: 15; display: flex; gap: 32px; overflow-x: auto; border-bottom: 1px solid #2e3234; background: rgba(5,6,6,.96); backdrop-filter: blur(12px);}
.single-b-content-nav button{min-height: 56px; flex: 0 0 auto; padding: 0 0 2px; color: #aaa7a1; border: 0; border-bottom: 3px solid transparent; background: transparent; font-size: 15px; font-weight: 850;}
.single-b-content-nav button.active{color: #fff; border-bottom-color: #c43d44;}
.single-b-content .single-content-section{scroll-margin-top: 80px; padding: 42px 0; border-bottom: 1px solid #292d30;}
.single-b-content .single-content-section h2{margin: 0 0 18px; font-family: var(--serif); font-size: clamp(28px,3vw,38px); font-weight: 600;}
.single-b-description-grid{display: grid; grid-template-columns: minmax(0,1.35fr) minmax(300px,.65fr); gap: 58px;}
.single-b-description-grid .single-description{color: #dedad4; font-size: 17px; line-height: 1.78;}
.single-b-description-grid .single-practical-list{display: grid; gap: 8px;}
.single-b-description-grid details{overflow: hidden; border: 1px solid #33373a; border-radius: 8px; background: #111315;}
.single-b-description-grid summary{min-height: 52px; display: flex; align-items: center; padding: 0 16px; color: #f1ede7; font-size: 15px; font-weight: 800; cursor: pointer;}
.single-b-description-grid details > div{padding: 0 16px 16px; color: #c7c3bd; font-size: 15px; line-height: 1.6;}
.single-b-lower-grid{display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 46px;}
.single-b-lower-grid > .single-content-section{border-bottom: 0;}
.single-b-lower-grid .single-map-preview{height: 250px; overflow: hidden; border-radius: 10px; border: 1px solid #3a3e40;}
.single-b-lower-grid .single-map-preview iframe{width: 100%; height: 100%; border: 0;}
.single-b-rating{color: #f4c36c; font-size: 23px;}
.single-b-review-list{display: grid; gap: 10px;}
.single-b-review-list article,.single-b-empty-review{padding: 18px; border: 1px solid #34383b; border-radius: 9px; background: #111315;}
.single-b-review-list article > div{display: flex; align-items: center; justify-content: space-between; gap: 12px;}
.single-b-review-list article span{color: #77c58a; font-size: 12px; font-weight: 800;}
.single-b-review-list article p,.single-b-empty-review span{margin: 10px 0 0; color: #c7c3bd; font-size: 15px; line-height: 1.6;}
.single-b-empty-review strong,.single-b-empty-review span{display: block;}
.single-b-content .single-organizer-card{min-height: 98px; padding: 18px; border: 1px solid #34383b; border-radius: 10px; background: #111315;}
.single-b-official-link{display: inline-flex; align-items: center; gap: 7px; margin-top: 14px; color: #bbb7b1; font-size: 14px; font-weight: 800;}
.single-b-official-link svg{width: 16px;}
.single-b-related-track{display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px;}
.single-b-related-track > a{overflow: hidden; border: 1px solid #2f3335; border-radius: 9px; background: #101214;}
.single-b-related-track img{width: 100%; height: 170px; object-fit: cover;}
.single-b-related-track span,.single-b-related-track strong,.single-b-related-track small{display: block; margin-inline: 15px;}
.single-b-related-track span{margin-top: 14px; color: #c94b51; font-size: 11px; font-weight: 900; text-transform: uppercase;}
.single-b-related-track strong{margin-top: 5px; color: #f3f0eb; font-family: var(--serif); font-size: 20px;}
.single-b-related-track small{margin-top: 7px; margin-bottom: 16px; color: #aaa7a1; font-size: 13px; line-height: 1.45;}
.single-b-fixed-booking{position: fixed; z-index: 80; right: 18px; bottom: 16px; left: 18px; width: min(1160px,calc(100% - 36px)); min-height: 66px; display: flex !important; align-items: center; justify-content: space-between; gap: 18px; margin-inline: auto; padding: 10px 12px 10px 20px; border: 1px solid #414548; border-radius: 10px; background: rgba(17,19,20,.96); box-shadow: 0 18px 60px rgba(0,0,0,.55); backdrop-filter: blur(15px);}
.single-b-fixed-booking > div{min-width: 0;}
.single-b-fixed-booking span,.single-b-fixed-booking strong{display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.single-b-fixed-booking span{color: #aaa7a1; font-size: 12px;}
.single-b-fixed-booking strong{color: #fff; font-size: 15px;}
.single-b-fixed-booking .btn{min-width: 178px; min-height: 46px;}
.experience-editor-b .experience-editor-head{margin-bottom: 18px; padding: 23px 25px; border: 1px solid #313537; border-radius: 10px; background: #111315;}
.experience-editor-b .experience-editor-head h3{font-size: 29px;}
.experience-editor-b .experience-editor-head p{max-width: 740px; color: #bbb7b1; font-size: 15px; line-height: 1.55;}
.experience-editor-progress{display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); margin-bottom: 18px; overflow: hidden; border: 1px solid #34383b; border-radius: 9px; background: #101214;}
.experience-editor-progress button{position: relative; min-height: 58px; padding: 0 12px; color: #aaa7a1; border: 0; border-right: 1px solid #303437; background: transparent; font-size: 13px; font-weight: 850;}
.experience-editor-progress button > span{display: inline-grid; place-items: center; width: 23px; height: 23px; margin-right: 7px; color: #aaa7a1; border: 1px solid #414548; border-radius: 50%; font-size: 11px;}
.experience-editor-progress button:last-child{border-right: 0;}
.experience-editor-progress button::after{position: absolute; right: 12px; bottom: 8px; left: 12px; height: 2px; content: ''; background: transparent;}
.experience-editor-progress button.is-active,.experience-editor-progress button.active{color: #fff; background: #181b1d;}
.experience-editor-progress button.is-active::after,.experience-editor-progress button.active::after{background: #c43b43;}
.experience-editor-progress button.active > span{color: #fff; border-color: #bd3b42; background: #9e3036;}
.experience-editor-b-workspace{display: grid; grid-template-columns: minmax(0,1.3fr) minmax(400px,.7fr); gap: 20px; align-items: start;}
.experience-editor-b-form{min-width: 0;}
.editor-b-visibility-note{min-height: 45px; display: flex; align-items: center; gap: 9px; margin-bottom: 10px; padding: 0 13px; color: #c3bfb9; border-left: 3px solid #c78f44; background: #151719; font-size: 14px;}
.editor-b-visibility-note svg{width: 18px; color: #d0a15b;}
.experience-editor-b-form [data-editor-panel]{display: none;}
.experience-editor-b-form [data-editor-panel].is-active{display: block;}
.experience-editor-b-form > details,.editor-b-special-panel{overflow: hidden; margin: 0; border: 1px solid #34383b; border-radius: 10px; background: #111315;}
.experience-editor-b-form > details > summary{min-height: 66px; display: flex; align-items: center; padding: 0 22px; color: #f2eee8; font-size: 18px; font-weight: 850; cursor: default;}
.experience-editor-b-form > details[open] > summary{border-bottom: 1px solid #303437;}
.experience-editor-b-form > details > .form-grid{padding: 22px;}
.experience-editor-b .field > span{margin-bottom: 8px; color: #e4e0da; font-size: 14px; font-weight: 800;}
.experience-editor-b input,.experience-editor-b select,.experience-editor-b textarea{min-height: 50px; color: #f8f5f0; border: 1px solid #454a4d; border-radius: 7px; background: #1b1e20; font-size: 15px;}
.experience-editor-b textarea{min-height: 130px; padding-top: 13px; line-height: 1.55;}
.experience-editor-b input:focus,.experience-editor-b select:focus,.experience-editor-b textarea:focus{border-color: #cc434a; box-shadow: 0 0 0 3px rgba(204,67,74,.16); outline: 0;}
.experience-type-guidance{grid-column: 1/-1; min-height: 66px; display: flex; align-items: center; gap: 13px; padding: 13px 15px; border: 1px solid #514137; border-left: 4px solid #c78f44; border-radius: 8px; background: linear-gradient(90deg,rgba(199,143,68,.12),rgba(199,143,68,.025));}
.experience-type-guidance > svg{flex: 0 0 24px; width: 24px; height: 24px; color: #e3ac62;}
.experience-type-guidance strong,.experience-type-guidance span{display: block;}
.experience-type-guidance strong{color: #fff7ed; font-size: 16px;}
.experience-type-guidance span{margin-top: 3px; color: #cbc4bb; font-size: 14px; line-height: 1.4;}
.commerce-type-guidance{min-height: 74px; display: flex; align-items: center; gap: 14px; padding: 15px 17px; border: 1px solid #554044; border-left: 4px solid #cc454c; border-radius: 9px; background: linear-gradient(90deg,rgba(204,69,76,.14),rgba(204,69,76,.025));}
.commerce-type-guidance > svg{flex: 0 0 26px; width: 26px; height: 26px; color: #ef7076;}
.commerce-type-guidance strong,.commerce-type-guidance span{display: block;}
.commerce-type-guidance strong{color: #fff; font-size: 17px;}
.commerce-type-guidance span{margin-top: 3px; color: #c9c4bd; font-size: 14px; line-height: 1.45;}
.ticket-capacity-summary{min-height: 43px; display: flex; align-items: center; margin-top: 11px; padding: 9px 12px; color: #cbd0cd; border: 1px solid #3b5044; border-radius: 8px; background: #152019; font-size: 14px; font-weight: 700;}
.ticket-capacity-summary.is-over{color: #ffd9d9; border-color: #8c3b40; background: #321a1d;}
.experience-editor-b input[readonly]{color: #cbc7c0; border-style: dashed; background: #151719; cursor: not-allowed;}
.experience-editor-b .experience-editor-progress button[hidden]{display: none !important;}
.type-specific-editor .type-specific-empty{margin: 0; padding: 15px 17px; color: #c8c3bd; border: 1px dashed #44494c; border-radius: 8px; background: #17191b; font-size: 15px;}
.experience-editor-b [data-type-field][hidden],.experience-editor-b [data-type-detail][hidden],.experience-editor-b #experienceBookingSection[hidden]{display: none !important;}
.experience-editor-b .choice-grid{gap: 10px;}
.experience-editor-b .choice-card{min-height: 52px; color: #ddd9d3; border-color: #454a4d; background: #1b1e20; font-size: 14px;}
.experience-editor-b .choice-card:has(input:checked){color: #fff; border-color: #ca4249; background: #302022;}
.editor-b-special-panel{min-height: 250px; align-items: center; justify-content: space-between; gap: 28px; padding: 32px;}
.experience-editor-b-form .editor-b-special-panel.is-active{display: flex;}
.editor-b-special-panel > div > span{color: #cc454c; font-size: 12px; font-weight: 900; text-transform: uppercase;}
.editor-b-special-panel h3{margin: 8px 0; font-family: var(--serif); font-size: 32px;}
.editor-b-special-panel p{max-width: 570px; margin: 0; color: #bbb7b1; font-size: 16px; line-height: 1.6;}
.editor-b-publish-check{display: grid; gap: 10px; min-width: 220px;}
.editor-b-publish-check span{display: flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 12px; border: 1px solid #3b3f42; border-radius: 7px; background: #1a1d1f; font-size: 14px;}
.editor-b-publish-check svg{width: 17px; color: #c99b55;}
.experience-editor-live{position: sticky; top: 22px; overflow: hidden; border: 1px solid #34383b; border-radius: 10px; background: #101214;}
.experience-editor-live-toolbar{min-height: 52px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 14px; border-bottom: 1px solid #303437;}
.experience-editor-live-toolbar strong{font-size: 14px;}
.experience-editor-preview-modes{display: flex; gap: 4px;}
.experience-editor-preview-modes button{width: 36px; height: 36px; display: grid; place-items: center; color: #9e9b95; border: 0; border-radius: 6px; background: transparent;}
.experience-editor-preview-modes button.is-active{color: #fff; background: #272a2c;}
.experience-editor-preview-modes svg{width: 17px;}
.experience-editor-live-card{margin: 14px; overflow: hidden; border: 1px solid #3a3e41; border-radius: 9px; background: #171a1c;}
.experience-editor-live-media{height: 220px; background: linear-gradient(145deg,#25191b,#111315);}
.experience-editor-live-media img{width: 100%; height: 100%; object-fit: cover;}
.experience-editor-live-body{padding: 19px;}
.experience-editor-live-body > span{color: #c24a50; font-size: 11px; font-weight: 900; text-transform: uppercase;}
.experience-editor-live-body h3{margin: 7px 0 5px; font-family: var(--serif); font-size: 28px; line-height: 1.08;}
.experience-editor-live-body p{margin: 0; color: #b8b5af; font-size: 14px;}
.experience-editor-live-facts{display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; margin-top: 17px; overflow: hidden; border: 1px solid #383c3e; border-radius: 7px; background: #383c3e;}
.experience-editor-live-facts > div{padding: 10px; background: #1c1f21;}
.experience-editor-live-facts span,.experience-editor-live-facts strong{display: block;}
.experience-editor-live-facts span{color: #999690; font-size: 10px;}
.experience-editor-live-facts strong{margin-top: 3px; color: #f2eee8; font-size: 13px;}
.experience-editor-live-price{display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 18px;}
.experience-editor-live-price strong{font-size: 26px;}
.experience-editor-live-price span{color: #aaa7a1; font-size: 12px;}
.experience-editor-live-card .btn{width: calc(100% - 38px); min-height: 47px; margin: 0 19px 19px;}
.experience-editor-live-note{margin: 0 16px 16px; color: #97948f; font-size: 12px; line-height: 1.5;}
.experience-live-preview{position: sticky; top: 22px; overflow: hidden; border: 1px solid #34383b; border-radius: 10px; background: #101214;}
.experience-live-preview-head{min-height: 56px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 4px 12px; padding: 9px 14px; border-bottom: 1px solid #303437;}
.experience-live-preview-head > strong{color: #f3f0eb; font-size: 15px;}
.experience-live-preview-head > div{display: flex; gap: 4px;}
.experience-live-preview-head button{width: 36px; height: 36px; display: grid; place-items: center; color: #a7a49f; border: 0; border-radius: 6px; background: transparent;}
.experience-live-preview-head button.active{color: #fff; background: #2a2d30;}
.experience-live-preview-head button svg{width: 17px;}
.experience-live-preview-head > span{grid-column: 1/-1; display: flex; align-items: center; gap: 6px; color: #79c78d; font-size: 11px; font-weight: 800;}
.experience-live-preview-head > span svg{width: 10px; fill: currentColor;}
.experience-live-card{margin: 14px; overflow: hidden; border: 1px solid #3a3e41; border-radius: 9px; background: #171a1c;}
.experience-live-media{position: relative; height: 220px; overflow: hidden; background: linear-gradient(145deg,#25191b,#111315);}
.experience-live-media img{width: 100%; height: 100%; object-fit: cover;}
.experience-live-media > span{position: absolute; right: 12px; bottom: 12px; width: 39px; height: 39px; display: grid; place-items: center; color: #fff; border-radius: 50%; background: #a63138;}
.experience-live-media > span svg{width: 19px;}
.experience-live-body{padding: 19px;}
.experience-live-body h3{margin: 0 0 7px; font-family: var(--serif); font-size: 28px; line-height: 1.07;}
.experience-live-body > p{margin: 0; color: #d2cec8; font-size: 13px;}
.experience-live-body > p strong{color: #fff;}
.experience-live-body > span{display: block; margin-top: 8px; color: #aaa7a1; font-size: 13px;}
.experience-live-price{margin-top: 16px; color: #fff; font-size: 26px; font-weight: 850;}
.experience-live-facts{display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; margin-top: 17px; overflow: hidden; border: 1px solid #383c3e; border-radius: 7px; background: #383c3e;}
.experience-live-facts > span{min-width: 0; padding: 10px; background: #1c1f21;}
.experience-live-facts small,.experience-live-facts strong{display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.experience-live-facts small{color: #999690; font-size: 10px;}
.experience-live-facts strong{margin-top: 3px; color: #f2eee8; font-size: 13px;}
.experience-live-body > button{width: 100%; min-height: 47px; margin-top: 18px; color: #fff; border: 0; border-radius: 7px; background: #b2363d; font-size: 14px; font-weight: 900;}
.experience-live-checklist{margin: 0 14px 14px; padding: 15px; border: 1px solid #34383b; border-radius: 8px; background: #151719;}
.experience-live-checklist > div{display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 11px;}
.experience-live-checklist > div strong{font-size: 14px;}
.experience-live-checklist > div span{color: #d5a45b; font-size: 12px; font-weight: 850;}
.experience-live-checklist p{display: flex; align-items: center; gap: 7px; margin: 7px 0 0; color: #bcb8b2; font-size: 12px;}
.experience-live-checklist p svg{width: 15px; color: #78c38a;}
.experience-live-checklist p.warning svg{color: #d2a155;}
.experience-live-preview > a{min-height: 48px; display: flex; align-items: center; justify-content: center; gap: 7px; color: #e3dfd9; border-top: 1px solid #303437; font-size: 13px; font-weight: 850;}
.experience-live-preview > a svg{width: 16px;}
.experience-live-preview.is-mobile{max-width: 390px; margin-inline: auto;}
.experience-editor-b .editor-submit-bar,
.experience-editor-b .experience-editor-actions{position: static; z-index: auto; right: auto; bottom: auto; left: auto; min-height: 68px; display: flex; align-items: center; justify-content: flex-end; gap: 10px; margin-top: 18px; padding: 10px 14px; border: 1px solid #3a3e40; border-radius: 9px; background: #101214; box-shadow: none; backdrop-filter: none;}
.experience-editor-b .experience-editor-actions .btn{min-height: 47px; font-size: 14px;}
@media (max-width:1180px){.single-b-booking-console{grid-template-columns: 170px minmax(250px,1.2fr) minmax(200px,.8fr) 140px;}
.single-b-booking-action{grid-column: 1/-1; display: grid; grid-template-columns: 130px 130px minmax(180px,1fr) 190px; align-items: center; gap: 12px; border-top: 1px solid #303437; border-left: 0;}
.single-b-booking-action .btn{margin-top: 0;}
.experience-editor-b-workspace{grid-template-columns: minmax(0,1fr) 340px;}}
@media (max-width:960px){.single-b-hero{grid-template-columns: 1fr;}
.single-b-summary{border-top: 1px solid #292d30; border-left: 0;}
.single-b-booking-console{grid-template-columns: repeat(2,minmax(0,1fr));}
.single-b-booking-intro{grid-column: 1/-1;}
.single-b-booking-step{border-top: 1px solid #303437;}
.single-b-booking-action{grid-template-columns: 1fr 1fr;}
.single-b-description-grid,.single-b-lower-grid{grid-template-columns: 1fr; gap: 0;}
.single-b-related-track{grid-template-columns: repeat(2,minmax(0,1fr));}
.experience-editor-b-workspace{grid-template-columns: 1fr;}
.experience-editor-live{position: static;}}
@media (max-width:680px){.single-design-b{padding-top: 8px; padding-bottom: 112px;}
.single-design-b .shell{width: min(100% - 20px,1320px);}
.single-b-hero{border-radius: 10px;}
.single-b-gallery{padding: 6px;}
.single-b-gallery .detail-hero{height: 274px;}
.single-b-gallery .single-gallery-track .single-gallery-open{flex-basis: 78px; width: 78px; height: 54px;}
.single-b-summary{padding: 25px 20px 21px;}
.single-b-favorite{top: 16px; right: 16px; width: 44px; height: 44px;}
.single-b-summary h1{margin-top: 17px; padding-right: 12px; font-size: 35px;}
.single-b-type,.single-b-teaser{font-size: 15px;}
.single-b-price strong{font-size: 29px;}
.single-b-keyfacts{grid-template-columns: repeat(2,minmax(0,1fr));}
.single-b-keyfacts span{font-size: 12px;}
.single-b-keyfacts strong{font-size: 14px;}
.single-b-alert{margin-top: 20px;}
.single-b-booking-console{grid-template-columns: 1fr; margin-top: 12px;}
.single-b-booking-intro,.single-b-booking-step,.single-b-booking-action{grid-column: 1; padding: 18px;}
.single-b-booking-step{border-top: 1px solid #303437; border-left: 0;}
.single-b-booking-action{display: flex; align-items: stretch;}
.single-b-booking-console .session-calendar-grid button{flex-basis: 54px; min-height: 52px;}
.single-b-content{padding-top: 20px;}
.single-b-content-nav{gap: 24px;}
.single-b-content-nav button{min-height: 52px; font-size: 14px;}
.single-b-content .single-content-section{padding: 31px 0;}
.single-b-content .single-content-section h2{font-size: 28px;}
.single-b-description-grid .single-description{font-size: 16px; line-height: 1.7;}
.single-b-lower-grid .single-map-preview{height: 220px;}
.single-b-related-track{display: flex; overflow-x: auto; padding-bottom: 8px;}
.single-b-related-track > a{flex: 0 0 78vw;}
.single-b-fixed-booking{right: 8px; bottom: 8px; left: 8px; width: auto; min-height: 64px; padding: 8px 8px 8px 13px;}
.single-b-fixed-booking strong{max-width: 48vw; font-size: 13px;}
.single-b-fixed-booking .btn{min-width: 126px; min-height: 48px; padding-inline: 13px;}
.experience-editor-b .experience-editor-head{padding: 18px;}
.experience-editor-b .experience-editor-head h3{font-size: 25px;}
.experience-editor-progress{display: flex; overflow-x: auto;}
.experience-editor-progress{scrollbar-width: none;}
.experience-editor-progress::-webkit-scrollbar{display: none;}
.experience-editor-progress button{flex: 0 0 126px;}
.experience-editor-b-workspace{display: block;}
.experience-editor-b-form > details > summary{min-height: 58px; padding: 0 17px; font-size: 16px;}
.experience-editor-b-form > details > .form-grid{padding: 16px;}
.experience-editor-b input,.experience-editor-b select{min-height: 52px; font-size: 16px;}
.editor-b-special-panel{min-height: 0; align-items: stretch; flex-direction: column; padding: 24px 18px;}
.editor-b-special-panel h3{font-size: 27px;}
.experience-editor-live{margin-top: 14px;}
.experience-editor-live-media{height: 190px;}
.experience-editor-b .editor-submit-bar,
  .experience-editor-b .experience-editor-actions{position: static; right: auto; bottom: auto; left: auto; z-index: auto;}}
:root{--bg: #050606;
  --surface: #121416;
  --surface-2: #181b1e;
  --surface-3: #22272b;
  --warning: #d8a44f;}
body{background: #050606;}
body:has(#view-home.active) .global-search{display: none;}
#view-home.active{display: flex; flex-direction: column; background: #050606;}
#view-home > .hero{order: 1;}
#view-home > #lastMinute{order: 2;}
#view-home > .mobile-discovery{order: 3;}
#view-home > .sponsored-section{order: 4;}
#view-home > #nearbySection{order: 5;}
#view-home > .recommendation-sections{order: 6;}
#view-home > .home-agenda{order: 7;}
#view-home > .trust-section{order: 8;}
#view-home > .home-editorial-links{order: 9;}
#view-home > .section-tight:last-child{order: 10;}
body:has(#view-home.active) .topbar-inner{height: 70px;}
body:has(#view-home.active) .brand{min-width: 200px;}
body:has(#view-home.active) .brand-main{font-size: 20px; letter-spacing: .045em;}
body:has(#view-home.active) .brand-sub{display: none;}
body:has(#view-home.active) .desktop-nav{margin-right: auto; gap: 2px;}
body:has(#view-home.active) .nav-btn{min-height: 44px; padding: 10px 12px; color: #c7c5c0; font-size: 13px;}
body:has(#view-home.active) .urgent-nav{color: #fff;}
body:has(#view-home.active) .urgent-nav::before{content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--red-bright); box-shadow: 0 0 0 5px rgba(224,100,105,.12);}
body:has(#view-home.active) .urgent-nav > svg{display: none;}
body:has(#view-home.active) .city-pill{height: 42px; border-color: transparent;}
body:has(#view-home.active) .business-entry{border-radius: 8px;}
body:has(#view-home.active) .account-entry{border-radius: 8px;}
#view-home .hero{min-height: 515px; align-items: stretch; border-bottom: 0;}
#view-home .hero-media{background-image: linear-gradient(90deg,rgba(3,4,5,.95) 0%,rgba(3,4,5,.67) 44%,rgba(3,4,5,.17) 78%),linear-gradient(0deg,#050606 0%,transparent 32%),url("https://images.unsplash.com/photo-1703419776762-56bf2020639d?auto=format&fit=crop&q=88&w=2000"); background-position: center 42%; filter: saturate(.86) contrast(1.06);}
#view-home .hero-media::after{background: radial-gradient(circle at 76% 40%,transparent 0 12%,rgba(0,0,0,.11) 42%,rgba(0,0,0,.38));}
#view-home .hero-content{display: flex; flex-direction: column; justify-content: flex-start; padding: 72px 0 28px;}
#view-home .hero-kicker{margin: 0 0 13px; color: var(--gold); font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;}
#view-home .hero h1{max-width: 690px; margin: 0; font-size: clamp(43px,4vw,58px); line-height: 1.08; letter-spacing: -.02em; text-shadow: 0 4px 28px rgba(0,0,0,.72);}
#view-home .hero-lead{max-width: 590px; margin: 15px 0 0; color: #dfdcd7; font-size: 17px; line-height: 1.55;}
#view-home .search-panel{width: min(1180px,100%); grid-template-columns: minmax(330px,2fr) minmax(180px,1fr) minmax(155px,.82fr) 120px; margin-top: auto; border-color: #3a3e40; border-radius: 12px; background: rgba(14,16,17,.95); box-shadow: 0 20px 55px rgba(0,0,0,.44);}
#view-home .search-category-field{display: none;}
#view-home .search-field{min-height: 76px; padding: 13px 20px;}
#view-home .search-field > span{margin-bottom: 8px; color: #bbb9b4; font-size: 12px;}
#view-home .search-field select,
#view-home .search-field input{color: #fff; font-size: 15px;}
#view-home .search-go{min-height: 58px; margin: 9px; border-radius: 8px; font-size: 14px;}
#view-home .geo-hint{display: flex; align-items: center; gap: 18px; min-height: 40px; margin-top: 3px;}
#view-home .geo-hint button{min-height: 38px; color: #d2cfca; font-size: 13px;}
#view-home .geo-hint span{color: #a9a7a2; font-size: 12px;}
#view-home #lastMinute{padding: 50px 0 42px; background: #050606;}
#view-home #lastMinute .section-head{align-items: flex-end; margin-bottom: 22px;}
#view-home #lastMinute .section-title{font-size: clamp(34px,3vw,46px);}
#view-home #lastMinute .section-copy{margin-top: 7px; font-size: 15px; line-height: 1.5;}
#view-home .last-minute-live{display: flex; align-items: center; gap: 10px; margin-bottom: 8px;}
#view-home .last-minute-live > span{width: 8px; height: 8px; border-radius: 50%; background: var(--red-bright); box-shadow: 0 0 0 5px rgba(224,100,105,.12);}
#view-home #lastMinute .demo-chip{margin-top: 10px; padding: 5px 8px; font-size: 10px; letter-spacing: .05em;}
#view-home #lastMinute .offer-grid{display: flex; gap: 16px; overflow-x: auto; padding: 1px 1px 8px; scroll-snap-type: x mandatory; scrollbar-width: none;}
#view-home #lastMinute .offer-grid::-webkit-scrollbar{display: none;}
#view-home #lastMinute .offer-card,
#view-home #lastMinute .offer-card.featured{flex: 0 0 calc((100% - 32px)/3); min-width: 335px; display: block; min-height: 0; border-radius: 10px; scroll-snap-align: start; background: #121416;}
#view-home #lastMinute .offer-image{height: 188px;}
#view-home #lastMinute .discount{min-width: 74px; padding: 9px 11px; color: #17120a; border-radius: 6px; background: var(--warning); box-shadow: none; font-size: 21px;}
#view-home #lastMinute .discount small{color: #332511; font-size: 9px;}
#view-home #lastMinute .like-btn{width: 42px; height: 42px; background: rgba(8,9,10,.82);}
#view-home #lastMinute .like-label{display: none;}
#view-home #lastMinute .offer-body{position: relative; min-height: 227px; padding: 17px 18px 18px;}
#view-home #lastMinute .offer-type{color: #b7b4ae; font-size: 11px; letter-spacing: .08em;}
#view-home #lastMinute .offer-card h3{margin: 7px 0 11px; font-size: 24px; line-height: 1.12;}
#view-home #lastMinute .offer-location,
#view-home #lastMinute .offer-capacity{color: #d2cfca; font-size: 14px;}
#view-home #lastMinute .offer-location{margin-bottom: 8px;}
#view-home #lastMinute .offer-capacity{margin-top: 0;}
#view-home #lastMinute .offer-actions{position: absolute; z-index: 2; right: 18px; bottom: 18px; width: 108px; display: block; margin: 0;}
#view-home #lastMinute .alert-offer-btn{display: none !important;}
#view-home #lastMinute .quick-buy-btn{min-height: 46px; border-radius: 7px; font-size: 14px;}
#view-home #lastMinute .offer-bottom{min-height: 67px; margin-top: 14px !important; padding: 12px 122px 0 0; border-top: 1px solid #2d3032;}
#view-home #lastMinute .countdown-label{color: #aaa7a1; font-size: 11px; letter-spacing: .03em; text-transform: none;}
#view-home #lastMinute .countdown{color: #fff; font-size: 17px;}
#view-home #lastMinute .old-price{font-size: 11px;}
#view-home #lastMinute .price strong{font-family: var(--sans); font-size: 28px; font-weight: 800;}
#view-home #lastMinute .price small{color: #aaa7a1; font-size: 10px;}
#view-home .home-alert-cta{min-height: 65px; display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 14px; padding: 12px 16px; border-left: 3px solid var(--red); background: #0e1011;}
#view-home .home-alert-cta > div{display: flex; align-items: center; gap: 12px; color: #d9d6d1; font-size: 14px;}
#view-home .home-alert-cta > div > svg{width: 20px; color: var(--gold);}
#view-home .home-alert-cta button{min-height: 44px; padding: 0 18px; color: #fff; border: 0; border-radius: 7px; background: var(--red); font-weight: 800;}
#view-home .mobile-discovery{display: block; padding: 50px 0 45px; background: #050606;}
#view-home .mobile-discovery-head{display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 20px;}
#view-home .mobile-discovery-head > div{display: grid; gap: 6px;}
#view-home .mobile-discovery-head strong{font-family: var(--serif); font-size: clamp(30px,3vw,42px); font-weight: 600;}
#view-home .mobile-discovery-head span{color: var(--muted); font-size: 14px;}
#view-home .mobile-discovery-head button{min-height: 44px; color: #ddd9d2; border: 0; background: transparent; font-size: 13px; font-weight: 800;}
#view-home .mobile-category-strip{display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 10px; overflow: visible;}
#view-home .mobile-category{min-width: 0; min-height: 125px; display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 17px; color: #f1efeb; border: 1px solid #292d2f; border-radius: 9px; background: #111315; font-size: 15px; font-weight: 800; scroll-snap-align: none;}
#view-home .mobile-category > svg{width: 38px; height: 38px; padding: 9px; color: var(--red-bright); border-radius: 50%; background: rgba(182,55,60,.13);}
#view-home .mobile-category:hover{border-color: #484d50; background: #171a1c;}
#view-home .sponsored-section{padding: 38px 0 48px; background: #090a0b;}
#view-home .sponsored-section .section-title{font-size: clamp(31px,3vw,43px);}
#view-home .sponsored-grid{display: flex; gap: 14px; overflow-x: auto; padding: 1px 1px 10px; scroll-snap-type: x mandatory; scrollbar-width: none;}
#view-home .sponsored-grid::-webkit-scrollbar{display: none;}
#view-home .sponsored-card{flex: 0 0 calc((100% - 42px)/4); min-width: 260px; min-height: 300px; border-radius: 10px; scroll-snap-align: start;}
#view-home .sponsored-content{padding: 18px;}
#view-home .sponsored-content h3{font-size: 24px;}
#view-home .sponsored-content p{display: none;}
#view-home .sponsored-meta{margin-top: 12px; padding-top: 12px; font-size: 12px;}
#view-home .business-card-action{display: block; margin-top: 10px; color: #fff; font-size: 13px; font-weight: 800;}
#view-home #nearbySection{padding: 58px 0; background: #050606;}
#view-home #nearbySection .section-title{font-size: clamp(34px,3vw,46px);}
#view-home .nearby-list{display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 17px;}
#view-home .nearby-item{position: relative; min-height: 315px; display: block; padding: 0 0 16px; overflow: hidden; border: 0; border-radius: 9px; background: transparent; box-shadow: none;}
#view-home .nearby-item img{width: 100%; height: 218px; margin: 0 0 14px; border-radius: 9px; object-fit: cover;}
#view-home .nearby-item > div{padding: 0;}
#view-home .nearby-item h4{margin: 0 0 6px; font-family: var(--serif); font-size: 19px; line-height: 1.15;}
#view-home .nearby-item p{margin: 0; color: #b7b4ae; font-size: 13px;}
#view-home .nearby-item .distance-pill{position: absolute; top: 176px; left: 10px; padding: 6px 8px; color: #fff; border-radius: 5px; background: rgba(8,9,10,.86); font-size: 12px;}
#view-home .nearby-pagination{margin-top: 14px;}
#view-home .recommendation-sections{padding: 48px 0 56px; background: #090a0b;}
#view-home .recommendation-group{margin-bottom: 48px;}
#view-home .recommendation-head h2{font-family: var(--serif); font-size: 31px; font-weight: 600;}
#view-home .recommendation-card{border-radius: 9px; background: #111315;}
#view-home .recommendation-card img{height: 190px;}
#view-home .recommendation-card > div{padding: 15px;}
#view-home .recommendation-card h3{font-size: 19px;}
#view-home .recommendation-card p,
#view-home .recommendation-bottom{font-size: 13px;}
#view-home .home-agenda{padding: 58px 0; background: #050606;}
#view-home .home-agenda .section-title{font-size: clamp(34px,3vw,46px);}
#view-home .home-agenda-grid{grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 28px;}
#view-home .home-agenda-card{min-height: 140px; grid-template-columns: 150px minmax(0,1fr); border: 0; border-top: 1px solid #292c2e; border-radius: 0; background: transparent;}
#view-home .home-agenda-media{min-height: 140px; border-radius: 7px;}
#view-home .home-agenda-media > span{display: none;}
#view-home .home-agenda-content{padding: 14px 0 14px 16px;}
#view-home .home-date-range > span{width: 50px; min-height: 54px; border-radius: 7px;}
#view-home .home-date-range small{font-size: 9px;}
#view-home .home-date-range strong{font-size: 23px;}
#view-home .home-agenda-duration{font-size: 10px;}
#view-home .home-agenda-content h3{margin: 10px 0 5px; font-size: 20px;}
#view-home .home-agenda-footer{padding-top: 9px;}
#view-home .trust-section{padding: 26px 0; background: #090a0b;}
#view-home .trust-panel{border-radius: 10px;}
#view-home .home-editorial-links{position: relative; overflow: hidden; padding: 58px 0; background-image: linear-gradient(90deg,rgba(8,9,10,.97),rgba(8,9,10,.72)),url("https://images.unsplash.com/photo-1509248961158-e54f6934749c?auto=format&fit=crop&q=82&w=1600"); background-position: center; background-size: cover;}
#view-home .home-editorial-links .section-title{max-width: 700px; font-size: clamp(34px,3.4vw,48px);}
#view-home .editorial-link-grid{max-width: 900px; margin-top: 24px;}
#view-home .editorial-link-grid a,
#view-home .editorial-link-grid button{min-height: 48px; color: #f0ede8; font-size: 14px;}
#view-home .business-cta{border-radius: 0; border-color: rgba(182,55,60,.42); background: linear-gradient(100deg,#171315,#111315);}
#view-home .business-cta h3{font-size: 31px;}
#view-home .business-cta p{font-size: 14px;}
@media (max-width:1100px){body:has(#view-home.active) .desktop-nav{display: none;}
#view-home .mobile-category-strip{grid-template-columns: repeat(3,minmax(0,1fr));}
#view-home #lastMinute .offer-card,
  #view-home #lastMinute .offer-card.featured{flex-basis: calc((100% - 16px)/2);}
#view-home .sponsored-card{flex-basis: calc((100% - 28px)/3);}
#view-home .nearby-list{grid-template-columns: repeat(3,minmax(0,1fr));}}
@media (max-width:720px){html, body{max-width: 100%; overflow-x: clip;}
body:has(#view-home.active) .topbar-inner{height: 62px;}
body:has(#view-home.active) .top-actions{display: none;}
#view-home .hero{min-height: 550px;}
#view-home .hero-media{background-image: linear-gradient(0deg,#050606 0%,rgba(4,6,7,.5) 56%,rgba(4,4,4,.24) 100%),url("https://images.unsplash.com/photo-1703419776762-56bf2020639d?auto=format&fit=crop&q=84&w=1000"); background-position: 62% center;}
#view-home .hero-content{padding: 40px 0 18px;}
#view-home .hero-kicker{margin-bottom: 9px; font-size: 10px;}
#view-home .hero h1{max-width: 360px; font-size: 34px; line-height: 1.08;}
#view-home .hero-lead{display: block !important; max-width: 330px; margin-top: 10px; font-size: 14px; line-height: 1.45;}
#view-home .search-panel{grid-template-columns: 1fr; gap: 0; margin-top: auto; padding: 9px; overflow: visible; border-radius: 11px;}
#view-home .search-field{min-height: 58px; padding: 9px 11px; border-right: 0; border-bottom: 1px solid #303335;}
#view-home .search-field > span{margin-bottom: 4px; font-size: 12px;}
#view-home .search-field select,
  #view-home .search-field input{min-height: 28px; font-size: 15px;}
#view-home .search-people-field{display: none;}
#view-home .search-go{min-height: 50px; margin: 8px 0 0;}
#view-home .geo-hint{min-height: 38px; overflow: hidden; white-space: nowrap;}
#view-home .geo-hint span{display: none;}
#view-home #lastMinute{padding: 37px 0 30px;}
#view-home #lastMinute .section-head{margin-bottom: 16px;}
#view-home #lastMinute .section-copy{display: block; font-size: 14px;}
#view-home #lastMinute .demo-chip{display: inline-flex;}
#view-home #lastMinute .offer-card,
  #view-home #lastMinute .offer-card.featured{flex: 0 0 min(84vw,320px); min-width: 285px;}
#view-home #lastMinute .offer-image{height: 170px;}
#view-home #lastMinute .offer-body{min-height: 222px; padding: 16px;}
#view-home #lastMinute .offer-card h3{font-size: 22px;}
#view-home #lastMinute .offer-actions{right: 16px; bottom: 16px; width: 104px;}
#view-home #lastMinute .offer-bottom{padding-right: 112px;}
#view-home .home-alert-cta{align-items: stretch; flex-direction: column;}
#view-home .home-alert-cta button{width: 100%;}
#view-home .mobile-discovery{padding: 38px 0 32px;}
#view-home .mobile-discovery-head{align-items: center;}
#view-home .mobile-discovery-head strong{font-size: 27px;}
#view-home .mobile-discovery-head span{font-size: 13px;}
#view-home .mobile-category-strip{display: flex; gap: 9px; overflow-x: auto; padding: 1px 5px 10px 0; scroll-snap-type: x mandatory;}
#view-home .mobile-category{flex: 0 0 124px; min-height: 104px; padding: 13px; scroll-snap-align: start;}
#view-home .mobile-category > svg{width: 34px; height: 34px;}
#view-home .sponsored-section{padding: 32px 0 38px;}
#view-home .sponsored-card{flex: 0 0 min(74vw,280px); min-height: 285px;}
#view-home #nearbySection{padding: 42px 0;}
#view-home .nearby-list{grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px 11px;}
#view-home .nearby-item{min-width: 0; min-height: 242px;}
#view-home .nearby-item img{height: 150px;}
#view-home .nearby-item .distance-pill{top: 112px;}
#view-home .nearby-item h4{font-size: 16px;}
#view-home .nearby-item p{font-size: 12px;}
#view-home .recommendation-sections{padding: 38px 0 45px;}
#view-home .recommendation-group{margin-bottom: 38px;}
#view-home .recommendation-head h2{font-size: 26px;}
#view-home .home-agenda{padding: 42px 0;}
#view-home .home-agenda-grid{width: 100%; display: flex; gap: 12px; overflow-x: auto; padding-right: 12px; scroll-snap-type: x mandatory;}
#view-home .home-agenda-card{flex: 0 0 min(86vw,330px); min-height: 360px; display: flex; flex-direction: column; border: 1px solid #292d2f; border-radius: 10px; background: #111315; scroll-snap-align: start;}
#view-home .home-agenda-media{flex: 0 0 165px; min-height: 165px; border-radius: 10px 10px 0 0;}
#view-home .home-agenda-content{padding: 16px;}
#view-home .home-editorial-links{padding: 42px 0;}
#view-home .editorial-link-grid{grid-template-columns: 1fr;}
#view-home .trust-section{padding: 20px 0;}}
.detail-listing-state[data-state="commercial"]{color: #d8f3e2; border-color: rgba(88,170,121,.45); background: rgba(88,170,121,.12);}
.detail-listing-state[data-state="managed"]{color: #f2d59e; border-color: rgba(211,166,94,.45); background: rgba(211,166,94,.11);}
.detail-listing-state[data-state="informative"]{color: #d7dce0; border-color: rgba(183,194,201,.32); background: rgba(183,194,201,.08);}
.detail-information-console{display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 20px 28px;
  align-items: center;
  margin-top: 32px;
  padding: 24px 26px;
  border: 1px solid #32373a;
  border-radius: 16px;
  background: #121416;
  box-shadow: 0 18px 50px rgba(0,0,0,.2);}
.detail-information-console[hidden]{display: none !important;}
.detail-information-copy{min-width: 0;}
.detail-information-kicker{display: block; margin-bottom: 7px; color: #d3a65e; font-size: 12px; font-weight: 850; letter-spacing: .09em; text-transform: uppercase;}
.detail-information-copy h2{margin: 0; font-family: var(--serif); font-size: clamp(25px,2.3vw,34px); line-height: 1.08;}
.detail-information-copy p{max-width: 760px; margin: 9px 0 0; color: #c4c7c8; font-size: 15px; line-height: 1.55;}
.detail-information-actions{display: flex; align-items: center; gap: 10px;}
.detail-information-actions .btn{min-height: 48px; white-space: nowrap; font-size: 14px;}
.detail-manage-listing{grid-column: 1 / -1; display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 12px 14px; color: #d8dadb; border-top: 1px solid #303437; text-decoration: none;}
.detail-manage-listing[hidden]{display: none !important;}
.detail-manage-listing > i:first-child{flex: 0 0 auto; width: 20px; color: #d3a65e;}
.detail-manage-listing > i:last-child{width: 18px; margin-left: auto;}
.detail-manage-listing span{font-size: 14px; line-height: 1.4;}
.detail-manage-listing strong{color: #fff;}
.detail-template-event .experience-keyfacts{grid-template-columns: repeat(6,minmax(0,1fr));}
.detail-template-event #detailDurationFact{grid-column: span 2;}
.detail-template-event .experience-keyfact strong{overflow-wrap: anywhere;}
.detail-template-route .experience-keyfact.fear strong,
.detail-template-venue .experience-keyfact.fear strong{color: #f0d8a7;}
.detail-listing-informative #officialWebsitePanel,
.detail-listing-managed #officialWebsitePanel{border-color: rgba(211,166,94,.28);}
@media (max-width:980px){.detail-information-console{grid-template-columns: 1fr;}
.detail-information-actions{justify-content: flex-start;}
.detail-template-event .experience-keyfacts{grid-template-columns: repeat(3,minmax(0,1fr));}}
@media (max-width:720px){.detail-information-console{width: calc(100% - 28px); gap: 17px; margin-top: 20px; padding: 19px 17px;}
.detail-information-copy p{font-size: 14px;}
.detail-information-actions{display: grid; grid-template-columns: 1fr;}
.detail-information-actions .btn{width: 100%;}
.detail-manage-listing{align-items: flex-start; padding-inline: 2px;}
.detail-manage-listing span{font-size: 13px;}
.detail-template-event .experience-keyfacts{grid-template-columns: repeat(2,minmax(0,1fr));}
.detail-template-event #detailDurationFact{grid-column: 1 / -1;}}
.adaptive-public-profile[hidden]{display: none !important;}
.adaptive-public-profile{--adaptive-line:#2a2e30; --adaptive-surface:#0c0e0f; --adaptive-surface-2:#131617; color:#f4f2ed; background:#000;}
.adaptive-public-profile *{box-sizing: border-box;}
.adaptive-profile-hero{display:grid; grid-template-columns:minmax(0,1.68fr) minmax(400px,.92fr); min-height:505px; border-bottom:1px solid var(--adaptive-line); background:#050606;}
.adaptive-profile-gallery{position:relative; min-width:0; min-height:0; display:flex; flex-direction:column; overflow:hidden; background:#090a0a;}
.adaptive-main-image{position:relative; inset:auto; width:100%; height:clamp(300px,38vw,455px); flex:0 0 auto; overflow:hidden; padding:0; border:0; background:#090a0a; cursor:zoom-in;}
.adaptive-main-image{display:grid; place-items:center;}
.adaptive-main-image img{position:absolute; inset:0; width:100%; max-width:100%; height:100%; display:block; object-fit:contain; object-position:center; background:#000;}
.adaptive-main-image:after{content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(0deg,rgba(0,0,0,.42),transparent 30%);}
.adaptive-gallery-arrow{position:absolute; z-index:4; top:38%; width:48px; height:58px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.24); border-radius:8px; background:rgba(0,0,0,.64); color:#fff; cursor:pointer;}
.adaptive-gallery-arrow:hover{background:#b91f27; border-color:#da353d;}
.adaptive-gallery-arrow svg{width:30px; height:30px;}
.adaptive-gallery-prev{left:20px;}
.adaptive-gallery-next{right:20px;}
.adaptive-photo-count{position:absolute; z-index:4; right:20px; bottom:105px; display:inline-flex; align-items:center; gap:7px; padding:8px 11px; border-radius:6px; background:rgba(0,0,0,.78); color:#fff; font-size:13px;}
.adaptive-photo-count svg{width:17px;}
.adaptive-thumbnails{position:relative; inset:auto; width:100%; height:92px; flex:0 0 92px; display:flex; align-items:center; gap:9px; overflow-x:auto; padding:9px 50px; border-top:1px solid #252829; background:#020303; scrollbar-width:thin;}
.adaptive-thumbnails::-webkit-scrollbar{display:none;}
.adaptive-thumbnail{width:128px; height:72px; min-width:128px; flex:0 0 128px; padding:3px; overflow:hidden; border:1px solid #292c2e; border-radius:5px; background:#0a0b0c; cursor:pointer;}
.adaptive-thumbnail.active{border:2px solid #f1efea;}
.adaptive-thumbnail img{width:100%; height:100%; display:block; object-fit:contain; object-position:center; background:#000;}
.adaptive-profile-summary{position:relative; min-width:0; padding:24px 27px 18px; border-left:1px solid #333; background:#101112;}
.adaptive-favorite{position:absolute; top:25px; right:27px; width:50px; height:50px; display:grid; place-items:center; border:1px solid #d7d7d5; border-radius:50%; background:transparent; color:#fff; cursor:pointer;}
.adaptive-favorite.active{border-color:#e5363e; background:#b41e25;}
.adaptive-favorite svg{width:25px; height:25px;}
.adaptive-organizer{max-width:calc(100% - 66px); padding:0; border:0; background:transparent; color:#eee; font-size:14px; text-decoration:underline; text-underline-offset:3px; cursor:pointer;}
.adaptive-organizer span{display:inline-flex; align-items:center; gap:4px; margin-left:5px; color:#61d28d; text-decoration:none;}
.adaptive-organizer svg{width:15px; height:15px;}
.adaptive-profile-summary h1{max-width:calc(100% - 55px); margin:16px 0 6px; color:#fff; font-family:"Cinzel",var(--serif); font-size:clamp(34px,2.35vw,42px); font-weight:600; line-height:1.06; letter-spacing:.01em; text-transform:uppercase;}
.adaptive-profile-type{margin:0 0 14px; color:#cfccca; font-size:18px; line-height:1.35;}
.adaptive-rating{display:flex; align-items:center; gap:8px; min-height:26px; margin:12px 0 14px; color:#d6d4d0; font-size:15px;}
.adaptive-rating svg{width:20px; color:#f0c94f; fill:#f0c94f;}
.adaptive-rating strong{font-weight:650;}
.adaptive-listing-state{width:max-content; max-width:100%; min-height:34px; display:inline-flex; align-items:center; gap:7px; margin:2px 0 11px; padding:7px 10px; border:1px solid #45494b; border-radius:999px; background:#151719; color:#d7dbdd; font-size:13px; font-weight:800; line-height:1.15;}
.adaptive-listing-state svg{width:16px; height:16px;}
.adaptive-listing-state.state-commercial{color:#dff8e8; border-color:#2c8654; background:#10271b;}
.adaptive-listing-state.state-managed{color:#f0d7a7; border-color:#71572e; background:#211a0f;}
.adaptive-google-rating{width:max-content; max-width:100%; display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin:2px 0 12px; color:#d8d5cf; font-size:14px; line-height:1.3; text-decoration:none;}
.adaptive-google-rating svg{width:18px; height:18px; color:#f3cd48; fill:#f3cd48;}
.adaptive-google-rating strong{color:#f4f1eb; text-decoration:underline; text-underline-offset:3px;}
.adaptive-google-rating span{color:#c1c0bd;}
.adaptive-google-rating:hover strong,.adaptive-google-rating:focus-visible strong{color:#fff;}
.adaptive-price{display:flex; align-items:baseline; flex-wrap:wrap; gap:9px; margin:7px 0 13px;}
.adaptive-price span{color:#d8d5d1; font-size:16px;}
.adaptive-price strong{color:#fff; font-size:clamp(24px,2vw,34px); line-height:1.1;}
.adaptive-teaser{margin:10px 0 17px; color:#f0eeea; font-size:17px; line-height:1.48;}
.adaptive-facts{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin-top:17px; border:0;}
.adaptive-facts > div{min-width:0; min-height:67px; display:flex; flex-direction:column; justify-content:center; padding:11px 12px; border:1px solid #34383a; border-radius:6px; background:#151719; box-shadow:inset 3px 0 0 #9f252b;}
.adaptive-facts > div + div{border-left:1px solid #34383a;}
.adaptive-facts > div:last-child:nth-child(odd){grid-column:1/-1;}
.adaptive-facts span{display:block; margin:0; color:#aaa7a2; font-size:13px; font-weight:700; letter-spacing:.035em; text-transform:uppercase;}
.adaptive-facts strong{display:block; margin-top:4px; color:#f5f2ee; font-size:17px; font-weight:700; line-height:1.2; overflow-wrap:anywhere;}
.adaptive-profile-state{display:flex; align-items:flex-start; gap:10px; margin-top:18px; padding:12px 13px; border:1px solid #393d3f; border-radius:5px; color:#d1d2d2; background:#111415; font-size:14px; line-height:1.4;}
.adaptive-profile-state svg{flex:0 0 auto; width:19px; color:#d4aa64;}
.adaptive-information-strip{border-bottom:1px solid var(--adaptive-line); background:linear-gradient(90deg,#0b0d0e,#121516 56%,#0b0d0e);}
.adaptive-information-grid{min-height:150px; display:grid; grid-template-columns:1.15fr .72fr .72fr .86fr; align-items:stretch;}
.adaptive-information-intro{padding:27px 28px 23px 4px; border-right:1px solid var(--adaptive-line);}
.adaptive-information-intro > span{color:#ff4b52; font-size:13px; font-weight:850; letter-spacing:.09em;}
.adaptive-information-intro h2{margin:6px 0 5px; font-family:var(--serif); font-size:25px; line-height:1.15;}
.adaptive-information-intro p{margin:0; color:#bdbfbe; font-size:15px; line-height:1.45;}
.adaptive-highlight{min-width:0; display:flex; flex-direction:column; justify-content:center; padding:24px 20px; border-right:1px solid var(--adaptive-line);}
.adaptive-highlight small{margin-bottom:7px; color:#aeb1b1; font-size:13px;}
.adaptive-highlight strong{color:#fff; font-size:17px; line-height:1.35; overflow-wrap:anywhere;}
.adaptive-information-actions{display:grid; align-content:center; gap:9px; padding:21px 4px 21px 22px;}
.adaptive-primary-action,.adaptive-secondary-action{min-height:48px; display:flex; align-items:center; justify-content:center; gap:8px; padding:11px 15px; border-radius:4px; font-size:14px; font-weight:750; text-decoration:none;}
.adaptive-primary-action{border:1px solid #d62a32; background:linear-gradient(90deg,#df2d34,#b81e25); color:#fff;}
.adaptive-secondary-action{border:1px solid #44494b; background:#151819; color:#f0eeea;}
.adaptive-primary-action svg,.adaptive-secondary-action svg{width:18px;}
.adaptive-alert-action{width:100%; min-height:48px; display:flex; align-items:center; justify-content:center; gap:9px; margin-top:18px; padding:11px 16px; border:1px solid #d62a32; border-radius:4px; background:transparent; color:#ff4b52; font-size:15px; font-weight:800; cursor:pointer;}
.adaptive-alert-action:hover,.adaptive-alert-action.active{background:#b91f27; color:#fff;}
.adaptive-alert-action svg{width:19px; height:19px;}
.adaptive-booking-strip{border-bottom:1px solid #2a2e30; background:linear-gradient(90deg,#111415,#171a1b 50%,#0d0f10);}
.adaptive-booking-grid{min-height:154px; display:grid; grid-template-columns:minmax(174px,.74fr) minmax(350px,1.55fr) minmax(265px,1.08fr) minmax(160px,.64fr) minmax(205px,.78fr); align-items:stretch; padding-block:18px;}
.adaptive-booking-grid > *{min-width:0; padding:15px 20px; border-right:1px solid #303436;}
.adaptive-booking-grid > *:last-child{border-right:0;}
.adaptive-booking-intro{display:flex; flex-direction:column; justify-content:center; padding-left:3px;}
.adaptive-booking-intro > span{color:#ff424a; font-size:13px; font-weight:900; letter-spacing:.08em;}
.adaptive-booking-intro h2{margin:6px 0 5px; color:#fff; font-family:var(--serif); font-size:25px; line-height:1.08;}
.adaptive-booking-intro p{margin:0; color:#bfc1c1; font-size:15px; line-height:1.35;}
.adaptive-booking-step{display:flex; flex-direction:column; justify-content:center; gap:12px;}
.adaptive-booking-step > strong{display:flex; align-items:center; gap:8px; color:#f5f2ed; font-size:15px;}
.adaptive-booking-step > strong b{width:27px; height:27px; display:grid; place-items:center; border-radius:50%; background:#bf2930; color:#fff; font-size:13px;}
.adaptive-booking-options{display:flex; gap:8px; min-width:0; overflow-x:auto; padding-bottom:2px; scrollbar-width:thin;}
.adaptive-booking-options button{flex:0 0 auto; min-height:48px; display:flex; align-items:center; justify-content:center; gap:5px; padding:8px 15px; border:1px solid #474c4e; border-radius:4px; background:#171a1b; color:#e8e5e1; font:inherit; font-size:14px; cursor:pointer;}
.adaptive-date-options button{min-width:73px; flex-direction:column; gap:2px; padding-inline:10px; line-height:1.1;}
.adaptive-date-options button span{color:#aaaead; font-size:11px; font-weight:800;}
.adaptive-booking-options button:hover{border-color:#747a7c;}
.adaptive-booking-options button.active{border-color:#e5343c; background:linear-gradient(90deg,#d82b32,#b71d24); color:#fff;}
.adaptive-booking-options button.active span{color:#fff;}
.adaptive-booking-step > small{display:flex; align-items:center; gap:6px; color:#bfc2c1; font-size:12px;}
.adaptive-booking-step > small i{width:8px; height:8px; border-radius:50%; background:#28b96a;}
.adaptive-people-step{align-items:center;}
.adaptive-people-step > strong{align-self:flex-start;}
.adaptive-people-control{display:grid; grid-template-columns:46px 52px 46px; align-items:center; border:1px solid #484d4f; border-radius:4px; overflow:hidden; background:#16191a;}
.adaptive-people-control button{width:46px; height:48px; border:0; background:#171a1b; color:#fff; font-size:25px; cursor:pointer;}
.adaptive-people-control button:hover{background:#292d2f;}
.adaptive-people-control span{display:grid; place-items:center; height:48px; border-inline:1px solid #484d4f; color:#fff; font-size:19px; font-weight:800;}
.adaptive-booking-total{display:flex; flex-direction:column; justify-content:center;}
.adaptive-booking-total > span{color:#c5c7c6; font-size:14px;}
.adaptive-booking-total > strong{margin:3px 0 0; color:#fff; font-size:28px; line-height:1.05;}
.adaptive-booking-total > small{margin:5px 0 10px; color:#c6c8c7; font-size:13px;}
.adaptive-booking-total .adaptive-primary-action{width:100%; border:1px solid #d62a32; cursor:pointer;}
.adaptive-mobile-reserve{display:none;}
.adaptive-booking-grid.shell,.adaptive-information-grid.shell,.adaptive-profile-content.shell{width:100%; max-width:none; margin:0;}
.adaptive-information-grid.shell,.adaptive-profile-content.shell{padding-inline:28px;}
.adaptive-profile-content{padding-top:28px; padding-bottom:60px;}
.adaptive-section-nav{display:flex; gap:36px; overflow-x:auto; padding:0 15px; border-bottom:1px solid #2d3031; scrollbar-width:none;}
.adaptive-section-nav button{flex:0 0 auto; min-height:44px; padding:0 2px 14px; border:0; background:transparent; color:#b8b8b5; font:inherit; font-size:15px; cursor:pointer;}
.adaptive-section-nav button:hover,.adaptive-section-nav button:focus-visible{color:#fff;}
.adaptive-section-nav .active{color:#fff; border-bottom:2px solid #d62a32;}
.adaptive-content-panel,.adaptive-lower-grid > section,.adaptive-reviews-section{scroll-margin-top:92px;}
.adaptive-content-grid{display:grid; grid-template-columns:1.15fr .88fr .72fr; margin-top:12px;}
.adaptive-content-panel{min-width:0; padding:22px 26px; border-right:1px solid #292c2e;}
.adaptive-content-panel:last-child{border-right:0;}
.adaptive-content-panel h2,.adaptive-lower-grid h2,.adaptive-related-section h2{margin:0 0 14px; font-family:var(--serif); font-size:22px; line-height:1.2;}
.adaptive-content-panel p{margin:0 0 12px; color:#d5d3cf; font-size:16px; line-height:1.58;}
.adaptive-practical-list{overflow:hidden; border:1px solid #35393b; border-radius:5px; background:#111314;}
.adaptive-practical-list > div{display:grid; gap:5px; padding:12px 14px; border-bottom:1px solid #35393b;}
.adaptive-practical-list > div:last-child{border-bottom:0;}
.adaptive-practical-list span{color:#b3b5b5; font-size:13px;}
.adaptive-practical-list strong{color:#efece7; font-size:15px; line-height:1.4;}
.adaptive-contact-panel > button{width:100%; display:grid; gap:4px; padding:14px; border:1px solid #34383a; border-radius:5px; background:#111314; color:#fff; text-align:left; cursor:pointer;}
.adaptive-contact-panel > button strong{font-size:16px;}
.adaptive-contact-panel > button span{color:#b2b4b3; font-size:13px;}
.adaptive-contact-panel > p{margin-top:13px; font-size:14px;}
.adaptive-contact-panel > a{display:inline-flex; align-items:center; gap:5px; color:#e1b66e; font-size:14px;}
.adaptive-contact-panel > a svg{width:16px;}
.adaptive-lower-grid{display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:12px; margin-top:14px;}
.adaptive-lower-grid > section{min-width:0; padding:22px 25px; border:1px solid #2a2e30; background:#0b0d0e;}
.adaptive-included-cards{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px;}
.adaptive-included-cards article{min-height:120px; padding:14px; border:1px solid #33383a; border-radius:5px; background:linear-gradient(145deg,#171a1b,#0e1011);}
.adaptive-included-cards span{display:block; margin-bottom:12px; color:#d82c34; font-size:12px; font-weight:800;}
.adaptive-included-cards strong{color:#eeece8; font-size:15px; line-height:1.45;}
.adaptive-location-section{display:grid; grid-template-columns:minmax(250px,52%) minmax(250px,48%); min-height:238px; padding:0 !important; overflow:hidden;}
.adaptive-location-info{min-width:0; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:20px 22px; order:2;}
.adaptive-location-kicker{margin-bottom:5px; color:#d8a85d; font-size:12px; font-weight:850; letter-spacing:.08em; text-transform:uppercase;}
.adaptive-location-info h2{margin-bottom:10px;}
.adaptive-map-card{height:100%; min-height:238px; overflow:hidden; border:0; border-right:1px solid #363a3c; border-radius:0; background:#171a1b; order:1;}
.adaptive-map-card iframe{width:100%; height:100%; display:block; border:0; filter:saturate(.9) contrast(1.02);}
.adaptive-address{display:block; margin:0 0 11px; color:#fff; font-size:15px; line-height:1.4;}
.adaptive-transit{display:grid; gap:7px; margin-bottom:12px;}
.adaptive-transit span{display:flex; align-items:flex-start; gap:7px; color:#c5c7c6; font-size:13px; line-height:1.4;}
.adaptive-transit svg{flex:0 0 auto; width:17px; color:#d8ab64;}
.adaptive-transit-connections{width:100%; display:flex; flex-wrap:wrap; gap:8px; margin:0 0 12px;}
.adaptive-transport-connection{min-height:38px; display:inline-flex; align-items:center; gap:8px; padding:6px 10px; border:1px solid #42474a; border-radius:5px; background:rgba(255,255,255,.035); color:#f4f1ec; font-size:13px;}
.adaptive-transport-connection b{min-width:34px; min-height:28px; display:inline-grid; place-items:center; padding:2px 6px; border-radius:4px; background:#c72931; color:#fff; font-size:12px; font-weight:850;}
.adaptive-transport-connection em{color:#f1eee8; font-style:normal; font-weight:750; line-height:1.25;}
.adaptive-transport-connection svg{width:18px; height:18px;}
.adaptive-transport-metro.line-l1 b{background:#d71920;}
.adaptive-transport-metro.line-l2 b{background:#8d288f;}
.adaptive-transport-metro.line-l3 b{background:#16834b;}
.adaptive-transport-metro.line-l4 b{color:#111; background:#f5c400;}
.adaptive-transport-metro.line-l5 b{background:#2876b9;}
.adaptive-transport-metro.line-l9 b,.adaptive-transport-metro.line-l10 b{background:#e67925;}
.adaptive-transport-bus svg{color:#58aef6;}
.adaptive-transport-parking svg{color:#d8a44f;}
.adaptive-location-info .adaptive-secondary-action{width:100%; margin-top:auto;}
.adaptive-empty-copy{color:#b8bab9; font-size:15px;}
.adaptive-related-section{margin-top:16px; padding:23px 25px; border:1px solid #2a2e30; background:#090b0c;}
.adaptive-related-section > div:first-child > span{color:#d73239; font-size:12px; font-weight:800; letter-spacing:.09em;}
.adaptive-related-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px;}
.adaptive-related-card{position:relative; min-height:125px; display:flex; flex-direction:column; align-items:flex-start; gap:5px; padding:15px 38px 14px 15px; border:1px solid #34383a; border-radius:5px; background:linear-gradient(145deg,#171a1b,#0d0f10); color:#fff; text-align:left; cursor:pointer;}
.adaptive-related-card:hover{border-color:#a6292e;}
.adaptive-related-card strong{font-size:16px;}
.adaptive-related-card span{color:#c8c9c7; font-size:14px; line-height:1.35;}
.adaptive-related-card small{margin-top:auto; color:#d1a765; font-size:12px;}
.adaptive-related-card > svg{position:absolute; top:14px; right:13px; width:18px;}
.adaptive-claim-link{display:flex; align-items:center; gap:12px; min-height:58px; margin-top:16px; padding:13px 16px; border:1px solid #313537; border-radius:5px; background:#0d1011; color:#d5d6d5; text-decoration:none;}
.adaptive-claim-link > svg:first-child{color:#d4a75e;}
.adaptive-claim-link > svg:last-child{margin-left:auto;}
.adaptive-claim-link span{font-size:14px; line-height:1.4;}
.adaptive-claim-link strong{color:#fff;}
.adaptive-reviews-section{display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:16px; padding:22px 25px; border:1px solid #2a2e30; background:#090b0c;}
.adaptive-reviews-section > div:first-child > span{color:#d73239; font-size:12px; font-weight:800; letter-spacing:.09em;}
.adaptive-reviews-section h2{margin:5px 0 0; font-family:var(--serif); font-size:22px;}
.adaptive-review-summary{display:flex; align-items:center; gap:14px;}
.adaptive-review-summary > strong{color:#fff; font-size:31px;}
.adaptive-review-summary > span{display:flex; align-items:center; gap:6px; color:#d4d1cb; font-size:15px;}
.adaptive-review-summary > span svg{width:18px; color:#f2c14d; fill:#f2c14d;}
.adaptive-review-summary > a{display:inline-flex; align-items:center; gap:6px; min-height:44px; padding:10px 13px; border:1px solid #43484a; border-radius:4px; color:#fff; font-size:14px; text-decoration:none;}
.adaptive-review-summary > a svg{width:17px;}
@media (min-width:961px){.adaptive-profile-hero{grid-template-columns:minmax(0,74%) minmax(350px,26%); min-height:0; align-items:stretch;}
.adaptive-profile-gallery{height:auto; display:flex; min-width:0; flex-direction:column; padding-left:0; background:#000;}
.adaptive-main-image{position:relative; inset:auto; width:100%; height:clamp(390px,31vw,455px); flex:0 0 auto; background:#000;}
.adaptive-main-image img{width:100%; max-width:100%; height:100%; object-fit:contain; object-position:center; background:#000;}
.adaptive-thumbnails{position:relative; inset:auto; width:100%; height:84px; flex:0 0 84px; display:flex; gap:10px; align-items:center; padding:8px 54px; overflow-x:auto; background:#020202;}
.adaptive-thumbnail{width:121px; height:68px; flex:0 0 121px; padding:4px;}
.adaptive-thumbnail img{object-fit:contain; background:#000;}
.adaptive-photo-count{right:19px; bottom:101px;}
.adaptive-gallery-arrow{top:calc((clamp(390px,31vw,455px) - 58px)/2);}}
@media (max-width:1100px){.adaptive-profile-summary{padding-inline:26px;}
.adaptive-information-grid{grid-template-columns:1.1fr .72fr .72fr;}
.adaptive-information-actions{grid-column:1/-1; grid-template-columns:repeat(2,minmax(0,1fr)); padding:15px 4px; border-top:1px solid var(--adaptive-line);}
.adaptive-content-grid{grid-template-columns:1.1fr .9fr;}
.adaptive-contact-panel{grid-column:1/-1; border-top:1px solid #292c2e; border-right:0;}
.adaptive-booking-grid{grid-template-columns:minmax(170px,.72fr) minmax(330px,1.35fr) minmax(235px,1fr);}
.adaptive-booking-grid > *:nth-child(3){border-right:0;}
.adaptive-booking-grid > *:nth-child(4),.adaptive-booking-grid > *:nth-child(5){border-top:1px solid #303436;}
.adaptive-booking-grid > *:nth-child(4){grid-column:2;}
.adaptive-booking-grid > *:nth-child(5){grid-column:3;}}
@media (max-width:800px){.adaptive-profile-hero{grid-template-columns:1fr;}
.adaptive-profile-gallery{min-height:0;}
.adaptive-main-image{height:auto; aspect-ratio:16/9;}
.adaptive-profile-summary{padding:26px 22px;}
.adaptive-information-grid{grid-template-columns:1fr 1fr;}
.adaptive-information-intro{grid-column:1/-1; padding:22px 4px; border-right:0; border-bottom:1px solid var(--adaptive-line);}
.adaptive-highlight{min-height:102px;}
.adaptive-lower-grid{grid-template-columns:1fr;}
.adaptive-location-section{grid-template-columns:1fr;}
.adaptive-location-info{order:1;}
.adaptive-map-card{min-height:230px; order:2; border-right:0; border-top:1px solid #363a3c;}
.adaptive-booking-grid{grid-template-columns:1fr 1fr; padding-block:0;}
.adaptive-booking-grid > *{padding:20px; border-right:0; border-bottom:1px solid #303436;}
.adaptive-booking-intro{grid-column:1/-1; padding-left:20px;}
.adaptive-booking-grid > *:nth-child(2){grid-column:1/-1;}
.adaptive-booking-grid > *:nth-child(3),.adaptive-booking-grid > *:nth-child(4){grid-column:auto; border-top:0;}
.adaptive-booking-grid > *:nth-child(5){grid-column:1/-1; border-bottom:0;}
.adaptive-booking-total{display:grid; grid-template-columns:auto 1fr; column-gap:9px; align-items:center;}
.adaptive-booking-total .adaptive-primary-action{grid-column:1/-1; margin-top:8px;}}
@media (max-width:720px){.adaptive-profile-gallery{min-height:0;}
.adaptive-main-image{position:relative; inset:auto; width:100%; height:auto; aspect-ratio:16/9;}
.adaptive-thumbnails{position:relative; inset:auto; width:100%; height:78px; flex:0 0 78px; gap:7px; padding:7px 12px; scrollbar-width:none;}
.adaptive-thumbnail{width:108px; min-width:108px; height:62px; flex-basis:108px;}
.adaptive-photo-count{right:12px; bottom:90px; font-size:12px;}
.adaptive-gallery-arrow{top:calc((100% - 78px - 50px)/2); width:42px; height:50px;}
.adaptive-gallery-prev{left:10px;}
.adaptive-gallery-next{right:10px;}
.adaptive-profile-summary{padding:24px 17px 22px;}
.adaptive-favorite{top:18px; right:16px; width:46px; height:46px;}
.adaptive-profile-summary h1{margin-top:16px; font-size:31px;}
.adaptive-profile-type{font-size:16px;}
.adaptive-teaser{font-size:16px;}
.adaptive-facts{grid-template-columns:repeat(2,minmax(0,1fr));}
.adaptive-facts > div:nth-child(odd),.adaptive-facts > div:nth-child(n+3){border:1px solid #34383a;}
.adaptive-information-strip .shell,.adaptive-profile-content.shell{width:calc(100% - 28px);}
.adaptive-information-grid{grid-template-columns:1fr;}
.adaptive-highlight{min-height:auto; padding:16px 2px; border-right:0; border-bottom:1px solid var(--adaptive-line);}
.adaptive-information-actions{grid-column:auto; grid-template-columns:1fr; padding:17px 0;}
.adaptive-profile-content{padding-top:22px; padding-bottom:106px;}
.adaptive-section-nav{gap:24px; padding-inline:4px;}
.adaptive-section-nav button{font-size:14px;}
.adaptive-content-grid{grid-template-columns:1fr;}
.adaptive-content-panel{padding:21px 3px; border-right:0; border-bottom:1px solid #292c2e;}
.adaptive-content-panel:last-child{border-bottom:0;}
.adaptive-content-panel h2,.adaptive-lower-grid h2,.adaptive-related-section h2{font-size:21px;}
.adaptive-content-panel p{font-size:16px;}
.adaptive-lower-grid > section,.adaptive-related-section{padding:19px 16px;}
.adaptive-included-cards,.adaptive-related-grid{grid-template-columns:1fr;}
.adaptive-included-cards article{min-height:auto;}
.adaptive-map-card{height:220px;}
.adaptive-claim-link{align-items:flex-start;}
.adaptive-booking-grid{width:100%; grid-template-columns:1fr;}
.adaptive-booking-grid > *,.adaptive-booking-intro{grid-column:auto !important; padding:18px 14px;}
.adaptive-booking-step{align-items:stretch;}
.adaptive-people-step{align-items:center;}
.adaptive-people-step > strong{align-self:stretch;}
.adaptive-date-options button{min-width:82px;}
.adaptive-time-options{justify-content:center;}
.adaptive-reviews-section,.adaptive-review-summary{align-items:flex-start; flex-direction:column;}
.adaptive-booking-total{display:grid; grid-template-columns:auto 1fr;}
.adaptive-booking-total .adaptive-primary-action{display:none;}
.adaptive-mobile-reserve{position:fixed; z-index:90; left:0; right:0; bottom:0; min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:15px; padding:10px 16px calc(10px + env(safe-area-inset-bottom)); border-top:1px solid #3d4143; background:rgba(10,12,13,.97); box-shadow:0 -12px 28px rgba(0,0,0,.42);}
.adaptive-mobile-reserve span{display:flex; flex-direction:column; color:#bfc1c0; font-size:12px;}
.adaptive-mobile-reserve strong{color:#fff; font-size:22px;}
.adaptive-mobile-reserve button{min-width:148px; min-height:48px; padding:10px 17px; border:1px solid #e13840; border-radius:4px; background:linear-gradient(90deg,#df2d34,#b81e25); color:#fff; font-size:15px; font-weight:850; cursor:pointer;}}