.tour-cover{border-radius:26px;overflow:hidden;box-shadow:0 18px 34px rgba(25,51,64,.12)}
.modal-backdrop:has(.tour-lightbox){background:rgba(249,247,240,.94);backdrop-filter:blur(10px)}.modal:has(.tour-lightbox){width:min(1180px,calc(100% - 32px));max-height:94vh;padding:24px;background:#fffdf8;box-shadow:0 18px 56px rgba(25,51,64,.14)}.tour-lightbox{justify-items:center}.tour-lightbox img{width:min(1120px,100%);max-height:84vh;border-radius:16px;cursor:zoom-in}.tour-lightbox img.zoomed{max-height:none;width:min(1600px,150%);cursor:zoom-out}.tour-lightbox p{font-size:12px}
.tour-platform-links{width:min(1120px,calc(100% - 56px));max-width:none;margin:0 auto 70px;padding:22px 24px;box-sizing:border-box;align-items:center;justify-content:space-between;gap:28px}.tour-platform-links>div:first-child{min-width:0}.platform-route-links{display:flex;flex:0 1 auto;justify-content:flex-end;align-items:center;gap:10px;margin-left:auto}.platform-route-link{display:inline-flex;align-items:center;gap:9px;min-width:0;padding:8px 10px 8px 8px;border:1px solid rgba(25,51,64,.16);border-radius:999px;background:#fffdf8;color:#193340;text-decoration:none;box-shadow:0 3px 0 rgba(25,51,64,.09);white-space:nowrap;transition:transform .18s,box-shadow .18s,border-color .18s}.platform-route-link:hover{transform:translateY(-2px);border-color:#52766e;box-shadow:0 6px 0 rgba(25,51,64,.11)}.platform-route-mark{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#193340;color:#fff;font:700 14px/1 Manrope,Arial,sans-serif}.platform-route-name{font:800 11px/1 Manrope,Arial,sans-serif}.platform-route-action{padding-left:8px;border-left:1px solid rgba(25,51,64,.15);font:700 9px/1 Manrope,Arial,sans-serif;color:#a24a38;text-transform:uppercase;letter-spacing:.05em}
.catalog-kind-filter:nth-child(2){margin-left:45px}
@media(max-width:760px){.tour-cover{border-radius:20px}.modal-backdrop:has(.tour-lightbox){background:rgba(249,247,240,.97)}.tour-platform-links{width:calc(100% - 56px);gap:16px}.platform-route-links{justify-content:flex-start;margin-left:0;gap:8px}.platform-route-link{padding:10px 13px}.modal:has(.tour-lightbox){width:calc(100% - 20px);padding:14px}.tour-lightbox img{max-height:80vh}.catalog-kind-filter:nth-child(2){margin-left:12px}}
.about-us{padding:88px max(32px,10.6vw)!important}.about-us-inner{width:min(1120px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(360px,.97fr);gap:54px;align-items:center}.about-us-intro{min-width:0}.about-us-intro h2{max-width:560px}.about-us-intro>p:last-child{margin:0;max-width:540px}.about-profile{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.about-photo.company-photo{min-height:0;height:235px;margin:0;background:linear-gradient(145deg,#fffdf8,#eedfc9)}.about-photo.company-photo img{width:100%;height:100%!important;object-fit:contain;padding:24px}.guide-card{min-height:235px;display:grid;grid-template-columns:1fr;gap:13px;padding:15px;border:1px solid rgba(25,51,64,.13);border-radius:18px;background:#fffdf8}.guide-photo{width:96px;min-height:96px;height:96px;margin:0}.guide-photo img{width:96px;height:96px}.guide-card .eyebrow{margin:0 0 9px}.guide-card p:not(.eyebrow){margin:0;color:#435b5d;font-size:12px;line-height:1.7}.guide-card small{display:block;margin-top:8px;color:#72807e;font:9px/1.45 'DM Mono',monospace}@media(max-width:760px){.about-us{padding:68px 28px!important}.about-us-inner{grid-template-columns:1fr;gap:28px}.about-profile{grid-template-columns:1fr}.about-photo.company-photo{height:175px}.guide-card{grid-template-columns:96px minmax(0,1fr);min-height:0}.guide-card .eyebrow{margin-top:0}}
.about-profile{display:block}.guide-list-head{margin-bottom:15px}.guide-list-head .eyebrow{margin:0 0 8px}.guide-list-head p:last-child{margin:0;color:#526768;font-size:12px;line-height:1.5}.guide-list{display:grid;gap:12px}.public-guide-card{display:grid;grid-template-columns:96px minmax(0,1fr);gap:15px;align-items:center;padding:14px;border:1px solid rgba(25,51,64,.14);border-radius:16px;background:#fffdf8}.public-guide-photo{display:grid;place-items:center;width:96px;height:96px;margin:0;overflow:hidden;border-radius:12px;background:#e7efea;color:#647877;font:10px/1.45 'DM Mono',monospace;text-align:center}.public-guide-photo img{width:100%;height:100%;object-fit:cover}.public-guide-card h3{margin:0 0 6px;font:600 21px/1.1 'Playfair Display',serif;color:#193340}.public-guide-card p{margin:0;font-size:12px;line-height:1.65;color:#4d6263}.guide-editor{display:grid;gap:10px;padding:14px;border:1px solid rgba(25,51,64,.13);border-radius:12px;background:#f6faf7}.guide-editor-title,.guide-editor-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.guide-editor-title .form-section-title{margin:0}.guide-editor-head b{font-size:11px;color:#193340}.guide-editor-row{display:grid;gap:10px;padding:12px;margin-top:10px;border:1px solid rgba(25,51,64,.13);border-radius:10px;background:#fffdf8}@media(max-width:760px){.public-guide-card{grid-template-columns:82px minmax(0,1fr);gap:12px}.public-guide-photo{width:82px;height:82px}}

/* A distinct, quiet transition from travelers' stories to the project. */
.journey-divider{position:relative;height:180px;overflow:hidden;background:linear-gradient(180deg,#f5e7d1 0%,#dcebe5 100%);border-top:1px solid rgba(25,51,64,.12);border-bottom:1px solid rgba(25,51,64,.12)}
.journey-divider::before{content:'';position:absolute;inset:18px 9vw;border-top:1px dashed rgba(25,51,64,.25);border-bottom:1px dashed rgba(25,51,64,.18)}
.journey-divider p{position:absolute;z-index:3;left:50%;bottom:23px;transform:translateX(-50%);margin:0;white-space:nowrap;color:#38595a;font:500 10px/1 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase}
.journey-sun{position:absolute;z-index:0;left:50%;top:24px;width:86px;height:86px;border-radius:50%;background:#df7158;transform:translateX(-50%);box-shadow:0 0 0 12px rgba(245,231,209,.38)}
.journey-mountain{position:absolute;bottom:0;width:0;height:0;border-left:190px solid transparent;border-right:190px solid transparent}
.mountain-back{z-index:1;left:calc(50% - 270px);border-bottom:115px solid #8bb8af}
.mountain-front{z-index:2;left:calc(50% - 115px);border-left-width:230px;border-right-width:230px;border-bottom:125px solid #193f4d}
.journey-divider::after{content:'';position:absolute;z-index:2;left:calc(50% + 55px);bottom:94px;width:35px;height:35px;border-radius:50% 50% 8px 50%;background:#fbf8f0;transform:rotate(45deg);box-shadow:-59px 31px 0 -8px #fbf8f0}
@media(max-width:760px){.journey-divider{height:145px}.journey-divider::before{inset:15px 24px}.journey-sun{top:20px;width:70px;height:70px}.journey-mountain{border-left-width:130px;border-right-width:130px}.mountain-back{left:calc(50% - 185px);border-bottom-width:86px}.mountain-front{left:calc(50% - 82px);border-left-width:155px;border-right-width:155px;border-bottom-width:92px}.journey-divider::after{left:calc(50% + 32px);bottom:70px;width:27px;height:27px}.journey-divider p{bottom:17px;font-size:8px}}

/* Keep the route type on its own line under the return link. */
.tour-hero-navigation{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:20px}
.tour-hero .tour-hero-navigation .back-link{margin:0}
.tour-hero .tour-kind-slot{display:block;min-height:0}
.tour-hero .tour-kind-slot .tour-detail-kind{margin:0}
@media(max-width:760px){.tour-hero-navigation{gap:11px;margin-bottom:16px}}

/* Reviews stay grouped by route in the administrator's separate tab. */
.admin-reviews-panel{display:grid;gap:14px}.admin-review-route{padding:17px;border:1px solid rgba(25,51,64,.14);border-radius:15px;background:#fffdf8}.admin-review-route-head{display:flex;align-items:start;justify-content:space-between;gap:18px}.admin-review-route-head .eyebrow{margin:0 0 6px}.admin-review-route h4{margin:0;font:600 20px/1.18 'Playfair Display',serif;color:#193340}.admin-review-route-head .small-action{flex:0 0 auto;margin:0}.admin-review-list{display:grid;gap:8px;margin-top:14px}.admin-review-list>article{padding:11px 12px;border-radius:10px;background:#f4f8f5}.admin-review-list>article>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-review-list b{font-size:12px;color:#193340}.admin-review-list span{color:#bc684a;font-size:12px;letter-spacing:.04em}.admin-review-list small{display:block;margin-top:3px;color:#71807e;font:9px/1.35 'DM Mono',monospace}.admin-review-list p{margin:8px 0 0;color:#4c6263;font-size:11px;line-height:1.6}.admin-review-empty{margin:13px 0 0}@media(max-width:760px){.admin-review-route{padding:14px}.admin-review-route-head{gap:11px}.admin-review-route h4{font-size:18px}.admin-review-list>article>div{align-items:flex-start;flex-direction:column;gap:4px}}

.tour-rating{display:flex;align-items:center;gap:8px;margin:3px 0 1px;color:#ad5b42;font:700 11px/1 Manrope,Arial,sans-serif}.tour-rating small{padding-left:8px;border-left:1px solid rgba(25,51,64,.16);color:#667a78;font:500 10px/1 Manrope,Arial,sans-serif}.tour-rating.empty-rating{color:#778887}.tour-review-summary,.reviews-summary{margin:0;color:#ad5b42;font:700 12px/1.35 Manrope,Arial,sans-serif}.tour-review-summary{margin:0 0 15px}.tour-review-summary span,.reviews-summary span{color:#667a78;font-weight:500}.tour-review-summary.empty,.reviews-summary.empty{color:#778887;font-weight:500}.feature-heading{align-items:baseline}.reviews-summary{margin-top:5px}@media(max-width:760px){.tour-rating{margin-top:4px}.tour-review-summary{margin-bottom:13px}}

.journey-divider p{color:#fff;text-shadow:0 1px 12px rgba(25,51,64,.42)}.hero-photo{background-image:linear-gradient(120deg,rgba(16,48,59,.15),rgba(246,235,214,.05)),url('https://images.unsplash.com/photo-1743586994827-d0806a9e6d39?auto=format&fit=crop&w=1600&q=82')!important;background-position:center;background-size:cover}.hero-photo .hero-stamp{background:rgba(255,253,248,.9)}.hero-photo .image-note{color:#193340;text-shadow:0 1px 12px rgba(255,255,255,.75)}
.catalog-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-18px 0 35px}.catalog-controls .catalog-kind-filters{margin:0}.catalog-kind-filter:nth-child(2){margin-left:0}.catalog-search{display:flex;align-items:center;gap:8px;min-width:min(100%,310px);padding:0 12px;border:1px solid rgba(25,51,64,.18);border-radius:999px;background:#fffdf8;color:#58706f}.catalog-search input{width:100%;min-width:0;height:38px;border:0;outline:0;background:transparent;color:#193340;font:11px Manrope,Arial,sans-serif}.catalog-search:focus-within{border-color:#52766e;box-shadow:0 0 0 3px rgba(82,118,110,.12)}.tour-card[hidden]{display:none}@media(max-width:760px){.catalog-controls{display:grid;margin:-6px 0 26px}.catalog-search{min-width:0;width:100%;box-sizing:border-box}.catalog-controls .catalog-kind-filters{gap:7px}}
.booking-window{padding:10px 12px;border:1px solid rgba(25,51,64,.13);border-radius:10px;background:#f4f8f5;color:#4c6263;font:10px/1.55 'DM Mono',monospace}.all-day-choice{margin-top:-2px}.booking-time-field:has(input:disabled){opacity:.43}.template-route-glance{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 16px;padding:12px;border-radius:10px;background:#f4f8f5;color:#4b6263;font-size:10px;line-height:1.5}.template-route-glance span{padding:4px 6px;border-radius:999px;background:#fffdf8}.template-route-glance p{flex-basis:100%;margin:4px 0 0}
.chat-thread{padding:14px;background:linear-gradient(145deg,#e8f1ed,#f4eadc);border:1px solid rgba(25,51,64,.13);border-radius:16px}.chat-message{max-width:78%;padding:10px 12px;border-radius:14px 14px 14px 4px;box-shadow:0 2px 0 rgba(25,51,64,.06)}.chat-message.mine{margin-left:auto;border-radius:14px 14px 4px;background:#d9eee6}.chat-message.guide{background:#fffdf8}.chat-message b{font-size:10px;color:#52766e}.chat-message p{font-size:12px;line-height:1.55}.chat-message small{display:block;margin-top:5px;text-align:right;color:#758280;font-size:8px}.chat-route-card{display:grid;gap:5px;margin:12px auto;padding:12px;max-width:88%;border:1px solid rgba(25,51,64,.15);border-radius:12px;background:#fffdf8;box-shadow:0 3px 0 rgba(25,51,64,.07)}.chat-route-card span{color:#ad5b42;font:700 9px/1 Manrope,Arial,sans-serif;text-transform:uppercase;letter-spacing:.06em}.chat-route-card b{color:#193340;font:600 17px/1.2 'Playfair Display',serif}.chat-route-card p,.chat-route-card small{margin:0;color:#526768;font-size:10px}.chat-form{margin-top:12px;padding:13px;border:1px solid rgba(25,51,64,.13);border-radius:14px;background:#fffdf8}.chat-form textarea{min-height:72px}.chat-stickers{padding:5px;border-radius:999px;background:#f4f8f5}.chat-sticker{transition:transform .15s}.chat-sticker:hover{transform:translateY(-2px)}

/* Calm, book-like reading rhythm and an unobstructed hero photograph. */
body,button,input,select,textarea{font-family:'Nunito Sans',Manrope,Arial,sans-serif;font-variation-settings:'opsz' 9}.hero h1,.tours-section h2,.discovery-section h2,.journal-section h2,.gallery-section h2,.about-us h2,.tour-hero h1,.tour-detail h2,.program-item h3,.booking-card .price b{font-family:Lora,'Playfair Display',Georgia,serif;letter-spacing:-.035em}.hero-photo::before{display:none!important}.hero-photo{isolation:isolate;background-position:center 52%!important}.hero-photo::after{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(11,42,52,.06),transparent 54%,rgba(11,42,52,.19));pointer-events:none}.hero-photo .hero-stamp{z-index:1;background:rgba(255,253,248,.88);box-shadow:0 5px 20px rgba(18,50,61,.16)}.hero-photo .image-note{z-index:1;color:#fff;text-shadow:0 2px 14px rgba(7,34,43,.85);font-weight:700}.hero-photo .image-note span{color:#fff;font-weight:500}.hero-photo~.hero-bottom{color:#244653}@media(max-width:760px){.hero-photo{background-position:57% center!important}.hero-photo .image-note{max-width:150px}}

/* The photograph is a full-height half of the first screen, ending exactly at its lower rule. */
@media(min-width:761px){.hero{grid-template-areas:'copy photo';grid-template-rows:minmax(680px,auto)}.hero-copy{grid-area:copy}.hero-photo{grid-area:photo;align-self:stretch;min-height:680px;height:100%}.hero-bottom{z-index:2}}

/* Keep the main photograph continuous down to the lower travel line. */
@media(min-width:761px){.hero{height:max(680px,calc(100svh - 86px));min-height:0;grid-template-rows:1fr}.hero-photo{min-height:0;height:100%;padding-bottom:1px}.hero-bottom{background:linear-gradient(90deg,rgba(245,241,233,.03) 0 53%,transparent 53%);border-top-color:rgba(25,51,64,.36)}}

/* Separate traveller directory inside the administrator workspace. */
.traveler-directory{display:grid;gap:14px}.traveler-directory .admin-panel-head{align-items:end;margin:0}.traveler-directory .admin-panel-head>div{min-width:0}.traveler-directory .admin-heading{margin:0 0 7px}.traveler-directory .subcopy{margin:0}.traveler-directory .button{width:auto;margin:0;white-space:nowrap}.traveler-card{padding:15px 16px}.traveler-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.traveler-card h4{margin:0 0 6px}.traveler-count,.traveler-label{display:inline-flex;align-items:center;border-radius:999px;background:#e6f0eb;color:#395c55;padding:5px 8px;font:700 9px/1 Manrope,Arial,sans-serif;white-space:nowrap}.traveler-card .person-label{margin:11px 0 0}.traveler-card .admin-row-actions{margin-top:10px}.traveler-profile{display:grid;gap:22px}.traveler-profile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-bottom:17px;border-bottom:1px solid rgba(25,51,64,.14)}.traveler-profile-head .eyebrow{margin:0 0 8px}.traveler-profile-head h2{margin:0 0 7px}.traveler-profile-head p{margin:0;color:#536868;font-size:12px;line-height:1.5}.traveler-profile-head .traveler-label{margin-top:10px}.traveler-profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.traveler-profile-grid>section{min-width:0;padding:14px;border-radius:14px;background:#f4f8f5;border:1px solid rgba(25,51,64,.12)}.traveler-profile-grid h3{margin:0 0 12px;font:600 19px/1.2 'Playfair Display',serif;color:#193340}.traveler-profile-grid h3 small{font:700 10px Manrope,Arial,sans-serif;color:#7a8884}.traveler-history-item{display:grid;gap:4px;padding:10px 0;border-top:1px solid rgba(25,51,64,.12)}.traveler-history-item b{font:600 13px/1.35 Manrope,Arial,sans-serif;color:#193340}.traveler-history-item span,.traveler-history-item small{color:#637674;font:10px/1.4 Manrope,Arial,sans-serif}.traveler-profile-grid .empty{padding:3px 0;margin:0;font-size:11px}@media(max-width:760px){.traveler-directory .admin-panel-head{align-items:stretch;display:grid}.traveler-directory .button{width:100%}.traveler-card-head,.traveler-profile-head{display:grid}.traveler-profile-grid{grid-template-columns:1fr}.traveler-profile-head .danger-action{justify-self:start}}

/* Searchable review cards also carry the reviewer's contact and profile link. */
.admin-reviews-panel>.people-search,.interest-panel>.people-search{margin:12px 0 2px}.admin-review-person{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.admin-review-person>div{min-width:0}.admin-review-person small{overflow-wrap:anywhere}.review-person-link{margin-top:9px!important;font-size:10px!important}.interest-card .admin-row-actions{margin-top:10px}.review-search-empty,.interest-search-empty{padding:12px 0!important;margin:0!important}@media(max-width:760px){.admin-review-person{gap:8px}.admin-review-person span{white-space:nowrap}}

/* Keep route actions together when a long title fills a review card. */
.admin-review-route-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto;align-items:start;justify-content:initial}.admin-review-route-head>div{min-width:0}.admin-review-route-head h4{overflow-wrap:anywhere}.admin-review-route-head>.small-action{align-self:start;white-space:nowrap;margin:0!important;padding:8px 0 7px!important}.admin-review-route-head>[data-edit-tour]{margin-left:16px!important}@media(max-width:760px){.admin-review-route-head{grid-template-columns:minmax(0,1fr) auto;gap:8px}.admin-review-route-head>[data-edit-tour]{grid-column:2;margin-left:0!important;margin-top:-7px!important}.admin-review-route-head h4{font-size:17px}}

/* The hero photograph stops just above the travel caption, leaving the caption on a calm paper strip. */
@media(min-width:761px){.hero-photo{height:auto!important;align-self:stretch;margin-bottom:56px;padding-bottom:0!important;border-bottom:1px solid rgba(25,51,64,.18)}.hero-bottom{background:linear-gradient(90deg,#f5f1e9 0 53%,#ecf2ee 53% 100%)!important}}

/* A route-aware calendar for choosing a departure date. */
.tour-date-field{display:grid;gap:7px}.tour-date-field>label{font-size:11px;font-weight:700}.tour-date-picker{padding:15px;border:1px solid rgba(25,51,64,.16);border-radius:17px;background:linear-gradient(145deg,#fffdf8,#f1f6f2);box-shadow:0 7px 19px rgba(25,51,64,.06)}.tour-calendar-head{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:8px;margin-bottom:13px;text-align:center;color:#193340}.tour-calendar-head strong{font:700 13px/1.2 Lora,'Playfair Display',Georgia,serif}.tour-calendar-nav{display:grid;place-items:center;width:34px;height:31px;padding:0;border:1px solid rgba(25,51,64,.16);border-radius:10px;background:#fffdf8;color:#193340;font-size:16px;transition:background .16s,transform .16s}.tour-calendar-nav:hover:not(:disabled){background:#e2eee8;transform:translateY(-1px)}.tour-calendar-nav:disabled{cursor:default;opacity:.34}.tour-calendar-weekdays,.tour-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.tour-calendar-weekdays{margin-bottom:6px;color:#72817e;font:700 8px/1 'DM Mono',monospace;text-align:center;text-transform:uppercase}.tour-calendar-day,.tour-calendar-blank{min-height:43px;border-radius:10px}.tour-calendar-day{display:grid;place-items:center;gap:1px;padding:4px 1px;border:1px solid transparent;background:transparent;color:#244653;font:700 11px/1 'Nunito Sans',Manrope,Arial,sans-serif;transition:transform .16s,background .16s,border-color .16s}.tour-calendar-day:hover:not(:disabled){background:#e3efe9;border-color:#afc9bd;transform:translateY(-1px)}.tour-calendar-day small{font:700 7px/1 'DM Mono',monospace;color:#9d5947}.tour-calendar-day.is-selected{background:#193340;color:#fff;border-color:#193340;box-shadow:0 3px 0 rgba(25,51,64,.2)}.tour-calendar-day.is-selected small{color:#f9d3b4}.tour-calendar-day.is-limited{background:#fff0dc}.tour-calendar-day.is-busy{cursor:not-allowed;background:#eeeae2;color:#9a9c96;text-decoration:line-through;opacity:.8}.tour-calendar-day.is-outside{visibility:hidden}.tour-calendar-legend{display:flex;flex-wrap:wrap;gap:9px 13px;margin-top:12px;padding-top:11px;border-top:1px solid rgba(25,51,64,.1);color:#647573;font:8px/1.3 'DM Mono',monospace}.tour-calendar-legend span{display:inline-flex;align-items:center;gap:4px}.calendar-dot{width:7px;height:7px;border-radius:50%;background:#dbece3}.calendar-dot.limited{background:#edbd84}.calendar-dot.busy{background:#c4c6c0}.calendar-empty{margin:0;padding:12px;border:1px dashed rgba(25,51,64,.2);border-radius:12px;color:#667a78;font-size:11px}.form-grid .tour-date-field input[type="hidden"]{display:none}@media(max-width:480px){.tour-date-picker{padding:12px}.tour-calendar-weekdays,.tour-calendar-days{gap:3px}.tour-calendar-day,.tour-calendar-blank{min-height:38px}.tour-calendar-legend{gap:7px;font-size:7px}}
.tour-calendar-note{margin:12px 0 0;padding:8px 9px;border-radius:9px;background:#fff1df;color:#805d44;font-size:10px;line-height:1.45}

/* Quiet travel marker beneath the opening photograph. */
@media(min-width:761px){.hero-bottom{min-height:76px;padding:0 5.5vw!important;display:grid!important;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px;overflow:hidden;border-top:1px solid rgba(25,51,64,.16)!important;background:linear-gradient(90deg,#faf7f0 0 53%,#edf5f1 53% 100%)!important;color:#244653!important;font:500 10px/1 'DM Mono',monospace!important;letter-spacing:.045em}.hero-bottom::before{content:'';position:absolute;left:calc(53% - 20px);top:50%;width:40px;height:40px;border-radius:50%;border:1px solid rgba(196,102,78,.22);transform:translate(-50%,-50%);box-shadow:0 0 0 8px rgba(241,221,194,.28)}.hero-bottom span{position:relative;z-index:1}.hero-bottom span:first-child{display:flex;align-items:center;gap:9px;font:600 16px/1 Lora,serif;letter-spacing:0;color:#a65846}.hero-bottom span:first-child::after{content:'путь начинается';color:#677a77;font:500 8px/1 'DM Mono',monospace;letter-spacing:.11em;text-transform:uppercase}.hero-bottom span:nth-child(2){justify-self:center;padding:9px 19px;border:1px solid rgba(25,51,64,.13);border-radius:999px;background:rgba(255,253,248,.76);color:#385b61;box-shadow:0 2px 0 rgba(25,51,64,.05);font-size:9px;letter-spacing:.09em;text-transform:uppercase}.hero-bottom span:last-child{justify-self:end;display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;background:#193340;color:#fffdf8;box-shadow:0 3px 0 rgba(25,51,64,.15);font-size:9px;letter-spacing:.06em}.hero-bottom span:last-child::first-letter{color:#f5c8a7}}
@media(max-width:760px){.hero-bottom{min-height:59px;background:#faf7f0!important;color:#244653!important;border-top-color:rgba(25,51,64,.16)!important}.hero-bottom span:first-child{color:#a65846;font:600 15px/1 Lora,serif}.hero-bottom span:last-child{padding:7px 9px;border-radius:999px;background:#193340;color:#fffdf8;font-size:8px}}

/* Spacious month view inspired by a desktop calendar, with the day inspector kept beside the grid. */
.mac-calendar{overflow:hidden;border:1px solid rgba(25,51,64,.15);border-radius:20px;background:#fffdf8;box-shadow:0 10px 28px rgba(25,51,64,.07)}.mac-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid rgba(25,51,64,.12);background:linear-gradient(110deg,#f7ecdd,#edf5f0)}.mac-calendar-head .eyebrow{margin:0 0 5px}.mac-calendar-head h3{margin:0;color:#193340;font:600 24px/1.1 Lora,'Playfair Display',Georgia,serif}.mac-calendar-controls{display:flex;align-items:center;gap:6px}.mac-calendar-controls button{display:grid;place-items:center;min-width:34px;height:32px;padding:0 10px;border:1px solid rgba(25,51,64,.16);border-radius:9px;background:rgba(255,253,248,.9);color:#193340;font:700 17px/1 Manrope,Arial,sans-serif;transition:background .15s,transform .15s}.mac-calendar-controls button:first-child{font-size:10px}.mac-calendar-controls button:hover{background:#dcebe4;transform:translateY(-1px)}.mac-calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px}.mac-calendar-grid{min-width:0;padding:13px}.schedule-weekdays,.schedule-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.schedule-weekdays{border-bottom:1px solid rgba(25,51,64,.12);color:#7a8885;font:700 8px/1 'DM Mono',monospace;text-align:center;text-transform:uppercase;letter-spacing:.08em}.schedule-weekdays span{padding:7px 2px}.schedule-days{grid-auto-rows:minmax(82px,1fr);border-left:1px solid rgba(25,51,64,.1);border-top:1px solid rgba(25,51,64,.1)}.schedule-day{position:relative;display:grid;align-content:start;gap:6px;min-width:0;padding:8px;border:0;border-right:1px solid rgba(25,51,64,.1);border-bottom:1px solid rgba(25,51,64,.1);background:transparent;color:#193340;text-align:left;transition:background .14s,box-shadow .14s}.schedule-day:hover{background:#eff6f1}.schedule-day time{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font:700 11px/1 Manrope,Arial,sans-serif}.schedule-day.is-muted{background:#faf8f3;color:#a4aaa4}.schedule-day.is-today time{background:#df7056;color:#fff}.schedule-day.is-selected{background:#e5f0ea;box-shadow:inset 0 0 0 2px #688f84}.schedule-events{display:grid;gap:3px;min-width:0}.schedule-event{display:block;overflow:hidden;padding:3px 5px;border-radius:5px;background:#dbece4;color:#315850;font:700 8px/1.2 'Nunito Sans',Manrope,Arial,sans-serif;text-overflow:ellipsis;white-space:nowrap}.schedule-event.note{background:#f6ddbb;color:#7f573b}.schedule-event.paid{background:#d9e8f1;color:#355a6d}.schedule-event.booking{background:#eadcf0;color:#704b7c}.schedule-more{padding-left:4px;color:#7b8782;font:700 8px/1 'DM Mono',monospace}.schedule-inspector{display:grid;align-content:start;gap:10px;padding:19px;border-left:1px solid rgba(25,51,64,.12);background:#f7faf7}.schedule-inspector .eyebrow{margin:0}.schedule-inspector>h4{margin:0 0 3px;color:#193340;font:600 18px/1.25 Lora,'Playfair Display',Georgia,serif;text-transform:capitalize}.schedule-detail-list{display:grid;gap:8px}.schedule-detail{padding:11px;border-left:3px solid #6d978a;border-radius:9px;background:#fffdf8;box-shadow:0 2px 0 rgba(25,51,64,.05)}.schedule-detail.note{border-left-color:#d9965f}.schedule-detail.paid{border-left-color:#6b9eb7}.schedule-detail span{display:block;margin-bottom:5px;color:#72817e;font:700 8px/1 'DM Mono',monospace;letter-spacing:.06em;text-transform:uppercase}.schedule-detail h4{margin:0;color:#193340;font:700 11px/1.4 Nunito Sans,Manrope,Arial,sans-serif}.schedule-detail p,.schedule-detail small{margin:5px 0 0;color:#5f7371;font-size:10px;line-height:1.45}.schedule-empty{margin:0;padding:12px;border:1px dashed rgba(25,51,64,.18);border-radius:10px;color:#778783;font-size:10px;line-height:1.5}@media(max-width:760px){.mac-calendar-head{padding:15px}.mac-calendar-head h3{font-size:20px}.mac-calendar-layout{grid-template-columns:1fr}.mac-calendar-grid{padding:8px}.schedule-days{grid-auto-rows:minmax(62px,1fr)}.schedule-day{padding:5px}.schedule-day time{width:21px;height:21px;font-size:10px}.schedule-event{padding:3px;font-size:7px}.schedule-inspector{border-left:0;border-top:1px solid rgba(25,51,64,.12);padding:15px}.schedule-weekdays span{font-size:7px}.mac-calendar-controls button{min-width:30px;height:29px}}

/* A simple, continuous footer line for the opening frame. */
@media(min-width:761px){.hero-bottom{display:grid!important;grid-template-columns:1fr auto 1fr;min-height:58px;gap:20px;padding:0 5.5vw!important;border-top:1px solid rgba(25,51,64,.18)!important;background:#faf8f2!important;color:#38575b!important}.hero-bottom::before{display:none}.hero-bottom span:first-child{display:block;color:#b35e49;font:600 15px/1 Lora,'Playfair Display',Georgia,serif;letter-spacing:.02em}.hero-bottom span:first-child::after{display:none}.hero-bottom span:nth-child(2){justify-self:center;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:#46646a;font:500 9px/1 'DM Mono',monospace;letter-spacing:.12em;text-transform:uppercase}.hero-bottom span:last-child{justify-self:end;padding:0;border-radius:0;background:none;box-shadow:none;color:#46646a;font:500 9px/1 'DM Mono',monospace;letter-spacing:.08em}.hero-bottom span:last-child::first-letter{color:inherit}.hero-bottom span:last-child::after{content:'↘';padding-left:8px;color:#bd674e;font-size:13px}}
@media(max-width:760px){.hero-bottom{min-height:54px;background:#faf8f2!important}.hero-bottom span:first-child{font:600 14px/1 Lora,'Playfair Display',Georgia,serif}.hero-bottom span:last-child{padding:0;border-radius:0;background:none;color:#46646a;font:500 8px/1 'DM Mono',monospace}.hero-bottom span:last-child::after{content:'↘';padding-left:6px;color:#bd674e;font-size:11px}}

/* Navigation and compact history inside the separate administrator tabs. */
#adminScheduleCalendar .schedule-day{cursor:pointer}#adminScheduleCalendar .schedule-day::after{content:'＋';position:absolute;top:8px;right:7px;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#193340;color:#fff;font:700 12px/1 Manrope,Arial,sans-serif;opacity:0;transform:scale(.7);transition:opacity .14s,transform .14s}#adminScheduleCalendar .schedule-day:hover::after{opacity:1;transform:scale(1)}.schedule-event b{font-weight:800}.calendar-event-form h2{text-transform:capitalize}.calendar-event-form .subcopy{margin-bottom:20px}
#adminScheduleCalendar [data-schedule-event-id]{cursor:pointer}.schedule-detail.is-editable{position:relative;cursor:pointer;transition:background .15s,box-shadow .15s,transform .15s}.schedule-detail.is-editable::after{content:'›';position:absolute;top:50%;right:11px;color:#b66c45;font:700 22px/1 Manrope,Arial,sans-serif;transform:translateY(-50%)}.schedule-detail.is-editable:hover,.schedule-detail.is-editable:focus{background:#fff8ef;box-shadow:0 4px 12px rgba(160,103,61,.12);outline:0;transform:translateX(2px)}.schedule-detail-action{color:#b66c45!important;font-weight:700}.calendar-note-delete{justify-self:start;margin-top:2px!important}
/* Route editor: the controls follow the warm, paper-like visual language of the site. */
.modal:has(#addTourForm),.modal:has(#editTourForm){width:min(940px,calc(100% - 32px));padding:42px 46px;background:linear-gradient(145deg,#fffdf8 0%,#f7f2e8 100%)}.modal:has(#addTourForm) h2,.modal:has(#editTourForm) h2{margin-bottom:8px}.modal:has(#addTourForm) .subcopy,.modal:has(#editTourForm) .subcopy{max-width:620px;color:#657774}.modal #addTourForm,.modal #editTourForm{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;align-items:start}.modal #addTourForm>.form-reminder,.modal #editTourForm>.form-reminder,.modal #addTourForm>.template-picker,.modal #editTourForm>.template-picker,.modal #addTourForm>input[type="hidden"],.modal #editTourForm>input[type="hidden"],.modal #addTourForm>label:has(textarea),.modal #editTourForm>label:has(textarea),.modal #addTourForm>label:has([name="title"]),.modal #editTourForm>label:has([name="title"]),.modal #addTourForm>label:has([name="short_description"]),.modal #editTourForm>label:has([name="short_description"]),.modal #addTourForm>label:has([name="map_embed_url"]),.modal #editTourForm>label:has([name="map_embed_url"]),.modal #addTourForm>label:has([name="image_url"]),.modal #editTourForm>label:has([name="image_url"]),.modal #addTourForm>.button,.modal #editTourForm>.button{grid-column:1/-1}.modal #addTourForm .two-fields,.modal #editTourForm .two-fields{grid-column:1/-1}.modal #addTourForm>label,.modal #editTourForm>label,.modal #addTourForm .two-fields>label,.modal #editTourForm .two-fields>label{min-width:0;padding:11px 12px 12px;border:1px solid rgba(25,51,64,.12);border-radius:14px;background:rgba(255,253,248,.78);box-shadow:0 3px 10px rgba(25,51,64,.025);color:#395451;font:700 10px/1.2 'DM Mono',monospace;letter-spacing:.035em;text-transform:uppercase;transition:border-color .16s,box-shadow .16s,transform .16s}.modal #addTourForm>label:focus-within,.modal #editTourForm>label:focus-within,.modal #addTourForm .two-fields>label:focus-within,.modal #editTourForm .two-fields>label:focus-within{border-color:#789a91;box-shadow:0 7px 18px rgba(43,80,75,.10);transform:translateY(-1px)}.modal #addTourForm input,.modal #editTourForm input,.modal #addTourForm select,.modal #editTourForm select,.modal #addTourForm textarea,.modal #editTourForm textarea{width:100%;margin-top:8px;padding:10px 11px;border:1px solid rgba(25,51,64,.15);border-radius:10px;background:#fffefa;color:#193340;font:600 13px/1.35 'Nunito Sans',Manrope,Arial,sans-serif;letter-spacing:0;text-transform:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.9);transition:border-color .16s,background .16s,box-shadow .16s}.modal #addTourForm textarea,.modal #editTourForm textarea{min-height:102px;line-height:1.55}.modal #addTourForm select,.modal #editTourForm select{appearance:none;padding-right:37px;background-color:#fffefa;background-image:linear-gradient(45deg,transparent 50%,#8b6452 50%),linear-gradient(135deg,#8b6452 50%,transparent 50%);background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;cursor:pointer}.modal #addTourForm input[type="date"],.modal #editTourForm input[type="date"],.modal #addTourForm input[type="time"],.modal #editTourForm input[type="time"]{font-variant-numeric:tabular-nums}.modal #addTourForm .two-fields,.modal #editTourForm .two-fields{gap:12px}.modal #addTourForm .route-classification,.modal #editTourForm .route-classification{padding:11px;border:1px solid rgba(169,117,76,.22);border-radius:15px;background:linear-gradient(120deg,#fff4e6,#f2f7f2)}.modal #addTourForm .route-classification>label,.modal #editTourForm .route-classification>label{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.modal #addTourForm label.check,.modal #editTourForm label.check{display:flex!important;align-items:center;gap:10px;min-height:48px;padding:13px 14px!important;border-color:rgba(110,145,138,.34);background:linear-gradient(120deg,#eff7f1,#fffdf8);font:700 11px/1.35 'Nunito Sans',Manrope,Arial,sans-serif;letter-spacing:0;text-transform:none}.modal #addTourForm label.check input,.modal #editTourForm label.check input{appearance:none;flex:0 0 19px;width:19px!important;height:19px;margin:0;border:1.5px solid #7d9b92;border-radius:6px;background:#fffefa;cursor:pointer}.modal #addTourForm label.check input:checked,.modal #editTourForm label.check input:checked{border-color:#244c54;background:#244c54;background-image:linear-gradient(45deg,transparent 46%,#fff 46% 58%,transparent 58%),linear-gradient(-45deg,transparent 42%,#fff 42% 54%,transparent 54%);background-size:11px 11px;background-position:center;background-repeat:no-repeat}.modal #addTourForm .template-picker{padding:16px;border-radius:16px;background:linear-gradient(135deg,#e8f1ec,#fdf6eb);border-color:rgba(76,117,105,.22)}.modal #addTourForm .template-picker-head{align-items:center}.modal #addTourForm .template-card{border-radius:12px;border-color:rgba(25,51,64,.15);box-shadow:0 2px 0 rgba(25,51,64,.05);transition:transform .16s,background .16s,border-color .16s}.modal #addTourForm .template-card:hover{background:#fffefa;border-color:#668c84;transform:translateY(-2px)}.modal #addTourForm .button,.modal #editTourForm .button{min-height:54px;margin-top:8px;border-radius:14px;padding:16px 20px;background:linear-gradient(135deg,#193340,#315f67);box-shadow:0 10px 18px rgba(25,51,64,.18);font-weight:800;letter-spacing:.01em}.modal #addTourForm .button:hover,.modal #editTourForm .button:hover{background:linear-gradient(135deg,#244853,#3a706f);box-shadow:0 13px 22px rgba(25,51,64,.22)}@media(max-width:760px){.modal:has(#addTourForm),.modal:has(#editTourForm){width:calc(100% - 16px);padding:32px 18px}.modal #addTourForm,.modal #editTourForm{grid-template-columns:1fr;gap:11px}.modal #addTourForm>label,.modal #editTourForm>label,.modal #addTourForm .two-fields,.modal #editTourForm .two-fields{grid-column:auto}.modal #addTourForm .two-fields,.modal #editTourForm .two-fields{grid-template-columns:1fr}.modal #addTourForm>.form-reminder,.modal #editTourForm>.form-reminder,.modal #addTourForm>.template-picker,.modal #editTourForm>.template-picker,.modal #addTourForm>input[type="hidden"],.modal #editTourForm>input[type="hidden"],.modal #addTourForm>.button,.modal #editTourForm>.button{grid-column:auto}.modal #addTourForm .route-classification,.modal #editTourForm .route-classification{padding:10px}}
/* A single visual system for the full administrator workspace. */
.modal.admin-modal{width:min(1240px,calc(100vw - 28px));height:min(900px,calc(100vh - 24px));padding:18px;background:linear-gradient(135deg,#f3f7f3 0%,#f7f0e5 100%)}.admin-app-shell{gap:18px}.admin-app-header{position:relative;overflow:hidden;padding:24px 26px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:linear-gradient(120deg,#183743,#285a60);box-shadow:0 12px 28px rgba(20,49,56,.17)}.admin-app-header::after{content:'';position:absolute;right:-54px;top:-75px;width:220px;height:220px;border:1px solid rgba(255,231,197,.35);border-radius:47% 53% 41% 59% / 59% 43% 57% 41%;box-shadow:inset 0 0 0 18px rgba(215,237,228,.07);transform:rotate(-18deg);pointer-events:none}.admin-app-header>*,.admin-app-header .admin-shell-actions{position:relative;z-index:1}.admin-app-header h2{font:600 31px/1.05 Lora,'Playfair Display',Georgia,serif;letter-spacing:-.035em}.admin-app-header .eyebrow{color:#e4c99c}.admin-app-header p:not(.eyebrow){color:#deebe4}.admin-shell-actions .button,.admin-shell-actions #exitAdminPanel{min-height:40px!important;padding:10px 14px!important;border-radius:999px!important;background:rgba(255,253,248,.12)!important;color:#fffdf8!important;border-color:rgba(255,253,248,.52)!important;box-shadow:none!important}.admin-shell-actions .button:hover,.admin-shell-actions #exitAdminPanel:hover{background:#f3d4af!important;color:#193340!important;border-color:#f3d4af!important}.admin-shell-actions .logout{padding:9px 2px;color:#fffdf8;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(255,253,248,.6)}.admin-app-content{gap:16px}.modal.admin-modal .admin-tabs{display:flex;gap:7px;margin:0;padding:7px;border:1px solid rgba(25,51,64,.12);border-radius:15px;background:rgba(255,253,248,.72);box-shadow:0 4px 14px rgba(25,51,64,.05)}.modal.admin-modal .admin-tabs .tab{min-height:36px;margin:0;padding:9px 12px;border:0;border-radius:10px;color:#60726f;font:800 10px/1 'Nunito Sans',Manrope,Arial,sans-serif;white-space:nowrap}.modal.admin-modal .admin-tabs .tab:hover{background:#e5efe9;color:#193340}.modal.admin-modal .admin-tabs .tab.active{background:#193340;color:#fff;border-bottom:0;box-shadow:0 3px 0 rgba(25,51,64,.14)}.modal.admin-modal .stats{gap:12px;margin:0}.modal.admin-modal .stats>div{position:relative;overflow:hidden;padding:15px 16px;border:1px solid rgba(25,51,64,.12);border-radius:14px;background:#fffdf8;box-shadow:0 5px 13px rgba(25,51,64,.055)}.modal.admin-modal .stats>div::after{content:'';position:absolute;right:-15px;bottom:-23px;width:66px;height:66px;border-radius:50%;background:rgba(221,238,231,.56)}.modal.admin-modal .stats small{position:relative;z-index:1;font:700 9px/1 'DM Mono',monospace;letter-spacing:.07em;text-transform:uppercase;color:#71817f}.modal.admin-modal .stats b{position:relative;z-index:1;font:600 25px/1.05 Lora,'Playfair Display',Georgia,serif;color:#193340}.modal.admin-modal .admin-actions{display:flex;gap:9px;padding:13px;border:1px solid rgba(25,51,64,.12);border-radius:15px;background:rgba(255,253,248,.7)}.modal.admin-modal .admin-actions .button{min-height:42px;padding:11px 15px;font-size:11px}.modal.admin-modal .admin-panel{margin:0;padding:21px;border:1px solid rgba(25,51,64,.13);border-radius:17px;background:rgba(255,253,248,.88);box-shadow:0 8px 20px rgba(25,51,64,.055)}.modal.admin-modal .admin-panel-head{margin:0 0 14px}.modal.admin-modal .admin-heading{margin:0;color:#193340;font:600 25px/1.1 Lora,'Playfair Display',Georgia,serif;letter-spacing:-.025em}.modal.admin-modal .subcopy{color:#637773}.modal.admin-modal .booking,.modal.admin-modal .traveler-card,.modal.admin-modal .interest-card{margin:0 0 10px;padding:15px 16px;border:1px solid rgba(25,51,64,.12);border-radius:13px;background:#fffefa;box-shadow:0 3px 0 rgba(25,51,64,.035);transition:box-shadow .16s,transform .16s}.modal.admin-modal .booking:hover,.modal.admin-modal .traveler-card:hover,.modal.admin-modal .interest-card:hover{box-shadow:0 9px 18px rgba(25,51,64,.08);transform:translateY(-1px)}.modal.admin-modal .booking h4,.modal.admin-modal .traveler-card h4{font:600 20px/1.2 Lora,'Playfair Display',Georgia,serif;color:#193340}.modal.admin-modal .booking p{color:#60716f}.modal.admin-modal .tour-metrics{gap:7px;margin:13px 0}.modal.admin-modal .tour-metrics span{padding:9px;border-radius:9px;background:#f0f6f1;border-color:#dfeae3;color:#68807a}.modal.admin-modal .tour-metrics b{font:800 13px/1 Manrope,Arial,sans-serif}.modal.admin-modal .people-search{min-height:43px;padding:11px 14px 11px 39px;border:1px solid rgba(25,51,64,.16);border-radius:12px;background:#fffefa linear-gradient(90deg,transparent 0 14px,#6b847d 14px 15px,transparent 15px) no-repeat;background-size:100% 1px;color:#193340;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.modal.admin-modal .people-search:focus{border-color:#789a91;box-shadow:0 0 0 3px rgba(102,140,132,.14)}.modal.admin-modal .people-search::placeholder{color:#8a9894}.modal.admin-modal .approval-actions,.modal.admin-modal .admin-row-actions{gap:8px!important;margin-top:12px}.modal.admin-modal .small-action,.modal:has(#templateForm) .small-action,.modal:has(#siteProfileForm) .small-action,.modal:has(#manualBookingForm) .small-action,.modal:has(#addPersonForm) .small-action,.modal:has(#noteForm) .small-action{min-height:33px;padding:7px 11px!important;border:1px solid rgba(25,51,64,.15)!important;border-radius:999px!important;background:#fffdf8!important;color:#405b59!important;text-decoration:none!important}.modal.admin-modal .small-action:hover,.modal:has(#templateForm) .small-action:hover,.modal:has(#siteProfileForm) .small-action:hover,.modal:has(#manualBookingForm) .small-action:hover,.modal:has(#addPersonForm) .small-action:hover,.modal:has(#noteForm) .small-action:hover{background:#e2eee8!important;border-color:#75988d!important;color:#193340!important}.modal.admin-modal .danger-action,.modal:has(#templateForm) .danger-action,.modal:has(#siteProfileForm) .danger-action,.modal:has(#manualBookingForm) .danger-action,.modal:has(#addPersonForm) .danger-action,.modal:has(#noteForm) .danger-action{background:#fff3ee!important;border-color:#e4ada0!important;color:#ad4839!important}.modal.admin-modal .admin-collapsible{border-color:rgba(25,51,64,.13);border-radius:14px;background:#fffefa}.modal.admin-modal .admin-collapsible summary{padding:16px 17px;font-family:Lora,'Playfair Display',Georgia,serif;color:#193340}.modal.admin-modal .admin-collapsible summary span{background:#e5f0ea;color:#396258}.modal:has(#templateForm),.modal:has(#siteProfileForm),.modal:has(#manualBookingForm),.modal:has(#addPersonForm),.modal:has(#noteForm){width:min(760px,calc(100% - 32px));padding:38px 42px;background:linear-gradient(145deg,#fffdf8,#f4f7f0)}.modal:has(#templateForm) h2,.modal:has(#siteProfileForm) h2,.modal:has(#manualBookingForm) h2,.modal:has(#addPersonForm) h2,.modal:has(#noteForm) h2{font-family:Lora,'Playfair Display',Georgia,serif;color:#193340}.modal #templateForm,.modal #siteProfileForm,.modal #manualBookingForm,.modal #addPersonForm,.modal #noteForm{gap:14px}.modal #templateForm>label,.modal #siteProfileForm>label,.modal #manualBookingForm>label,.modal #addPersonForm>label,.modal #noteForm>label{padding:11px 12px 12px;border:1px solid rgba(25,51,64,.12);border-radius:13px;background:rgba(255,253,248,.85);color:#395451;font:700 10px/1.2 'DM Mono',monospace;letter-spacing:.035em;text-transform:uppercase}.modal #templateForm input,.modal #templateForm select,.modal #templateForm textarea,.modal #siteProfileForm input,.modal #siteProfileForm select,.modal #siteProfileForm textarea,.modal #manualBookingForm input,.modal #manualBookingForm select,.modal #manualBookingForm textarea,.modal #addPersonForm input,.modal #addPersonForm select,.modal #addPersonForm textarea,.modal #noteForm input,.modal #noteForm select,.modal #noteForm textarea{width:100%;margin-top:8px;padding:10px 11px;border:1px solid rgba(25,51,64,.15);border-radius:10px;background:#fffefa;color:#193340;font:600 13px/1.4 'Nunito Sans',Manrope,Arial,sans-serif}.modal #templateForm select,.modal #manualBookingForm select{appearance:none;padding-right:37px;background-color:#fffefa;background-image:linear-gradient(45deg,transparent 50%,#8b6452 50%),linear-gradient(135deg,#8b6452 50%,transparent 50%);background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.modal #templateForm .template-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:15px;border:1px solid rgba(169,117,76,.24);border-radius:15px;background:linear-gradient(135deg,#fff5e8,#eef6f1)}.modal #templateForm .template-fields legend{padding:0 7px;color:#704a39;font:700 11px 'DM Mono',monospace;text-transform:uppercase}.modal #templateForm .template-fields .check{display:flex!important;align-items:center;gap:8px;min-height:38px;padding:8px 9px!important;border:1px solid transparent;border-radius:9px;background:rgba(255,253,248,.7);font:700 11px/1.25 'Nunito Sans',Manrope,Arial,sans-serif;text-transform:none;letter-spacing:0}.modal #templateForm .template-fields .check:hover{border-color:#a5c1b6;background:#fffefa}.modal #templateForm .template-fields input[type="checkbox"]{appearance:auto;width:auto;margin:0;accent-color:#315f58}.modal #templateForm .template-source-preview{padding:15px;border:1px solid rgba(25,51,64,.14);border-radius:14px;background:#fffefa}.modal #templateForm .template-route-glance{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0}.modal #templateForm .template-route-glance span{padding:5px 8px;border-radius:999px;background:#e6f0eb;color:#476861;font:700 9px 'DM Mono',monospace}.modal #templateForm .template-route-glance p{width:100%;padding:8px 0 0;border-top:1px solid rgba(25,51,64,.1)}.modal #templateForm .button,.modal #siteProfileForm .button,.modal #manualBookingForm .button,.modal #addPersonForm .button,.modal #noteForm .button{min-height:52px;border-radius:14px;background:linear-gradient(135deg,#193340,#315f67);box-shadow:0 9px 18px rgba(25,51,64,.17);font-weight:800}.modal #templateForm .button:hover,.modal #siteProfileForm .button:hover,.modal #manualBookingForm .button:hover,.modal #addPersonForm .button:hover,.modal #noteForm .button:hover{background:linear-gradient(135deg,#244853,#3a706f)}@media(max-width:760px){.modal.admin-modal{width:calc(100% - 12px);height:calc(100vh - 12px);padding:10px}.admin-app-header{padding:20px 18px}.admin-app-header h2{font-size:26px}.modal.admin-modal .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.modal.admin-modal .admin-tabs{gap:5px;padding:5px}.modal.admin-modal .admin-tabs .tab{padding:9px 10px}.modal.admin-modal .admin-panel{padding:16px}.modal:has(#templateForm),.modal:has(#siteProfileForm),.modal:has(#manualBookingForm),.modal:has(#addPersonForm),.modal:has(#noteForm){width:calc(100% - 16px);padding:32px 18px}.modal #templateForm .template-fields{grid-template-columns:1fr}}
/* Documents, chats and the configurable front page use the same administrative canvas. */
.modal:has(#travelerDocumentForm),.modal:has(.chat-thread),.modal:has([data-open-chat]){width:min(780px,calc(100% - 32px));padding:38px 42px;background:linear-gradient(145deg,#fffdf8,#f1f6f1)}.modal #travelerDocumentForm{gap:14px}.modal #travelerDocumentForm>label{padding:11px 12px 12px;border:1px solid rgba(25,51,64,.12);border-radius:13px;background:#fffefa;color:#395451;font:700 10px/1.2 'DM Mono',monospace;letter-spacing:.035em;text-transform:uppercase}.modal #travelerDocumentForm input,.modal #travelerDocumentForm select{width:100%;margin-top:8px;padding:10px 11px;border:1px solid rgba(25,51,64,.15);border-radius:10px;background:#fffefa;color:#193340;font:600 13px/1.4 'Nunito Sans',Manrope,Arial,sans-serif}.modal #travelerDocumentForm input[type="file"]{border-style:dashed;background:#f7faf7;cursor:pointer}.modal #travelerDocumentForm .button{min-height:52px;border-radius:14px;background:linear-gradient(135deg,#193340,#315f67);font-weight:800}.modal:has(#travelerDocumentForm)>.booking,.modal:has([data-open-chat])>.booking{padding:14px 15px;border:1px solid rgba(25,51,64,.12);border-radius:13px;background:#fffefa}.modal:has(#travelerDocumentForm)>.booking h4,.modal:has([data-open-chat])>.booking h4{font-family:Lora,'Playfair Display',Georgia,serif;color:#193340}.modal:has(.chat-thread) .chat-thread{max-height:430px;padding:11px;border:1px solid rgba(25,51,64,.12);border-radius:15px;background:linear-gradient(145deg,#edf5f1,#fbf7ee)}.modal:has(.chat-thread) .chat-message{padding:11px 13px;border:0;border-radius:14px 14px 14px 4px;background:#fffefa;box-shadow:0 3px 9px rgba(25,51,64,.06)}.modal:has(.chat-thread) .chat-message.mine{border-radius:14px 14px 4px 14px;background:#dbece4;box-shadow:none}.modal:has(.chat-thread) .chat-route-card{border-radius:12px;background:linear-gradient(135deg,#f6dfbd,#fff8e8);border-color:#e6ba83}.modal:has(.chat-thread) .chat-compose-tools{padding:9px;border:1px solid rgba(25,51,64,.12);border-radius:12px;background:#f5f8f4}.modal:has(.chat-thread) .chat-attachment-label,.modal:has(.chat-thread) .chat-sticker{border-radius:9px;border-color:rgba(25,51,64,.15);background:#fffefa}.modal:has(.chat-thread) .chat-form .button{min-height:50px;border-radius:14px;background:linear-gradient(135deg,#193340,#315f67);font-weight:800}.modal #siteProfileForm .home-content-editor{padding:0;border:1px solid rgba(169,117,76,.25);border-radius:15px;background:linear-gradient(135deg,#fff4e6,#eff6f1);overflow:hidden}.modal #siteProfileForm .home-content-editor summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;cursor:pointer;color:#193340;font:600 18px/1.2 Lora,'Playfair Display',Georgia,serif;list-style:none}.modal #siteProfileForm .home-content-editor summary::-webkit-details-marker{display:none}.modal #siteProfileForm .home-content-editor summary span{font:700 9px/1 'DM Mono',monospace;letter-spacing:.05em;color:#6e7e79;text-transform:uppercase}.modal #siteProfileForm .home-content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 14px 14px}.modal #siteProfileForm .home-content-grid label{padding:10px 11px;border:1px solid rgba(25,51,64,.11);border-radius:11px;background:#fffefa;color:#49615e;font:700 9px/1.25 'DM Mono',monospace;letter-spacing:.025em;text-transform:uppercase}.modal #siteProfileForm .home-content-grid input,.modal #siteProfileForm .home-content-grid textarea{margin-top:7px}.modal #siteProfileForm .home-content-grid textarea{min-height:78px}.modal #siteProfileForm .guide-editor{padding:14px;border:1px solid rgba(25,51,64,.13);border-radius:15px;background:#fffefa}.modal #siteProfileForm .guide-editor-row{padding:14px;border:1px solid rgba(25,51,64,.11);border-radius:12px;background:#f5f9f5}.modal #siteProfileForm .guide-editor-row label{margin-top:10px}@media(max-width:760px){.modal:has(#travelerDocumentForm),.modal:has(.chat-thread),.modal:has([data-open-chat]){width:calc(100% - 16px);padding:32px 18px}.modal #siteProfileForm .home-content-grid{grid-template-columns:1fr}.modal #siteProfileForm .home-content-editor summary{align-items:flex-start;flex-direction:column}.modal:has(.chat-thread) .chat-thread{max-height:340px}}
.admin-return-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 18px}.admin-return-actions .admin-back{margin:0}.admin-return-actions .admin-overview{background:#e4efe9!important}.admin-tabs{overflow-x:auto;scrollbar-width:thin;white-space:nowrap;padding-bottom:1px}.admin-tabs .tab{flex:0 0 auto}.bookings-directory,.calendar-directory{display:grid;gap:14px}.bookings-directory .admin-panel-head,.calendar-directory .admin-panel-head{margin:0}.bookings-directory>.people-search{margin:0}.admin-collapsible{border:1px solid rgba(25,51,64,.15);border-radius:15px;background:#fffdf8;overflow:hidden}.admin-collapsible summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:15px 17px;color:#193340;font:600 18px/1.2 'Playfair Display',serif;list-style:none}.admin-collapsible summary::-webkit-details-marker{display:none}.admin-collapsible summary::after{content:'⌄';font:700 17px/1 Manrope,Arial,sans-serif;transition:transform .16s}.admin-collapsible[open] summary::after{transform:rotate(180deg)}.admin-collapsible summary span{display:grid;place-items:center;min-width:25px;height:25px;border-radius:50%;background:#e6f0eb;color:#395c55;font:700 10px/1 Manrope,Arial,sans-serif;margin-left:auto}.admin-collapsible-content{display:grid;gap:9px;padding:0 13px 13px;border-top:1px solid rgba(25,51,64,.11)}.admin-collapsible-content .booking{margin:0}.booking-search-empty{padding:0!important;margin:0!important}.traveler-card.archived{opacity:.72;background:#f1f3f0}.traveler-card.archived .traveler-count{background:#e8e4dc;color:#6d665d}@media(max-width:760px){.admin-return-actions{display:grid;grid-template-columns:1fr 1fr}.admin-return-actions .admin-back{justify-content:center}.admin-collapsible summary{padding:14px;font-size:16px}.admin-collapsible-content{padding:0 9px 9px}.admin-tabs{margin-left:-2px;margin-right:-2px}}

/* Warm, light surroundings for full-screen route photographs. */
.modal-backdrop:has(.tour-lightbox){background:rgba(239,229,212,.96)!important;backdrop-filter:blur(12px)}
.chat-service-card{display:grid;gap:5px;max-width:88%;margin:12px auto;padding:12px;border:1px solid #b8d4c4;border-radius:12px;background:linear-gradient(135deg,#e8f2ec,#fffdf8);box-shadow:0 3px 0 rgba(25,51,64,.06)}.chat-service-card.paid{border-color:#e8bd87;background:linear-gradient(135deg,#fff0da,#fffdf8)}.chat-service-card span{color:#47786b;font:700 9px/1 Manrope,Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}.chat-service-card.paid span{color:#a75a37}.chat-service-card b{color:#193340;font:600 16px/1.2 Lora,'Playfair Display',Georgia,serif}.chat-service-card p,.chat-service-card small{margin:0;color:#526768;font-size:10px;line-height:1.5}
.modal:has(.tour-lightbox){background:#f6ecdc!important;border:1px solid rgba(124,91,61,.14);box-shadow:0 20px 60px rgba(73,52,34,.17)}
.tour-lightbox img{background:#efe0c9!important}
.tour-lightbox p{color:#765f4d}
@media(max-width:760px){.modal-backdrop:has(.tour-lightbox){background:rgba(239,229,212,.98)}}

/* Booking uses the same calm paper cards and clear choices as the rest of the site. */
.modal:has(#quickBookForm),.modal:has(#quickBookUserForm),.modal:has(#amountForm){width:min(760px,calc(100% - 32px));padding:38px 42px;background:linear-gradient(145deg,#fffdf8,#f2f7f1)}
.modal #quickBookForm,.modal #quickBookUserForm,.modal #amountForm{gap:15px}.modal #quickBookForm>label,.modal #quickBookUserForm>label,.modal #amountForm>label{padding:11px 12px 12px;border:1px solid rgba(25,51,64,.12);border-radius:13px;background:#fffefa;color:#395451;font:700 10px/1.2 'DM Mono',monospace;letter-spacing:.035em;text-transform:uppercase}
.modal #quickBookForm input,.modal #quickBookForm select,.modal #quickBookUserForm input,.modal #quickBookUserForm select,.modal #amountForm input,.modal #amountForm select{width:100%;margin-top:8px;padding:10px 11px;border:1px solid rgba(25,51,64,.15);border-radius:10px;background:#fffefa;color:#193340;font:600 13px/1.4 'Nunito Sans',Manrope,Arial,sans-serif}
.booking-flow-section{display:grid;gap:11px;padding:15px;border:1px solid rgba(25,51,64,.13);border-radius:17px;background:linear-gradient(135deg,#f6fbf7,#fff7eb)}.booking-details-section{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.booking-details-section>label{min-width:0;padding:10px 11px;border:1px solid rgba(25,51,64,.11);border-radius:11px;background:#fffefa;color:#3d5957;font:700 10px/1.25 'DM Mono',monospace;letter-spacing:.025em;text-transform:uppercase}.booking-details-section>label.check{grid-column:1/-1;display:flex;align-items:center;gap:9px;font:700 11px/1.35 'Nunito Sans',Manrope,Arial,sans-serif;letter-spacing:0;text-transform:none}.booking-details-section>label.check input{width:auto;margin:0;accent-color:#315f58}.booking-details-section>label.check+label.check{margin-top:-5px}.booking-agreement-section{background:linear-gradient(135deg,#fff5e8,#f4f8f5)}
.booking-window{margin:0;padding:10px 12px;border:1px solid rgba(169,117,76,.24);border-radius:11px;background:#fff7eb;color:#765942;font:700 10px/1.55 'DM Mono',monospace;letter-spacing:.015em}.tour-date-field>label{color:#3d5957;font:700 10px/1.25 'DM Mono',monospace;letter-spacing:.04em;text-transform:uppercase}
.tour-date-picker{padding:16px;border:1px solid rgba(25,51,64,.14);border-radius:16px;background:#fffefa;box-shadow:0 5px 16px rgba(25,51,64,.055)}.tour-calendar-head{margin-bottom:10px}.tour-calendar-head strong{font:600 18px/1.1 Lora,'Playfair Display',Georgia,serif}.tour-calendar-nav{width:35px!important;height:33px;padding:0!important;border-radius:10px!important;background:#f2f7f2!important}.tour-calendar-selection{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 13px;padding:9px 10px;border:1px dashed rgba(25,51,64,.18);border-radius:10px;background:#f7f4ed;color:#71807d}.tour-calendar-selection span{font:700 8px/1 'DM Mono',monospace;letter-spacing:.07em;text-transform:uppercase}.tour-calendar-selection b{font:600 12px/1.25 'Nunito Sans',Manrope,Arial,sans-serif}.tour-calendar-selection.is-selected{border-style:solid;border-color:#8cae9e;background:#e6f1eb;color:#24534d}.tour-calendar-days{gap:5px}.tour-calendar-day{min-height:45px;border-radius:11px!important}.tour-calendar-day:hover:not(:disabled){background:#e7f1eb!important}.tour-calendar-day.is-selected{background:#193340!important;color:#fff!important;box-shadow:0 4px 0 rgba(25,51,64,.18)!important}.tour-calendar-legend{padding:11px 2px 0}
.payment-method-picker{display:grid;gap:9px;margin:0;padding:15px;border:1px solid rgba(25,51,64,.13);border-radius:17px;background:linear-gradient(135deg,#edf5f0,#fff5e8)}.payment-method-picker legend{padding:0 5px;color:#395451;font:700 10px/1 'DM Mono',monospace;letter-spacing:.06em;text-transform:uppercase}.payment-method-option{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid rgba(25,51,64,.12);border-radius:12px;background:#fffefa;cursor:pointer;transition:border-color .16s,transform .16s,background .16s}.payment-method-option:hover{border-color:#7e9d93;background:#fff}.payment-method-option:has(input:checked){border-color:#54796f;background:#e7f1eb;box-shadow:0 3px 0 rgba(49,95,88,.09)}.payment-method-option.cash:has(input:checked){border-color:#c28a63;background:#fff0dd}.payment-method-option input{flex:0 0 17px;width:17px!important;height:17px;margin:2px 0 0!important;accent-color:#315f58}.payment-method-option span{display:grid;gap:3px;min-width:0}.payment-method-option b{color:#193340;font:800 12px/1.25 'Nunito Sans',Manrope,Arial,sans-serif}.payment-method-option small{color:#637572;font:10px/1.4 'Nunito Sans',Manrope,Arial,sans-serif}.payment-note{margin:0;padding:11px 12px;border-left:3px solid #d69a63;border-radius:10px;background:#fff6e8;color:#765942;font-size:10px;line-height:1.55}.booking-terms{display:flex!important;align-items:flex-start;gap:9px;padding:12px!important;border:1px solid rgba(25,51,64,.13);border-radius:12px;background:#f5f9f5;font-size:11px!important;line-height:1.45!important;text-transform:none!important;letter-spacing:0!important}.booking-terms input{flex:0 0 17px;width:17px!important;height:17px;margin:0!important;accent-color:#315f58}.modal #quickBookForm .button,.modal #quickBookUserForm .button,.modal #amountForm .button{min-height:53px;margin-top:3px;border-radius:14px;background:linear-gradient(135deg,#193340,#315f67);box-shadow:0 9px 18px rgba(25,51,64,.17);font-weight:800}
@media(max-width:760px){.modal:has(#quickBookForm),.modal:has(#quickBookUserForm),.modal:has(#amountForm){width:calc(100% - 16px);padding:32px 18px}.booking-details-section{grid-template-columns:1fr}.tour-calendar-day{min-height:40px}.tour-calendar-selection{align-items:flex-start;flex-direction:column;gap:5px}}

/* Keep every booking action readable instead of allowing neighbouring labels to touch. */
.account-modal .booking .approval-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:13px}.account-modal .booking .approval-actions .small-action{margin:0!important}.approval-note{display:inline-flex;align-items:center;min-height:33px;padding:7px 10px;border:1px dashed rgba(169,117,76,.45);border-radius:999px;background:#fff8ed;color:#765942;font:700 10px/1.35 'Nunito Sans',Manrope,Arial,sans-serif}.approval-queue{border-color:rgba(169,117,76,.34)!important;background:linear-gradient(135deg,#fff8ec,#f5faf6)!important}.approval-queue summary span{background:#f3d7b0!important;color:#704a39!important}

/* Editorial workspace for the public travel journal. */
.journal-directory{display:grid;gap:14px}.journal-directory .admin-panel-head{align-items:end;margin:0}.journal-directory .admin-panel-head>div{min-width:0}.journal-directory .button{margin:0;white-space:nowrap}.journal-admin-list{display:grid;gap:10px}.journal-admin-card{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.journal-admin-card>div:first-child{min-width:0}.journal-admin-card h4{margin:5px 0 8px}.journal-admin-card p:not(.eyebrow){margin:0;color:#5e7370;font-size:12px;line-height:1.5}.journal-admin-card .admin-row-actions{flex:0 0 auto;margin:0}.modal:has(.article-editor){width:min(780px,calc(100% - 32px));padding:38px 42px;background:linear-gradient(145deg,#fffdf8,#f2f7f1)}.article-editor .form-grid{gap:14px}.article-editor label{padding:11px 12px 12px;border:1px solid rgba(25,51,64,.12);border-radius:13px;background:#fffefa;color:#395451;font:700 10px/1.2 'DM Mono',monospace;letter-spacing:.035em;text-transform:uppercase}.article-editor input,.article-editor textarea{width:100%;margin-top:8px;padding:10px 11px;border:1px solid rgba(25,51,64,.15);border-radius:10px;background:#fffefa;color:#193340;font:600 13px/1.4 'Nunito Sans',Manrope,Arial,sans-serif}.article-editor textarea{min-height:210px;resize:vertical}.article-editor .check{display:flex;align-items:center;gap:9px;text-transform:none;letter-spacing:0;font-family:'Nunito Sans',Manrope,Arial,sans-serif}.article-editor .check input{width:auto;margin:0;accent-color:#315f58}.article-editor .button{min-height:52px;border-radius:14px;background:linear-gradient(135deg,#193340,#315f67);font-weight:800}@media(max-width:760px){.journal-directory .admin-panel-head{display:grid;align-items:stretch}.journal-directory .button{width:100%}.journal-admin-card{display:grid;gap:12px}.journal-admin-card .admin-row-actions{flex-wrap:wrap}.modal:has(.article-editor){width:calc(100% - 16px);padding:32px 18px}}

/* Availability is visible before a traveller commits to a time. */
.time-availability{grid-column:1/-1;display:flex;align-items:center;gap:7px;min-height:38px;margin:0;padding:9px 11px;border:1px solid rgba(80,120,111,.22);border-radius:11px;background:#edf6f0;color:#41635c;font:600 11px/1.45 'Nunito Sans',Manrope,Arial,sans-serif}.time-availability.is-busy{border-color:#dda394;background:#fff1ea;color:#9f4739}.availability-dot{width:8px;height:8px;border-radius:50%;background:#6ca68b;box-shadow:0 0 0 3px rgba(108,166,139,.14)}.availability-dot.limited{background:#d89a57;box-shadow:0 0 0 3px rgba(216,154,87,.14)}.availability-dot.busy{background:#ca6350;box-shadow:0 0 0 3px rgba(202,99,80,.14)}.tour-calendar-day small{display:block;max-width:100%;overflow:hidden;color:inherit;font-size:7px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.tour-calendar-day.is-limited small{color:#986137}.tour-calendar-day.is-busy small{color:#a54e3f}.tour-calendar-day.is-scheduled{background:#fff4e5;border-color:#e7c394;color:#8a5a31}.tour-calendar-day.is-scheduled small{color:#955f32}
