/* Shared business palette. Loaded after every page's legacy styles. */
:root{--dat-forest:#123c30;--dat-ink:#142f27;--dat-cream:#f7f5ed;--dat-gold:#e4b24d;--dat-line:#dedfd4;--dat-muted:#63736a;--g:#123c30;--g2:#225a44;--gold:#e4b24d;--ink:#142f27;--muted:#63736a;--line:#dedfd4;--forest:#123c30;--forest-2:#225a44;--forest-3:#eaf0e7;--canvas:#f7f5ed}.dat-consistent-ui,.dat-admin-theme{font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;font-size:16px;line-height:1.65;background:var(--dat-cream)!important;color:var(--dat-ink)!important;margin:0}.dat-consistent-ui *,.dat-admin-theme *{box-sizing:border-box}.dat-consistent-ui p{line-height:1.75}.dat-consistent-ui h1{font-size:clamp(32px,4.7vw,58px);line-height:1.12}.dat-consistent-ui h2{font-size:clamp(25px,3vw,36px);line-height:1.25}.dat-consistent-ui h3{font-size:clamp(19px,2.2vw,25px);line-height:1.35}.dat-consistent-ui label{font-size:14px;font-weight:650;line-height:1.5}.dat-consistent-ui .dat-hero-copy h1{font-size:clamp(42px,5vw,72px)}.dat-consistent-ui a{overflow-wrap:anywhere}.dat-consistent-ui .dat-navigation{background:#f7f5edf5!important;border-color:var(--dat-line)!important}.dat-consistent-ui .dat-navigation nav a{color:var(--dat-forest)!important}.dat-consistent-ui .dat-navigation .dat-contact{background:var(--dat-forest)!important;color:white!important}.dat-consistent-ui .btn.primary,.dat-consistent-ui .btn-primary,.dat-consistent-ui .dat-primary,.dat-consistent-ui .book:not(.disabled),.dat-consistent-ui .choiceBtn,.dat-consistent-ui .navcta,.dat-consistent-ui .submit-booking{background:var(--dat-forest)!important;color:white!important;border-color:var(--dat-forest)!important;border-radius:10px!important;box-shadow:none!important;min-height:44px}.dat-consistent-ui .btn.ghost{background:transparent!important}.dat-consistent-ui .btn.light{background:var(--dat-gold)!important;color:var(--dat-forest)!important}.dat-consistent-ui .price,.dat-consistent-ui .snapshot-price,.dat-consistent-ui .groupTitle{color:var(--dat-forest)!important}.dat-consistent-ui .tag,.dat-consistent-ui .badge,.dat-consistent-ui .lock-badge{background:var(--dat-forest)!important;color:white!important}.dat-consistent-ui .head,.dat-consistent-ui .hero,.dat-consistent-ui .closing-cta,.dat-consistent-ui .site-footer,.dat-consistent-ui .footer,.dat-consistent-ui .mobile-bar,.dat-consistent-ui .mobilebar{background:var(--dat-forest)!important;color:white!important}.dat-consistent-ui .hero h1,.dat-consistent-ui .hero h2,.dat-consistent-ui .hero p{color:white!important}.dat-consistent-ui.dat-stays .hero{background:transparent!important;color:var(--dat-forest)!important}.dat-consistent-ui.dat-stays .hero h1{color:var(--dat-forest)!important}.dat-consistent-ui .head h1,.dat-consistent-ui .head p{color:white!important}.dat-consistent-ui .kicker,.dat-consistent-ui .eyebrow-dark{color:#786338!important}.dat-consistent-ui .kicker.light{color:#e4b24d!important}.dat-consistent-ui .booking-zone,.dat-consistent-ui .choiceSection,.dat-consistent-ui .why{background:#edf1e7!important}.dat-consistent-ui .card,.dat-consistent-ui .pkg,.dat-consistent-ui .option-card,.dat-consistent-ui .premium-card,.dat-consistent-ui .detail,.dat-consistent-ui .room,.dat-consistent-ui .choiceCard{background:white!important;border:1px solid var(--dat-line)!important;border-radius:18px!important;box-shadow:0 8px 28px #123c3007!important}.dat-consistent-ui .booking-head{background:transparent!important}.dat-consistent-ui input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.dat-consistent-ui select,.dat-consistent-ui textarea{font-family:inherit!important;font-size:16px!important;line-height:1.4!important;min-height:46px!important;border-radius:10px!important;border-color:#d5ddd3!important;background:#fbfcf8!important;max-width:100%}.dat-consistent-ui textarea{min-height:100px}.dat-consistent-ui button{font-family:inherit}.dat-consistent-ui .dat-menu-button{font-size:13px!important}.dat-consistent-ui img{max-width:100%}.dat-consistent-ui .dat-experience-grid h3{font-size:27px}.dat-consistent-ui .dat-stay-card h2{font-size:27px}.dat-consistent-ui .dat-stay-description,.dat-consistent-ui .dat-stay-card p{font-size:14px}.dat-consistent-ui .dat-stay-cover>span{font-size:13px}.dat-consistent-ui .dat-hero-photo{background:var(--dat-forest)}.dat-consistent-ui .dat-season-note{color:var(--dat-muted)}.dat-consistent-ui .dat-stay-price b{color:var(--dat-forest)}.dat-consistent-ui .trust,.dat-consistent-ui .trust-row{font-size:13px}.dat-consistent-ui a:focus-visible,.dat-consistent-ui button:focus-visible,.dat-admin-theme a:focus-visible,.dat-admin-theme button:focus-visible{outline:3px solid var(--dat-gold);outline-offset:3px}
/* Admin uses the same colours, with compact readable type. Status colours stay intact. */
.dat-admin-theme{font-size:14px}.dat-admin-theme h1{font-size:clamp(23px,3vw,30px);line-height:1.2}.dat-admin-theme h2{font-size:22px;line-height:1.3}.dat-admin-theme .side,.dat-admin-theme .sidebar,.dat-admin-theme .mobiletop{background:var(--dat-forest)!important;color:white!important}.dat-admin-theme .sidebar a.active,.dat-admin-theme .menu a.active,.dat-admin-theme .admin-nav a.active{background:var(--dat-gold)!important;color:var(--dat-forest)!important}.dat-admin-theme .workspace>header,.dat-admin-theme .topbar{background:#fff!important;border-color:var(--dat-line)!important}.dat-admin-theme input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.dat-admin-theme select,.dat-admin-theme textarea{font-family:inherit!important;font-size:16px!important;min-height:44px;border-radius:9px!important;border-color:#d5ddd3!important;max-width:100%}.dat-admin-theme .card,.dat-admin-theme .stat,.dat-admin-theme .tablebox{border-color:var(--dat-line)!important}.dat-admin-theme .main,.dat-admin-theme .workspace{min-width:0}.dat-admin-theme .sidebar a,.dat-admin-theme .menu a{min-height:42px}.dat-consistent-ui .dat-navigation nav a{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:800px){.dat-consistent-ui .dat-navigation nav.dat-menu-open{display:flex}.dat-consistent-ui .dat-navigation nav a{display:flex}.dat-consistent-ui,.dat-admin-theme{overflow-wrap:anywhere}.dat-admin-theme .row{gap:10px}.dat-admin-theme .row input,.dat-admin-theme .row select{min-width:0}.dat-consistent-ui .dat-navigation .dat-contact{justify-content:center}}
@media(max-width:600px){.dat-consistent-ui{font-size:15px}.dat-consistent-ui h1{font-size:34px}.dat-consistent-ui h2{font-size:27px}.dat-consistent-ui h3{font-size:21px}.dat-consistent-ui .dat-hero-copy h1{font-size:46px}.dat-consistent-ui .grid2{grid-template-columns:1fr!important}.dat-consistent-ui .grid{grid-template-columns:1fr!important}.dat-consistent-ui .heroGrid,.dat-consistent-ui .booking-wrap,.dat-consistent-ui .availability-shell{grid-template-columns:1fr!important}.dat-consistent-ui .dat-stay-grid{grid-template-columns:1fr}.dat-consistent-ui .dat-stay-card h2{font-size:26px}.dat-consistent-ui .dat-primary{min-height:46px;justify-content:center}.dat-consistent-ui .dat-hero-actions{align-items:stretch}.dat-consistent-ui .dat-hero-actions .dat-primary{width:100%}.dat-consistent-ui .dat-text-link{min-height:44px;display:flex;align-items:center}.dat-consistent-ui .dat-experience-grid>a{min-width:0}.dat-consistent-ui .roompics img{max-width:none}.dat-admin-theme .tablebox{overflow-x:auto;-webkit-overflow-scrolling:touch}.dat-admin-theme table{font-size:13px}.dat-consistent-ui .thank-card,.dat-consistent-ui .w{width:calc(100% - 32px)!important;max-width:650px;margin-left:auto!important;margin-right:auto!important}.dat-consistent-ui .card{padding:20px}.dat-consistent-ui input[type=date]{min-width:0;width:100%}.dat-consistent-ui .dat-stay-footer{padding-bottom:28px}}
@media print{.dat-consistent-ui .dat-navigation{display:none!important}.dat-consistent-ui{background:white!important;color:black!important}.dat-consistent-ui .card{box-shadow:none!important}}
.dat-consistent-ui button:not(.dat-menu-button):not(.lightbox-close){background:var(--dat-forest)!important;color:white!important;border-color:var(--dat-forest)!important;border-radius:10px!important;min-height:44px}.dat-consistent-ui button.quick-date.active{background:var(--dat-gold)!important;color:var(--dat-forest)!important}.dat-consistent-ui.thank-page{display:block!important;padding:0!important;min-height:100vh}.dat-consistent-ui .thank-shell{padding:36px 16px!important;min-height:0!important}.dat-consistent-ui .thank-card{margin:0 auto!important;background:white!important;border-color:var(--dat-line)!important;color:var(--dat-ink)!important}.dat-consistent-ui .thank-icon{background:var(--dat-forest)!important;color:white!important}.dat-consistent-ui .site-footer a,.dat-consistent-ui .footer a,.dat-consistent-ui .mobile-bar a,.dat-consistent-ui .mobilebar a{color:#f3f5ed!important}.dat-consistent-ui>.card{margin:34px auto!important;max-width:820px;width:calc(100% - 32px)}.dat-consistent-ui .sheet{max-width:980px;width:calc(100% - 32px);margin:24px auto}.dat-consistent-ui .toolbar{max-width:980px;margin:20px auto;padding:0 16px;display:flex;gap:12px;flex-wrap:wrap}.dat-consistent-ui .details th,.dat-consistent-ui .details td{overflow-wrap:anywhere}.dat-consistent-ui .section-heading{padding-left:18px;padding-right:18px}.dat-consistent-ui .admin-card{background:white!important;border:1px solid var(--dat-line)!important;border-radius:18px!important;padding:24px!important}.dat-consistent-ui .thank-ref{background:#edf1e7!important;color:var(--dat-forest)!important}.dat-consistent-ui .btn.alt{background:#edf1e7!important;color:var(--dat-forest)!important}
@media(max-width:600px){.dat-consistent-ui .sheet .content{padding:16px}.dat-consistent-ui .sheet .head{padding:22px 16px}.dat-consistent-ui .sheet .head h1{font-size:28px}.dat-consistent-ui .section .admin-card{width:calc(100% - 32px)}.dat-consistent-ui .thank-card{width:100%!important}.dat-consistent-ui .toolbar .btn{min-height:44px}.dat-consistent-ui .details{width:100%;table-layout:fixed}}
@media print{.dat-consistent-ui .sheet{width:100%;margin:0;max-width:none}.dat-consistent-ui .toolbar{display:none!important}}
.dat-consistent-ui h1{font-size:clamp(32px,4.7vw,58px)!important}.dat-consistent-ui h2{font-size:clamp(25px,3vw,36px)!important}.dat-consistent-ui h3{font-size:clamp(19px,2.2vw,25px)!important}.dat-consistent-ui .dat-hero-copy h1{font-size:clamp(42px,5vw,72px)!important}.dat-consistent-ui .dat-stay-card h2{font-size:27px!important}.dat-consistent-ui .dat-experience-grid h3{font-size:27px!important}
@media(max-width:600px){.dat-consistent-ui h1{font-size:34px!important}.dat-consistent-ui h2{font-size:27px!important}.dat-consistent-ui h3{font-size:21px!important}.dat-consistent-ui .dat-hero-copy h1{font-size:46px!important}.dat-consistent-ui .dat-stay-card h2{font-size:26px!important}.dat-consistent-ui .sheet .head h1{font-size:28px!important}}
/* Pale booking background needs dark text, including legacy white text rules. */
.dat-consistent-ui .booking-zone{background:#edf1e7!important;color:#142f27!important}.dat-consistent-ui .booking-zone:before{display:none!important}.dat-consistent-ui .booking-intro,.dat-consistent-ui .booking-intro h2,.dat-consistent-ui .booking-points b{color:#123c30!important}.dat-consistent-ui .booking-intro>p,.dat-consistent-ui .booking-points small{color:#526359!important}.dat-consistent-ui .booking-intro .kicker,.dat-consistent-ui .booking-points div>span{color:#85601b!important}.dat-consistent-ui .booking-points div{border-bottom-color:#cdd8cb!important}.dat-consistent-ui .contact-card{background:#fff!important;border:1px solid #d5ddd3!important;box-shadow:0 6px 22px #123c3007!important}.dat-consistent-ui .contact-card strong,.dat-consistent-ui .contact-card a{color:#123c30!important}.dat-consistent-ui .contact-card small,.dat-consistent-ui .contact-card span{color:#526359!important}.dat-consistent-ui .booking-points small{font-size:13px!important;line-height:1.6}.dat-consistent-ui .contact-card small{font-size:11px!important}.dat-consistent-ui .contact-card span{font-size:14px!important}

/* DAT responsive polish — 2026-10-05 */
:root{--dat-forest:#0f4938;--dat-forest-deep:#0b3b2e;--dat-gold:#f1b83b;--dat-cream:#f8f6ef;--dat-ink:#17372d;--dat-muted:#64756d;--dat-line:#dce3dc}
.dat-consistent-ui{background:var(--dat-cream)!important;color:var(--dat-ink)!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.dat-consistent-ui .dat-navigation{min-height:86px;padding:13px max(24px,calc((100vw - 1240px)/2));background:rgba(248,246,239,.97)!important;box-shadow:0 1px 0 rgba(15,73,56,.04)}
.dat-consistent-ui .dat-brand{min-width:0}.dat-consistent-ui .dat-brand img{flex:0 0 auto}.dat-consistent-ui .dat-brand>span{white-space:nowrap}
.dat-consistent-ui .dat-navigation nav{gap:10px}.dat-consistent-ui .dat-navigation nav a{padding:10px 12px;border-radius:9px;white-space:nowrap}.dat-consistent-ui .dat-navigation nav a:hover{background:#edf1e9;color:var(--dat-forest)!important}
.dat-consistent-ui .dat-navigation .dat-contact{padding:10px 16px!important;margin-left:4px}
.dat-consistent-ui .head{background:linear-gradient(135deg,var(--dat-forest-deep),var(--dat-forest))!important}.dat-consistent-ui .head .wrap{padding-top:2px;padding-bottom:2px}.dat-consistent-ui .head>div>span{display:inline-flex;align-items:center;min-height:34px;padding:7px 14px;border:1px solid rgba(255,255,255,.24);border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.08em;color:#fff!important}.dat-consistent-ui .head h1{max-width:850px;margin-top:20px!important;margin-bottom:16px!important}.dat-consistent-ui .head p{max-width:820px;margin:0 0 24px!important;color:#f1f5f2!important;font-size:clamp(16px,2vw,19px);line-height:1.65}
/* High contrast price on dark hero. This intentionally overrides generic .price rules. */
.dat-consistent-ui .head .price{display:flex!important;align-items:baseline!important;gap:9px!important;width:max-content!important;max-width:100%!important;padding:0!important;margin:4px 0 0!important;background:transparent!important;border:0!important;color:#fff!important;font-size:clamp(38px,5vw,54px)!important;font-weight:900!important;line-height:1!important;letter-spacing:-.035em!important;box-shadow:none!important}.dat-consistent-ui .head .price small{color:#f6ead0!important;font-size:15px!important;font-weight:750!important;letter-spacing:0!important}
.dat-consistent-ui .booking-steps{max-width:100%;gap:12px;margin:38px 0 28px}.dat-consistent-ui .booking-steps>div{min-width:0;border-radius:16px!important;border-color:var(--dat-line)!important;background:#fff!important;padding:15px 16px!important}.dat-consistent-ui .booking-steps>div.step-active{border-color:#c9d9d0!important}.dat-consistent-ui .booking-steps b{flex:0 0 auto}.dat-consistent-ui .booking-steps span{line-height:1.25}
.dat-consistent-ui main.wrap{max-width:1120px}.dat-consistent-ui .grid{align-items:start}.dat-consistent-ui .card{overflow:hidden}.dat-consistent-ui .activity{min-height:58px}.dat-consistent-ui .check{flex:0 0 32px;width:32px;height:32px;background:#e5f2ec!important;color:#087254!important}
.dat-consistent-ui .btn,.dat-consistent-ui button,.dat-consistent-ui .dat-primary{transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.dat-consistent-ui .btn:hover,.dat-consistent-ui button:hover,.dat-consistent-ui .dat-primary:hover{transform:translateY(-1px)}
@media(min-width:801px){.dat-consistent-ui .dat-menu-button{display:none!important}.dat-consistent-ui .dat-navigation nav{display:flex!important;position:static!important}.dat-consistent-ui .grid{gap:26px}.dat-consistent-ui .card{padding:30px!important}}
@media(max-width:800px){.dat-consistent-ui .dat-navigation{min-height:76px;padding:10px 16px;gap:10px}.dat-consistent-ui .dat-brand{gap:9px;max-width:calc(100% - 104px)}.dat-consistent-ui .dat-brand img{width:48px;height:48px;border-radius:10px}.dat-consistent-ui .dat-brand>span{font-size:15px!important;letter-spacing:.07em;overflow:hidden;text-overflow:ellipsis}.dat-consistent-ui .dat-brand>span>span{font-size:8px!important;margin-top:4px}.dat-consistent-ui .dat-menu-button{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;flex:0 0 auto;min-width:88px;min-height:48px;margin:0!important;padding:10px 14px!important;background:var(--dat-gold)!important;color:#17372d!important;border:0!important;border-radius:14px!important;font-size:14px!important;font-weight:850!important;box-shadow:0 7px 18px rgba(105,76,14,.12)!important}.dat-consistent-ui .dat-navigation nav{top:calc(100% + 1px)!important;padding:10px 14px 16px!important;background:var(--dat-cream)!important;box-shadow:0 18px 32px rgba(15,73,56,.14)!important}.dat-consistent-ui .dat-navigation nav.dat-menu-open{display:flex!important}.dat-consistent-ui .dat-navigation nav a{min-height:48px!important;padding:12px 14px!important;border-bottom:1px solid #e5e8e1;border-radius:8px!important}.dat-consistent-ui .dat-navigation nav a:last-child{border-bottom:0}.dat-consistent-ui .dat-navigation .dat-contact{margin:10px 0 0!important;justify-content:center;border:0!important}.dat-consistent-ui .head{padding:38px 0!important}.dat-consistent-ui .head .wrap{width:calc(100% - 32px)!important}.dat-consistent-ui .head h1{font-size:clamp(36px,10vw,48px)!important;line-height:1.08!important;letter-spacing:-.035em!important}.dat-consistent-ui .head p{font-size:16px!important}.dat-consistent-ui .head .price{font-size:44px!important}.dat-consistent-ui .booking-steps{margin:28px 0 24px;gap:8px}.dat-consistent-ui .booking-steps>div{padding:12px 10px!important}.dat-consistent-ui .booking-steps b{width:38px!important;height:38px!important}.dat-consistent-ui .booking-steps span{font-size:13px!important}.dat-consistent-ui .grid{gap:16px!important}.dat-consistent-ui .card{padding:22px!important}}
@media(max-width:520px){.dat-consistent-ui .dat-navigation{padding:9px 14px}.dat-consistent-ui .dat-brand{max-width:calc(100% - 92px)}.dat-consistent-ui .dat-brand img{width:46px;height:46px}.dat-consistent-ui .dat-brand>span{font-size:14px!important}.dat-consistent-ui .dat-menu-button{min-width:82px;min-height:46px;padding:9px 12px!important}.dat-consistent-ui .head{padding:34px 0!important}.dat-consistent-ui .head>div>span{font-size:11px;padding:6px 12px}.dat-consistent-ui .head h1{font-size:clamp(34px,10.2vw,44px)!important;margin-top:18px!important}.dat-consistent-ui .head .price{font-size:42px!important;flex-wrap:wrap}.dat-consistent-ui .head .price small{font-size:14px!important}.dat-consistent-ui .booking-steps{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}.dat-consistent-ui .booking-steps>div{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important}.dat-consistent-ui .booking-steps span{font-size:12px!important}.dat-consistent-ui main.wrap{width:calc(100% - 28px)!important}.dat-consistent-ui .card{padding:20px 18px!important;border-radius:18px!important}.dat-consistent-ui .card h2{margin-bottom:18px}.dat-consistent-ui .activity{padding:13px 0}.dat-consistent-ui .total{gap:12px;align-items:flex-start}.dat-consistent-ui .total strong{white-space:nowrap}}
