body.is-listing-inactive { overflow:hidden; }
.detail-visibility-notice { position:fixed; inset:0; z-index:9999; display:flex; align-items:center; justify-content:center; padding:24px; background:rgba(15,23,42,.28); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(3px); }
.detail-visibility-notice__box { width:min(420px,100%); padding:28px 24px; border-radius:24px; background:rgba(15,23,42,.92); box-shadow:0 24px 64px rgba(15,23,42,.30); text-align:center; border:1px solid rgba(255,255,255,.10); }
.detail-visibility-notice__title { font-size:24px; font-weight:800; line-height:1.3; color:#ffffff; margin-bottom:16px; }
.detail-visibility-notice__button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 18px; border-radius:14px; background:#ffffff; color:#0f172a; font-size:14px; font-weight:800; text-decoration:none; }
.detail-visibility-notice__button:hover { background:#f8fafc; }
@media (max-width: 540px) { .detail-visibility-notice__box { padding:22px 18px; border-radius:20px; } }
@media (max-width: 540px) { .detail-visibility-notice__title { font-size:20px; } }
@media (max-width: 540px) { .detail-visibility-notice__button { width:100%; } }
.detail-weather { display:flex; flex-direction:column; gap:16px; margin-bottom:20px; padding:20px; border-radius:24px; background:linear-gradient(135deg,#163b67 0%,#2f6fb2 100%); color:#fff; box-shadow:0 20px 45px rgba(9,30,66,.16); }
.detail-weather__head { display:flex; align-items:center; justify-content:space-between; gap:12px; }

.detail-weather__eyebrow {font-size:16px; font-weight:700; line-height:1.4; }
.detail-weather__title { font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; opacity:.82;  }
.detail-weather__list { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 8px; }
.detail-weather__item { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; min-height:96px; padding:12px 10px; border-radius:18px; background:rgba(255,255,255,.14); backdrop-filter:blur(10px); }
.detail-weather__day { font-size:13px; font-weight:600; line-height:1; opacity:.92; }
.detail-weather__icon { font-size:24px; line-height:1; }
.detail-weather__temp { font-size:18px; font-weight:600; line-height:1; }
.detail-weather__item.is-loading { grid-column:1 / -1; min-height:auto; justify-content:flex-start; align-items:flex-start; }
.detail-page { background:linear-gradient(180deg, #f4f7fb 0%, #ffffff 30%, #f8fafc 100%); min-height:100vh; }
.detail-hero { padding:24px 0 42px; }
.detail-breadcrumb { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin:22px 0 24px; font-size:13px; color:#fff; }
.detail-breadcrumb a { color:#fff; text-decoration:none; }
.detail-breadcrumb strong { color:#fff; font-weight:800; }
.detail-sticky-result { display:none; }
.detail-sticky-result.is-visible { display:block; }
.detail-field--age .detail-field__label { display:flex; align-items:center; gap:5px; flex-wrap:wrap; }
.detail-field__status { font-size:10px; font-weight:800; line-height:1; }
.detail-field__status--free { color:#16a34a; }
.counter--static{justify-content:center;}
.counter--static .counter-value{width:100%;text-align:center;}
.detail-field__status--paid { color:#dc2626; }
.counter{height:44px;padding:0 14px;border:1px solid #a9a9a9;border-radius:6px;display:flex;align-items:center;justify-content:space-between;background:#ffffff;}
.counter-btn{width:24px;height:24px;color:#4285f4;font-size:28px;line-height:1;display:flex;align-items:center;justify-content:center;border:none;background:transparent;}
.counter-btn.disabled{opacity:.35;pointer-events:none;}
.counter-value{font-size:22px;font-weight:500;color:#1a1a1a;min-width:22px;text-align:center;}
.detail-sticky-result .detail-booking__result { margin:0; border-radius:24px; box-shadow:0 22px 50px rgba(15, 23, 42, 0.08); }
.detail-hero__grid { display:grid; grid-template-columns:minmax(0, 1.22fr) minmax(360px, 430px); gap:15px; align-items:stretch; padding-bottom: 30px;}
.detail-gallery { display:flex; flex-direction:column; gap:14px; }
.detail-gallery__stage { position:relative; height:560px; border-radius:30px; overflow:hidden; background:#dbe4ef; box-shadow:0 28px 68px rgba(15, 23, 42, 0.16); }
.detail-gallery__active { width:100%; height:100%; display:block; object-fit:cover; }
.detail-gallery__video { width:100%; height:100%; display:block; object-fit:cover; background:#000000; }
.detail-gallery__placeholder { height:560px; display:flex; align-items:center; justify-content:center; font-size:28px; font-weight:800; color:#475569; background:linear-gradient(135deg, #cbd5e1 0%, #e2e8f0 100%); }
.detail-gallery__favorite { position:absolute; top:18px; right:18px; z-index:4; }
.detail-gallery__overlay { position:absolute; left:0; right:0; bottom:0; padding:34px 28px 24px; background:linear-gradient(180deg, rgba(15, 23, 42, 0) 0%, rgba(15, 23, 42, 0.80) 100%); z-index:3; transition:opacity .2s ease, visibility .2s ease; }
.detail-gallery__overlay-title { font-size:30px; line-height:1.08; font-weight:800; color:#ffffff; margin-bottom:6px; }
.detail-gallery__overlay-text { font-size:15px; color:rgba(255, 255, 255, 0.86); }
.detail-gallery__overlay.is-hidden { opacity:0; visibility:hidden; pointer-events:none; }
.detail-gallery__thumbs { display:grid; grid-template-columns:repeat(7, minmax(0, 1fr)); gap:5px; }
.detail-gallery__thumb { position:relative; padding:0; border:none; background:transparent; border-radius:18px; overflow:hidden; cursor:pointer; opacity:.72; transition:transform .2s ease, opacity .2s ease, box-shadow .2s ease; box-shadow:0 14px 32px rgba(15, 23, 42, 0.12); }
.detail-gallery__thumb.is-active { opacity:1; transform:translateY(-2px); box-shadow:0 20px 44px rgba(15, 23, 42, 0.16); }
.detail-gallery__thumb-image { width:100%; height:92px; display:block; object-fit:cover; }
.detail-gallery__thumb-badge { position:absolute; right:8px; bottom:8px; padding:4px 8px; border-radius:999px; background:rgba(15, 23, 42, 0.82); color:#ffffff; font-size:11px; font-weight:800; }
.detail-summary { display:flex; flex-direction:column; gap:10px; padding:20px; border-radius:28px; background:rgba(255, 255, 255, 0.88); border:1px solid rgba(148, 163, 184, 0.16); backdrop-filter:blur(14px); box-shadow:0 24px 64px rgba(15, 23, 42, 0.10); }
.detail-summary__eyebrow { font-size:13px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#0f766e; }
.detail-summary__title { margin:0; font-size:38px; line-height:1.08; color:#0f172a; font-weight:800; }
.detail-summary__location { font-size:16px; color:#475569; }
.detail-summary__text { margin:0; font-size:15px; line-height:1.85; color:#334155; }
.detail-chip-list { display:flex; flex-wrap:wrap; gap:6px; }
.detail-chip { padding:8px 10px; border-radius:999px; background:#eef2ff; color:#3730a3; font-size:12px; font-weight:800; }
.detail-price-box { padding:22px; border-radius:22px; background:linear-gradient(135deg, #0f172a 0%, #1e293b 100%); color:#ffffff; box-shadow:0 20px 42px rgba(15, 23, 42, 0.22); }
.detail-price-box__label { font-size:13px; color:rgba(255, 255, 255, 0.74); margin-bottom:8px; }
.detail-price-box__value { font-size:34px; line-height:1.1; font-weight:800; margin-bottom:8px; }
.detail-price-box__note { font-size:13px; line-height:1.75; color:rgba(255, 255, 255, 0.72); }
.detail-inline-booking { margin-top:18px; }
.detail-summary__actions { display:flex; flex-wrap:wrap; gap:12px; justify-content: center;}
.detail-button { display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:0 18px; border-radius:16px; text-decoration:none; font-size:14px; font-weight:800; transition:transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease; gap:10px; }
.detail-button:hover { transform:translateY(-1px); }
.detail-button--primary { background:#0f766e; color:#ffffff; box-shadow:0 16px 34px rgba(15, 118, 110, 0.22); }
.detail-button--ghost { background: #003b95; color: #ffffff; box-shadow: 0 16px 34px rgba(0, 59, 149, 0.22); }
.detail-button__icon { width:18px; height:18px; display:inline-flex; align-items:center; justify-content:center; flex:0 0 18px; }
.detail-button__icon svg { width:18px; height:18px; display:block; fill:currentColor; }
.detail-content { padding:8px 0 56px; }
.detail-layout { display:grid; grid-template-columns:minmax(0, 1fr) 310px; gap:10px; align-items:start; }
.detail-main { min-width:0; display:flex; flex-direction:column; gap:22px; }
.detail-side { min-width:0; position:relative; align-self:start; }
.detail-sticky { position:sticky; top:15px; align-self:start; height:fit-content; display:flex; flex-direction:column; gap:10px; }
.detail-panel { padding:18px; border-radius:26px; background:#ffffff; border:1px solid rgba(226, 232, 240, 0.92); box-shadow:0 22px 50px rgba(15, 23, 42, 0.08); }
.detail-panel--full { width:100%; }
html { scroll-behavior:smooth; }
.detail-breadcrumb { will-change:filter, opacity; transform:translateZ(0); backface-visibility:hidden; transition:filter .08s linear, opacity .08s linear; }
.detail-gallery { will-change:filter, opacity; transform:translateZ(0); backface-visibility:hidden; transition:filter .08s linear, opacity .08s linear; }
.detail-summary > * { will-change:filter, opacity; transform:translateZ(0); backface-visibility:hidden; transition:filter .08s linear, opacity .08s linear; }
.detail-inline-booking .detail-booking > * { will-change:filter, opacity; transform:translateZ(0); backface-visibility:hidden; transition:filter .08s linear, opacity .08s linear; }
.detail-main > .detail-panel { will-change:filter, opacity; transform:translateZ(0); backface-visibility:hidden; transition:filter .08s linear, opacity .08s linear; }
.detail-related { will-change:filter, opacity; transform:translateZ(0); backface-visibility:hidden; transition:filter .08s linear, opacity .08s linear; }
.detail-side-card { will-change:filter, opacity; transform:translateZ(0); backface-visibility:hidden; transition:filter .08s linear, opacity .08s linear; }
.detail-inline-booking { position:relative; z-index:20; isolation:isolate; }
.detail-sticky-result { position:relative; z-index:20; isolation:isolate; }
.detail-inline-booking .detail-booking__result { position:relative; z-index:21; filter:none !important; opacity:1 !important; box-shadow:0 22px 50px rgba(15, 23, 42, 0.08); }
.detail-sticky-result .detail-booking__result { position:relative; z-index:21; filter:none !important; opacity:1 !important; box-shadow:0 22px 50px rgba(15, 23, 42, 0.08); }
body.is-price-animating .detail-breadcrumb { filter:blur(2px); opacity:.16; pointer-events:none; }
body.is-price-animating .detail-gallery { filter:blur(2px); opacity:.16; pointer-events:none; }
body.is-price-animating .detail-summary > *:not(.detail-inline-booking) { filter:blur(2px); opacity:.16; pointer-events:none; }
body.is-price-animating .detail-inline-booking .detail-booking > *:not(.detail-booking__result) { filter:blur(2px); opacity:.16; pointer-events:none; }
body.is-price-animating .detail-main > .detail-panel { filter:blur(2px); opacity:.16; pointer-events:none; }
body.is-price-animating .detail-related { filter:blur(2px); opacity:.16; pointer-events:none; }
body.is-price-animating .detail-side-card { filter:blur(2px); opacity:.16; pointer-events:none; }
body.is-price-animating .detail-inline-booking .detail-booking__result { filter:none !important; opacity:1 !important; box-shadow:0 24px 56px rgba(15, 23, 42, 0.24); }
body.is-price-animating .detail-sticky-result .detail-booking__result { filter:none !important; opacity:1 !important; box-shadow:0 24px 56px rgba(15, 23, 42, 0.24); }
.detail-side-actions .detail-button--reservation { background:#003b95; color:#ffffff; box-shadow:0 16px 34px rgba(0, 59, 149, 0.22); }
.detail-side-actions .detail-button--reservation:hover { background:#003b95; color:#ffffff; }
.detail-booking__selected { cursor:pointer; }
.detail-panel__head { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:22px; }
.detail-panel__eyebrow { font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#0f766e; margin-bottom:6px; }
.detail-panel__title { margin:0; font-size:24px; line-height:1.2; color:#0f172a; }
.detail-info-grid { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:10px; }
.detail-info-card { padding:18px; border-radius:18px; background:#f8fafc; border:1px solid #e2e8f0; }
.detail-info-card__label { font-size:12px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:#64748b; margin-bottom:8px; }
.detail-info-card__value { font-size:18px; line-height:1.35; font-weight:800; color:#0f172a; }
.detail-distance-list { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:10px; }
.detail-distance-item { padding:10px; border-radius:18px; background:linear-gradient(135deg, #ffffff 0%, #f8fafc 100%); border:1px solid #e2e8f0; }
.detail-distance-item__title { font-size:13px; font-weight:800; color:#0f172a; margin-bottom:8px; }
.detail-distance-item__value { font-size:15px; line-height:1.6; color:#475569; }
.detail-calendar-intro { margin-bottom:18px; font-size:14px; line-height:1.8; color:#475569; }
.detail-calendar-slider { display:flex; flex-direction:column; gap:10px; }
.detail-calendar-slider__nav { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.detail-calendar-slider__label { flex:1; text-align:center; font-size:16px; font-weight:800; color:#0f172a; }
.detail-calendar-slider__button { width:44px; height:44px; border:none; border-radius:14px; background:#0f172a; color:#ffffff; font-size:22px; font-weight:800; cursor:pointer; }
.detail-calendar-slider__button:disabled { opacity:.35; cursor:not-allowed; }
.detail-calendar-slider__viewport { overflow:hidden; }
.detail-calendar-slider__track { display:block; }
.detail-calendar-slide { display:none; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; }
.detail-calendar-slide.is-active { display:grid; }
.detail-calendar-month { padding:8px; border-radius:22px; background:#f8fafc; border:1px solid #e2e8f0; }
.detail-calendar-month__head { margin-bottom:16px; font-size:18px; font-weight:800; color:#0f172a;     text-align: center;}
.detail-calendar-weekdays { display:grid; grid-template-columns:repeat(7, minmax(0, 1fr)); gap:10px; margin-bottom:10px; }
.detail-calendar-weekday { text-align:center; font-size:12px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:#64748b; }
.detail-calendar-grid { display:grid; grid-template-columns:repeat(7, minmax(0, 1fr)); gap:5px; }
.detail-calendar-day { min-height:70px; display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; padding:5px; border:none; border-radius:16px; background:#ffffff; border:1px solid #e2e8f0; text-align:left; cursor:pointer; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.detail-calendar-day:not(.is-empty):not(.is-blocked):not(.is-past):not(:disabled):hover { transform:translateY(-1px); box-shadow:0 14px 28px rgba(15, 23, 42, 0.08); }
.detail-calendar-day.is-empty { background:transparent; border:none; min-height:70px; }
.detail-calendar-day.is-blocked { cursor:not-allowed; box-shadow:none; }
.detail-calendar-day.is-past { background:#f1f5f9; color:#94a3b8; }
.detail-calendar-day.is-booked { background:#fee2e2; border-color:#ef4444; color:#b91c1c; }
.detail-calendar-day.is-booked .detail-calendar-day__price { color:#b91c1c; opacity:1; }
.detail-calendar-day.is-today { border-color:#0f766e; }
.detail-calendar-day.is-selected { background:#0f766e96; border-color:#14b8a6; color:#fff;}
.detail-calendar-day.is-check-in { background:#0f766e; border-color:#0f766e; color:#ffffff; }
.detail-calendar-day.is-check-out { background:#0f766e; border-color:#0f766e; color:#ffffff; }
.detail-calendar-day.is-half-start {     background: linear-gradient(140deg, #ffffff 0 50%, #fee2e2 50% 100%); border-color:#fca5a5; }
.detail-calendar-day.is-half-end {     background: linear-gradient(140deg, #fee2e2 0%, #fee2e2 50%, #ffffff 50%, #ffffff 100%); border-color:#fca5a5; }
.detail-calendar-day.is-half-both { background:linear-gradient(90deg, #fee2e2 0%, #fee2e2 24%, #ffffff 24%, #ffffff 76%, #fee2e2 76%, #fee2e2 100%); border-color:#fca5a5; }
.detail-calendar-day.is-half-end.is-check-in {    background: linear-gradient(140deg, #fee2e2 0 50%, #0f766e 50% 100%); border-color:#0f766e; color:#000; }
.detail-calendar-day.is-half-end.is-check-in .detail-calendar-day__price { color:#ffffff; opacity:1; }
.detail-calendar-day.is-half-start.is-check-out .detail-calendar-day__price { color:#0f172a; opacity:1; }
.detail-calendar-day.is-half-start.is-check-out {     background: linear-gradient(140deg, #0f766e 0 50%, #fee2e2 50% 100%); border-color:#0f766e; color:#ffffff; }
.detail-calendar-day.is-half-both.is-check-in { background:linear-gradient(90deg, #fee2e2 0%, #fee2e2 24%, #0f766e 24%, #0f766e 76%, #fee2e2 76%, #fee2e2 100%); border-color:#0f766e; color:#ffffff; }
.detail-calendar-day.is-half-both.is-check-out { background:linear-gradient(90deg, #fee2e2 0%, #fee2e2 24%, #0f766e 24%, #0f766e 76%, #fee2e2 76%, #fee2e2 100%); border-color:#0f766e; color:#ffffff; }
.detail-calendar-day.is-half-end.is-selected { background: linear-gradient(140deg, #fee2e2 0 50%, #0f766e 50% 100%); border-color:#14b8a6; color:#0f172a; }
.detail-calendar-day.is-half-start.is-selected { background:linear-gradient(140deg, #ecfeff 0%, #ecfeff 50%, #fee2e2 50%, #fee2e2 100%); border-color:#14b8a6; color:#0f172a; }
.detail-calendar-day.is-half-both.is-selected { background:linear-gradient(90deg, #fee2e2 0%, #fee2e2 24%, #ecfeff 24%, #ecfeff 76%, #fee2e2 76%, #fee2e2 100%); border-color:#14b8a6; color:#0f172a; }
.detail-calendar-day.is-blocked.is-today .detail-calendar-day__price { opacity:.88; }

.detail-calendar-day__number { font-size:16px; font-weight:800; }
.detail-calendar-day__price { font-size:11px; line-height:1.3; font-weight:700; color:inherit; opacity:.88; }
.detail-tag-list { display:flex; flex-wrap:wrap; gap:10px; }
.detail-tag { padding:11px 14px; border-radius:14px; background:#f1f5f9; border:1px solid #e2e8f0; font-size:14px; font-weight:700; color:#334155; }
.detail-link-grid { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:14px; }
.detail-link-card { display:flex; align-items:center; gap:16px; padding:20px; border-radius:22px; background:linear-gradient(135deg, #ffffff 0%, #f8fafc 100%); border:1px solid #e2e8f0; text-decoration:none; color:#0f172a; box-shadow:0 18px 36px rgba(15, 23, 42, 0.06); }
.detail-link-card__body { min-width:0; }
.detail-link-card__title { font-size:18px; font-weight:800; color:#0f172a; margin-bottom:6px; }
.detail-link-card__text { font-size:14px; color:#64748b; }
.detail-brand-logo { display:flex; align-items:center; justify-content:center; width:88px; min-width:88px; height:56px; padding:10px; border-radius:14px; background:#fff; border:1px solid rgba(15,23,42,.08); overflow:hidden; }
.detail-brand-logo__image { display:block; max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; }
.detail-brand-logo span { display:inline-flex; align-items:center; justify-content:center; font-size:13px; font-weight:700; line-height:1; color:#0f172a; }
.detail-brand-logo--is-etstur { background:#fff; }
.detail-brand-logo--is-hotels { background:#fff; }
.detail-brand-logo--is-setur { background:#fff; }
.detail-brand-logo--is-jolly { background:#fff; }
.detail-brand-logo--is-tatilsepeti { background:#fff; }
.detail-brand-logo--is-stayforlong { background:#fff; }
.detail-brand-logo--is-trip { background:#fff; }
.detail-brand-logo--is-zenhotels { background:#fff; }
.detail-brand-logo--is-tatilbudur { background:#fff; }
.detail-brand-logo--is-agoda { background:#fff; }
.detail-brand-logo--is-hilton { background:#fff; }
.detail-brand-logo--is-touristica { background:#fff; }
.detail-brand-logo--is-default { background:#f8fafc; }
.detail-side-card { padding:15px; border-radius:24px; background:#ffffff; border:1px solid rgba(226, 232, 240, 0.92); box-shadow:0 22px 50px rgba(15, 23, 42, 0.08); }
.detail-side-card__eyebrow { font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#0f766e; margin-bottom:10px; }
.detail-booking { display:flex; flex-direction:column; gap:16px; }
.detail-booking__eyebrow { font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#0f766e; }
.detail-booking__controls { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:12px; }
.detail-booking__ages { display:flex; flex-direction:column; gap:10px; }
.detail-booking__ages-grid { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:12px; }
.detail-booking__meta { font-size:13px; color:#64748b; }
.detail-description { display:flex; flex-direction:column;}
.detail-description__content { position:relative; font-size:15px; line-height:1.9; color:#334155; }
.detail-description__content.is-collapsed { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:5; overflow:hidden; }
.detail-description__content.is-collapsed::after { content:""; position:absolute; left:0; right:0; bottom:0; height:3.2em; pointer-events:none; background:linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.45) 35%, rgba(255,255,255,.92) 78%, rgba(255,255,255,1) 100%); }
.detail-description__toggle { align-self:center; padding:0; border:none; background:transparent; color:#004dc0; font-size:14px; font-weight:800; cursor:pointer; text-align:center; }
.detail-description__toggle:hover { text-decoration:underline; }
.detail-booking__selected { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:12px; }
.detail-booking__selected-item { padding:14px; border-radius:14px; background:#f8fafc; border:1px solid #e2e8f0;    text-align: center; }
.detail-booking__selected-item span { display:block; font-size:12px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:#64748b; margin-bottom:6px; }
.detail-booking__selected-item strong { font-size:14px; color:#0f172a; }
.detail-booking__result { padding:18px; border-radius:18px; background:linear-gradient(135deg, #0f172a 0%, #1e293b 100%); color:#ffffff; text-align: center;}
.detail-booking__price-label { font-size:13px; color:rgba(255, 255, 255, 0.72); margin-bottom:8px; }
.detail-booking__price-value { font-size:30px; line-height:1.08; font-weight:800; margin-bottom:8px; }
.detail-booking__price-note { font-size:13px; line-height:1.75; color:rgba(255, 255, 255, 0.74); }
.detail-field { display:flex; flex-direction:column; gap:8px; }
.detail-field__label { font-size:12px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:#64748b;    text-align: center; }
.detail-field__input { width:100%; min-height:48px; padding:0 14px; border-radius:14px; border:1px solid #dbe3ee; background:#f8fafc; color:#0f172a; font-size:14px; font-weight:700; }
.detail-field__input.is-readonly { background:#eef2f7; color:#475569; cursor:not-allowed; }
.detail-field--age .detail-field__input { appearance:auto; }
.detail-host { display:flex; gap:10px; align-items:center; margin-bottom:20px; }
.detail-host__avatar { flex:0 0 64px; width:64px; height:64px; border-radius:20px; overflow:hidden; background:#e2e8f0; display:flex; align-items:center; justify-content:center; }
.detail-host__avatar-image { width:100%; height:100%; display:block; object-fit:cover; }
.detail-host__avatar-placeholder { font-size:24px; font-weight:800; color:#334155; }
.detail-host__body { min-width:0; }
.detail-host__title { font-size:14px; font-weight:800; color:#0f172a; margin-bottom:2px; }
.detail-host__text { font-size:12px; color:#64748b; }
.detail-side-list { display:flex; flex-direction:column; gap:14px; margin-bottom:22px; }
.detail-side-list__item { padding-bottom:14px; border-bottom:1px solid #e2e8f0;text-align: center; }
.detail-side-list__label { font-size:12px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:#64748b; margin-bottom:6px; }
.detail-side-list__value { font-size:14px; line-height:1.7; color:#0f172a; }
.detail-side-actions { display:flex; flex-direction:column; gap:12px; }
.detail-related { margin-top:28px; }
.detail-related .grid { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:22px; }
.detail-empty { padding:18px; border-radius:18px; background:#f8fafc; border:1px solid #e2e8f0; font-size:14px; line-height:1.8; color:#64748b; }
.detail-business-card { margin-top:0; }
.detail-summary .detail-side-card { box-shadow:none; background:#ffffff; }

.detail-summary { align-self:start; height:fit-content; }

.detail-hero__grid { align-items:start; }
.detail-summary-wrap { display:flex; flex-direction:column; gap:12px; align-self:start; position:sticky; top:20px; }
.detail-owner-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; border-radius:18px; background:rgba(15,23,42,0.78); border:1px solid rgba(255,255,255,0.10); box-shadow:0 18px 40px rgba(15,23,42,0.14); backdrop-filter:blur(12px); }
.detail-owner-bar__meta { display:flex; flex-direction:column; gap:2px; min-width:0; }
.detail-owner-bar__eyebrow { font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:rgba(255,255,255,0.62); }
.detail-owner-bar__title { font-size:14px; font-weight:700; color:#ffffff; }
.detail-owner-bar__button { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:0 14px; border-radius:999px; background:#ffffff; color:#0f172a; text-decoration:none; font-weight:800; white-space:nowrap; transition:transform .2s ease, box-shadow .2s ease, background .2s ease; }
.detail-owner-bar__button:hover { background:#f8fafc; box-shadow:0 10px 24px rgba(15,23,42,0.18); transform:translateY(-1px); }
.detail-side-list { display:flex; flex-direction:column; gap:0; }

.detail-side-list__row { display: grid; grid-template-columns: 1fr 1fr; padding: 16px 0; border-bottom: 1px solid rgba(148, 163, 184, 0.22); border-top: 1px solid rgba(148, 163, 184, 0.22); }
.detail-side-list__col { min-width:0;     text-align: center;}
.detail-side-list__col:first-child { padding-right:16px; border-right:1px solid rgba(148, 163, 184, 0.22); }
.detail-side-list__col:last-child { padding-left:16px; }
.detail-side-list__item--address { padding-top:16px; }

.detail-gallery__stage { cursor:zoom-in; }
.detail-gallery__stage.is-video { cursor:default; }
.detail-gallery__nav { position:absolute; top:50%; transform:translateY(-50%); z-index:5; width:46px; height:46px; display:flex; align-items:center; justify-content:center; border:none; border-radius:999px; background:rgba(15,23,42,.78); color:#ffffff; font-size:28px; font-weight:800; cursor:pointer; backdrop-filter:blur(8px); box-shadow:0 12px 28px rgba(15,23,42,.22); }
.detail-gallery__nav--prev { left:18px; }
.detail-gallery__nav--next { right:18px; }
.detail-gallery__nav:hover { transform:translateY(-50%) scale(1.04); }
.detail-lightbox { position:fixed; inset:0; z-index:9999; display:flex; align-items:center; justify-content:center; padding:24px; }
.detail-lightbox[hidden] { display:none; }
.detail-lightbox__backdrop { position:absolute; inset:0; border:none; background:rgba(2,6,23,.86); cursor:pointer; }
.detail-lightbox__dialog { position:relative; z-index:1; width:min(1200px, 100%); display:flex; flex-direction:column; gap:14px; padding:18px; border-radius:24px; background:#0f172a; box-shadow:0 30px 80px rgba(0,0,0,.45); }
.detail-lightbox__stage { position:relative; display:flex; align-items:center; justify-content:center; min-height:68vh; max-height:68vh; border-radius:18px; overflow:hidden; background:#020617; }
.detail-lightbox__image { display:block; max-width:100%; max-height:68vh; object-fit:contain; }
.detail-lightbox__video { display:block; width:100%; max-height:68vh; background:#000000; }
.detail-lightbox__close {position: absolute; top: 18px; right: 18px; z-index: 4; width: 44px; height: 44px; border: none; border-radius: 16px; background:rgba(255,255,255,.14); color:#ffffff; font-size:32px; line-height:1; cursor:pointer; }
.detail-lightbox__nav { position:absolute; top:50%; transform:translateY(-50%); z-index:4; width:52px; height:52px; display:flex; align-items:center; justify-content:center; border:none; border-radius:999px; background:rgba(255,255,255,.14); color:#ffffff; font-size:30px; font-weight:800; cursor:pointer; }
.detail-lightbox__nav--prev { left:16px; }
.detail-lightbox__nav--next { right:16px; }
.detail-lightbox__caption { min-height:22px; text-align:center; font-size:14px; font-weight:700; color:rgba(255,255,255,.84); }
.detail-lightbox__thumbs { display:flex; gap:10px; overflow:auto; padding-bottom:4px; scrollbar-width:none; -ms-overflow-style:none; }
.detail-lightbox__thumbs::-webkit-scrollbar { display:none; width:0; height:0; background:transparent; }
.detail-lightbox__thumb { position:relative; flex:0 0 88px; width:88px; height:68px; padding:0; border:2px solid transparent; border-radius:14px; overflow:hidden; background:#111827; cursor:pointer; opacity:.72; }
.detail-lightbox__thumb.is-active { border-color:#14b8a6; opacity:1; }
.detail-lightbox__thumb-image { width:100%; height:100%; display:block; object-fit:cover; }
.detail-lightbox__thumb-badge { position:absolute; right:6px; bottom:6px; padding:3px 6px; border-radius:999px; background:rgba(15,23,42,.82); color:#ffffff; font-size:10px; font-weight:800; }
body.is-lightbox-open { overflow:hidden; }
@media (max-width: 768px) { .detail-gallery__nav { width:40px; height:40px; font-size:24px; } }
@media (max-width: 768px) { .detail-lightbox { padding:12px; } }
@media (max-width: 768px) { .detail-lightbox__dialog { padding:12px; border-radius:18px; } }
@media (max-width: 768px) { .detail-lightbox__stage { min-height:52vh; max-height:52vh; } }
@media (max-width: 768px) { .detail-lightbox__image { max-height:52vh; } }
@media (max-width: 768px) { .detail-lightbox__video { max-height:52vh; } }
@media (max-width: 768px) { .detail-lightbox__nav { width:44px; height:44px; font-size:26px; } }
@media (max-width: 768px) { .detail-lightbox__thumb { flex:0 0 72px; width:72px; height:56px; } }





@media (max-width: 1280px) { .detail-related .grid { grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (max-width: 1200px) { .detail-sticky-result { display:none !important; margin-bottom:0; } }
@media (max-width: 1200px) { .detail-layout { grid-template-columns:minmax(0, 1fr); } }
@media (max-width: 1200px) { .detail-sticky { position:static; } }
@media (max-width: 1100px) { .detail-hero__grid { grid-template-columns:minmax(0, 1fr); } }
@media (max-width: 960px) { .detail-gallery__thumbs { grid-template-columns:repeat(4, minmax(0, 1fr)); } }
@media (max-width: 960px) { .detail-link-grid { grid-template-columns:1fr; } }
@media (max-width: 960px) { .detail-distance-list { grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (max-width: 960px) { .detail-calendar-slide { grid-template-columns:1fr; } }
@media (max-width: 900px) { .detail-info-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (max-width: 900px) { .detail-booking__ages-grid { grid-template-columns:1fr; } }
@media (max-width: 900px) { .detail-related .grid { grid-template-columns:1fr; } }
@media (max-width: 768px) { .detail-hero { padding:18px 0 28px; } }
@media (max-width: 768px) { .detail-gallery__stage { min-height:360px; border-radius:22px; } }
@media (max-width: 768px) { .detail-gallery__placeholder { min-height:360px; font-size:22px; } }
@media (max-width: 768px) { .detail-summary { padding:15px; border-radius:20px; } }
@media (max-width: 768px) { .detail-summary__title { font-size:30px; } }
@media (max-width: 768px) { .detail-panel { padding:15px; border-radius:20px; } }
@media (max-width: 768px) { .detail-gallery__thumbs { grid-template-columns:repeat(3, minmax(0, 1fr)); } }
@media (max-width: 768px) { .detail-calendar-grid { gap:4px; } }
@media (max-width: 768px) { .detail-calendar-day { min-height:60px; padding:4px; } }
@media (max-width: 540px) { .detail-breadcrumb { font-size:12px; gap:8px; } }
@media (max-width: 540px) { .detail-gallery__overlay { padding:22px 18px 18px; } }
@media (max-width: 540px) { .detail-gallery__overlay-title { font-size:22px; } }
@media (max-width: 540px) { .detail-gallery__thumb-image { height:74px; } }
@media (max-width: 540px) { .detail-summary__actions { flex-direction:column; } }
@media (max-width: 540px) { .detail-button { width:100%; } }
@media (max-width: 540px) { .detail-calendar-weekday { font-size:10px; } }
@media (max-width: 540px) { .detail-calendar-day__price { font-size:10px; } }