@import url("./agency.css");
@import url("./admin-agency.css");

.home-destinations { box-sizing: border-box; width: min(1240px, calc(100% - 64px)); margin: 0 auto; padding: 76px 0 18px; }
@media (max-width: 620px) { .home-destinations { width: calc(100% - 28px); padding-top: 48px; } }

:root {
    --ink: #18261f;
    --forest: #163f30;
    --forest-bright: #1f5a43;
    --cream: #f7f3ea;
    --gold: #d5a85d;
    --white: #fff;
    font-family: 'Instrument Sans', ui-sans-serif, system-ui, sans-serif;
    color: var(--ink);
}

/* Tourist guides */
.guide-list-main,.guide-detail-main,.guide-reservation-main{width:min(1480px,calc(100% - 48px));margin:0 auto;padding:56px 0 80px}.guide-results-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:30px;align-items:start}.guide-filter-card,.guide-info-card,.guide-book-card{background:#fff;border:1px solid #d8ddd2;border-radius:20px;padding:26px;box-shadow:0 16px 38px rgba(28,59,47,.06)}.guide-filter-card{position:sticky;top:24px}.guide-filter-card h2{margin:0 0 20px;font:700 30px/1.1 var(--font-display,serif);color:#174634}.guide-filter-dates{display:grid;grid-template-columns:1fr 1fr;gap:12px}.guide-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.guide-card{overflow:hidden;background:#fff;border:1px solid #d8ddd2;border-radius:20px}.guide-card>a{display:block;color:inherit;text-decoration:none}.guide-card img,.guide-photo-placeholder{display:block;width:100%;height:280px;object-fit:cover;background:#dfe9d5}.guide-photo-placeholder{display:grid;place-items:center;color:#719d20;font-size:24px}.guide-card div{padding:22px}.guide-card p{margin:0 0 8px;color:#6a756f}.guide-card h2{margin:0 0 12px;font:700 29px/1.1 var(--font-display,serif);color:#174634}.guide-card strong{display:block;margin-top:16px}.guide-profile-hero{display:grid;grid-template-columns:320px 1fr;gap:42px;align-items:center;margin-bottom:30px}.guide-profile-hero>img{width:320px;height:390px;object-fit:cover;border-radius:24px}.guide-profile-hero h1,.guide-reservation-title h1{margin:6px 0;font:700 clamp(45px,6vw,78px)/.96 var(--font-display,serif);color:#174634}.guide-profile-hero>div>p,.guide-reservation-title>p{text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:#719d20}.guide-language-list{margin-top:24px}.guide-detail-grid,.guide-reservation-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.guide-info-card h2,.guide-book-card h2{font:700 32px/1.1 var(--font-display,serif);color:#174634;margin:0 0 20px}.guide-info-card>p{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #e2e5dc}.guide-info-card dl{margin:0}.guide-info-card dl>div{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #e2e5dc}.guide-info-card dt{color:#6a756f}.guide-info-card dd{margin:0;font-weight:700}.guide-book-card fieldset{border:0;padding:0;margin:12px 0}.guide-reservation-title{position:relative;margin-bottom:28px}.guide-status{display:inline-flex;align-items:center;border-radius:999px;padding:8px 14px;background:#eaf2dd;color:#496f15;font-size:13px;font-weight:800}.guide-status-pending_guide{background:#fff1d7;color:#8b5300}.guide-status-rejected,.guide-status-cancelled_customer,.guide-status-expired,.guide-status-no_show{background:#fae9e5;color:#9a4637}.guide-reservation-title .guide-status{font-size:16px;padding:11px 18px}.customer-list>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #e1e5dc;text-decoration:none;color:inherit}.customer-list>a div{display:grid;gap:5px}.panel-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.guide-status-cancelled_guide{background:#fae9e5;color:#9a4637}.guide-ips-qr{display:block;width:min(100%,300px);height:auto;margin:20px auto;padding:12px;background:#fff;border-radius:14px}
.guide-review-card{margin-top:28px}.guide-score-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.guide-profile-preview{width:160px;height:190px;object-fit:cover;border-radius:16px}.guide-calendar-card{margin-top:24px}.guide-calendar-card>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.guide-calendar-card>header h2{margin:0}.guide-calendar-card>header a{display:grid;place-items:center;width:42px;height:42px;border:1px solid #cfd7c8;border-radius:10px;text-decoration:none}.guide-calendar-card>header a.disabled{opacity:.3;pointer-events:none}.guide-month-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.guide-month-calendar span{min-height:80px;padding:10px;border:1px solid #9d3930;border-radius:10px;background:#8f2f29;color:#fff}.guide-month-calendar span.available{border-color:#58a03b;background:#fff;color:#38802c}.guide-month-calendar span small{display:block;margin-top:8px}.guide-pricing-form [data-tier-section]>header{display:flex;justify-content:space-between;align-items:center}.guide-pricing-form .landlord-repeat-row{grid-template-columns:repeat(3,minmax(0,1fr)) auto}
@media(max-width:1050px){.guide-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-results-layout{grid-template-columns:1fr}.guide-filter-card{position:static}.guide-profile-hero{grid-template-columns:220px 1fr}.guide-profile-hero>img{width:220px;height:280px}.guide-score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.guide-list-main,.guide-detail-main,.guide-reservation-main{width:min(100% - 28px,1480px);padding-top:30px}.guide-card-grid,.guide-detail-grid,.guide-reservation-grid,.guide-profile-hero{grid-template-columns:1fr}.guide-profile-hero>img{width:100%;height:340px}.guide-filter-dates{grid-template-columns:1fr}.guide-card img,.guide-photo-placeholder{height:230px}.guide-score-grid{grid-template-columns:1fr}.guide-month-calendar{grid-template-columns:repeat(4,minmax(0,1fr))}.guide-pricing-form .landlord-repeat-row{grid-template-columns:1fr}}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--cream); }
button, input, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
svg { fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

/* Keep long administration content scrollable without moving the editor toolbar. */
.admin-panel-page .tiptap-editor-surface { max-height: 600px; overflow-y: auto; overscroll-behavior: contain; }
.admin-content-media-library { scroll-margin-top: 20px; transition: opacity .2s; }
.admin-content-media-library.is-loading { opacity: .55; pointer-events: none; }
.admin-panel-date-field { display: grid; gap: 7px; color: #536159; font-size: 10px; font-weight: 750; }
.admin-panel-date-field .date-picker-shell { min-height: 43px; }
.admin-panel-date-field .date-picker-trigger { box-sizing: border-box; min-height: 43px; padding: 11px; border: 1px solid #d2d6ca; border-radius: 8px; background: #fff; color: #263c30; font-size: 12px; }
.admin-translation-list { display: grid; gap: 16px; }
.admin-translation-card header { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.admin-translation-card header b,.admin-translation-card header small { display: block; }
.admin-translation-card header small { margin-top: 5px; color: #78827b; font-size: 10px; }
.admin-translation-card header code { align-self: start; padding: 6px 9px; border-radius: 6px; background: #eef1e5; color: #587024; font-size: 10px; }
.currency-switcher{margin:0}.currency-switcher select{height:34px;padding:0 28px 0 10px;border:1px solid rgba(255,255,255,.25);border-radius:18px;background:rgba(10,26,19,.38);color:#fff;font-size:11px;font-weight:750;cursor:pointer}.results-header .currency-switcher select,.customer-topbar .currency-switcher select{border-color:#ccd2c7;background:#fff;color:#294437}.currency-notice{box-sizing:border-box;width:100%;margin:0 0 18px;padding:11px 14px;border:1px solid #d7c58f;border-radius:9px;background:#fff8df;color:#6c5927;font-size:10px;line-height:1.5}

.account-register-prompt {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 22px 0 0;
    padding: 18px 0;
    border-top: 1px solid #e3e4dc;
    border-bottom: 1px solid #e3e4dc;
    color: #657068;
    font-size: 11px;
}
.account-register-prompt a { display: inline-flex; align-items: center; gap: 7px; color: #678927; font-weight: 800; text-decoration: none; white-space: nowrap; }
.account-register-prompt a:hover { text-decoration: underline; }
.account-register-prompt b { font-size: 15px; }
.account-register-prompt + .account-card-note { margin-top: 18px; padding-top: 0; border-top: 0; }

.hero {
    position: relative;
    min-height: 100svh;
    overflow: hidden;
    color: var(--white);
    background: #26372d url('/assets/brand/home-hero-serbia-river-cabin.webp') center center / cover no-repeat;
    isolation: isolate;
}
.hero::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(rgba(0, 0, 0, .3), rgba(0, 0, 0, .3)),
        linear-gradient(180deg, rgba(7, 18, 13, .64) 0%, rgba(7, 18, 13, .13) 34%, rgba(7, 18, 13, .28) 66%, rgba(7, 18, 13, .69) 100%),
        linear-gradient(90deg, rgba(8, 22, 15, .35), transparent 62%);
}

.site-header {
    width: min(1480px, calc(100% - 64px));
    height: 104px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    column-gap: clamp(20px, 2.4vw, 38px);
    align-items: center;
    border-bottom: 1px solid rgba(255,255,255,.25);
}
.brand { display: inline-flex; align-items: center; gap: 11px; width: max-content; font-size: 25px; font-weight: 650; letter-spacing: -.8px; }
.brand-mark { width: 38px; height: 38px; stroke-width: 1.55; }
.brand small { display: block; margin-top: -4px; color: rgba(255,255,255,.72); font-size: 9px; font-weight: 600; letter-spacing: 3.2px; text-transform: uppercase; }
.main-nav { justify-self: center; display: flex; align-items: center; gap: clamp(20px, 2vw, 34px); min-width: 0; font-size: 14px; font-weight: 520; white-space: nowrap; }
.main-nav a { position: relative; padding: 16px 0; }
.main-nav a::after { content: ''; position: absolute; left: 0; right: 100%; bottom: 8px; height: 1px; background: white; transition: right .25s ease; }
.main-nav a:hover::after { right: 0; }
.header-actions { justify-self: end; display: flex; align-items: center; gap: 12px; white-space: nowrap; }
.language-switcher { display: flex; gap: 4px; padding: 4px; border: 1px solid rgba(255,255,255,.3); border-radius: 999px; }
.language-switcher a { min-width: 34px; padding: 6px 8px; border-radius: 999px; color: rgba(255,255,255,.72); font-size: 10px; font-weight: 700; text-align: center; text-transform: uppercase; }
.language-switcher a.active { background: rgba(255,255,255,.95); color: var(--forest); }
.account-link { display: flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 550; }
.account-link svg { width: 20px; height: 20px; }
.header-account-form { margin: 0; }
.header-account-form .account-link { padding: 0; border: 0; background: transparent; color: inherit; font: inherit; cursor: pointer; }
.header-register-link { padding: 9px 14px; border: 1px solid rgba(255,255,255,.38); border-radius: 999px; font-size: 11px; font-weight: 700; }
.menu-toggle { display: none; padding: 10px; border: 0; background: transparent; color: white; }
.menu-toggle span { display: block; width: 22px; height: 1px; margin: 6px 0; background: currentColor; }

.hero-content {
    width: min(1240px, calc(100% - 64px));
    min-height: calc(100svh - 104px);
    margin: 0 auto;
    padding: clamp(64px, 10vh, 120px) 0 98px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.hero-copy { max-width: 850px; margin: 0 auto 44px; text-align: center; text-shadow: 0 2px 30px rgba(0,0,0,.25); }
.eyebrow { margin: 0 0 15px; color: #e5c58c; font-size: 12px; font-weight: 700; letter-spacing: 3.6px; text-transform: uppercase; }
.hero-copy h1 { margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(48px, 6vw, 82px); font-weight: 400; letter-spacing: -3.5px; line-height: .98; }
.hero-copy > p:last-child { max-width: 660px; margin: 22px auto 0; color: rgba(255,255,255,.89); font-size: clamp(15px, 1.5vw, 18px); line-height: 1.6; }

.search-panel { width: 100%; max-width: 1180px; border: 1px solid rgba(255,255,255,.2); border-radius: 18px; background: linear-gradient(135deg, rgba(10,24,17,.82), rgba(20,29,20,.67)); color: white; box-shadow: 0 24px 70px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.08); backdrop-filter: blur(20px) saturate(125%); -webkit-backdrop-filter: blur(20px) saturate(125%); }
.search-tabs { display: flex; gap: 4px; padding: 7px 10px 0; transform: translateY(-100%); position: absolute; }
.search-tab { display: flex; align-items: center; gap: 8px; padding: 12px 18px; border: 1px solid rgba(255,255,255,.18); border-bottom: 0; border-radius: 12px 12px 0 0; background: rgba(8,20,14,.62); color: rgba(255,255,255,.68); cursor: pointer; backdrop-filter: blur(12px); }
.search-tab svg { width: 17px; height: 17px; }
.search-tab.active { background: rgba(10,24,17,.82); color: white; }
.search-tab > span { padding: 3px 7px; border-radius: 999px; background: var(--gold); color: #253226; font-size: 8px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; }

.booking-search { position: relative; display: grid; grid-template-columns: 1.65fr 1fr 1fr 1.25fr auto; align-items: stretch; padding: 14px 14px 52px; }
.search-field { position: relative; min-width: 0; padding: 13px 18px 11px 50px; border-right: 1px solid rgba(255,255,255,.15); }
.search-field > svg { position: absolute; top: 22px; left: 18px; width: 21px; height: 21px; color: #a9c957; }
.search-field label { display: block; margin-bottom: 6px; color: rgba(255,255,255,.62); font-size: 10px; font-weight: 750; letter-spacing: 1.25px; text-transform: uppercase; }
.search-field input, .guest-summary { display: block; width: 100%; padding: 0; border: 0; outline: 0; background: transparent; color: white; font-size: 14px; font-weight: 600; }
.search-field input::placeholder { color: rgba(255,255,255,.46); }
.date-field input { color-scheme: dark; }
.date-picker-shell { position: relative; min-height: 20px; }
.date-picker-trigger { display: block; width: 100%; padding: 0; border: 0; outline: 0; background: transparent; color: white; cursor: pointer; font-size: 14px; font-weight: 600; text-align: left; }
.date-picker-trigger:focus-visible { border-radius: 3px; box-shadow: 0 0 0 2px rgba(169,201,87,.7); }
.native-date-control { position: absolute !important; left: 0; bottom: 0; width: 1px !important; height: 1px; padding: 0 !important; opacity: .01; pointer-events: none; }
.destination-options { position: absolute; z-index: 20; top: calc(100% + 10px); left: 0; width: min(390px, 92vw); max-height: 330px; overflow-y: auto; padding: 7px; border: 1px solid rgba(255,255,255,.17); border-radius: 13px; background: rgba(7,19,13,.96); box-shadow: 0 20px 60px rgba(0,0,0,.42); backdrop-filter: blur(20px); }
.destination-option { width: 100%; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; padding: 11px 12px; border: 0; border-radius: 9px; background: transparent; color: white; cursor: pointer; text-align: left; }
.destination-option:hover, .destination-option.active { background: rgba(169,201,87,.14); }
.destination-option > svg { width: 19px; height: 19px; color: #a9c957; }
.destination-option strong { display: block; font-size: 13px; font-weight: 650; }
.destination-option small { display: block; margin-top: 2px; color: rgba(255,255,255,.45); font-size: 10px; }
.destination-option .destination-count { color: rgba(255,255,255,.5); font-size: 10px; white-space: nowrap; }
.destination-empty { margin: 0; padding: 15px 13px; color: rgba(255,255,255,.57); font-size: 12px; }
.guest-summary { cursor: pointer; text-align: left; }
.guest-popover { position: absolute; z-index: 10; top: calc(100% + 10px); left: 10px; width: 260px; padding: 18px; border: 1px solid rgba(255,255,255,.16); border-radius: 12px; background: rgba(8,21,14,.94); box-shadow: 0 18px 55px rgba(0,0,0,.38); backdrop-filter: blur(18px); }
.guest-popover label { display: flex; align-items: center; justify-content: space-between; margin: 0 0 12px; color: white; font-size: 12px; }
.guest-popover input { width: 66px; padding: 8px; border: 1px solid rgba(255,255,255,.22); border-radius: 7px; background: rgba(255,255,255,.08); color: white; text-align: center; }
.child-ages { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; }
.child-ages input { width: 100%; }
.search-submit { align-self: center; display: flex; align-items: center; justify-content: center; gap: 9px; min-width: 134px; height: 58px; margin-left: 14px; padding: 0 23px; border: 1px solid rgba(216,238,151,.28); border-radius: 11px; background: #7da529; color: white; font-weight: 700; cursor: pointer; box-shadow: 0 8px 24px rgba(68,105,19,.32); transition: background .2s, transform .2s; }
.search-submit:hover { background: #91b93c; transform: translateY(-1px); }
.search-submit svg { width: 19px; height: 19px; }
.property-type { position: absolute; left: 32px; bottom: 15px; display: flex; align-items: center; gap: 14px; color: rgba(255,255,255,.57); font-size: 11px; }
.property-type > span { font-weight: 650; }
.property-type label { cursor: pointer; }
.property-type input { position: absolute; opacity: 0; }
.property-type label span { padding: 5px 10px; border-radius: 999px; }
.property-type input:checked + span { background: rgba(169,201,87,.18); color: #d8ed9d; font-weight: 700; }

.ai-search { padding: 17px; }
.ai-input-wrap { display: flex; align-items: center; gap: 14px; }
.ai-input-wrap > svg { flex: 0 0 auto; width: 26px; height: 26px; color: #b5d465; }
.ai-input-wrap textarea { flex: 1; min-height: 55px; padding: 8px 4px; resize: none; border: 0; outline: none; background: transparent; color: white; font-size: 15px; line-height: 1.45; }
.ai-input-wrap textarea::placeholder { color: rgba(255,255,255,.47); }
.ai-input-wrap button { display: flex; align-items: center; gap: 9px; padding: 17px 22px; border: 1px solid rgba(216,238,151,.28); border-radius: 11px; background: #7da529; color: white; font-weight: 700; cursor: pointer; }
.ai-input-wrap button svg { width: 18px; height: 18px; }
.ai-search > p { margin: 8px 0 0 40px; color: rgba(255,255,255,.52); font-size: 11px; }
.ai-search .ai-status { color: #d8ed9d; }
.ai-search.is-loading button { opacity: .65; pointer-events: none; }
.hero-footer { position: absolute; bottom: 24px; left: 50%; display: flex; align-items: center; gap: 12px; transform: translateX(-50%); color: rgba(255,255,255,.75); font-size: 9px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; }
.hero-footer span { display: block; width: 28px; height: 1px; background: var(--gold); }

.home-service-strip { padding: 34px 0; border-bottom: 1px solid #d9ddd2; background: #f4f1e8; }
.home-service-strip > div { box-sizing: border-box; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; width: min(1180px,calc(100% - 64px)); margin: 0 auto; padding: 12px; overflow: hidden; border: 1px solid rgba(255,255,255,.2); border-radius: 18px; background: linear-gradient(135deg,rgba(10,24,17,.94),rgba(20,29,20,.88)); color: #fff; box-shadow: 0 20px 55px rgba(19,45,33,.18),inset 0 1px 0 rgba(255,255,255,.08); }
.home-service-card { position: relative; display: grid; grid-template-columns: 54px minmax(0,1fr) auto; gap: 15px; align-items: center; min-width: 0; padding: 20px 18px; border-right: 1px solid rgba(255,255,255,.13); border-radius: 11px; color: #fff; text-decoration: none; transition: background .2s,transform .2s; }
.home-service-card:last-child { border-right: 0; }
.home-service-card:hover { background: rgba(255,255,255,.075); transform: translateY(-1px); }
.home-service-icon { display: grid; width: 54px; height: 54px; place-items: center; border: 1px solid rgba(190,220,116,.18); border-radius: 13px; background: rgba(125,165,41,.14); color: #a9cd58; }
.home-service-icon svg { width: 31px; height: 31px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.home-service-card > span:nth-child(2) { min-width: 0; }
.home-service-card strong,.home-service-card small { display: block; }
.home-service-card strong { margin-bottom: 7px; font-family: Georgia,serif; font-size: 19px; font-weight: 500; line-height: 1.05; }
.home-service-card small { color: rgba(255,255,255,.66); font-size: 10px; line-height: 1.5; }
.home-service-card > b { align-self: start; color: #a9cd58; font-size: 16px; font-weight: 400; transition: transform .2s; }
.home-service-card:hover > b { transform: translateX(3px); }

@media (max-width: 1100px) {
    .home-service-strip > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .home-service-card:nth-child(2) { border-right: 0; }
    .home-service-card:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.13); }
}

@media (max-width: 1180px) {
    .site-header { position: relative; z-index: 20; grid-template-columns: 1fr auto; }
    .main-nav { display: none; }
    .main-nav.mobile-open { position: absolute; top: calc(100% - 1px); left: 0; right: 0; display: grid; gap: 0; padding: 12px 20px; border: 1px solid rgba(255,255,255,.22); border-top: 0; border-radius: 0 0 18px 18px; background: rgba(10,31,22,.96); box-shadow: 0 20px 45px rgba(0,0,0,.3); backdrop-filter: blur(18px); }
    .main-nav.mobile-open a { padding: 14px 4px; border-bottom: 1px solid rgba(255,255,255,.12); }
    .main-nav.mobile-open a:last-child { border-bottom: 0; }
    .menu-toggle { display: block; }
    .booking-search { grid-template-columns: 1.5fr 1fr 1fr; padding-bottom: 78px; }
    .guests-field { border-right: 0; }
    .search-submit { position: absolute; right: 14px; bottom: 12px; height: 50px; }
    .property-type { bottom: 23px; }
}

@media (max-width: 720px) {
    .account-register-prompt { align-items: flex-start; flex-direction: column; gap: 8px; }
    .hero { min-height: 100svh; background-position: 62% center; overflow: auto; }
    .site-header { width: calc(100% - 32px); height: 78px; }
    .brand { font-size: 21px; }
    .brand-mark { width: 31px; height: 31px; }
    .language-switcher, .account-link span { display: none; }
    .header-actions { gap: 8px; }
    .menu-toggle { display: block; }
    .hero-content { width: calc(100% - 28px); min-height: calc(100svh - 78px); padding: 78px 0 70px; justify-content: flex-start; }
    .hero-copy { margin-bottom: 72px; }
    .hero-copy h1 { font-size: clamp(42px, 13vw, 62px); letter-spacing: -2px; }
    .hero-copy > p:last-child { font-size: 14px; }
    .search-tabs { left: 0; right: 0; padding-left: 0; }
    .search-tab { flex: 1; justify-content: center; padding: 11px 8px; font-size: 11px; }
    .booking-search { display: block; padding: 7px 10px 70px; }
    .search-field { padding: 13px 12px 13px 45px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); }
    .search-field > svg { left: 13px; }
    .search-submit { left: 10px; right: 10px; bottom: 10px; width: calc(100% - 20px); margin: 0; }
    .property-type { position: static; padding: 13px 5px 4px; flex-wrap: wrap; gap: 6px; }
    .property-type > span { width: 100%; }
    .ai-input-wrap { align-items: flex-start; flex-wrap: wrap; }
    .ai-input-wrap textarea { min-width: calc(100% - 42px); }
    .ai-input-wrap button { width: 100%; justify-content: center; }
    .ai-search > p { margin-left: 0; }
    .hero-footer { display: none; }
    .home-service-strip { padding: 22px 0; }
    .home-service-strip > div { grid-template-columns: 1fr; width: calc(100% - 28px); padding: 8px; }
    .home-service-card { padding: 17px 16px; }
    .home-service-card,.home-service-card:nth-child(2),.home-service-card:nth-child(-n+2) { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.13); }
    .home-service-card:last-child { border-bottom: 0; }
}

@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }

/* Search results */
.results-page { min-height: 100vh; background: #f3f0e8; color: var(--ink); }
.results-header { width: min(1440px, calc(100% - 64px)); height: 92px; margin: 0 auto; display: grid; grid-template-columns: minmax(170px, 1fr) auto minmax(220px, 1fr); align-items: center; border-bottom: 1px solid #d8d8ce; }
.results-brand { display: flex; align-items: center; gap: 10px; width: max-content; color: var(--forest); font-size: 23px; font-weight: 700; letter-spacing: -.7px; }
.results-brand > svg { width: 35px; height: 35px; }
.results-brand small { display: block; margin-top: -4px; color: #7a847e; font-size: 8px; letter-spacing: 3px; text-transform: uppercase; }
.results-header nav { display: flex; gap: 34px; color: #4d5851; font-size: 13px; font-weight: 550; }
.results-header nav a:hover { color: var(--forest); }
.results-header-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; min-width: 0; white-space: nowrap; }
.back-home { justify-self: end; padding: 11px 17px; border: 1px solid #b9c2bb; border-radius: 999px; color: var(--forest); font-size: 12px; font-weight: 650; }
.results-main { width: min(1320px, calc(100% - 64px)); margin: 0 auto; padding: 64px 0 100px; }
.results-search-panel { max-width: none; margin: 0 0 58px; background: linear-gradient(135deg, #112d22, #24362b); box-shadow: 0 18px 50px rgba(22,63,48,.14); }
.results-search-panel .booking-search { grid-template-columns: 1.65fr 1fr 1fr 1.25fr auto; }
.results-intro { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 42px; }
.results-eyebrow { align-self: flex-start; margin: 10px 0 0; color: #7da529; font-size: 10px; font-weight: 800; letter-spacing: 2.6px; text-transform: uppercase; }
.results-intro > div { width: min(820px, 75%); }
.results-intro h1 { margin: 0; font-family: Georgia, 'Times New Roman', serif; color: #163d2f; font-size: clamp(44px, 6vw, 72px); font-weight: 400; letter-spacing: -2.7px; line-height: 1; }
.results-intro > div > p { margin: 15px 0 0; color: #727b75; font-size: 14px; }
.results-toolbar { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; padding: 14px 0; border-top: 1px solid #d7d8ce; color: #778078; font-size: 12px; }
.results-toolbar p { margin: 0; }
.results-toolbar strong { color: var(--forest); font-size: 15px; }
.results-toolbar a { color: var(--forest); font-weight: 650; text-decoration: underline; text-underline-offset: 4px; }
.discovery-form { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 34px; align-items: start; }
.filter-panel { position: sticky; top: 20px; padding: 23px; border: 1px solid #d9dbd2; border-radius: 15px; background: #faf9f4; }
.filter-heading { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.filter-heading h2 { margin: 0; color: var(--forest); font-family: Georgia, serif; font-size: 25px; font-weight: 400; }
.filter-heading button { display: none; border: 0; background: transparent; color: var(--forest); font-size: 30px; }
.filter-panel fieldset { margin: 0; padding: 20px 0; border: 0; border-top: 1px solid #e0e1da; }
.filter-panel legend { float: left; width: 100%; margin-bottom: 13px; color: #243d32; font-size: 12px; font-weight: 750; }
.filter-panel legend + * { clear: both; }
.price-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.price-inputs label > span:first-child { display: block; margin-bottom: 5px; color: #828a84; font-size: 10px; }
.price-inputs label > span:last-child { display: flex; align-items: center; overflow: hidden; border: 1px solid #d4d8d1; border-radius: 8px; background: white; }
.price-inputs input { width: 100%; min-width: 0; padding: 10px 7px; border: 0; outline: 0; background: transparent; font-size: 11px; }
.price-inputs b { padding-right: 7px; color: #969d98; font-size: 8px; }
.filter-choice { display: flex; align-items: center; gap: 9px; margin: 9px 0; color: #59655e; cursor: pointer; font-size: 11px; line-height: 1.35; }
.filter-choice input { width: 16px; height: 16px; margin: 0; accent-color: #6f9821; }
.distance-select { width: 100%; padding: 10px 30px 10px 10px; border: 1px solid #d4d8d1; border-radius: 8px; background: white; color: #334a3f; font-size: 11px; }
.amenity-filter { max-height: 310px; overflow-y: auto; scrollbar-width: thin; }
.apply-filters { width: 100%; padding: 13px; border: 0; border-radius: 9px; background: var(--forest); color: white; cursor: pointer; font-size: 11px; font-weight: 750; }
.clear-filters { display: block; margin-top: 12px; color: #647169; font-size: 10px; text-align: center; text-decoration: underline; text-underline-offset: 3px; }
.results-workspace { min-width: 0; }
.toolbar-actions { display: flex; align-items: center; gap: 10px; }
.view-switch { display: flex; padding: 3px; border: 1px solid #d4d8d1; border-radius: 8px; background: #faf9f4; }
.view-switch button, .mobile-filter-button { padding: 7px 10px; border: 0; border-radius: 6px; background: transparent; color: #69746d; cursor: pointer; font-size: 10px; }
.view-switch button.active { background: var(--forest); color: white; }
.mobile-filter-button { display: none; border: 1px solid #cdd3cc; }
.sort-control { display: flex; align-items: center; gap: 8px; color: #7a837d; font-size: 10px; }
.sort-control select { padding: 8px 28px 8px 10px; border: 1px solid #d4d8d1; border-radius: 8px; background: #faf9f4; color: var(--forest); font-size: 10px; }
.results-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.stay-card { overflow: hidden; border: 1px solid #dedfd7; border-radius: 16px; background: #fbfaf6; box-shadow: 0 10px 30px rgba(29,50,39,.05); transition: transform .25s, box-shadow .25s; }
.stay-card:hover { transform: translateY(-3px); box-shadow: 0 18px 42px rgba(29,50,39,.11); }
.stay-image { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; background: #dfe4df; }
.stay-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.stay-card:hover .stay-image img { transform: scale(1.025); }
.image-placeholder { display: grid; height: 100%; place-items: center; color: #8f9c94; font-family: Georgia, serif; font-size: 24px; }
.stay-type { position: absolute; top: 14px; left: 14px; padding: 6px 10px; border: 1px solid rgba(255,255,255,.3); border-radius: 999px; background: rgba(9,25,17,.72); color: white; font-size: 9px; font-weight: 700; letter-spacing: .7px; backdrop-filter: blur(10px); }
.voucher-badge { position: absolute; right: 12px; bottom: 12px; display: inline-flex; align-items: center; gap: 6px; padding: 7px 10px; border: 1px solid rgba(240,213,142,.55); border-radius: 8px; background: rgba(24,52,40,.9); color: #f3d58d; box-shadow: 0 5px 18px rgba(0,0,0,.2); font-size: 9px; font-weight: 800; letter-spacing: .7px; text-transform: uppercase; backdrop-filter: blur(10px); }
.voucher-badge svg { width: 16px; height: 16px; stroke-width: 1.7; }
.voucher-filter span { color: #3f5623; font-weight: 700; }
.stay-content { padding: 20px; }
.stay-location { display: flex; align-items: center; gap: 5px; margin: 0 0 8px; color: #7d867f; font-size: 11px; }
.stay-location svg { width: 14px; height: 14px; color: #7da529; }
.stay-distance { margin: -3px 0 8px 19px; color: #99a09b; font-size: 9px; }
.stay-content h2 { min-height: 52px; margin: 0; color: #1a3429; font-family: Georgia, 'Times New Roman', serif; font-size: 22px; font-weight: 400; line-height: 1.18; }
.stay-rating { display: flex; align-items: baseline; gap: 5px; margin: 10px 0 0; color: #818a84; font-size: 9px; }
.stay-rating strong { padding: 4px 6px; border-radius: 5px; background: #e4ead9; color: var(--forest); font-size: 11px; }
.stay-footer { display: flex; align-items: flex-end; justify-content: space-between; margin-top: 20px; padding-top: 15px; border-top: 1px solid #e0e1da; }
.stay-footer p { margin: 0; }
.stay-footer small { display: block; margin-bottom: 3px; color: #8b918d; font-size: 9px; text-transform: uppercase; letter-spacing: .7px; }
.stay-footer strong { color: var(--forest); font-size: 16px; }
.stay-footer > a { display: grid; width: 37px; height: 37px; place-items: center; border-radius: 50%; background: #e3ead6; color: var(--forest); font-size: 18px; }
.empty-results { padding: clamp(55px, 9vw, 100px) 30px; border: 1px solid #d9dcd2; border-radius: 18px; background: #faf9f4; text-align: center; }
.empty-results > span { display: grid; width: 58px; height: 58px; margin: 0 auto 22px; place-items: center; border-radius: 50%; background: #e7ebdf; color: #7da529; font-family: Georgia, serif; font-size: 27px; }
.empty-results h2 { margin: 0; color: var(--forest); font-family: Georgia, serif; font-size: clamp(28px, 4vw, 42px); font-weight: 400; }
.empty-results p { max-width: 560px; margin: 14px auto 28px; color: #747d77; line-height: 1.6; }
.results-primary-action, .results-secondary-action { display: inline-block; margin: 4px; padding: 13px 18px; border-radius: 9px; font-size: 12px; font-weight: 700; }
.results-primary-action { background: var(--forest); color: white; }
.results-secondary-action { border: 1px solid #bfc7c1; color: var(--forest); }
.results-pagination { margin-top: 38px; }
.catalog-pagination { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-top: 22px; border-top: 1px solid #d7d9d1; }
.catalog-pagination p { margin: 0; color: #737d76; font-size: 11px; }
.pagination-pages { display: flex; align-items: center; gap: 5px; }
.pagination-page, .pagination-arrow, .pagination-ellipsis { display: inline-flex; min-width: 38px; height: 38px; align-items: center; justify-content: center; border: 1px solid #d2d7d0; border-radius: 8px; background: #faf9f4; color: #405047; font-size: 11px; }
.pagination-page.current { border-color: var(--forest); background: var(--forest); color: white; font-weight: 750; }
.pagination-arrow { color: var(--forest); font-size: 26px; line-height: 1; }
.pagination-arrow.disabled { opacity: .32; }
.pagination-ellipsis { border-color: transparent; background: transparent; }
.results-map-panel { overflow: hidden; scroll-margin-top: 20px; border: 1px solid #d8dcd4; border-radius: 16px; background: #e5e9e1; }
.results-map-panel > p { padding: 80px 20px; color: #67736b; text-align: center; }
#results-map { height: min(68vh, 720px); min-height: 520px; }
.map-popup { display: grid; min-width: 150px; gap: 3px; }
.map-popup a { color: var(--forest); font-weight: 750; }
.map-popup span { color: #707a74; font-size: 11px; }
.map-popup strong { margin-top: 4px; color: #547418; }

@media (max-width: 950px) {
    .results-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .results-header { grid-template-columns: 1fr auto; }
    .results-header nav { display: none; }
    .results-header-actions { grid-column: 2; }
    .discovery-form { grid-template-columns: 220px minmax(0, 1fr); gap: 22px; }
    .results-toolbar { align-items: flex-start; gap: 12px; }
    .toolbar-actions { flex-wrap: wrap; justify-content: flex-end; }
}
@media (max-width: 780px) {
    .discovery-form { display: block; }
    .filter-panel { position: fixed; z-index: 1000; inset: 0 auto 0 0; width: min(360px, 92vw); overflow-y: auto; border: 0; border-radius: 0; box-shadow: 15px 0 50px rgba(9,27,18,.2); transform: translateX(-105%); transition: transform .25s ease; }
    .filter-panel.mobile-open { transform: translateX(0); }
    .filter-heading button, .mobile-filter-button { display: block; }
    body.filters-open::after { content: ''; position: fixed; z-index: 999; inset: 0; background: rgba(8,24,16,.45); }
}
@media (max-width: 620px) {
    .results-header, .results-main { width: calc(100% - 30px); }
    .results-header { height: 76px; }
    .back-home { padding: 9px 12px; }
    .results-main { padding-top: 42px; }
    .results-intro { display: block; }
    .results-intro > div { width: 100%; margin-top: 14px; }
    .results-grid { grid-template-columns: 1fr; }
    .results-toolbar { align-items: flex-start; }
    .results-toolbar > p { padding-top: 8px; white-space: nowrap; }
    .toolbar-actions { gap: 6px; }
    .sort-control > span { display: none; }
    #results-map { min-height: 480px; }
    .catalog-pagination { align-items: flex-start; flex-direction: column; }
    .pagination-pages { max-width: 100%; flex-wrap: wrap; }
}

/* Property detail */
.property-page { background: #f3f0e8; color: var(--ink); }
.property-header { margin-bottom: 0; }
.property-main { width: min(1380px, calc(100% - 64px)); margin: 0 auto; padding: 54px 0 100px; }
.property-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 42px; }
.property-hero h1 { max-width: 900px; margin: 5px 0 8px; font-family: Georgia, serif; color: var(--forest); font-size: clamp(42px, 6vw, 72px); font-weight: 400; letter-spacing: -2.5px; line-height: 1; }
.property-address { margin: 0; color: #78817b; font-size: 13px; }
.property-voucher { display: flex; max-width: 280px; align-items: center; gap: 9px; padding: 11px 14px; border: 1px solid #d3bd80; border-radius: 10px; background: #f8f0d8; color: #5d542e; font-size: 10px; font-weight: 750; line-height: 1.35; }
.property-voucher svg { flex: 0 0 auto; width: 22px; height: 22px; }
.property-layout { display: grid; grid-template-columns: minmax(0, 3fr) minmax(260px, 1fr); gap: 30px; align-items: start; }
.property-content { min-width: 0; }
.property-content > section { margin-bottom: 30px; padding: 28px; border: 1px solid #d9dcd3; border-radius: 18px; background: #fbfaf6; }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
.section-heading p { margin: 0 0 5px; color: #7da529; font-size: 9px; font-weight: 800; letter-spacing: 1.6px; text-transform: uppercase; }
.section-heading h2 { margin: 0; color: var(--forest); font-family: Georgia, serif; font-size: 30px; font-weight: 400; }
.section-heading > span { color: #7b847e; font-size: 11px; }
.property-booking-box { background: linear-gradient(135deg, #112e23, #283b2f) !important; color: white; box-shadow: 0 18px 55px rgba(20,57,43,.16); }
.property-booking-box .section-heading h2 { color: white; }
.property-booking-box .section-heading > span { color: rgba(255,255,255,.58); }
.property-search { display: grid; grid-template-columns: 1fr 1fr 1.25fr auto; align-items: stretch; overflow: visible; border: 1px solid rgba(255,255,255,.16); border-radius: 12px; background: rgba(255,255,255,.06); }
.property-search-field { position: relative; min-width: 0; padding: 15px 17px; border-right: 1px solid rgba(255,255,255,.13); }
.property-search-field > label { display: block; margin-bottom: 6px; color: rgba(255,255,255,.58); font-size: 9px; font-weight: 750; letter-spacing: 1px; text-transform: uppercase; }
.property-search .date-picker-trigger, .property-search .guest-summary { color: white; }
.property-search > button { margin: 8px; padding: 0 22px; border: 0; border-radius: 9px; background: #7da529; color: white; cursor: pointer; font-size: 11px; font-weight: 750; }
.offer-row { display: grid; grid-template-columns: minmax(150px, .8fr) minmax(300px, 1.8fr) auto; gap: 20px; align-items: center; padding: 20px 0; border-top: 1px solid #e0e1da; }
.offer-row h3 { margin: 0 0 5px; color: #223d31; font-family: Georgia, serif; font-size: 21px; font-weight: 400; }
.offer-row > div:first-child p { margin: 0; color: #8a918d; font-size: 10px; }
.offer-prices { display: flex; flex-wrap: wrap; gap: 7px; }
.offer-prices label { cursor: pointer; }
.offer-prices input { position: absolute; opacity: 0; }
.offer-prices span { display: block; min-width: 130px; padding: 10px 12px; border: 1px solid #d8dbd4; border-radius: 9px; background: white; }
.offer-prices input:checked + span { border-color: #7da529; box-shadow: 0 0 0 2px rgba(125,165,41,.14); }
.offer-prices small { display: block; margin-bottom: 4px; color: #7d867f; font-size: 8px; }
.offer-prices strong { color: var(--forest); font-size: 13px; }
.reserve-button { padding: 12px 15px; border-radius: 9px; background: var(--forest); color: white; font-size: 10px; font-weight: 750; }
.property-empty { padding: 35px; border-radius: 12px; background: #f1f0e9; text-align: center; }
.property-empty h3 { margin: 0; color: var(--forest); font-family: Georgia, serif; font-size: 23px; font-weight: 400; }
.property-empty p { margin: 8px 0 0; color: #7c847f; font-size: 11px; }
.apartment-card { display: grid; grid-template-columns: minmax(260px, .9fr) minmax(0, 1.4fr); gap: 26px; padding: 25px 0; border-top: 1px solid #e0e1da; }
.apartment-gallery, .apartment-info, .availability-calendar, .calendar-month-grid { min-width: 0; max-width: 100%; }
.apartment-gallery > img, .apartment-gallery > span { display: grid; width: 100%; aspect-ratio: 4/3; place-items: center; border-radius: 12px; object-fit: cover; background: #dfe5df; color: #77857c; font-family: Georgia, serif; }
.apartment-gallery > div { display: grid; grid-template-columns: repeat(4,1fr); gap: 6px; margin-top: 7px; }
.apartment-gallery > div img { width: 100%; aspect-ratio: 1; border-radius: 6px; object-fit: cover; }
.apartment-info h3 { margin: 0 0 10px; color: var(--forest); font-family: Georgia, serif; font-size: 28px; font-weight: 400; }
.apartment-description { color: #6f7972; font-size: 11px; line-height: 1.65; }
.apartment-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; margin: 17px 0; }
.apartment-facts div { display: flex; justify-content: space-between; gap: 15px; padding: 8px 0; border-bottom: 1px solid #e5e5de; font-size: 10px; }
.apartment-facts dt { color: #858c87; }
.apartment-facts dd { margin: 0; color: #31473c; font-weight: 700; text-align: right; text-transform: capitalize; }
.bed-summary { color: #5e6962; font-size: 10px; line-height: 1.5; }
.amenity-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 15px; }
.amenity-chips span { padding: 6px 9px; border-radius: 999px; background: #e8ecdf; color: #4a6333; font-size: 8px; font-weight: 700; }
.availability-calendar { margin-top: 20px; }
.availability-calendar summary { padding: 11px 13px; border-radius: 8px; background: #eef1e8; color: #41543f; cursor: pointer; font-size: 10px; font-weight: 750; }
.calendar-toolbar { display: grid; grid-template-columns: 38px 1fr 38px; align-items: center; gap: 8px; margin: 14px 0 10px; }
.calendar-toolbar strong { color: var(--forest); font-family: Georgia,serif; font-size: 18px; font-weight: 400; text-align: center; text-transform: capitalize; }
.calendar-toolbar button { width: 36px; height: 34px; border: 1px solid #d4d9d1; border-radius: 7px; background: white; color: var(--forest); cursor: pointer; font-size: 22px; }
.calendar-toolbar button:disabled { opacity: .25; cursor: default; }
.calendar-month-grid { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 5px; }
.calendar-day { min-width: 0; min-height: 82px; padding: 8px 4px; border: 1px solid #dce0d8; border-radius: 8px; background: #f6f5f0; text-align: center; }
.calendar-day small, .calendar-day strong, .calendar-day span, .calendar-day b { display: block; }
.calendar-day small { color: #929994; font-size: 7px; text-transform: uppercase; }
.calendar-day strong { margin: 3px 0 7px; color: #374b40; font-family: Georgia,serif; font-size: 17px; font-weight: 400; }
.calendar-day span { color: #587225; font-size: 7px; font-weight: 750; white-space: nowrap; }
.calendar-day b { margin: -4px 0 4px; color: #7b8a80; font-size: 8px; }
.calendar-day.unavailable { opacity: .52; }
.calendar-day.available { border-bottom: 3px solid #8baa45; background: #f8faf3; }
.calendar-explanation { margin: -8px 0 18px; color: #7b847e; font-size: 10px; }
.property-calendar-strip .calendar-day { min-height: 94px; }
.property-description { color: #606b64; font-size: 12px; line-height: 1.8; }
.property-policy-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 25px; margin: 25px 0 0; }
.property-policy-grid div { padding: 11px 0; border-top: 1px solid #e1e3dc; }
.property-policy-grid dt { margin-bottom: 4px; color: #8a918d; font-size: 8px; text-transform: uppercase; }
.property-policy-grid dd { margin: 0; color: #34493e; font-size: 11px; font-weight: 650; }
.property-gallery-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 8px; max-height: 620px; overflow-y: auto; scrollbar-width: thin; }
.property-gallery-grid a:first-child { grid-column: span 2; grid-row: span 2; }
.property-gallery-grid img { width: 100%; height: 100%; aspect-ratio: 4/3; border-radius: 9px; object-fit: cover; }
.nearby-groups { display: grid; grid-template-columns: repeat(2,1fr); gap: 16px; }
.nearby-groups > div { padding: 17px; border-radius: 11px; background: #f0f1ea; }
.nearby-groups h3 { margin: 0 0 10px; color: var(--forest); font-size: 11px; text-transform: capitalize; }
.nearby-groups p { display: flex; justify-content: space-between; gap: 12px; margin: 0; padding: 7px 0; border-top: 1px solid #dcdfd7; color: #68736c; font-size: 9px; }
.nearby-groups strong { color: #3f5047; white-space: nowrap; }
.property-sidebar { position: sticky; top: 20px; display: grid; gap: 16px; }
.property-sidebar section { padding: 22px; border: 1px solid #d9dcd3; border-radius: 15px; background: #fbfaf6; }
.property-sidebar h3 { margin: 0 0 16px; color: var(--forest); font-family: Georgia, serif; font-size: 21px; font-weight: 400; }
.property-sidebar dl { margin: 0; }
.property-sidebar dl div { display: flex; justify-content: space-between; gap: 15px; padding: 9px 0; border-top: 1px solid #e4e5de; font-size: 10px; }
.property-sidebar dt { color: #858d87; }
.property-sidebar dd { margin: 0; color: #34493e; font-weight: 700; }
.property-sidebar section > p { display: flex; justify-content: space-between; color: #737d77; font-size: 10px; }
.property-sidebar .help-card { background: #173d2f; color: white; }
.property-sidebar .help-card h3 { color: white; }
.help-card p { display: block !important; color: rgba(255,255,255,.7) !important; line-height: 1.6; }
.help-card a { display: block; margin-top: 15px; padding: 11px; border-radius: 8px; background: #7da529; color: white; font-size: 10px; font-weight: 750; text-align: center; }
.alternative-stays > a { display: grid; grid-template-columns: 60px 1fr; gap: 10px; align-items: center; padding: 10px 0; border-top: 1px solid #e0e2dc; }
.alternative-stays img { width: 60px; height: 52px; border-radius: 7px; object-fit: cover; }
.alternative-stays b, .alternative-stays small { display: block; }
.alternative-stays b { color: #30483c; font-family: Georgia,serif; font-size: 12px; font-weight: 400; line-height: 1.2; }
.alternative-stays small { margin-top: 4px; color: #668326; font-size: 9px; font-weight: 750; }
.reviews-section { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.reviews-section .section-heading { grid-column: 1/-1; }
.review-card { position: relative; padding: 17px; border: 1px solid #e0e2dc; border-radius: 11px; background: #f7f6f1; }
.review-card > div strong, .review-card > div span { display: block; }
.review-card > div strong { color: #30483c; font-size: 11px; }
.review-card > div span { margin-top: 3px; color: #929994; font-size: 8px; }
.review-card > b { position: absolute; top: 14px; right: 14px; padding: 5px 7px; border-radius: 6px; background: #e3ead6; color: var(--forest); font-size: 11px; }
.review-card p { margin: 14px 0 0; color: #66716a; font-size: 10px; line-height: 1.6; }
.lightbox-open { overflow: hidden; }
.site-lightbox { width: 100vw; max-width: none; height: 100vh; max-height: none; margin: 0; padding: 50px 76px; border: 0; background: rgba(5,15,10,.94); color: white; }
.site-lightbox::backdrop { background: rgba(5,15,10,.94); }
.site-lightbox[open] { display: grid; grid-template-columns: 52px minmax(0,1fr) 52px; align-items: center; gap: 18px; }
.site-lightbox figure { display: grid; min-width: 0; height: calc(100vh - 100px); margin: 0; grid-template-rows: minmax(0,1fr) auto; }
.site-lightbox figure { touch-action: pan-y; user-select: none; -webkit-user-select: none; }
.site-lightbox figure img { display: block; max-width: 100%; max-height: 100%; margin: auto; object-fit: contain; -webkit-user-drag: none; }
.site-lightbox figcaption { display: flex; justify-content: space-between; gap: 20px; padding-top: 14px; color: rgba(255,255,255,.76); font-size: 11px; }
.site-lightbox button { border: 1px solid rgba(255,255,255,.25); background: rgba(255,255,255,.08); color: white; cursor: pointer; }
.site-lightbox button:disabled { opacity: .25; }
.lightbox-previous, .lightbox-next { width: 50px; height: 50px; border-radius: 50%; font-size: 34px; }
.lightbox-close { position: fixed; z-index: 2; top: 18px; right: 22px; width: 42px; height: 42px; border-radius: 50%; font-size: 25px; }
@media (max-width: 700px) { .site-lightbox { padding: 62px 12px 18px; } .site-lightbox[open] { grid-template-columns: 38px minmax(0,1fr) 38px; gap: 5px; } .site-lightbox figure { height: calc(100vh - 80px); } .lightbox-previous, .lightbox-next { width: 38px; height: 38px; font-size: 27px; } }
@media (max-width: 1000px) { .property-layout { grid-template-columns: 1fr; } .property-sidebar { position: static; grid-template-columns: repeat(3,1fr); } .property-search { grid-template-columns: 1fr 1fr; } .property-search > button { min-height: 48px; } }
@media (max-width: 700px) { .property-main { width: calc(100% - 28px); padding-top: 35px; } .property-hero { align-items: flex-start; flex-direction: column; } .property-layout { display: block; } .property-content > section { padding: 19px; } .property-search { display: block; } .property-search-field { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.13); } .property-search > button { width: calc(100% - 16px); min-height: 48px; } .offer-row, .apartment-card { grid-template-columns: 1fr; } .offer-prices { display: grid; grid-template-columns: 1fr 1fr; } .offer-prices span { min-width: 0; } .reserve-button { text-align: center; } .property-sidebar { display: grid; grid-template-columns: 1fr; margin-top: 25px; } .apartment-facts, .property-policy-grid, .nearby-groups { grid-template-columns: 1fr; } .property-gallery-grid { grid-template-columns: repeat(2,1fr); } }

/* Public reservation checkout */
.checkout-page, .legal-page { min-height: 100vh; background: #f3f1e9; color: #24382e; }
.checkout-header { min-height: 72px; padding: 0 max(28px,calc((100% - 1240px)/2)); display: flex; align-items: center; justify-content: space-between; gap: 20px; border-bottom: 1px solid #d9d9cf; background: #fffdf8; color: #526158; font-size: 13px; }
.checkout-header>div{display:flex;align-items:center;gap:24px}.checkout-header a{color:inherit;text-decoration:none}.checkout-header a:hover{color:#789f28}
.checkout-brand { display: flex; align-items: center; gap: 8px; color: var(--forest); font-size: 22px; font-weight: 750; }
.checkout-shell { width: min(1240px,calc(100% - 48px)); margin: 0 auto; padding: 52px 0 90px; }
.checkout-intro { display: grid; grid-template-columns: 1fr auto; align-items: end; margin-bottom: 28px; }
.checkout-intro p, .checkout-step p, .ips-card > div > p:first-child, .legal-shell > p { margin: 0 0 7px; color: #76942d; font-size: 10px; font-weight: 800; letter-spacing: 1.8px; text-transform: uppercase; }
.checkout-intro h1 { grid-column: 1; margin: 0; font-family: Georgia,serif; font-size: clamp(34px,5vw,58px); font-weight: 400; letter-spacing: -1.8px; }
.checkout-intro > span { grid-column: 2; grid-row: 1/3; padding: 10px 15px; border-radius: 999px; background: #e5ead9; color: #49612a; font-size: 11px; font-weight: 700; }
.checkout-grid { display: grid; grid-template-columns: minmax(0,1fr) 310px; gap: 24px; align-items: start; }
.checkout-main, .reservation-success-grid > div { display: grid; gap: 18px; }
.checkout-card, .checkout-price-card, .checkout-help { padding: 28px; border: 1px solid #dadbd2; border-radius: 18px; background: #fffdf9; box-shadow: 0 10px 35px rgba(24,45,34,.045); }
.offer-summary-card { display: grid; grid-template-columns: 190px 1fr; gap: 24px; align-items: center; }
.offer-summary-card > img { width: 190px; height: 145px; border-radius: 12px; object-fit: cover; }
.offer-summary-card p { margin: 0 0 6px; color: #768079; font-size: 11px; }
.offer-summary-card h2, .checkout-step h2, .proof-card h2, .ips-card h2, .checkout-card > h2 { margin: 0; color: var(--forest); font-family: Georgia,serif; font-size: 25px; font-weight: 400; }
.offer-summary-card dl { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; margin: 18px 0 0; }
.offer-summary-card dt, .reservation-detail-list dt { color: #979e99; font-size: 8px; font-weight: 700; letter-spacing: .8px; text-transform: uppercase; }
.offer-summary-card dd, .reservation-detail-list dd { margin: 5px 0 0; font-size: 11px; font-weight: 700; }
.offer-room-allocation { display: grid; gap: 6px; margin: 14px 0 4px; }
.offer-room-allocation span { padding: 8px 10px; border-radius: 7px; background: #f0f3e8; color: #5f6c63; font-size: 10px; }
.checkout-step { display: flex; gap: 14px; align-items: center; margin-bottom: 22px; }
.checkout-step > span { display: grid; width: 34px; height: 34px; flex: 0 0 auto; place-items: center; border-radius: 50%; background: var(--forest); color: white; font-size: 12px; font-weight: 800; }
.checkout-options, .payment-choice { display: grid; gap: 9px; }
.checkout-options label, .payment-choice label { cursor: pointer; }
.checkout-options input, .payment-choice input { position: absolute; opacity: 0; }
.checkout-options label > span, .payment-choice label > span { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 15px 17px; border: 1px solid #dedfd7; border-radius: 11px; background: #faf9f4; }
.checkout-options input:checked + span, .payment-choice input:checked + span { border-color: #789f28; background: #f2f6e9; box-shadow: inset 0 0 0 1px #789f28; }
.checkout-options b, .payment-choice b, .checkout-options small, .payment-choice small { display: block; }
.checkout-options b, .payment-choice b { font-size: 12px; }.checkout-options small, .payment-choice small { color: #708067; font-size: 11px; }
.rule-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px 22px; }
.rule-grid div { display: flex; justify-content: space-between; gap: 15px; padding: 11px 0; border-top: 1px solid #e6e6df; font-size: 11px; }
.rule-grid span { color: #6d7871; text-align: right; }.rule-note { padding: 13px 15px; border-radius: 9px; background: #f1f1e9; color: #606c65; font-size: 10px; line-height: 1.55; }
.auth-switch { display: flex; gap: 6px; margin-bottom: 20px; padding: 4px; border-radius: 10px; background: #eeeee7; }
.auth-switch button { flex: 1; padding: 10px; border: 0; border-radius: 7px; background: transparent; color: #657168; cursor: pointer; }.auth-switch button.active { background: white; color: var(--forest); box-shadow: 0 2px 10px rgba(0,0,0,.06); }
.checkout-form, .reservation-checkout-form { display: contents; }.checkout-form { display: block; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }.form-grid .span-2 { grid-column: 1/-1; }
.form-grid label, .proof-card label { display: grid; gap: 7px; color: #637068; font-size: 9px; font-weight: 750; text-transform: uppercase; }
.form-grid input, .form-grid textarea, .proof-card input { width: 100%; padding: 12px 13px; border: 1px solid #d7d9d1; border-radius: 8px; background: white; color: #263c30; font-size: 12px; text-transform: none; }
.checkout-primary { margin-top: 20px; padding: 14px 20px; border: 0; border-radius: 9px; background: #789f28; color: white; font-size: 11px; font-weight: 800; cursor: pointer; }
.consent-card > label { display: flex; gap: 10px; align-items: flex-start; margin: 12px 0; color: #59665e; font-size: 11px; line-height: 1.5; }.consent-card a { color: #648620; font-weight: 750; text-decoration: underline; }
.consent-card > p { color: #879087; font-size: 9px; }.checkout-sidebar { position: sticky; top: 20px; display: grid; gap: 16px; }
.checkout-price-card { background: var(--forest); color: white; }.checkout-price-card p { margin: 0 0 12px; color: rgba(255,255,255,.65); font-size: 10px; }.checkout-price-card strong { display: block; font-family: Georgia,serif; font-size: 34px; font-weight: 400; }.checkout-price-card small { display: block; margin-top: 8px; color: #bdcf9d; font-size: 9px; }
.checkout-help b { color: var(--forest); font-family: Georgia,serif; font-size: 18px; font-weight: 400; }.checkout-help p { margin: 10px 0 0; color: #69746d; font-size: 10px; line-height: 1.65; }
.checkout-alert { margin-bottom: 20px; padding: 15px 18px; border: 1px solid #d9a7a0; border-radius: 10px; background: #fff1ef; color: #893d33; font-size: 11px; }.checkout-alert ul { margin-bottom: 0; }
.reservation-success-shell { width: min(1050px,calc(100% - 48px)); margin: 0 auto; padding: 60px 0 90px; }.success-hero { margin-bottom: 30px; text-align: center; }.success-hero > span { display: grid; width: 52px; height: 52px; margin: auto; place-items: center; border-radius: 50%; background: #799f2e; color: white; font-size: 25px; }.success-hero p { margin: 14px 0 5px; color: #6d8c29; font-size: 10px; font-weight: 800; text-transform: uppercase; }.success-hero h1 { margin: 0; font-family: Georgia,serif; font-size: 42px; font-weight: 400; }.success-hero small { display: block; margin-top: 10px; color: #778179; }
.reservation-success-grid { display: grid; grid-template-columns: minmax(0,1fr) 280px; gap: 20px; align-items: start; }.reservation-detail-list { margin: 20px 0 0; }.reservation-detail-list div { display: flex; justify-content: space-between; padding: 11px 0; border-top: 1px solid #e5e5dd; }.reservation-detail-list dd { font-size: 12px; }
.ips-card { display: grid; grid-template-columns: 1fr 260px; gap: 25px; align-items: center; }.ips-card img { width: 260px; height: 260px; padding: 8px; border: 1px solid #e1e1da; border-radius: 12px; background: white; }.ips-card strong { display: block; margin: 16px 0; color: #6e9424; font-family: Georgia,serif; font-size: 32px; font-weight: 400; }.ips-card p { color: #67736b; font-size: 11px; line-height: 1.6; }.proof-card form { display: grid; }.success-note { margin: 12px 0; padding: 10px; border-radius: 8px; background: #edf4e0; color: #4f6f1f; font-size: 11px; }.field-error { color: #a34236; }
.legal-shell { width: min(860px,calc(100% - 40px)); margin: 0 auto; padding: 70px 0 100px; }.legal-shell h1 { margin: 0 0 35px; color: var(--forest); font-family: Georgia,serif; font-size: clamp(38px,6vw,62px); font-weight: 400; }.legal-shell article { padding: clamp(24px,5vw,55px); border: 1px solid #dddcd3; border-radius: 18px; background: #fffdf9; color: #4e5c54; font-size: 13px; line-height: 1.75; }.legal-shell article h1,.legal-shell article h2,.legal-shell article h3,.legal-shell article h4 { color: var(--forest); font-family: Georgia,serif; font-weight: 400; }.legal-shell article a { color: #688d24; text-decoration: underline; }
@media (max-width: 850px) { .checkout-grid,.reservation-success-grid { grid-template-columns: 1fr; }.checkout-sidebar { position: static; }.checkout-intro { display: block; }.checkout-intro > span { display: inline-block; margin-top: 14px; }.ips-card { grid-template-columns: 1fr; }.ips-card img { width: min(100%,300px); height: auto; margin: auto; } }
@media (max-width: 600px) { .checkout-shell,.reservation-success-shell { width: calc(100% - 24px); padding-top: 30px; }.checkout-header { padding: 0 14px; }.checkout-card,.checkout-price-card,.checkout-help { padding: 20px; }.offer-summary-card { grid-template-columns: 1fr; }.offer-summary-card > img { width: 100%; height: 190px; }.offer-summary-card dl { grid-template-columns: 1fr 1fr; }.form-grid,.rule-grid { grid-template-columns: 1fr; }.form-grid .span-2 { grid-column: auto; }.success-hero h1 { font-size: 32px; } }
.directory-shell,.account-shell{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:72px 0 100px}.directory-intro,.account-intro{margin-bottom:36px}.directory-intro p,.account-intro>p{margin:0 0 10px;color:#708f2f;font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.directory-intro h1,.account-intro h1{margin:0 0 12px;color:#173c2e;font-family:Georgia,serif;font-size:clamp(42px,6vw,72px);font-weight:500}.directory-intro span,.account-intro>span{color:#657068}.destination-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.destination-directory a,.account-reservation{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;border:1px solid #dcded2;border-radius:16px;background:#fff;color:#173c2e;text-decoration:none;box-shadow:0 8px 30px rgba(24,55,42,.05)}.destination-directory a:hover{border-color:#86aa37;transform:translateY(-2px)}.destination-directory span,.account-reservation span{font-family:Georgia,serif;font-size:21px}.destination-directory small,.account-reservation small{color:#737b73}.account-shell{max-width:1180px}.account-login-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.75fr);gap:clamp(48px,8vw,110px);align-items:center;min-height:calc(100vh - 245px)}.account-login-layout .account-intro{margin:0}.account-login-layout .account-intro h1{max-width:650px;line-height:.98;letter-spacing:-2.4px}.account-login-layout .account-intro>span{display:block;max-width:500px;font-size:15px;line-height:1.65}.account-login-benefits{display:grid;gap:0;margin-top:46px;border-top:1px solid #d8dbd0}.account-login-benefits div{display:grid;grid-template-columns:38px 1fr;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid #d8dbd0;color:#3e5147;font-size:12px}.account-login-benefits b{color:#83a437;font-size:10px;letter-spacing:.1em}.account-login-column{width:100%;max-width:480px;justify-self:end}.account-login-card{box-sizing:border-box;width:100%;padding:38px}.account-card-heading{margin-bottom:28px}.account-card-heading p{margin:0 0 7px;color:#78972e;font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.account-card-heading h2{margin:0;color:var(--forest);font-family:Georgia,serif;font-size:30px;font-weight:400}.account-login-card .checkout-form{display:grid;gap:18px}.account-login-card .checkout-form label{display:grid;gap:8px;color:#4c5c53;font-size:11px;font-weight:750}.account-login-card .checkout-form input{box-sizing:border-box;width:100%;height:50px;padding:0 15px;border:1px solid #d2d7cc;border-radius:9px;background:#fbfbf7;color:#173c2e;font:inherit;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}.account-login-card .checkout-form input:focus{border-color:#7d9f35;background:#fff;box-shadow:0 0 0 3px rgba(125,159,53,.12)}.account-login-card .checkout-primary{display:flex;width:100%;min-height:50px;align-items:center;justify-content:space-between;margin-top:4px;padding:0 18px;font-size:12px}.account-login-card .checkout-primary span{font-size:18px;font-weight:400}.account-card-note{margin:22px 0 0;padding-top:19px;border-top:1px solid #e3e4dc;color:#818a84;font-size:10px;line-height:1.5}.account-login-alert{display:flex;gap:13px;align-items:flex-start;margin-bottom:14px;padding:14px 16px}.account-login-alert>span{display:grid;width:23px;height:23px;flex:0 0 auto;place-items:center;border-radius:50%;background:#a84e43;color:#fff;font-weight:800}.account-login-alert strong{display:block;margin:2px 0 4px;font-size:11px}.account-login-alert ul{margin:0;padding:0;list-style:none}.account-status-card h2{margin-top:0}.account-reservation{margin:10px 0;padding:16px 18px}.account-status-card form{margin-top:24px}@media(max-width:850px){.account-login-layout{grid-template-columns:1fr;gap:34px;min-height:0}.account-login-column{max-width:none;justify-self:stretch}.account-login-benefits{display:none}}@media(max-width:760px){.directory-shell,.account-shell{width:min(100% - 28px,1180px);padding-top:42px}.destination-directory{grid-template-columns:1fr}.destination-directory a{padding:18px}.directory-intro h1,.account-intro h1{font-size:42px}.account-login-card{padding:25px}}
.featured-destination-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.featured-destination-card{overflow:hidden;border:1px solid #d9ddd2;border-radius:18px;background:#fffdf9;box-shadow:0 12px 36px rgba(24,55,42,.07)}.featured-destination-image{display:grid;height:235px;place-items:center;overflow:hidden;background:linear-gradient(145deg,#1c4837,#77952f);color:#fff;font-family:Georgia,serif;font-size:28px;text-decoration:none}.featured-destination-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.featured-destination-card:hover .featured-destination-image img{transform:scale(1.035)}.featured-destination-card>div{padding:24px}.featured-destination-card small{color:#78972e;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.featured-destination-card h2{margin:9px 0 13px;font-family:Georgia,serif;font-size:30px;font-weight:400;line-height:1.05}.featured-destination-card h2 a{color:#173c2e;text-decoration:none}.featured-destination-description{position:relative;max-height:112px;overflow:hidden;margin-bottom:20px;color:#5f6d65;font-size:12px;line-height:1.55}.featured-destination-description:after{position:absolute;right:0;bottom:0;left:0;height:30px;background:linear-gradient(transparent,#fffdf9);content:""}.featured-destination-description>:first-child{margin-top:0}.featured-destination-action{color:#668526;font-size:11px;font-weight:800;text-decoration:none}@media(max-width:950px){.featured-destination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.featured-destination-grid{grid-template-columns:1fr}.featured-destination-image{height:220px}}
.customer-panel-page{margin:0;background:#f4f1e8;color:#173c2e;font-family:Arial,sans-serif}.customer-topbar{height:76px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d8d9cf;background:#fff}.customer-topbar .checkout-brand{color:#173c2e}.customer-topbar>div,.customer-topbar form{display:flex;align-items:center;gap:16px;margin:0}.customer-topbar button{border:0;background:none;color:#59645d;cursor:pointer}.customer-panel-shell{min-height:calc(100vh - 77px);display:grid;grid-template-columns:250px 1fr}.customer-sidebar{padding:34px 24px;border-right:1px solid #d8d9cf;background:#f9f7f0}.customer-sidebar>p{margin:0 12px 22px;color:#829437;font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.customer-sidebar nav{display:grid;gap:5px}.customer-sidebar nav a,.customer-search-link{padding:13px 14px;border-radius:10px;color:#4f5b54;text-decoration:none;font-size:14px}.customer-sidebar nav a:hover,.customer-sidebar nav a.active{background:#e7eadc;color:#173c2e;font-weight:700}.customer-search-link{display:block;margin-top:30px;border:1px solid #cfd6bd;color:#668329!important}.customer-content{min-width:0;padding:58px clamp(28px,5vw,74px) 90px}.customer-page-title{margin-bottom:34px}.customer-page-title>p{margin:0 0 9px;color:#78952f;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.customer-page-title h1{margin:0 0 10px;font-family:Georgia,serif;font-size:clamp(38px,5vw,62px);font-weight:500;letter-spacing:-1.6px}.customer-page-title>span{color:#69736d}.customer-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:28px}.customer-stats a{padding:24px;border:1px solid #d9dbd1;border-radius:16px;background:#fff;color:#173c2e;text-decoration:none}.customer-stats strong{display:block;margin-bottom:5px;font-family:Georgia,serif;font-size:36px}.customer-stats span{color:#6d776f;font-size:13px}.customer-card{padding:28px;border:1px solid #d9dbd1;border-radius:18px;background:#fff;box-shadow:0 10px 35px rgba(27,51,40,.04)}.customer-card h2{margin:0 0 20px;font-family:Georgia,serif;font-size:28px;font-weight:500}.customer-section-heading p{margin:0;color:#79922f;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.customer-reservation-card{display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid #e3e4dc;color:#173c2e;text-decoration:none}.customer-reservation-card:last-child{border-bottom:0}.customer-reservation-card h3{margin:9px 0 7px;font-family:Georgia,serif;font-size:24px;font-weight:500}.customer-reservation-card p,.customer-reservation-card aside small{margin:0;color:#727b75;font-size:13px}.customer-reservation-card aside{display:grid;align-content:center;justify-items:end;gap:7px;text-align:right}.reservation-status{display:inline-block;padding:5px 9px;border-radius:999px;background:#eef1e3;color:#628125;font-size:10px;font-weight:800;text-transform:uppercase}.status-cancelled,.status-failed{background:#f5e8e3;color:#9d4d38}.status-confirmed{background:#e2f1e8;color:#27734a}.customer-empty{padding:28px 0;text-align:center;color:#69736d}.customer-empty h3{color:#173c2e}.customer-empty a{display:inline-block;margin-top:10px;color:#70902d}.customer-profile-form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.customer-profile-form label,.customer-cancel-box label{display:grid;gap:8px;color:#526059;font-size:12px;font-weight:700}.customer-profile-form input,.customer-cancel-box textarea{box-sizing:border-box;width:100%;padding:13px;border:1px solid #d2d6ca;border-radius:9px;background:#fbfbf8;color:#173c2e;font:inherit}.customer-profile-form label small{color:#899088;font-weight:400}.customer-profile-form .span-2{grid-column:1/-1}.customer-profile-form button{grid-column:1/-1;width:max-content}.customer-success{margin-bottom:20px;padding:15px 18px;border:1px solid #bbd19d;border-radius:12px;background:#edf5e3;color:#46691d}.customer-message-list details{border-bottom:1px solid #e0e2d8}.customer-message-list summary{display:flex;justify-content:space-between;gap:20px;padding:20px 0;cursor:pointer;list-style:none}.customer-message-list summary span{display:grid;gap:5px}.customer-message-list summary small{color:#7a837f}.customer-message-list details>div{padding:0 0 24px;color:#505d55;line-height:1.6}.customer-message-list details>div a{display:block;margin-top:16px;color:#668529}.customer-detail-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:20px}.customer-details{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0}.customer-details div{padding:15px 0;border-bottom:1px solid #e4e5de}.customer-details dt{color:#7b847f;font-size:11px;text-transform:uppercase}.customer-details dd{margin:5px 0 0;font-weight:700}.customer-back{display:inline-block;margin-bottom:28px;color:#65726a;text-decoration:none}.customer-cancel-box{margin-top:20px;padding-top:18px;border-top:1px solid #e0e2d9}.customer-cancel-box summary{color:#9b4434;font-weight:700;cursor:pointer}.customer-cancel-box form{display:grid;gap:15px;margin-top:18px}.customer-cancel-box .cancel-confirm{display:flex;grid-template-columns:auto 1fr;align-items:flex-start}.customer-cancel-box button{padding:13px;border:0;border-radius:9px;background:#9b4434;color:#fff;font-weight:700;cursor:pointer}.customer-cancelled-note{padding:12px;border-radius:10px;background:#f5e8e3;color:#9d4d38}@media(max-width:900px){.customer-panel-shell{grid-template-columns:1fr}.customer-sidebar{padding:14px;border-right:0;border-bottom:1px solid #d8d9cf;overflow-x:auto}.customer-sidebar>p,.customer-search-link{display:none}.customer-sidebar nav{display:flex;width:max-content}.customer-content{padding:38px 20px 70px}.customer-detail-grid{grid-template-columns:1fr}}@media(max-width:620px){.customer-topbar{padding:0 16px}.customer-topbar>div>span{display:none}.customer-stats{grid-template-columns:1fr}.customer-profile-form,.customer-details{grid-template-columns:1fr}.customer-profile-form .span-2{grid-column:auto}.customer-reservation-card{display:grid}.customer-reservation-card aside{justify-items:start;text-align:left}}
.customer-password-card{margin-top:22px}.customer-password-success{margin-top:22px;margin-bottom:-2px}
.registration-shell{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:64px 0 100px;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.85fr);gap:clamp(45px,8vw,110px);align-items:start}.registration-intro{position:sticky;top:60px;padding-top:22px}.registration-intro>p,.registration-card>p,.verification-card>p{margin:0 0 10px;color:#78972e;font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.registration-intro h1{max-width:620px;margin:0 0 20px;color:var(--forest);font-family:Georgia,serif;font-size:clamp(44px,5.5vw,68px);font-weight:400;letter-spacing:-2px;line-height:1}.registration-intro>span{display:block;max-width:540px;color:#66736b;font-size:13px;line-height:1.7}.registration-intro>a{display:inline-block;margin-top:30px;color:#668a24;font-size:12px;font-weight:750}.registration-card{padding:36px}.registration-card h2{margin:0 0 27px;color:var(--forest);font-family:Georgia,serif;font-size:31px;font-weight:400}.registration-form{display:grid;grid-template-columns:1fr 1fr;gap:17px 14px}.registration-form label{display:grid;gap:7px;color:#536158;font-size:10px;font-weight:750}.registration-form input{box-sizing:border-box;width:100%;height:47px;padding:0 13px;border:1px solid #d3d7cd;border-radius:8px;background:#fbfbf8;color:#173c2e;font:inherit;outline:0}.registration-form input:focus{border-color:#7d9f35;box-shadow:0 0 0 3px rgba(125,159,53,.12)}.registration-form label small{color:#838d86;font-weight:400;line-height:1.45}.registration-form .span-2{grid-column:1/-1}.entity-switch{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:4px;border-radius:10px;background:#eeeee7}.entity-switch label{cursor:pointer}.entity-switch input{position:absolute;opacity:0}.entity-switch span{padding:11px;text-align:center;border-radius:7px;color:#68736c}.entity-switch input:checked+span{background:white;color:var(--forest);box-shadow:0 2px 10px rgba(0,0,0,.06)}.verification-shell{display:grid;min-height:calc(100vh - 73px);padding:40px 20px;place-items:center}.verification-card{width:min(520px,100%);box-sizing:border-box;padding:45px;text-align:center}.verification-card>span{display:grid;width:58px;height:58px;margin:0 auto 20px;place-items:center;border-radius:50%;background:#e8eedc;color:#6f9228;font-size:25px}.verification-card h1{margin:0 0 16px;color:var(--forest);font-family:Georgia,serif;font-size:40px;font-weight:400}.verification-card>div{color:#69756e;font-size:12px;line-height:1.7}.verification-card form{margin-top:22px}.verification-card .customer-success{margin:20px 0 0}@media(max-width:850px){.registration-shell{grid-template-columns:1fr;gap:34px;padding-top:40px}.registration-intro{position:static;padding:0}.registration-intro h1{font-size:44px}}@media(max-width:560px){.registration-shell{width:calc(100% - 28px)}.registration-card{padding:23px}.registration-form{grid-template-columns:1fr}.registration-form .span-2{grid-column:auto}.verification-card{padding:30px 22px}}
.landlord-title-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.landlord-title-actions>div{max-width:760px}.landlord-title-actions>a{flex:none;text-decoration:none}.landlord-property-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.landlord-property-card{display:block;color:#173c2e;text-decoration:none}.landlord-property-card h2{margin:16px 0 8px}.landlord-property-card p{margin:0;color:#6d776f}.landlord-property-card>div{display:flex;gap:18px;margin-top:22px;padding-top:16px;border-top:1px solid #e2e4db;color:#758078;font-size:12px}.landlord-property-form{display:grid;gap:22px}.landlord-property-form textarea,.landlord-property-form select{box-sizing:border-box;width:100%;padding:13px;border:1px solid #d2d6ca;border-radius:9px;background:#fbfbf8;color:#173c2e;font:inherit}.landlord-property-form textarea{resize:vertical;line-height:1.5}.landlord-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.landlord-check-grid label{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid #dde0d6;border-radius:10px;background:#fbfbf8;color:#435249;font-size:13px}.landlord-check-grid input{margin-top:1px;accent-color:#7fa51f}.landlord-policy-fields{margin-top:22px}.landlord-form-note{margin:20px 0 0;color:#78827b;font-size:12px}.landlord-sticky-save{position:sticky;bottom:18px;display:flex;justify-content:flex-end;padding:14px;border:1px solid #d9dbd1;border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 12px 35px rgba(24,51,39,.12);backdrop-filter:blur(10px)}@media(max-width:900px){.landlord-property-grid{grid-template-columns:1fr}.landlord-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.landlord-title-actions{display:grid;align-items:start}.landlord-check-grid{grid-template-columns:1fr}}
.landlord-repeat-list{display:grid;gap:10px;margin:22px 0 14px}.landlord-repeat-row{display:grid;grid-template-columns:repeat(3,1fr) 40px;gap:10px;align-items:end;padding:14px;border:1px solid #dde0d6;border-radius:12px;background:#fbfbf8}.landlord-repeat-row.nearby-row{grid-template-columns:1fr 1.5fr .7fr .6fr 40px}.landlord-repeat-row label{display:grid;gap:7px;color:#536158;font-size:11px;font-weight:700}.landlord-repeat-row input{box-sizing:border-box;width:100%;padding:12px;border:1px solid #d2d6ca;border-radius:8px;background:#fff;color:#173c2e}.landlord-repeat-row>button{height:43px;border:0;border-radius:8px;background:#f3e6e2;color:#9b4434;font-size:20px;cursor:pointer}.landlord-secondary{padding:11px 14px;border:1px solid #bfcaa7;border-radius:9px;background:#f6f8ef;color:#668429;font-weight:700;cursor:pointer}.landlord-meal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:22px}.landlord-meal-grid>label{display:grid;grid-template-columns:1fr 130px;gap:14px;align-items:center;padding:14px;border:1px solid #dde0d6;border-radius:10px;background:#fbfbf8}.landlord-meal-grid span{display:flex;gap:9px;align-items:center;font-size:12px;font-weight:700}.landlord-meal-grid input[type=number]{box-sizing:border-box;width:100%;padding:11px;border:1px solid #d2d6ca;border-radius:8px}@media(max-width:900px){.landlord-repeat-row,.landlord-repeat-row.nearby-row{grid-template-columns:1fr 1fr}.landlord-repeat-row>button{grid-column:2}.landlord-meal-grid{grid-template-columns:1fr}}@media(max-width:620px){.landlord-repeat-row,.landlord-repeat-row.nearby-row{grid-template-columns:1fr}.landlord-repeat-row>button{grid-column:auto}}
.landlord-map-button{margin-top:20px}.landlord-property-map{height:390px;margin-top:16px;border:1px solid #d9ddd2;border-radius:14px;background:#ecefe8}.landlord-media-section{margin-top:22px}.landlord-media-upload{display:grid;grid-template-columns:1.4fr .7fr 1fr auto;gap:12px;align-items:end}.landlord-media-upload label{display:grid;gap:7px;color:#536158;font-size:11px;font-weight:700}.landlord-media-upload input,.landlord-media-upload select{box-sizing:border-box;width:100%;min-height:43px;padding:10px;border:1px solid #d2d6ca;border-radius:8px;background:#fbfbf8}.landlord-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}.landlord-media-grid article{overflow:hidden;border:1px solid #dde0d6;border-radius:12px;background:#fbfbf8}.landlord-media-grid img{display:block;width:100%;height:170px;object-fit:cover}.landlord-media-grid article>div{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px}.landlord-media-grid article span{margin-right:auto;color:#68736c;font-size:10px;font-weight:800;text-transform:uppercase}.landlord-media-grid form{margin:0}.landlord-media-grid button{padding:7px 9px;border:0;border-radius:7px;background:#e9eee0;color:#5c7828;font-size:10px;cursor:pointer}.landlord-media-grid button.danger{background:#f3e6e2;color:#98483a}@media(max-width:1000px){.landlord-media-upload{grid-template-columns:1fr 1fr}.landlord-media-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.landlord-media-upload,.landlord-media-grid{grid-template-columns:1fr}.landlord-property-map{height:300px}}
.landlord-context-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin:-14px 0 24px;color:#737f77;font-size:12px}.landlord-context-actions a{text-decoration:none}.stay-discount-row{grid-template-columns:repeat(4,1fr) 40px}@media(max-width:900px){.stay-discount-row{grid-template-columns:1fr 1fr}.stay-discount-row>button{grid-column:2}}@media(max-width:620px){.stay-discount-row{grid-template-columns:1fr}.stay-discount-row>button{grid-column:auto}}
.landlord-space-layout{display:grid;gap:14px;margin-top:18px}.landlord-space-layout article{padding:18px;border:1px solid #dde0d6;border-radius:12px;background:#fbfbf8}.landlord-space-layout h3{margin:0 0 14px;font-family:Georgia,serif;font-size:21px;font-weight:500}.landlord-space-layout article>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.landlord-space-layout label{display:grid;grid-template-columns:1fr 58px;gap:8px;align-items:center;padding:8px 10px;border-radius:8px;background:#fff;color:#59655e;font-size:10px}.landlord-space-layout input[type=number]{box-sizing:border-box;width:100%;padding:7px;border:1px solid #d5d9cf;border-radius:6px}@media(max-width:800px){.landlord-space-layout article>div{grid-template-columns:1fr 1fr}}@media(max-width:520px){.landlord-space-layout article>div{grid-template-columns:1fr}}
.landlord-calendar-layout{display:grid;grid-template-columns:minmax(580px,1.5fr) minmax(310px,.7fr);gap:20px;align-items:start}.landlord-calendar-card{min-width:0}.landlord-calendar-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.landlord-calendar-nav strong{font-family:Georgia,serif;font-size:27px;text-transform:capitalize}.landlord-calendar-nav button{width:40px;height:40px;border:1px solid #d5d9cf;border-radius:50%;background:#fafbf7;color:#476054;cursor:pointer}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar-weekdays span{padding:7px;text-align:center;color:#7b847e;font-size:9px;font-weight:800;text-transform:uppercase}.calendar-days>button{display:grid;min-height:76px;padding:7px;border:1px solid #e0e3db;border-radius:9px;background:#f5eee9;color:#79584d;text-align:left;cursor:pointer}.calendar-days>button.available{background:#f2f6e9;color:#47652e}.calendar-days>button.selected{border-color:#72952c;box-shadow:inset 0 0 0 2px #83a53b}.calendar-days b{font-size:13px}.calendar-days small{font-size:9px}.calendar-days em{align-self:end;font-size:9px;font-style:normal;font-weight:800}.calendar-legend{display:flex;gap:20px;margin-top:18px;color:#69746d;font-size:10px}.calendar-legend span:before{display:inline-block;width:9px;height:9px;margin-right:6px;border-radius:50%;background:#e6cfc5;content:""}.calendar-legend .available:before{background:#b8ce87}.landlord-calendar-editor{position:sticky;top:20px}.landlord-calendar-editor fieldset{display:grid;gap:8px;margin:20px 0;padding:15px;border:1px solid #dde0d6;border-radius:10px}.landlord-calendar-editor legend{padding:0 6px;color:#536159;font-size:11px;font-weight:700}.landlord-calendar-editor fieldset label{font-size:12px}.landlord-calendar-editor form>p{color:#77817a;font-size:10px;line-height:1.5}.landlord-calendar-editor button{width:100%;margin-top:8px}@media(max-width:1050px){.landlord-calendar-layout{grid-template-columns:1fr}.landlord-calendar-editor{position:static}}@media(max-width:680px){.calendar-days>button{min-height:58px;padding:4px}.calendar-days small,.calendar-days em{display:none}.landlord-calendar-card{padding:14px}}
.landlord-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.landlord-service-grid article{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:18px;border:1px solid #dde0d6;border-radius:12px;background:#fbfbf8}.landlord-service-grid label{display:grid;gap:7px;color:#536158;font-size:11px;font-weight:700}.landlord-service-grid .service-enable{display:flex;grid-column:1/-1;gap:9px;align-items:center}.landlord-service-grid input,.landlord-service-grid select{box-sizing:border-box;width:100%;padding:11px;border:1px solid #d2d6ca;border-radius:8px;background:#fff}.landlord-completeness{margin-bottom:22px}.landlord-completeness>div:first-child{display:flex;align-items:center;justify-content:space-between}.landlord-completeness ul{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0;padding:0;list-style:none}.landlord-completeness li{display:flex;gap:8px;align-items:center;padding:9px;border-radius:8px;background:#f4f7ed;color:#526b36;font-size:11px}.landlord-completeness li.missing{background:#f7ece7;color:#8a5545}.landlord-completeness form{margin:0}.landlord-completeness button:disabled{cursor:not-allowed;filter:grayscale(1);opacity:.55}@media(max-width:760px){.landlord-service-grid,.landlord-completeness ul{grid-template-columns:1fr}}
.reservation-status.status-expired{background:#ece8e2;color:#6d6257}.reservation-status.status-no_show{background:#f3dfd8;color:#8a4439}.reservation-status.status-pending_review{background:#fff1ca;color:#765b13}.reservation-status.status-confirmed,.reservation-status.status-checked_in,.reservation-status.status-completed{background:#e9f1d9;color:#4d6925}.reservation-status.status-rejected{background:#ece8e2;color:#6d6257}
.calendar-unit-filter{display:flex;align-items:end;margin-bottom:18px}.calendar-unit-filter label{display:grid;gap:7px;min-width:min(100%,360px);color:#536159;font-size:11px;font-weight:700}.calendar-unit-filter select{padding:11px;border:1px solid #d2d6ca;border-radius:8px;background:#fff}.calendar-days>button.reserved{background:#fff0ce;color:#806117}.calendar-legend .reserved:before{background:#e4bd5f}.calendar-unit-actions{display:flex;gap:7px;margin-bottom:5px}.calendar-unit-actions button{width:auto;margin:0;padding:6px 9px;border:1px solid #d3d8cc;border-radius:6px;background:#fff;color:#536159;font-size:9px}
.landlord-report-filters{display:grid;grid-template-columns:1fr 1fr 1.4fr auto auto;gap:12px;align-items:end;margin-bottom:20px}.landlord-report-filters label{display:grid;gap:7px;color:#536159;font-size:10px;font-weight:700}.landlord-report-filters input,.landlord-report-filters select{box-sizing:border-box;width:100%;min-height:43px;padding:10px;border:1px solid #d2d6ca;border-radius:8px;background:#fbfbf8}.landlord-report-filters>a{text-align:center;text-decoration:none}.landlord-report-stats{margin-bottom:20px}.landlord-report-stats article{padding:20px;border:1px solid #e0e2d8;border-radius:12px;background:#fff}.landlord-status-summary{margin-bottom:20px}.landlord-status-summary>div{display:flex;flex-wrap:wrap;gap:9px}.landlord-report-table table{width:100%;border-collapse:collapse}.landlord-report-table th,.landlord-report-table td{padding:12px 10px;border-bottom:1px solid #e4e5dd;text-align:left;font-size:11px}.landlord-report-table th{color:#727d76;font-size:9px;text-transform:uppercase}.landlord-report-table a{font-weight:700}.table-scroll{overflow-x:auto}@media(max-width:850px){.landlord-report-filters{grid-template-columns:1fr 1fr}.landlord-report-filters label:nth-child(3){grid-column:1/-1}}@media(max-width:520px){.landlord-report-filters{grid-template-columns:1fr}.landlord-report-filters label:nth-child(3){grid-column:auto}}
.landlord-review-filters{display:grid;grid-template-columns:1.5fr 1fr 1fr auto auto;gap:12px;align-items:end;margin-bottom:20px}.landlord-review-filters label{display:grid;gap:7px;color:#536159;font-size:10px;font-weight:700}.landlord-review-filters select{min-height:43px;padding:10px;border:1px solid #d2d6ca;border-radius:8px;background:#fff}.landlord-review-filters>a{align-self:center}.landlord-review-list{display:grid;gap:18px}.landlord-review-card header{display:flex;align-items:start;justify-content:space-between;gap:18px}.landlord-review-card header span{color:#768078;font-size:10px}.landlord-review-card h2{margin:5px 0 0;font-family:Georgia,serif}.landlord-review-card header>strong{display:grid;place-items:center;min-width:54px;height:54px;border-radius:50%;background:#789b2f;color:#fff;font-size:17px}.landlord-review-card blockquote{margin:18px 0;padding:15px 18px;border-left:3px solid #819f3b;background:#f8f8f3}.review-score-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.review-score-list span{padding:6px 9px;border-radius:12px;background:#eff2e7;color:#536159;font-size:9px}.landlord-review-card form{display:grid;gap:9px}.landlord-review-card form label{display:grid;gap:7px;color:#536159;font-size:10px;font-weight:700}.landlord-review-card textarea{box-sizing:border-box;width:100%;min-height:100px;padding:12px;border:1px solid #d3d7cd;border-radius:8px;resize:vertical}.landlord-review-card form small{color:#7b847e}.landlord-review-card form button{justify-self:start}.review-landlord-response{margin-top:14px;padding:13px 15px;border-radius:9px;background:#eff3e7}.review-landlord-response strong{font-size:10px}.review-landlord-response p{margin:6px 0 0}@media(max-width:720px){.landlord-review-filters{grid-template-columns:1fr 1fr}.landlord-review-filters label:first-child{grid-column:1/-1}}@media(max-width:480px){.landlord-review-filters{grid-template-columns:1fr}.landlord-review-filters label:first-child{grid-column:auto}}
.reservation-status.status-paused_by_landlord,.reservation-status.status-inactive{background:#fff0ce;color:#806117}
.admin-incident-list{display:grid;gap:18px}.admin-incident-card header{display:flex;justify-content:space-between;gap:18px;align-items:start}.admin-incident-card header span{color:#778079;font-size:11px}.admin-incident-card h2{margin:5px 0 0;font-family:Georgia,serif;font-size:25px}.admin-incident-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.admin-incident-card dl div{padding:10px;border-radius:8px;background:#f5f5ef}.admin-incident-card dt{color:#778079;font-size:9px;text-transform:uppercase}.admin-incident-card dd{margin:4px 0 0;font-weight:700}.admin-incident-card blockquote{margin:15px 0;padding:14px 18px;border-left:3px solid #819f3b;background:#f8f8f4}.admin-incident-card form{display:grid;gap:10px}.admin-incident-card textarea{box-sizing:border-box;width:100%;min-height:85px;padding:11px;border:1px solid #d4d8cf;border-radius:8px}.admin-incident-card form div{display:flex;gap:10px}.admin-incident-card .cancel-confirm{padding:11px 18px;border:0;border-radius:8px;background:#8f493e;color:#fff;font-weight:700}@media(max-width:650px){.admin-incident-card dl{grid-template-columns:1fr}.admin-incident-card form div{align-items:stretch;flex-direction:column}}
.landlord-reservation-filters{display:grid;grid-template-columns:1.4fr repeat(3,1fr) auto auto;gap:12px;align-items:end;margin-bottom:20px}.landlord-reservation-filters label{display:grid;gap:7px;color:#536159;font-size:10px;font-weight:700}.landlord-reservation-filters input,.landlord-reservation-filters select{box-sizing:border-box;width:100%;min-height:43px;padding:10px;border:1px solid #d2d6ca;border-radius:8px;background:#fbfbf8}.landlord-reservation-filters>a{align-self:center;color:#748079;font-size:10px}.payment-declared{padding:4px 7px;border-radius:7px;background:#edf1df;color:#607d25}.landlord-decision-deadline{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;margin-bottom:20px;padding:16px 18px;border:1px solid #cbdba9;border-radius:12px;background:#f0f5e6;color:#466224}.landlord-decision-deadline small{grid-column:1/-1}.landlord-decision-deadline.expired{border-color:#ddafa5;background:#f8eae6;color:#8f4538}.landlord-guest-history,.landlord-payment-card,.landlord-decision-card{margin-bottom:20px}.landlord-guest-history dl,.landlord-payment-card dl{display:grid;gap:0;margin:0}.landlord-guest-history dl div,.landlord-payment-card dl div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #e3e5dc}.landlord-guest-history dt,.landlord-payment-card dt{color:#748079;font-size:10px;text-transform:uppercase}.landlord-guest-history dd,.landlord-payment-card dd{margin:0;font-weight:700}.landlord-guest-history p,.landlord-payment-card small{display:block;margin:15px 0 0;color:#7a847d;font-size:10px;line-height:1.5}.landlord-payment-card>a{display:inline-block;margin-top:18px;text-decoration:none}.landlord-decision-card form{display:grid;gap:10px;margin-top:12px}.landlord-decision-card textarea{box-sizing:border-box;width:100%;min-height:90px;padding:11px;border:1px solid #d5d8cf;border-radius:8px;resize:vertical}.landlord-decision-card .cancel-confirm{padding:11px;border:0;border-radius:8px;background:#9b493c;color:#fff;font-weight:700}@media(max-width:1100px){.landlord-reservation-filters{grid-template-columns:1fr 1fr 1fr}}@media(max-width:680px){.landlord-reservation-filters{grid-template-columns:1fr}}
.landlord-reservation-timeline{display:grid}.landlord-reservation-timeline article{position:relative;display:grid;grid-template-columns:18px 1fr;gap:12px;padding-bottom:22px}.landlord-reservation-timeline article:not(:last-child):before{position:absolute;top:13px;bottom:-1px;left:6px;width:1px;background:#dce2cf;content:""}.landlord-reservation-timeline article>span{position:relative;z-index:1;width:11px;height:11px;margin-top:3px;border:3px solid #fff;border-radius:50%;background:#789b2f;box-shadow:0 0 0 1px #aebd8d}.landlord-reservation-timeline article>div{display:grid;grid-template-columns:1fr auto;gap:5px 16px}.landlord-reservation-timeline time{color:#748079;font-size:10px}.landlord-reservation-timeline small{color:#65736a;font-size:10px}.landlord-reservation-timeline p{grid-column:1/-1;margin:3px 0 0;color:#59665e;font-size:11px;line-height:1.5}@media(max-width:520px){.landlord-reservation-timeline article>div{grid-template-columns:1fr}.landlord-reservation-timeline time{grid-row:2}}
.landlord-payment-history{margin-top:20px;border-top:1px solid #e3e5dc}.landlord-payment-history summary{padding:17px 0;color:#536159;font-size:11px;font-weight:750;cursor:pointer}.landlord-payment-history .landlord-reservation-timeline{padding-top:5px}
.landlord-device-section{margin-top:22px}.landlord-device-section>.landlord-form-note{margin-top:-4px}.landlord-device-list{display:grid;gap:10px;margin-top:20px}.landlord-device-list article{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px;border:1px solid #dde0d6;border-radius:11px;background:#fbfbf8}.landlord-device-list article>div{display:grid;gap:4px}.landlord-device-list strong{color:#173c2e;font-size:14px}.landlord-device-list span,.landlord-device-list small,.landlord-device-empty{color:#748079;font-size:10px}.landlord-device-list form{margin:0}.landlord-device-list .cancel-confirm{padding:10px 13px;border:0;border-radius:8px;background:#f3e6e2;color:#98483a;font-size:10px;font-weight:750;cursor:pointer}@media(max-width:620px){.landlord-device-list article{align-items:stretch;flex-direction:column}.landlord-device-list .cancel-confirm{width:100%}}
.landlord-listing-alert{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr) auto;gap:26px;align-items:center;margin-bottom:24px;border-color:#dfc79d;background:#fffaf0}.landlord-listing-alert p{margin:0 0 6px;color:#9b7028;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.landlord-listing-alert h2{margin-bottom:7px}.landlord-listing-alert span{color:#6f756e;font-size:12px;line-height:1.5}.landlord-listing-alert ul{display:grid;gap:7px;margin:0;padding:0;list-style:none;color:#6f5a37;font-size:11px}.landlord-listing-alert li{display:flex;gap:7px;align-items:center}.landlord-listing-alert li strong{display:grid;place-items:center;min-width:24px;height:24px;border-radius:50%;background:#f0dfbf;color:#76551f}.landlord-listing-alert>a{white-space:nowrap;text-decoration:none}@media(max-width:900px){.landlord-listing-alert{grid-template-columns:1fr}.landlord-listing-alert>a{width:max-content}}@media(max-width:520px){.landlord-listing-alert>a{box-sizing:border-box;width:100%;text-align:center}}
.landlord-decision-filter{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:16px;padding:12px 16px;border:1px solid #cbdba9;border-radius:10px;background:#f0f5e6;color:#466224;font-size:11px}.landlord-decision-filter.expired{border-color:#ddafa5;background:#f8eae6;color:#8f4538}.landlord-decision-filter a{color:inherit;font-weight:750}
.customer-reservation-card .decision-due{color:#607a2e;font-weight:750}.customer-reservation-card .decision-due.expired{color:#9a4b3e}.customer-reservation-card .customer-reliability-warning{max-width:190px;padding:4px 7px;border-radius:7px;background:#f8e5df;color:#923f32;font-weight:750;line-height:1.35}
.landlord-list-cover{display:grid;place-items:center;width:100%;height:170px;margin:0 0 16px;overflow:hidden;border-radius:10px;background:#e8ecdf;color:#6e7d70}.landlord-list-cover img{width:100%;height:100%;object-fit:cover}.landlord-list-cover span{font-size:42px;line-height:1}.landlord-list-cover small{margin-top:-45px;font-size:11px;font-weight:700}
.landlord-property-form label.conditional-disabled{opacity:.52}.landlord-property-form :disabled{cursor:not-allowed}
.landlord-assigned-unit{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 18px;padding:14px 0;border-bottom:1px solid #e3e5dc}.landlord-assigned-unit b{color:#173c2e}.landlord-assigned-unit span{color:#536159;font-size:11px;font-weight:700}.landlord-assigned-unit small{grid-column:1/-1;color:#748079;font-size:10px}@media(max-width:560px){.landlord-assigned-unit{grid-template-columns:1fr}.landlord-assigned-unit small{grid-column:auto}}
.calendar-separate-actions{display:grid;gap:12px;margin-top:18px}.calendar-separate-actions>label{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px;align-items:end;padding:14px;border:1px solid #dde0d6;border-radius:10px;color:#536159;font-size:10px;font-weight:750}.calendar-separate-actions>label>select,.calendar-separate-actions>label>input{grid-column:1;box-sizing:border-box;width:100%;min-height:42px;padding:10px;border:1px solid #d2d6ca;border-radius:8px;background:#fff}.landlord-calendar-editor .calendar-separate-actions button{grid-column:2;grid-row:1/3;width:auto;min-height:42px;margin:0;align-self:end}@media(max-width:480px){.calendar-separate-actions>label{grid-template-columns:1fr}.landlord-calendar-editor .calendar-separate-actions button{grid-column:1;grid-row:auto;width:100%}}
.landlord-pickup-request{margin:20px 0;border-color:#c9d8a9;background:#f7faef}.landlord-pickup-request>p{color:#647069;font-size:11px;line-height:1.55}.landlord-pickup-request .customer-details{margin-top:14px}
.landlord-calendar-card .calendar-days>button.available{border-color:#4f842f;background:#fff;color:#397020}.landlord-calendar-card .calendar-days>button.reserved{border-color:#a94808;background:#b9500b;color:#fff}.landlord-calendar-card .calendar-days>button.closed{border-color:#7f211d;background:#8f2823;color:#fff}.landlord-calendar-card .calendar-days>button.selected{box-shadow:inset 0 0 0 2px currentColor,0 0 0 2px #d4b85d}.landlord-calendar-card .calendar-legend .available:before{background:#fff;border:1px solid #4f842f}.landlord-calendar-card .calendar-legend .reserved:before{background:#b9500b}.landlord-calendar-card .calendar-legend .closed:before{background:#8f2823}
.brand-mark,.results-brand>svg{box-sizing:border-box;background:center/contain no-repeat url('/assets/brand/house.svg')}.brand-mark path,.brand-mark circle,.results-brand>svg path,.results-brand>svg circle{display:none}.brand-mark{filter:brightness(0) invert(1)}.checkout-brand{font-size:0;text-decoration:none}.checkout-brand:before{display:block;width:34px;height:34px;background:center/contain no-repeat url('/assets/brand/house.svg');content:""}.checkout-brand span{font-size:22px}.customer-topbar .checkout-brand:before{width:36px;height:36px}
.news-page{margin:0;background:#f4f1e8;color:#173c2e;font-family:Arial,sans-serif}.news-header nav a.active{color:#789f28}.news-main{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:72px 0 100px}.news-intro{max-width:760px;margin-bottom:42px}.news-intro p{margin:0 0 10px;color:#78972e;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.news-intro h1{margin:0;font-family:Georgia,serif;font-size:clamp(44px,7vw,76px);font-weight:400;letter-spacing:-2px}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.news-card{overflow:hidden;border:1px solid #daddd2;border-radius:17px;background:#fffdf9;box-shadow:0 12px 35px rgba(26,54,40,.06)}.news-card-image{display:grid;height:220px;place-items:center;overflow:hidden;background:#dfe7d3;color:#648226;font-family:Georgia,serif;font-size:24px}.news-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.news-card:hover .news-card-image img{transform:scale(1.035)}.news-card>div{padding:23px}.news-card time,.news-article time{color:#7d9b39;font-size:10px;font-weight:800;letter-spacing:.08em}.news-card h2{margin:10px 0 12px;font-family:Georgia,serif;font-size:25px;font-weight:400;line-height:1.12}.news-card h2 a{color:inherit;text-decoration:none}.news-card p{margin:0 0 18px;color:#657168;font-size:12px;line-height:1.65}.news-read-more{color:#668526;font-size:11px;font-weight:800;text-decoration:none}.news-main .catalog-pagination{margin-top:40px}.news-article-main{width:min(900px,calc(100% - 48px));margin:0 auto;padding:65px 0 110px}.news-article{overflow:hidden;border:1px solid #dcddd4;border-radius:20px;background:#fffdf9;box-shadow:0 16px 48px rgba(24,50,37,.06)}.news-article>header{padding:clamp(28px,6vw,64px) clamp(24px,8vw,80px) 35px}.news-article h1{max-width:760px;margin:13px 0 0;font-family:Georgia,serif;font-size:clamp(36px,6vw,61px);font-weight:400;line-height:1.04;letter-spacing:-1.5px}.news-article-cover{display:block;width:100%;max-height:520px;object-fit:cover}.news-content{padding:45px clamp(24px,8vw,80px);color:#46584e;font-size:15px;line-height:1.82}.news-content h2,.news-content h3,.news-content h4{margin:1.7em 0 .65em;color:#173c2e;font-family:Georgia,serif;font-weight:400;line-height:1.2}.news-content h2{font-size:32px}.news-content h3{font-size:25px}.news-content img{max-width:100%;height:auto}.news-content a,.news-article>footer a{color:#668626}.news-article>footer{padding:0 clamp(24px,8vw,80px) 48px}.news-video{position:relative;padding-top:56.25%;background:#111}.news-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}@media(max-width:900px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.news-main,.news-article-main{width:calc(100% - 24px);padding-top:38px}.news-grid{grid-template-columns:1fr}.news-card-image{height:210px}.news-header nav{display:none}.news-article{border-radius:14px}.news-content{font-size:14px}}
.site-footer{position:relative;z-index:2;background:#123528;color:#dce5dd;font-family:Arial,sans-serif}.site-footer-main{box-sizing:border-box;display:grid;grid-template-columns:minmax(250px,1.45fr) repeat(3,minmax(145px,1fr));gap:clamp(28px,5vw,74px);width:min(1240px,calc(100% - 48px));margin:0 auto;padding:68px 0 54px}.site-footer h2{margin:5px 0 22px;color:#fff;font-family:Arial,sans-serif;font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.site-footer nav,.site-footer-contact{display:flex;align-items:flex-start;flex-direction:column}.site-footer nav>a,.site-footer-contact>a{margin:0 0 12px;color:#b9c8be;font-size:12px;text-decoration:none;transition:color .2s}.site-footer nav>a:hover,.site-footer-contact>a:hover{color:#a6ca56}.site-footer-brand>a{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none}.site-footer-brand>a img{width:42px;height:42px;filter:brightness(0) invert(1)}.site-footer-brand>a span{font-size:25px;font-weight:800;line-height:.75}.site-footer-brand>a small{display:block;margin-top:8px;color:#9fbd5c;font-size:8px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.site-footer-brand>p{max-width:330px;margin:23px 0;color:#aebfb4;font-size:12px;line-height:1.7}.site-footer-social{display:flex;gap:9px}.site-footer-social a{display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(255,255,255,.17);border-radius:50%;color:#fff;font-size:13px;text-decoration:none}.site-footer-social a:hover{border-color:#91b43f;background:#789f28}.site-footer-bottom{box-sizing:border-box;display:flex;justify-content:space-between;gap:20px;width:min(1240px,calc(100% - 48px));margin:0 auto;padding:22px 0 28px;border-top:1px solid rgba(255,255,255,.12);color:#83978b;font-size:10px}.site-footer-bottom a{color:#a7bbad;text-decoration:none}.customer-panel-page>.site-footer{margin-left:250px}@media(max-width:900px){.site-footer-main{grid-template-columns:1.4fr 1fr 1fr}.site-footer-contact{grid-column:2/4}.customer-panel-page>.site-footer{margin-left:0}}@media(max-width:620px){.site-footer-main{grid-template-columns:1fr 1fr;width:calc(100% - 32px);padding:48px 0 35px}.site-footer-brand{grid-column:1/-1}.site-footer-contact{grid-column:1/-1}.site-footer-bottom{width:calc(100% - 32px);flex-direction:column}.site-footer-brand>p{max-width:none}}
.admin-list-filters{display:flex;gap:10px;align-items:center;margin-bottom:18px}.admin-list-filters input,.admin-list-filters select{box-sizing:border-box;min-width:240px;min-height:43px;padding:10px 12px;border:1px solid #d2d6ca;border-radius:8px;background:#fff}.admin-list-filters .checkout-primary{min-height:43px;margin:0}.admin-list-filters>a{color:#748079;font-size:10px}.admin-table-card{padding:0;overflow:hidden}.admin-data-table{width:100%;border-collapse:collapse}.admin-data-table th,.admin-data-table td{padding:13px 14px;border-bottom:1px solid #e2e4dc;text-align:left;vertical-align:middle}.admin-data-table th{background:#f5f5ef;color:#6e7972;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.admin-data-table td{color:#425248;font-size:11px}.admin-data-table td>strong,.admin-data-table td>small{display:block}.admin-data-table td>small{margin-top:4px;color:#7b857e}.admin-inline-action{padding:8px 10px;border:1px solid #789b37;border-radius:7px;background:#f3f7e9;color:#56711f;font-size:9px;font-weight:750;cursor:pointer}.admin-access-result{display:grid;grid-template-columns:1fr auto;gap:8px 15px;margin-bottom:20px}.admin-access-result strong{grid-column:1/-1}.admin-access-result input{min-width:0;padding:9px;border:1px solid #bdd08e;border-radius:7px;background:#fff}.admin-access-result a{align-self:center;color:#56711f;font-weight:750}.admin-reservation-filters input{flex:1}@media(max-width:700px){.admin-list-filters{align-items:stretch;flex-direction:column}.admin-list-filters input,.admin-list-filters select{width:100%;min-width:0}.admin-access-result{grid-template-columns:1fr}}
.admin-title-actions{display:flex;align-items:end;justify-content:space-between;gap:20px}.admin-title-actions .checkout-primary{margin-bottom:5px;text-decoration:none}.admin-content-form{display:grid;gap:20px}.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-form-grid label{display:grid;gap:7px;color:#536159;font-size:10px;font-weight:750}.admin-form-grid input,.admin-form-grid textarea{box-sizing:border-box;width:100%;padding:11px;border:1px solid #d2d6ca;border-radius:8px;background:#fff;color:#263c30;font-size:12px}.admin-form-grid textarea{min-height:85px;resize:vertical}.admin-form-grid .admin-html-editor{min-height:320px;font-family:ui-monospace,monospace;font-size:12px;line-height:1.5}.admin-form-grid .span-2{grid-column:1/-1}.admin-form-grid .admin-check{display:flex;align-items:center;gap:9px}.admin-form-grid .admin-check input{width:auto}.admin-content-form>.checkout-primary{justify-self:start}@media(max-width:700px){.admin-title-actions{align-items:stretch;flex-direction:column}.admin-form-grid{grid-template-columns:1fr}.admin-form-grid .span-2{grid-column:auto}}
.admin-table-thumb{display:block;width:72px;height:48px;border-radius:7px;object-fit:cover}.admin-form-grid .admin-check{display:flex;grid-template-columns:auto 1fr;align-items:center;align-self:end;min-height:44px}.admin-form-grid .admin-check input[type=checkbox]{width:18px;height:18px}.admin-destination-media-manager{margin-top:20px}.admin-destination-current-media{display:flex;align-items:end;gap:18px;margin-bottom:20px}.admin-destination-current-media img{display:block;width:min(100%,420px);max-height:240px;border-radius:12px;object-fit:cover}.admin-destination-current-media form{margin:0}@media(max-width:700px){.admin-destination-current-media{align-items:stretch;flex-direction:column}}
.admin-cover-form{margin-top:20px}.admin-cover-form>img{display:block;width:min(100%,520px);max-height:260px;margin:15px 0;object-fit:cover;border-radius:10px}.admin-cover-form form{display:flex;gap:12px;align-items:center}.admin-cover-form .checkout-primary{margin:0}
.admin-assisted-banner{box-sizing:border-box;margin-left:250px;padding:11px 30px;background:#fff1bf;color:#6f5515;font-size:11px;font-weight:750;text-align:center}@media(max-width:900px){.admin-assisted-banner{margin-left:0}}
.admin-row-actions{display:flex;gap:7px;align-items:center}.admin-row-actions form{margin:0}.admin-delete-action{padding:8px 10px;border:1px solid #d8aaa3;border-radius:7px;background:#fbefec;color:#91483d;font-size:9px;font-weight:750;cursor:pointer}
.tiptap-editor{overflow:hidden;border:1px solid #d2d6ca;border-radius:10px;background:#fff;box-shadow:0 2px 12px rgba(23,60,46,.04)}.tiptap-editor:focus-within{border-color:#789f28;box-shadow:0 0 0 3px rgba(120,159,40,.12)}.tiptap-toolbar{display:flex;flex-wrap:wrap;gap:5px;padding:9px;border-bottom:1px solid #dfe2d8;background:#f6f6f1}.tiptap-toolbar button{min-width:31px;height:31px;padding:0 9px;border:1px solid #d5d9cf;border-radius:6px;background:#fff;color:#43534a;font-size:12px;font-weight:700;cursor:pointer}.tiptap-toolbar button:hover{border-color:#93aa60;background:#f4f8eb}.tiptap-toolbar button.is-active{border-color:#6f922b;background:#789f28;color:#fff}.tiptap-editor-surface{min-height:360px}.tiptap-editor-surface .tiptap{box-sizing:border-box;min-height:360px;padding:18px;color:#263c30;font-size:14px;font-weight:400;line-height:1.65;outline:0}.tiptap-editor-surface .tiptap h2,.tiptap-editor-surface .tiptap h3{color:#173c2e;font-family:Georgia,serif;font-weight:400}.tiptap-editor-surface .tiptap h2{font-size:28px}.tiptap-editor-surface .tiptap h3{font-size:22px}.tiptap-editor-surface .tiptap blockquote{margin:18px 0;padding:10px 16px;border-left:3px solid #789f28;background:#f5f7ef}.tiptap-editor-surface .tiptap a{color:#648620;text-decoration:underline}.tiptap-editor-surface .tiptap img{max-width:100%;height:auto}.tiptap-editor-surface .tiptap hr{margin:24px 0;border:0;border-top:1px solid #d6dbce}.admin-form-grid .admin-html-editor.tiptap-source-hidden{display:none}.admin-form-grid .admin-html-editor:not(.tiptap-source-hidden){min-height:360px;border-radius:0 0 10px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.6}
.trip-detail-page{margin:0;background:#f4f1e8;color:#173c2e;font-family:Arial,sans-serif}.trip-public-header{position:relative;z-index:5}.trip-hero{position:relative;display:flex;min-height:470px;align-items:flex-end;background:linear-gradient(125deg,#173f30,#315f47);color:#fff;isolation:isolate}.trip-hero.has-cover{background-image:var(--trip-cover);background-position:center;background-size:cover}.trip-hero:after{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,25,18,.12),rgba(8,25,18,.84)),linear-gradient(90deg,rgba(8,25,18,.5),transparent 70%);content:""}.trip-hero-content{box-sizing:border-box;width:min(1240px,calc(100% - 64px));margin:0 auto;padding:70px 0 58px}.trip-hero-content>p{margin:0 0 12px;color:#b9d775;font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.trip-hero h1{max-width:900px;margin:0;font-family:Georgia,serif;font-size:clamp(46px,7vw,78px);font-weight:400;letter-spacing:-2.4px;line-height:1}.trip-hero-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.trip-hero-meta span{padding:9px 13px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(8,26,18,.34);font-size:11px;backdrop-filter:blur(8px)}.trip-facts{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);width:min(1120px,calc(100% - 64px));margin:-25px auto 0;overflow:hidden;border:1px solid #dce1d6;border-radius:15px;background:#fff;box-shadow:0 16px 42px rgba(24,53,39,.1)}.trip-facts article{display:grid;gap:7px;padding:21px 24px;border-left:1px solid #e3e6dd}.trip-facts article:first-child{border-left:0}.trip-facts small{color:#7b867f;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.trip-facts strong{font-family:Georgia,serif;font-size:20px;font-weight:500}.trip-facts article.is-limited strong{color:#aa521c}.trip-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:26px;align-items:start;width:min(1180px,calc(100% - 64px));margin:54px auto 100px}.trip-detail-main{display:grid;gap:24px;min-width:0}.trip-content-card,.trip-booking-form-card{box-sizing:border-box;padding:32px;border:1px solid #dcded5;border-radius:17px;background:#fffdf9;box-shadow:0 10px 30px rgba(24,53,39,.045)}.trip-content-card>header{margin-bottom:24px}.trip-content-card>header p{margin:0 0 6px;color:#78972e;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.trip-content-card h2,.trip-booking-form-card>h2{margin:0;color:#173c2e;font-family:Georgia,serif;font-size:31px;font-weight:400}.trip-rich-text{color:#46584e;font-size:14px;line-height:1.8}.trip-rich-text h2,.trip-rich-text h3,.trip-rich-text h4{margin:1.7em 0 .65em;color:#173c2e;font-family:Georgia,serif;font-weight:400}.trip-rich-text img{max-width:100%;height:auto}.trip-empty-copy{color:#748079;font-size:12px}.trip-pdf-link{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;margin-top:26px;padding:15px;border:1px solid #d9dfce;border-radius:11px;background:#f5f8ed;text-decoration:none}.trip-pdf-link>span{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;background:#789f28;color:#fff;font-size:10px;font-weight:800}.trip-pdf-link strong,.trip-pdf-link small{display:block}.trip-pdf-link strong{font-size:11px}.trip-pdf-link small{margin-top:4px;color:#768078;font-size:9px}.trip-pdf-link>b{color:#719229;font-size:19px}.trip-itinerary ol{margin:0;padding:0;list-style:none}.trip-itinerary li{position:relative;display:grid;grid-template-columns:15px 1fr;gap:16px;padding-bottom:24px}.trip-itinerary li:not(:last-child):before{position:absolute;top:11px;bottom:0;left:6px;width:1px;background:#cad9a8;content:""}.trip-itinerary li>span{position:relative;z-index:1;width:11px;height:11px;margin-top:3px;border:3px solid #fff;border-radius:50%;background:#789f28;box-shadow:0 0 0 1px #9caf72}.trip-itinerary small,.trip-itinerary strong{display:block}.trip-itinerary small{margin-bottom:4px;color:#7b867f;font-size:9px}.trip-itinerary strong{font-family:Georgia,serif;font-size:21px;font-weight:500}.trip-price-list article{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-top:1px solid #e3e5dc}.trip-price-list article:first-child{border-top:0}.trip-price-list article strong,.trip-price-list article small{display:block}.trip-price-list article strong{font-size:12px}.trip-price-list article small{margin-top:4px;color:#7c867f;font-size:9px}.trip-price-list article>b{font-family:Georgia,serif;font-size:21px;font-weight:500;white-space:nowrap}.trip-detail-sidebar{position:sticky;top:20px;display:grid;gap:16px}.trip-booking-summary{padding:27px;border-radius:16px;background:#173f30;color:#fff;box-shadow:0 16px 35px rgba(23,63,48,.16)}.trip-booking-summary>small{color:#b9cbbf;font-size:9px;text-transform:uppercase}.trip-booking-summary>strong{display:block;margin:9px 0;font-family:Georgia,serif;font-size:36px;font-weight:400}.trip-booking-summary>strong span{font-family:Arial,sans-serif;font-size:11px;font-weight:700}.trip-booking-summary>p{margin:0;color:#b7c6bc;font-size:10px;line-height:1.55}.trip-booking-summary>a{display:block;margin:21px 0 18px;padding:13px;border-radius:9px;background:#82a92c;color:#fff;font-size:11px;font-weight:800;text-align:center;text-decoration:none}.trip-booking-summary>div{display:grid;gap:4px;padding-top:16px;border-top:1px solid rgba(255,255,255,.15)}.trip-booking-summary>div span{color:#9eafa4;font-size:8px;text-transform:uppercase}.trip-booking-summary>div b{font-size:10px}.trip-agency-card{display:grid;padding:23px;border:1px solid #dcded5;border-radius:15px;background:#fffdf9}.trip-agency-card>p{margin:0 0 7px;color:#78972e;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.trip-agency-card h3{margin:0 0 14px;font-family:Georgia,serif;font-size:25px;font-weight:500}.trip-agency-card>span,.trip-agency-card>a{margin-top:6px;color:#647168;font-size:10px;text-decoration:none}.trip-agency-card .trip-agency-website{margin-top:18px;padding-top:14px;border-top:1px solid #e2e4dc;color:#668526;font-weight:800}.trip-external-link{padding:14px 17px;border:1px solid #cbd8b0;border-radius:11px;background:#f4f8eb;color:#607c27;font-size:10px;font-weight:800;text-align:center;text-decoration:none}.trip-detail-main>.content-gallery{margin:0}.trip-booking-form-card{scroll-margin-top:20px}.trip-booking-form-card .landlord-form{display:grid;gap:20px}.trip-booking-form-card .repeatable-row{grid-template-columns:repeat(3,minmax(0,1fr))}.trip-booking-form-card .checkout-total{margin-top:18px}.trip-booking-form-card .secondary-button{justify-self:start}@media(max-width:900px){.trip-detail-layout{grid-template-columns:1fr}.trip-detail-sidebar{position:static;grid-row:1}.trip-facts{grid-template-columns:1fr 1fr}.trip-facts article:nth-child(3){border-left:0;border-top:1px solid #e3e6dd}.trip-facts article:nth-child(4){border-top:1px solid #e3e6dd}}@media(max-width:620px){.trip-hero{min-height:390px}.trip-hero-content,.trip-detail-layout{width:calc(100% - 28px)}.trip-hero-content{padding-bottom:45px}.trip-hero h1{font-size:42px;letter-spacing:-1px}.trip-facts{width:calc(100% - 28px)}.trip-facts article{padding:16px}.trip-detail-layout{margin-top:34px}.trip-content-card,.trip-booking-form-card{padding:22px 18px}.trip-booking-form-card .repeatable-row{grid-template-columns:1fr}.trip-booking-summary{padding:23px}.trip-public-header>a:last-child{font-size:10px}}
