/* public-shell.css */
/* Structural implementation only. Exact locked visual-system token mapping belongs to the fidelity pass. */
:root {
  --ec-shell: 76rem;
  --ec-gutter: clamp(1rem, 4vw, 2rem);
  --ec-space-1: .5rem;
  --ec-space-2: 1rem;
  --ec-space-3: 1.5rem;
  --ec-space-4: 2.5rem;
  --ec-space-5: 4rem;
  --ec-radius-structural: .75rem;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.5; }
a { color: inherit; }
button, input, select { font: inherit; }
button, input, select, a { min-height: 2.75rem; }
img { display: block; max-width: 100%; height: auto; }
.ec-shell { width: min(100% - (2 * var(--ec-gutter)), var(--ec-shell)); margin-inline: auto; }
.ec-skip-link { position: fixed; inset-inline-start: 1rem; inset-block-start: -5rem; z-index: 1000; padding: .75rem 1rem; background: Canvas; color: CanvasText; }
.ec-skip-link:focus { inset-block-start: 1rem; }
.ec-site-header__inner { display: flex; align-items: center; justify-content: space-between; gap: var(--ec-space-2); min-height: 4.5rem; }
.ec-brand { display: inline-flex; flex-direction: column; justify-content: center; min-height: 2.75rem; text-decoration: none; line-height: 1; }
.ec-brand__by { font-size: .75em; margin-top: .35rem; }
.ec-primary-nav ul, .ec-utility-nav ul { display: flex; align-items: center; gap: var(--ec-space-2); padding: 0; margin: 0; list-style: none; }
.ec-primary-nav a, .ec-utility-nav a { display: inline-flex; align-items: center; text-decoration: none; }
.ec-menu-toggle { display: none; }
.ec-main { min-height: 65vh; }
.ec-hero, .ec-page-header { padding-block: var(--ec-space-5); }
.ec-hero__content, .ec-page-header { display: grid; gap: var(--ec-space-2); }
.ec-hero h1, .ec-page-header h1, .ec-entity-hero h1 { margin: 0; max-width: 20ch; line-height: 1.05; }
.ec-kicker { margin: 0; text-transform: uppercase; letter-spacing: .08em; font-size: .8rem; }
.ec-dek { max-width: 52rem; font-size: 1.125rem; }
.ec-section { padding-block: var(--ec-space-4); }
.ec-section--cinematic { padding-block: var(--ec-space-5); }
.ec-section__heading { display: flex; align-items: end; justify-content: space-between; gap: var(--ec-space-2); margin-bottom: var(--ec-space-3); }
.ec-content-slot:empty { min-height: 1px; }
.ec-category-shortcuts, .ec-tabs, .ec-actions, .ec-discover__utilities { display: flex; flex-wrap: wrap; gap: var(--ec-space-1); }
.ec-category-shortcuts a, .ec-tabs button, .ec-actions button, .ec-discover__utilities button { display: inline-flex; align-items: center; padding-inline: 1rem; }
.ec-search-form { display: grid; gap: var(--ec-space-1); width: min(100%, 52rem); }
.ec-search-form__row { display: grid; grid-template-columns: 1fr auto; }
.ec-search-form input { width: 100%; }
.ec-filter-bar { display: grid; gap: var(--ec-space-2); grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: end; }
.ec-filter-bar label { display: grid; gap: .35rem; }
.ec-filter-bar .ec-checkbox { display: flex; align-items: center; min-height: 2.75rem; }
.ec-discover, .ec-events-discovery, .ec-search-page { display: grid; gap: var(--ec-space-3); padding-bottom: var(--ec-space-5); }
.ec-results { display: grid; gap: var(--ec-space-2); }
.ec-search-groups { display: grid; gap: var(--ec-space-4); }
.ec-entity-hero { position: relative; display: grid; align-items: end; min-height: 18rem; }
.ec-entity-hero__media { margin: 0; }
.ec-entity-hero__content { padding-block: var(--ec-space-4); display: grid; gap: var(--ec-space-2); }
.ec-entity-body { display: grid; grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr); gap: var(--ec-space-4); padding-block: var(--ec-space-4); }
.ec-prose { max-width: 48rem; }
.ec-empty-state { padding-block: var(--ec-space-5); }
.ec-site-footer { margin-top: var(--ec-space-5); }
@media (max-width: 62rem) {
  .ec-menu-toggle { display: inline-flex; align-items: center; }
  .ec-primary-nav { display: none; position: absolute; inset-inline: var(--ec-gutter); inset-block-start: 4.5rem; z-index: 50; background: Canvas; padding: 1rem; }
  .ec-primary-nav[data-open="true"] { display: block; }
  .ec-primary-nav ul { align-items: stretch; flex-direction: column; }
  .ec-utility-nav li:not(:first-child):not(:last-child) { display: none; }
  .ec-filter-bar { grid-template-columns: 1fr 1fr; }
  .ec-entity-body { grid-template-columns: 1fr; }
}
@media (max-width: 40rem) {
  .ec-utility-nav { display: none; }
  .ec-filter-bar { grid-template-columns: 1fr; }
  .ec-search-form__row { grid-template-columns: 1fr; }
  .ec-site-header__inner { min-height: 4rem; }
  .ec-primary-nav { inset-block-start: 4rem; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: 0.001ms !important; animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; }
}
.ec-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--ec-space-3); }
.ec-card { min-width: 0; }
.ec-card__link { display: grid; text-decoration: none; min-height: 100%; }
.ec-card__media { margin: 0; aspect-ratio: 4 / 3; overflow: hidden; }
.ec-card__media img { width: 100%; height: 100%; object-fit: cover; }
.ec-card__body { display: grid; align-content: start; gap: var(--ec-space-1); padding-block: var(--ec-space-2); }
.ec-card__meta, .ec-card__signals { display: flex; flex-wrap: wrap; gap: var(--ec-space-1); align-items: center; }
.ec-card__title { margin: 0; line-height: 1.15; }
.ec-card__body p { margin: 0; }
.ec-card__actions { display: flex; flex-wrap: wrap; gap: var(--ec-space-1); padding-bottom: var(--ec-space-2); }
.ec-signal { display: inline-flex; align-items: center; min-height: 1.75rem; }
.ec-filter-dialog { width: min(42rem, calc(100% - 2rem)); max-height: 85vh; padding: var(--ec-space-3); }
.ec-filter-dialog__header { display: flex; justify-content: space-between; align-items: center; gap: var(--ec-space-2); }
.ec-filter-dialog fieldset { display: grid; gap: var(--ec-space-1); margin-block: var(--ec-space-3); }
.ec-filter-dialog__note { max-width: 48ch; }
.ec-near-me-explainer { max-width: 52ch; margin-block: 0; }
@media (max-width: 62rem) { .ec-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 40rem) {
  .ec-card-grid { grid-template-columns: 1fr; }
  .ec-filter-dialog[open] { width: 100vw; max-width: none; height: 100dvh; max-height: none; margin: 0; border: 0; }
}

/* Public detail structure. Exact visual tokens remain bound to the locked visual handoff later. */
.ec-status-alert{border-block:1px solid currentColor;padding:.75rem 0;font-size:.95rem}.ec-status-alert strong{margin-inline-end:.5rem}.ec-actions--entity{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}.ec-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.7rem 1rem;text-decoration:none;border:1px solid currentColor;background:transparent;color:inherit;font:inherit;cursor:pointer}.ec-button--primary{font-weight:700}.ec-entity-body{display:grid;gap:2rem;padding-block:2rem}.ec-structured-content{order:0}.ec-prose{order:1;max-width:72ch}.ec-fact-list{display:grid;gap:0;margin:0}.ec-fact{display:grid;grid-template-columns:minmax(7.5rem,.8fr) minmax(0,1.2fr);gap:1rem;padding:.7rem 0;border-bottom:1px solid rgba(0,0,0,.12)}.ec-fact dt{font-weight:600}.ec-fact dd{margin:0}.ec-secondary-ctas{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.ec-occurrences ul{padding-inline-start:1.2rem}.ec-occurrences li+li{margin-top:.35rem}@media (min-width:56rem){.ec-entity-body{grid-template-columns:minmax(16rem,.72fr) minmax(0,1.55fr);align-items:start}.ec-structured-content{position:sticky;top:6rem}.ec-prose{max-width:76ch}}

/* Saved / interaction states. Structural only; exact locked visual tokens map in fidelity pass. */
.ec-saved-page{display:grid;gap:var(--ec-space-3);padding-bottom:var(--ec-space-5)}
.ec-account-hint{max-width:52ch;margin:0}
[data-ec-save].is-saved,[data-ec-saved-filter].is-active{font-weight:700}
[data-ec-save][disabled],[data-ec-add-trip][disabled],[data-ec-auth-intent][disabled]{cursor:wait;opacity:.65}
.ec-empty-state--saved{padding-block:var(--ec-space-4)}
.ec-sr-status{position:fixed!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Trip planner structural shell. */
.ec-trips-app{display:grid;gap:var(--ec-space-4);padding-bottom:var(--ec-space-5)}
.ec-trip-intent:not(:empty){padding:var(--ec-space-2);border:1px solid currentColor}
.ec-trip-create,.ec-trip-edit{display:grid;gap:var(--ec-space-2);max-width:46rem}
.ec-trip-create label,.ec-trip-edit label,.ec-trip-item__form label,.ec-trip-share label{display:grid;gap:.35rem}
.ec-trip-create input,.ec-trip-edit input,.ec-trip-edit textarea,.ec-trip-item__form input,.ec-trip-item__form select,.ec-trip-item__form textarea,.ec-trip-share input{width:100%;padding:.55rem .65rem}
.ec-trip-create__dates,.ec-trip-edit__dates{display:grid;grid-template-columns:1fr 1fr;gap:var(--ec-space-2)}
.ec-trip-workspace{display:grid;grid-template-columns:minmax(14rem,.65fr) minmax(0,1.75fr);gap:var(--ec-space-4);align-items:start}
.ec-trip-list{display:grid;gap:var(--ec-space-2)}
.ec-trip-summary{padding:var(--ec-space-2) 0;border-bottom:1px solid rgba(0,0,0,.12)}
.ec-trip-summary[data-active=true]{border-inline-start:3px solid currentColor;padding-inline-start:var(--ec-space-2)}
.ec-trip-summary h3,.ec-trip-summary p{margin-block:0 .5rem}
.ec-trip-summary__status{font-weight:700}
.ec-trip-detail{display:grid;gap:var(--ec-space-4);min-width:0}
.ec-trip-detail__header,.ec-trip-edit,.ec-trip-share{padding-bottom:var(--ec-space-3);border-bottom:1px solid rgba(0,0,0,.16)}
.ec-trip-edit h3,.ec-trip-share h3{margin:0}
.ec-trip-share{display:grid;gap:var(--ec-space-2)}
.ec-trip-share p{margin:0;max-width:62ch}
.ec-trip-share__status{font-weight:700}
.ec-trip-day{display:grid;gap:var(--ec-space-2)}
.ec-trip-day h3{margin:0}
.ec-trip-day__empty{margin:0}
.ec-trip-item{display:grid;grid-template-columns:minmax(12rem,.9fr) minmax(18rem,1.35fr) minmax(8rem,.45fr);gap:var(--ec-space-2);align-items:start;padding:var(--ec-space-2) 0;border-bottom:1px solid rgba(0,0,0,.12)}
.ec-trip-item__title{min-height:auto;font-weight:700}
.ec-trip-item__form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ec-space-1)}
.ec-trip-item__note-field{grid-column:1/-1}
.ec-trip-item__form>button{justify-self:start}
.ec-trip-item__actions{display:grid;align-content:start}
.ec-trip-item__actions button{width:100%}
@media (max-width:64rem){.ec-trip-item{grid-template-columns:minmax(0,1fr)}.ec-trip-item__actions{display:flex;flex-wrap:wrap}.ec-trip-item__actions button{width:auto}}
@media (max-width:48rem){.ec-trip-workspace{grid-template-columns:1fr}.ec-trip-create__dates,.ec-trip-edit__dates,.ec-trip-item__form{grid-template-columns:1fr}.ec-trip-item__note-field{grid-column:auto}.ec-trip-item__actions{display:grid}.ec-trip-item__actions button{width:100%}}

.ec-destination-highlights { margin-block: clamp(2rem, 5vw, 4.5rem); }
.ec-destination-highlights .ec-section-heading { max-width: 44rem; margin-bottom: 1.25rem; }
.ec-destination-highlights .ec-card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); gap: 1rem; }
.ec-card--destination-place { min-height: 12rem; }
.ec-card--destination-place .ec-card__link { display: block; height: 100%; padding: 1.25rem; color: inherit; text-decoration: none; }
.ec-card--destination-place h3 { margin: .35rem 0 .6rem; }

/* Secure partner profile preview. Uses the same Place renderer without traveler actions. */
.ec-site-header--private{border-bottom:1px solid rgba(0,0,0,.14)}
.ec-private-label{display:inline-flex;align-items:center;min-height:2rem;padding:.25rem .75rem;border:1px solid currentColor;border-radius:999px;font-size:.85rem;font-weight:700}
.ec-private-preview-banner{padding-block:clamp(2rem,5vw,4rem);border-bottom:1px solid rgba(0,0,0,.14)}
.ec-private-preview-banner__inner{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(14rem,.55fr);gap:var(--ec-space-4);align-items:start}
.ec-private-preview-banner h1{margin:.4rem 0 1rem;max-width:22ch;line-height:1.05}
.ec-private-preview-banner p{max-width:62ch}
.ec-private-preview-meta{margin:0;display:grid;gap:.75rem}
.ec-private-preview-meta div{padding:.75rem 0;border-bottom:1px solid rgba(0,0,0,.12)}
.ec-private-preview-meta dt{font-size:.85rem;font-weight:700}
.ec-private-preview-meta dd{margin:.2rem 0 0}
.ec-private-preview-unavailable{padding-block:var(--ec-space-5);max-width:52rem}
.ec-partner-notice{margin-block:1.25rem;padding:1rem;border:1px solid currentColor}
.ec-partner-notice p{margin:0}
.ec-entity--partner-preview .ec-entity-body{padding-bottom:var(--ec-space-5)}
.ec-partner-feedback{margin-block:var(--ec-space-4);padding-block:var(--ec-space-4);border-top:1px solid rgba(0,0,0,.16)}
.ec-partner-feedback h2{margin:.4rem 0 1.25rem}
.ec-partner-feedback__forms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ec-space-3)}
.ec-partner-feedback__form{display:grid;align-content:start;gap:.85rem;padding:var(--ec-space-3);border:1px solid rgba(0,0,0,.18)}
.ec-partner-feedback__form p{margin:0}
.ec-partner-feedback__form label{display:block}
.ec-partner-feedback__form textarea{width:100%;font:inherit;padding:.75rem;resize:vertical}
.ec-partner-feedback__form .ec-button{justify-self:start}
.ec-partner-feedback__complete{padding:1rem;border:1px solid currentColor}
.ec-partner-feedback blockquote{margin:1rem 0 0;padding-inline-start:1rem;border-inline-start:3px solid currentColor;max-width:60ch}
@media (max-width:48rem){.ec-private-preview-banner__inner,.ec-partner-feedback__forms{grid-template-columns:1fr}.ec-private-label{font-size:.75rem}}

/* Partner Home — four-question status/action surface, never a CMS dashboard. */
.ec-partner-header-actions{display:flex;align-items:center;gap:1rem}.ec-partner-header-actions a{color:inherit}.ec-partner-home{display:grid;gap:var(--ec-space-4);padding-block:clamp(2rem,5vw,4rem)}.ec-partner-home__intro{max-width:64ch}.ec-partner-home__intro h1{margin:.4rem 0 1rem}.ec-partner-account{display:grid;gap:var(--ec-space-3)}.ec-partner-account>h2{margin:0}.ec-partner-panel{padding:clamp(1.1rem,3vw,1.8rem);border:1px solid rgba(0,0,0,.16);display:grid;gap:1rem}.ec-partner-panel--action{border-width:2px}.ec-partner-panel h2,.ec-partner-panel h3,.ec-partner-panel p{margin:0}.ec-partner-panel__heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.ec-partner-status{display:inline-flex;align-items:center;min-height:1.8rem;padding:.2rem .65rem;border:1px solid currentColor;border-radius:999px;font-size:.84rem;font-weight:700}.ec-partner-actions{display:flex;flex-wrap:wrap;gap:.65rem}.ec-button--muted[aria-disabled=true]{opacity:.62;cursor:default}.ec-partner-action-list{display:grid;gap:.75rem;list-style:none;padding:0;margin:0}.ec-partner-action-list li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 0;border-top:1px solid rgba(0,0,0,.12)}.ec-partner-action-list li div{display:grid;gap:.2rem}.ec-partner-action-list li span{font-size:.9rem}.ec-partner-campaign-list{display:grid;gap:.25rem}.ec-partner-campaign{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid rgba(0,0,0,.12)}.ec-partner-campaign>div{display:grid;gap:.45rem}.ec-partner-term{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0}.ec-partner-term div{padding:.85rem 0;border-top:1px solid rgba(0,0,0,.12)}.ec-partner-term dt{font-size:.84rem;font-weight:700}.ec-partner-term dd{margin:.2rem 0 0}.ec-partner-home--unavailable{max-width:54rem}@media(max-width:48rem){.ec-partner-action-list li,.ec-partner-campaign{align-items:flex-start;flex-direction:column}.ec-partner-term{grid-template-columns:1fr}.ec-partner-actions .ec-button{width:100%}.ec-partner-header-actions{gap:.6rem}}

/* Partner Quick Update — safe operational facts only. */
.ec-partner-quick-update{display:grid;gap:var(--ec-space-3);padding-block:clamp(2rem,5vw,4rem);max-width:58rem}.ec-quick-form{display:grid;gap:var(--ec-space-3)}.ec-quick-form fieldset{margin:0}.ec-quick-form legend{font-size:1.2rem;font-weight:700;padding:0 .35rem}.ec-quick-form label{display:grid;gap:.35rem}.ec-quick-form input,.ec-quick-form select{width:100%;padding:.55rem .65rem}.ec-quick-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.ec-quick-help{font-size:.92rem}.ec-hours-grid{display:grid;gap:.5rem}.ec-hours-row{display:grid;grid-template-columns:minmax(8rem,1fr) minmax(7rem,.7fr) auto minmax(7rem,.7fr);gap:.6rem;align-items:center}.ec-quick-boundary{padding:1rem;border-inline-start:3px solid currentColor}.ec-quick-boundary p{margin:.35rem 0 0}.ec-quick-notice{padding:1rem;border:1px solid currentColor}.ec-quick-notice--success{border-width:2px}@media(max-width:40rem){.ec-quick-row{grid-template-columns:1fr}.ec-hours-row{grid-template-columns:1fr 1fr}.ec-hours-row strong{grid-column:1/-1}.ec-hours-row>span{display:none}.ec-partner-quick-update .ec-partner-actions{display:grid}}

/* Partner Request a Change — concierge request, not a CMS editor. */
.ec-partner-request-change{display:grid;gap:var(--ec-space-3);padding-block:clamp(2rem,5vw,4rem);max-width:58rem}.ec-change-form{display:grid;gap:1.25rem}.ec-change-form fieldset{border:0;padding:0;margin:0}.ec-change-form legend{font-weight:700;margin-bottom:.65rem}.ec-change-form textarea,.ec-change-form input[type=file]{width:100%;margin-top:.4rem}.ec-change-chips{display:flex;flex-wrap:wrap;gap:.55rem}.ec-change-chips label{position:relative}.ec-change-chips input{position:absolute;opacity:0;pointer-events:none}.ec-change-chips span{display:inline-flex;align-items:center;min-height:44px;padding:.6rem .9rem;border:1px solid currentColor;cursor:pointer}.ec-change-chips input:checked+span{border-width:2px;font-weight:700}.ec-change-chips input:focus-visible+span{outline:2px solid currentColor;outline-offset:2px}.ec-change-history{display:grid;gap:.8rem}.ec-change-history article{padding-block:.8rem;border-top:1px solid rgba(0,0,0,.12)}.ec-change-history article p{margin:.45rem 0}

/* B05 Partner campaign materials */
.ec-campaign-materials .ec-partner-panel{max-width:820px}.ec-campaign-materials textarea{width:100%;max-width:720px}.ec-campaign-materials input[type=file]{display:block;margin-top:.6rem}.ec-material-list{padding-left:1.2rem}.ec-partner-readback{margin:1.25rem 0;padding:1rem;border:1px solid currentColor;border-radius:12px}.ec-help{font-size:.92rem;opacity:.75}
.ec-campaign-preview__media{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.ec-campaign-preview__media figure{margin:0}.ec-campaign-preview__media img,.ec-campaign-preview__media video{display:block;width:100%;max-height:34rem;object-fit:contain;background:#f3f3f1}.ec-campaign-preview__platform{padding:1rem 0;border-top:1px solid rgba(0,0,0,.12)}.ec-campaign-preview__platform h3,.ec-campaign-preview__platform p{margin:.25rem 0}.ec-campaign-preview textarea,.ec-campaign-preview input[type=email]{width:100%;max-width:48rem}
.ec-campaign-report__publications{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem}.ec-campaign-report__publications article{padding:1rem 0;border-top:1px solid rgba(0,0,0,.12)}.ec-campaign-report__publications h3,.ec-campaign-report__publications p{margin:.35rem 0}

/* Trip warnings and owner print/PDF renderer. */
.ec-trip-detail__header{display:grid;gap:var(--ec-space-1)}
.ec-trip-detail__header h2,.ec-trip-detail__header p{margin:0}
.ec-trip-item__content{display:grid;gap:.25rem;min-width:0}
.ec-trip-item__destination{margin:0;font-size:.9rem}
.ec-trip-warnings{margin:.35rem 0 0;padding-inline-start:1.2rem;font-size:.9rem}
.ec-trip-warnings li+li{margin-top:.2rem}
.ec-shared-trip{display:grid;gap:var(--ec-space-3);padding-bottom:var(--ec-space-5)}
.ec-shared-trip__item{grid-template-columns:1fr}
.ec-shared-trip__item p{margin:.25rem 0 0}
.ec-trip-print{display:grid;gap:var(--ec-space-4);padding-block:var(--ec-space-4)}
.ec-trip-print__toolbar{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--ec-space-1)}
.ec-trip-print__header{display:grid;gap:var(--ec-space-1);padding-bottom:var(--ec-space-3);border-bottom:1px solid rgba(0,0,0,.18)}
.ec-trip-print__header h1,.ec-trip-print__header p{margin:0}
.ec-trip-print__dates{font-weight:700}
.ec-trip-print__notes{padding:var(--ec-space-2);border:1px solid rgba(0,0,0,.18)}
.ec-trip-print__notes h2,.ec-trip-print__notes p{margin:0}
.ec-trip-print__notes p{margin-top:.5rem;white-space:normal}
.ec-trip-print__days{display:grid;gap:var(--ec-space-4)}
.ec-trip-print-day{break-inside:avoid-page}
.ec-trip-print-day h2{margin:0 0 var(--ec-space-2);padding-bottom:.5rem;border-bottom:1px solid rgba(0,0,0,.18)}
.ec-trip-print-day ol{display:grid;gap:var(--ec-space-2);margin:0;padding-inline-start:1.5rem}
.ec-trip-print-day__empty{margin:0}
.ec-trip-print-item{padding-inline-start:.25rem;break-inside:avoid-page}
.ec-trip-print-item h3{margin:.25rem 0;font-size:1.1rem}
.ec-trip-print-item__meta,.ec-trip-print-item__facts{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin:0;font-size:.9rem}
.ec-trip-print-item__meta{font-weight:700}
.ec-trip-print-item__note{margin-top:.6rem;padding:.6rem .75rem;border-inline-start:3px solid currentColor}
.ec-trip-print-item__note p{margin:.25rem 0 0}
.ec-trip-print__footer-note{margin:0;padding-top:var(--ec-space-2);border-top:1px solid rgba(0,0,0,.18);font-size:.9rem}

@media print{
  @page{margin:14mm}
  html{scroll-behavior:auto}
  body.ec-trip-print-surface{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:10.5pt;line-height:1.4}
  body.ec-trip-print-surface .ec-site-header,
  body.ec-trip-print-surface .ec-site-footer,
  body.ec-trip-print-surface .ec-skip-link,
  body.ec-trip-print-surface .ec-trip-print__toolbar,
  body.ec-trip-print-surface .ec-sr-status{display:none!important}
  body.ec-trip-print-surface .ec-main{min-height:0}
  body.ec-trip-print-surface .ec-trip-print{width:100%;margin:0;padding:0;gap:8mm}
  body.ec-trip-print-surface .ec-trip-print__header{padding-bottom:6mm}
  body.ec-trip-print-surface .ec-trip-print__days{gap:8mm}
  body.ec-trip-print-surface .ec-trip-print-day{break-inside:auto}
  body.ec-trip-print-surface .ec-trip-print-item{break-inside:avoid}
  body.ec-trip-print-surface a{min-height:0;text-decoration:none;color:inherit}
  body.ec-trip-print-surface .ec-trip-print__notes{break-inside:avoid}
}

/* CHANGE 01 — My Croatia: one personal layer over Saved + Trips. */
.ec-my-croatia{display:grid;gap:var(--ec-space-5);padding-bottom:var(--ec-space-5)}
.ec-my-croatia__hero{padding-bottom:var(--ec-space-3)}
.ec-my-croatia__intro-card{display:grid;gap:1rem;max-width:58rem;padding:clamp(1.25rem,3vw,2rem);border:1px solid rgba(0,0,0,.16)}
.ec-my-croatia__intro-card h2,.ec-my-croatia__intro-card p{margin:0}
.ec-my-croatia__actions,.ec-from-croatia__actions{display:flex;flex-wrap:wrap;gap:.7rem}
.ec-my-croatia__summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:34rem}
.ec-my-croatia__summary a{display:grid;gap:.1rem;padding:1rem;border:1px solid rgba(0,0,0,.16);text-decoration:none;color:inherit}
.ec-my-croatia__summary strong{font-size:clamp(1.8rem,4vw,2.7rem);line-height:1}
.ec-my-croatia__section{display:grid;gap:var(--ec-space-3)}
.ec-section-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--ec-space-3);flex-wrap:wrap}
.ec-section-heading>div{display:grid;gap:.25rem}.ec-section-heading h2,.ec-section-heading p{margin:0}.ec-section-heading>p{max-width:52ch}
.ec-card__reason{margin:.7rem 0 0;padding-top:.65rem;border-top:1px solid rgba(0,0,0,.12);font-size:.9rem}
.ec-my-croatia__trips{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.ec-my-croatia__trips article{display:grid;gap:.45rem;padding:1rem;border:1px solid rgba(0,0,0,.16)}
.ec-my-croatia__trips h3,.ec-my-croatia__trips p{margin:0}

/* CHANGE 01 — curated @Croatia source bridge; never an arbitrary Reel analyzer. */
.ec-from-croatia__hero{display:grid;gap:1rem;padding-bottom:var(--ec-space-4)}
.ec-from-croatia{display:grid;gap:var(--ec-space-3);padding-bottom:var(--ec-space-5)}
.ec-from-croatia--missing{max-width:60rem}
@media(max-width:40rem){.ec-my-croatia__summary{grid-template-columns:1fr}.ec-my-croatia__actions .ec-button,.ec-from-croatia__actions .ec-button{width:100%}}

/* Traveler sign-in — deliberately small, branded and separate from partner/admin auth. */
.ec-auth-shell{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(19rem,.9fr);gap:clamp(2rem,7vw,6rem);align-items:start;padding-block:clamp(3rem,8vw,7rem)}
.ec-auth-intro{display:grid;gap:1rem;max-width:46rem}.ec-auth-intro h1,.ec-auth-intro p{margin:0}.ec-auth-intro h1{font-size:clamp(2.8rem,7vw,6.8rem);line-height:.94;letter-spacing:-.045em}
.ec-auth-card{display:grid;gap:1.25rem;padding:clamp(1.25rem,3vw,2rem);border:1px solid rgba(0,0,0,.16);background:var(--ec-surface,#fff)}.ec-auth-card h2,.ec-auth-card p{margin:0}
.ec-auth-social,.ec-auth-form{display:grid;gap:.75rem}.ec-auth-form label{font-weight:700}.ec-auth-form input{width:100%;min-height:3rem;padding:.65rem .75rem;border:1px solid rgba(0,0,0,.3);background:transparent;color:inherit}.ec-auth-form input:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.ec-button--auth{width:100%;justify-content:center}.ec-auth-divider{display:flex;align-items:center;gap:.75rem;font-size:.85rem;opacity:.7}.ec-auth-divider::before,.ec-auth-divider::after{content:"";height:1px;flex:1;background:currentColor;opacity:.25}
.ec-auth-fineprint{font-size:.88rem;opacity:.72}.ec-auth-notice{padding:.75rem;border-inline-start:3px solid currentColor}.ec-auth-notice[hidden]{display:none}
@media(max-width:48rem){.ec-auth-shell{grid-template-columns:1fr}.ec-auth-intro h1{font-size:clamp(2.6rem,14vw,4.8rem)}}

/* CONTENTOPS19 — public Partner acquisition and value foundation. */
.ec-business-hero{padding-block:clamp(3.5rem,9vw,7.5rem);border-bottom:1px solid rgba(0,0,0,.14)}
.ec-business-hero__inner{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(18rem,.7fr);gap:clamp(2rem,7vw,6rem);align-items:end}
.ec-business-hero__copy{display:grid;gap:1.15rem;max-width:62rem}.ec-business-hero__copy h1,.ec-business-hero__copy p{margin:0}.ec-business-hero__copy h1{font-size:clamp(3rem,8vw,7rem);line-height:.94;letter-spacing:-.045em;max-width:13ch}
.ec-business-hero__actions,.ec-business-closing__actions{display:flex;flex-wrap:wrap;gap:.7rem}
.ec-business-formula{display:grid;gap:1rem;padding:clamp(1.25rem,3vw,2rem);border:1px solid rgba(0,0,0,.18)}.ec-business-formula p{display:grid;gap:.2rem;margin:0}.ec-business-formula strong{font-size:1.35rem}.ec-business-formula span{font-size:.92rem}
.ec-business-value{display:grid;gap:var(--ec-space-2)}.ec-business-value__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--ec-space-3)}
.ec-business-value-card{display:grid;align-content:start;gap:1rem;padding:clamp(1.25rem,3vw,2rem);border:1px solid rgba(0,0,0,.16)}.ec-business-value-card h3,.ec-business-value-card p,.ec-business-value-card ul{margin:0}.ec-business-value-card ul{display:grid;gap:.65rem;padding-inline-start:1.25rem}.ec-business-value-card--partner{border-width:2px}.ec-business-value-card__label{font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}
.ec-business-trust{padding-block:var(--ec-space-5);border-block:1px solid rgba(0,0,0,.16)}.ec-business-trust__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.8fr);gap:clamp(2rem,7vw,6rem);align-items:start}.ec-business-trust__inner h2,.ec-business-trust__inner p{margin-top:0}.ec-business-trust__list{display:grid;gap:.9rem;margin:0;padding:0;list-style:none}.ec-business-trust__list li{padding-top:.9rem;border-top:1px solid rgba(0,0,0,.16)}
.ec-business-fit{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(18rem,.75fr);gap:clamp(2rem,7vw,6rem);align-items:start}.ec-business-fit__copy h2,.ec-business-fit__copy p{margin-top:0}.ec-business-fit__list{display:grid;gap:.85rem;margin:0;padding-inline-start:1.25rem}
.ec-business-path__intro{display:grid;gap:.8rem;max-width:56rem}.ec-business-path__intro h2,.ec-business-path__intro p{margin:0}.ec-business-path__steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--ec-space-2);margin:var(--ec-space-4) 0 0;padding:0;list-style:none;counter-reset:none}.ec-business-path__steps li{display:grid;gap:1rem;align-content:start;padding-top:1rem;border-top:1px solid rgba(0,0,0,.18)}.ec-business-path__steps li>span{font-size:.82rem;font-weight:700}.ec-business-path__steps h3,.ec-business-path__steps p{margin:0}.ec-business-path__steps div{display:grid;gap:.55rem}
.ec-business-founding{max-width:62rem;margin-inline:auto}.ec-business-founding h2,.ec-business-founding p{margin-top:0}
.ec-business-closing{padding-block:var(--ec-space-5);border-top:1px solid rgba(0,0,0,.16)}.ec-business-closing__inner{display:grid;grid-template-columns:minmax(0,1.25fr) auto;gap:var(--ec-space-4);align-items:end}.ec-business-closing__inner h2,.ec-business-closing__inner p{margin-top:0}.ec-business-closing__note{max-width:62ch;font-size:.92rem}.ec-business-closing__actions{justify-content:flex-end}
.ec-site-footer{padding-block:var(--ec-space-4);border-top:1px solid rgba(0,0,0,.16)}.ec-site-footer__inner{display:grid;grid-template-columns:minmax(16rem,1.3fr) minmax(10rem,.7fr) minmax(15rem,1fr);gap:var(--ec-space-4);align-items:start}.ec-site-footer__brand{display:grid;gap:.65rem;max-width:32rem}.ec-site-footer__brand p{margin:0}.ec-site-footer__nav{display:grid;gap:.75rem}.ec-site-footer__nav h2,.ec-site-footer__nav p{margin:0}.ec-site-footer__nav h2{font-size:1rem}.ec-site-footer__nav ul{display:grid;gap:.35rem;margin:0;padding:0;list-style:none}.ec-site-footer__nav a{display:inline-flex;align-items:center;text-decoration:none}.ec-site-footer__nav--business p{font-size:.9rem;max-width:32ch}
@media(max-width:56rem){.ec-business-hero__inner,.ec-business-trust__inner,.ec-business-fit,.ec-business-closing__inner{grid-template-columns:1fr}.ec-business-value__grid{grid-template-columns:1fr}.ec-business-path__steps{grid-template-columns:1fr 1fr}.ec-business-closing__actions{justify-content:flex-start}.ec-site-footer__inner{grid-template-columns:1fr 1fr}.ec-site-footer__brand{grid-column:1/-1}}
@media(max-width:40rem){.ec-business-hero__actions .ec-button,.ec-business-closing__actions .ec-button{width:100%}.ec-business-path__steps{grid-template-columns:1fr}.ec-site-footer__inner{grid-template-columns:1fr}.ec-site-footer__brand{grid-column:auto}}

/* CONTENTOPS20 — Contributors and structured media-attribution foundation. */
.ec-contributors-hero{padding-block:clamp(3.5rem,9vw,7.5rem);border-bottom:1px solid rgba(0,0,0,.14)}
.ec-contributors-hero__inner{display:grid;gap:1rem;max-width:68rem}.ec-contributors-hero h1,.ec-contributors-hero p{margin:0}.ec-contributors-hero h1{max-width:15ch;font-size:clamp(3rem,8vw,7rem);line-height:.94;letter-spacing:-.045em}
.ec-contributors-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ec-space-3)}.ec-contributors-principles article{display:grid;align-content:start;gap:.75rem;padding-top:1rem;border-top:1px solid rgba(0,0,0,.18)}.ec-contributors-principles h2,.ec-contributors-principles p{margin:0}.ec-contributors-principles h2{font-size:1.15rem}
.ec-contributors-list{display:grid;gap:var(--ec-space-3)}.ec-contributors-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ec-space-3)}
.ec-contributor-card{min-width:0;border-top:1px solid rgba(0,0,0,.18);padding-top:var(--ec-space-2)}.ec-contributor-card__media{margin:0 0 var(--ec-space-2);aspect-ratio:4/5;overflow:hidden}.ec-contributor-card__media img{width:100%;height:100%;object-fit:cover}.ec-contributor-card__body{display:grid;gap:.55rem}.ec-contributor-card__body h3,.ec-contributor-card__body p{margin:0}.ec-contributor-card__body h3{font-size:1.4rem}.ec-contributor-card__association{font-weight:600}.ec-contributor-card__profile{width:max-content;text-underline-offset:.2em}.ec-contributor-card__handle{font-weight:600}
.ec-contributors-empty{display:grid;gap:.65rem;max-width:52rem;padding:clamp(1.25rem,3vw,2rem);border:1px solid rgba(0,0,0,.16)}.ec-contributors-empty h3,.ec-contributors-empty p{margin:0}
.ec-media-credit{padding:.45rem var(--ec-gutter) 0;font-size:.78rem;line-height:1.4;opacity:.78}.ec-media-credit span{font-weight:600}.ec-media-credit a{text-underline-offset:.15em}.ec-contributor-card__media .ec-media-credit{padding-inline:0}
.ec-site-footer__inner{grid-template-columns:minmax(16rem,1.35fr) minmax(8rem,.55fr) minmax(8rem,.55fr) minmax(15rem,1fr)}
@media(max-width:56rem){.ec-contributors-principles,.ec-contributors-grid{grid-template-columns:1fr 1fr}.ec-site-footer__inner{grid-template-columns:1fr 1fr}.ec-site-footer__brand{grid-column:1/-1}}
@media(max-width:40rem){.ec-contributors-principles,.ec-contributors-grid{grid-template-columns:1fr}.ec-site-footer__inner{grid-template-columns:1fr}.ec-site-footer__brand{grid-column:auto}}
@media(max-width:20rem){.ec-contributor-card__profile{white-space:nowrap}}


/* BROWSERUI1-NAV offline proposal: public navigation only; not the visual fidelity pass.
   A flow disclosure prevents overlaying/cropping the home Search control.
   75rem is a space-driven header breakpoint, not a global product breakpoint. */
.ec-site-header:not(.ec-site-header--private) .ec-site-header__inner {
  display: flex; flex-wrap: wrap; gap: 0 .5rem; min-height: 4rem; align-items: center;
}
.ec-site-header:not(.ec-site-header--private) .ec-brand { flex: 0 1 auto; }
.ec-mobile-header-actions { display: flex; gap: .25rem; align-items: center; margin-inline-start: auto; }
.ec-header-action, .ec-site-header .ec-menu-toggle {
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
  min-width: 44px; min-height: 44px; padding: .5rem;
  border: 1px solid transparent; border-radius: 8px; color: inherit;
  background: transparent; text-decoration: none; line-height: 1.5;
}
.ec-header-action svg { flex: none; }
.ec-header-action__label {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0;
}
.ec-site-header .ec-menu-toggle { display: none; border-color: currentColor; }
.ec-site-header[data-ec-menu-ready="true"] .ec-menu-toggle { display: inline-flex; }
.ec-site-header:not(.ec-site-header--private) .ec-primary-nav {
  display: block; position: static; flex: 1 0 100%; width: 100%; padding: 1rem 0;
  background: transparent; border-top: 1px solid #DEDAD2;
}
.ec-site-header[data-ec-menu-ready="true"] .ec-primary-nav:not([data-open="true"]) { display: none; }
.ec-site-header .ec-primary-nav ul { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
.ec-site-header .ec-primary-nav a { display: flex; align-items: center; min-height: 44px; min-width: 44px; padding: .5rem; }
.ec-mobile-menu-utilities { margin-top: .5rem; padding-top: .5rem; border-top: 1px solid #DEDAD2; }
.ec-mobile-languages { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-top: .5rem; }
.ec-mobile-languages__label { flex: 1 0 100%; padding-inline: .5rem; }
.ec-mobile-languages .ec-language { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: .5rem; }
.ec-mobile-languages [aria-current="page"] { font-weight: 600; border-bottom: 2px solid currentColor; }
.ec-site-header .ec-utility-nav { display: none; }
.ec-site-header:not(.ec-site-header--private) a:focus-visible,
.ec-site-header:not(.ec-site-header--private) button:focus-visible {
  outline: 2px solid #0F5F6D; outline-offset: 3px;
}
@media (min-width: 40rem) {
  .ec-header-action__label { position: static; width: auto; height: auto; padding: 0; margin: 0; overflow: visible; clip-path: none; white-space: normal; }
}
@media (min-width: 75rem) {
  .ec-site-header:not(.ec-site-header--private) .ec-site-header__inner { flex-wrap: nowrap; gap: 1rem; min-height: 4.5rem; }
  .ec-site-header .ec-mobile-header-actions,
  .ec-site-header[data-ec-menu-ready="true"] .ec-menu-toggle,
  .ec-site-header .ec-mobile-menu-utilities { display: none; }
  .ec-site-header:not(.ec-site-header--private) .ec-primary-nav,
  .ec-site-header[data-ec-menu-ready="true"] .ec-primary-nav:not([data-open="true"]) {
    display: block; flex: 1 1 auto; width: auto; padding: 0; border: 0;
  }
  .ec-site-header .ec-primary-nav ul,
  .ec-site-header .ec-utility-nav ul { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 0 .5rem; }
  .ec-site-header .ec-primary-nav a { padding: .25rem; }
  .ec-site-header .ec-utility-nav { display: block; flex: 0 1 auto; }
  .ec-site-header .ec-utility-nav li { display: block; }
  .ec-site-header .ec-utility-nav a { min-width: 44px; min-height: 44px; padding: .25rem; }
  .ec-site-header .ec-language-switcher { display: flex; align-items: center; gap: .25rem; }
  .ec-site-header .ec-language-switcher .screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
}

/* BQA-006/007: bounded existing-layout corrections verified against baseline overflow. */
.ec-mobile-header-actions { min-height: 4rem; }
.ec-site-footer__inner { grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); }
.ec-site-footer__inner > * { min-width: 0; overflow-wrap: anywhere; }
.ec-hero__content { grid-template-columns: minmax(0, 1fr); }
.ec-hero__content > *, .ec-search-form, .ec-search-form input { min-width: 0; }
.ec-hero__content h1, .ec-search-form label { overflow-wrap: anywhere; }
.ec-search-form__row { grid-template-columns: minmax(0, 1fr) auto; }
@media (max-width: 40rem) {
  .ec-search-form__row { grid-template-columns: minmax(0, 1fr); }
}

/* BROWSERUI1-SAVED: bounded keyboard/focus/reflow repair, not a visual redesign. */
.ec-saved-page, .ec-saved-page > *, .ec-saved-page [role="tabpanel"],
.ec-saved-page .ec-card, .ec-saved-page .ec-card__body { min-width: 0; }
.ec-saved-page [role="tabpanel"][hidden] { display: none; }
.ec-saved-page [role="tab"] { min-width: 44px; max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
.ec-saved-page [role="tab"][aria-selected="true"] { text-decoration: underline; text-underline-offset: .25em; }
.ec-saved-page :is(button, a, [role="tabpanel"]):focus-visible { outline: 2px solid #0F5F6D; outline-offset: 3px; }
/* Global linked cards use min-height:100%; Saved has sibling action controls instead. */
.ec-saved-page .ec-card { display: flex; flex-direction: column; }
.ec-saved-page .ec-card__link { min-height: 0; flex: 1 1 auto; }
.ec-saved-page .ec-card__body, .ec-saved-page .ec-card__actions { overflow-wrap: anywhere; }
.ec-saved-page .ec-card__actions button { min-width: 44px; max-width: 100%; white-space: normal; }
.ec-saved-page [data-ec-save][aria-disabled="true"] { cursor: wait; opacity: .65; }
@media (forced-colors: active) {
  .ec-saved-page :is(button, a, [role="tabpanel"]):focus-visible { outline-color: Highlight; }
}

/* PORTAL20: shared hidden labels remain readable by assistive technology.
   Save icons and carousel status messages must not depend on WordPress editor CSS. */
.ec-public .screen-reader-text:not(:focus) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* PORTAL20: the supplied vector mark anchors every public footer. */
.ec-site-footer .ec-brand--footer-logo {
  display: inline-flex;
  align-items: flex-start;
  justify-content: center;
  flex: 0 0 auto;
  width: clamp(9rem, 16vw, 10.75rem);
  max-width: 100%;
  min-height: 44px;
  text-decoration: none;
}
.ec-site-footer .ec-footer-logo {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

/* PORTAL20 logo completion: every route loads this shell, including fallbacks,
   partner views and the private traveler print preview. Never depend on home CSS. */
.ec-site-header .ec-brand.ec-brand--logo {
  flex: 0 0 auto;
  min-width: 0;
  max-width: 100%;
  align-self: center;
  align-items: center;
  justify-content: center;
}
.ec-site-header .ec-brand__logo {
  display: block;
  width: 172px;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  transform: translateY(-6px);
}
@media (max-width:639px) {
  .ec-site-header .ec-brand__logo {width:132px;transform:translateY(-4px);}
  .ec-site-header--private .ec-site-header__inner {flex-wrap:wrap;gap:.5rem;}
  .ec-site-header--private .ec-partner-header-actions {min-width:0;flex-wrap:wrap;}
}

/* 2026-09-29: fill the designed photograph frames on every overview surface.
   Original-aspect metadata describes the source, not a thumbnail layout rule.
   Scope this override to photo previews: original files, logos and the expanded
   gallery/lightbox image retain their existing proportions and containment. */
#main-content :is(
  .ec-destination29-card__image,
  .ec-bestof-card__image,
  .ec-discover-card__media,
  .ec-card__media,
  .ec-nearby-card__image,
  .ec-portal-card__image,
  .atlas-card-image,
  .atlas-region-image,
  .ec-collection-card__visual,
  .ec-event-card__visual,
  .ec-guide-collection__figure,
  .ec33-destination__photo,
  .ec33-park__photo,
  .ec33-card__visual,
  .ec33-story__photo,
  .ec33-curiosity__photo,
  .ec-home-stories24__image,
  .ec-mood-card25-image,
  .ec-michelin24__photo,
  .ec-parks24-card__visual,
  .ec-essentials24-card__photo,
  .ec-home-event__image,
  .ec-event-agenda__photo,
  .ec-home-showcase__destination,
  .ec-opening__visual,
  .ec-bestof-plan__photo,
  .ec-around-profile__photo,
  .ec-my-dashboard__card-photo,
  .ec-shared-saved__photo,
  .ec-shared-experience__photo,
  .ec-idea__image
) img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  min-height: 0;
  max-width: none;
  object-fit: cover !important;
  object-position: center;
}

/* These original-aspect exceptions previously removed the component's frame.
   Restore its authored landscape ratio, without affecting text-only cards. */
#main-content .ec-nearby-card__image:has(img) {aspect-ratio:3/2;overflow:hidden;}
#main-content .ec-business-hub .atlas-card-image:has(img) {aspect-ratio:3/2!important;height:auto;}
#main-content .ec-business-rail--stay .atlas-card-image:has(img) {aspect-ratio:4/3!important;}
#main-content .ec-business-hub .atlas-card-image:has(img)>a {position:absolute;inset:0;height:100%!important;}
#main-content .ec-collection-card__visual:has(img) {aspect-ratio:4/3!important;overflow:hidden;}
#main-content .ec-collection-card__visual:has(img)>a {position:absolute;inset:0;display:block;height:100%!important;}
@media(max-width:479px) {
  #main-content .ec-collection--events .ec-collection-card__visual:has(img) {aspect-ratio:16/10!important;}
}

/* Guide collection previews keep the existing desktop and mobile geometry.
   The photo link owns the box so the title and photo credit remain separate. */
#main-content .ec-guide-collection__figure>a {position:relative;display:block;aspect-ratio:1.5;height:auto!important;overflow:hidden;}
#main-content .ec-guide-collection__figure>a>img {position:absolute;inset:0;}
@media(min-width:1024px) {
  #main-content .ec-guide-collection--portrait .ec-guide-collection__figure>a {height:clamp(320px,30vw,400px)!important;aspect-ratio:auto;}
}
@media(max-width:42rem) {
  #main-content .ec-guide-collection__figure>a {aspect-ratio:2.1;}
}

/* Search feature and fixed gallery tiles use their existing container sizes.
   Deliberately exclude .ec-gallery-dialog__image / .ec-place-lightbox__image. */
#main-content .ec-portal-search__destination-image img,
#main-content .ec-gallery__link img,
.ec-gallery-dialog .ec-gallery-dialog__thumb img {
  object-fit:cover!important;
  object-position:center;
}

/* home-photoled.css */
/* HOMEIMPL1. Loaded only on the real localized home surface; never on Saved/private pages.
   Uses existing NAV behavior. No framework, font download, animation library or provider. */
.ec-home-photoled {
  --ec-shell: 80rem; --ec-paper: #f6f3ed; --ec-ink: #111315; --ec-sea: #0f5f6d;
  --ec-stone: #dedad2; --ec-soft: #555d63; --ec-red: #c94337;
  background: var(--ec-paper); color: var(--ec-ink);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}
.ec-home-photoled :is(a,button,input):focus-visible { outline: 3px solid var(--ec-sea); outline-offset: 4px; }
.ec-home-photoled .ec-site-header { background: var(--ec-paper); border-bottom: 1px solid var(--ec-stone); }
.ec-home-photoled .ec-site-header__inner { padding-block: .5rem; }
.ec-home-photoled .ec-brand { min-height: 44px; }
.ec-home-photoled .ec-brand__name { font-size: clamp(1.4rem,2vw,1.8rem); font-weight: 650; letter-spacing: -.06em; }
.ec-home-photoled .ec-brand__by { font-size: .7rem; color: var(--ec-red); margin-top: .4rem; }
.ec-home-photoled .ec-primary-nav a, .ec-home-photoled .ec-utility-nav a { font-size: .875rem; }
.ec-home-photoled .ec-menu-toggle { border-color: transparent; }
.ec-home-photoled .ec-menu-toggle::before { content: ''; width: 19px; height: 1.5px; background: currentColor; box-shadow: 0 -6px currentColor, 0 6px currentColor; }
.ec-home-photoled .ec-menu-toggle span { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.ec-home-photoled .ec-site-header a:hover { color: var(--ec-sea); }
.ec-home-photoled .ec-home-hero {
  position: relative; isolation: isolate; display: grid; align-items: center;
  padding: 0; min-height: 32rem; overflow: clip; background: var(--ec-paper);
}
.ec-home-photoled .ec-home-hero--photo { color: #fff; background: #123d4a; }
.ec-home-photoled .ec-home-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 70% 50%; z-index: -2; }
.ec-home-photoled .ec-home-hero--photo::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(4,24,33,.76),rgba(4,24,33,.45) 53%,rgba(4,24,33,.2)); z-index: -1; pointer-events: none; }
.ec-home-photoled .ec-home-hero__content { padding-block: clamp(2rem,4vw,4rem); display: grid; gap: 1.25rem; position: relative; }
.ec-home-photoled .ec-home-eyebrow { margin: 0; font-size: .68rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; line-height: 1.6; }
.ec-home-photoled .ec-home-hero h1 {
  max-width: 12ch; font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: clamp(2.75rem,4.2vw,4.5rem); line-height: 1.06; font-weight: 400;
  letter-spacing: -.025em; text-wrap: balance; margin: 0; overflow-wrap: anywhere;
}
.ec-home-photoled .ec-home-intro { font-size: 1.0625rem; max-width: 37ch; line-height: 1.65; margin: 0; }
.ec-home-photoled .ec-home-search { margin-top: .4rem; width: min(100%, 34rem); background: white; color: var(--ec-ink); padding: 1rem; border-radius: 8px; gap: .1rem; box-shadow: 0 6px 24px #072b351a; }
.ec-home-photoled .ec-home-search label { font-size: .75rem; font-weight: 600; margin: 0 0 .15rem .15rem; }
.ec-home-photoled .ec-home-search__row { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .65rem; }
.ec-home-photoled .ec-home-search__row > svg { width: 19px; height: 19px; color: var(--ec-soft); }
.ec-home-photoled .ec-home-search input { border: 0; color: var(--ec-ink); background: #fff; padding: .5rem 0; min-width: 0; min-height: 48px; font-size: 1rem; }
.ec-home-photoled .ec-home-search input::placeholder { color: var(--ec-soft); opacity: 1; }
.ec-home-photoled .ec-home-search button { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 48px; max-width: 100%; border: 0; background: var(--ec-sea); color: #fff; border-radius: 6px; padding: .65rem 1rem; cursor: pointer; font-size: .875rem; overflow-wrap: anywhere; }
.ec-home-photoled .ec-home-search button:hover { background: #0c4c57; }
.ec-home-photoled .ec-home-search button svg { width: 20px; height: 20px; flex: none; }
.ec-home-photoled .ec-home-secondary, .ec-home-photoled .ec-home-text-link { display: inline-flex; align-items: center; gap: 1rem; min-height: 44px; width: fit-content; max-width: 100%; text-decoration: none; font-size: .875rem; }
.ec-home-photoled .ec-home-text-link { color: var(--ec-sea); font-weight: 500; }
.ec-home-photoled .ec-home-secondary svg, .ec-home-photoled .ec-home-text-link svg { flex: none; width: 20px; }
.ec-home-photoled .ec-home-secondary:hover, .ec-home-photoled .ec-home-text-link:hover { text-decoration: underline; text-underline-offset: .2em; }
.ec-home-photoled .ec-home-hero--photo .ec-home-secondary:focus-visible { outline-color: #fff; }
.ec-home-photoled .ec-home-hero__caption { margin-top: 0; justify-self: end; max-width: 45ch; background: #062831dd; color: white; border-radius: 4px; padding: .35rem .65rem; font-size: .6875rem; }
.ec-home-photoled .ec-home-hero__caption > p { margin: 0; }
.ec-home-photoled .ec-home-hero__caption a:focus-visible { outline-color: white; }
.ec-home-photoled .ec-home-credit { margin: .5rem 0 0; font-size: .75rem; line-height: 1.5; overflow-wrap: anywhere; }
.ec-home-photoled .ec-home-credit a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-underline-offset: .2em; }
.ec-home-photoled .ec-home-categories { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); padding-block: 1.5rem; border-bottom: 1px solid var(--ec-stone); }
.ec-home-photoled .ec-home-categories a { display: flex; align-items: center; gap: 1rem; padding: .65rem 1.25rem; min-height: 72px; text-decoration: none; border-inline-end: 1px solid var(--ec-stone); overflow-wrap: anywhere; min-width: 0; }
.ec-home-photoled .ec-home-categories a:first-child { padding-inline-start: 0; }
.ec-home-photoled .ec-home-categories a:last-child { padding-inline-end: 0; border: 0; }
.ec-home-photoled .ec-home-categories svg { width: 26px; height: 26px; flex: none; color: var(--ec-sea); }
.ec-home-photoled .ec-home-categories strong { display: block; font-size: .875rem; font-weight: 600; line-height: 1.4; }
.ec-home-photoled .ec-home-categories small { display: block; margin-top: .3rem; color: var(--ec-soft); font-size: .75rem; }
.ec-home-photoled .ec-home-categories a:hover strong { color: var(--ec-sea); text-decoration: underline; }
.ec-home-photoled .ec-home-section { padding-block: 3.75rem; }
.ec-home-photoled .ec-home-section__heading { margin-bottom: 1.5rem; gap: 1.5rem; }
.ec-home-photoled .ec-home-section__heading > * { min-width: 0; }
.ec-home-photoled .ec-home-section__heading .ec-home-eyebrow { color: var(--ec-soft); font-size: .625rem; }
.ec-home-photoled .ec-home-section h2 { margin: .75rem 0 0; font-size: clamp(1.75rem,2.4vw,2.25rem); font-weight: 550; letter-spacing: -.045em; line-height: 1.2; overflow-wrap: anywhere; }
.ec-home-photoled .ec-home-review-note { border-inline-start: 3px solid var(--ec-sea); color: var(--ec-soft); padding-inline-start: .75rem; font-size: .75rem; max-width: 90ch; margin: 0 0 1.25rem; }
.ec-home-photoled .ec-home-destination-grid { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 1.25rem; grid-auto-rows: minmax(13rem,auto); }
.ec-home-photoled .ec-home-destination { min-width: 0; position: relative; display: flex; flex-direction: column; border-radius: 12px; background: #fff; box-shadow: 0 0 0 1px var(--ec-stone); }
.ec-home-photoled .ec-home-destination:first-child { grid-row: span 2; }
.ec-home-photoled .ec-home-destination:only-child { grid-row: auto; grid-column: 1 / -1; min-height: 19rem; }
.ec-home-photoled .ec-home-destination:nth-child(4):last-child { grid-column: span 2; }
.ec-home-photoled .ec-home-destination:nth-child(6):last-child { grid-column: 1 / -1; }
.ec-home-photoled .ec-home-destination__link { position: relative; flex: 1 1 auto; display: flex; align-items: end; min-height: 13rem; text-decoration: none; border-radius: 12px; overflow: hidden; isolation: isolate; }
.ec-home-photoled .ec-home-destination__link > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.ec-home-photoled .ec-home-destination--photo .ec-home-destination__link { color: white; background: #163741; }
.ec-home-photoled .ec-home-destination--photo .ec-home-destination__link::after { content: ''; position: absolute; inset: 0; background: linear-gradient(transparent,rgba(4,24,33,.72) 55%,rgba(4,24,33,.94)); z-index: -1; }
.ec-home-photoled .ec-home-destination__body { padding: 1.5rem; min-width: 0; width: 100%; }
.ec-home-photoled .ec-home-destination h3 { font-weight: 550; font-size: 1.65rem; line-height: 1.15; letter-spacing: -.025em; margin: 0; overflow-wrap: anywhere; padding-right: 1.75rem; }
.ec-home-photoled .ec-home-destination:first-child h3 { font-size: 2.15rem; }
.ec-home-photoled .ec-home-destination__body > p { margin: .55rem 0 0; font-size: .875rem; line-height: 1.55; overflow-wrap: anywhere; }
.ec-home-photoled .ec-home-destination__body .ec-home-eyebrow { font-size: .6rem; margin: 0 0 .5rem; }
.ec-home-photoled .ec-home-destination__arrow { position: absolute; right: 1rem; bottom: 1.5rem; display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid currentColor; border-radius: 50%; }
.ec-home-photoled .ec-home-destination > .ec-home-credit { padding: 0 .9rem .75rem; }
.ec-home-photoled .ec-home-save { position: absolute; top: .75rem; right: .75rem; background: #fff; color: var(--ec-ink); min-width: 44px; min-height: 44px; border: 1px solid var(--ec-stone); border-radius: 7px; padding: .5rem .75rem; max-width: calc(100% - 1.5rem); cursor: pointer; }
.ec-home-photoled .ec-home-destination--review h3 { padding-right: 0; }
.ec-home-photoled .ec-home-selected { background: #eeebe5; border-block: 1px solid var(--ec-stone); }
.ec-home-photoled .ec-home-module-card { min-width: 0; }
.ec-home-photoled .ec-home-module-card .ec-card { display: flex; flex-direction: column; }
.ec-home-photoled .ec-home-module-card .ec-card__link { min-height: 0; }
.ec-home-photoled .ec-home-module-card .ec-card__media { border-radius: 12px; }
.ec-home-photoled .ec-home-module-card .ec-card__title { font-size: 1.4rem; margin: 0; }
.ec-home-photoled .ec-home-module-card .ec-card__body { gap: .5rem; padding: 1rem 0; }
.ec-home-photoled .ec-home-module-card .ec-card__body p { color: var(--ec-soft); font-size: .875rem; }
.ec-home-photoled .ec-home-module-card .ec-card__actions { gap: .5rem; }
.ec-home-photoled .ec-home-module-card button { background: #fff; border: 1px solid var(--ec-stone); border-radius: 6px; padding: .5rem 1rem; cursor: pointer; }
.ec-home-photoled .ec-signal--selected { color: var(--ec-sea); font-size: .75rem; }
.ec-home-photoled .ec-site-footer { background: #eeebe5; border-top: 1px solid var(--ec-stone); margin-top: 1rem; }
.ec-home-photoled .ec-site-footer__inner { padding-block: 2.5rem; }
.ec-home-photoled .ec-site-footer__brand strong { font-size: 1.5rem; letter-spacing: -.04em; }
.ec-home-photoled .ec-site-footer__brand p { font-size: .875rem; }
.ec-home-photoled .ec-site-footer__nav h2 { font-size: 1rem; }
.ec-home-photoled .ec-site-footer__nav a { font-size: .875rem; }
@media (min-width:75rem) {
  .ec-home-photoled .ec-primary-nav { margin-inline-start: 2rem; }
  .ec-home-photoled .ec-home-hero__caption { position: absolute; right: 0; bottom: 1.25rem; }
}
@media (max-width:74.99rem) {
  .ec-home-photoled .ec-home-categories a { gap: .65rem; padding-inline: .75rem; }
  .ec-home-photoled .ec-home-categories small { display: none; }
}
@media (max-width:55.99rem) {
  .ec-home-photoled .ec-home-destination-grid { grid-template-columns: 1fr 1fr; }
  .ec-home-photoled .ec-home-destination:first-child { grid-row: auto; }
  .ec-home-photoled .ec-home-destination:nth-child(4):last-child { grid-column: auto; }
  .ec-home-photoled .ec-home-destination:nth-child(6):last-child { grid-column: auto; }
  .ec-home-photoled .ec-home-categories a { flex-direction: column; text-align: center; gap: .5rem; padding: .5rem .2rem; border: 0; }
  .ec-home-photoled .ec-home-categories a:first-child, .ec-home-photoled .ec-home-categories a:last-child { padding-inline: .2rem; }
  .ec-home-photoled .ec-home-categories strong { font-size: .75rem; }
}
@media (max-width:39.99rem) {
  .ec-home-photoled { --ec-gutter: 1rem; }
  .ec-home-photoled .ec-site-header__inner { padding-block: .25rem; }
  .ec-home-photoled .ec-home-hero { min-height: 30.5rem; }
  .ec-home-photoled .ec-home-hero__content { padding-block: 2rem 1rem; gap: 1rem; }
  .ec-home-photoled .ec-home-hero h1 { font-size: 2.85rem; max-width: 12ch; }
  .ec-home-photoled .ec-home-hero__image { object-position: 71% 50%; }
  .ec-home-photoled .ec-home-hero--photo::after { background: linear-gradient(180deg,rgba(4,24,33,.68),rgba(4,24,33,.53) 65%,rgba(4,24,33,.8)); }
  .ec-home-photoled .ec-home-intro { font-size: .9375rem; }
  .ec-home-photoled .ec-home-eyebrow { font-size: .6rem; }
  .ec-home-photoled .ec-home-search { padding: .75rem; margin-top: .65rem; }
  .ec-home-photoled .ec-home-search label { font-size: .6875rem; }
  .ec-home-photoled .ec-home-search__row { gap: .35rem; }
  .ec-home-photoled .ec-home-search input { font-size: 1rem; }
  .ec-home-photoled .ec-home-search button { font-size: .75rem; padding: .6rem .7rem; gap: .3rem; }
  .ec-home-photoled .ec-home-search button svg { width: 16px; }
  .ec-home-photoled .ec-home-secondary { font-size: .8rem; }
  .ec-home-photoled .ec-home-hero__caption { font-size: .6rem; }
  .ec-home-photoled .ec-home-categories { padding-block: 1rem; }
  .ec-home-photoled .ec-home-categories strong { font-size: .6875rem; }
  .ec-home-photoled .ec-home-section { padding-block: 2.5rem; }
  .ec-home-photoled .ec-home-section__heading { display: block; }
  .ec-home-photoled .ec-home-section h2 { font-size: 1.8rem; }
  .ec-home-photoled .ec-home-text-link { font-size: .8rem; margin-top: .5rem; }
  .ec-home-photoled .ec-home-destination-grid { gap: .75rem; grid-auto-rows: minmax(13.5rem,auto); }
  .ec-home-photoled .ec-home-destination:first-child { grid-column: 1 / -1; min-height: 18rem; }
  .ec-home-photoled .ec-home-destination:nth-child(4):last-child { grid-column: 1 / -1; }
  .ec-home-photoled .ec-home-destination h3 { font-size: 1.25rem; }
  .ec-home-photoled .ec-home-destination:first-child h3 { font-size: 2rem; }
  .ec-home-photoled .ec-home-destination__body { padding: 1rem; }
  .ec-home-photoled .ec-home-destination__body > p { font-size: .8rem; }
  .ec-home-photoled .ec-home-destination__body .ec-home-eyebrow { letter-spacing: .04em; font-size: .55rem; }
  .ec-home-photoled .ec-home-destination__arrow { display: none; }
  .ec-home-photoled .ec-home-destination h3 { padding-right: 0; }
}
@media (max-width:22.49rem) {
  .ec-home-photoled .ec-home-hero h1 { font-size: 2.5rem; }
  .ec-home-photoled .ec-home-search__row > svg, .ec-home-photoled .ec-home-search button svg { display: none; }
  .ec-home-photoled .ec-home-search__row { grid-template-columns: minmax(0,1fr) auto; }
}
@media (forced-colors:active) {
  .ec-home-photoled .ec-home-hero--photo, .ec-home-photoled .ec-home-destination--photo .ec-home-destination__link { color: CanvasText; background: Canvas; }
  .ec-home-photoled .ec-home-hero::after, .ec-home-photoled .ec-home-destination__link::after { display: none; }
  .ec-home-photoled .ec-home-hero__image, .ec-home-photoled .ec-home-destination__link > img { visibility: hidden; }
  .ec-home-photoled :is(a,button,input):focus-visible { outline-color: Highlight; }
  .ec-home-photoled .ec-home-search button, .ec-home-photoled .ec-home-save { border: 1px solid ButtonText; }
}

/* home-portal.css */
/* HOMEPORTAL1. Own home surface only; NAV and Saved behavior are unchanged. */
.ec-home-portal {
  --ec-shell: 88rem; --ec-gutter: clamp(1rem,2.2vw,2rem);
  --ec-paper: #fff; --ec-ink: #102c49; --ec-sea: #1260bf; --ec-stone: #dce6f1;
  --ec-soft: #4e637a; --ec-red: #1260bf; --portal-sun: #ffcc42;
  background: #fff; color: var(--ec-ink);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.ec-home-portal .ec-site-header { background: #fff; border-color: #e5edf5; }
.ec-home-portal .ec-brand__name { font-weight: 750; color: #0754b5; letter-spacing: -.07em; }
.ec-home-portal .ec-site-header__inner { min-height: 4.75rem; }
.ec-home-portal .ec-primary-nav { margin-inline-start: 0; }
.ec-home-portal .ec-utility-nav a[href$="/trips/"] { padding-inline: .8rem; border-radius: 10px; background: var(--portal-sun); color: var(--ec-ink); font-weight: 700; }
.ec-home-portal :is(a,button,input,select):focus-visible { outline: 3px solid #1260bf; outline-offset: 3px; }
.ec-home-portal .ec-portal-hero :is(a,button,input):focus-visible { outline: 3px solid #fff; box-shadow: 0 0 0 6px #1260bf; }
.ec-home-portal [hidden] { display: none !important; }
.ec-portal { padding-top: 1.2rem; }
.ec-portal-layout { display: grid; grid-template-columns: minmax(0, 2.65fr) minmax(18rem, 1fr); gap: 1.3rem 1.5rem; align-items: start; }
.ec-portal-layout > * { min-width: 0; }
.ec-portal-hero {
  grid-column: 1; position: relative; isolation: isolate; display: flex; flex-direction: column;
  min-height: clamp(22rem,30vw,25rem); overflow: hidden; border-radius: 20px;
  padding: clamp(1.2rem,2.5vw,2.3rem); color: #fff; background: #164979;
}
.ec-portal-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 61% 53%; z-index: -2; }
.ec-portal-hero::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#052956bd 0%,#06274759 55%,#05295605 100%),linear-gradient(0deg,#072d5938,transparent 45%); }
.ec-portal-kicker { margin: 0 0 .65rem; font-size: .78rem; font-weight: 600; letter-spacing: .025em; }
.ec-portal-hero h1 { margin: 0; max-width: 15ch; font-size: clamp(2.2rem,3.45vw,3.65rem); font-weight: 760; line-height: 1.03; letter-spacing: -.045em; text-wrap: balance; }
.ec-portal-intro { max-width: 43ch; font-size: .91rem; line-height: 1.5; margin: .8rem 0 1.2rem; text-shadow: 0 1px 8px #06284c; }
.ec-portal-search { background: #fff; color: var(--ec-ink); padding: .7rem .8rem .65rem 1rem; border-radius: 13px; width: 100%; margin-top: auto; box-shadow: 0 10px 25px #06284c24; }
.ec-portal-search label { font-size: .75rem; font-weight: 650; }
.ec-portal-search__row { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: .7rem; align-items: center; }
.ec-portal-search__row > svg { width: 20px; color: #1260bf; }
.ec-portal-search input { min-width: 0; width: 100%; min-height: 44px; padding: .35rem 0; border: 0; border-radius: 0; color: #173656; background: #fff; font-size: .9rem; }
.ec-portal-search input::placeholder { color: #536980; opacity: 1; }
.ec-portal-button { display: inline-flex; align-items: center; justify-content: center; gap: .8rem; background: var(--portal-sun); color: #102c49; border: 0; border-radius: 9px; padding: .7rem 1rem; min-height: 44px; font-size: .9rem; font-weight: 750; text-decoration: none; cursor: pointer; text-align: center; }
.ec-portal-button:hover { background: #ffbf20; }
.ec-portal-button--wide { width: 100%; justify-content: space-between; }
.ec-portal-button span { font-size: 1.25rem; line-height: 1; }
.ec-portal-planner { grid-column: 2; grid-row: 1 / span 4; position: sticky; top: 1.2rem; padding: 1.35rem; border: 1px solid #d6e4f4; background: #f2f7fe; border-radius: 20px; }
.ec-portal-planner__heading { display: flex; gap: .65rem; align-items: center; }
.ec-portal-planner__heading h2 { display: flex; align-items: center; gap: .65rem; }
.ec-portal-sun { color: #ba6f00; font-size: 1.8rem; line-height: 1; }
.ec-portal-planner h2 { font-size: 1.4rem; line-height: 1.18; letter-spacing: -.035em; margin: 0; }
.ec-portal-planner__intro { font-size: .83rem; line-height: 1.5; color: #4e637a; margin: .7rem 0 1rem; }
.ec-portal-trip-form { display: grid; gap: .7rem; }
.ec-portal-field { display: grid; gap: .35rem; font-size: .75rem; font-weight: 650; }
.ec-portal-planner [data-ec-home-planner-details] > .ec-portal-field { margin-bottom: .85rem; }
.ec-portal-field :is(input,select) { width: 100%; min-width: 0; max-width: 100%; border: 1px solid #cad9eb; border-radius: 8px; padding: .65rem .65rem; background: #fff; color: #102c49; font-size: .83rem; font-weight: 400; min-height: 44px; }
.ec-portal-field input::placeholder { color: #536980; opacity: 1; }
.ec-portal-field input[type=date] { padding-inline: .45rem; }
.ec-portal-dates { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: .55rem; }
.ec-portal-hint { font-size: .72rem; color: #4e637a; margin: 0; line-height: 1.5; }
.ec-portal-guest-hint { margin-top: .65rem; }
.ec-portal-trip-summary { margin-top: 1rem; padding-top: .85rem; border-top: 1px dashed #b7cae2; font-size: .81rem; color: #425e7a; overflow-wrap: anywhere; }
.ec-portal-trip-summary strong { color: #102c49; display: block; }
.ec-portal-trip-summary p { margin: .35rem 0; }
.ec-portal-status { margin: .7rem 0 0; font-size: .78rem; line-height: 1.55; overflow-wrap: anywhere; }
.ec-portal-status:empty { display: none; }
.ec-portal-text-link { display: inline-flex; align-items: center; gap: .55rem; width: fit-content; max-width: 100%; min-height: 44px; color: #105bb6; font-size: .78rem; font-weight: 650; text-decoration: none; }
.ec-portal-text-link:hover { text-decoration: underline; text-underline-offset: .2em; }
.ec-portal-text-link span { flex: none; }
.ec-portal-categories { grid-column: 1; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .6rem; }
.ec-portal-categories a { min-height: 56px; padding: .5rem .45rem; display: flex; align-items: center; justify-content: center; gap: .55rem; text-decoration: none; font-size: .78rem; font-weight: 650; background: #f0f6fd; border: 1px solid #e0eaf5; border-radius: 11px; }
.ec-portal-categories svg { width: 21px; height: 21px; flex: none; color: #1260bf; }
.ec-portal-categories a:hover { background: #e1eefd; border-color: #accaf0; }
.ec-portal-recommendations, .ec-portal-destinations { grid-column: 1; }
.ec-portal-section-heading { display: flex; justify-content: space-between; align-items: center; gap: .7rem 1rem; margin: .25rem 0 .85rem; }
.ec-portal-section-heading > * { min-width: 0; }
.ec-portal-section-heading h2 { margin: 0; font-size: clamp(1.22rem,1.8vw,1.6rem); line-height: 1.2; letter-spacing: -.035em; text-wrap: balance; }
.ec-portal-section-heading p { margin: .35rem 0 0; font-size: .78rem; color: #4e637a; }
.ec-portal-section-heading > a { flex-shrink: 0; max-width: 36%; }
.ec-portal-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.ec-portal-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #e0e9f2; border-radius: 14px; background: #fff; transition: box-shadow .18s ease, transform .18s ease; }
.ec-portal-card:hover { box-shadow: 0 10px 22px #102c4910; transform: translateY(-2px); }
.ec-portal-card__link { text-decoration: none; display: block; min-height: 0; }
.ec-portal-card__image { aspect-ratio: 1.95; overflow: hidden; }
.ec-portal-card__image img { width: 100%; height: 100%; object-fit: cover; }
.ec-portal-card__body { padding: .85rem .9rem .45rem; }
.ec-portal-card h3 { font-size: 1.02rem; line-height: 1.2; letter-spacing: -.02em; margin: .25rem 0 .45rem; overflow-wrap: anywhere; }
.ec-portal-card__body > p { font-size: .75rem; color: #4e637a; line-height: 1.55; margin: 0 0 .55rem; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ec-portal-card__meta { font-size: .68rem; color: #4e637a; display: flex; flex-wrap: wrap; gap: .3rem; }
.ec-portal-card__selected { font-size: .65rem; color: #1259a5; font-weight: 650; }
.ec-portal-card__actions { display: flex; flex-wrap: wrap; gap: .4rem; padding: .6rem .8rem .8rem; margin-top: auto; }
.ec-portal-card__actions button { border: 1px solid #cddced; border-radius: 7px; color: #17456f; background: #fff; min-height: 44px; font-size: .72rem; padding: .45rem .65rem; cursor: pointer; }
.ec-portal-card__actions button:last-child:not(:first-child) { background: #eaf3ff; color: #0b55ae; border-color: #eaf3ff; font-weight: 650; flex-grow: 1; }
.ec-portal-card__actions button:hover { background: #d9eafd; }
.ec-portal :is(button,select):disabled { opacity: .6; cursor: wait; }
.ec-portal-card .ec-home-credit { padding: 0 .9rem .65rem; margin: 0; font-size: .65rem; }
.ec-portal-hero .ec-home-credit { margin-bottom: 0; }
.ec-portal-empty { border: 1px dashed #b9cee8; border-radius: 13px; background: #f6f9fe; padding: 1.2rem; }
.ec-portal-empty > strong { font-size: .95rem; }
.ec-portal-empty p { font-size: .83rem; max-width: 57ch; color: #4e637a; margin: .5rem 0 0; }
.ec-portal-destination-list { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .85rem; }
.ec-portal-destination-wrap { min-width: 0; }
.ec-portal-destination { position: relative; isolation: isolate; display: flex; align-items: end; padding: .85rem; border-radius: 12px; overflow: hidden; min-height: 7.5rem; background: #164979; color: #fff; text-decoration: none; }
.ec-portal-destination img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.ec-portal-destination::before { position: absolute; content: ''; inset: 0; z-index: -1; background: linear-gradient(0deg,#062b53dc,#062b5300 85%); }
.ec-portal-destination > span { display: flex; align-items: end; justify-content: space-between; width: 100%; gap: .3rem; font-size: .9rem; font-weight: 650; overflow-wrap: anywhere; }
.ec-portal-destination:hover { outline: 2px solid #1260bf; outline-offset: 2px; }
.ec-portal-more { display: grid; gap: 2rem; margin-block: 2rem; }
.ec-portal-partner { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; background: #0c4da3; color: #fff; padding: 1.6rem 2rem; border-radius: 18px; }
.ec-portal-partner h2 { font-size: 1.4rem; letter-spacing: -.03em; line-height: 1.2; margin: 0 0 .55rem; }
.ec-portal-partner p { font-size: .82rem; max-width: 64ch; margin: 0; line-height: 1.6; }
.ec-portal-partner > a { flex-shrink: 0; max-width: 34%; }
.ec-home-portal .ec-site-footer { background: #f1f6fc; border-color: #dce6f1; }
@media (max-width:74.99rem) {
  .ec-portal-layout { grid-template-columns: minmax(0,2.1fr) minmax(17.5rem,1fr); gap: 1.2rem; }
  .ec-portal-planner { padding: 1.1rem; }
  .ec-portal-categories a { flex-direction: column; gap: .3rem; text-align: center; font-size: .72rem; }
  .ec-portal-card__actions { padding-inline: .5rem; }
  .ec-portal-section-heading { align-items: start; }
}
@media (max-width:55.99rem) {
  .ec-portal-layout { grid-template-columns: minmax(0,1fr); }
  .ec-portal-hero { min-height: 23rem; }
  .ec-portal-hero h1 { font-size: clamp(2.2rem,5.6vw,3.3rem); }
  .ec-portal-planner { grid-column: 1; grid-row: auto; position: static; order: 2; }
  .ec-portal-categories { order: 1; }
  .ec-portal-recommendations { order: 3; }
  .ec-portal-destinations { order: 4; }
  .ec-portal-planner__intro { margin-bottom: .75rem; }
  .ec-portal-trip-form { grid-template-columns: 1.1fr 1fr; align-items: end; gap: .65rem 1rem; }
  .ec-portal-trip-form > .ec-portal-button { grid-column: 2; grid-row: 2; }
  .ec-portal-trip-form > .ec-portal-hint { align-self: center; }
  .ec-portal-trip-summary { margin-top: .7rem; padding-top: .7rem; }
  .ec-portal-cards { gap: .8rem; }
}
@media (max-width:39.99rem) {
  .ec-home-portal { --ec-gutter: 1rem; }
  .ec-portal { padding-top: .75rem; }
  .ec-portal-layout { gap: 1rem; }
  .ec-portal-hero { min-height: 23.5rem; padding: 1.2rem; border-radius: 15px; }
  .ec-portal-hero h1 { font-size: 2.35rem; max-width: 13ch; }
  .ec-portal-kicker { font-size: .7rem; }
  .ec-portal-intro { font-size: .82rem; max-width: 31ch; }
  .ec-portal-search { padding: .6rem .65rem; }
  .ec-portal-search__row { grid-template-columns: minmax(0,1fr) auto; gap: .3rem; }
  .ec-portal-search__row > svg { display: none; }
  .ec-portal-search input { font-size: .8rem; }
  .ec-portal-search .ec-portal-button { padding: .6rem .7rem; font-size: .78rem; }
  .ec-portal-search .ec-portal-button span { display: none; }
  .ec-portal-categories { gap: .3rem; }
  .ec-portal-categories a { font-size: .64rem; padding: .55rem .2rem; }
  .ec-portal-categories svg { width: 20px; }
  .ec-portal-planner { padding: 1rem; border-radius: 15px; }
  .ec-portal-planner h2 { font-size: 1.28rem; }
  .ec-portal-trip-form { grid-template-columns: minmax(0,1fr); }
  .ec-portal-trip-form > .ec-portal-button { grid-column: auto; grid-row: auto; }
  .ec-portal-field :is(input,select) { font-size: 1rem; }
  .ec-portal-section-heading { flex-wrap: wrap; gap: .1rem; margin-bottom: .5rem; }
  .ec-portal-section-heading > a { max-width: 100%; }
  .ec-portal-cards { grid-template-columns: minmax(0,1fr); }
  .ec-portal-card__image { aspect-ratio: 2.2; }
  .ec-portal-card h3 { font-size: 1.15rem; }
  .ec-portal-card__body > p { font-size: .82rem; }
  .ec-portal-card__actions button { font-size: .8rem; }
  .ec-portal-destination-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; }
  .ec-portal-partner { display: grid; padding: 1.25rem; gap: 1rem; }
  .ec-portal-partner > a { max-width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .ec-portal-card { transition: none; } .ec-portal-card:hover { transform: none; } }

/* Native disclosure keeps the planner one tap away on small screens. */
.ec-portal-planner summary.ec-portal-planner__heading { cursor: pointer; list-style: none; min-height: 44px; }
.ec-portal-planner summary.ec-portal-planner__heading::-webkit-details-marker { display: none; }
.ec-portal-planner summary.ec-portal-planner__heading::after { content: '⌄'; margin-left: auto; font-size: 1.35rem; line-height: 1; color: #105bb6; }
.ec-portal-planner details[open] > summary.ec-portal-planner__heading::after { transform: rotate(180deg); }
.ec-portal-planner summary.ec-portal-planner__heading:focus-visible { outline: 3px solid #105bb6; outline-offset: 4px; border-radius: 4px; }

/* DATE-LAYOUT-01: constrain nested date grids; keep native date controls intact. */
.ec-home-portal .ec-portal-dates,
.ec-home-portal .ec-portal-dates > .ec-portal-field {
  min-width: 0;
}
.ec-home-portal .ec-portal-dates > .ec-portal-field {
  grid-template-columns: minmax(0, 1fr);
}
.ec-home-portal .ec-portal-dates input[type="date"] {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
  max-width: 100%;
}
@media (max-width: 39.99rem) {
  .ec-home-portal .ec-portal-dates {
    grid-template-columns: minmax(0, 1fr);
    gap: .7rem;
  }
}

/* DATE-LAYOUT-01 width: stretch native date fields inside the phone grid. */
@media (max-width: 39.99rem) {
  .ec-home-portal .ec-portal-dates input[type="date"] {
    -webkit-appearance: none;
    appearance: none;
    display: block;
    width: auto;
    inline-size: auto;
    justify-self: stretch;
  }
  .ec-home-portal .ec-portal-dates input[type="date"]::-webkit-date-and-time-value {
    min-height: 1.5em;
    text-align: left;
  }
}

/* vivid.css */
/* VIVID02: compact editorial presentation on existing public WordPress routes. */
@font-face{font-family:Manrope;src:url('../fonts/vivid02/manrope-variable.woff') format('woff');font-weight:200 800;font-display:swap}
.ec-vivid{--ec-shell:82rem;--ec-gutter:clamp(1rem,3vw,3rem);--ec-ink:#102f3b;--ec-sea:#1553df;--ec-soft:#566971;--ec-paper:#fff;--ec-stone:#e1e7e9;--ec-sun:#ffda38;--portal-sun:#ffda38;--ec-red:#1553df;background:#fff;color:var(--ec-ink);font-family:Manrope,ui-sans-serif,system-ui,sans-serif;font-size:.9375rem;line-height:1.6}
.ec-vivid *{box-sizing:border-box}
.ec-vivid :is(button,input,select,textarea){font-family:inherit}
.ec-vivid :is(h1,h2,h3){font-family:inherit;font-weight:750;letter-spacing:-.035em;line-height:1.2;text-wrap:balance}
.ec-vivid :is(p,label,legend){line-height:1.6}
.ec-vivid :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--ec-sea);outline-offset:4px}
.ec-vivid [hidden]{display:none!important}
.ec-vivid .ec-site-header{position:sticky;top:0;z-index:50;background:#ffffffef;backdrop-filter:blur(16px);border-bottom:1px solid var(--ec-stone)}
.ec-vivid .ec-site-header:not(.ec-site-header--private) .ec-site-header__inner{min-height:4.5rem;padding-block:.5rem;gap:1.25rem}
.ec-vivid .ec-brand__name{font-size:1.7rem;color:var(--ec-ink);font-weight:800;letter-spacing:-.065em;line-height:1}
.ec-vivid .ec-brand__by{display:block;color:var(--ec-soft);font-size:.625rem;margin-top:.25rem;letter-spacing:.025em}
.ec-vivid .ec-primary-nav a,.ec-vivid .ec-utility-nav a{font-size:.8125rem;font-weight:650;text-decoration:none}
.ec-vivid .ec-utility-nav a[href$="/trips/"]{background:var(--ec-sea);color:#fff;padding-inline:.8rem;border-radius:.45rem}
.ec-vivid .ec-site-header .ec-menu-toggle{border:1px solid var(--ec-stone);border-radius:.4rem;font-size:.8125rem}
.ec-vivid .ec-mobile-header-actions{min-height:2.75rem}
.ec-vivid .ec-header-action{font-size:.8125rem}
.ec-vivid .ec-language{font-size:.75rem}
.ec-vivid .ec-language-switcher{border-left:1px solid var(--ec-stone);padding-left:.6rem;margin-left:.25rem}
.ec-vivid .ec-main{padding-top:0}
.ec-vivid .ec-portal-layout{display:block;width:min(100% - 2 * var(--ec-gutter),var(--ec-shell));max-width:var(--ec-shell);margin-inline:auto}
.ec-vivid .ec-portal-layout>*{order:initial;grid-column:auto;grid-row:auto}
.ec-vivid .ec-portal-hero{margin:1.25rem 0 0;border-radius:.75rem;min-height:25rem;height:auto;max-height:none;position:relative;display:flex;flex-direction:column;padding:2.5rem 3rem;isolation:isolate;overflow:hidden;color:#fff;background:#184751}
.ec-vivid .ec-portal-hero__image{object-position:65% 58%;width:100%;height:100%;inset:0;object-fit:cover}
.ec-vivid .ec-portal-hero::after{background:linear-gradient(90deg,#072635d9 0%,#0726359e 36%,#0726350d 78%),linear-gradient(0deg,#082c3933,transparent 70%);pointer-events:none}
.ec-vivid .ec-portal-hero__words{margin:0 0 1.5rem;padding:0;max-width:37rem}
.ec-vivid .ec-portal-kicker{font-size:.6875rem;letter-spacing:.14em;font-weight:750;margin:0 0 .9rem;max-width:32rem;text-transform:uppercase}
.ec-vivid .ec-portal-hero h1{font-size:clamp(2.5rem,4.1vw,3.5rem);letter-spacing:-.045em;line-height:1.08;max-width:22ch;color:#fff;margin:0;font-weight:750}
.ec-vivid .ec-portal-hero h1 span{color:#fff}
.ec-vivid .ec-portal-intro{font-size:.9375rem;line-height:1.65;max-width:29rem;margin:1rem 0 0;text-shadow:none;color:#f3f7fa}
.ec-vivid .ec-portal-search{width:min(35rem,100%);padding:.6rem .7rem .6rem 1rem;background:#fff;color:var(--ec-ink);border-radius:.5rem;margin:0;position:relative;z-index:2;box-shadow:0 5px 20px #05263526}
.ec-vivid .ec-portal-search label{font-size:.6875rem;font-weight:700;letter-spacing:.02em}
.ec-vivid .ec-portal-search__row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.75rem;align-items:center}
.ec-vivid .ec-portal-search input{font-size:1rem;min-height:2.75rem;padding:.15rem 0;background:#fff;color:var(--ec-ink)}
.ec-vivid .ec-portal-search__row>svg{height:1.25rem;width:1.25rem;color:var(--ec-sea)}
.ec-vivid .ec-portal-button,.ec-vivid .ec-main .ec-button--primary,.ec-vivid .ec-main button[type=submit]{background:var(--ec-sea);color:#fff;border:1px solid var(--ec-sea);border-radius:.45rem;min-height:2.75rem;font-size:.8125rem;font-weight:700;padding:.65rem 1rem;transition:background .2s,transform .2s}
.ec-vivid .ec-portal-button:hover,.ec-vivid .ec-main .ec-button--primary:hover{background:#1246bd;color:#fff;transform:translateY(-1px)}
.ec-vivid .ec-main .ec-button--secondary{background:#fff;color:var(--ec-ink);border:1px solid var(--ec-stone)}
.ec-vivid .ec-portal-button:disabled,.ec-vivid button:disabled{opacity:.55;transform:none}
.ec-vivid .ec-portal-hero .ec-home-credit{position:relative;z-index:2;color:#fff;font-size:.75rem;margin-top:.75rem;max-width:35rem}
.ec-vivid .ec-portal-categories{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;margin:1rem 0 0;padding:.2rem 0 1rem;border-bottom:1px solid var(--ec-stone);overflow-x:auto;scrollbar-width:thin}
.ec-vivid .ec-portal-categories a{flex:none;flex-direction:row;gap:.6rem;background:#f4f7f8;border:1px solid transparent;border-radius:2rem;font-size:.8125rem;padding:.5rem 1rem;min-height:2.75rem;text-align:left;white-space:nowrap;color:var(--ec-ink)}
.ec-vivid .ec-portal-categories a:hover{background:#eaf0ff;border-color:#d5dffc}
.ec-vivid .ec-portal-categories svg{width:1.15rem;height:1.15rem;color:var(--ec-sea)}
.ec-vivid .ec-portal-recommendations{margin:2rem 0 2.75rem}
.ec-vivid .ec-portal-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:1.25rem;margin:0 0 1.2rem}
.ec-vivid .ec-portal-section-heading h2{font-size:1.75rem;max-width:none;line-height:1.2;letter-spacing:-.035em;margin:0}
.ec-vivid .ec-portal-section-heading p{font-size:.875rem;max-width:44rem;color:var(--ec-soft);margin:.45rem 0 0}
.ec-vivid .ec-portal-section-heading .ec-vivid-eyebrow,.ec-vivid .ec-vivid-eyebrow{font-size:.625rem;letter-spacing:.13em;font-weight:750;color:var(--ec-sea);margin:0 0 .5rem;line-height:1.5;text-transform:uppercase}
.ec-vivid .ec-portal-text-link{font-size:.8125rem;min-height:2.75rem;font-weight:700;color:var(--ec-sea);gap:.5rem}
.ec-vivid .ec-portal-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.75rem 1.2rem;align-items:stretch}
.ec-vivid .ec-portal-card{border:0;border-radius:0;overflow:visible;background:transparent;box-shadow:none;transform:none;transition:none}
.ec-vivid .ec-portal-card:hover{box-shadow:none;transform:none}
.ec-vivid .ec-portal-card__image{aspect-ratio:3/2;border-radius:.55rem;overflow:hidden;background:#f1f5f7}
.ec-vivid .ec-portal-card__image img{transition:transform .5s cubic-bezier(.2,.75,.2,1);object-fit:cover}
.ec-vivid .ec-portal-card__link:hover img{transform:scale(1.035)}
.ec-vivid .ec-portal-card__body{padding:.8rem 0 .25rem}
.ec-vivid .ec-portal-card h3{font-size:1.125rem;margin:.35rem 0 .45rem;letter-spacing:-.025em;line-height:1.35;text-wrap:initial}
.ec-vivid .ec-portal-card__body>p{font-size:.8125rem;line-height:1.6;margin-bottom:.6rem;color:var(--ec-soft);-webkit-line-clamp:2}
.ec-vivid .ec-portal-card__meta{font-size:.6875rem;line-height:1.5;color:var(--ec-soft);gap:.4rem}
.ec-vivid .ec-portal-card__selected{font-size:.625rem;font-weight:700;color:var(--ec-sea);letter-spacing:.02em}
.ec-vivid .ec-portal-card__actions{padding:.3rem 0 0;gap:.4rem;flex-wrap:wrap;display:flex}
.ec-vivid .ec-portal-card__actions button{font-size:.75rem;padding:.5rem .65rem;border-radius:.4rem;border:1px solid var(--ec-stone);color:var(--ec-ink);background:#fff;min-height:2.75rem}
.ec-vivid .ec-portal-card__actions button:last-child:not(:first-child){background:#eef3ff;color:var(--ec-sea);border-color:#eef3ff;flex-grow:0}
.ec-vivid button[data-ec-save][aria-pressed=true]{background:#e7f0ec;border-color:#cee1d7;color:#194b38}
.ec-vivid .ec-portal-card .ec-home-credit{font-size:.6875rem;padding:.6rem 0 0;color:var(--ec-soft)}
.ec-vivid .ec-portal-destinations{background:#f3f6f7;color:var(--ec-ink);padding:1.75rem;border-radius:.75rem;margin:0 0 2.5rem}
.ec-vivid .ec-portal-destinations .ec-portal-section-heading h2{color:var(--ec-ink);font-size:1.65rem}
.ec-vivid .ec-portal-destination-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;padding:0;overflow:visible}
.ec-vivid .ec-portal-destination-wrap,.ec-vivid .ec-portal-destination-list>.ec-portal-destination{min-width:0}
.ec-vivid .ec-portal-destination{min-height:11rem;aspect-ratio:1.55;border-radius:.55rem;padding:1rem;color:#fff;display:flex;align-items:flex-end;position:relative}
.ec-vivid .ec-portal-destination>span{font-size:1.25rem;font-weight:750;letter-spacing:-.025em}
.ec-vivid .ec-portal-destination img{transition:transform .5s cubic-bezier(.2,.75,.2,1)}
.ec-vivid .ec-portal-destination:hover img{transform:scale(1.035)}
.ec-vivid .ec-portal-destination-wrap .ec-home-credit{font-size:.6875rem;color:var(--ec-soft);margin-top:.6rem}
.ec-vivid .ec-portal-more{display:block;margin-block:0 3rem}
.ec-vivid .ec-portal-plan-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5%;align-items:center;padding-block:0 2.75rem}
.ec-vivid .ec-portal-plan-copy h2{font-size:1.9rem;max-width:23ch;margin:0 0 .75rem;letter-spacing:-.035em}
.ec-vivid .ec-portal-plan-copy>p:last-child{font-size:.875rem;color:var(--ec-soft);max-width:31rem;margin:0}
.ec-vivid .ec-portal-planner{grid-column:auto;grid-row:auto;order:initial;position:static;padding:1.4rem;background:#fff;border:1px solid var(--ec-stone);border-radius:.6rem}
.ec-vivid .ec-portal-planner__heading{cursor:pointer;display:list-item;padding:.2rem 0;list-style:disclosure-closed}
.ec-vivid details[open]>.ec-portal-planner__heading{list-style:disclosure-open}
.ec-vivid .ec-portal-planner__heading h2{display:inline;font-size:1.125rem;line-height:1.3}
.ec-vivid .ec-portal-planner__intro{font-size:.8125rem;line-height:1.6;margin:1rem 0}
.ec-vivid .ec-portal-trip-form{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem}
.ec-vivid .ec-portal-trip-form>.ec-portal-button{grid-column:auto;grid-row:auto}
.ec-vivid .ec-portal-field{font-size:.75rem;gap:.4rem}
.ec-vivid .ec-portal-field :is(input,select){font-size:1rem;min-height:2.75rem;padding:.6rem .7rem;max-width:100%;width:100%;min-width:0}
.ec-vivid .ec-portal-field input[type=date]{font-size:1rem;min-width:0;width:100%;max-width:100%}
.ec-vivid .ec-portal-hint,.ec-vivid .ec-portal-status{font-size:.75rem;line-height:1.6}
.ec-vivid .ec-portal-trip-summary{font-size:.8125rem;line-height:1.6;margin-block:1rem .5rem}
.ec-vivid .ec-portal-section{margin-bottom:2.75rem}
.ec-vivid .ec-portal-partner{background:var(--ec-ink);color:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2.5rem;padding:2rem;border-radius:.75rem;align-items:center}
.ec-vivid .ec-portal-partner .ec-vivid-eyebrow{color:var(--ec-sun)}
.ec-vivid .ec-portal-partner h2{font-size:1.8rem;letter-spacing:-.035em;max-width:30ch;line-height:1.25;margin-bottom:.75rem}
.ec-vivid .ec-portal-partner p{font-size:.875rem;max-width:42rem;line-height:1.65}
.ec-vivid .ec-portal-partner>a.ec-portal-button{background:var(--ec-sun);color:var(--ec-ink);border-color:var(--ec-sun);width:fit-content;max-width:100%;line-height:1.45;justify-self:start}
.ec-vivid .ec-portal-partner p.ec-vivid-partner-note{font-size:.6875rem;color:#bed0d7;max-width:45rem;margin-top:1rem}
.ec-vivid .ec-page-header{padding-block:2rem 1.5rem;gap:.7rem}
.ec-vivid .ec-page-header h1{font-size:clamp(2rem,3vw,2.75rem);line-height:1.15;letter-spacing:-.04em;max-width:30ch}
.ec-vivid .ec-page-header .ec-kicker{font-size:.6875rem;letter-spacing:.1em;color:var(--ec-sea)}
.ec-vivid .ec-page-header .ec-dek{font-size:.9375rem;max-width:44rem;color:var(--ec-soft)}
.ec-vivid .ec-search-page>.ec-search-form,.ec-vivid .ec-filter-bar{padding:1rem;background:#f4f7f8;border-color:var(--ec-stone);border-radius:.6rem}
.ec-vivid .ec-main :is(input,select,textarea){font-size:1rem}
.ec-vivid .ec-card{border:1px solid var(--ec-stone);border-radius:.6rem;background:#fff;overflow:hidden;display:flex;flex-direction:column;min-width:0}
.ec-vivid .ec-card__media{aspect-ratio:3/2;overflow:hidden;margin:0;background:#f1f5f7}
.ec-vivid .ec-card__media img{object-fit:cover;width:100%;height:100%;transition:transform .5s ease}
.ec-vivid .ec-card__link:hover .ec-card__media img{transform:scale(1.035)}
.ec-vivid .ec-card__body{padding:1rem 1rem .5rem}
.ec-vivid .ec-card__title{font-size:1.125rem;line-height:1.35;letter-spacing:-.025em;margin:.35rem 0 .6rem}
.ec-vivid .ec-card__body p{font-size:.8125rem;color:var(--ec-soft);line-height:1.6}
.ec-vivid .ec-card__meta,.ec-vivid .ec-signal{font-size:.6875rem;line-height:1.5}
.ec-vivid .ec-card__actions{margin-top:auto;padding:.4rem 1rem 1rem;display:flex;flex-wrap:wrap;gap:.4rem}
.ec-vivid .ec-card__actions button{font-size:.75rem;background:#fff;border:1px solid var(--ec-stone);color:var(--ec-ink);min-height:2.75rem}
.ec-vivid .ec-card__actions button[data-ec-add-trip]{background:#eef3ff;border-color:#eef3ff;color:var(--ec-sea)}
.ec-vivid :is(.ec-card-grid,.ec-results){gap:1.2rem;grid-template-columns:repeat(4,minmax(0,1fr))}
.ec-vivid .ec-entity-hero{position:relative;isolation:isolate;min-height:25rem;margin:1.25rem auto 0;width:min(100% - 2 * var(--ec-gutter),var(--ec-shell));max-width:var(--ec-shell);border-radius:.75rem;overflow:hidden;background:var(--ec-ink);color:#fff;align-items:end;display:grid}
.ec-vivid .ec-entity-hero__media{position:absolute;inset:0;margin:0;z-index:auto;height:100%;width:100%;pointer-events:none}
.ec-vivid .ec-entity-hero__media>img{position:absolute;inset:0;z-index:-2;height:100%;width:100%;object-fit:cover}
.ec-vivid .ec-entity-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#062330c9,transparent 95%),linear-gradient(0deg,#062330cc,transparent 95%);z-index:-1;pointer-events:none}
.ec-vivid .ec-entity-hero__content{position:relative;z-index:1;padding-block:2.5rem;gap:.85rem;width:calc(100% - 5rem);max-width:76rem}
.ec-vivid .ec-entity-hero h1{font-size:clamp(2rem,3.6vw,3rem);line-height:1.15;max-width:30ch;letter-spacing:-.04em;color:#fff}
.ec-vivid .ec-entity-hero .ec-kicker{color:var(--ec-sun);font-size:.6875rem;letter-spacing:.09em}
.ec-vivid .ec-entity-hero .ec-dek{color:#fff;font-size:.9375rem;max-width:43rem;line-height:1.65}
.ec-vivid .ec-actions--entity{gap:.6rem;margin-top:.5rem}
.ec-vivid .ec-entity-hero .ec-button,.ec-vivid .ec-entity-hero button{font-size:.8125rem;padding:.65rem .9rem;min-height:2.75rem}
.ec-vivid .ec-entity-hero .ec-button--secondary{background:#fff;color:var(--ec-ink);border-color:#fff}
.ec-vivid .ec-entity-hero__media .ec-media-credit{position:absolute;right:1rem;top:1rem;color:#fff;background:#102f3bcc;z-index:2;pointer-events:auto;padding:.4rem .6rem;font-size:.6875rem;max-width:min(30rem,85%);border-radius:.3rem}
.ec-vivid .ec-entity-hero__media .ec-media-credit a{color:#fff}
.ec-vivid .ec-entity-body{padding-block:2.5rem;gap:3rem;grid-template-columns:minmax(16rem,.75fr) minmax(0,1.5fr);align-items:start}
.ec-vivid .ec-structured-content{padding:1.4rem;border:1px solid var(--ec-stone);border-radius:.6rem;background:#f4f7f8;top:6rem}
.ec-vivid .ec-structured-content h2{font-size:1.25rem;line-height:1.3;margin:0 0 1rem}
.ec-vivid .ec-fact{font-size:.8125rem;gap:.7rem;grid-template-columns:minmax(6rem,.85fr) minmax(0,1.15fr);padding:.65rem 0;border-color:var(--ec-stone)}
.ec-vivid .ec-fact dt,.ec-vivid .ec-fact dd{overflow-wrap:anywhere;line-height:1.6}
.ec-vivid .ec-prose{font-size:.9375rem;line-height:1.8;color:#354e5b;max-width:44rem}
.ec-vivid .ec-prose :is(h2,h3){color:var(--ec-ink);margin-top:1.8rem;margin-bottom:.8rem}
.ec-vivid .ec-prose h2{font-size:1.5rem}
.ec-vivid .ec-prose p{line-height:1.8;margin:0 0 1rem}
.ec-vivid .ec-my-croatia__hero{margin-block:1.25rem 1.5rem;background:#f1f6f7;color:var(--ec-ink);border-radius:.75rem;padding:2rem;width:min(100% - 2 * var(--ec-gutter),var(--ec-shell));max-width:var(--ec-shell)}
.ec-vivid .ec-my-croatia__hero h1{color:var(--ec-ink);max-width:30ch}
.ec-vivid .ec-my-croatia__hero .ec-kicker{color:var(--ec-sea)}
.ec-vivid .ec-my-croatia__hero .ec-dek{color:var(--ec-soft)}
.ec-vivid .ec-my-croatia__intro-card,.ec-vivid .ec-empty-state{background:#f4f7f8;border-radius:.6rem;padding:1.5rem;font-size:.875rem;border:1px solid var(--ec-stone)}
.ec-vivid .ec-my-croatia__intro-card h2{font-size:1.5rem;line-height:1.3}
.ec-vivid .ec-my-croatia__section{margin-block:2.5rem}
.ec-vivid .ec-my-croatia__section .ec-section-heading h2{font-size:1.6rem}
.ec-vivid .ec-my-croatia__summary>a{background:var(--ec-ink);color:#fff;border-radius:.6rem;padding:1.2rem}
.ec-vivid .ec-my-croatia__summary strong{color:var(--ec-sun);font-size:2rem;letter-spacing:-.04em}
.ec-vivid .ec-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}
.ec-vivid .ec-tabs button{font-size:.8125rem;border-radius:2rem;background:#f4f7f8;padding:.6rem 1rem;min-height:2.75rem}
.ec-vivid .ec-tabs button[aria-selected=true]{background:var(--ec-ink);color:#fff;border-color:var(--ec-ink)}
.ec-vivid .ec-site-footer{background:var(--ec-ink);color:#bed0d7;border:0;margin-top:0;padding-block:2.5rem}
.ec-vivid .ec-site-footer :is(strong,h2,a){color:#fff}
.ec-vivid .ec-site-footer__brand strong{font-size:1.6rem;letter-spacing:-.04em}
.ec-vivid .ec-site-footer p,.ec-vivid .ec-site-footer li{font-size:.8125rem;line-height:1.7}
.ec-vivid .ec-site-footer__nav h2{font-size:.9375rem}
.ec-vivid .ec-vivid-motion{grid-column:1/-1;justify-self:start;background:transparent;color:#bed0d7;border:1px solid #426176;border-radius:2rem;font-size:.75rem;padding:.5rem .8rem;min-height:2.75rem;cursor:pointer}
.ec-vivid :is(.ec-portal-card,.ec-portal-destination,.ec-portal-partner){transition:opacity .4s ease,transform .5s ease}
.ec-vivid .ec-vivid-enter{opacity:0;transform:translateY(.75rem)}
.ec-vivid.ec-vivid-paused *{animation-play-state:paused!important;scroll-behavior:auto!important}
.ec-vivid.ec-vivid-paused .ec-vivid-enter{opacity:1;transform:none}
@media(min-width:75rem){.ec-vivid .ec-site-header .ec-primary-nav ul,.ec-vivid .ec-site-header .ec-utility-nav ul{flex-wrap:nowrap;gap:0 .75rem}.ec-vivid .ec-site-header .ec-language-switcher a{min-width:2rem}.ec-vivid .ec-language[aria-current=page]{min-width:2rem;text-align:center;font-weight:800}.ec-vivid .ec-primary-nav a{white-space:nowrap}}
@media(max-width:74.99rem){.ec-vivid .ec-portal-cards,.ec-vivid :is(.ec-card-grid,.ec-results){grid-template-columns:repeat(3,minmax(0,1fr))}.ec-vivid .ec-portal-hero{padding:2.25rem;min-height:24rem}.ec-vivid .ec-portal-destinations{padding:1.4rem}.ec-vivid .ec-portal-destination{min-height:10rem}.ec-vivid .ec-portal-destination>span{font-size:1.1rem}.ec-vivid .ec-portal-partner{grid-template-columns:1fr;gap:1.2rem}.ec-vivid .ec-entity-body{gap:2rem}}
@media(max-width:55.99rem){.ec-vivid .ec-portal-cards,.ec-vivid :is(.ec-card-grid,.ec-results){grid-template-columns:repeat(2,minmax(0,1fr))}.ec-vivid .ec-portal-hero{min-height:23rem;padding:2rem}.ec-vivid .ec-portal-hero h1{font-size:2.75rem}.ec-vivid .ec-portal-categories{gap:.5rem}.ec-vivid .ec-portal-destination-list{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-vivid .ec-portal-destination{min-height:11rem}.ec-vivid .ec-portal-plan-section{grid-template-columns:1fr;gap:1.25rem}.ec-vivid .ec-entity-body{grid-template-columns:1fr;gap:1.75rem;padding-block:2rem}.ec-vivid .ec-structured-content{position:static}.ec-vivid .ec-entity-body .ec-prose{order:-1;max-width:none}.ec-vivid .ec-entity-hero__content{width:calc(100% - 3rem)}.ec-vivid .ec-entity-hero{min-height:24rem}}
@media(max-width:39.99rem){
.ec-vivid{--ec-gutter:1rem}.ec-vivid .ec-site-header:not(.ec-site-header--private) .ec-site-header__inner{min-height:4.25rem;padding-block:.5rem;gap:.5rem}.ec-vivid .ec-brand__name{font-size:1.5rem}.ec-vivid .ec-brand__by{font-size:.5625rem}
.ec-vivid .ec-portal-hero{margin-top:.75rem;min-height:0;padding:1.5rem 1.25rem;border-radius:.6rem}.ec-vivid .ec-portal-hero__words{margin-bottom:1.2rem}.ec-vivid .ec-portal-hero h1{font-size:2.25rem;max-width:20ch}.ec-vivid .ec-portal-kicker{font-size:.625rem;margin-bottom:.8rem}.ec-vivid .ec-portal-intro{font-size:.875rem;line-height:1.6;margin-top:.85rem}.ec-vivid .ec-portal-hero::after{background:linear-gradient(90deg,#062330db,#0623306b),linear-gradient(0deg,#0623308c,transparent)}
.ec-vivid .ec-portal-search{padding:.55rem .6rem}.ec-vivid .ec-portal-search__row{gap:.45rem;grid-template-columns:minmax(0,1fr) auto}.ec-vivid .ec-portal-search__row>svg{display:none}.ec-vivid .ec-portal-search input{font-size:1rem}.ec-vivid .ec-portal-search .ec-portal-button{font-size:.75rem;padding:.55rem .7rem}.ec-vivid .ec-portal-search .ec-portal-button span{display:none}
.ec-vivid .ec-portal-categories a{font-size:.75rem;padding:.5rem .75rem}.ec-vivid .ec-portal-categories{margin-top:.65rem;padding-bottom:.75rem}
.ec-vivid .ec-portal-recommendations{margin-block:1.5rem 2rem}.ec-vivid .ec-portal-section-heading{gap:.6rem;align-items:start;margin-bottom:1rem}.ec-vivid .ec-portal-section-heading h2{font-size:1.5rem}.ec-vivid .ec-portal-section-heading p{font-size:.8125rem}.ec-vivid .ec-portal-section-heading .ec-vivid-eyebrow{font-size:.625rem}.ec-vivid .ec-portal-section-heading>a{font-size:.75rem;max-width:37%}
.ec-vivid .ec-portal-cards,.ec-vivid :is(.ec-card-grid,.ec-results){grid-template-columns:1fr;gap:1.5rem}.ec-vivid .ec-portal-card__image,.ec-vivid .ec-card__media{aspect-ratio:16/9}.ec-vivid .ec-portal-card h3,.ec-vivid .ec-card__title{font-size:1.125rem}.ec-vivid .ec-portal-card__body>p,.ec-vivid .ec-card__body p{font-size:.875rem}.ec-vivid .ec-portal-card__actions button,.ec-vivid .ec-card__actions button{font-size:.8125rem}
.ec-vivid .ec-portal-destinations{padding:1rem;margin-bottom:2rem}.ec-vivid .ec-portal-destinations .ec-portal-section-heading h2{font-size:1.5rem}.ec-vivid .ec-portal-destination-list{gap:.65rem}.ec-vivid .ec-portal-destination{min-height:9rem;padding:.7rem;aspect-ratio:1}.ec-vivid .ec-portal-destination>span{font-size:.9375rem}
.ec-vivid .ec-portal-plan-copy h2{font-size:1.6rem}.ec-vivid .ec-portal-plan-section{padding-bottom:2rem}.ec-vivid .ec-portal-planner{padding:1rem}.ec-vivid .ec-portal-dates{grid-template-columns:minmax(0,1fr);gap:.75rem}.ec-vivid .ec-portal-field{font-size:.8125rem}.ec-vivid .ec-portal-field :is(input,select){font-size:1rem}
.ec-vivid .ec-portal-partner{padding:1.5rem;gap:1.2rem}.ec-vivid .ec-portal-partner h2{font-size:1.6rem}.ec-vivid .ec-portal-more{margin-bottom:2rem}.ec-vivid .ec-portal-section{margin-bottom:2rem}
.ec-vivid .ec-page-header{padding-block:1.5rem 1rem}.ec-vivid .ec-page-header h1{font-size:2rem}.ec-vivid .ec-page-header .ec-dek{font-size:.875rem}.ec-vivid .ec-entity-hero{margin-top:.75rem;min-height:23rem}.ec-vivid .ec-entity-hero__content{padding-block:2rem;width:calc(100% - 2.5rem);gap:.75rem}.ec-vivid .ec-entity-hero h1{font-size:2rem}.ec-vivid .ec-entity-hero .ec-dek{font-size:.875rem}.ec-vivid .ec-entity-hero .ec-button,.ec-vivid .ec-entity-hero button{font-size:.75rem;padding:.6rem .8rem}
.ec-vivid .ec-prose{font-size:.9375rem}.ec-vivid .ec-prose h2{font-size:1.4rem}.ec-vivid .ec-structured-content{padding:1rem}.ec-vivid .ec-structured-content h2{font-size:1.25rem}.ec-vivid .ec-fact{font-size:.8125rem}
.ec-vivid .ec-my-croatia__hero{padding:1.5rem}.ec-vivid .ec-my-croatia__hero h1{font-size:1.8rem}.ec-vivid .ec-my-croatia__intro-card{padding:1.25rem}.ec-vivid .ec-site-footer{padding-block:2rem}
}
@media(prefers-reduced-motion:reduce){.ec-vivid *,.ec-vivid *::before,.ec-vivid *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.ec-vivid .ec-vivid-enter{opacity:1!important;transform:none!important}}
@media(forced-colors:active){.ec-vivid :is(.ec-site-header,.ec-site-footer,.ec-portal-planner,.ec-card,.ec-structured-content){background:Canvas;color:CanvasText;border-color:CanvasText}.ec-vivid :is(a,button,input,select,summary):focus-visible{outline-color:Highlight}}
/* Saved tab panels contain a card grid; the panel itself is a single full-width slot. */
.ec-vivid [data-ec-saved-panel]{grid-template-columns:minmax(0,1fr)}

/* Content without a facts sidebar uses the full reading area. */
.ec-vivid .ec-entity-body:not(.ec-entity-body--facts){grid-template-columns:minmax(0,1fr)}
.ec-vivid .ec-entity-body:not(.ec-entity-body--facts)>.ec-prose{max-width:none}
.ec-vivid .ec-entity-body>.ec-prose>p{max-width:48rem}
.ec-vivid .ec-entity-body--facts .ec-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:39.99rem){.ec-vivid .ec-entity-body--facts .ec-card-grid{grid-template-columns:minmax(0,1fr)}}

/* atlas-shell.css */
/* Atlas / VIVID03. Loaded only on Vivid::enabled() public WordPress routes. */
@font-face {
  font-family: "EB Garamond";
  src: url("../fonts/atlas/eb-garamond-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
}
@font-face {
  font-family: "EB Garamond";
  src: url("../fonts/atlas/eb-garamond-italic-latin.woff2") format("woff2");
  font-style: italic;
  font-weight: 400 800;
  font-display: swap;
}
/* Existing components also name the old display family directly. Keep that CSS
   alias on the same EB Garamond files while the shared token uses the real name. */
@font-face {
  font-family: "Cormorant Garamond";
  src: url("../fonts/atlas/eb-garamond-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
}
@font-face {
  font-family: "Cormorant Garamond";
  src: url("../fonts/atlas/eb-garamond-italic-latin.woff2") format("woff2");
  font-style: italic;
  font-weight: 400 800;
  font-display: swap;
}
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/atlas/dm-sans.woff") format("woff");
  font-style: normal;
  font-weight: 100 1000;
  font-display: swap;
}
.ec-vivid {
  --atlas-display: "EB Garamond", Georgia, serif;
  --atlas-body: "DM Sans", Arial, sans-serif;
  --atlas-logo: Manrope, Arial, sans-serif;
  --ec-shell: 90.25rem;
  --ec-gutter: clamp(1.25rem, 3.5vw, 3.625rem);
  --ec-ink: #10262c;
  --ec-sea: #1749ef;
  --ec-soft: #566367;
  --ec-paper: #fff;
  --ec-stone: #d9dede;
  --ec-sun: #ffde3c;
  --ec-red: #1749ef;
  color: var(--ec-ink);
  background: var(--ec-paper);
  font-family: var(--atlas-body);
  font-size: .9375rem;
  font-weight: 400;
  line-height: 1.6;
}
.ec-vivid :is(button, input, select, textarea) { font-family: var(--atlas-body); }
.ec-vivid :is(h1, h2, h3) {
  font-family: var(--atlas-display);
  font-weight: 500;
  letter-spacing: -.03em;
  line-height: 1.08;
}
.ec-vivid ::selection { color: var(--ec-ink); background: var(--ec-sun); }
.ec-vivid :is(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid var(--ec-sea);
  outline-offset: 4px;
}

/* Keep the existing WordPress disclosure and navigation destinations authoritative. */
.ec-vivid .ec-site-header {
  position: relative;
  background: #fff;
  border-bottom: 1px solid var(--ec-stone);
  backdrop-filter: none;
}
.ec-vivid .ec-site-header:not(.ec-site-header--private) .ec-site-header__inner {
  min-height: 5.125rem;
  padding-block: .375rem;
  gap: 0 1rem;
}
.ec-vivid .ec-brand__name {
  color: var(--ec-ink);
  font-family: var(--atlas-logo);
  font-size: 1.8125rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.065em;
}
.ec-vivid .ec-brand__by {
  color: var(--ec-soft);
  font-family: var(--atlas-body);
  font-size: .75rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: -.01em;
  margin-top: .375rem;
}
.ec-vivid .ec-primary-nav a, .ec-vivid .ec-utility-nav a {
  color: var(--ec-ink);
  font-family: var(--atlas-body);
  font-size: .875rem;
  font-weight: 650;
  line-height: 1.3;
}
.ec-vivid .ec-primary-nav a:hover, .ec-vivid .ec-utility-nav a:hover { color: var(--ec-sea); }
.ec-vivid .ec-utility-nav a[href$="/trips/"] {
  background: var(--ec-sea);
  color: #fff;
  border-radius: .375rem;
  padding-inline: .875rem;
}
.ec-vivid .ec-utility-nav a[href$="/trips/"]:hover { background: #0642cb; color: #fff; }
.ec-vivid .ec-site-header .ec-menu-toggle {
  font-family: var(--atlas-body);
  font-size: .75rem;
  font-weight: 600;
  border: 1px solid var(--ec-stone);
  border-radius: .375rem;
}
.ec-vivid .ec-mobile-header-actions { min-height: 2.75rem; }
.ec-vivid .ec-header-action { font-size: .875rem; }
.ec-vivid .ec-language-switcher { border-color: var(--ec-stone); }
.ec-vivid .ec-language { font-family: var(--atlas-body); font-size: .8125rem; }
.ec-vivid .ec-site-header:not(.ec-site-header--private) .ec-primary-nav { border-color: var(--ec-stone); }
.ec-vivid .ec-mobile-menu-utilities { border-color: var(--ec-stone); }
.ec-vivid .ec-mobile-languages__label { font-size: .6875rem; font-weight: 600; }

/* Compact accepted Atlas footer, with the established WordPress navigation. */
.ec-vivid .ec-site-footer {
  padding-block: 2rem 1.375rem;
  color: #f4efe4;
  background: #061713;
  border-top: 1px solid rgba(216, 174, 73, .52);
}
.ec-vivid .ec-site-footer__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0 1.5rem;
}
.ec-vivid .ec-atlas-footer__top {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.625rem;
  padding-bottom: 1.75rem;
  border-bottom: 1px solid rgba(244, 239, 228, .18);
}
.ec-vivid .ec-atlas-footer__top .ec-brand { flex-shrink: 0; }
.ec-vivid .ec-atlas-footer__top .ec-brand__name { font-size: 1.625rem; }
.ec-vivid .ec-site-footer .ec-brand__name { color: #d8ae49; }
.ec-vivid .ec-site-footer .ec-brand__to { color: #d8ae49; }
.ec-vivid .ec-site-footer .ec-footer-logo {
  display: block;
  max-width: 100%;
  height: auto;
  filter: brightness(0) saturate(100%) invert(71%) sepia(41%) saturate(900%) hue-rotate(5deg) brightness(93%) contrast(88%);
}
.ec-vivid .ec-atlas-footer__top .ec-atlas-footer__line {
  margin: 0;
  font-family: var(--atlas-display);
  font-size: 1.5rem;
  font-style: italic;
  font-weight: 500;
  line-height: 1.3;
  color: #f4efe4;
}
.ec-vivid .ec-atlas-footer__links,
.ec-vivid .ec-atlas-footer__links ul,
.ec-vivid .ec-atlas-footer__base,
.ec-vivid .ec-atlas-footer__base ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .5rem 1.4375rem;
}
.ec-vivid .ec-atlas-footer__links ul,
.ec-vivid .ec-atlas-footer__base ul { list-style: none; padding: 0; margin: 0; }
.ec-vivid .ec-site-footer p, .ec-vivid .ec-site-footer li {
  font-family: var(--atlas-body);
  font-size: .75rem;
  line-height: 1.6;
}
.ec-vivid .ec-site-footer a { color: #f4efe4; text-decoration: none; }
.ec-vivid .ec-atlas-footer__links a,
.ec-vivid .ec-atlas-footer__base a { display: inline-flex; align-items: center; min-height: 2.75rem; }
.ec-vivid .ec-site-footer a:hover { color: #e5bd5b; }
.ec-vivid .ec-atlas-footer__base { color: #c9c6bd; padding-top: .75rem; }
.ec-vivid .ec-atlas-footer__base p { margin: 0; }
.ec-vivid .ec-atlas-footer__base a { color: #e8e3d8; }
.ec-vivid .ec-atlas-footer__nav--mobile { display: none; }
.ec-vivid .ec-site-footer :is(a, button, summary):focus-visible {
  outline-color: #e5bd5b;
}
.ec-vivid .ec-vivid-motion {
  grid-column: 2;
  justify-self: end;
  margin-top: .75rem;
  padding: .5rem 0;
  font-family: var(--atlas-body);
  font-size: .75rem;
  font-weight: 400;
  border: 0;
  border-radius: 0;
  color: #c9c6bd;
}

/* Inner routes keep their existing data, form controls, cards and action handlers. */
.ec-vivid .ec-page-header { padding-block: 2rem 1.5rem; gap: .7rem; }
.ec-vivid .ec-page-header h1 {
  font-size: clamp(2.8rem, 4.5vw, 4.3rem);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -.035em;
  max-width: 30ch;
}
.ec-vivid .ec-page-header .ec-dek { font-size: .9375rem; max-width: 44rem; }
.ec-vivid :is(.ec-kicker, .ec-vivid-eyebrow, .ec-card__meta, .ec-signal) {
  font-family: var(--atlas-body);
  font-weight: 600;
  line-height: 1.5;
}
.ec-vivid .ec-kicker { font-size: .6875rem; letter-spacing: .1em; }
.ec-vivid :is(.ec-section-heading, .ec-section__heading) h2 {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.1;
}
.ec-vivid .ec-card__title {
  font-family: var(--atlas-display);
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -.02em;
}
.ec-vivid .ec-card__body p { font-size: .8125rem; line-height: 1.6; }
.ec-vivid .ec-card__meta, .ec-vivid .ec-signal { font-size: .6875rem; }
.ec-vivid .ec-entity-hero h1 {
  font-size: clamp(2.8rem, 4.8vw, 4.5rem);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -.035em;
}
.ec-vivid .ec-entity-hero .ec-dek { font-size: .9375rem; }
.ec-vivid .ec-prose { font-family: var(--atlas-body); font-size: .9375rem; }
.ec-vivid .ec-prose h2 { font-size: 2.2rem; line-height: 1.12; }
.ec-vivid .ec-prose h3 { font-size: 1.7rem; line-height: 1.15; }
.ec-vivid .ec-my-croatia__hero h1 { font-weight: 500; }
.ec-vivid .ec-my-croatia__intro-card h2 { font-size: 2rem; font-weight: 400; line-height: 1.12; }
.ec-vivid .ec-my-croatia__section .ec-section-heading h2 { font-size: 2.1rem; }
.ec-vivid :is(.ec-structured-content h2, .ec-filter-dialog h2, .ec-trip-detail__header h2) {
  font-family: var(--atlas-body);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -.02em;
}
.ec-vivid :is(.ec-zero-results, .ec-empty-state) h2 {
  font-family: var(--atlas-display);
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.15;
}
.ec-vivid .ec-site-header:not(.ec-site-header--private) :is(a, button):focus-visible {
  outline: 3px solid var(--ec-sea);
  outline-offset: 4px;
}

@media (min-width: 75rem) {
  .ec-vivid .ec-site-header:not(.ec-site-header--private) .ec-site-header__inner { gap: 1.5rem; }
  .ec-vivid .ec-site-header .ec-primary-nav ul { gap: 0 1.25rem; justify-content: center; }
  .ec-vivid .ec-site-header .ec-utility-nav ul { gap: 0 .625rem; }
  .ec-vivid .ec-site-header .ec-language-switcher { gap: 0; }
  .ec-vivid .ec-site-header .ec-language-switcher a, .ec-vivid .ec-language[aria-current="page"] {
    min-width: 1.875rem;
    text-align: center;
  }
}
@media (max-width: 55.99rem) {
  .ec-vivid .ec-atlas-footer__top .ec-atlas-footer__line { display: none; }
}
@media (max-width: 43.75rem) {
  .ec-vivid .ec-site-header:not(.ec-site-header--private) .ec-site-header__inner { min-height: 4.5rem; }
  .ec-vivid .ec-brand__name { font-size: 1.5625rem; }
}
@media (max-width: 40rem) {
  .ec-vivid .ec-site-header:not(.ec-site-header--private) .ec-site-header__inner { min-height: 4.5rem; gap: 0 .5rem; }
  .ec-vivid .ec-brand__name { font-size: 1.5625rem; }
  .ec-vivid .ec-site-footer { padding-block: 1.5rem 1.125rem; }
  .ec-vivid .ec-site-footer__inner {
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    row-gap: 1rem;
  }
  .ec-vivid .ec-atlas-footer__top {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    justify-items: start;
    gap: 1.125rem;
    padding-bottom: 1rem;
  }
  .ec-vivid .ec-atlas-footer__top .ec-brand--footer-logo {
    width: clamp(8.5rem, 42vw, 10rem);
  }
  .ec-vivid .ec-atlas-footer__links,
  .ec-vivid .ec-atlas-footer__base {
    display: grid;
    align-items: start;
    width: 100%;
  }
  .ec-vivid .ec-atlas-footer__links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .5rem 1rem;
  }
  .ec-vivid .ec-atlas-footer__base {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .25rem 1rem;
    padding-top: .25rem;
  }
  .ec-vivid .ec-atlas-footer__links nav,
  .ec-vivid .ec-atlas-footer__base nav,
  .ec-vivid .ec-atlas-footer__links ul,
  .ec-vivid .ec-atlas-footer__base ul {
    min-width: 0;
    width: 100%;
  }
  .ec-vivid .ec-atlas-footer__links ul,
  .ec-vivid .ec-atlas-footer__base ul {
    display: grid;
    gap: .25rem;
  }
  .ec-vivid .ec-atlas-footer__links ul {
    grid-template-columns: minmax(0, 1fr);
  }
  .ec-vivid .ec-atlas-footer__base ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ec-vivid .ec-atlas-footer__links a,
  .ec-vivid .ec-atlas-footer__base nav a {
    width: 100%;
    min-height: 2.75rem;
    padding-block: .375rem;
    line-height: 1.35;
  }
  .ec-vivid .ec-atlas-footer__links a {
    border-top: 1px solid rgba(244, 239, 228, .18);
  }
  .ec-vivid .ec-atlas-footer__base > p a {
    width: auto;
    min-width: 2.75rem;
    min-height: 2.75rem;
  }
  .ec-vivid .ec-atlas-footer__base nav {
    grid-column: 1 / -1;
    margin: 0 0 .5rem;
    padding: 0 0 .75rem;
    border-bottom: 1px solid rgba(244, 239, 228, .18);
  }
  .ec-vivid .ec-atlas-footer__base > p {
    align-self: center;
    min-width: 0;
    overflow-wrap: anywhere;
  }
  .ec-vivid .ec-atlas-footer__base > .ec-site-credit {
    grid-column: 1 / -1;
  }
  .ec-vivid .ec-atlas-footer__base > .ec-site-credit.tcff__theme-credit {
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    width: 100%;
    min-width: 0;
    min-height: 2.75rem;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
  .ec-vivid .ec-atlas-footer__base > .ec-site-credit.tcff__theme-credit > .tcff__credit-label,
  .ec-vivid .ec-atlas-footer__base > .ec-site-credit.tcff__theme-credit > .tcff__credit-arrow {
    flex: 0 0 auto;
    white-space: nowrap;
  }
  .ec-vivid .ec-atlas-footer__base > .ec-site-credit.tcff__theme-credit > a {
    box-sizing: border-box;
    flex: 0 0 6.5rem;
    width: 6.5rem !important;
    min-width: 6.5rem;
    max-width: 6.5rem;
  }
  .ec-vivid .ec-atlas-footer__base .ec-atlas-footer__nav--mobile { display: block; }
  .ec-vivid .ec-atlas-footer__base .ec-atlas-footer__nav--desktop { display: none; }
  .ec-vivid .ec-site-footer .ec-photo-notes,
  .ec-vivid .ec-site-footer .ec-photo-notes summary {
    width: 100%;
    min-height: 2.75rem;
  }
  .ec-vivid .ec-site-footer .ec-photo-notes {
    padding-block: .125rem;
    border-bottom: 1px solid rgba(244, 239, 228, .18);
  }
  .ec-vivid .ec-site-footer .ec-photo-notes__credits {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: .25rem;
  }
  .ec-vivid .ec-site-footer .ec-photo-notes__credits > span[aria-hidden="true"] { display: none; }
  .ec-vivid .ec-site-footer .ec-photo-notes__credits a {
    display: flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    min-width: 2.75rem;
    min-height: 2.75rem;
    overflow-wrap: anywhere;
  }
  .ec-vivid .ec-site-footer .ec-photo-notes__preview {
    min-width: 2.75rem;
    min-height: 2.75rem;
  }
  .ec-vivid .ec-vivid-motion {
    grid-column: 1;
    justify-self: stretch;
    width: 100%;
    min-height: 2.75rem;
    margin-top: 0;
  }
  .ec-vivid .ec-page-header { padding-block: 1.5rem 1rem; }
  .ec-vivid .ec-page-header h1 { font-size: 2.5rem; }
  .ec-vivid .ec-page-header .ec-dek { font-size: .875rem; }
  .ec-vivid .ec-entity-hero h1 { font-size: 2.75rem; }
  .ec-vivid .ec-entity-hero .ec-dek { font-size: .875rem; }
  .ec-vivid .ec-card__title { font-size: 1.6rem; }
  .ec-vivid .ec-prose h2 { font-size: 1.9rem; }
  .ec-vivid .ec-my-croatia__hero h1 { font-size: 2.5rem; }
}
@media (max-width: 23.75rem) {
  .ec-vivid .ec-site-header .ec-brand__name { font-size: 1.4375rem; }
  .ec-vivid .ec-atlas-footer__base > .ec-site-credit.tcff__theme-credit {
    gap: .3rem;
    font-size: .5rem;
    letter-spacing: .025em;
  }
  .ec-vivid .ec-atlas-footer__base > .ec-site-credit.tcff__theme-credit > a {
    flex-basis: 5.5rem;
    width: 5.5rem !important;
    min-width: 5.5rem;
    max-width: 5.5rem;
  }
}
@media (forced-colors: active) {
  .ec-vivid :is(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
    outline-color: Highlight;
  }
}

/* Native GALLERY01 licence scope: keep verified original-aspect media uncropped. */
img[data-ec-original-aspect="true"]{object-fit:contain!important;transform:none!important}

/* V3.3.3: footer cascade hotfix.
   Do not depend on the optional body.ec-vivid class; the Atlas footer markup is
   the scope. Important declarations intentionally beat later public-shell rules. */
body footer.ec-site-footer.ec-atlas-footer {
  box-sizing: border-box;
  background: #061713 !important;
  color: #f4efe4 !important;
  border-top-color: rgba(216, 174, 73, .52) !important;
}
body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__top {
  border-bottom-color: rgba(244, 239, 228, .18) !important;
}
body footer.ec-site-footer.ec-atlas-footer :is(.ec-atlas-footer__line, p, li) {
  color: #f4efe4 !important;
}
body footer.ec-site-footer.ec-atlas-footer :is(a, button, summary) {
  color: #f4efe4 !important;
}
body footer.ec-site-footer.ec-atlas-footer :is(a, button, summary):hover {
  color: #e5bd5b !important;
}
body footer.ec-site-footer.ec-atlas-footer .ec-footer-logo {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  opacity: 1 !important;
  filter: brightness(0) saturate(100%) invert(71%) sepia(41%) saturate(900%) hue-rotate(5deg) brightness(93%) contrast(88%) !important;
}
body footer.ec-site-footer.ec-atlas-footer .tcff__theme-credit .tcff__credit-label {
  color: #d8ae49 !important;
}
body footer.ec-site-footer.ec-atlas-footer .tcff__theme-credit .tcff__credit-arrow {
  color: #d94a3a !important;
}

@media (max-width: 40rem) {
  body footer.ec-site-footer.ec-atlas-footer .ec-site-footer__inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 1rem !important;
    min-width: 0 !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__top {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 1rem !important;
    min-width: 0 !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__links {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .5rem 1rem !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__links :is(nav, ul, li) {
    min-width: 0 !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__links ul {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: .25rem !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__links a,
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__nav--mobile a {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 44px !important;
    color: #f4efe4 !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__nav--mobile {
    display: block !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__nav--mobile ul {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .25rem 1rem !important;
    width: 100% !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__nav--desktop {
    display: none !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__base {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: .25rem 1rem !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__base > .ec-site-credit.tcff__theme-credit {
    box-sizing: border-box !important;
    display: flex !important;
    grid-column: 1 / -1 !important;
    align-items: center !important;
    justify-content: center !important;
    flex-flow: row nowrap !important;
    gap: .35rem !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
    padding: .35rem 0 !important;
    overflow: visible !important;
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__base > .ec-site-credit.tcff__theme-credit > .tcff__credit-label {
    display: block !important;
    flex: 0 1 auto !important;
    min-width: max-content !important;
    font-size: clamp(.5rem, 2.5vw, .64rem) !important;
    line-height: 1.15 !important;
    letter-spacing: .025em !important;
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__base > .ec-site-credit.tcff__theme-credit > .tcff__credit-arrow {
    display: block !important;
    flex: 0 0 auto !important;
    font-size: .9rem !important;
    line-height: 1 !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__base > .ec-site-credit.tcff__theme-credit > a {
    box-sizing: border-box !important;
    display: inline-flex !important;
    flex: 0 0 clamp(5.25rem, 27.5vw, 6.5rem) !important;
    align-items: center !important;
    width: clamp(5.25rem, 27.5vw, 6.5rem) !important;
    min-width: 5.25rem !important;
    max-width: 6.5rem !important;
    min-height: 44px !important;
    padding: 0 !important;
  }
  body footer.ec-site-footer.ec-atlas-footer .ec-atlas-footer__base > .ec-site-credit.tcff__theme-credit > a img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: none !important;
  }
}

/* engagement-consent.css */
/* Explicit footer preferences; never a banner or a page-blocking prompt on arrival. */
.ec-engagement-preferences {
  display: inline-flex; align-items: center; min-height: 44px; margin: .25rem 0;
  padding: .25rem 0; border: 0; background: transparent; color: inherit;
  font: inherit; font-size: .875rem; text-decoration: underline; text-underline-offset: .2em;
  cursor: pointer;
}
.ec-engagement-dialog {
  box-sizing: border-box; width: min(38rem, calc(100% - 2rem)); max-height: calc(100dvh - 2rem);
  margin: auto; padding: clamp(1.25rem, 4vw, 2rem); overflow-y: auto;
  border: 1px solid #172b42; border-radius: 1rem; background: #f7f5ef; color: #172b42;
  font-family: inherit; font-size: 1rem; line-height: 1.55; overflow-wrap: anywhere;
}
.ec-engagement-dialog:not([open]) { display: none; }
.ec-engagement-dialog::backdrop { background: rgb(12 25 39 / .55); }
.ec-engagement-dialog__title { margin: 0 0 1rem; font-size: clamp(1.35rem, 3vw, 1.75rem); line-height: 1.2; }
.ec-engagement-dialog p { margin: 0 0 1rem; }
.ec-engagement-dialog__status { padding-block: .75rem; border-top: 1px solid #adb5b9; font-weight: 600; }
.ec-engagement-dialog__actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.ec-engagement-dialog__choice, .ec-engagement-dialog__close {
  min-height: 44px; padding: .75rem 1rem; border: 1px solid #172b42; border-radius: .5rem;
  background: #fff; color: #172b42; font: inherit; line-height: 1.3; cursor: pointer;
}
.ec-engagement-dialog__choice:hover, .ec-engagement-dialog__close:hover { background: #e9edf0; }
.ec-engagement-dialog__close { display: block; margin: 1rem 0 0 auto; }
.ec-engagement-preferences:focus-visible, .ec-engagement-dialog button:focus-visible { outline: 3px solid #3575ab; outline-offset: 3px; }
@media (max-width: 34rem) { .ec-engagement-dialog__actions { grid-template-columns: 1fr; } }

/* editorial15.css */
/* PORTAL15 — mixed editorial proportions, using the existing content and actions. */

/* Guides: one photograph per collection, a tall lead, square stories and wide chapters. */
.ec-guide-directory .ec-guide-directory__grid--collections {display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px;align-items:stretch}
.ec-guide-directory .ec-guide-collection {grid-column:span 6;display:flex;flex-direction:column;min-width:0;border:1px solid #dfe4df;border-radius:18px;background:#fffef9;overflow:hidden}
.ec-guide-directory .ec-guide-collection__destination {position:relative;display:block;border:0;background:#173b3e;min-width:0;overflow:hidden;isolation:isolate}
.ec-guide-directory .ec-guide-collection__figure {height:100%;margin:0;position:relative;line-height:0}
.ec-guide-directory .ec-guide-collection__figure>a {display:block;height:100%}
.ec-guide-directory .ec-guide-collection__figure img {display:block;width:100%;height:100%;min-height:250px;aspect-ratio:16/10;object-fit:cover;transition:transform .6s ease}
.ec-guide-directory .ec-guide-collection__figure::after {content:"";position:absolute;inset:25% 0 0;pointer-events:none;background:linear-gradient(transparent,rgba(5,31,35,.22) 40%,rgba(5,31,35,.88))}
.ec-guide-directory .ec-guide-collection__figure figcaption {z-index:2;top:15px;left:18px;bottom:auto;padding:4px 7px;border-radius:3px;background:#102d3c73;font-size:10px;letter-spacing:.025em}
.ec-guide-directory .ec-guide-collection__heading {position:absolute;inset:auto 0 0;padding:50px 24px 23px;pointer-events:none;z-index:2}
.ec-guide-directory .ec-guide-collection__heading h2 {font-size:clamp(2rem,3.6vw,3.6rem);line-height:1.03;margin:0 0 9px;letter-spacing:-.025em}
.ec-guide-directory .ec-guide-collection__heading h2 a {color:#fff!important;pointer-events:auto;text-decoration:none}
.ec-guide-directory .ec-guide-collection__heading h2 span {color:#fff;font-size:22px;margin-left:8px}
.ec-guide-directory .ec-guide-collection__heading p {font:400 12px/1.5 "DM Sans",sans-serif;color:#f7f3e7}
.ec-guide-directory .ec-guide-collection__guides {display:grid;grid-template-columns:1fr!important;padding:8px 22px;min-width:0;flex:1}
.ec-guide-directory .ec-guide-collection__guide:nth-child(n) {display:flex;padding:18px 0;border:0;border-bottom:1px solid #dbe2d9;min-width:0}
.ec-guide-directory .ec-guide-collection__guide:last-child {border-bottom:0}
.ec-guide-directory .ec-guide-collection__tags {margin:0 0 6px;gap:6px}
.ec-guide-directory .ec-guide-collection__tags span {border:0;background:#e8eee6;color:#325445;border-radius:3px;padding:4px 6px;font-size:10px}
.ec-guide-directory .ec-guide-collection__guide>.ec-bestof-card {overflow:visible;min-height:0}
.ec-guide-directory .ec-guide-collection__guide .ec-bestof-card__copy {padding:0 0 7px}
.ec-guide-directory .ec-guide-collection__guide .ec-bestof-card__copy h3 {font:600 clamp(1.15rem,1.65vw,1.4rem)/1.25 "DM Sans",Arial,sans-serif;letter-spacing:-.025em;margin:0 0 8px;color:#173b3e}
.ec-guide-directory .ec-guide-collection__guide .ec-bestof-card__copy>p {font-size:13px;line-height:1.6;color:#5a6b65;margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.ec-guide-directory .ec-guide-collection__guide .ec-bestof-card__actions {margin:0;padding:0;display:flex;justify-content:flex-start;min-height:44px}
.ec-guide-directory .ec-guide-collection__guide .ec-bestof-card__actions button {font-size:12px;min-height:44px;line-height:1.4;padding:7px 0;color:#215a49}
.ec-guide-directory .ec-guide-collection--portrait {grid-column:span 7;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.ec-guide-directory .ec-guide-collection--portrait .ec-guide-collection__destination {min-height:480px}
.ec-guide-directory .ec-guide-collection--portrait .ec-guide-collection__figure {position:absolute;inset:0}
.ec-guide-directory .ec-guide-collection--portrait .ec-guide-collection__figure img {aspect-ratio:auto}
.ec-guide-directory .ec-guide-collection--portrait .ec-guide-collection__heading {padding:45px 20px 25px}
.ec-guide-directory .ec-guide-collection--portrait .ec-guide-collection__heading h2 {font-size:clamp(2rem,3vw,3rem)}
.ec-guide-directory .ec-guide-collection--portrait+.ec-guide-collection--square {grid-column:span 5}
.ec-guide-directory .ec-guide-collection--square .ec-guide-collection__destination {max-height:300px}
.ec-guide-directory .ec-guide-collection--square .ec-guide-collection__figure img {aspect-ratio:4/3;height:300px}
.ec-guide-directory .ec-guide-collection--wide {grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);background:#f3f2e9}
.ec-guide-directory .ec-guide-collection--wide .ec-guide-collection__guides {grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:24px;padding-block:18px}
.ec-guide-directory .ec-guide-collection--wide .ec-guide-collection__figure img {min-height:340px;aspect-ratio:auto}
.ec-guide-directory .ec-guide-directory__item {grid-column:span 6;min-width:0}
.ec-guide-directory .ec-guide-directory__occasion[aria-current="true"],.ec-guide-directory .ec-guide-directory__tab[aria-current="true"] {color:#fff!important}

/* Destination overview: offset portraits beside squares, never a screen-sized grid tile. */
.ec-dest-explorer--directory .ec-dest-explorer__grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 22px;align-items:start}
.ec-dest-explorer--directory .ec-dest-explorer__grid>.ec-bestof-card:nth-child(4n+2) {margin-top:48px}
.ec-dest-explorer--directory .ec-dest-explorer__grid>.ec-bestof-card:nth-child(4n+4) {margin-top:22px}
.ec-dest-explorer--directory .ec-dest-explorer__grid .ec-bestof-card__image {aspect-ratio:1;max-height:340px;border-radius:12px;overflow:hidden}
.ec-dest-explorer--directory .ec-dest-explorer__grid>.ec-bestof-card:nth-child(4n+1) .ec-bestof-card__image,
.ec-dest-explorer--directory .ec-dest-explorer__grid>.ec-bestof-card:nth-child(4n+4) .ec-bestof-card__image {aspect-ratio:4/5}
.ec-dest-explorer--directory .ec-dest-explorer__grid>.ec-bestof-card:nth-child(4n+3) .ec-bestof-card__image {aspect-ratio:4/3}
.ec-dest-explorer--directory .ec-bestof-card__image img:not([data-ec-original-aspect]) {object-fit:cover}
.ec-dest-explorer--directory .ec-dest-explorer__grid>.ec-bestof-card:only-child {grid-column:span 2;max-width:380px;margin:0}

/* Home: a featured guide with two supporting stories and aligned destinations. */
.ec-atlas-home.ec-home-current .ec-home-guide-occasions {background:#f4f1e7;border:0;border-radius:18px;padding:26px;margin-block:32px}
.ec-atlas-home.ec-home-current .ec-home-guide-occasions__cards {display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:18px;align-items:stretch}
.ec-atlas-home.ec-home-current .ec-home-guide-occasions__cards .atlas-card {position:relative;display:grid;grid-template-columns:42% minmax(0,1fr);border:0;border-radius:12px;min-height:190px;overflow:hidden}
.ec-atlas-home.ec-home-current .ec-home-guide-occasions__cards .atlas-card:first-child {grid-row:span 2;display:flex;flex-direction:column;min-height:430px}
.ec-atlas-home.ec-home-current .ec-home-guide-occasions__cards .atlas-card .atlas-card-image {height:100%;max-height:none;aspect-ratio:auto;min-height:190px}
.ec-atlas-home.ec-home-current .ec-home-guide-occasions__cards .atlas-card:first-child .atlas-card-image {flex:1;aspect-ratio:4/3;min-height:260px}
.ec-atlas-home.ec-home-current .ec-home-guide-occasions__cards .atlas-card .atlas-card-copy {align-self:center;padding:22px 20px}
.ec-atlas-home.ec-home-current .ec-home-guide-occasions__cards .atlas-card:first-child .atlas-card-copy {flex:0;align-self:stretch;padding:20px 24px}
.ec-atlas-home.ec-home-current .ec-home-guide-occasions__cards .atlas-card:first-child h3 {font:600 clamp(1.5rem,2vw,2rem)/1.15 "DM Sans",sans-serif;letter-spacing:-.035em}
.ec-atlas-home.ec-home-current .ec-home-guide-occasions__cards .atlas-card-summary {-webkit-line-clamp:3;line-height:1.65}
.ec-atlas-home.ec-home-current .ec-home-lower .atlas-region-section .atlas-shell {display:block}
.ec-atlas-home.ec-home-current .ec-home-lower .atlas-region-section .atlas-section-heading {display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
.ec-atlas-home.ec-home-current .ec-home-lower .atlas-regions {grid-template-columns:1.15fr .85fr 1.05fr .95fr;gap:22px;align-items:start}
.ec-atlas-home.ec-home-current .ec-home-lower .atlas-region-image {height:auto;max-height:300px;aspect-ratio:4/5;border-radius:10px}
.ec-atlas-home.ec-home-current .ec-home-showcase__destinations {grid-template-columns:1.15fr 1fr 1.1fr 1fr;align-items:start;gap:16px}
.ec-atlas-home.ec-home-current .ec-home-showcase__destination>a {aspect-ratio:4/5;max-height:300px}
.ec-atlas-home.ec-home-current .ec-opening__track {grid-auto-columns:calc((100% - 54px)/4);gap:18px;align-items:start}

/* Original-aspect commitments still win over editorial framing. */
body img[data-ec-original-aspect] {object-fit:contain!important;transform:none!important}
.ec-guide-collection__destination:has(img[data-ec-original-aspect]) .ec-guide-collection__figure::after {display:none}
.ec-guide-collection__destination:has(img[data-ec-original-aspect]) .ec-guide-collection__heading {position:relative;background:#173b3e}
.ec-guide-collection__destination:has(img[data-ec-original-aspect]) .ec-guide-collection__figure {position:relative;height:auto}
.ec-guide-collection__destination:has(img[data-ec-original-aspect]) .ec-guide-collection__figure img {height:auto;min-height:0;aspect-ratio:auto}

@media (hover:hover) and (prefers-reduced-motion:no-preference) {
 .ec-guide-collection__destination:hover .ec-guide-collection__figure img:not([data-ec-original-aspect]) {transform:scale(1.035)}
}
@media (max-width:1023px) {
 .ec-guide-directory .ec-guide-directory__grid--collections {grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
 .ec-guide-directory .ec-guide-collection--portrait,.ec-guide-directory .ec-guide-collection--portrait+.ec-guide-collection--square,.ec-guide-directory .ec-guide-collection,.ec-guide-directory .ec-guide-directory__item {grid-column:span 1;display:flex}
 .ec-guide-directory .ec-guide-collection--portrait .ec-guide-collection__destination {min-height:360px}
 .ec-guide-directory .ec-guide-collection--square .ec-guide-collection__destination {max-height:250px}
 .ec-guide-directory .ec-guide-collection--wide {grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}
 .ec-guide-directory .ec-guide-collection--wide .ec-guide-collection__guides {grid-template-columns:1fr!important}
 .ec-dest-explorer--directory .ec-dest-explorer__grid {grid-template-columns:repeat(3,minmax(0,1fr))}
 .ec-atlas-home.ec-home-current .ec-opening__track {grid-auto-columns:calc((100% - 36px)/3)}
}
@media (max-width:767px) {
 .ec-guide-directory .ec-guide-directory__grid--collections {grid-template-columns:1fr;gap:28px}
 .ec-guide-directory .ec-guide-collection,.ec-guide-directory .ec-guide-collection--wide {grid-column:1;display:flex;border-radius:14px}
 .ec-guide-directory .ec-guide-collection--portrait .ec-guide-collection__destination {min-height:350px;max-height:440px}
 .ec-guide-directory .ec-guide-collection--square .ec-guide-collection__figure img {aspect-ratio:1;height:300px}
 .ec-guide-directory .ec-guide-collection--wide .ec-guide-collection__figure img {min-height:230px;height:230px;aspect-ratio:16/10}
 .ec-guide-directory .ec-guide-collection__heading h2,.ec-guide-directory .ec-guide-collection--portrait .ec-guide-collection__heading h2 {font-size:2.6rem}
 .ec-guide-directory .ec-guide-collection__guides {padding-inline:20px}
 .ec-guide-directory .ec-guide-collection__guide .ec-bestof-card__copy h3 {font-size:1.18rem}
 .ec-guide-directory .ec-guide-collection__guide .ec-bestof-card__copy>p {font-size:14px}
 .ec-dest-explorer--directory .ec-dest-explorer__grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 15px}
 .ec-dest-explorer--directory .ec-dest-explorer__grid>.ec-bestof-card:nth-child(n) {margin-top:0}
 .ec-dest-explorer--directory .ec-dest-explorer__grid>.ec-bestof-card:nth-child(even) {margin-top:28px}
 .ec-dest-explorer--directory .ec-dest-explorer__grid .ec-bestof-card__copy h3 {font-size:1.45rem;overflow-wrap:anywhere}
 .ec-dest-explorer--directory .ec-dest-explorer__grid .ec-bestof-card__image {max-height:270px}
 .ec-dest-explorer--directory .ec-bestof-card__actions {flex-direction:row}
 .ec-atlas-home.ec-home-current .ec-home-guide-occasions {padding:18px 14px;margin-block:24px}
 .ec-atlas-home.ec-home-current .ec-home-guide-occasions__cards {grid-template-columns:1fr;gap:16px}
 .ec-atlas-home.ec-home-current .ec-home-guide-occasions__cards .atlas-card:first-child {grid-row:auto;min-height:0}
 .ec-atlas-home.ec-home-current .ec-home-guide-occasions__cards .atlas-card:first-child .atlas-card-image {height:auto;min-height:0;aspect-ratio:1}
 .ec-atlas-home.ec-home-current .ec-home-guide-occasions__cards .atlas-card .atlas-card-copy {padding:16px 14px}
 .ec-atlas-home.ec-home-current .ec-home-lower .atlas-regions {grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;gap:22px 16px;overflow:visible}
 .ec-atlas-home.ec-home-current .ec-home-lower .atlas-region-section .atlas-section-heading {display:block}
 .ec-atlas-home.ec-home-current .ec-home-showcase__destinations {grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;overflow:visible;gap:18px 14px}
 .ec-atlas-home.ec-home-current .ec-opening__track {grid-auto-columns:74%;gap:16px}
}
@media (max-width:359px) {
 .ec-dest-explorer--directory .ec-dest-explorer__grid {grid-template-columns:1fr}
 .ec-dest-explorer--directory .ec-dest-explorer__grid>.ec-bestof-card:nth-child(n) {grid-column:1;margin-top:0}
}
@media (prefers-reduced-motion:reduce) {.ec-guide-collection__figure img {transition:none!important;transform:none!important}}
@media (forced-colors:active) {
 .ec-guide-directory .ec-guide-collection__heading {background:Canvas;color:CanvasText}
 .ec-guide-directory .ec-guide-collection__heading h2 a,.ec-guide-directory .ec-guide-collection__heading p {color:CanvasText!important}
}
@media print {.ec-guide-directory .ec-guide-collection {break-inside:avoid}}

/* A photographic opening and contrasting chapters give the home page a setting. */
.ec-vivid .ec-atlas-home.ec-home-current {background:#f5f6f0;--home-paper:#f5f6f0;--home-accent:#f5cf54}
.ec-atlas-home.ec-home-current .ec-home-intro-scene {position:relative;isolation:isolate;overflow:hidden;min-height:300px;padding:32px 0 48px;background:#102c3d;color:#fff}
.ec-home-intro-scene__photo {position:absolute;inset:0;z-index:-2}
.ec-atlas-home.ec-home-current .ec-home-intro-scene__photo img {width:100%;height:100%;object-fit:cover;object-position:50% 56%}
.ec-home-intro-scene::before {content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#102c3df2 0%,#102c3ddd 24%,#102c3da3 48%,#102c3d73 72%,#102c3d40 100%),linear-gradient(0deg,#102c3d70,transparent 75%)}
.ec-atlas-home.ec-home-current .ec-home-intro-scene .ec-home-discoverybar {grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr);align-items:center;padding-top:12px;padding-bottom:30px;gap:42px}
.ec-atlas-home.ec-home-current .ec-home-intro-scene h1 {font:500 clamp(2.8rem,4.4vw,4.25rem)/1.03 "DM Sans",Arial,sans-serif;letter-spacing:-.055em;color:#fff}
.ec-atlas-home.ec-home-current .ec-home-intro-scene h1>span {display:block;color:#fff}
.ec-atlas-home.ec-home-current .ec-home-intro-scene h1 em {font-family:"Cormorant Garamond",Georgia,serif;color:#f8d46c;font-weight:500;letter-spacing:-.035em;white-space:normal}
.ec-atlas-home.ec-home-current .ec-home-intro-scene .ec-home-discoverybar>div>p {color:#e5eee9;font-size:14px;line-height:1.65;max-width:550px;margin-top:16px}
.ec-atlas-home.ec-home-current .ec-home-intro-scene .atlas-search {background:#fffef8;box-shadow:0 14px 50px #0002;border-color:#fffef8;color:#173b3e;border-radius:14px}
.ec-atlas-home.ec-home-current .ec-home-intro-scene .atlas-search button {background:#f5cf54;color:#142e3b;border-radius:10px}
.ec-atlas-home.ec-home-current .ec-home-intro-scene .ec-home-intents {border-color:#ffffff42;padding:0 0 8px;gap:9px}
.ec-atlas-home.ec-home-current .ec-home-intro-scene .ec-home-intents>a:nth-child(n) {background:#ffffff12;color:#fff;border:1px solid #ffffff5c;border-radius:7px;backdrop-filter:blur(8px)}
.ec-atlas-home.ec-home-current .ec-home-intro-scene .ec-home-intents>a:hover {background:#ffffff29;border-color:#fff}
.ec-atlas-home.ec-home-current .ec-home-intro-scene .ec-home-intents>a.ec-home-intents__plan {background:#f5cf54;color:#142e3b;border-color:#f5cf54}
.ec-home-intro-scene__caption {position:absolute;right:clamp(20px,3.5vw,58px);bottom:8px;display:flex;align-items:center;gap:6px;font-size:11px;color:#fff}
.ec-home-intro-scene__caption>a {min-height:32px;display:inline-flex;align-items:center;gap:8px}
.ec-atlas-home.ec-home-current .ec-home-presence {padding-block:20px;border:0}
.ec-atlas-home.ec-home-current .ec-home-event-stage {background:#112f3e;padding:24px;border-radius:22px;gap:24px;box-shadow:0 18px 44px #17303912}
.ec-atlas-home.ec-home-current .ec-home-event-stage .ec-home-motion-intro h2 {color:#fffef3}
.ec-atlas-home.ec-home-current .ec-home-event-stage .ec-home-motion-intro p {color:#d3e0df}
.ec-atlas-home.ec-home-current .ec-home-event-stage .ec-event-agenda {background:#f3efdc;border-color:#f3efdc}
.ec-atlas-home.ec-home-current .ec-opening {padding-top:32px}
.ec-atlas-home.ec-home-current .ec-home-guide-occasions {background:#e6eddf;border:1px solid #d6dfcd}
.ec-atlas-home.ec-home-current .ec-home-selected-cards {background:#f5ebbd;border:0;padding:25px;border-radius:18px}
.ec-atlas-home.ec-home-current .ec-home-lower .atlas-region-section {background:#163fba;padding-block:40px;margin-block:36px}
.ec-atlas-home.ec-home-current .ec-home-lower .atlas-region-section h2 {color:#fff;font-size:clamp(2rem,3.5vw,3.5rem)}
.ec-atlas-home.ec-home-current .ec-home-lower .atlas-region-section .atlas-eyebrow {color:#dce6ff}
.ec-atlas-home.ec-home-current .ec-home-lower .atlas-region-section .atlas-section-heading>a {color:#ffe2a4}
.ec-atlas-home.ec-home-current .ec-home-keep {background:#102f3f;color:#fff;border:0;border-radius:18px;padding:30px;margin-block:30px;max-width:calc(100% - 2 * clamp(20px,3.5vw,58px))}
.ec-atlas-home.ec-home-current .ec-home-keep h2 {color:#fff}.ec-atlas-home.ec-home-current .ec-home-keep p {color:#d4e2de}
.ec-atlas-home.ec-home-current .ec-home-keep>a {background:#f5cf54;color:#102f3f;border:0}
.ec-atlas-home.ec-home-current .ec-home-doodle {display:none}
@media(max-width:1023px){
 .ec-atlas-home.ec-home-current .ec-home-intro-scene .ec-home-discoverybar {grid-template-columns:1fr;gap:22px}
 .ec-atlas-home.ec-home-current .ec-home-intro-scene .atlas-search {max-width:560px;width:100%}
}
@media(max-width:767px){
 .ec-atlas-home.ec-home-current .ec-home-intro-scene {padding:24px 0 40px}
 .ec-home-intro-scene__photo {inset:0;opacity:.75}
 .ec-home-intro-scene::before {background:linear-gradient(90deg,#102c3de8,#102c3d80),linear-gradient(0deg,#102c3dc9,transparent)}
 .ec-atlas-home.ec-home-current .ec-home-intro-scene .ec-home-discoverybar {padding:0 0 22px;gap:22px}
 .ec-atlas-home.ec-home-current .ec-home-intro-scene h1 {font-size:clamp(2.5rem,10vw,3.5rem)}
 .ec-atlas-home.ec-home-current .ec-home-intro-scene .ec-home-intents {gap:7px;padding-bottom:6px}
 .ec-atlas-home.ec-home-current .ec-home-intro-scene .ec-home-intents>a {font-size:12px}
 .ec-atlas-home.ec-home-current .ec-home-event-stage {padding:18px 14px;border-radius:16px;margin-inline:-5px}
 .ec-atlas-home.ec-home-current .ec-home-selected-cards {padding:18px 14px}
 .ec-atlas-home.ec-home-current .ec-home-keep {padding:24px 18px}
}
@media(forced-colors:active){.ec-home-intro-scene::before{background:Canvas}.ec-atlas-home.ec-home-current .ec-home-intro-scene h1,.ec-atlas-home.ec-home-current .ec-home-intro-scene h1>span,.ec-atlas-home.ec-home-current .ec-home-intro-scene h1 em,.ec-atlas-home.ec-home-current .ec-home-intro-scene .ec-home-discoverybar>div>p{color:CanvasText}}

/* Compact 16:9 destination rows requested for both destination sections. */
.ec-atlas-home.ec-home-current .ec-home-lower .atlas-regions,
.ec-atlas-home.ec-home-current .ec-home-showcase__destinations {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:22px;overflow:visible}
.ec-atlas-home.ec-home-current .ec-home-lower .atlas-region-card:nth-child(n),
.ec-atlas-home.ec-home-current .ec-home-showcase__destination:nth-child(n) {padding-top:0;transform:none!important}
.ec-atlas-home.ec-home-current .ec-home-lower .atlas-region-card:nth-child(n) .atlas-region-image,
.ec-atlas-home.ec-home-current .ec-home-showcase__destination:nth-child(n)>a {aspect-ratio:16/9;height:auto;max-height:none}
.ec-atlas-home.ec-home-current .ec-home-lower .atlas-region-card:nth-child(n) img {width:100%;height:100%;object-fit:cover}
@media(max-width:767px){.ec-atlas-home.ec-home-current .ec-home-lower .atlas-regions,.ec-atlas-home.ec-home-current .ec-home-showcase__destinations {grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}}

/* Ordinary server-rendered search; no GPS or radius dependency. */
.ec-home-intro-scene .ec-home-search {background:#fffef8;color:#193c41;padding:22px;border-radius:16px;box-shadow:0 12px 40px #081d3025;min-width:0}
.ec-home-search>label {display:block;font:600 15px/1.4 "DM Sans",sans-serif;margin-bottom:12px;color:#193c41}
.ec-home-search__input {display:flex;align-items:center;gap:10px;border:1px solid #b9c9c5;border-radius:8px;padding:0 12px;background:#fff}
.ec-home-search__input svg {width:20px;height:20px;flex:none}
.ec-home-intro-scene .ec-home-search__input input {border:0;outline-offset:-3px;background:transparent;box-shadow:none;width:100%;min-width:0;height:50px;color:#193c41;font:400 15px "DM Sans",sans-serif;padding:10px 0}
.ec-home-intro-scene .ec-home-search>p {color:#526964;font:400 12px/1.55 "DM Sans",sans-serif;margin:10px 0 16px}
.ec-home-search__actions {display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ec-home-intro-scene .ec-home-search button {font:600 13px/1.2 "DM Sans",sans-serif;min-height:44px;padding:12px 16px;border:0;border-radius:7px;background:#f5cf54;color:#132f3c;cursor:pointer}
.ec-nearby-results {scroll-margin-top:95px;margin:30px 0 36px;padding:26px;background:#eaf0e7;border:1px solid #d3ded0;border-radius:16px;color:#153b3d}
.ec-nearby-results[hidden],.ec-home-search button[hidden] {display:none!important}
.ec-nearby-results>[role=status]:empty {display:none}
.ec-nearby-results>[role=status] {font-size:14px;margin:0 0 14px}
.ec-nearby-results__heading {display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:20px}
.ec-nearby-results__heading h2 {font:500 clamp(1.7rem,2.7vw,2.5rem)/1.1 "DM Sans",sans-serif;letter-spacing:-.035em;margin:0;color:#153b3d}
.ec-nearby-results__heading p {margin:0 0 7px;font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.ec-nearby-results__heading>span {font-size:12px;white-space:nowrap}
.ec-nearby-results__filters {display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.ec-nearby-results__filters a {display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:8px 14px;background:#fff;border:1px solid #c7d5c4;border-radius:6px;color:#244741;font:500 13px/1.3 "DM Sans",sans-serif;text-decoration:none}
.ec-nearby-results__filters a[aria-current=true] {background:#173b3e;border-color:#173b3e;color:white}
.ec-nearby-results__filters a>span {opacity:.75;font-size:11px}
.ec-nearby-results__grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ec-nearby-card {display:flex;flex-direction:column;border-radius:10px;overflow:hidden;background:#fff;min-width:0}
.ec-nearby-card__image {display:block;aspect-ratio:auto;overflow:hidden;background:#dfe6db}
.ec-nearby-card__image img {display:block;width:100%;height:auto;aspect-ratio:auto}
.ec-nearby-card__copy {padding:18px;display:flex;flex-direction:column;flex:1}
.ec-nearby-card__meta {display:flex;justify-content:space-between;gap:8px;margin:0 0 11px;font-size:10px;color:#48645d}
.ec-nearby-card h3 {margin:0 0 9px;font:600 20px/1.2 "DM Sans",sans-serif;letter-spacing:-.025em}
.ec-nearby-card h3 a {color:#193c41;text-decoration:none}
.ec-nearby-card time,.ec-nearby-card__destination {font-size:12px;margin:0 0 8px;color:#42635d}
.ec-nearby-card__summary {font-size:13px;line-height:1.6;color:#5a6c66;margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ec-nearby-card__actions {margin-top:auto;padding-top:8px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.ec-nearby-card__actions a,.ec-nearby-card__actions button {font:500 12px/1.4 "DM Sans",sans-serif;min-height:44px;display:flex;align-items:center;gap:10px;color:#204fde;border:0;background:transparent;padding:7px 0;text-decoration:none;cursor:pointer}
.ec-nearby-results__notice {padding:18px;background:#fff;border-radius:8px;line-height:1.6;font-size:14px}
.ec-nearby-results__pages {display:flex;align-items:center;justify-content:center;gap:20px;margin-top:24px;font-size:13px}
.ec-nearby-results__pages a {display:flex;align-items:center;min-height:44px;padding:8px 14px;background:#fff;border-radius:6px;color:#193c41}
.ec-nearby-results__area {margin-top:24px;border-top:1px solid #c7d5c4;padding-top:16px}
.ec-nearby-results__area summary {min-height:44px;cursor:pointer;font-size:15px;font-weight:600}
.ec-nearby-results__area summary span {margin-left:10px;font-size:12px}
.ec-nearby-results__area p,.ec-nearby-results__area li>span {font-size:12px;line-height:1.5;color:#47635b}
.ec-nearby-results__area ul {padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:15px 24px}
.ec-nearby-results__area li {display:flex;flex-direction:column;gap:5px}
.ec-nearby-results__area a {color:#193c41;font-size:14px}
@media(max-width:1023px){.ec-nearby-results__grid {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){
 .ec-home-intro-scene .ec-home-search {padding:18px}
 .ec-nearby-results {padding:18px 14px;margin-block:22px}
 .ec-nearby-results__grid {grid-template-columns:1fr}
 .ec-nearby-results__heading {display:block}
 .ec-nearby-results__heading>span {display:block;margin-top:12px}
 .ec-nearby-results__filters {gap:6px}
 .ec-nearby-results__filters a {padding:8px 11px;font-size:12px;gap:8px}
 .ec-nearby-results__area ul {grid-template-columns:1fr}
}

/* Business photographs keep their intrinsic ratio: no empty portrait frames. */
.ec-atlas-home.ec-home-current .ec-opening__card:nth-child(n) {margin-top:0;transform:none!important;align-self:start}
.ec-atlas-home.ec-home-current .ec-opening__card:nth-child(n) .ec-opening__visual {height:auto;min-height:0;aspect-ratio:auto;background:transparent;border-radius:0}
.ec-atlas-home.ec-home-current .ec-opening__visual>a {position:relative;inset:auto;height:auto;line-height:0}
.ec-atlas-home.ec-home-current .ec-opening__visual>a>img {display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;transform:none!important}
.ec-atlas-home.ec-home-current .ec-opening__card .ec-opening__copy {flex:none;padding:16px 16px 10px}
.ec-atlas-home.ec-home-current .ec-opening__card .ec-opening__copy h3 {min-height:0;font-size:1.12rem;line-height:1.25;margin-bottom:8px}
.ec-atlas-home.ec-home-current .ec-opening__trip,.ec-atlas-home.ec-home-current .ec-opening__website {margin-top:12px}
.ec-atlas-home.ec-home-current .ec-opening__card--text:nth-child(n) .ec-opening__visual {height:48px;background:#e9efe3}
.ec-atlas-home.ec-home-current .ec-opening__card--text .ec-opening__signature {display:none}

/* Profiles without a photo begin with their name, without a blank picture frame. */
.ec-atlas-home.ec-home-current .atlas-card--text {height:auto;min-height:0;border:1px solid #d5dfd5;border-radius:12px;background:#fffef8}
.ec-atlas-home.ec-home-current .atlas-card--text .atlas-card-copy {position:relative;padding:20px;background:none;color:#193c41}
.ec-atlas-home.ec-home-current .atlas-card--text .atlas-save--inline {position:relative;inset:auto;float:right;margin:0 0 10px 12px;background:#edf2e9;color:#244741}
.ec-atlas-home.ec-home-current .atlas-card--text .atlas-card-copy h3 {color:#193c41}
.ec-atlas-home.ec-home-current .atlas-card--text .atlas-card-meta {color:#526964}

/* One quiet closing chapter connects saved places, trips and the partner invitation. */
.ec-atlas-home.ec-home-current .ec-home-closing {margin-top:36px;padding:48px 0 42px;background:linear-gradient(180deg,#f5f6f0,#f0f1e8);border-top:1px solid #d7dfd4;color:#193c41}
.ec-home-closing__inner {display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:center}
.ec-home-closing__traveller,.ec-home-closing__partner {min-width:0}
.ec-atlas-home.ec-home-current .ec-home-closing__eyebrow {margin:0 0 12px;color:#526964;font:500 11px/1.5 "DM Sans",Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.ec-atlas-home.ec-home-current .ec-home-closing h2 {margin:0 0 12px;max-width:18ch;color:#193c41;font:500 italic clamp(2.4rem,3.8vw,3.7rem)/1.03 "Cormorant Garamond",Georgia,serif;letter-spacing:-.035em;text-wrap:balance}
.ec-atlas-home.ec-home-current .ec-home-closing__intro {max-width:46ch;margin:0;color:#526964;font:400 14px/1.7 "DM Sans",Arial,sans-serif}
.ec-home-closing__actions {display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;margin-top:22px}
.ec-atlas-home.ec-home-current .ec-home-closing__actions>a {display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:46px;max-width:100%;padding:11px 16px;border:1px solid #bacbc1;border-radius:7px;color:#193c41;text-decoration:none;font:500 13px/1.4 "DM Sans",Arial,sans-serif}
.ec-atlas-home.ec-home-current .ec-home-closing__actions>a:first-child {background:#f5cf54;border-color:#f5cf54}
.ec-atlas-home.ec-home-current .ec-home-closing__actions>a:hover {background:#e5ebdf;border-color:#9daf9f}
.ec-atlas-home.ec-home-current .ec-home-closing__actions>a:first-child:hover {background:#f8da7b;border-color:#f8da7b}
.ec-atlas-home.ec-home-current .ec-home-closing__account {display:inline-flex;align-items:center;min-height:44px;margin-top:6px;color:#526964;font:400 12px/1.5 "DM Sans",Arial,sans-serif;text-decoration:underline;text-underline-offset:4px}
.ec-home-closing__partner {border-left:1px solid #cdd8cb;padding-left:clamp(24px,3.5vw,52px)}
.ec-atlas-home.ec-home-current .ec-home-closing__partner h3 {max-width:27ch;margin:0 0 12px;color:#193c41;font:500 24px/1.2 "DM Sans",Arial,sans-serif;letter-spacing:-.035em;text-wrap:balance}
.ec-atlas-home.ec-home-current .ec-home-closing__partner>p:not(.ec-home-closing__eyebrow) {max-width:43ch;margin:0;color:#526964;font:400 13px/1.7 "DM Sans",Arial,sans-serif}
.ec-atlas-home.ec-home-current .ec-home-closing__partner>a {display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:44px;margin-top:12px;padding:8px 0;color:#193c41;font:500 13px/1.4 "DM Sans",Arial,sans-serif;text-decoration:underline;text-underline-offset:5px}
.ec-atlas-home.ec-home-current .ec-home-closing a:focus-visible {outline:3px solid #1749ef;outline-offset:4px}
.ec-home-current + .ec-atlas-footer {background:#f0f1e8;border-top:0}
@media(max-width:767px){
 .ec-atlas-home.ec-home-current .ec-home-closing {margin-top:26px;padding:32px 0 26px}
 .ec-home-closing__inner {grid-template-columns:1fr;gap:26px}
 .ec-atlas-home.ec-home-current .ec-home-closing h2 {max-width:22ch;font-size:clamp(2.25rem,8vw,3rem)}
 .ec-home-closing__partner {border-left:0;border-top:1px solid #cdd8cb;padding:24px 0 0}
 .ec-atlas-home.ec-home-current .ec-home-closing__partner h3 {max-width:32ch;font-size:21px}
 .ec-home-closing__actions {gap:10px;margin-top:18px}
}
@media(forced-colors:active){
 .ec-atlas-home.ec-home-current .ec-home-closing {background:Canvas;color:CanvasText;border-color:CanvasText}
 .ec-atlas-home.ec-home-current .ec-home-closing :is(h2,h3,p) {color:CanvasText}
 .ec-atlas-home.ec-home-current .ec-home-closing a {background:Canvas;color:LinkText;border-color:LinkText}
 .ec-home-closing__partner {border-color:CanvasText}
}

/* PORTAL18: centre the original logo optically; its sun sits above the wordmark. */
.ec-site-header .ec-brand.ec-brand--logo {flex:0 0 auto;min-width:0;align-self:center;align-items:center;justify-content:center;}
.ec-site-header .ec-brand__logo {display:block;width:172px;max-width:100%;height:auto;object-fit:contain;transform:translateY(-6px);}
.ec-atlas-home.ec-home-current .ec-business-hub .atlas-card-image {position:relative;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:3/2;flex:0 0 auto;overflow:hidden;background:#e6eeea;}
.ec-atlas-home.ec-home-current .ec-business-rail--stay .atlas-card-image {aspect-ratio:4/3;}
.ec-atlas-home.ec-home-current .ec-business-hub .atlas-card-image>a {position:absolute;inset:0;display:block;width:100%;height:100%;overflow:hidden;}
.ec-atlas-home.ec-home-current .ec-business-hub .atlas-card-image img {display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:center;}
.ec-nearby-card__image {aspect-ratio:3/2;}
.ec-nearby-card__image img {width:100%;height:100%;object-fit:cover;}
.ec-nearby-results__precision {max-width:850px;margin:-8px 0 22px;font:400 13px/1.6 "DM Sans",sans-serif;color:#48645d;}
@media(max-width:639px){.ec-site-header .ec-brand__logo {width:132px;transform:translateY(-4px);}}
/* Retain the original proportions of existing native photographs with a no-crop commitment. */
.ec-atlas-home.ec-home-current .ec-business-hub .atlas-card-image:has(img[data-ec-original-aspect="true"]) {aspect-ratio:auto;}
.ec-atlas-home.ec-home-current .ec-business-hub .atlas-card-image:has(img[data-ec-original-aspect="true"])>a {position:relative;inset:auto;height:auto;}
.ec-atlas-home.ec-home-current .ec-business-hub .atlas-card-image img[data-ec-original-aspect="true"] {height:auto;}
.ec-nearby-card__image:has(img[data-ec-original-aspect="true"]) {aspect-ratio:auto;}
.ec-nearby-card__image img[data-ec-original-aspect="true"] {height:auto;}

/* Nature: full-width photographs and a clean, compact card grid. */
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature {background:transparent;border:0;border-radius:0;padding:24px 0 12px;box-shadow:none;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-section-heading {margin-bottom:22px;align-items:center;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-section-heading h2 {font:600 clamp(1.6rem,2.2vw,2.1rem)/1.15 "DM Sans",Arial,sans-serif;letter-spacing:-.045em;color:#173c41;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-nature-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-card:nth-child(n) {display:flex;flex-direction:column;grid-column:auto;padding:0;background:#fffefb;border:1px solid #dce4de;border-radius:14px;overflow:hidden;min-width:0;box-shadow:0 4px 16px #163c4105;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-card .atlas-card-image {position:relative;width:100%;max-width:none;height:auto;min-height:0;max-height:none;aspect-ratio:16/9;flex:none;border-radius:0;overflow:hidden;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-card-image>a {position:absolute;inset:0;display:block;width:100%;height:100%;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-card-image img {display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-card-copy {padding:16px 18px 12px;gap:0;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-card-meta:empty {display:none;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-card-meta {font-size:11px;color:#637770;margin-bottom:6px;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-card h3 {font:600 17px/1.3 "DM Sans",Arial,sans-serif;letter-spacing:-.025em;margin:0 0 8px;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-card-summary {font-size:13px;line-height:1.55;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:0 0 12px;color:#526964;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-trip {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;min-height:44px;padding:10px 0 2px;border-top:1px solid #e8ece5;border-radius:0;font:500 12px/1.4 "DM Sans",Arial,sans-serif;color:#184bdd;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-save {top:10px;right:10px;width:44px;height:44px;min-width:44px;min-height:44px;background:#fffefbed;border:1px solid #ffffffaa;box-shadow:0 2px 8px #173c4114;}
.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-card:focus-within {outline:2px solid #184bdd;outline-offset:3px;}
@media(max-width:767px){
 .ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-nature-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
 .ec-atlas-home.ec-home-current .ec-home-lower .atlas-region-section {padding-block:28px;margin-block:24px;}
 .ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-card-copy {padding:12px;}
 .ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-card h3 {font-size:16px;}
}
@media(max-width:479px){.ec-atlas-home.ec-home-current .ec-home-board .ec-home-nature .atlas-nature-grid {grid-template-columns:1fr;}}

.ec-home-search__actions>a {color:#193c41;font:600 13px/1.4 "DM Sans",sans-serif;text-decoration:underline;text-underline-offset:4px;display:inline-flex;align-items:center;min-height:44px;gap:8px}
.ec-home-search__suggestions {display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid #d9e1da;padding-top:15px;margin-top:18px}
.ec-home-search__suggestions>a {color:#355d60;background:#edf2ec;border-radius:999px;min-height:36px;padding:8px 12px;font:500 12px/1.5 "DM Sans",sans-serif;text-decoration:none}
.ec-home-search__suggestions>a:hover {background:#dfe9e3}
.ec-home-search a:focus-visible,.ec-home-search button:focus-visible {outline:3px solid #204fde;outline-offset:3px}

/* PORTAL20: avoid automatic field zoom on mobile Safari while keeping user zoom available. */
@media (max-width:767px) {
  .ec-home-intro-scene .ec-home-search__input input {font-size:16px;}
}

/* editorial30.css */
/* PORTAL30. Let the photograph and the authored opening lead the public place. */
.ec-public-visual .ec-main .ec-place-profile[data-ec-place-profile]{--pp-ink:#173b39;--pp-blue:#215e57;--pp-paper:#f3f1e9;--pp-line:#d7ddd5;--pp-muted:#52615b;background:#fbfaf6}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__hero{gap:clamp(1.6rem,3.8vw,4rem);align-items:center;padding:1rem 0 2.8rem;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr)}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__hero>.ec-place-profile__heading{align-self:center;gap:1.7rem;padding:.5rem 0}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__hero .ec-place-profile__heading h1{font-family:var(--atlas-display,"Cormorant Garamond",Georgia,serif)!important;font-size:clamp(2.9rem,5.7vw,5.6rem);font-weight:500;line-height:.99;letter-spacing:-.045em;text-wrap:balance;margin:.6rem 0 1.2rem;max-width:18ch}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__hero .ec-place-profile__summary{font-size:clamp(1.03rem,1.3vw,1.18rem);line-height:1.8;max-width:42ch;color:#40564e}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__eyebrow{color:#426453;font-size:.67rem;letter-spacing:.16em}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__hero-media .ec-gallery__link{border-radius:.25rem}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__hero-media .ec-gallery__mosaic{border-radius:.25rem;background:#e9e9df}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__button{border-radius:2rem;min-height:46px;padding:.85rem 1.2rem;background:#215e57;border-color:#215e57;color:#fff!important;--pp-link:#fff;font-size:.8rem}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__button:hover{background:#174940;border-color:#174940}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__button--quiet{background:transparent;border-color:#91a69c;color:#23463c!important;--pp-link:#23463c}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__button--quiet:hover{background:#e9eee4}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__button[aria-pressed=true]{background:#e2edd8;border-color:#315f4a;color:#23463c!important}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__share{color:#315b48;font-size:.8rem;font-weight:500}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__page-nav{gap:.35rem 2rem;border-color:#d7ddd5;padding:.55rem 0}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__reading{gap:clamp(2rem,7vw,7rem);padding:3.5rem 0 4rem;grid-template-columns:minmax(0,1.4fr) minmax(17rem,.75fr)}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__reading--single{grid-template-columns:minmax(0,1fr);max-width:64rem}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__story>h2{font:500 clamp(2.2rem,4vw,3.5rem)/1.1 var(--atlas-display,Georgia,serif);letter-spacing:-.035em;margin:0 0 1.4rem}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__story .ec-prose{max-width:62ch;font-size:1.06rem;line-height:1.95;color:#344e42}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__story .ec-prose>p:first-child{font-size:1.17rem;line-height:1.9}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__practical{background:#f0f1e9;border:1px solid #e0e4d9;border-radius:.35rem;padding:1.6rem}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__practical>h2{font-size:1.75rem;margin-top:0}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__plan{background:#204d40;border-radius:.5rem;margin-top:2rem}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__plan h2{color:#fff9e8;font:500 clamp(2.2rem,4vw,3.7rem)/1.05 var(--atlas-display,Georgia,serif);letter-spacing:-.03em;max-width:20ch}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__plan .ec-place-profile__eyebrow{color:#dfebbf}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__button--light{background:#ebefcb;border-color:#ebefcb;color:#204d40!important;--pp-link:#204d40}
.ec-public-visual .ec-main .ec-place-profile .ec-place-profile__button--light:hover{background:#fff9e8;border-color:#fff9e8}
.ec-public-visual .ec-main .ec-place-profile :where(section,aside)[id]{scroll-margin-top:7rem}
@media(max-width:60rem){
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__hero{grid-template-columns:minmax(0,1fr);gap:1.5rem;padding:.6rem 0 1.8rem}
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__hero>.ec-place-profile__heading{gap:1.1rem;padding:0}
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__hero .ec-place-profile__heading h1{font-size:clamp(2.7rem,8.5vw,4.6rem);max-width:24ch}
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__hero .ec-place-profile__summary{max-width:60ch}
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__reading{gap:2rem;padding:2.5rem 0}
}
@media(max-width:44rem){
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__reading{grid-template-columns:minmax(0,1fr)}
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__actions{gap:.6rem}
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__actions>.ec-place-profile__button{flex:0 1 auto;max-width:100%}
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__story .ec-prose{font-size:1rem;line-height:1.85}
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__story .ec-prose>p:first-child{font-size:1.08rem}
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__page-nav{gap:.2rem 1.2rem}
}
@media(forced-colors:active){
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__button{background:ButtonFace!important;color:ButtonText!important;border-color:ButtonText!important}
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__plan{background:Canvas;border:1px solid CanvasText}
 .ec-public-visual .ec-main .ec-place-profile .ec-place-profile__plan h2{color:CanvasText}
}
/* PROFILE45 — homepage typography/palette on canonical destination and Place only.
   No layout, imagery, content, links, visibility or admin selectors changed. */
.ec-public-visual .ec-main :is(.ec-bestof-detail--destination,.ec-place-profile[data-ec-place-profile]){
 --ec-ink:#173d3b;--ec-sea:#215e57;--ec-soft:#53665e;
 --bd-ink:#173d3b;--bd-blue:#215e57;--bd-muted:#53665e;--bd-line:#d5dcd1;--bd-cream:#fbfaf5;
 --pp-ink:#173d3b;--pp-blue:#215e57;--pp-muted:#53665e;--pp-line:#d5dcd1;--pp-paper:#fbfaf5;
 color:#173d3b;font-family:var(--atlas-body,"DM Sans",Arial,sans-serif);
}
.ec-public-visual .ec-main .ec-bestof-detail--destination .ec-dest-explorer{
 --dx-ink:#173d3b;--dx-blue:#215e57;--dx-muted:#53665e;--dx-line:#d5dcd1;--dx-cream:#fbfaf5;
 font-family:var(--atlas-body,"DM Sans",Arial,sans-serif);
}
.ec-public-visual .ec-main .ec-bestof-detail--destination :is(.ec-bestof-heading,.ec-bestof-section-heading,.ec-dest-explorer__header,.ec-dest-explorer__guides-header,.ec-dest-explorer__planner,.ec-destination29-card,.ec-bestof-card__copy) :is(h1,h2,h3),
.ec-public-visual .ec-main .ec-place-profile[data-ec-place-profile] :is(.ec-place-profile__heading,.ec-place-profile__section-heading,.ec-bestof-card__copy) :is(h1,h2,h3){
 font-family:var(--atlas-display,"Cormorant Garamond",Georgia,serif)!important;
 font-weight:500;letter-spacing:-.03em;color:#173d3b;
}
.ec-public-visual .ec-main .ec-bestof-detail--destination :is(.ec-bestof-breadcrumbs,.ec-bestof-breadcrumbs a,.ec-bestof-eyebrow,.ec-bestof-selection),
.ec-public-visual .ec-main .ec-place-profile[data-ec-place-profile] :is(.ec-place-profile__breadcrumbs,.ec-place-profile__breadcrumbs a,.ec-place-profile__eyebrow){
 color:#426453;font-family:var(--atlas-body,"DM Sans",Arial,sans-serif);
}
.ec-public-visual .ec-main .ec-bestof-detail--destination .ec-bestof-selection{border-color:#bdcdc2}
.ec-public-visual .ec-main .ec-bestof-detail--destination .ec-bestof-button:hover{background:#174940;border-color:#174940}
.ec-public-visual .ec-main .ec-bestof-detail--destination .ec-bestof-button--quiet:hover{background:#e9ede3}
.ec-public-visual .ec-main .ec-bestof-detail--destination .ec-bestof-button--light:hover{background:#e9ede3;border-color:#e9ede3}
.ec-public-visual .ec-main .ec-bestof-detail--destination .ec-bestof-button[aria-pressed=true]{background:#e9ede3;color:#215e57!important}
.ec-public-visual .ec-main .ec-bestof-detail--destination .ec-destination29-quick a:hover{border-color:#215e57;color:#215e57}
.ec-public-visual .ec-main .ec-bestof-detail--destination .ec-destination29-quick a.ec-destination29-quick__plan:hover{background:#174940;color:#fff}
.ec-public-visual .ec-main .ec-bestof-detail--destination .ec-destination29-quick a:focus-visible{outline-color:#215e57}
.ec-public-visual .ec-main .ec-bestof-detail--destination :is(.ec-destination29-card__label,.ec-destination29-card__selection,.ec-destination29-card__actions button,.ec-destination29-quick a){font-family:var(--atlas-body,"DM Sans",Arial,sans-serif)}
.ec-public-visual .ec-main .ec-bestof-detail--destination .ec-bestof-save-band .ec-bestof-eyebrow,
.ec-public-visual .ec-main .ec-place-profile[data-ec-place-profile] .ec-place-profile__plan .ec-place-profile__eyebrow{color:#dfebbf}
@media(forced-colors:active){
 .ec-public-visual .ec-main :is(.ec-bestof-detail--destination,.ec-place-profile[data-ec-place-profile]){--ec-ink:CanvasText;--ec-sea:LinkText;--bd-ink:CanvasText;--bd-blue:LinkText;--pp-ink:CanvasText;--pp-blue:LinkText}
 .ec-public-visual .ec-main .ec-bestof-detail--destination .ec-bestof-button{background:ButtonFace!important;color:ButtonText!important;border-color:ButtonText!important}
}

/* Destination details and the guide directory: one editorial rhythm.
   Scoped to these views; native filtering, saving, galleries and photo rights remain authoritative. */
html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) {
 --bd-ink:#203b33;--bd-muted:#52645c;--bd-line:#d9dfd7;--bd-cream:#f5f3ed;--bd-blue:#285d49;
 --dx-ink:#203b33;--dx-muted:#52645c;--dx-line:#d9dfd7;--dx-blue:#285d49;
 --filter-ink:#203b33;--filter-muted:#52645c;--filter-line:#d9dfd7;--filter-soft:#fff;--filter-white:#f5f3ed;--filter-blue:#285d49;
 color:#203b33;
}
html body.ec-public #main-content .ec-bestof-detail--destination>.ec-shell,
html body.ec-public #main-content .ec-guide-directory.ec-shell {width:calc(100% - 3rem);max-width:76rem;margin-inline:auto;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-bestof-breadcrumbs {padding:1.15rem 0;margin:0;min-height:0;font-size:.75rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination-intro {grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(1.75rem,4vw,4rem);margin:1rem 0 2rem;align-items:center;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-bestof-heading {gap:1.25rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-bestof-heading h1 {font-size:clamp(3.2rem,6.6vw,6rem);line-height:1.02;letter-spacing:-.045em;margin:.5rem 0 1rem;text-wrap:balance;overflow-wrap:normal;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination-intro .ec-bestof-summary {font-size:1.0625rem;line-height:1.7;max-width:39ch;color:#52645c;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination-intro>.ec-gallery {max-width:none;width:100%;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-gallery__heading {margin-bottom:.6rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-gallery__heading h2 {font:500 .75rem/1.4 var(--atlas-body,"DM Sans",Arial,sans-serif)!important;color:#52645c;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-gallery__open {min-height:44px;font-size:.75rem;border-color:#d9dfd7;background:transparent;border-radius:4px;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-gallery--1 .ec-gallery__mosaic {height:auto;max-height:none;border-radius:4px;background:#f0f2eb;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-gallery--1 .ec-gallery__link {border-radius:4px;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-gallery--1 .ec-gallery__link img {max-height:none;width:100%;height:auto!important;object-fit:contain!important;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-quick {gap:.5rem 1.5rem;margin:0;padding:.6rem 0;border-block:1px solid #d9dfd7;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-quick a {flex:0 1 auto;min-height:44px;padding:.5rem 0;border:0;border-radius:0;background:transparent;color:#285d49!important;font-size:.8125rem;gap:.6rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-quick a.ec-destination29-quick__plan {background:transparent;border:0;color:#285d49!important;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-bestof-reading {max-width:58rem;margin:0;padding:2.5rem 0;border:0;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-bestof-reading .ec-prose {font-size:1.125rem;line-height:1.8;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes {margin:0;padding:2.75rem 0;border-top:1px solid #d9dfd7;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__heading {max-width:44rem;margin-bottom:1.5rem;}
html body.ec-public #main-content .ec-bestof-detail--destination :is(.ec-dnotes__eyebrow,.ec-bestof-eyebrow) {color:#52645c;font-size:.6875rem;letter-spacing:.12em;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes h2,
html body.ec-public #main-content .ec-bestof-detail--destination :is(.ec-dest-explorer__header,.ec-dest-explorer__guides-header) h2 {font-size:clamp(2rem,3.5vw,3.1rem);line-height:1.1;margin:0 0 .7rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__intro {font-size:1rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__layout {grid-template-columns:minmax(0,1.7fr) minmax(15rem,1fr);gap:2.5rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__chapter summary {min-height:56px;padding:.95rem 0;font-size:1rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__chapter[open] summary {color:#285d49;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__body {padding:0 .25rem 1.25rem 3rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__body p {font-size:.9375rem;line-height:1.75;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__next {background:#f5f3ed;border:1px solid #e2e5dc;border-radius:4px;padding:1.5rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes a {color:#285d49;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__primary {background:#285d49;color:#fff!important;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__places {display:block;margin:1.5rem 0 0;padding-top:1.25rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__places h3 {font:600 .875rem/1.5 var(--atlas-body,"DM Sans",Arial,sans-serif)!important;margin:0 0 .75rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__places ul {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__places a {height:100%;align-items:start;justify-content:space-between;padding:.75rem 0;border-top:1px solid #d9dfd7;font-size:.8125rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dest-explorer--hub {padding:2.75rem 0 0;margin:0;border-top:1px solid #d9dfd7;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dest-explorer__header {margin:0 0 1.5rem;}

/* Native filter controls, with quieter surfaces and a consistent accent. */
html body.ec-public #main-content .ec-guide-directory {padding-top:2.25rem;padding-bottom:3rem;}
html body.ec-public #main-content .ec-guide-directory__heading {align-items:end;gap:1.5rem;margin-bottom:1.75rem;}
html body.ec-public #main-content .ec-guide-directory__heading h1 {font-size:clamp(2.75rem,5.3vw,5rem);line-height:1.04;letter-spacing:-.04em;margin:.4rem 0 1rem;max-width:21ch;}
html body.ec-public #main-content .ec-guide-directory__heading p:not(.ec-bestof-eyebrow) {font-size:1rem;line-height:1.65;max-width:56ch;}
html body.ec-public #main-content .ec-guide-directory .ec-bestof-eyebrow {color:#52645c;font-size:.6875rem;letter-spacing:.12em;}
html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) :is(.ec-dest-explorer__share,.ec-guide-directory__share) {min-height:44px;padding:.5rem 0;background:transparent;border:0;box-shadow:none;color:#52645c;font-size:.75rem;}
html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) :is(.ec-dest-explorer__tools,.ec-guide-directory__form) {padding:1rem;border:1px solid #d9dfd7;border-radius:4px;background:#f5f3ed;box-shadow:none;gap:.75rem;}
html body.ec-public #main-content .ec-guide-directory__form {grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) auto;}
html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) :is(.ec-dest-explorer__search>div,.ec-guide-directory__field) {min-height:46px;border-radius:3px;background:#fff;}
html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) :is(.ec-dest-explorer__tools,.ec-guide-directory__form) :is(input[type=search],select) {height:44px;min-height:44px;font-size:16px;box-shadow:none;}
html body.ec-public #main-content .ec-guide-directory__form select {border-radius:3px;}
html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) :is(.ec-dest-explorer__submit,.ec-guide-directory__submit) {min-height:46px;padding:.75rem 1.25rem;border:1px solid #285d49;border-radius:3px;background:#285d49;color:#fff;box-shadow:none;gap:.75rem;}
html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) :is(.ec-dest-explorer__submit,.ec-guide-directory__submit):hover {background:#173f30;border-color:#173f30;}
html body.ec-public #main-content .ec-guide-directory__occasions {margin:1rem 0 0;padding:0 0 .75rem;gap:1rem;align-items:start;}
html body.ec-public #main-content .ec-guide-directory__occasions>p {padding-top:.7rem;}
html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) :is(.ec-dest-explorer__chip,.ec-guide-directory__occasion,.ec-guide-directory__tab) {min-height:44px;padding:.55rem .85rem;border-radius:3px;background:transparent;border-color:#d9dfd7;color:#285d49;box-shadow:none;}
html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) :is(.ec-dest-explorer__chip,.ec-guide-directory__occasion,.ec-guide-directory__tab)[aria-current=true] {background:#285d49;border-color:#285d49;color:#fff!important;}
html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) :is(.ec-dest-explorer__chip,.ec-guide-directory__occasion,.ec-guide-directory__tab):hover {background:#edf2e9;border-color:#285d49;color:#203b33;}
html body.ec-public #main-content .ec-guide-directory__tabs {margin-top:.75rem;gap:.5rem;}
html body.ec-public #main-content .ec-guide-directory__results-heading {margin:1.25rem 0 1.25rem;padding:0 0 .75rem;border-bottom:1px solid #d9dfd7;}

/* Real place photographs lead each card; complete summaries and credits remain visible. */
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 1.5rem;align-items:stretch;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-grid--guides {grid-template-columns:repeat(2,minmax(0,1fr));}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-card {padding:0 0 .75rem;min-width:0;border-bottom:1px solid #d9dfd7;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-card__link {display:block;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-card__image {aspect-ratio:3/2;margin:0 0 1rem;border-radius:4px;background:#eef1ea;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-card__image img {width:100%;height:100%;object-fit:contain!important;transform:none;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-card h3 {font:600 1.25rem/1.3 var(--atlas-body,"DM Sans",Arial,sans-serif)!important;letter-spacing:-.025em;margin:0 0 .65rem;overflow-wrap:normal;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-card__summary {display:block;overflow:visible;-webkit-line-clamp:unset;font-size:.875rem;line-height:1.65;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-card__actions {padding-top:.75rem;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dest-explorer__guides {margin-top:3rem;padding-top:2.5rem;border-top:1px solid #d9dfd7;}

/* Every guide collection spans a full row; individual guides share one aligned grid. */
html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__grid--collections {grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 1.5rem;align-items:stretch;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__item {grid-column:auto;display:flex;flex-direction:column;border:0;border-bottom:1px solid #d9dfd7;border-radius:0;overflow:visible;background:transparent;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__item .ec-guide-directory__meta {padding:0 0 .75rem;min-height:3.25rem;align-content:start;gap:.35rem .65rem;font-size:.6875rem;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__item>.ec-bestof-card {flex:1;display:flex;flex-direction:column;background:transparent;box-shadow:none;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__item .ec-bestof-card__image {aspect-ratio:3/2;border-radius:4px;background:#eef1ea;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__item .ec-bestof-card__image img {object-fit:contain!important;width:100%;height:100%;transform:none;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__item .ec-bestof-card__copy {padding:1rem 0 .75rem;}
html body.ec-public #main-content .ec-guide-directory .ec-bestof-card__copy h3 {font:600 1.25rem/1.3 var(--atlas-body,"DM Sans",Arial,sans-serif)!important;letter-spacing:-.025em;overflow-wrap:normal;}
html body.ec-public #main-content .ec-guide-directory .ec-bestof-card__copy>p {display:block;overflow:visible;-webkit-line-clamp:unset;font-size:.875rem;line-height:1.65;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__item .ec-bestof-card__actions {margin:auto 0 0;padding:.5rem 0 .75rem;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection {grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.8fr);gap:0;border:1px solid #d9dfd7;border-radius:4px;background:#f7f6f0;overflow:hidden;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection .ec-guide-collection__destination {position:relative;display:block;min-height:0;max-height:none;background:transparent;border:0;overflow:visible;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection .ec-guide-collection__figure {position:relative;inset:auto;height:auto;margin:0;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection .ec-guide-collection__figure>a {height:auto!important;aspect-ratio:3/2;display:block;background:#eef1ea;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection .ec-guide-collection__figure img {position:static;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:3/2;object-fit:contain!important;transform:none;transition:none;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection__figure::after {content:none;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection .ec-guide-collection__heading {position:static;inset:auto;padding:1rem 1.25rem;pointer-events:auto;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection .ec-guide-collection__heading h2 {font-size:2.25rem;line-height:1.1;margin:0 0 .5rem;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection__heading h2 a {color:#203b33!important;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection__heading :is(p,h2 span) {color:#52645c;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection .ec-guide-collection__guides {grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:1.25rem 1.5rem;gap:1.5rem;align-content:start;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection__guide:nth-child(n) {padding:0;border:0;min-width:0;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection__guide .ec-bestof-card__copy {padding:0 0 .75rem;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection__tags {gap:.35rem;margin:0 0 .6rem;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection__tags span {border:0;padding:.15rem .4rem;border-radius:2px;background:#e9eee4;color:#405e4e;font-size:.625rem;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-photo-credits {margin-inline:1.25rem;}
/* Originals with a rights-specific aspect marker must keep their natural geometry. */
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection__figure:has(img[data-ec-original-aspect])>a {aspect-ratio:auto;}
html body.ec-public #main-content .ec-guide-directory .ec-guide-collection .ec-guide-collection__figure img[data-ec-original-aspect] {height:auto!important;aspect-ratio:auto;}
html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) :is(a,button,summary,input,select):focus-visible {outline-color:#285d49;}

@media(max-width:64rem) {
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-grid,
 html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__grid--collections {grid-template-columns:repeat(2,minmax(0,1fr));}
 html body.ec-public #main-content .ec-guide-directory .ec-guide-collection {grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);}
 html body.ec-public #main-content .ec-guide-directory .ec-guide-collection .ec-guide-collection__guides {grid-template-columns:1fr!important;gap:1rem;}
 html body.ec-public #main-content .ec-guide-directory .ec-guide-collection__guide+.ec-guide-collection__guide {border-top:1px solid #d9dfd7;padding-top:1rem;}
}
@media(max-width:48rem) {
 html body.ec-public #main-content .ec-bestof-detail--destination>.ec-shell,
 html body.ec-public #main-content .ec-guide-directory.ec-shell {width:calc(100% - 2.5rem);}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination-intro {grid-template-columns:1fr;margin:.5rem 0 1.5rem;gap:1.25rem;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-bestof-heading h1 {font-size:clamp(2.75rem,10vw,4rem);}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination-intro .ec-bestof-summary {font-size:1rem;max-width:55ch;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-bestof-reading {padding:1.75rem 0;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes {padding:2rem 0;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__layout {grid-template-columns:1fr;gap:1.5rem;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__places ul {grid-template-columns:1fr;gap:.25rem;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-dnotes__body {padding-left:2.15rem;}
 html body.ec-public #main-content .ec-guide-directory {padding-top:1.5rem;}
 html body.ec-public #main-content .ec-guide-directory__heading {display:block;margin-bottom:1rem;}
 html body.ec-public #main-content .ec-guide-directory__heading h1 {font-size:clamp(2.5rem,9.4vw,3.6rem);}
 html body.ec-public #main-content .ec-guide-directory__heading p:not(.ec-bestof-eyebrow) {font-size:.9375rem;line-height:1.6;}
 html body.ec-public #main-content .ec-guide-directory__form,
 html body.ec-public #main-content .ec-guide-directory__form:not(:has(.ec-guide-directory__destination)) {grid-template-columns:minmax(0,1fr) auto;gap:.6rem;padding:.75rem;}
 html body.ec-public #main-content .ec-guide-directory__form>.ec-guide-directory__input {grid-column:1/-1;grid-row:1;}
 html body.ec-public #main-content .ec-guide-directory__form>.ec-guide-directory__destination {grid-column:1;grid-row:2;}
 html body.ec-public #main-content .ec-guide-directory__form>.ec-guide-directory__submit {grid-column:2;grid-row:2;align-self:end;width:auto;padding-inline:.85rem;}
 html body.ec-public #main-content .ec-guide-directory__occasions>p {padding-top:0;margin-bottom:.3rem;}
 html body.ec-public #main-content .ec-guide-directory__occasions>div {padding:.25rem 0 .5rem;scrollbar-width:thin;scrollbar-color:#bdc9bc transparent;}
 html body.ec-public #main-content .ec-guide-directory .ec-guide-collection {grid-template-columns:1fr;}
 html body.ec-public #main-content .ec-guide-directory .ec-guide-collection .ec-guide-collection__heading {padding:1rem;}
 html body.ec-public #main-content .ec-guide-directory .ec-guide-collection .ec-guide-collection__guides {padding:1rem;}
}
@media(max-width:40rem) {
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-grid,
 html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__grid--collections {grid-template-columns:1fr;gap:1.75rem;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-quick {gap:0 1rem;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-quick a {font-size:.75rem;}
 html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__item .ec-guide-directory__meta {min-height:0;}
}
@media(forced-colors:active) {
 html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) :is(.ec-dest-explorer__submit,.ec-guide-directory__submit) {background:ButtonFace;color:ButtonText;border-color:ButtonText;}
 html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) :is(.ec-dest-explorer__chip,.ec-guide-directory__occasion,.ec-guide-directory__tab)[aria-current=true] {background:Highlight;color:HighlightText!important;border-color:Highlight;}
}
/* Keep one visible link per destination anchor; the unique About link remains. */
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-quick {display:inline-flex;vertical-align:top;border:0;margin:0 1.25rem .5rem 0;padding:.4rem 0;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-bestof-page-nav {display:inline-flex;vertical-align:top;border:0;margin:0 0 .5rem;padding:.4rem 0;min-height:44px;gap:0;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-bestof-page-nav a {display:inline-flex;align-items:center;min-height:44px;padding:.5rem 0;font-size:.8125rem;}
html body.ec-public #main-content .ec-bestof-detail--destination:has(.ec-destination29-quick a[href="#ec-destination-notes"]) .ec-bestof-page-nav a[href="#ec-destination-notes"],
html body.ec-public #main-content .ec-bestof-detail--destination:has(.ec-destination29-quick a[href="#ec-destination-explorer"]) .ec-bestof-page-nav a[href="#ec-destination-explorer"] {display:none;}
html body.ec-public #main-content :is(.ec-bestof-detail--destination,.ec-guide-directory) :is(.ec-dest-explorer__chip,.ec-guide-directory__occasion,.ec-guide-directory__tab)[aria-current=true]:hover {background:#173f30;border-color:#173f30;color:#fff!important;}
/* Share the metadata row height so photographs begin on the same baseline. */
html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__meta .ec-guide-collection__tags {margin-bottom:0;}
html body.ec-public #main-content .ec-guide-directory__heading h1 {font-weight:500;}
@supports (grid-template-rows:subgrid) {
 html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__item {display:grid;grid-row:span 2;grid-template-rows:subgrid;row-gap:0;}
 html body.ec-public #main-content .ec-guide-directory .ec-guide-directory__item>.ec-bestof-card {min-width:0;}
}
@media(min-width:64.01rem) {
 html body.ec-public #main-content .ec-guide-directory .ec-guide-collection__guide:not(:has(>.ec-guide-collection__tags)) {padding-top:1.9rem;}
}

/* PORTAL 4.0 shared palette: keep inner-page typography and controls in the home's green family. */
html body.ec-vivid.ec-public-visual {
  --ec-ink:#203b33;--ec-sea:#285d49;--ec-red:#285d49;
  --ec-soft:#52645c;--ec-stone:#d9dfd7;
  --bd-ink:#203b33;--bd-blue:#285d49;--bd-muted:#52645c;
  --pp-ink:#203b33;--pp-blue:#285d49;
  --dx-ink:#203b33;--dx-blue:#285d49;
  --filter-ink:#203b33;--filter-blue:#285d49;
}
html body.ec-vivid.ec-public-visual :is(.ec-bestof-detail,.ec-bestof-destinations,.ec-guide-directory,.ec-guide-reading,.ec-place-profile,.ec-dest-explorer,.ec-discover-experience,.ec-gallery,.ec-ideas) {
  --bd-ink:#203b33;--bd-blue:#285d49;--bd-muted:#52645c;
  --pp-ink:#203b33;--pp-blue:#285d49;
  --dx-ink:#203b33;--dx-blue:#285d49;
  --filter-ink:#203b33;--filter-blue:#285d49;
  --gallery-blue:#285d49;
}
html body.ec-vivid.ec-public-visual #main-content {
  --filter-ink:#203b33;--filter-muted:#52645c;--filter-blue:#285d49;
}
html body.ec-vivid.ec-public-visual .ec-guide-experience {--guide-experience-ink:#203b33;}
html body.ec-vivid.ec-public-visual .ec-guide-experience .ec-guide-reading__body .ec-prose {color:#52645c;}
html body.ec-vivid.ec-public-visual .ec-utility-nav a[href$="/trips/"]:hover,
html body.ec-vivid.ec-public-visual :is(.ec-bestof-button:not(.ec-bestof-button--quiet):not(.ec-bestof-button--light),.ec-guide-directory__submit,.ec-dest-explorer__submit):hover,
html body.ec-vivid.ec-public-visual .ec-guide-reading__sharing [data-ec-profile-share]:hover {
  background:#173f30;border-color:#173f30;color:#fff;
}
html body.ec-vivid.ec-public-visual .ec-bestof-button:is(.ec-bestof-button--quiet,.ec-bestof-button--light):hover {background:#e9eee4;border-color:#285d49;color:#203b33!important;}
html body.ec-vivid.ec-public-visual #main-content :is(button.ec-discover-experience__button,.ec-event-directory__submit,.ec-portal-search__submit,.ec-dest-explorer__submit,.ec-guide-directory__submit,.ec-filter-bar>button[type=submit],.ec-business-context button[type=submit]):hover {background:#173f30;border-color:#173f30;color:#fff;}
html body.ec-vivid.ec-public-visual .ec-destination29-quick a:hover {border-color:#285d49;color:#285d49;}
html body.ec-vivid.ec-public-visual .ec-destination29-quick a.ec-destination29-quick__plan:hover {background:#173f30;color:#fff;}
html body.ec-vivid.ec-public-visual :is(.ec-portal-card__actions button:last-child:not(:first-child),.ec-card__actions button[data-ec-add-trip]) {background:#e9eee4;border-color:#e9eee4;color:#285d49;}
html body.ec-vivid.ec-public-visual .ec-bestof-button[aria-pressed=true] {background:#e9eee4;color:#285d49!important;}
@media (forced-colors:active) {
  html body.ec-vivid.ec-public-visual {--ec-ink:CanvasText;--ec-sea:LinkText;--bd-ink:CanvasText;--bd-blue:LinkText;--pp-ink:CanvasText;--pp-blue:LinkText;}
  html body.ec-vivid.ec-public-visual :is(.ec-bestof-detail,.ec-bestof-destinations,.ec-guide-directory,.ec-guide-reading,.ec-place-profile,.ec-dest-explorer,.ec-discover-experience,.ec-gallery,.ec-ideas) {--bd-ink:CanvasText;--bd-blue:LinkText;--pp-ink:CanvasText;--pp-blue:LinkText;--dx-blue:LinkText;--filter-blue:LinkText;--gallery-blue:LinkText;}
  html body.ec-vivid.ec-public-visual #main-content {--filter-ink:CanvasText;--filter-muted:CanvasText;--filter-blue:LinkText;}
  html body.ec-vivid.ec-public-visual .ec-guide-experience {--guide-experience-ink:CanvasText;}
  html body.ec-vivid.ec-public-visual .ec-guide-experience .ec-guide-reading__body .ec-prose {color:CanvasText;}
}


/* Canonical Place refinement: homepage composition, complete photographs and calmer supporting content.
   Presentation only. Authored text, native gallery/CTA/save markup and all photo credits stay unchanged. */
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] {--pp-ink:#203b33;--pp-blue:#285d49;--pp-muted:#52645c;--pp-paper:#f5f3ed;--pp-line:#d9dfd7;background:#fbfaf6;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile]>.ec-shell {width:calc(100% - 3rem);max-width:76rem;margin-inline:auto;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__breadcrumbs {padding:.6rem 0 .8rem;gap:.35rem .65rem;font-size:.75rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__breadcrumbs a {text-decoration:none;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__breadcrumbs a:hover {text-decoration:underline;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero:not(.ec-place-profile__hero--text) {grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,4vw,4rem);align-items:center;padding:.8rem 0 2.25rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero>.ec-place-profile__heading {grid-column:1;grid-row:1;gap:1.4rem;align-self:center;padding:0;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media {grid-column:2;grid-row:1;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero .ec-place-profile__heading h1 {font-size:clamp(3.1rem,6.2vw,5.8rem);line-height:1.02;letter-spacing:-.045em;max-width:19ch;margin:.65rem 0 1.1rem;overflow-wrap:break-word;text-wrap:balance;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero .ec-place-profile__summary {font-size:1.0625rem;line-height:1.75;max-width:42ch;color:#52645c;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__eyebrow {font-size:.6875rem;letter-spacing:.12em;color:#52645c;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__heading-actions {gap:.7rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__actions {gap:.5rem .65rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__button {min-height:46px;padding:.75rem 1rem;border-radius:4px;background:#285d49;border-color:#285d49;color:#fff!important;--pp-link:#fff;line-height:1.45;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__button:hover {background:#173f30;border-color:#173f30;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__button--quiet {background:transparent;border-color:#bac7bc;color:#285d49!important;--pp-link:#285d49;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__button--quiet:hover {background:#e9eee4;border-color:#285d49;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__button[aria-pressed=true] {background:#e9eee4;color:#285d49!important;--pp-link:#285d49;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__partner {border-color:#d9dfd7;background:#edf1e8;color:#285d49;border-radius:3px;padding:.35rem .6rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery__heading {position:static;display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 .65rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery__heading h2 {position:static;width:auto;height:auto;margin:0;padding:0;overflow:visible;clip-path:none;white-space:normal;font:500 .75rem/1.5 var(--atlas-body,"DM Sans",Arial,sans-serif);color:#52645c;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery__open {min-height:44px;padding:.45rem .75rem;border-radius:4px;border:1px solid #d9dfd7;background:transparent;color:#285d49;box-shadow:none;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media :is(.ec-gallery__mosaic,.ec-gallery__link) {border-radius:4px;background:#f0f1e9;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery__link img {object-fit:cover!important;transform:none;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__link img {height:auto!important;width:100%;max-height:none;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero--text>.ec-place-profile__heading {max-width:64rem;padding:.7rem 0 1.6rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero--text .ec-place-profile__summary {max-width:62ch;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__page-nav {gap:.3rem 1.7rem;padding:.45rem 0;border-top:0;border-bottom:1px solid #d9dfd7;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__page-nav a {font-size:.8125rem;min-height:44px;color:#285d49;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__reading {grid-template-columns:minmax(0,1.45fr) minmax(17rem,.85fr);gap:clamp(2rem,5vw,4.75rem);padding:2.75rem 0 3rem;align-items:start;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__reading--single {grid-template-columns:minmax(0,1fr);max-width:64rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__story>h2 {font-size:clamp(2.2rem,3.6vw,3.25rem);line-height:1.12;margin:0 0 1.3rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__story .ec-prose {font-size:1.0625rem;line-height:1.8;max-width:62ch;color:#52645c;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__story .ec-prose>p:first-child {font-size:1.125rem;line-height:1.8;color:#203b33;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__practical {position:static;background:#f1f2ea;border:0;border-top:2px solid #b5c2b3;border-radius:0;padding:1.5rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__practical>h2 {font-size:2rem;line-height:1.15;margin:0 0 1.2rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__practical h3 {font:600 .875rem/1.5 var(--atlas-body,"DM Sans",Arial,sans-serif);letter-spacing:0;margin:1.2rem 0 .6rem;color:#203b33;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__practical :is(.ec-place-profile__arrival-description,.ec-place-profile__facts) {font-size:.875rem;line-height:1.7;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__facts>div {grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:.75rem;font-size:.8125rem;padding:.8rem 0;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__practical :is(.ec-place-profile__text-link,.ec-place-profile__access-links a) {font-size:.8125rem;line-height:1.5;min-height:44px;display:inline-flex;align-items:center;max-width:100%;overflow-wrap:anywhere;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__contact {gap:.5rem;margin-top:1.15rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile[data-ec-around-profile] {--around-ink:#203b33;--around-muted:#52645c;--around-accent:#285d49;--around-accent-strong:#203b33;--around-line:#d9dfd7;background:transparent;padding:2.5rem 0 2rem;margin:0;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__heading {grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:2rem;margin-bottom:2rem;align-items:end;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__heading h2 {font-weight:500;font-size:clamp(2.2rem,3.6vw,3.25rem);line-height:1.12;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__intro {font-size:.9375rem;line-height:1.7;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__groups {gap:2rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__group>h3 {font-size:.8125rem;letter-spacing:.025em;margin-bottom:1.25rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__cards {gap:1.5rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__card {gap:.8rem;padding:0 0 1.3rem;border:0;border-bottom:1px solid #d9dfd7;border-radius:0;background:transparent;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__card h4 {font:500 1.65rem/1.15 var(--atlas-display,"Cormorant Garamond",Georgia,serif);letter-spacing:-.02em;overflow-wrap:break-word;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__summary {font-size:.875rem;line-height:1.7;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__photo>a {aspect-ratio:3/2;border-radius:4px;background:#f0f1e9;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__photo img {object-fit:cover!important;transform:none;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__actions button {min-height:44px;border-radius:4px;background:transparent;border-color:#bac7bc;color:#285d49;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__actions button:hover {background:#e9eee4;border-color:#285d49;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__actions button[aria-pressed=true] {background:#e9eee4;border-color:#285d49;color:#285d49;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__footer {border:0;margin-top:.5rem;padding-top:.6rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile .ec-media-credit {background:transparent!important;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__related {padding:2.5rem 0;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__related .ec-bestof-card__link {text-decoration:none;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__related .ec-bestof-card__link:is(:hover,:focus-visible) h3 {text-decoration:underline;text-underline-offset:.18em;}

html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-guides {padding:2.5rem 0;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] :is(.ec-place-profile__related,.ec-place-guides) .ec-bestof-card__image {aspect-ratio:3/2;border-radius:4px;background:#f0f1e9;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] :is(.ec-place-profile__related,.ec-place-guides) .ec-bestof-card__image img {object-fit:cover!important;transform:none;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__plan {margin:1.5rem 0 1rem;padding:clamp(1.5rem,4vw,3rem);gap:2rem;border-radius:4px;background:#204d40;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__plan h2 {font-size:clamp(2.4rem,4vw,3.7rem);line-height:1.08;max-width:20ch;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__button--light {background:#f1f2d9;border-color:#f1f2d9;color:#204d40!important;--pp-link:#204d40;min-width:0;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__button--light:hover {background:#fff9e8;border-color:#fff9e8;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] :where(section,aside)[id] {scroll-margin-top:6rem;}
@media(max-width:64rem) {
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero:not(.ec-place-profile__hero--text) {gap:2rem;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__reading:where(:not(.ec-place-profile__reading--single)) {grid-template-columns:minmax(0,1.25fr) minmax(15rem,.85fr);gap:2rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__groups {gap:1.3rem;}
}
@media(max-width:48rem) {
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile]>.ec-shell {width:calc(100% - 2.5rem);}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__breadcrumbs {padding:.45rem 0 .7rem;gap:.2rem .55rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero:not(.ec-place-profile__hero--text) {grid-template-columns:minmax(0,1fr);gap:1.6rem;padding:.5rem 0 1.75rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero>.ec-place-profile__heading {grid-column:1;grid-row:1;gap:1.2rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media {grid-column:1;grid-row:2;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero .ec-place-profile__heading h1 {font-size:clamp(2.75rem,10.5vw,4.25rem);max-width:22ch;line-height:1.05;margin:.55rem 0 .9rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero .ec-place-profile__summary {font-size:1rem;line-height:1.7;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero .ec-place-profile__heading-actions {max-width:100%;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__button {padding:.65rem .85rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__page-nav {gap:0 1.2rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__reading {grid-template-columns:1fr;gap:1.75rem;padding:2rem 0;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__story .ec-prose {font-size:1rem;line-height:1.8;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__story .ec-prose>p:first-child {font-size:1.0625rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__practical {padding:1.25rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile[data-ec-around-profile] {padding:2rem 0 1.5rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__heading {grid-template-columns:1fr;gap:.75rem;margin-bottom:1.6rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile__groups {grid-template-columns:1fr;gap:2rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__plan {grid-template-columns:1fr;gap:1.5rem;}
}
@media(max-width:23rem) {
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__facts>div {grid-template-columns:1fr;gap:.2rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero .ec-place-profile__heading h1 {font-size:2.65rem;}
}
@media(forced-colors:active) {
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] {--pp-ink:CanvasText;--pp-muted:CanvasText;--pp-blue:LinkText;--pp-paper:Canvas;--pp-line:CanvasText;background:Canvas;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] :is(.ec-place-profile__practical,.ec-place-profile__plan) {background:Canvas;border:1px solid CanvasText;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] :is(.ec-place-profile__summary,.ec-place-profile__eyebrow,.ec-place-profile__story .ec-prose,.ec-place-profile__story .ec-prose>p:first-child,.ec-place-profile__practical h3) {color:CanvasText;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] :is(.ec-place-profile__button,.ec-around-profile__actions button,.ec-gallery__open) {background:ButtonFace!important;color:ButtonText!important;border-color:ButtonText!important;--pp-link:ButtonText;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-around-profile[data-ec-around-profile] {--around-ink:CanvasText;--around-muted:CanvasText;--around-accent:LinkText;--around-accent-strong:CanvasText;--around-line:CanvasText;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__plan h2 {color:CanvasText;}
}

/* Discover and search: the same green, paper and editorial type as the homepage.
   Scoped presentation only; native filters, result states, links and saving stay intact. */
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] {--dx-ink:#203b33;--dx-muted:#52645c;--dx-blue:#285d49;--dx-paper:#f1f2ea;--dx-line:#d9dfd7;background:#fbfaf6;padding:2.8rem 0 4rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience]>.ec-shell {width:calc(100% - 3rem);max-width:76rem;margin-inline:auto;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] {--bd-ink:#203b33;--bd-muted:#52645c;--bd-blue:#285d49;--bd-cream:#f1f2ea;--bd-line:#d9dfd7;width:calc(100% - 3rem);max-width:76rem;padding:2.8rem 0 4rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro {gap:1rem 3rem;margin-bottom:1.9rem;align-items:end;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro h1,
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__heading h1 {font:500 clamp(3.2rem,5.9vw,5.3rem)/1.04 var(--atlas-display,"Cormorant Garamond",Georgia,serif)!important;letter-spacing:-.035em;color:#203b33;margin:.4rem 0 .6rem;max-width:24ch;text-wrap:balance;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__eyebrow,
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__heading .ec-bestof-eyebrow {font-size:.6875rem;letter-spacing:.13em;color:#52645c;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro>p,
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__heading p:not(.ec-bestof-eyebrow) {font-size:1rem;line-height:1.75;color:#52645c;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__form,
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__form {padding:1.35rem 1.5rem;background:#f1f2ea;border:1px solid #d9dfd7;border-radius:4px;box-shadow:none;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__select select,
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__field input {min-height:50px;border:1px solid #c8d2c6;border-radius:4px;background-color:#fffefa;color:#203b33;font-size:1rem;box-shadow:none;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__field {background:#fffefa;border:1px solid #c8d2c6;border-radius:4px;padding:0 .85rem;gap:.65rem;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__field input {padding:.7rem 0;border:0;background:transparent;border-radius:0;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__select,
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__input>label {font-size:.75rem;color:#52645c;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__button,
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__submit {min-height:50px;border-radius:4px;padding:.8rem 1.3rem;background:#285d49;border-color:#285d49;color:#fff;box-shadow:none;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__button:hover,
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__submit:hover {background:#173f30;border-color:#173f30;color:#fff;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__filters>summary {border:0;border-radius:0;background:transparent;padding:.55rem 0;font-size:.8125rem;color:#285d49;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__filter-panel {margin-top:.35rem;padding-top:1.2rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] :is(.ec-discover-experience__quick-filters,.ec-discover-experience__check-grid) label {font-size:.8125rem;line-height:1.5;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__filter-note {font-size:.8125rem;line-height:1.6;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets {gap:.4rem 1.1rem;margin:1.25rem 0 0;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets>div {gap:.5rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets a,
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__chips>a,
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__tab {border-radius:4px;box-shadow:none;background:transparent;border-color:#ccd5c9;color:#285d49;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets a:hover,
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__chips>a:hover,
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__tab:hover {background:#e9eee4;border-color:#285d49;color:#203b33;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets a[aria-current],
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__tab[aria-current=true] {background:#285d49;border-color:#285d49;color:#fff;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__tab[aria-current=true]>span {color:#fff;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results-heading {margin:2.5rem 0 .3rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results-heading h2,
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__empty h2,
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] :is(.ec-portal-search__landing,.ec-portal-search__results-heading,.ec-portal-search__empty,.ec-portal-search__start,.ec-portal-search__city-section-heading) h2 {font:500 clamp(2rem,3.1vw,2.8rem)/1.15 var(--atlas-display,"Cormorant Garamond",Georgia,serif);letter-spacing:-.025em;color:#203b33;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results-heading [data-ec-result-count] {border:0;border-radius:0;padding:0;font-size:.8125rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__range {font-size:.8125rem;margin:.5rem 0 1.5rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results {gap:2.5rem 1.75rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-card:not(.ec-discover-card--enhanced) {background:transparent;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-card__media {border-radius:4px;background:#eef0e7;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-card__media img {object-fit:contain!important;transform:none!important;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-card h3 {font:500 clamp(1.65rem,2.3vw,2rem)/1.13 var(--atlas-display,"Cormorant Garamond",Georgia,serif);letter-spacing:-.02em;margin:0 0 .65rem;color:#203b33;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-card--enhanced h3 {font-weight:600;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-card--text h3 {font-size:1.6rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-card__meta {font-size:.7rem;color:#52645c;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-card__summary {font-size:.9375rem;line-height:1.7;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-card__save {border-radius:4px;box-shadow:none;color:#285d49;background:#fffefa;border-color:#c8d2c6;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-card__save:hover {background:#e9eee4;border-color:#285d49;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-card__save[aria-pressed=true] {background:#285d49;color:#fff;border-color:#285d49;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-card__actions button:hover {background:#e9eee4;color:#285d49;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] :is(.ec-discover-experience__empty,.ec-discover-experience__planner) {border-radius:4px;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__pagination>a,
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__pagination>span,
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__pagination :is(a,span) {border-radius:4px;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__pagination>a:hover {background:#e9eee4;border-color:#285d49;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__pagination>[aria-current=page],
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__pagination [aria-current=page] {background:#285d49;border-color:#285d49;color:#fff;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__start {padding:1.6rem;background:#f1f2ea;border-radius:4px;border:0;border-top:2px solid #b5c2b3;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__start:hover {background:#e9eee4;border-color:#285d49;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__start p,
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__landing p {font-size:.9375rem;line-height:1.75;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__grid {gap:2.25rem 1.5rem;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-bestof-card:where(:not(.ec-bestof-card--enhanced)) {background:transparent;box-shadow:none;border:0;border-radius:4px;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-bestof-card__image {aspect-ratio:3/2;border-radius:4px;background:#eef0e7;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-bestof-card__image img {object-fit:contain!important;transform:none!important;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-bestof-card__copy {padding:1rem 0 .7rem;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-bestof-card__copy h3 {font:500 1.8rem/1.15 var(--atlas-display,"Cormorant Garamond",Georgia,serif);letter-spacing:-.02em;color:#203b33;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-bestof-card__copy>p:not(.ec-bestof-eyebrow) {font-size:.9375rem;line-height:1.7;color:#52645c;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-bestof-card__actions {padding:.6rem 0;border-top:1px solid #d9dfd7;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-bestof-card__actions button {border-radius:4px;min-height:44px;color:#285d49;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-bestof-card__actions button:hover {background:#e9eee4;color:#203b33;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-bestof-card__actions button[aria-pressed=true] {background:#285d49;color:#fff;border-color:#285d49;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-bestof-card--text {border-top:1px solid #b5c2b3;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] :is(.ec-portal-search__empty,.ec-portal-search__nearby,.ec-portal-search__section-empty) {border-radius:4px;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__destination {border:0;border-radius:4px;box-shadow:none;background:#f1f2ea;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__destination-image {min-height:0;aspect-ratio:3/2;align-self:center;background:#eef0e7;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__destination-image img {object-fit:contain!important;transform:none!important;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__destination-copy {padding:2rem;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__destination-copy h2 {font:500 clamp(2.6rem,4.3vw,4rem)/1.05 var(--atlas-display,"Cormorant Garamond",Georgia,serif);letter-spacing:-.035em;color:#203b33;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__destination-copy .ec-bestof-button {border-radius:4px;background:#285d49;border-color:#285d49;color:#fff;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__destination-copy .ec-bestof-button:hover {background:#173f30;border-color:#173f30;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__city-nav>a {border-radius:4px;color:#285d49;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__city-grid .ec-bestof-card__copy h3 {font-size:1.6rem;}
html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] :is(a,button,input):focus-visible,
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] :is(a,button,input,select,summary):focus-visible {outline:3px solid #285d49;outline-offset:4px;}
@media(max-width:50rem) {
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro {grid-template-columns:1fr;gap:.5rem;}
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__destination-copy {padding:1.5rem;}
}
@media(max-width:44rem) {
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] {padding:1.7rem 0 2.5rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience]>.ec-shell,
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] {width:calc(100% - 2rem);}
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] {padding-top:1.7rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro,
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__heading {margin-bottom:1.4rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro h1,
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__heading h1 {font-size:clamp(2.7rem,11vw,3.8rem)!important;line-height:1.06!important;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__form,
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__form {padding:1rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters {grid-template-columns:minmax(0,1fr);gap:.75rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__button {width:100%;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__filters>summary {width:100%;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets>div {flex-wrap:wrap;overflow:visible;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets a {white-space:normal;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results-heading {margin-top:2rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results {gap:2.2rem;}
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__form {display:flex;flex-direction:column;align-items:stretch;gap:.85rem;}
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__submit {width:100%;}
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__start-grid {grid-template-columns:1fr;gap:.8rem;}
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__start {padding:1.25rem;}
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__grid {grid-template-columns:1fr;gap:2rem;}
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__city-grid .ec-bestof-card__copy h3 {font-size:1.8rem;}
}
@media(forced-colors:active) {
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] {--dx-ink:CanvasText;--dx-muted:CanvasText;--dx-blue:LinkText;--dx-paper:Canvas;--dx-line:CanvasText;}
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] {--bd-ink:CanvasText;--bd-muted:CanvasText;--bd-blue:LinkText;--bd-cream:Canvas;--bd-line:CanvasText;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] :is(a,button,input,select,summary),
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] :is(a,button,input) {border-color:ButtonText;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-card__save[aria-pressed=true],
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-bestof-card__actions button[aria-pressed=true],
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets a[aria-current],
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__tab[aria-current=true],
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__pagination>[aria-current=page],
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] .ec-portal-search__pagination [aria-current=page] {background:Highlight;color:HighlightText;border-color:Highlight;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] :is(a,button,input,select,summary):focus-visible,
 html body.ec-public #main-content #ec-public-search.ec-portal-search[data-public-search] :is(a,button,input):focus-visible {outline-color:Highlight;}
}
/* Shared Place opening: one title, a photograph-led spread and a compact action group. */
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__breadcrumbs {padding:.45rem 0 .9rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero:not(.ec-place-profile__hero--text) {display:grid;grid-template-columns:minmax(0,1.45fr) minmax(17rem,.65fr);grid-template-rows:auto auto min-content min-content min-content 1fr;column-gap:clamp(1.75rem,4vw,3.5rem);row-gap:0;align-items:start;padding:0 0 1.6rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero:not(.ec-place-profile__hero--text)>.ec-place-profile__heading,
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero:not(.ec-place-profile__hero--text)>.ec-place-profile__heading>div:first-child {display:contents;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero .ec-place-profile__eyebrow {grid-column:1/-1;grid-row:1;margin:0;color:#52645c;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero .ec-place-profile__heading h1 {grid-column:1/-1;grid-row:2;font-size:clamp(2.8rem,5.3vw,4.8rem);line-height:1.04;max-width:none;margin:.4rem 0 1.3rem;letter-spacing:-.035em;text-wrap:balance;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media {grid-column:1;grid-row:3/7;align-self:start;min-width:0;margin:0;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero .ec-place-profile__summary {grid-column:2;grid-row:3;align-self:start;max-width:38ch;margin:0;font-size:1.125rem;line-height:1.75;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__heading-actions {grid-column:2;grid-row:4;display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .8rem;min-width:0;margin-top:1.25rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__heading-actions :is(.ec-place-profile__actions,.ec-place-profile__sharing) {display:contents;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__heading-actions :is(.ec-place-profile__selection,.ec-place-profile__partner,.ec-place-profile__share-status,.ec-place-profile__share-manual) {flex-basis:100%;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__heading-actions .ec-place-profile__share-status:empty {display:none;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__heading-actions .ec-place-profile__button {min-height:44px;padding:.65rem .9rem;font-size:.8125rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__heading-actions .ec-place-profile__button--quiet {padding:.55rem .15rem;background:transparent;border-color:transparent;color:#285d49!important;box-shadow:none;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__heading-actions .ec-place-profile__button--quiet:hover {background:#e9eee4;border-color:transparent;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__heading-actions .ec-place-profile__button--quiet[aria-pressed=true] {background:#e9eee4;border-color:#a9bea9;color:#203b33!important;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__heading-actions .ec-place-profile__share {display:inline-flex;align-items:center;min-height:44px;padding:.55rem .15rem;font-size:.8125rem;color:#285d49;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__heading>.ec-place-profile__owner {grid-column:2;grid-row:6;align-self:start;justify-self:start;margin-top:1.2rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media>.ec-gallery {position:relative;margin:0;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1>.ec-gallery__heading {position:absolute;inset:auto .75rem .75rem auto;z-index:2;display:block;min-height:0;padding:0;margin:0;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1>.ec-gallery__heading>h2 {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__open {display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #c8d2c6;border-radius:50%;background:#fffefa;color:#203b33;font-size:0;box-shadow:0 2px 8px #203b3314;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__open>span {font-size:0;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__open::before {content:'⤢';font:400 1.5rem/1 Arial,sans-serif;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__open:hover {background:#e9eee4;border-color:#285d49;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__open[hidden] {display:none!important;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__link img {width:100%;height:auto!important;max-height:32rem;object-fit:cover!important;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1.ec-gallery--portrait .ec-gallery__link img {object-position:center top;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__page-nav {grid-column:2;grid-row:5;align-self:start;display:flex;flex-wrap:wrap;gap:.25rem 1.1rem;margin:1.2rem 0 0;padding:.7rem 0 0;border-top:1px solid #cdd8cb;border-bottom:0;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__page-nav a {display:inline-flex;align-items:center;min-height:44px;padding:.4rem 0;font-size:.8125rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero--text {padding:0 0 1.5rem;}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero--text>.ec-place-profile__heading {padding:0;}
@media(max-width:50rem) {
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero:not(.ec-place-profile__hero--text) {display:block;padding-bottom:1.25rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero:not(.ec-place-profile__hero--text)>.ec-place-profile__heading {display:block;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero:not(.ec-place-profile__hero--text)>.ec-place-profile__heading>div:first-child {display:block;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero .ec-place-profile__heading h1 {font-size:clamp(2.5rem,9.7vw,3.8rem);line-height:1.05;max-width:22ch;margin:.4rem 0 .8rem;text-wrap:pretty;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero .ec-place-profile__summary {font-size:1rem;line-height:1.7;max-width:44ch;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__heading-actions {margin-top:.85rem;gap:.25rem .75rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__heading>.ec-place-profile__owner {margin-top:.7rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media {margin-top:1rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__link img {max-height:30rem;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__page-nav {gap:.15rem 1rem;margin-top:.65rem;padding-top:.4rem;}
}
@media(forced-colors:active) {
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__open {background:ButtonFace;color:ButtonText;border-color:ButtonText;}
}
/* Discover composition. Append after the approved green Discover/search rules.
   The closed form is one desktop row; opening native details expands below it.
   All filters, labels, result states, photo framing and card actions remain native. */
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] {--filter-ink:#203b33;--filter-muted:#52645c;--filter-blue:#285d49;--filter-line:#d9dfd7;--filter-soft:#f1f2ea;--filter-white:#fffefa;padding-top:1.65rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro {gap:.5rem 2rem;margin-bottom:1.25rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro h1 {font-size:clamp(3rem,5.2vw,4.6rem)!important;line-height:1.02!important;margin:.3rem 0 0;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro .ec-discover-experience__eyebrow {margin-bottom:.45rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro>p {font-size:.9375rem;line-height:1.6;margin:0 0 .2rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__form {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:0 1.5rem;padding:.85rem 1.15rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters {grid-template-columns:minmax(0,1fr) auto;gap:.75rem;max-width:42rem;width:100%;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters>.ec-discover-experience__select {display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.75rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters>.ec-discover-experience__select>span {margin:0;white-space:nowrap;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters select {height:48px;min-height:48px;padding-block:.65rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters>.ec-discover-experience__button {width:auto;min-height:48px;padding:.7rem 1.15rem;gap:.7rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__filters {margin:0;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__filters>summary {width:auto;min-height:48px;margin:0;padding:.5rem 0;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__filters[open] {grid-column:1/-1;margin-top:.5rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__filter-panel {margin-top:0;padding-top:1rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] :is(.ec-discover-experience__quick-filters,.ec-discover-experience__check-grid) label:has(input:checked) {background:#e9eee4;border-color:#9eb29f;color:#285d49;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] :is(.ec-discover-experience__quick-filters,.ec-discover-experience__check-grid) label:has(input:focus-visible) {outline-color:#285d49;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets {margin:.75rem 0 0;gap:.25rem 1rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets a {min-height:44px;padding:.55rem .8rem;font-size:.8125rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results-heading {margin:1.3rem 0 .15rem;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results-heading h2 {font-size:clamp(1.9rem,2.6vw,2.3rem);line-height:1.1;}
html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__range {margin:.35rem 0 .9rem;font-size:.75rem;}
@media(max-width:60rem) {
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__form {display:block;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters {max-width:none;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__filters {margin-top:.3rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__filters[open] {margin-top:.3rem;}
}
@media(max-width:44rem) {
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] {padding-top:1rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro {gap:.35rem;margin-bottom:1rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro h1 {font-size:clamp(2.5rem,10.6vw,3.2rem)!important;line-height:1.04!important;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro>p {font-size:.9rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__form {padding:.65rem .75rem .35rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters {grid-template-columns:minmax(0,1fr) auto;gap:.6rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters>.ec-discover-experience__select {gap:.45rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters select {height:44px;min-height:44px;padding:.55rem 1.8rem .55rem .55rem;background-position:right .5rem center;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters>.ec-discover-experience__button {min-height:44px;padding:.55rem .65rem;font-size:.75rem;gap:.4rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__filters>summary {min-height:44px;width:100%;font-size:.8125rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets {margin:.65rem 0 0;overflow:visible;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets>span {font-size:.75rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets>div {flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;width:calc(100% + 1rem);max-width:calc(100% + 1rem);margin-inline:-.5rem;padding:.5rem;scrollbar-width:thin;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__presets a {flex:0 0 auto;white-space:nowrap;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results-heading {margin:.8rem 0 .15rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results-heading>div {gap:.35rem 1rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results-heading h2 {font-size:1.9rem;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__range {margin:.3rem 0 .8rem;}
}
@media(max-width:23rem) {
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters>.ec-discover-experience__select {grid-template-columns:minmax(0,1fr);gap:.25rem;}
}
@media(forced-colors:active) {
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] {--filter-ink:CanvasText;--filter-muted:CanvasText;--filter-blue:LinkText;--filter-line:CanvasText;--filter-soft:Canvas;--filter-white:Canvas;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] :is(.ec-discover-experience__quick-filters,.ec-discover-experience__check-grid) label:has(input:checked) {background:Highlight;border-color:Highlight;color:HighlightText;}
 html body.ec-public #main-content .ec-discover-experience[data-ec-discover-experience] :is(.ec-discover-experience__quick-filters,.ec-discover-experience__check-grid) label:has(input:focus-visible) {outline-color:Highlight;}
}

/* PORTAL4 quiet save and share actions — 2026-10-12 */
html body.ec-public-visual .ec-guide-reading__actions{align-items:center;gap:.25rem .9rem;}
html body.ec-public-visual .ec-guide-reading__sharing{flex:0 1 auto;align-items:center;gap:.25rem .9rem;}
html body.ec-public-visual .ec-guide-reading__actions :is([data-ec-save],[data-ec-profile-share],[data-ec-profile-copy]),
html body.ec-public-visual [data-ec-profile-sharing] :is([data-ec-profile-share],[data-ec-profile-copy]){
background:transparent!important;color:#53665d!important;border:0!important;border-radius:3px!important;box-shadow:none!important;padding:8px 2px!important;min-height:40px!important;height:auto!important;min-width:0!important;width:auto!important;flex:0 0 auto!important;font-size:13px!important;font-weight:500!important;line-height:1.4!important;letter-spacing:0!important;text-transform:none!important;transform:none!important;text-decoration:none!important;
}
html body.ec-public-visual .ec-guide-reading__actions :is([data-ec-save],[data-ec-profile-share],[data-ec-profile-copy]):hover,
html body.ec-public-visual [data-ec-profile-sharing] :is([data-ec-profile-share],[data-ec-profile-copy]):hover{color:#203e33!important;text-decoration:underline!important;text-underline-offset:4px;}
html body.ec-public-visual .ec-guide-reading__actions [data-ec-save][aria-pressed="true"]{color:#203e33!important;font-weight:700!important;}
html body.ec-public-visual .ec-guide-reading__actions button:focus-visible,
html body.ec-public-visual [data-ec-profile-sharing] button:focus-visible{outline:2px solid #53665d!important;outline-offset:3px!important;}
@media(pointer:coarse){html body.ec-public-visual .ec-guide-reading__actions :is([data-ec-save],[data-ec-profile-share],[data-ec-profile-copy]),html body.ec-public-visual [data-ec-profile-sharing] :is([data-ec-profile-share],[data-ec-profile-copy]){min-height:44px!important;}}

/* D02: readable secondary action and eyebrow inside the dark Place planning CTA. */
@media (forced-colors: none) {
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__plan .ec-place-profile__eyebrow {color:#dfebbf;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__plan-actions>a:not(.ec-place-profile__button) {color:#fff;--pp-link:#fff;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__plan-actions>a:not(.ec-place-profile__button):hover {color:#dfebbf;}
 html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__plan :where(a,button):focus-visible {outline:3px solid #fff9e8;outline-offset:4px;}
}

/* Destination detail: one leading explore action and one quiet row of next steps. */
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-primary {background:#285d49;border-color:#285d49;color:#fff;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-primary:hover {background:#173f30;border-color:#173f30;color:#fff;}
html body.ec-public #main-content .ec-bestof-detail--destination:has(.ec-destination29-primary) .ec-bestof-page-nav a[href="#ec-destination-explorer"] {display:none;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dest-explorer__next {display:flex;flex-wrap:wrap;align-items:center;gap:.25rem 1.5rem;margin:2rem 0 0;padding:1rem 0;border-top:1px solid #d9dfd7;}
html body.ec-public #main-content .ec-bestof-detail--destination .ec-dest-explorer__next a {display:inline-flex;align-items:center;gap:.6rem;min-height:44px;max-width:100%;color:#285d49;font-size:.875rem;line-height:1.5;text-decoration:underline;text-underline-offset:4px;}

/* Count actual rendered cards, including after explorer filtering. Keep sparse rows bounded. */
@media(min-width:40.001rem) {
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-grid:has(> .ec-destination29-card:only-child),
 html body.ec-public #main-content .ec-bestof-detail--destination + .ec-ideas--teaser .ec-ideas__grid:has(> .ec-idea:only-child) {grid-template-columns:minmax(0,1fr);max-width:48rem;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-grid:has(> .ec-destination29-card:nth-child(2):last-child),
 html body.ec-public #main-content .ec-bestof-detail--destination + .ec-ideas--teaser .ec-ideas__grid:has(> .ec-idea:nth-child(2):last-child) {grid-template-columns:repeat(2,minmax(0,1fr));max-width:64rem;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-grid > .ec-destination29-card--text:only-child {display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:1.5rem;align-items:start;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-card--text:only-child .ec-destination29-card__actions {margin-top:0;padding-top:.25rem;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-card:only-child .ec-destination29-card__summary {max-width:60ch;}
}
@media(min-width:48.001rem) {
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-card--photo:only-child .ec-destination29-card__link {display:grid;grid-template-columns:minmax(0,16rem) minmax(0,1fr);gap:1.5rem;align-items:start;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-destination29-card--photo:only-child .ec-destination29-card__image {margin-bottom:0;}
 html body.ec-public #main-content .ec-bestof-detail--destination + .ec-ideas--teaser .ec-idea:only-child:has(> .ec-idea__image) {display:grid;grid-template-columns:minmax(0,16rem) minmax(0,1fr);grid-template-rows:auto 1fr;align-items:start;}
 html body.ec-public #main-content .ec-bestof-detail--destination + .ec-ideas--teaser .ec-idea:only-child > .ec-idea__image {grid-column:1;grid-row:1;}
 html body.ec-public #main-content .ec-bestof-detail--destination + .ec-ideas--teaser .ec-idea:only-child > .ec-home-credit {grid-column:1;grid-row:2;}
 html body.ec-public #main-content .ec-bestof-detail--destination + .ec-ideas--teaser .ec-idea:only-child:has(> .ec-idea__image) > .ec-idea__copy {grid-column:2;grid-row:1 / span 2;}
}
@media(forced-colors:active) {
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-dest-explorer__next {border-color:CanvasText;}
 html body.ec-public #main-content .ec-bestof-detail--destination .ec-dest-explorer__next a {color:LinkText;}
}

/* Stories: articles lead; native search remains available in one disclosure. */
.ec-main .ec-guide-directory.ec-stories-index{padding-top:clamp(24px,4vw,56px);padding-bottom:40px}
.ec-main .ec-stories-index .ec-guide-directory__heading{display:block;margin:0 0 24px;max-width:48rem}
.ec-main .ec-stories-index .ec-guide-directory__heading h1{font:500 clamp(2.5rem,5vw,4.5rem)/1.02 var(--atlas-display,Georgia,serif);letter-spacing:-.035em;margin:12px 0 16px;text-wrap:balance}
.ec-main .ec-stories-index .ec-guide-directory__heading>div>p:last-child{max-width:42rem;font-size:1.05rem;line-height:1.6;margin:0}
.ec-main .ec-stories-index .ec-stories-filters{border-block:1px solid #bfc9bd;margin:0 0 20px;background:transparent;border-radius:0;padding:0}
.ec-main .ec-stories-index .ec-stories-filters>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:48px;cursor:pointer;list-style:none;font:500 .9rem/1.4 "DM Sans",sans-serif;color:#244a40;padding:10px 0}
.ec-main .ec-stories-index .ec-stories-filters>summary::-webkit-details-marker{display:none}
.ec-main .ec-stories-index .ec-stories-filters>summary::after{content:'+';font-size:1.5rem;font-weight:400}
.ec-main .ec-stories-index .ec-stories-filters[open]>summary::after{content:'−'}
.ec-main .ec-stories-index .ec-stories-filters__body{padding:8px 0 20px}
.ec-main .ec-stories-index .ec-guide-directory__status:empty{display:none}
.ec-main .ec-stories-index .ec-guide-directory__results-heading{margin:0 0 20px;font-size:.78rem;color:#53685b}
.ec-main .ec-stories-index .ec-guide-directory__results-heading p{margin:0}
.ec-main .ec-stories-index .ec-stories-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 28px;align-items:start}
.ec-main .ec-stories-index .ec-story-card{position:relative;min-width:0;margin:0;padding:0;background:transparent;border:0;box-shadow:none}
.ec-main .ec-stories-index .ec-story-card__visual{position:relative;min-width:0}
.ec-main .ec-stories-index .ec-story-card__image{display:block;overflow:hidden;border-radius:3px;aspect-ratio:4/3;background:#e8eade}
.ec-main .ec-stories-index .ec-story-card__image img{display:block;width:100%;height:100%;object-fit:cover}
.ec-main .ec-stories-index .ec-story-card__image:has(img[data-ec-original-aspect]){aspect-ratio:auto}
.ec-main .ec-stories-index .ec-story-card__image img[data-ec-original-aspect]{height:auto;object-fit:contain}
.ec-main .ec-stories-index .ec-story-card__copy{padding:18px 0 0}
.ec-main .ec-stories-index .ec-story-card__meta{font:500 .68rem/1.6 "DM Sans",sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#53685b;margin:0 0 10px}
.ec-main .ec-stories-index .ec-story-card h2{font:500 clamp(1.65rem,2.5vw,2.1rem)/1.13 var(--atlas-display,Georgia,serif);letter-spacing:-.025em;margin:0 0 14px;text-wrap:pretty}
.ec-main .ec-stories-index .ec-story-card h2 a{color:#183f37;text-decoration:none}
.ec-main .ec-stories-index .ec-story-card__summary{font-size:.95rem;line-height:1.7;color:#506254;margin:0 0 18px}
.ec-main .ec-stories-index .ec-story-card__read{display:inline-flex;align-items:center;gap:22px;padding:6px 0;border-bottom:1px solid #9aab9a;font-size:.83rem;font-weight:500;text-decoration:none;color:#244a40;min-height:36px}
.ec-main .ec-stories-index .ec-story-card__save{position:absolute;right:12px;top:12px;display:grid;place-items:center;min-width:44px;width:44px;height:44px;padding:10px;border:1px solid #c6cebd;border-radius:50%;background:#fbfaf3;color:#244a40;cursor:pointer;box-shadow:none}
.ec-main .ec-stories-index .ec-story-card__save[aria-pressed=true]{background:#244a40;color:#fff}
.ec-main .ec-stories-index .ec-story-card__save[aria-pressed=true] svg{fill:currentColor}
.ec-main .ec-stories-index .ec-story-card__photo-context{font-size:.68rem;line-height:1.4;color:#53685b;margin:7px 0 0}
.ec-main .ec-stories-index .ec-story-card--text{border-top:1px solid #9aab9a;padding-top:8px}
.ec-main .ec-stories-index .ec-story-card--text .ec-story-card__meta{padding-right:54px;min-height:34px}
.ec-main .ec-stories-index .ec-story-card:first-child:not(.ec-story-card--text){grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;gap:36px;align-items:center;border-bottom:1px solid #c5cebf;padding-bottom:32px}
.ec-main .ec-stories-index .ec-story-card:first-child:not(.ec-story-card--text) .ec-story-card__copy{padding:0 24px 0 0}
.ec-main .ec-stories-index .ec-story-card:first-child:not(.ec-story-card--text) h2{font-size:clamp(2rem,3.7vw,3.2rem)}
.ec-main .ec-stories-index .ec-story-card:first-child:not(.ec-story-card--text) .ec-story-card__save{right:calc(100% / 2.1 + 30px)}
.ec-main .ec-stories-index :is(a,button,summary,input,select):focus-visible{outline:2px solid #255a46;outline-offset:4px}
@media(max-width:60rem){
 .ec-main .ec-stories-index .ec-stories-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 24px}
 .ec-main .ec-stories-index .ec-story-card:first-child:not(.ec-story-card--text){gap:24px}
 .ec-main .ec-stories-index .ec-story-card:first-child:not(.ec-story-card--text) .ec-story-card__copy{padding:0}
}
@media(max-width:40rem){
 .ec-main .ec-guide-directory.ec-stories-index{padding-top:20px}
 .ec-main .ec-stories-index .ec-guide-directory__heading{margin-bottom:18px}
 .ec-main .ec-stories-index .ec-guide-directory__heading h1{font-size:2.5rem;margin:10px 0 12px}
 .ec-main .ec-stories-index .ec-guide-directory__heading>div>p:last-child{font-size:.94rem;line-height:1.55}
 .ec-main .ec-stories-index .ec-stories-filters{margin-bottom:16px}
 .ec-main .ec-stories-index .ec-guide-directory__results-heading{margin-bottom:16px;font-size:.72rem}
 .ec-main .ec-stories-index .ec-stories-grid{display:block}
 .ec-main .ec-stories-index .ec-story-card,.ec-main .ec-stories-index .ec-story-card:first-child:not(.ec-story-card--text){display:block;margin:0 0 30px;padding:0 0 28px;border-bottom:1px solid #c5cebf}
 .ec-main .ec-stories-index .ec-story-card__image{aspect-ratio:3/2}
 .ec-main .ec-stories-index .ec-story-card__copy,.ec-main .ec-stories-index .ec-story-card:first-child:not(.ec-story-card--text) .ec-story-card__copy{padding:16px 0 0}
 .ec-main .ec-stories-index .ec-story-card h2,.ec-main .ec-stories-index .ec-story-card:first-child:not(.ec-story-card--text) h2{font-size:2rem}
 .ec-main .ec-stories-index .ec-story-card:first-child:not(.ec-story-card--text) .ec-story-card__save{right:12px}
 .ec-main .ec-stories-index .ec-story-card__summary{font-size:.94rem;line-height:1.65}
}

/* Match the shared save-state updater and retain destination shortcuts. */
.ec-main .ec-stories-index .ec-story-card__save .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.ec-main .ec-stories-index .ec-story-card__meta a{color:inherit;text-decoration:none}
.ec-main .ec-stories-index .ec-story-card__meta a:hover{text-decoration:underline}
.ec-public #main-content .ec-stories-index .ec-guide-directory__results-heading{padding:0;border:0;margin:0 0 16px}
@media(max-width:40rem){
 .ec-public #main-content .ec-stories-index .ec-guide-directory__heading{margin-bottom:14px}
 .ec-public #main-content .ec-stories-index .ec-guide-directory__heading h1{margin:6px 0 10px}
 .ec-public #main-content .ec-stories-index .ec-guide-directory__results-heading{margin:0 0 12px}
}

/* Keep article headings aligned when a photograph needs no location caption. */
.ec-main .ec-stories-index .ec-story-card__visual:not(:has(.ec-story-card__photo-context)){padding-bottom:calc(.952rem + 7px)}

/* Single-photo stories follow the photograph's proportions, without a fixed-height box. */
html body.ec-public #main-content .ec-guide-reading .ec-gallery--1 .ec-gallery__mosaic {height:auto!important;max-height:none!important;aspect-ratio:auto!important;grid-template-rows:auto;}
html body.ec-public #main-content .ec-guide-reading .ec-gallery--1 .ec-gallery__link {height:auto!important;aspect-ratio:auto!important;}
html body.ec-public #main-content .ec-guide-reading .ec-gallery--1 .ec-gallery__link img {width:100%;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;transform:none;}

/* Retain full frames for any photograph with a restrictive presentation record. */
html body.ec-public #main-content .ec-stories-index .ec-story-card__image:has(img[data-ec-original-aspect]){position:relative;aspect-ratio:4/3;}
html body.ec-public #main-content .ec-stories-index .ec-story-card__image img[data-ec-original-aspect]{position:absolute;inset:0;width:100%;height:100%!important;aspect-ratio:auto!important;object-fit:contain!important;transform:none;}
@media(max-width:40rem){html body.ec-public #main-content .ec-stories-index .ec-story-card__image:has(img[data-ec-original-aspect]){aspect-ratio:3/2;}}

/* Reviewed Commons card previews fill the frame; retain each subject's focal point. */
html body.ec-public #main-content .ec-stories-index .ec-story-card__image[data-story-crop] img {object-fit:cover!important;}
html body.ec-public #main-content .ec-stories-index .ec-story-card__image[data-story-crop="142"] img {object-position:65% 95%;}
html body.ec-public #main-content .ec-stories-index .ec-story-card__image[data-story-crop="143"] img {object-position:40% 95%;}
html body.ec-public #main-content .ec-stories-index .ec-story-card__image[data-story-crop="145"] img {object-position:50% 50%;}
html body.ec-public #main-content .ec-stories-index .ec-story-card__image[data-story-crop="146"] img {object-position:50% 35%;}
@media(max-width:700px){html body.ec-public #main-content .ec-stories-index .ec-story-card__image[data-story-crop="146"] img {object-position:50% 35%;}}

/* Stretch regular Stories cards within each row so reading links share a baseline. */
@media(min-width:40.001rem){
 .ec-main .ec-stories-index .ec-stories-grid{align-items:stretch}
 .ec-main .ec-stories-index .ec-story-card:is(:not(:first-child),.ec-story-card--text){display:flex;flex-direction:column}
 .ec-main .ec-stories-index .ec-story-card:is(:not(:first-child),.ec-story-card--text) .ec-story-card__copy{display:flex;flex:1;flex-direction:column}
 .ec-main .ec-stories-index .ec-story-card:is(:not(:first-child),.ec-story-card--text) .ec-story-card__read{align-self:flex-start;margin-top:auto}
}

/* Keep the beach and plate nearest their source edge in these two exact desktop previews. */
@media(min-width:40.001rem){
 html body.ec-public #main-content .ec-stories-index .ec-story-card[data-story-id="25"] .ec-story-card__image img:is([src*="/AdobeStock_451628508."],[src*="/AdobeStock_451628508-"]){object-position:left center;}
 html body.ec-public #main-content .ec-stories-index .ec-story-card[data-story-id="24"] .ec-story-card__image img:is([src*="/AdobeStock_310929531."],[src*="/AdobeStock_310929531-"]){object-position:right center;}
}

/* Exact partner photo previews only; source files and gallery-dialog originals stay intact.
   Fig & Oak: omit 7 black source rows. M&D: keep top 716px, above the baked-in counter at y720. */
html body.ec-public #main-content :is(
 .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__link,
 .ec33-card__visual, .ec-discover-card__media, .ec-bestof-card__image, .ec-card__media
):has(img[src*="/partner-landscape01/landscape-villa-fig-oak-d77571afaa828b6a61c19cb1833e363b/"]) {
  --tc-partner-photo-aspect: 1242 / 825;
  --tc-partner-photo-height: 100.8484848485%;
}
html body.ec-public #main-content :is(
 .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__link,
 .ec33-card__visual, .ec-discover-card__media, .ec-bestof-card__image, .ec-card__media
):has(img[src*="/partner-landscape01/landscape-villa-md-dugi-rat-2f405bbf9b0a02c90723e55945694872/"]) {
  --tc-partner-photo-aspect: 1200 / 716;
  --tc-partner-photo-height: 111.7318435754%;
}
html body.ec-public #main-content :is(
 .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__link,
 .ec33-card__visual, .ec-discover-card__media, .ec-bestof-card__image, .ec-card__media
):has(img:is([src*="/partner-landscape01/landscape-villa-fig-oak-d77571afaa828b6a61c19cb1833e363b/"], [src*="/partner-landscape01/landscape-villa-md-dugi-rat-2f405bbf9b0a02c90723e55945694872/"])) {
  display: block;
  position: relative !important;
  overflow: hidden !important;
}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__link:has(img:is([src*="/partner-landscape01/landscape-villa-fig-oak-d77571afaa828b6a61c19cb1833e363b/"], [src*="/partner-landscape01/landscape-villa-md-dugi-rat-2f405bbf9b0a02c90723e55945694872/"])) {
  height: auto !important;
  aspect-ratio: var(--tc-partner-photo-aspect) !important;
}
html body.ec-public #main-content :is(
 .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__link,
 .ec33-card__visual, .ec-discover-card__media, .ec-bestof-card__image, .ec-card__media
) img:is([src*="/partner-landscape01/landscape-villa-fig-oak-d77571afaa828b6a61c19cb1833e363b/"], [src*="/partner-landscape01/landscape-villa-md-dugi-rat-2f405bbf9b0a02c90723e55945694872/"]) {
  position: absolute !important;
  inset: 0 auto auto 0;
  display: block;
  width: 100% !important;
  height: var(--tc-partner-photo-height) !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center top !important;
  transform: none !important;
}

/* Existing full-frame commitment: exact five Adobe gallery assets only.
   Native metadata pins in ResponsiveMedia must mark the image first.
   Keep the current component dimensions; preserve the whole photo within them. */
html body.ec-public #main-content#main-content img[data-ec-original-aspect="true"]:is(
  [src$="/AdobeStock_406851553.jpeg"],
  [src$="/AdobeStock_340223188.jpeg"],
  [src$="/AdobeStock_417111367.jpeg"],
  [src$="/AdobeStock_171954383.jpeg"],
  [src$="/AdobeStock_186331834.jpeg"]
) {
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

/* Native Saved/chooser/trip images are created in JS without PHP markers. */
html body.ec-public #main-content#main-content :is(.ec-card__media img,.ec-saved-share__picture img,img.ec-trip-item__image):is(
  [src$="/2026/10/AdobeStock_406851553.jpeg"],
  [src$="/2026/10/AdobeStock_340223188.jpeg"],
  [src$="/2026/10/AdobeStock_417111367.jpeg"],
  [src$="/2026/10/AdobeStock_171954383.jpeg"],
  [src$="/2026/10/AdobeStock_186331834.jpeg"]
) {object-fit:contain!important;object-position:center!important;transform:none!important;}

/* Give these five full-frame portraits a portrait panel in discovery and Saved. */
html body.ec-public #main-content#main-content :is(
 .ec-destination29-grid--directory .ec-destination29-card__image,
 #ec-public-search.ec-portal-search[data-public-search] :is(.ec-bestof-card__image,.ec-portal-search__destination-image),
 .ec-saved-page .ec-saved-card.ec-card--destination .ec-card__media
):has(img:is(
 [src$="/2026/10/AdobeStock_406851553.jpeg"],
 [src$="/2026/10/AdobeStock_340223188.jpeg"],
 [src$="/2026/10/AdobeStock_417111367.jpeg"],
 [src$="/2026/10/AdobeStock_171954383.jpeg"],
 [src$="/2026/10/AdobeStock_186331834.jpeg"]
)) {
 position:relative!important;display:block;width:min(100%,18rem)!important;
 height:auto!important;min-height:0!important;aspect-ratio:2/3!important;
 margin-inline:auto!important;justify-self:center;flex:0 0 auto;
}
html body.ec-public #main-content#main-content :is(
 .ec-destination29-grid--directory .ec-destination29-card__image,
 #ec-public-search.ec-portal-search[data-public-search] :is(.ec-bestof-card__image,.ec-portal-search__destination-image),
 .ec-saved-page .ec-saved-card.ec-card--destination .ec-card__media
):has(img:is(
 [src$="/2026/10/AdobeStock_406851553.jpeg"],
 [src$="/2026/10/AdobeStock_340223188.jpeg"],
 [src$="/2026/10/AdobeStock_417111367.jpeg"],
 [src$="/2026/10/AdobeStock_171954383.jpeg"],
 [src$="/2026/10/AdobeStock_186331834.jpeg"]
)) img {
 position:absolute!important;inset:0;display:block;width:100%!important;
 height:100%!important;min-height:0!important;max-height:none!important;
 object-fit:contain!important;object-position:center!important;transform:none!important;
}

/* Five exact directory portraits: reviewed viewport crops, originals preserved.
   Full frames remain in galleries, search, Saved and other components. */
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="68"]
.ec-destination29-card__image:has(> img[src$="/2026/10/AdobeStock_406851553.jpeg"]),
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="83"]
.ec-destination29-card__image:has(> img[src$="/2026/10/AdobeStock_340223188.jpeg"]),
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="85"]
.ec-destination29-card__image:has(> img[src$="/2026/10/AdobeStock_417111367.jpeg"]),
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="100"]
.ec-destination29-card__image:has(> img[src$="/2026/10/AdobeStock_171954383.jpeg"]),
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="108"]
.ec-destination29-card__image:has(> img[src$="/2026/10/AdobeStock_186331834.jpeg"]) {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 4 / 3 !important;
  margin-inline: 0 !important;
  overflow: hidden !important;
}

html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="68"]
.ec-destination29-card__image > img[src$="/2026/10/AdobeStock_406851553.jpeg"] {
  object-fit: cover !important;
  object-position: 50% 5% !important;
  transform: none !important;
}

html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="83"]
.ec-destination29-card__image > img[src$="/2026/10/AdobeStock_340223188.jpeg"] {
  object-fit: cover !important;
  object-position: 50% 5% !important;
  transform: none !important;
}

html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="85"]
.ec-destination29-card__image > img[src$="/2026/10/AdobeStock_417111367.jpeg"] {
  object-fit: cover !important;
  object-position: 50% 36% !important;
  transform: none !important;
}

html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="100"]
.ec-destination29-card__image > img[src$="/2026/10/AdobeStock_171954383.jpeg"] {
  object-fit: cover !important;
  object-position: 50% 20% !important;
  transform: none !important;
}

html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="108"]
.ec-destination29-card__image > img[src$="/2026/10/AdobeStock_186331834.jpeg"] {
  object-fit: cover !important;
  object-position: 50% 20% !important;
  transform: none !important;
}

@media (max-width: 30rem) {
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="68"]
.ec-destination29-card__image:has(> img[src$="/2026/10/AdobeStock_406851553.jpeg"]),
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="83"]
.ec-destination29-card__image:has(> img[src$="/2026/10/AdobeStock_340223188.jpeg"]),
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="85"]
.ec-destination29-card__image:has(> img[src$="/2026/10/AdobeStock_417111367.jpeg"]),
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="100"]
.ec-destination29-card__image:has(> img[src$="/2026/10/AdobeStock_171954383.jpeg"]),
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="108"]
.ec-destination29-card__image:has(> img[src$="/2026/10/AdobeStock_186331834.jpeg"]) { aspect-ratio: 3 / 2 !important; }
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="100"]
.ec-destination29-card__image > img[src$="/2026/10/AdobeStock_171954383.jpeg"] { object-position: 50% 28% !important; }
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="108"]
.ec-destination29-card__image > img[src$="/2026/10/AdobeStock_186331834.jpeg"] { object-position: 50% 28% !important; }
}

/* Poljane Opatija: retain the church at the right edge in its standard card. */
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="170"]
.ec-destination29-card__image > img[src$="/2026/10/ToCroatia_170_poljane_opatija_Commons.jpg"] {
  object-position: 100% 50% !important;
}

/* Đakovo directory card: retain both cathedral tips and the original sky above. */
html body.ec-public #main-content#main-content#main-content
.ec-destination29-grid--directory
.ec-destination29-card[data-entity-type="destination"][data-entity-id="76"]
.ec-destination29-card__image > img[src$="/2026/09/AdobeStock_347167940-300x253.jpeg"] {
  object-position: 50% 0% !important;
}

/* filter-modern.css */
/* PORTAL20 — public exploration controls. Native GET forms and dates retain their behavior. */
.ec-public #main-content {
  --filter-ink:#153641; --filter-muted:#5b6c71; --filter-blue:#214dde;
  --filter-line:#dfe5e1; --filter-soft:#f4f6f2; --filter-white:#fffefa;
}

/* One calm search surface; the results remain the main visual content. */
.ec-public #main-content :is(.ec-discover-experience__form,.ec-event-directory__form,.ec-portal-search__form,.ec-dest-explorer__tools,.ec-guide-directory__form,.ec-filter-bar) {
  padding:24px; border:1px solid var(--filter-line); border-radius:26px;
  background:var(--filter-white); color:var(--filter-ink); box-shadow:0 8px 30px #14374006;
  gap:18px; margin-block:0; min-width:0; max-width:100%; box-sizing:border-box;
}
.ec-public #main-content :is(.ec-discover-experience__main-filters,.ec-event-directory__form) {align-items:end;gap:18px}
.ec-public #main-content .ec-discover-experience__main-filters {grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}
.ec-public #main-content :is(.ec-dest-explorer__tools,.ec-guide-directory__form,.ec-portal-search__form) {align-items:end}
.ec-public #main-content :is(.ec-dest-explorer__type,.ec-guide-directory__destination) {
  display:block; flex:0 1 270px; min-width:0; padding:0; border:0; order:initial;
}
.ec-public #main-content :is(.ec-discover-experience__select>span,.ec-event-directory__control>span,.ec-event-directory__query>label,.ec-portal-search__input>label,.ec-dest-explorer__search>label,.ec-dest-explorer__type>span,.ec-guide-directory__input>label,.ec-guide-directory__destination>span,.ec-filter-bar>label>span,.ec-saved-sort>label) {
  display:block; margin:0 0 9px; color:var(--filter-ink); font:600 12px/1.4 "DM Sans",Arial,sans-serif;
  letter-spacing:.015em; text-transform:none;
}
.ec-public #main-content .ec-discover-experience__select {gap:0}

/* Search fields form a single rounded control including the search icon. */
.ec-public #main-content :is(.ec-event-directory__field,.ec-portal-search__field,.ec-dest-explorer__search>div,.ec-guide-directory__field) {
  display:flex; align-items:center; gap:11px; width:100%; min-width:0; min-height:52px;
  padding:0 16px; border:1px solid var(--filter-line); border-radius:14px;
  background:var(--filter-soft); box-sizing:border-box;
}
.ec-public #main-content :is(.ec-event-directory__field,.ec-portal-search__field,.ec-dest-explorer__search>div,.ec-guide-directory__field) svg {
  display:block; flex:0 0 20px; width:20px; height:20px; color:var(--filter-muted);
}
.ec-public #main-content :is(.ec-event-directory__field,.ec-portal-search__field,.ec-dest-explorer__search>div,.ec-guide-directory__field) input[type=search] {
  appearance:none; -webkit-appearance:none; display:block; width:100%; min-width:0; min-height:50px; height:50px;
  padding:10px 0; border:0; border-radius:0; background:transparent; box-shadow:none;
  color:var(--filter-ink); font:400 16px/1.4 "DM Sans",Arial,sans-serif; box-sizing:border-box;
}
.ec-public #main-content :is(.ec-event-directory__field,.ec-portal-search__field,.ec-dest-explorer__search>div,.ec-guide-directory__field):focus-within {
  border-color:var(--filter-blue); background:white; box-shadow:0 0 0 3px #214dde12;
}
.ec-public #main-content :is(.ec-event-directory__field,.ec-portal-search__field,.ec-dest-explorer__search>div,.ec-guide-directory__field) input:focus-visible {
  outline:2px solid transparent; outline-offset:0;
}
.ec-public #main-content :is(.ec-event-directory__field,.ec-portal-search__field,.ec-dest-explorer__search>div,.ec-guide-directory__field) input::placeholder {color:#63747a;opacity:1}

/* Native selects retain their keyboard and mobile picker behavior. */
.ec-public #main-content :is(.ec-discover-experience__form,.ec-event-directory__form,.ec-dest-explorer__tools,.ec-guide-directory__form,.ec-filter-bar,.ec-filter-dialog,.ec-business-context,.ec-saved-sort) select,
.ec-public #main-content .ec-event-directory__dates input[type=date] {
  display:block; width:100%; min-width:0; max-width:100%; min-height:52px; height:52px;
  padding:12px 42px 12px 16px; border:1px solid var(--filter-line); border-radius:14px;
  background-color:var(--filter-soft); box-shadow:none; color:var(--filter-ink);
  font:400 16px/1.4 "DM Sans",Arial,sans-serif; box-sizing:border-box;
}
.ec-public #main-content :is(.ec-discover-experience__form,.ec-event-directory__form,.ec-dest-explorer__tools,.ec-guide-directory__form,.ec-filter-bar,.ec-filter-dialog,.ec-business-context,.ec-saved-sort) select {
  appearance:none; -webkit-appearance:none; cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m4 6 4 4 4-4' stroke='%23153641' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 16px center; background-size:16px;
}
.ec-public #main-content .ec-event-directory__dates input[type=date] {padding-right:12px;appearance:auto;-webkit-appearance:auto}
.ec-public #main-content .ec-event-directory__dates input[type=date]::-webkit-date-and-time-value {text-align:left}
.ec-public #main-content .ec-event-directory__dates input[type=date]::-webkit-calendar-picker-indicator {cursor:pointer;padding:4px;margin:0;opacity:.7}
.ec-public #main-content :is(.ec-discover-experience__form,.ec-event-directory__form,.ec-dest-explorer__tools,.ec-guide-directory__form,.ec-filter-bar,.ec-filter-dialog,.ec-business-context,.ec-saved-sort) select:focus-visible,
.ec-public #main-content .ec-event-directory__dates input:focus-visible {
  outline:3px solid #214dde2b; outline-offset:2px; border-color:var(--filter-blue); background-color:white;
}

/* The primary action is unmistakable, consistent and comfortable to touch. */
.ec-public #main-content :is(button.ec-discover-experience__button,.ec-event-directory__submit,.ec-portal-search__submit,.ec-dest-explorer__submit,.ec-guide-directory__submit,.ec-filter-bar>button[type=submit],.ec-business-context button[type=submit]) {
  display:inline-flex; align-items:center; justify-content:center; gap:20px; flex-shrink:0;
  min-height:52px; max-width:100%; padding:14px 25px; border:1px solid var(--filter-blue); border-radius:999px;
  background:var(--filter-blue); color:white; box-shadow:0 5px 14px #214dde17;
  font:600 14px/1.35 "DM Sans",Arial,sans-serif; white-space:normal; cursor:pointer;
}
.ec-public #main-content :is(button.ec-discover-experience__button,.ec-event-directory__submit,.ec-portal-search__submit,.ec-dest-explorer__submit,.ec-guide-directory__submit,.ec-filter-bar>button[type=submit],.ec-business-context button[type=submit]):hover {
  background:#173ec3; border-color:#173ec3;
}
.ec-public #main-content :is(.ec-discover-experience__form,.ec-event-directory__form,.ec-portal-search__form,.ec-dest-explorer__tools,.ec-guide-directory__form,.ec-business-context) button:disabled {
  opacity:.6; cursor:wait; box-shadow:none;
}

/* Filter families share pill geometry, balanced spacing and clear selection. */
.ec-public #main-content :is(.ec-event-directory__presets,.ec-portal-search__tabs,.ec-dest-explorer__filters,.ec-guide-directory__tabs,.ec-guide-directory__occasions>div,.ec-discover-experience__presets>div,.ec-discover-experience__chips,.ec-saved-tabs) {
  display:flex; flex-wrap:wrap; align-items:center; gap:10px; border:0; padding:0; background:none;
}
.ec-public #main-content :is(.ec-portal-search__tabs,.ec-dest-explorer__filters,.ec-guide-directory__tabs,.ec-discover-experience__chips,.ec-saved-tabs) {margin-top:20px}
.ec-public #main-content .ec-event-directory__presets {margin-bottom:22px}
.ec-public #main-content :is(.ec-event-directory__preset,.ec-portal-search__tab,.ec-dest-explorer__chip,.ec-guide-directory__tab,.ec-guide-directory__occasion,.ec-discover-experience__presets a,.ec-discover-experience__chips>a,.ec-saved-tabs>button) {
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  min-height:46px; max-width:100%; padding:11px 17px; margin:0; border:1px solid var(--filter-line); border-radius:999px;
  background:var(--filter-white); color:var(--filter-ink); --dx-link:var(--filter-ink);
  font:500 13px/1.4 "DM Sans",Arial,sans-serif; text-decoration:none; cursor:pointer; box-shadow:none;
}
.ec-public #main-content :is(.ec-event-directory__preset,.ec-portal-search__tab,.ec-dest-explorer__chip,.ec-guide-directory__tab,.ec-guide-directory__occasion,.ec-discover-experience__presets a,.ec-discover-experience__chips>a,.ec-saved-tabs>button):hover {
  border-color:#9daedb; background:#eef2ff; color:#214dde; --dx-link:#214dde;
}
.ec-public #main-content :is(.ec-event-directory__preset,.ec-portal-search__tab,.ec-dest-explorer__chip,.ec-guide-directory__tab,.ec-guide-directory__occasion,.ec-discover-experience__presets a)[aria-current=true],
.ec-public #main-content .ec-saved-tabs>button[aria-selected=true] {
  background:var(--filter-blue); border-color:var(--filter-blue); color:white; --dx-link:white;
  box-shadow:0 5px 12px #214dde13;
}
.ec-public #main-content :is(.ec-event-directory__preset,.ec-portal-search__tab,.ec-dest-explorer__chip,.ec-guide-directory__tab,.ec-guide-directory__occasion)>span,
.ec-public #main-content .ec-saved-tabs>button>[data-ec-saved-count] {
  display:inline-flex; align-items:center; justify-content:center; min-width:24px; min-height:24px;
  padding:2px 7px; border-radius:999px; background:#edf0eb; color:#526970;
  font:500 11px/1.3 "DM Sans",Arial,sans-serif; font-variant-numeric:tabular-nums;
}
.ec-public #main-content :is(.ec-event-directory__preset,.ec-portal-search__tab,.ec-dest-explorer__chip,.ec-guide-directory__tab,.ec-guide-directory__occasion)[aria-current=true]>span,
.ec-public #main-content .ec-saved-tabs>button[aria-selected=true]>[data-ec-saved-count] {background:#ffffff26;color:white}
.ec-public #main-content :is(.ec-event-directory__date-link,.ec-event-directory__clear,.ec-portal-search__clear,.ec-dest-explorer__clear,.ec-guide-directory__clear,.ec-discover-experience__clear,.ec-discover-experience__apply-row>a) {
  display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:44px;
  padding:9px 10px; color:#3f5b65; --dx-link:#3f5b65; background:transparent; border:0;
  font:500 13px/1.4 "DM Sans",Arial,sans-serif; text-decoration:underline; text-underline-offset:4px;
}
.ec-public #main-content .ec-discover-experience__chips>a.ec-discover-experience__clear {background:transparent;border-color:transparent}
.ec-public #main-content :is(.ec-guide-directory__occasions,.ec-discover-experience__presets) {gap:12px;margin-block:22px}
.ec-public #main-content :is(.ec-guide-directory__occasions>p,.ec-discover-experience__presets>span) {font:600 12px/1.45 "DM Sans",Arial,sans-serif;color:var(--filter-muted)}

/* Discover: optional refinements read as choices, not a spreadsheet of boxes. */
.ec-public #main-content .ec-discover-experience__quick-filters {gap:10px;margin-top:18px}
.ec-public #main-content :is(.ec-discover-experience__quick-filters,.ec-discover-experience__check-grid) label,
.ec-public #main-content .ec-filter-bar .ec-checkbox {
  display:inline-flex; align-items:center; gap:9px; min-height:44px; padding:10px 14px; margin:0;
  border:1px solid var(--filter-line); border-radius:999px; background:#f8f9f5; color:var(--filter-ink);
  font:500 13px/1.4 "DM Sans",Arial,sans-serif; cursor:pointer; box-sizing:border-box;
}
.ec-public #main-content :is(.ec-discover-experience__quick-filters,.ec-discover-experience__check-grid) label:has(input:checked),
.ec-public #main-content .ec-filter-bar .ec-checkbox:has(input:checked) {background:#eef2ff;border-color:#a3b5ef;color:#1c43c0}
.ec-public #main-content :is(.ec-discover-experience__quick-filters,.ec-discover-experience__check-grid) label:has(input:focus-visible),
.ec-public #main-content .ec-filter-bar .ec-checkbox:has(input:focus-visible) {outline:3px solid #214dde47;outline-offset:2px}
.ec-public #main-content :is(.ec-discover-experience__form,.ec-filter-bar,.ec-filter-dialog) input[type=checkbox] {
  appearance:auto; -webkit-appearance:checkbox; width:17px; height:17px; min-height:17px; margin:0; padding:0;
  accent-color:var(--filter-blue); flex:none; cursor:pointer;
}
.ec-public #main-content .ec-discover-experience__advanced {margin-top:18px;border-top:1px solid var(--filter-line);padding-top:16px}
.ec-public #main-content .ec-discover-experience__advanced>summary {
  display:flex; align-items:center; justify-content:space-between; gap:28px; list-style:none; width:fit-content;
  min-height:46px; padding:10px 17px; border:1px solid var(--filter-line); border-radius:999px;
  background:white; color:var(--filter-ink); font:600 13px/1.4 "DM Sans",Arial,sans-serif; cursor:pointer;
}
.ec-public #main-content .ec-discover-experience__advanced>summary::-webkit-details-marker {display:none}
.ec-public #main-content .ec-discover-experience__advanced>summary>span {font-size:18px;font-weight:400;line-height:1}
.ec-public #main-content .ec-discover-experience__advanced[open]>summary {border-color:#9eb0e8;color:var(--filter-blue);background:#eef2ff}
.ec-public #main-content .ec-discover-experience__advanced[open]>summary>span {transform:rotate(45deg)}
.ec-public #main-content .ec-discover-experience__filter-note {margin:18px 0 2px;font-size:13px;line-height:1.6;color:var(--filter-muted)}
.ec-public #main-content .ec-discover-experience__advanced-fields {gap:22px;padding:18px 0 24px}
.ec-public #main-content .ec-discover-experience__filter-group {padding-top:20px;border-color:var(--filter-line)}
.ec-public #main-content .ec-discover-experience__filter-group legend {padding-right:12px;font:600 13px/1.4 "DM Sans",Arial,sans-serif;color:var(--filter-ink)}
.ec-public #main-content .ec-discover-experience__check-grid {gap:9px;padding-top:5px}
.ec-public #main-content .ec-discover-experience__apply-row {gap:15px;padding:0}
.ec-public #main-content .ec-filter-dialog {max-width:min(780px,calc(100% - 32px));border:1px solid var(--filter-line);border-radius:24px;padding:25px;color:var(--filter-ink);background:var(--filter-white);box-shadow:0 28px 90px #0c263642}
.ec-public #main-content .ec-filter-dialog::backdrop {background:#102c4969;backdrop-filter:blur(3px)}

/* Dates are a compact second row with the same control rhythm. */
.ec-public #main-content .ec-event-directory__form {grid-template-columns:minmax(0,1.45fr) repeat(3,minmax(0,1fr))}
.ec-public #main-content .ec-event-directory__dates {
  display:grid; grid-template-columns:repeat(2,minmax(0,165px)) minmax(130px,1fr) auto auto;
  align-items:end; gap:14px 18px; border-top:1px solid var(--filter-line); padding-top:20px; margin-top:2px;
}
.ec-public #main-content .ec-event-directory__dates>.ec-event-directory__control {min-width:0}
.ec-public #main-content .ec-event-directory__zone {min-width:0;margin:0;padding:0 4px 8px;font-size:11px;line-height:1.65;color:var(--filter-muted);order:initial}
.ec-public #main-content .ec-event-directory__dates .ec-event-directory__clear {padding-inline:4px;min-height:52px}

/* Homepage area refinement stays light and consistent with directory controls. */
.ec-public #main-content .ec-business-context {background:transparent;border:0;padding:0;margin-block:22px 26px;gap:14px}
.ec-public #main-content .ec-business-context form {
  display:grid;grid-template-columns:auto minmax(200px,330px) auto;align-items:center;gap:13px;
  max-width:100%;width:fit-content;padding:12px 14px 12px 20px;border:1px solid var(--filter-line);border-radius:22px;background:var(--filter-white);
}
.ec-public #main-content .ec-business-context form>label {width:auto;min-width:0;font:600 13px/1.4 "DM Sans",Arial,sans-serif;color:var(--filter-ink);margin:0}
.ec-public #main-content .ec-business-context select {max-width:330px}
.ec-public #main-content .ec-saved-sort {gap:10px;align-items:center}
.ec-public #main-content .ec-saved-sort>label {margin:0}
.ec-public #main-content .ec-saved-sort select {width:auto;min-width:175px;min-height:46px;height:46px;padding-block:9px}

/* Focus remains visible without moving the layout. */
.ec-public #main-content :is(.ec-discover-experience__form,.ec-event-directory__form,.ec-portal-search__form,.ec-dest-explorer__tools,.ec-guide-directory__form,.ec-event-directory__presets,.ec-portal-search__tabs,.ec-dest-explorer__filters,.ec-guide-directory__tabs,.ec-guide-directory__occasions,.ec-discover-experience__presets,.ec-discover-experience__chips,.ec-saved-tabs,.ec-business-context) :is(a,button,summary):focus-visible {
  outline:3px solid #214dde6b;outline-offset:4px;
}
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  .ec-public #main-content :is(.ec-event-directory__preset,.ec-portal-search__tab,.ec-dest-explorer__chip,.ec-guide-directory__tab,.ec-guide-directory__occasion,.ec-discover-experience__presets a,.ec-saved-tabs>button) {transition:background-color .18s ease,border-color .18s ease,color .18s ease}
}
@media (max-width:1023px) {
  .ec-public #main-content .ec-event-directory__form {grid-template-columns:repeat(3,minmax(0,1fr))}
  .ec-public #main-content .ec-event-directory__query {grid-column:1/-1}
  .ec-public #main-content .ec-event-directory__dates {grid-template-columns:repeat(2,minmax(0,1fr)) auto auto}
  .ec-public #main-content .ec-event-directory__zone {grid-column:1/-1;grid-row:2;padding:0}
  .ec-public #main-content :is(.ec-dest-explorer__type,.ec-guide-directory__destination) {flex-basis:230px}
}
@media (max-width:767px) {
  .ec-public #main-content :is(.ec-discover-experience__form,.ec-event-directory__form,.ec-portal-search__form,.ec-dest-explorer__tools,.ec-guide-directory__form,.ec-filter-bar) {padding:18px;border-radius:22px;gap:15px}
  .ec-public #main-content .ec-discover-experience__main-filters {grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
  .ec-public #main-content .ec-discover-experience__main-filters>button {grid-column:1/-1;width:100%}
  .ec-public #main-content :is(.ec-dest-explorer__tools,.ec-guide-directory__form) {display:grid;grid-template-columns:minmax(0,1fr) auto}
  .ec-public #main-content :is(.ec-dest-explorer__search,.ec-guide-directory__input) {grid-column:1/-1}
  .ec-public #main-content :is(.ec-dest-explorer__type,.ec-guide-directory__destination) {border:0;padding:0;display:block;min-width:0;order:initial}
  .ec-public #main-content :is(.ec-dest-explorer__submit,.ec-guide-directory__submit) {grid-column:2;align-self:end;padding-inline:21px}
  .ec-public #main-content :is(.ec-dest-explorer__tools,.ec-guide-directory__form):not(:has(select))>button {grid-column:1/-1}
  .ec-public #main-content .ec-event-directory__form {grid-template-columns:repeat(2,minmax(0,1fr))}
  .ec-public #main-content .ec-event-directory__destination {grid-column:1/-1}
  .ec-public #main-content .ec-event-directory__dates {grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
  .ec-public #main-content .ec-event-directory__zone {grid-row:2;grid-column:1/-1;font-size:11px}
  .ec-public #main-content .ec-event-directory__submit {grid-row:3;grid-column:1/-1;width:100%}
  .ec-public #main-content .ec-event-directory__clear {grid-row:4;grid-column:1/-1;min-height:44px}
  .ec-public #main-content :is(.ec-event-directory__presets,.ec-portal-search__tabs,.ec-dest-explorer__filters,.ec-guide-directory__tabs,.ec-guide-directory__occasions>div,.ec-discover-experience__presets>div,.ec-discover-experience__chips,.ec-saved-tabs) {gap:8px}
  .ec-public #main-content :is(.ec-event-directory__preset,.ec-portal-search__tab,.ec-dest-explorer__chip,.ec-guide-directory__tab,.ec-guide-directory__occasion,.ec-discover-experience__presets a,.ec-saved-tabs>button) {padding:10px 13px;font-size:12px;gap:8px;min-height:44px}
  .ec-public #main-content :is(.ec-event-directory__date-link,.ec-dest-explorer__chip--selected,.ec-portal-search__clear,.ec-guide-directory__clear) {margin-left:0}
  .ec-public #main-content .ec-discover-experience__advanced-fields {grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  .ec-public #main-content .ec-business-context form {width:100%;grid-template-columns:minmax(0,1fr) auto;padding:17px;box-sizing:border-box}
  .ec-public #main-content .ec-business-context form>label {grid-column:1/-1}
  .ec-public #main-content .ec-business-context select {width:100%;max-width:none}
}
@media (max-width:479px) {
  /* Date segments and the native picker need a full control width on phones. */
  .ec-public #main-content :is(.ec-event-directory__form,.ec-event-directory__dates) {grid-template-columns:minmax(0,1fr)}
  .ec-public #main-content .ec-event-directory__dates>* {grid-column:1/-1;grid-row:auto}
  .ec-public #main-content :is(.ec-portal-search__form,.ec-discover-experience__main-filters) {display:grid;grid-template-columns:minmax(0,1fr)}
  .ec-public #main-content .ec-portal-search__submit {width:100%}
  .ec-public #main-content :is(.ec-dest-explorer__tools,.ec-guide-directory__form) {grid-template-columns:minmax(0,1fr)}
  .ec-public #main-content :is(.ec-dest-explorer__submit,.ec-guide-directory__submit) {grid-column:1;width:100%}
  .ec-public #main-content .ec-discover-experience__advanced-fields {grid-template-columns:minmax(0,1fr)}
  .ec-public #main-content .ec-business-context form {grid-template-columns:minmax(0,1fr)}
  .ec-public #main-content .ec-business-context button {width:100%}
  .ec-public #main-content .ec-saved-sort {flex-wrap:wrap}
}
@media (forced-colors:active) {
  .ec-public #main-content :is(.ec-discover-experience__form,.ec-event-directory__form,.ec-portal-search__form,.ec-dest-explorer__tools,.ec-guide-directory__form,.ec-filter-bar,.ec-filter-dialog,.ec-business-context form) {background:Canvas;color:CanvasText;border-color:CanvasText;box-shadow:none}
  .ec-public #main-content :is(.ec-discover-experience__form,.ec-event-directory__form,.ec-dest-explorer__tools,.ec-guide-directory__form,.ec-filter-bar,.ec-filter-dialog,.ec-business-context,.ec-saved-sort) select {appearance:auto;-webkit-appearance:menulist;background-image:none;border-color:ButtonText}
  .ec-public #main-content :is(.ec-event-directory__field,.ec-portal-search__field,.ec-dest-explorer__search>div,.ec-guide-directory__field):focus-within {outline:2px solid Highlight}
  .ec-public #main-content :is(.ec-event-directory__preset,.ec-portal-search__tab,.ec-dest-explorer__chip,.ec-guide-directory__tab,.ec-guide-directory__occasion,.ec-discover-experience__presets a)[aria-current=true],
  .ec-public #main-content .ec-saved-tabs>button[aria-selected=true] {outline:2px solid Highlight;outline-offset:2px;background:Highlight;color:HighlightText}
}
@media print {
  .ec-public #main-content :is(.ec-discover-experience__form,.ec-event-directory__form,.ec-portal-search__form,.ec-dest-explorer__tools,.ec-guide-directory__form,.ec-filter-bar) {box-shadow:none}
}

/* filter-guides24.css */
/* PORTAL24 — guide choices without repeated micro-counts; native GET behavior is unchanged. */
.ec-public #main-content .ec-guide-directory__form {display:grid;grid-template-columns:minmax(0,1.6fr) minmax(190px,.8fr) auto;gap:16px;padding:22px;border-radius:24px;align-items:end;}
.ec-public #main-content .ec-guide-directory__form:not(:has(.ec-guide-directory__destination)) {grid-template-columns:minmax(0,1fr) auto;}
.ec-public #main-content .ec-guide-directory__input,.ec-public #main-content .ec-guide-directory__destination {min-width:0;max-width:none;}
.ec-public #main-content .ec-guide-directory__occasions {display:flex;align-items:center;gap:18px;margin:22px 0 0;padding:0 0 22px;border-bottom:1px solid #dfe7df;}
.ec-public #main-content .ec-guide-directory__occasions>p {margin:0;flex-shrink:0;font:500 12px/1.5 "DM Sans",Arial,sans-serif;color:#677b77;}
.ec-public #main-content .ec-guide-directory__occasions>div {display:flex;flex-wrap:wrap;gap:8px;}
.ec-public #main-content :is(.ec-guide-directory__occasion,.ec-guide-directory__tab) {min-height:44px;box-sizing:border-box;padding:11px 18px;border-radius:999px;border:1px solid #dbe5de;background:#fffefa;color:#173c41;font:500 13px/1.5 "DM Sans",Arial,sans-serif;white-space:normal;}
.ec-public #main-content :is(.ec-guide-directory__occasion,.ec-guide-directory__tab):hover {color:#244deb;background:#f0f3ff;border-color:#b2c0ee;}
.ec-public #main-content :is(.ec-guide-directory__occasion,.ec-guide-directory__tab)[aria-current=true] {color:#fff;background:#244deb;border-color:#244deb;box-shadow:none;}
.ec-public #main-content :is(.ec-guide-directory__occasion,.ec-guide-directory__tab):focus-visible {outline:3px solid #244deb;outline-offset:3px;}
.ec-public #main-content .ec-guide-directory__tabs {gap:8px;margin:14px 0 0;}
.ec-public #main-content .ec-guide-directory__tabs:not(:has(.ec-guide-directory__tab)) {justify-content:flex-end;}
.ec-public #main-content .ec-guide-directory__results-heading {align-items:center;padding:0;margin:26px 0 20px;}
.ec-public #main-content .ec-guide-directory__results-heading strong {font-size:14px;font-weight:500;color:#4d6864;}
.ec-public #main-content .ec-guide-directory__status:empty {display:none;}
@media (max-width:820px) {
 .ec-public #main-content .ec-guide-directory__form {grid-template-columns:minmax(0,1fr) auto;}
 .ec-public #main-content .ec-guide-directory__destination {grid-column:1/-1;grid-row:2;display:block;padding:0;border:0;}
 .ec-public #main-content .ec-guide-directory__occasions {display:block;}
 .ec-public #main-content .ec-guide-directory__occasions>p {margin:0 0 12px;}
}
@media (max-width:480px) {
 .ec-public #main-content .ec-guide-directory__form {padding:16px;gap:12px;}
 .ec-public #main-content .ec-guide-directory__submit {padding:13px 16px;gap:10px;}
 .ec-public #main-content :is(.ec-guide-directory__occasion,.ec-guide-directory__tab) {padding:10px 14px;font-size:12px;}
}

/* Stable 44px icon controls across public cards. CSS hearts survive the existing shell's
   text/pressed/pending updates; the localized button name stays in the native markup. */
.ec-public #main-content :is(.ec-bestof-card,.ec-card,.ec-nearby-card,.ec-portal-card,.atlas-card,.ec-collection-card,.ec-event-card,.ec-bestof-plan__card,.ec-around-profile__card,.ec-my-dashboard__card,.ec-home-event,.ec-event-agenda__card,.ec-motion-card) button[data-ec-save] {
 --ec-save-glyph24:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M20.5 4.7a5.3 5.3 0 0 0-7.5 0L12 5.8l-1.1-1.1a5.3 5.3 0 0 0-7.4 7.5L12 21l8.5-8.8a5.3 5.3 0 0 0 0-7.5Z' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
 display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 44px!important;
 width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;max-width:44px!important;max-height:44px!important;
 padding:0!important;gap:0!important;box-sizing:border-box;border:1px solid #dce6df!important;border-radius:50%!important;
 background:#fffefa!important;color:#234841!important;box-shadow:none!important;font-size:0!important;line-height:0!important;text-indent:0!important;white-space:nowrap;
}
.ec-public #main-content :is(.ec-bestof-card,.ec-card,.ec-nearby-card,.ec-portal-card,.atlas-card,.ec-collection-card,.ec-event-card,.ec-bestof-plan__card,.ec-around-profile__card,.ec-my-dashboard__card,.ec-home-event,.ec-event-agenda__card,.ec-motion-card) button[data-ec-save]::before {content:""!important;display:block!important;position:static!important;inset:auto!important;transform:none!important;width:22px!important;height:22px!important;flex:0 0 22px;background:currentColor!important;mask:var(--ec-save-glyph24) center/contain no-repeat!important;-webkit-mask:var(--ec-save-glyph24) center/contain no-repeat!important;pointer-events:none;}
.ec-public #main-content :is(.ec-bestof-card,.ec-card,.ec-nearby-card,.ec-portal-card,.atlas-card,.ec-collection-card,.ec-event-card,.ec-bestof-plan__card,.ec-around-profile__card,.ec-my-dashboard__card,.ec-home-event,.ec-event-agenda__card,.ec-motion-card) button[data-ec-save]::after {display:none!important;content:none!important;}
.ec-public #main-content :is(.ec-bestof-card,.ec-card,.ec-nearby-card,.ec-portal-card,.atlas-card,.ec-collection-card,.ec-event-card,.ec-bestof-plan__card,.ec-around-profile__card,.ec-my-dashboard__card,.ec-home-event,.ec-event-agenda__card,.ec-motion-card) button[data-ec-save]>svg {display:none!important;}
.ec-public #main-content :is(.ec-bestof-card,.ec-card,.ec-nearby-card,.ec-portal-card,.atlas-card,.ec-collection-card,.ec-event-card,.ec-bestof-plan__card,.ec-around-profile__card,.ec-my-dashboard__card,.ec-home-event,.ec-event-agenda__card,.ec-motion-card) button[data-ec-save]>span {font-size:0!important;line-height:0!important;}
.ec-public #main-content :is(.ec-bestof-card,.ec-card,.ec-nearby-card,.ec-portal-card,.atlas-card,.ec-collection-card,.ec-event-card,.ec-bestof-plan__card,.ec-around-profile__card,.ec-my-dashboard__card,.ec-home-event,.ec-event-agenda__card,.ec-motion-card) button[data-ec-save][aria-pressed=true] {--ec-save-glyph24:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.5 4.7a5.3 5.3 0 0 0-7.5 0L12 5.8l-1.1-1.1a5.3 5.3 0 0 0-7.4 7.5L12 21l8.5-8.8a5.3 5.3 0 0 0 0-7.5Z' fill='black'/%3E%3C/svg%3E");background:#edf2ff!important;color:#244deb!important;border-color:#c1cef4!important;}
.ec-public #main-content :is(.ec-bestof-card,.ec-card,.ec-nearby-card,.ec-portal-card,.atlas-card,.ec-collection-card,.ec-event-card,.ec-bestof-plan__card,.ec-around-profile__card,.ec-my-dashboard__card,.ec-home-event,.ec-event-agenda__card,.ec-motion-card) button[data-ec-save]:hover {background:#edf2ff!important;color:#244deb!important;border-color:#b9c9ef!important;}
.ec-public #main-content :is(.ec-bestof-card,.ec-card,.ec-nearby-card,.ec-portal-card,.atlas-card,.ec-collection-card,.ec-event-card,.ec-bestof-plan__card,.ec-around-profile__card,.ec-my-dashboard__card,.ec-home-event,.ec-event-agenda__card,.ec-motion-card) button[data-ec-save]:focus-visible {outline:3px solid #244deb!important;outline-offset:3px!important;}
.ec-public #main-content :is(.ec-bestof-card,.ec-card,.ec-nearby-card,.ec-portal-card,.atlas-card,.ec-collection-card,.ec-event-card,.ec-bestof-plan__card,.ec-around-profile__card,.ec-my-dashboard__card,.ec-home-event,.ec-event-agenda__card,.ec-motion-card) button[data-ec-save]:disabled {opacity:.55;cursor:wait;}
.ec-public #main-content :is(.ec-bestof-card__actions,.ec-card__actions,.ec-nearby-card__actions,.ec-portal-card__actions,.ec-bestof-plan__card-actions) {align-items:center;gap:12px;flex-direction:row;}
@media (forced-colors:active) {
 .ec-public #main-content :is(.ec-bestof-card,.ec-card,.ec-nearby-card,.ec-portal-card,.atlas-card,.ec-collection-card,.ec-event-card,.ec-bestof-plan__card,.ec-around-profile__card,.ec-my-dashboard__card,.ec-home-event,.ec-event-agenda__card,.ec-motion-card) button[data-ec-save] {color:ButtonText!important;background:ButtonFace!important;border-color:ButtonText!important;}
 .ec-public #main-content :is(.ec-bestof-card,.ec-card,.ec-nearby-card,.ec-portal-card,.atlas-card,.ec-collection-card,.ec-event-card,.ec-bestof-plan__card,.ec-around-profile__card,.ec-my-dashboard__card,.ec-home-event,.ec-event-agenda__card,.ec-motion-card) button[data-ec-save][aria-pressed=true] {color:Highlight!important;border-color:Highlight!important;}
}

/* G1h: bring desktop guide photographs forward by removing surplus vertical gaps.
   Keep existing type, photo geometry and 44px controls; narrow layouts are unchanged. */
@media (min-width:821px) {
 .ec-public #main-content .ec-guide-directory {padding-top:16px;}
 .ec-public #main-content .ec-guide-directory__heading {margin-bottom:12px;}
 .ec-public #main-content .ec-guide-directory__heading .ec-bestof-eyebrow {margin-bottom:4px;}
 .ec-public #main-content .ec-guide-directory__heading h1 {margin:0 0 6px;}
 .ec-public #main-content .ec-guide-directory__heading p:not(.ec-bestof-eyebrow) {line-height:1.5;}
 .ec-public #main-content .ec-guide-directory__form {padding-block:12px;}
 .ec-public #main-content .ec-guide-directory__occasions {margin-top:12px;padding-bottom:10px;}
 .ec-public #main-content .ec-guide-directory__tabs {margin-top:4px;}
 .ec-public #main-content .ec-guide-directory__results-heading {margin:6px 0 12px;}
}

/* G1k: a collection photograph is a recognisable place, not a strip stretched
   to the combined height of every guide. Keep one existing image per group. */
@media (min-width:1024px) {
 .ec-public #main-content .ec-guide-directory__grid--collections {align-items:start;}
 .ec-public #main-content .ec-guide-collection--portrait {display:flex;flex-direction:column;}
 .ec-public #main-content .ec-guide-collection--portrait .ec-guide-collection__destination {min-height:0;max-height:none;flex:0 0 auto;}
 .ec-public #main-content .ec-guide-collection--portrait .ec-guide-collection__figure {position:relative;inset:auto;height:auto;}
 .ec-public #main-content .ec-guide-collection--portrait .ec-guide-collection__figure>a {height:auto;}
 .ec-public #main-content .ec-guide-collection--portrait .ec-guide-collection__figure img {height:clamp(320px,30vw,400px);min-height:0;aspect-ratio:auto;}
 .ec-public #main-content .ec-guide-collection--portrait .ec-guide-collection__guides {grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:24px;}
}

/* Rights-aware originals retain their complete image and separate title.
   These rules also release the old mobile portrait min/max-height constraints. */
.ec-public #main-content .ec-guide-collection__destination:has(img[data-ec-original-aspect]) {min-height:0;max-height:none;}
.ec-public #main-content .ec-guide-collection__destination:has(img[data-ec-original-aspect]) .ec-guide-collection__figure {position:relative;inset:auto;height:auto;}
.ec-public #main-content .ec-guide-collection__destination:has(img[data-ec-original-aspect]) .ec-guide-collection__figure>a {height:auto;}
.ec-public #main-content .ec-guide-collection__destination .ec-guide-collection__figure img[data-ec-original-aspect] {height:auto;min-height:0;max-height:none;aspect-ratio:auto;object-fit:contain;}

/* Mobile discovery: keep every label and native control, use one scrollable
   occasion row, and spend the first scroll on ideas rather than surplus gaps. */
@media (max-width:767px) {
 .ec-public #main-content .ec-guide-directory {padding-top:16px;}
 .ec-public #main-content .ec-guide-directory__heading {margin-bottom:12px;}
 .ec-public #main-content .ec-guide-directory__heading .ec-bestof-eyebrow {margin:0 0 6px;}
 .ec-public #main-content .ec-guide-directory__heading h1 {font-size:clamp(2.15rem,8.6vw,2.8rem);line-height:1.08;margin:0 0 10px;}
 .ec-public #main-content .ec-guide-directory__heading p:not(.ec-bestof-eyebrow) {font-size:14px;line-height:1.5;}
 .ec-public #main-content .ec-guide-directory__share {min-height:44px;margin-top:6px;padding-block:8px;}
 .ec-public #main-content .ec-guide-directory__form {grid-template-columns:minmax(0,1fr);gap:10px;padding:12px;border-radius:18px;}
 .ec-public #main-content .ec-guide-directory__form> :is(.ec-guide-directory__input,.ec-guide-directory__destination,.ec-guide-directory__submit) {grid-column:1/-1;grid-row:auto;}
 .ec-public #main-content :is(.ec-guide-directory__input>label,.ec-guide-directory__destination>span) {margin-bottom:4px;}
 .ec-public #main-content .ec-guide-directory__field {min-height:46px;padding-inline:12px;}
 .ec-public #main-content .ec-guide-directory__field input[type=search] {height:44px;min-height:44px;padding-block:8px;}
 .ec-public #main-content .ec-guide-directory__form select {height:46px;min-height:46px;padding-block:9px;}
 .ec-public #main-content .ec-guide-directory__submit {min-height:44px;width:100%;padding-block:10px;}
 .ec-public #main-content .ec-guide-directory__occasions {margin:12px 0 0;padding:0 0 6px;}
 .ec-public #main-content .ec-guide-directory__occasions>p {margin-bottom:4px;}
 .ec-public #main-content .ec-guide-directory__occasions>div {flex-wrap:nowrap;max-width:100%;overflow-x:auto;gap:8px;padding:7px 7px 8px;scroll-padding-inline:7px;scroll-behavior:auto;}
 .ec-public #main-content .ec-guide-directory__occasion {flex:0 0 auto;min-height:44px;white-space:nowrap;}
 .ec-public #main-content .ec-guide-directory__tabs {margin-top:4px;}
 .ec-public #main-content .ec-guide-directory__results-heading {margin:8px 0 12px;}
}

/* home-michelin24.css */
/* An editorial evening interlude: awards, generous typography and native venue photos only. */
.ec-home-current .ec-michelin24{--mc-ink:#112d31;--mc-paper:#fff8e9;--mc-gold:#ead49b;position:relative;isolation:isolate;overflow:hidden;margin:clamp(3rem,6vw,7rem) 0;padding:clamp(1.35rem,4vw,4rem);color:var(--mc-paper);background:var(--mc-ink);border-radius:clamp(1.5rem,5vw,5rem) 1.5rem clamp(1.5rem,5vw,5rem) 1.5rem}
.ec-home-current .ec-michelin24__orbit{position:absolute;z-index:-1;right:-14%;top:-23rem;width:47rem;aspect-ratio:1;border:1px solid #ead49b1f;border-radius:50%;box-shadow:0 0 0 3rem #ead49b05,0 0 0 7rem #ead49b04;pointer-events:none}
.ec-home-current .ec-michelin24__heading{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(14rem,1fr);gap:2rem;align-items:end;margin-bottom:clamp(1.5rem,3.5vw,3rem)}
.ec-home-current .ec-michelin24__eyebrow{margin:0 0 1rem;color:var(--mc-gold);font-size:.76rem;font-weight:750;letter-spacing:.17em;text-transform:uppercase}
.ec-home-current .ec-michelin24 h2{max-width:16ch;margin:0;color:var(--mc-paper);font:italic 400 clamp(2.5rem,4.7vw,5rem)/1.03 Georgia,'Times New Roman',serif;letter-spacing:-.055em;text-wrap:balance}
.ec-home-current .ec-michelin24__intro{max-width:40ch;margin:0 0 .2rem;color:#d2d9d4;font-size:clamp(.98rem,1.35vw,1.2rem);line-height:1.65}
.ec-home-current .ec-michelin24__selection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.ec-home-current .ec-michelin24__card{position:relative;min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #ead49b3b;border-radius:1.2rem;background:#ffffff04;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.ec-home-current .ec-michelin24__card:first-child{background:#ead49b10;border-color:#ead49b75}
.ec-home-current .ec-michelin24__card-link{display:flex;flex:1;flex-direction:column;align-items:flex-start;min-height:15rem;padding:clamp(1.1rem,2vw,1.85rem);color:var(--mc-paper)!important;text-decoration:none!important}
.ec-home-current .ec-michelin24__award{display:flex;align-items:center;gap:.65rem;margin-bottom:1.7rem;color:var(--mc-gold);font-size:.69rem;font-weight:600;letter-spacing:.035em}
.ec-home-current .ec-michelin24__stars{display:inline-flex;align-items:center;flex:none;gap:.16rem;color:var(--mc-gold)}
.ec-home-current .ec-michelin24__stars svg{display:block;width:1.1rem;height:1.1rem;flex:none}
.ec-home-current .ec-michelin24__city{display:block;margin-bottom:.5rem;color:#b8c9c5;font-size:.74rem;letter-spacing:.07em;text-transform:uppercase}
.ec-home-current .ec-michelin24 h3{margin:0 0 1.8rem;color:var(--mc-paper);font-size:clamp(1.3rem,2vw,1.9rem);line-height:1.12;letter-spacing:-.035em;overflow-wrap:anywhere}
.ec-home-current .ec-michelin24__cta{margin-top:auto;color:var(--mc-gold);font-size:.8rem;line-height:1.5;border-bottom:1px solid #ead49b5c;padding-bottom:.15rem}
.ec-home-current .ec-michelin24__new{position:absolute;top:.8rem;right:.8rem;color:var(--mc-ink);background:var(--mc-gold);border-radius:2rem;padding:.32rem .6rem;font-size:.58rem;font-weight:750;letter-spacing:.03em;pointer-events:none}
.ec-home-current .ec-michelin24__card:has(.ec-michelin24__new) .ec-michelin24__award{margin-top:.75rem}
.ec-home-current .ec-michelin24__photo{position:relative;aspect-ratio:16/9;overflow:hidden;background:#163c41}
.ec-home-current .ec-michelin24__photo>img{display:block;width:100%;height:100%;max-width:none;object-fit:cover}
.ec-home-current .ec-michelin24__photo>img[data-ec-original-aspect=true]{object-fit:contain}
.ec-home-current .ec-michelin24__all{margin-top:1.8rem;border-top:1px solid #ead49b3b}
.ec-home-current .ec-michelin24__all>summary{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;list-style:none;min-height:4rem;padding:.8rem 0;color:var(--mc-paper);font-size:.92rem;font-weight:650;cursor:pointer}
.ec-home-current .ec-michelin24__all>summary::-webkit-details-marker{display:none}
.ec-home-current .ec-michelin24__expand{position:relative;display:block;flex:none;width:2rem;height:2rem;border:1px solid #ead49b60;border-radius:50%}
.ec-home-current .ec-michelin24__expand:before,.ec-home-current .ec-michelin24__expand:after{content:'';position:absolute;left:calc(50% - 5px);top:calc(50% - .5px);width:10px;height:1px;background:var(--mc-gold)}
.ec-home-current .ec-michelin24__expand:after{transform:rotate(90deg)}
.ec-home-current .ec-michelin24__all[open] .ec-michelin24__expand:after{display:none}
.ec-home-current .ec-michelin24__directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2.5rem;list-style:none;padding:0;margin:0}
.ec-home-current .ec-michelin24__directory li{min-width:0;border-top:1px solid #ead49b24}
.ec-home-current .ec-michelin24__directory a{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4.5rem;padding:.8rem 0;color:var(--mc-paper)!important;text-decoration:none!important}
.ec-home-current .ec-michelin24__directory strong{display:block;font-size:.97rem;font-weight:600;line-height:1.35}
.ec-home-current .ec-michelin24__directory small{display:block;margin-top:.2rem;color:#b8c9c5;font-size:.75rem}
.ec-home-current .ec-michelin24__edition{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem 1rem;margin:1.5rem 0 0;color:#b8c9c5;font-size:.7rem;line-height:1.5}
.ec-home-current .ec-michelin24__edition a{color:var(--mc-gold)!important}
.ec-home-current .ec-michelin24 a:focus-visible,.ec-home-current .ec-michelin24 summary:focus-visible{outline:2px solid var(--mc-gold);outline-offset:-3px;border-radius:.6rem}
@media(hover:hover){.ec-home-current .ec-michelin24__card:hover{background:#ead49b14;border-color:#ead49b9e;transform:translateY(-3px)}.ec-home-current .ec-michelin24__directory a:hover strong{text-decoration:underline;text-underline-offset:.2em}}
@media(max-width:900px){.ec-home-current .ec-michelin24__heading{grid-template-columns:1fr;gap:1.2rem}.ec-home-current .ec-michelin24__intro{max-width:65ch}.ec-home-current .ec-michelin24__selection{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-home-current .ec-michelin24__new{font-size:.53rem}}
@media(max-width:560px){.ec-home-current .ec-michelin24{border-radius:2rem .9rem 2rem .9rem}.ec-home-current .ec-michelin24 h2{font-size:clamp(2.25rem,9vw,3rem)}.ec-home-current .ec-michelin24__selection{grid-template-columns:1fr;gap:.7rem}.ec-home-current .ec-michelin24__card-link{min-height:12rem;padding:1.25rem}.ec-home-current .ec-michelin24__award{margin-bottom:1rem}.ec-home-current .ec-michelin24 h3{font-size:1.6rem;margin-bottom:1rem}.ec-home-current .ec-michelin24__directory{grid-template-columns:1fr}.ec-home-current .ec-michelin24__new{font-size:.6rem}.ec-home-current .ec-michelin24__all>summary{font-size:.85rem}}
@media(prefers-reduced-motion:reduce){.ec-home-current .ec-michelin24__card{transition:none}.ec-home-current .ec-michelin24__card:hover{transform:none}}

/* photo-notes24.css */
/* Complete photo attribution, grouped away from browsing cards. Works without JS. */
.ec-site-footer .ec-photo-notes{grid-column:1/-1;max-width:100%;margin:1rem 0 0;color:inherit;font:400 .75rem/1.65 var(--atlas-body,"DM Sans",Arial,sans-serif)}
.ec-site-footer .ec-photo-notes>summary{display:flex;align-items:center;gap:.6rem;min-height:44px;width:fit-content;cursor:pointer;list-style:none;opacity:.82}
.ec-site-footer .ec-photo-notes>summary::-webkit-details-marker{display:none}
.ec-site-footer .ec-photo-notes>summary::after{content:"+";font-size:1rem;margin-left:.5rem}
.ec-site-footer .ec-photo-notes[open]>summary::after{content:"−"}
.ec-site-footer .ec-photo-notes>summary:hover{opacity:1}
.ec-site-footer .ec-photo-notes>summary:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:4px}
.ec-site-footer .ec-photo-notes__content{padding:1rem 0;border-top:1px solid currentColor}
.ec-site-footer .ec-photo-notes__content>p{margin:0 0 1.2rem}
.ec-site-footer .ec-photo-notes__content ul{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 2rem;margin:0;padding:0}
.ec-site-footer .ec-photo-notes__content li{display:flex;align-items:flex-start;gap:1rem;min-width:0;overflow-wrap:anywhere}
.ec-site-footer .ec-photo-notes__preview{display:block;flex:0 0 96px}
.ec-site-footer .ec-photo-notes__preview img{display:block;width:96px;height:64px;object-fit:contain;border-radius:6px;background:#ffffff16}
.ec-site-footer .ec-photo-notes__title{margin:0 0 .35rem;font-size:inherit;font-weight:550;line-height:1.5}
.ec-site-footer .ec-photo-notes__content li div>a{display:inline;color:inherit;text-decoration:underline;text-underline-offset:.2em}
@media(max-width:640px){.ec-site-footer .ec-photo-notes__content ul{grid-template-columns:1fr}}
/* A clean directional mark, without the old narrow outlined box. */
.ec-atlas-home.ec-home-current .ec-home-lower .atlas-region-section .atlas-region-copy>span{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:0 0 24px;padding:0;border:0;background:transparent;border-radius:0;box-shadow:none;transition:transform .2s ease}
.ec-atlas-home.ec-home-current .atlas-region-copy>span svg{display:block;width:22px;height:22px}
.ec-atlas-home.ec-home-current .atlas-region-card>a:hover .atlas-region-copy>span{transform:translate(2px,-2px)}
@media(prefers-reduced-motion:reduce){.ec-atlas-home.ec-home-current .atlas-region-copy>span{transition:none}}

/* editorial33.css */
/* PORTAL33 — a photographic journal. Photographs remain whole, except the
   owner's one approved Zrno Soli homepage thumbnail. No hidden content reveals. */
:is(.ec-edition33,.ec-offer33){--e33-ink:#173d3b;--e33-muted:#53665e;--e33-paper:#fbfaf5;--e33-line:#d5dcd1;--e33-sage:#e9ede3;--e33-gold:#d8c78d;color:var(--e33-ink);background:var(--e33-paper);font-family:var(--atlas-body,"DM Sans",Arial,sans-serif);font-size:1rem;line-height:1.65;overflow-wrap:break-word}
#main-content.ec-edition33{max-width:none;width:100%;margin:0;padding:0}
:is(.ec-edition33,.ec-offer33) *{box-sizing:border-box}
:is(.ec-edition33,.ec-offer33) [hidden]{display:none!important}
:is(.ec-edition33,.ec-offer33) a{color:inherit;text-decoration:none}
:is(.ec-edition33,.ec-offer33) :is(h1,h2,h3,p,figure){margin:0}
:is(.ec-edition33,.ec-offer33) :is(h1,h2,h3){color:inherit;text-wrap:balance;font-family:var(--atlas-display,"Cormorant Garamond",Georgia,serif);font-weight:500;line-height:1.07;letter-spacing:-.035em}
:is(.ec-edition33,.ec-offer33) h2{font-size:clamp(2.5rem,4.1vw,4.25rem)}
:is(.ec-edition33,.ec-offer33) em{font-weight:400}
:is(.ec-edition33,.ec-offer33) :is(a,button,summary,input):focus-visible{outline:2px solid currentColor;outline-offset:5px}
:is(.ec-edition33,.ec-offer33) :is(section,aside,[id]){scroll-margin-top:6rem}
:is(.ec-edition33,.ec-offer33) svg{display:block;width:23px;height:23px;flex:none}
:is(.ec-edition33,.ec-offer33) .ec33-wrap{width:min(100% - clamp(2rem,7vw,7rem),1400px);max-width:1400px;margin-inline:auto;padding-inline:0}
:is(.ec-edition33,.ec-offer33) .ec33-kicker{margin:0 0 1.25rem;font-size:.64rem;font-weight:650;letter-spacing:.18em;text-transform:uppercase;line-height:1.5;color:#456552}
:is(.ec-edition33,.ec-offer33) .ec33-text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:44px;font-size:.83rem;font-weight:600;border-bottom:1px solid #849c89;padding:.25rem 0;color:inherit}
:is(.ec-edition33,.ec-offer33) .ec33-text-link:hover{border-bottom-color:currentColor}
:is(.ec-edition33,.ec-offer33) .ec33-button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;min-height:50px;background:var(--e33-ink);color:#fffdf4!important;border:1px solid var(--e33-ink);border-radius:3px;padding:.85rem 1.2rem;font-size:.85rem;font-weight:550;line-height:1.4}
:is(.ec-edition33,.ec-offer33) .ec33-button:hover{background:#28584d}
:is(.ec-edition33,.ec-offer33) .ec33-chapter{padding-block:clamp(3.5rem,6.5vw,6.5rem)}
:is(.ec-edition33,.ec-offer33) .ec33-heading{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.75fr);gap:2rem 5rem;align-items:end;margin-bottom:2.7rem}
:is(.ec-edition33,.ec-offer33) .ec33-heading h2{max-width:20ch}
:is(.ec-edition33,.ec-offer33) .ec33-heading>.ec33-text-link{justify-self:end}
:is(.ec-edition33,.ec-offer33) :is(.ec33-heading .ec33-heading__note,.ec33-heading>p){max-width:38ch;justify-self:end}
:is(.ec-edition33,.ec-offer33) .ec33-heading__note>p,.ec33-heading>p{font-size:.94rem;line-height:1.75;color:var(--e33-muted)}
:is(.ec-edition33,.ec-offer33) .ec33-heading__note .ec33-text-link{margin-top:.75rem}
.ec-edition33 .ec33-hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);gap:clamp(2rem,4vw,4.5rem);align-items:center;padding-block:clamp(3rem,5vw,5rem) 2.5rem}
.ec-edition33 .ec33-hero__copy{padding-bottom:1.2rem}
.ec-edition33 .ec33-hero h1{font-size:clamp(3.6rem,6.6vw,6.7rem);line-height:.98;letter-spacing:-.05em;max-width:10ch;margin:0 0 1.65rem}
.ec-edition33 .ec33-hero h1 em{display:block;color:#3c6253}
.ec-edition33 .ec33-hero__intro{color:var(--e33-muted);max-width:33ch;font-size:.98rem;line-height:1.85;margin-bottom:1.6rem}
.ec-edition33 .ec33-film{min-width:0;margin:0}
.ec-edition33 .ec33-film__frame{position:relative;background:#e3e7df;aspect-ratio:16/9;overflow:hidden;border-radius:3px}
.ec-edition33 .ec33-film__frame :is(video,img){width:100%;height:100%;max-width:none;display:block;object-fit:contain;transform:none!important}
.ec-edition33 .ec33-film__control{position:absolute;bottom:1rem;right:1rem;display:flex;align-items:center;gap:.65rem;min-height:42px;padding:.55rem .9rem;border:1px solid #ffffff7a;background:#183632de;color:white;border-radius:2rem;cursor:pointer;font-size:.7rem;line-height:1.2}
.ec-edition33 .ec33-film__control [data-film-symbol]{width:.8rem;text-align:center;font-size:.7rem}
.ec-edition33 .ec33-film figcaption>a{display:flex;align-items:center;justify-content:space-between;padding:1rem 0 .4rem;font-size:.76rem;font-weight:550;border-bottom:1px solid var(--e33-line)}
.ec-edition33 .ec33-film figcaption svg{width:20px;height:20px}
.ec-edition33 .ec33-discovery{border-bottom:1px solid var(--e33-line);padding-bottom:1.6rem}
.ec-edition33 .ec33-search{display:flex;align-items:center;gap:1rem;border:1px solid #b4c1b1;border-radius:3px;max-width:900px;margin:0 auto;background:#fffdf8;padding:.45rem .5rem .45rem 1.1rem;min-height:62px}
.ec-edition33 .ec33-search input{min-width:0;flex:1;border:0;background:transparent;padding:.6rem .2rem;min-height:44px;font:inherit;font-size:.94rem;color:var(--e33-ink);border-radius:0;box-shadow:none}
.ec-edition33 .ec33-search input::placeholder{color:#6c786b;opacity:1}
.ec-vivid #main-content.ec-edition33 .ec33-search button[type=submit]{display:flex;align-items:center;gap:1.5rem;border:0;border-radius:2px;background:var(--e33-ink);color:white;padding:.8rem 1.2rem;min-height:48px;font:inherit;font-size:.83rem;cursor:pointer}
.ec-edition33 .ec33-chapter-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:.1rem clamp(.9rem,3vw,3rem);margin-top:1rem}
.ec-edition33 .ec33-chapter-nav a{display:flex;align-items:center;min-height:44px;font-size:.76rem;color:#4c6355}
.ec-edition33 .ec33-chapter-nav a:hover{text-decoration:underline;text-underline-offset:5px}
.ec-edition33 .ec33-destinations__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.6rem}
.ec-edition33 .ec33-destination__photo{display:block;aspect-ratio:4/3;background:#e7e9df;overflow:hidden;border-radius:3px}
.ec-edition33 .ec33-destination__photo img,.ec-edition33 .ec33-park__photo img{display:block;width:100%;height:100%;max-width:none;object-fit:contain!important;transform:none!important}
.ec-edition33 .ec33-destination h3{font-size:1.9rem;margin:1rem 0 .15rem}
.ec-edition33 .ec33-destination h3 a,.ec-edition33 .ec33-park h3 a{display:flex;align-items:center;justify-content:space-between;gap:.7rem}
.ec-edition33 .ec33-business--food{border-top:1px solid var(--e33-line);background:#f1f1e8}
.ec-edition33 .ec33-business__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2.5rem 1.3rem}
.ec-edition33 .ec33-card{min-width:0;display:flex;flex-direction:column;position:relative}
.ec-edition33 .ec33-card__visual{display:block;position:relative;aspect-ratio:4/3;flex:none;background:#e3e7de;overflow:hidden;border-radius:3px}
.ec-edition33 .ec33-card__visual>a{display:block;height:100%;width:100%}
.ec-edition33 .ec33-card__visual img{display:block;width:100%;height:100%;max-width:none;object-fit:contain!important;transform:none!important}
.ec-edition33 .ec33-business--food [data-collection-place="24"] .ec33-card__visual img[src*="/returning-partners01/zrno-hero-167a0c5ba02387b180668799097ff1fe/"]{object-fit:cover!important;object-position:50% 50%}
.ec-edition33 .ec33-card__body{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding-top:1rem}
.ec-edition33 .ec33-card__location{font-size:.62rem;font-weight:550;letter-spacing:.09em;text-transform:uppercase;color:#536655;line-height:1.6;margin:0 0 .5rem}
.ec-edition33 .ec33-card h3{font-family:var(--atlas-body,"DM Sans",Arial,sans-serif);font-size:1.03rem;font-weight:550;line-height:1.35;letter-spacing:-.02em;margin-bottom:.8rem;text-wrap:pretty}
.ec-edition33 .ec33-card__action{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;min-height:44px;padding-top:.4rem;border-bottom:1px solid #b6c3b3;margin-top:auto;font-size:.7rem;font-weight:550}
.ec-edition33 .ec33-card__action svg{width:18px;height:18px}
.ec-edition33 .ec33-card__badge{position:absolute;left:.6rem;bottom:.6rem;border-radius:2px;background:#fffef2ef;color:#244e40;padding:.35rem .5rem;font-size:.57rem;font-weight:650;max-width:calc(100% - 1.2rem);line-height:1.35}
.ec-edition33 .ec33-save{position:absolute;right:.5rem;top:.5rem;display:grid;place-items:center;background:#fffef7f2;color:#224b3c;border:1px solid #ffffff8f;width:40px;height:40px;border-radius:50%;padding:9px;cursor:pointer}
.ec-edition33 .ec33-save svg{width:19px;height:19px}
.ec-edition33 .ec33-save[aria-pressed=true]{background:#214f41;color:#fffceb;border-color:#214f41}
.ec-edition33 .ec33-save[aria-pressed=true] svg{fill:currentColor}
.ec-edition33 .ec33-card__summary{font-size:.91rem;line-height:1.8;color:var(--e33-muted);margin:0 0 1rem}
.ec-edition33 .ec33-business--sail .ec33-business__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.6rem}
.ec-edition33 .ec33-business--sail .ec33-card{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1fr);gap:1.25rem;align-items:start}
.ec-edition33 .ec33-business--sail .ec33-card__body{padding-top:0;height:100%}
.ec-edition33 .ec33-business--sail .ec33-card h3{font-family:var(--atlas-display,Georgia,serif);font-size:2.1rem;font-weight:500}
.ec-edition33 .ec33-business--sail .ec33-card__visual{aspect-ratio:4/3}
.ec-edition33 .ec33-journal{background:#eaf0e6;border-block:1px solid #dbe3d5}
.ec-edition33 .ec33-journal__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);column-gap:3.2rem;row-gap:1rem}
.ec-edition33 .ec33-story{display:grid;grid-template-columns:minmax(95px,.52fr) minmax(0,1fr);gap:1.2rem;align-items:start;border-bottom:1px solid #ccd7c7;padding-bottom:1rem;min-width:0}
.ec-edition33 .ec33-story--lead{grid-row:span 5;display:block;border:0;padding:0}
.ec-edition33 .ec33-story__photo{display:block;aspect-ratio:4/3;background:#dde5d8;border-radius:2px;overflow:hidden}
.ec-edition33 .ec33-story__photo img{width:100%;height:100%;display:block;object-fit:contain!important;max-width:none;transform:none!important}
.ec-edition33 .ec33-story--lead .ec33-story__photo{aspect-ratio:auto}
.ec-edition33 .ec33-story--lead .ec33-story__photo img{height:auto;max-height:460px;object-fit:contain!important}
.ec-edition33 .ec33-story__meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.25rem 1rem;font-size:.59rem;line-height:1.5;letter-spacing:.04em;color:#4e6755;margin:0 0 .5rem}
.ec-edition33 .ec33-story h3{font-size:1.6rem;letter-spacing:-.025em;line-height:1.1;margin-bottom:.45rem;text-wrap:pretty}
.ec-edition33 .ec33-story__summary{font-size:.76rem;line-height:1.65;color:#4b6353}
.ec-edition33 .ec33-story--lead .ec33-story__body{padding:1.4rem .1rem 0}
.ec-edition33 .ec33-story--lead h3{font-size:clamp(2.3rem,3.1vw,3.6rem);max-width:23ch;margin:.8rem 0 1rem}
.ec-edition33 .ec33-story--lead .ec33-story__summary{font-size:1rem;line-height:1.9;max-width:52ch}
.ec-edition33 .ec33-moments{background:#193d3a;color:#fff8e7}
.ec-edition33 .ec33-moments .ec33-kicker{color:#d8d7b3}
.ec-edition33 .ec33-moments .ec33-heading>p{color:#d0d8ca;max-width:29ch}
.ec-edition33 .ec33-moments__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
.ec-edition33 .ec33-moments .ec33-film figcaption>a{border-color:#677969}
.ec-edition33 .ec33-nature{background:#f0f2e8;border-block:1px solid var(--e33-line)}
.ec-edition33 .ec33-nature__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem 1.6rem}
.ec-edition33 .ec33-park__photo{display:block;aspect-ratio:4/3;overflow:hidden;background:#e2e8d8;border-radius:3px}
.ec-edition33 .ec33-park h3{font-size:1.8rem;margin:1rem 0 .6rem}
.ec-edition33 .ec33-park>p{font-size:.82rem;line-height:1.8;color:#506351}
/* Reuse the verified Michelin directory with this edition's visual rhythm. */
.ec-edition33 .ec-michelin24{margin-block:5rem;padding:3rem;background:#183d3b;color:#fff9e9;border-radius:3px}
.ec-edition33 .ec-michelin24__orbit{display:none}
.ec-edition33 .ec-michelin24__heading{display:grid;grid-template-columns:1.3fr 1fr;gap:3rem;align-items:end;margin-bottom:2rem}
.ec-edition33 .ec-michelin24__eyebrow{color:#ddce9d;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;margin-bottom:1rem}
.ec-edition33 .ec-michelin24 h2{max-width:18ch}
.ec-edition33 .ec-michelin24__intro{font-size:.94rem;line-height:1.8;color:#d0d9cb}
.ec-edition33 .ec-michelin24__selection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.ec-edition33 .ec-michelin24__card{min-width:0;position:relative;border:1px solid #7e927b;display:flex;flex-direction:column}
.ec-edition33 .ec-michelin24__photo{background:#23473d;aspect-ratio:4/3;position:relative;overflow:hidden}
.ec-edition33 .ec-michelin24__photo img{width:100%;height:100%;object-fit:contain!important;display:block}
.ec-edition33 .ec-michelin24__card-link{display:flex;flex-direction:column;gap:.7rem;flex:1;padding:1.6rem;color:inherit!important;min-height:230px}
.ec-edition33 .ec-michelin24__award{display:flex;gap:.6rem;align-items:center;font-size:.65rem;color:#ddce9d}
.ec-edition33 .ec-michelin24__stars{display:flex;gap:.2rem;color:#ddce9d}
.ec-edition33 .ec-michelin24__stars svg{width:18px;height:18px}
.ec-edition33 .ec-michelin24__city{font-size:.67rem;color:#d0d9cb;letter-spacing:.08em;text-transform:uppercase}
.ec-edition33 .ec-michelin24 h3{font-size:2rem;margin-bottom:1rem}
.ec-edition33 .ec-michelin24__cta{margin-top:auto;font-size:.76rem;text-decoration:underline;text-underline-offset:5px}
.ec-edition33 .ec-michelin24__new{position:absolute;right:.4rem;top:.4rem;background:#e1d6ac;color:#173d3b;font-size:.52rem;padding:.3rem .5rem;border-radius:2px}
.ec-edition33 .ec-michelin24__all{margin-top:1.8rem;border-top:1px solid #748973}
.ec-edition33 .ec-michelin24__all summary{cursor:pointer;padding:1rem 0;font-size:.87rem}
.ec-edition33 .ec-michelin24__directory{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 2rem}
.ec-edition33 .ec-michelin24__directory a{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:72px;border-bottom:1px solid #59745f}
.ec-edition33 .ec-michelin24__directory strong{font-size:.91rem;font-weight:500}
.ec-edition33 .ec-michelin24__directory small{display:block;color:#d0d9cb;font-size:.73rem}
.ec-edition33 .ec-michelin24__edition{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.8rem;padding-top:1.4rem;font-size:.68rem;color:#d0d9cb}
.ec-edition33 .ec33-partner-invite{border-block:1px solid #c7d2c0;display:grid;grid-template-columns:1.3fr 1fr;gap:5rem;padding-block:3.5rem;margin-top:2rem;align-items:center}
.ec-edition33 .ec33-partner-invite h2{max-width:22ch;font-size:clamp(2.4rem,3.2vw,3.5rem)}
.ec-edition33 .ec33-partner-invite>div>p:not(.ec33-kicker){color:var(--e33-muted);font-size:.96rem;line-height:1.9;margin-bottom:1.6rem}
.ec-edition33 .ec33-closing{text-align:center;padding-block:5rem 6rem;max-width:820px}
.ec-edition33 .ec33-closing h2{font-size:clamp(2.7rem,4.3vw,4.3rem);max-width:26ch;margin-inline:auto}
.ec-edition33 .ec33-closing h2 em{display:block;color:#426750}
.ec-edition33 .ec33-closing>p{max-width:49ch;margin:1.5rem auto;color:var(--e33-muted);font-size:.94rem}
/* Managed partnerships: a useful free guide, optional presentation and campaigns. */
.ec-offer33 .ec33-offer-hero{display:grid;grid-template-columns:1fr 1fr;gap:4.5rem;align-items:center;padding-block:4rem 2rem}
.ec-offer33 .ec33-offer-hero h1{font-size:clamp(3.5rem,5.7vw,6rem);line-height:1.01;max-width:14ch;margin-bottom:1.8rem}
.ec-offer33 .ec33-offer-hero h1 em{display:block;color:#426750}
.ec-offer33 .ec33-offer-hero__intro{max-width:44ch;color:var(--e33-muted);font-size:1.01rem;line-height:1.9;margin-bottom:2rem}
.ec-offer33 .ec33-offer-hero .ec33-text-link{display:flex;max-width:fit-content;margin-top:.8rem}
.ec-offer33 .ec33-offer-hero figure img{display:block;width:100%;height:auto;max-height:540px;object-fit:contain!important;border-radius:3px;transform:none!important}
.ec-offer33 .ec33-offer-hero figcaption{font-size:.73rem;margin-top:.8rem;color:var(--e33-muted)}
.ec-offer33 .ec33-offer-promise{border-top:1px solid var(--e33-line);padding-block:1.4rem 2.6rem;font-size:.86rem;color:var(--e33-muted);text-align:center}
.ec-offer33 .ec33-options{background:#eaf0e4;border-block:1px solid var(--e33-line)}
.ec-offer33 .ec33-options__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}
.ec-offer33 .ec33-option{min-width:0;border:1px solid #c7d3be;background:#fbfcf4;padding:2rem;display:flex;flex-direction:column;align-items:flex-start}
.ec-offer33 .ec33-option--profile{background:#224e41;color:#fffbea;border-color:#224e41}
.ec-offer33 .ec33-option__label{font-size:.61rem;text-transform:uppercase;letter-spacing:.07em;line-height:1.7;margin-bottom:1.8rem;min-height:2.2em}
.ec-offer33 .ec33-option h3{font-size:2.6rem;max-width:13ch;margin-bottom:1.1rem}
.ec-offer33 .ec33-option>p:not(.ec33-option__label){font-size:.91rem;line-height:1.8;min-height:4.8em}
.ec-offer33 .ec33-option ul{list-style:none;margin:1.8rem 0 2rem;padding:0;width:100%;font-size:.82rem;line-height:1.7}
.ec-offer33 .ec33-option li{position:relative;padding:.85rem 0 .85rem 1.4rem;border-top:1px solid #bbcbb650}
.ec-offer33 .ec33-option li:before{content:'✓';position:absolute;left:0;top:.85rem;font-size:.8rem}
.ec-offer33 .ec33-option .ec33-text-link{margin-top:auto;width:100%;font-size:.78rem}
.ec-offer33 .ec33-option--profile .ec33-text-link{border-color:#a1b594}
.ec-offer33 .ec33-agreement{font-size:.76rem;line-height:1.8;color:var(--e33-muted);max-width:115ch;margin-top:1.8rem}
.ec-offer33 .ec33-workflow ol{list-style:none;counter-reset:ec33-step;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem;margin:0;padding:0}
.ec-offer33 .ec33-workflow li{counter-increment:ec33-step;border-top:1px solid var(--e33-line);padding-top:1.4rem}
.ec-offer33 .ec33-workflow li:before{content:'0' counter(ec33-step);font-family:var(--atlas-display,Georgia,serif);font-size:2.8rem;color:#7d9276;display:block;margin-bottom:1.5rem;line-height:1}
.ec-offer33 .ec33-workflow h3{font-size:2rem;margin-bottom:1rem}
.ec-offer33 .ec33-workflow p{font-size:.92rem;line-height:1.9;color:var(--e33-muted)}
.ec-offer33 .ec33-faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:4rem;padding-block:1rem 4rem}
.ec-offer33 .ec33-faq details{border-bottom:1px solid var(--e33-line);padding:1.2rem 0}
.ec-offer33 .ec33-faq details:first-child{border-top:1px solid var(--e33-line)}
.ec-offer33 .ec33-faq summary{font-size:.97rem;font-weight:550;cursor:pointer;padding-right:.3rem;line-height:1.5}
.ec-offer33 .ec33-faq details p{font-size:.89rem;line-height:1.85;color:var(--e33-muted);padding:1rem 0 .25rem}
.ec-offer33 .ec-inquiry{width:min(100% - clamp(2rem,7vw,7rem),1400px);max-width:1400px;margin:auto;padding-inline:0;border-top:1px solid var(--e33-line)}
.ec-offer33 .ec-inquiry__form{background:#f0f2e8;border:1px solid #d4ddc9;box-shadow:none;border-radius:3px}
.ec-vivid #main-content .ec-offer33 .ec-inquiry__actions button[type=submit]{background:#224e41;border-radius:3px}
.ec-offer33 .ec-inquiry__intro h2{color:#173d3b}
.ec-offer33 .ec-inquiry__intro>p{color:#53665e}
.ec-offer33 .ec-inquiry__direct>a,.ec-offer33 .ec-inquiry__privacy a{color:#245d43}
.ec-offer33 .ec-inquiry__field :is(input,textarea){border-radius:3px;border-color:#bac9b1}
@media(hover:hover){.ec-edition33 :is(.ec33-card h3,.ec33-story h3,.ec33-destination h3,.ec33-park h3) a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}}
@media(min-width:1600px){.ec-edition33 .ec33-hero{padding-block:5rem 3rem}.ec-edition33 .ec33-hero h1{font-size:7rem}}
@media(max-width:1100px){
 :is(.ec-edition33,.ec-offer33) .ec33-heading{gap:2rem;grid-template-columns:1.2fr 1fr}
 .ec-edition33 .ec33-hero{gap:2rem;grid-template-columns:.9fr 1.1fr}
 .ec-edition33 .ec33-hero h1{font-size:4.9rem}
 .ec-edition33 .ec33-business__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 1.4rem}
 .ec-edition33 .ec33-business--sail .ec33-card{display:flex}
 .ec-edition33 .ec33-journal__grid{gap:1rem 2rem}
 .ec-edition33 .ec33-story{grid-template-columns:minmax(75px,.5fr) minmax(0,1fr);gap:.9rem}
 .ec-edition33 .ec33-story h3{font-size:1.4rem}
 .ec-edition33 .ec33-story--lead h3{font-size:2.7rem}
 .ec-offer33 .ec33-option{padding:1.5rem}
 .ec-offer33 .ec33-option h3{font-size:2.15rem}
}
@media(max-width:760px){
 :is(.ec-edition33,.ec-offer33) .ec33-wrap{width:calc(100% - 2.5rem)}
 :is(.ec-edition33,.ec-offer33) .ec33-chapter{padding-block:3rem}
 :is(.ec-edition33,.ec-offer33) .ec33-heading{grid-template-columns:1fr;gap:1.3rem;margin-bottom:1.8rem}
 :is(.ec-edition33,.ec-offer33) :is(.ec33-heading .ec33-heading__note,.ec33-heading>p){justify-self:start;max-width:52ch}
 :is(.ec-edition33,.ec-offer33) .ec33-heading>.ec33-text-link{justify-self:start}
 :is(.ec-edition33,.ec-offer33) .ec33-kicker{font-size:.6rem;margin-bottom:.85rem}
 :is(.ec-edition33,.ec-offer33) h2{font-size:2.65rem}
 .ec-edition33 .ec33-hero{grid-template-columns:1fr;padding-block:2.4rem 1.4rem;gap:1.5rem}
 .ec-edition33 .ec33-hero__copy{padding:0}
 .ec-edition33 .ec33-hero h1{font-size:clamp(3.4rem,10vw,5rem);max-width:15ch;margin-bottom:1.2rem}
 .ec-edition33 .ec33-hero h1 em{display:inline}
 .ec-edition33 .ec33-hero__intro{font-size:.93rem;max-width:49ch;margin-bottom:1rem;line-height:1.8}
 .ec-edition33 .ec33-hero__copy .ec33-text-link{min-height:40px}
 .ec-edition33 .ec33-film figcaption>a{padding-top:.7rem}
 .ec-edition33 .ec33-film__control{right:.7rem;bottom:.7rem}
 .ec-edition33 .ec33-search{gap:.55rem;padding-left:.8rem}
 .ec-edition33 .ec33-search input{font-size:16px;width:100%}
 .ec-vivid #main-content.ec-edition33 .ec33-search button[type=submit]{padding:.8rem .85rem;gap:.5rem;font-size:.75rem}
 .ec-edition33 .ec33-search button svg{display:none}
 .ec-edition33 .ec33-chapter-nav{justify-content:space-between;gap:.1rem 1.15rem;margin-top:.8rem}
 .ec-edition33 .ec33-chapter-nav a{font-size:.73rem;min-height:42px}
 .ec-edition33 .ec33-destinations__grid,.ec-edition33 .ec33-nature__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.8rem 1rem}
 .ec-edition33 .ec33-destination h3,.ec-edition33 .ec33-park h3{font-size:1.65rem;margin-top:.7rem}
 .ec-edition33 .ec33-business__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.9rem 1rem}
 .ec-edition33 .ec33-card h3{font-size:1rem}
 .ec-edition33 .ec33-card__location{font-size:.59rem}
 .ec-edition33 .ec33-card__body{padding-top:.8rem}
 .ec-edition33 .ec33-save{width:38px;height:38px;right:.35rem;top:.35rem}
 .ec-edition33 .ec33-journal__grid{grid-template-columns:1fr;gap:1.25rem}
 .ec-edition33 .ec33-story--lead{grid-row:auto;margin-bottom:1rem}
 .ec-edition33 .ec33-story:not(.ec33-story--lead){grid-template-columns:minmax(110px,.45fr) minmax(0,1fr);gap:1.2rem}
 .ec-edition33 .ec33-story h3{font-size:1.7rem}
 .ec-edition33 .ec33-story__summary{font-size:.82rem}
 .ec-edition33 .ec33-story--lead h3{font-size:2.5rem}
 .ec-edition33 .ec33-moments__grid{grid-template-columns:1fr;gap:1.6rem}
 .ec-edition33 .ec33-business--sail .ec33-business__grid{grid-template-columns:1fr;gap:2rem}
 .ec-edition33 .ec33-business--sail .ec33-card{display:flex;gap:1rem}
 .ec-edition33 .ec33-business--sail .ec33-card__visual{width:100%;aspect-ratio:3/2}
 /* Outrank the later tc-charter-photo-fit MU rule for these two homepage cards. */
 .ec-edition33 #home-sail.ec33-business--sail .ec33-card:is([data-collection-place="34"],[data-collection-place="36"]) .ec33-card__visual{aspect-ratio:3/2!important}
 .ec-edition33 .ec33-business--sail .ec33-card__visual img{width:100%;height:100%;object-fit:cover!important;object-position:center}
 .ec-edition33 .ec33-business--sail .ec33-card__visual img[data-ec-original-aspect]{object-fit:contain!important}
 .ec-edition33 .ec33-business--sail [data-collection-place="34"] .ec33-card__visual img{object-position:50% 58%}
 .ec-edition33 .ec33-business--sail [data-collection-place="36"] .ec33-card__visual img{object-position:50% 54%}
 .ec-edition33 .ec33-business--sail .ec33-card h3{font-size:1.8rem}
 .ec-edition33 .ec33-card__summary{font-size:.82rem}
 .ec-edition33 .ec33-park>p{font-size:.8rem}
 .ec-edition33 .ec-michelin24{padding:1.5rem;margin-block:3rem}
 .ec-edition33 .ec-michelin24__heading{grid-template-columns:1fr;gap:1.3rem}
 .ec-edition33 .ec-michelin24__selection{grid-template-columns:1fr}
 .ec-edition33 .ec-michelin24__card-link{min-height:190px;padding:1.4rem}
 .ec-edition33 .ec-michelin24__directory{grid-template-columns:1fr}
 .ec-edition33 .ec33-partner-invite{grid-template-columns:1fr;gap:1.6rem;padding-block:2.5rem}
 .ec-edition33 .ec33-partner-invite h2{font-size:2.65rem}
 .ec-edition33 .ec33-closing{padding-block:3rem 4rem}
 .ec-edition33 .ec33-closing h2{font-size:2.7rem}
 .ec-offer33 .ec33-offer-hero{grid-template-columns:1fr;gap:2rem;padding-top:2.5rem}
 .ec-offer33 .ec33-offer-hero h1{font-size:3.7rem;max-width:17ch}
 .ec-offer33 .ec33-offer-hero__intro{max-width:55ch}
 .ec-offer33 .ec33-options__grid{grid-template-columns:1fr;gap:1.2rem}
 .ec-offer33 .ec33-option{padding:1.8rem}
 .ec-offer33 .ec33-option h3{font-size:2.7rem;max-width:25ch}
 .ec-offer33 .ec33-option__label{min-height:0;margin-bottom:1rem}
 .ec-offer33 .ec33-option>p:not(.ec33-option__label){min-height:0}
 .ec-offer33 .ec33-option ul{margin-top:1.2rem}
 .ec-offer33 .ec33-workflow ol{grid-template-columns:1fr;gap:1.8rem}
 .ec-offer33 .ec33-workflow li:before{margin-bottom:.85rem}
 .ec-offer33 .ec33-faq{grid-template-columns:1fr;gap:1.5rem;padding-block:1rem 3rem}
 .ec-offer33 .ec-inquiry{width:calc(100% - 2.5rem)}
}
@media(max-width:400px){
 .ec-edition33 .ec33-search>svg{display:none}
 .ec-edition33 .ec33-search input{font-size:.87rem}
 .ec-edition33 .ec33-card__action{font-size:.67rem;gap:.3rem}
 .ec-edition33 .ec33-card h3{font-size:.94rem}
 .ec-edition33 .ec33-destination h3,.ec-edition33 .ec33-park h3{font-size:1.5rem}
 .ec-edition33 .ec33-destination h3 svg,.ec-edition33 .ec33-park h3 svg{width:18px}
 .ec-edition33 .ec33-story:not(.ec33-story--lead){grid-template-columns:100px minmax(0,1fr);gap:.9rem}
 .ec-edition33 .ec33-story:not(.ec33-story--lead) h3{font-size:1.5rem}
 .ec-edition33 .ec33-story:not(.ec33-story--lead) .ec33-story__summary{font-size:.76rem}
}
@media(prefers-reduced-motion:reduce){:is(.ec-edition33,.ec-offer33) *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(forced-colors:active){:is(.ec-edition33,.ec-offer33),:is(.ec-edition33,.ec-offer33) section,:is(.ec-edition33,.ec-offer33) article{color:CanvasText!important;background:Canvas!important}.ec33-option,.ec33-card__visual{border:1px solid CanvasText!important}:is(.ec-edition33,.ec-offer33) .ec33-button,.ec-edition33 .ec33-save,.ec-edition33 .ec33-film__control{color:ButtonText!important;background:ButtonFace!important;border:1px solid ButtonText!important}.ec-edition33 .ec33-save[aria-pressed=true]{outline:2px solid Highlight}}

/* Keep link contrast inside the dark paid-presentation panel. */
.ec-public-visual #main-content .ec-offer33 .ec33-text-link{color:inherit}
.ec-public-visual #main-content .ec-offer33 .ec-inquiry__direct>a,.ec-public-visual #main-content .ec-offer33 .ec-inquiry__privacy a{color:#245d43}

/* PORTAL34: owner-requested full-frame thumbnails; original assets remain intact. */
.ec33-card[data-collection-place="45"] .ec33-card__visual img[src*="/partner-landscape01/landscape-villa-ani-dol-906610eeacac792277a836167aea25ac/"],
.ec33-card[data-collection-place="48"] .ec33-card__visual img[src*="/partner-landscape01/landscape-olive-house-solta-7edf201990c564a7c19f50f958b1e330/"]{object-fit:cover!important;object-position:center}

/* PORTAL35: mobile editorial browse polish. Desktop geometry is intentionally unchanged. */
@media(max-width:560px){
 .ec-edition33 .ec33-hero h1{font-size:clamp(3.05rem,13.8vw,4.3rem);line-height:.95}
 .ec-edition33 .ec33-hero{padding-top:1.9rem}
 .ec-edition33 .ec33-film__frame{border-radius:8px}
 .ec-edition33 .ec33-business:not(.ec33-business--sail) .ec33-business__grid,
 .ec-edition33 .ec33-events .ec33-business__grid{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:min(82vw,22rem);
  grid-template-columns:none;
  gap:1rem;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-inline:contain;
  scroll-snap-type:inline mandatory;
  scroll-padding-inline:1.25rem;
  padding:0 1.25rem .9rem;
  margin-inline:-1.25rem;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
 }
 .ec-edition33 .ec33-business:not(.ec33-business--sail) .ec33-business__grid::-webkit-scrollbar,
 .ec-edition33 .ec33-events .ec33-business__grid::-webkit-scrollbar{display:none}
 .ec-edition33 .ec33-business:not(.ec33-business--sail) .ec33-card,
 .ec-edition33 .ec33-events .ec33-card{scroll-snap-align:start;scroll-snap-stop:normal;min-width:0}
 .ec-edition33 .ec33-business:not(.ec33-business--sail) .ec33-card__visual,
 .ec-edition33 .ec33-events .ec33-card__visual{aspect-ratio:4/3}
 .ec-edition33 .ec33-business:not(.ec33-business--sail) .ec33-card h3,
 .ec-edition33 .ec33-events .ec33-card h3{font-size:1.28rem;line-height:1.14}
 .ec-edition33 .ec33-business:not(.ec33-business--sail) .ec33-card__location,
 .ec-edition33 .ec33-events .ec33-card__location{font-size:.62rem}
 .ec-edition33 .ec33-business:not(.ec33-business--sail) .ec33-card__action,
 .ec-edition33 .ec33-events .ec33-card__action{font-size:.73rem;min-height:38px}
 .ec-edition33 .ec33-chapter-nav{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;margin-inline:-1.25rem;padding-inline:1.25rem;white-space:nowrap}
 .ec-edition33 .ec33-chapter-nav::-webkit-scrollbar{display:none}
 .ec-edition33 .ec33-chapter-nav a{flex:0 0 auto}
 .ec-edition33 .ec33-search{align-items:center}
 .ec-vivid #main-content.ec-edition33 .ec33-search button[type=submit]{min-height:42px}
}

/* G2B: responsive poster paints before video loading; preserve original fit. */
.ec-edition33 .ec33-film__frame > video[data-film-src]{position:absolute;inset:0;opacity:0}
.ec-edition33 .ec33-film__frame > video[data-frame-ready="true"]{opacity:1}

/* G2D: deliberate city order and a native, rights-cleared opening story. */
.ec-edition33 .ec33-destinations__grid{gap:2.5rem 1.6rem}
.ec-edition33 .ec33-destination{min-width:0}
.ec-edition33 .ec33-destination__reason{font-size:.8rem;line-height:1.6;color:var(--e33-muted);margin:.4rem 0 .3rem;max-width:29ch}
.ec-edition33 .ec33-curiosity{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(1.5rem,4vw,4.5rem);padding-block:clamp(2rem,4vw,4rem);border-bottom:1px solid var(--e33-line)}
.ec-edition33 .ec33-curiosity__visual,.ec-edition33 .ec33-curiosity__body{min-width:0}
.ec-edition33 .ec33-curiosity__photo{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--e33-sage);border-radius:3px}
.ec-edition33 .ec33-curiosity__photo img{display:block;width:100%;height:100%;max-width:none;object-fit:contain!important;transform:none!important}
.ec-edition33 .ec33-curiosity h2{font-size:clamp(2.2rem,3.4vw,3.5rem);max-width:21ch}
.ec-edition33 .ec33-curiosity .ec33-kicker{margin-bottom:.8rem}
.ec-edition33 .ec33-curiosity__summary{font-size:.94rem;color:var(--e33-muted);line-height:1.75;margin:1rem 0;max-width:52ch}
.ec-edition33 .ec33-curiosity--reverse .ec33-curiosity__visual{order:2}
.ec-edition33 .ec33-curiosity--reverse .ec33-curiosity__body{order:1}
@media(max-width:760px){
 .ec-edition33 .ec33-destinations__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.9rem 1rem}
 .ec-edition33 .ec33-destination__reason{font-size:.76rem}
 .ec-edition33 .ec33-curiosity{grid-template-columns:minmax(0,1fr);gap:1.1rem;padding-block:2rem}
 .ec-edition33 .ec33-curiosity--reverse .ec33-curiosity__body{order:1}
 .ec-edition33 .ec33-curiosity--reverse .ec33-curiosity__visual{order:2}
 .ec-edition33 .ec33-curiosity h2{font-size:clamp(2.2rem,8vw,3.25rem)}
 .ec-edition33 .ec33-curiosity__summary{font-size:.88rem;margin:.8rem 0}
}
@media(max-width:360px){.ec-edition33 .ec33-destinations__grid{grid-template-columns:minmax(0,1fr)}}
/* Homepage journal: keep stories in source order without a fixed five-row lead.
   Load after editorial33.css. The native narrow-screen layout stays intact. */
.ec-edition33 #home-stories .ec33-story__body {
  min-width: 0;
  overflow-wrap: anywhere;
}

@media (min-width: 761px) {
  .ec-edition33 #home-stories .ec33-journal__grid {
    /* Up to three columns, collapsing empty tracks for smaller story counts. */
    grid-template-columns: repeat(auto-fit, minmax(min(100%, max(20rem, calc((100% - 3rem) / 3))), 1fr));
    grid-auto-flow: row;
    grid-auto-rows: auto;
    gap: 2rem 1.5rem;
    align-items: start;
  }

  .ec-edition33 #home-stories .ec33-journal__grid > .ec33-story {
    grid-column: auto;
    grid-row: auto;
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
    margin: 0;
    padding: 0 0 1.25rem;
    border-bottom: 1px solid #ccd7c7;
  }

  .ec-edition33 #home-stories .ec33-story > .ec33-story__photo {
    width: 100%;
    aspect-ratio: 3 / 2;
  }

  .ec-edition33 #home-stories .ec33-story > .ec33-story__photo img {
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: contain !important;
  }

  .ec-edition33 #home-stories .ec33-story > .ec33-story__body {
    width: 100%;
    padding: 1rem 0 0;
  }

  .ec-edition33 #home-stories .ec33-story h3 {
    max-width: none;
    margin: .65rem 0 .6rem;
    font-size: clamp(1.75rem, 2.15vw, 2.1rem);
    line-height: 1.12;
  }

  .ec-edition33 #home-stories .ec33-story .ec33-story__summary {
    max-width: none;
    margin-bottom: 0;
    font-size: .875rem;
    line-height: 1.7;
  }

  .ec-edition33 #home-stories .ec33-journal__grid > .ec33-story:only-child {
    max-width: 44rem;
  }
}

/* Keep the native hidden state authoritative if the story set is refreshed. */
.ec-edition33 #home-stories .ec33-journal__grid > .ec33-story[hidden] {
  display: none !important;
}

/* Native content remains complete when no approved photograph is available. */
.ec-edition33 .ec33-hero--text{grid-template-columns:minmax(0,1fr);border-bottom:1px solid var(--e33-line)}
.ec-edition33 .ec33-hero--text .ec33-hero__copy{max-width:74rem}
.ec-edition33 .ec33-hero--text h1{max-width:19ch;font-size:clamp(3.4rem,6vw,6rem)}
.ec-edition33 .ec33-hero--text .ec33-hero__intro{max-width:58ch}
.ec-edition33 .ec33-destination--text{border-top:2px solid #71846a;padding:1.5rem 0 1rem;min-width:0}
.ec-edition33 .ec33-destination--text h3{margin-top:0}
.ec-edition33 .ec33-card--text,.ec-edition33 .ec33-business--sail .ec33-card--text{display:flex;flex-direction:column;gap:0;border-top:2px solid #71846a;padding:1.2rem 0;min-width:0}
.ec-edition33 .ec33-card__text-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:2.75rem;margin-bottom:.8rem}
.ec-edition33 .ec33-card__text-heading .ec33-card__badge{position:static;max-width:calc(100% - 3.5rem)}
.ec-edition33 .ec33-card__text-heading .ec33-save{position:static;flex:0 0 44px;margin-left:auto;border:1px solid var(--e33-line);background:transparent;box-shadow:none}
.ec-edition33 .ec33-card__text-heading .ec33-save[aria-pressed=true]{background:#214f41;color:#fffceb;border-color:#214f41}
.ec-edition33 .ec33-card--text .ec33-card__body{flex:1;display:flex;flex-direction:column;min-width:0;padding-top:0}
.ec-edition33 .ec33-card--text .ec33-card__action{margin-top:auto;align-self:flex-start}
.ec-edition33 .ec33-card--text h3{overflow-wrap:anywhere}
.ec-edition33 .ec33-curiosity--text,.ec-edition33 .ec33-curiosity--text.ec33-curiosity--reverse{display:block;border-block:1px solid var(--e33-line);padding-block:2rem}
.ec-edition33 .ec33-curiosity--text .ec33-curiosity__body{max-width:66rem}
.ec-edition33 .ec33-curiosity--text .ec33-curiosity__summary{max-width:65ch}
.ec-edition33 .ec33-story--text{display:block;padding-top:1rem}
.ec-edition33 .ec33-story--text.ec33-story--lead{padding-top:0}
.ec-edition33 .ec33-story--text.ec33-story--lead .ec33-story__body{padding-top:0}
.ec-home-stories24__card--text{display:block;border-top:1px solid #c7d3be;padding-top:1rem}
@media(max-width:40rem){
 .ec-edition33 .ec33-hero--text h1{font-size:clamp(3rem,11vw,4.5rem)}
 .ec-edition33 .ec33-curiosity--text{padding-block:1.5rem}
 .ec-edition33 .ec33-card--text h3{font-size:1.8rem}
}

.ec-edition33 .ec33-park--text{border-top:2px solid #71846a;padding-top:1rem;min-width:0}
.ec-edition33 .ec33-park--text h3{margin-top:0}

/* Compact illustrative comparison on the active partner offer only. */
.ec-offer33 .ec33-example__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}
.ec-offer33 .ec33-example .ec33-option h3{font-size:clamp(1.6rem,2.6vw,2.1rem);max-width:24ch}
.ec-offer33 .ec33-example .ec33-option__label{min-height:0;margin-bottom:1rem}
.ec-offer33 .ec33-example .ec33-option>p:not(.ec33-option__label){min-height:0;margin-bottom:.8rem}
.ec-offer33 .ec33-example h4{font:600 .85rem/1.6 var(--atlas-body,system-ui,sans-serif);margin:1rem 0 .6rem}
.ec-offer33 .ec33-example__channels{margin-top:1.4rem}
.ec-offer33 .ec33-example dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;margin:0;font-size:.8rem;line-height:1.65;width:100%}
.ec-offer33 .ec33-example dl>div{padding:.6rem 0;border-top:1px solid #a1b59470}
.ec-offer33 .ec33-example dt{font-weight:600}
.ec-offer33 .ec33-example dd{margin:.15rem 0 0}
@media(max-width:760px){.ec-offer33 .ec33-example__grid,.ec-offer33 .ec33-example dl{grid-template-columns:minmax(0,1fr)}}

/* This reviewed Kornati photograph only: keep the cliff prominent in the existing frame.
   Match its full-original fingerprint in src/srcset so a later replacement stays native. */
.ec-edition33 .ec33-park[data-national-park="kornati"] .ec33-park__photo img:is([src$="/kornati-2560-14f36b3f3237.webp"],[srcset*="/kornati-2560-14f36b3f3237.webp "]) {
  object-fit:cover !important;
  object-position:80% 100%;
  transform:scale(1.44) !important;
  transform-origin:80% 100%;
}

/* Approved homepage section rhythm, 2026-10-20. */
.ec-edition33 .ec33-green-band{--e33-muted:#d0d9cb;--e33-line:#6d8580;background:#183d3b;color:#fff9e9}
.ec-edition33 .ec33-green-band .ec33-curiosity{border-color:transparent;padding-block:3.5rem}
.ec-edition33 #home-food{--e33-muted:#d0d9cb;--e33-line:#6d8580;background:#183d3b;color:#fff9e9;border:0}
.ec-edition33 :is(.ec33-green-band,#home-food) :is(h2,h3,.ec33-card__action,.ec33-text-link){color:#fff9e9}
.ec-edition33 :is(.ec33-green-band,#home-food) :is(.ec33-kicker,.ec33-card__location){color:#ddce9d}
.ec-edition33 :is(.ec33-green-band,#home-food) :is(.ec33-curiosity__summary,.ec33-heading__note>p,.ec33-heading>p,.ec33-card__summary,.ec-home-credit){color:#d0d9cb}
.ec-edition33 :is(.ec33-green-band,#home-food) :is(.ec33-card__action,.ec33-text-link){border-color:#7b9288}
.ec-edition33 #home-stories{background:#fbfaf5;border-color:#d5dcd1}
.ec-edition33 .ec33-moments{background:#183d3b}
@media(max-width:600px){.ec-edition33 .ec33-green-band .ec33-curiosity{padding-block:2rem}}

.ec-edition33 #home-food .tcoc-card-link{color:#c3cfc7}
#main-content.ec-edition33 #home-food .ec33-card.tc-featured-home .tc-featured-home__label{color:#ddce9d;border-color:#b6a476}

/* Noa review: keep text inside the card surface at rest, hover and keyboard focus. */
#main-content.ec-edition33 :is(.ec33-destination,.ec33-park)>:is(h3,p,.ec-home-credit){margin-inline:.75rem}
#main-content.ec-edition33 :is(.ec33-destination,.ec33-park){padding-bottom:.75rem}
#main-content.ec-edition33 .ec33-card .ec33-card__body{padding-inline:.75rem;padding-bottom:.75rem}
#main-content.ec-edition33 .ec33-story__body{padding-inline:.75rem;padding-bottom:.5rem;min-width:0}
@media(max-width:560px){
 #main-content.ec-edition33 .ec33-chapter-nav{flex-wrap:wrap;overflow:visible;white-space:normal;margin-inline:0;padding-inline:0;gap:.15rem 1.15rem}
 #main-content.ec-edition33 .ec33-chapter-nav a{min-height:44px}
}

/* enhanced-cards.css */
/*
 * Enhanced place cards.
 *
 * Presentation only: the semantic modifier is supplied by the entitlement
 * decorator after membership, order and pagination are already fixed.
 * Keep media sizing/cropping unchanged; inset framed text for readability.
 */

:root {
  --ec-enhanced-line: #a87824;
  --ec-enhanced-ring: rgba(168, 120, 36, .42);
  --ec-enhanced-wash: rgba(255, 248, 229, .78);
  --ec-enhanced-shadow: rgba(38, 49, 47, .14);
}

/* EnhancedListingRendererAdapter output. The modifier comes only from the
   native enhanced entitlement; editorial and owner signals keep their own UI. */
.ec33-chapter.ec33-business .ec33-card.ec33-card--enhanced {
  --ec-enhanced-card-ink: #173e34;
  --ec-enhanced-card-gold: #b18a45;
  --ec-enhanced-card-paper: #f5f0e5;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: .25rem;
  background: linear-gradient(165deg, #fffdf8 18%, var(--ec-enhanced-card-paper) 100%);
  box-shadow: 0 0 0 1px rgba(177, 138, 69, .62), 0 1rem 2.4rem rgba(32, 59, 51, .12);
}

.ec33-chapter.ec33-business .ec33-card.ec33-card--enhanced .ec33-card__visual {
  box-shadow: inset 0 -3px 0 var(--ec-enhanced-card-gold);
}

.ec33-chapter.ec33-business .ec33-card.ec33-card--enhanced .ec33-card__body {
  padding: .85rem .75rem .75rem;
  background: linear-gradient(180deg, rgba(255, 248, 229, .56), rgba(255, 248, 229, 0) 9rem);
}

.ec33-chapter.ec33-business .ec33-card.ec33-card--enhanced .ec33-card__body h3,
.ec33-chapter.ec33-business .ec33-card.ec33-card--enhanced .ec33-card__action {
  color: var(--ec-enhanced-card-ink);
}

.ec33-chapter.ec33-business .ec33-card.ec33-card--enhanced .ec33-card__action {
  display: flex;
  align-items: center;
  min-height: 44px;
  border-top-color: rgba(23, 62, 52, .28);
}

.ec33-chapter.ec33-business .ec33-card__enhanced {
  display: grid;
  gap: .55rem;
  width: 100%;
  margin: 0 0 .8rem;
}

.ec33-chapter.ec33-business .ec33-card__enhanced-summary {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin: 0;
  color: #425750;
  font-size: .78rem;
  line-height: 1.55;
}

.ec33-chapter.ec33-business .ec33-card__enhanced-facts {
  margin: 0;
  color: #536655;
  font-size: .64rem;
  font-weight: 650;
  line-height: 1.45;
  letter-spacing: .035em;
  text-transform: uppercase;
}

.ec33-chapter.ec33-business .ec33-card__enhanced-label {
  box-sizing: border-box;
  width: 100%;
  margin: .15rem 0 0;
  padding: .58rem .7rem;
  border-top: 2px solid var(--ec-enhanced-card-gold);
  background: var(--ec-enhanced-card-ink);
  color: #fffaf0;
  font-size: .64rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: .075em;
  text-transform: uppercase;
}

/* The acquisition link is not relevant once this exact card is enhanced. */
.ec33-chapter.ec33-business .ec33-card.ec33-card--enhanced .tcoc-card-link {
  display: none !important;
}

@media (max-width: 40rem) {
  .ec33-chapter.ec33-business .ec33-card.ec33-card--enhanced .ec33-card__body { padding: .75rem .65rem .65rem; }
  .ec33-chapter.ec33-business .ec33-card__enhanced { gap: .42rem; margin-bottom: .65rem; }
  .ec33-chapter.ec33-business .ec33-card__enhanced-summary { font-size: .74rem; line-height: 1.48; }
  .ec33-chapter.ec33-business .ec33-card__enhanced-label { padding: .52rem .62rem; }
}

@media (forced-colors: active) {
  .ec33-chapter.ec33-business .ec33-card.ec33-card--enhanced {
    outline: 3px double CanvasText;
    outline-offset: 2px;
    background: Canvas;
    color: CanvasText;
    box-shadow: none;
  }
  .ec33-chapter.ec33-business .ec33-card.ec33-card--enhanced .ec33-card__visual { box-shadow: inset 0 -3px 0 CanvasText; }
  .ec33-chapter.ec33-business .ec33-card.ec33-card--enhanced .ec33-card__body,
  .ec33-chapter.ec33-business .ec33-card__enhanced-label { background: Canvas; color: CanvasText; }
}

/* Shared cards used by search, saved and related-place surfaces. */
.ec-public-visual .ec-card.ec-card--enhanced,
.ec-vivid .ec-card.ec-card--enhanced {
  border-color: var(--ec-enhanced-line);
  background: linear-gradient(155deg, #fff 35%, var(--ec-enhanced-wash) 100%);
  box-shadow:
    0 0 0 2px var(--ec-enhanced-ring),
    0 12px 28px var(--ec-enhanced-shadow);
}

.ec-card.ec-card--enhanced .ec-card__title {
  font-weight: 700;
}

/* Discover cards intentionally have no outer border in the base design. */
#main-content .ec-discover-card.ec-discover-card--enhanced {
  border-radius: 1rem;
  box-shadow:
    0 0 0 2px var(--ec-enhanced-ring),
    0 10px 24px var(--ec-enhanced-shadow);
}

#main-content .ec-discover-card.ec-discover-card--enhanced .ec-discover-card__body {
  padding: 1rem;
  background: linear-gradient(90deg, var(--ec-enhanced-wash), rgba(255, 255, 255, 0));
}

#main-content .ec-discover-card.ec-discover-card--enhanced h3 {
  font-weight: 750;
}

/* Atlas cards vary from open editorial tiles to bordered business cards. */
.ec-atlas-home .atlas-card.atlas-card--enhanced .atlas-card-image,
.atlas-card.atlas-card--enhanced .atlas-card-image {
  box-shadow:
    0 0 0 2px var(--ec-enhanced-ring),
    0 10px 24px var(--ec-enhanced-shadow);
}

.ec-atlas-home .atlas-card.atlas-card--enhanced .atlas-card-copy,
.atlas-card.atlas-card--enhanced .atlas-card-copy {
  background: linear-gradient(90deg, var(--ec-enhanced-wash), rgba(255, 255, 255, 0));
}

.ec-atlas-home .atlas-card.atlas-card--text.atlas-card--enhanced .atlas-card-copy,
.atlas-card.atlas-card--text.atlas-card--enhanced .atlas-card-copy {
  padding: .75rem;
  border-radius: .5rem;
  box-shadow:
    0 0 0 2px var(--ec-enhanced-ring),
    0 10px 24px var(--ec-enhanced-shadow);
}

.ec-atlas-home .atlas-card.atlas-card--enhanced h3,
.atlas-card.atlas-card--enhanced h3 {
  font-weight: 700;
}

.ec-business-hub .atlas-card.atlas-card--enhanced {
  border-color: var(--ec-enhanced-line);
  background: linear-gradient(155deg, #fff 35%, var(--ec-enhanced-wash) 100%);
  box-shadow:
    0 0 0 2px var(--ec-enhanced-ring),
    0 12px 28px var(--ec-enhanced-shadow);
}

@media (max-width: 360px) {
  .ec-atlas-home .atlas-card.atlas-card--text.atlas-card--enhanced h3 {
    font-size: 1.125rem;
    line-height: 1.3;
  }
}

@media (forced-colors: active) {
  .ec-card.ec-card--enhanced,
  #main-content .ec-discover-card.ec-discover-card--enhanced,
  .atlas-card.atlas-card--enhanced {
    outline: 3px double CanvasText;
    outline-offset: 2px;
  }

  .ec-card.ec-card--enhanced,
  #main-content .ec-discover-card.ec-discover-card--enhanced .ec-discover-card__media,
  #main-content .ec-discover-card.ec-discover-card--enhanced .ec-discover-card__body,
  .atlas-card.atlas-card--enhanced,
  .atlas-card.atlas-card--enhanced .atlas-card-image,
  .atlas-card.atlas-card--enhanced .atlas-card-copy {
    background: Canvas;
    color: CanvasText;
    box-shadow: none;
  }
}


/* /* Crop marked home-card photos to their actual image frame, without changing originals. */
.ec33-business__grid .ec33-card__visual:has(> a > img[data-ec-original-aspect="true"]) {
  position: relative !important;
  aspect-ratio: 3 / 2 !important;
  overflow: hidden;
}

.ec33-business__grid .ec33-card__visual:has(> a > img[data-ec-original-aspect="true"]) > a {
  position: absolute !important;
  inset: 0 !important;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.ec33-business__grid .ec33-card__visual > a > img[data-ec-original-aspect="true"] {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover !important;
  object-position: center;
}
n/* Uniform cover crop for every homepage food/place card. */n#home-food .ec33-card__visualposition:relative!important;aspect-ratio:3/2!important;overflow:hidden!importantn#home-food .ec33-card__visual>a:first-childposition:absolute!important;inset:0!important;display:block!important;width:100
/* PORTAL4 home food cards: uniform 3:2 cover frames for every image. marker: portal4-home-card-cover-r4 */
#home-food .ec33-card__visual{position:relative!important;display:block!important;width:100%!important;height:auto!important;aspect-ratio:3/2!important;overflow:hidden!important}
#home-food .ec33-card__visual>a:first-of-type{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;overflow:hidden!important}
#home-food .ec33-card__visual>a:first-of-type>img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}

#home-food .ec33-card__visual{aspect-ratio:3 / 2!important;height:auto!important;position:relative!important;overflow:hidden!important}
#home-food .ec33-card__visual > a:first-of-type{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;overflow:hidden!important}
#home-food .ec33-card__visual > a:first-of-type > img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;object-position:center center!important}
#main-content#main-content #home-food .ec33-card__visual img{object-fit:cover!important;transform:none!important}

html body.ec-home-portal #home-food .ec33-card.tc-featured-home .ec33-card__visual img{object-fit:cover!important;object-position:center center!important;transform:none!important}

html body.ec-home-portal #home-food#home-food .ec33-card.tc-featured-home .ec33-card__visual img{object-fit:cover!important;object-position:center center!important;transform:none!important}

/* action-polish.css */
/* Shared public actions. Directional marks retain the original link and accessible name. */
html body.ec-vivid.ec-public #main-content.ec-main {
  --action-ink: #173d3b;
  --action-paper: #fff;
  --action-line: #d6dfd8;
  --action-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14m-6-6 6 6-6 6' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
/* Primary actions: a compact, consistent control with room for translated copy. */
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-button, .ec33-search button[type=submit], .ec-place-profile__button, .ec-bestof-button, .ec-dest-explorer__submit, .ec-idea__primary, .ec-ideas__filters button) {
  box-sizing: border-box;
  min-height: 44px;
  max-width: 100%;
  padding: .625rem 1rem;
  border: 1px solid var(--action-ink);
  border-radius: 6px;
  background: var(--action-ink);
  color: #fffdf5 !important;
  font-family: var(--atlas-body, "DM Sans", Arial, sans-serif);
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.45;
  letter-spacing: .005em;
  text-align: start;
  text-decoration: none;
  text-transform: none;
  white-space: normal;
  overflow-wrap: anywhere;
  gap: .625rem;
  box-shadow: none;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-button, .ec33-search button[type=submit], .ec-place-profile__button, .ec-bestof-button, .ec-dest-explorer__submit, .ec-idea__primary, .ec-ideas__filters button):hover:not(:disabled):not([aria-disabled=true]) {
  background: #244f48;
  border-color: #244f48;
  box-shadow: none;
}
/* Save / secondary actions stay recognisably secondary. */
html body.ec-vivid.ec-public #main-content.ec-main :is(a, button, span):is(.ec-place-profile__button--quiet, .ec-place-profile__button--light, .ec-bestof-button--quiet, .ec-bestof-button--light)[class] {
  background: var(--action-paper);
  border-color: var(--action-line);
  color: var(--action-ink) !important;
  box-shadow: none;
}
html body.ec-vivid.ec-public #main-content.ec-main :is(a, button, span):is(.ec-place-profile__button--quiet, .ec-place-profile__button--light, .ec-bestof-button--quiet, .ec-bestof-button--light)[class]:hover:not(:disabled):not([aria-disabled=true]) {
  background: #f0f4f0;
  border-color: #9bb0a1;
}
html body.ec-vivid.ec-public #main-content.ec-main :is(a, button):is(.ec-place-profile__button, .ec-bestof-button)[class][aria-pressed=true] {
  background: #e6eee3;
  border-color: #6a8b72;
  color: var(--action-ink) !important;
}
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-button, .ec-place-profile__button, .ec-bestof-button, .ec-dest-explorer__submit):is(:disabled, [aria-disabled=true]) {
  opacity: .55;
  cursor: not-allowed;
  box-shadow: none;
}
/* Destination cards keep Save beside the content. Override the legacy MU-plugin
   box treatment while preserving its bookmark, pressed state and focus ring. */
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer :is(.ec-destination29-card__actions, .ec-dest-card__actions) button[data-ec-save][data-entity-type][data-entity-id]:not([hidden]) {
  min-height: 44px;
  padding: .5rem .25rem;
  border: 0 !important;
  background: transparent !important;
  color: var(--action-ink) !important;
  text-decoration: none;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer :is(.ec-destination29-card__actions, .ec-dest-card__actions) button[data-ec-save][data-entity-type][data-entity-id]:not([hidden])::before {
  width: 18px !important;
  height: 18px !important;
  flex-basis: 18px !important;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer :is(.ec-destination29-card__actions, .ec-dest-card__actions) button[data-ec-save][data-entity-type][data-entity-id]:not([hidden]):hover:not(:disabled):not([aria-disabled=true]) {
  text-decoration: underline;
  text-underline-offset: .25em;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer :is(.ec-destination29-card__actions, .ec-dest-card__actions) button[data-ec-save][data-entity-type][data-entity-id]:not([hidden])[aria-pressed=true] { font-weight: 700; text-decoration: none; }
/* Text links and utility actions remain subordinate to the content. */
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-text-link, .ec33-card__action, .ec-place-profile__text-link, .ec-place-profile__share, .ec-dest-explorer__share) {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  min-height: 44px;
  gap: .5rem;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0;
  text-decoration: none;
  border-bottom-color: var(--action-line);
  text-underline-offset: .25em;
}
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec-place-profile__share, .ec-dest-explorer__share) {
  padding: .375rem .25rem;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #52665c;
  box-shadow: none;
}
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec-place-profile__share, .ec-dest-explorer__share):hover {
  color: var(--action-ink);
  text-decoration: underline;
}
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-button, .ec-place-profile__button, .ec-bestof-button, .ec-dest-explorer__submit) > svg {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec33-card__action { padding: .6rem 0; }
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-destination h3 a, .ec33-park h3 a) { min-height: 44px; gap: .7rem; }
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-text-link, .ec33-card__action, .ec33-destination h3 a, .ec33-park h3 a) > svg,
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec-bestof-card__copy h3, .ec-destination29-card__copy h3, .ec-around-profile__card-content h4 a) > span[aria-hidden] {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  font-size: 0;
  transition: transform .18s ease;
}
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec-bestof-card__copy h3, .ec-destination29-card__copy h3, .ec-around-profile__card-content h4 a) > span[aria-hidden]::after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: currentColor;
  -webkit-mask: var(--action-arrow) center / contain no-repeat;
  mask: var(--action-arrow) center / contain no-repeat;
}
html body.ec-vivid.ec-public #main-content.ec-main :is(a:hover, a:focus-visible) :is(.ec33-card__action > svg, .ec-bestof-card__copy h3 > span[aria-hidden], .ec-destination29-card__copy h3 > span[aria-hidden], .ec-around-profile__card-content h4 a > span[aria-hidden]),
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-text-link, .ec33-destination h3 a, .ec33-park h3 a):is(:hover, :focus-visible) > svg {
  transform: translateX(2px);
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-destination29-primary > span[aria-hidden]::after { transform: rotate(90deg); }
/* Unicode arrows become crisp vector marks; bookmark/search icons are untouched. */
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec-place-profile__button, .ec-place-profile__text-link, .ec-place-profile__share, .ec-dest-explorer__submit, .ec-dest-explorer__share, .ec-destination29-primary) > span[aria-hidden] {
  display: inline-flex;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  font-size: 0;
  align-items: center;
  justify-content: center;
}
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec-place-profile__button, .ec-place-profile__text-link, .ec-place-profile__share, .ec-dest-explorer__submit, .ec-dest-explorer__share, .ec-destination29-primary) > span[aria-hidden]::after {
  content: "";
  width: 20px;
  height: 20px;
  background: currentColor;
  -webkit-mask: var(--action-arrow) center / contain no-repeat;
  mask: var(--action-arrow) center / contain no-repeat;
}
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec-place-profile__text-link, .ec-place-profile__share, .ec-place-profile__button[data-ec-cta]) > span[aria-hidden]::after { transform: rotate(-45deg); }
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-profile__button[href="#ec-profile-about"] > span[aria-hidden]::after { transform: rotate(45deg); }
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-button, .ec33-text-link, .ec33-search button, .ec33-destination h3 a, .ec33-park h3 a, .ec33-card__action, .ec-place-profile__button, .ec-place-profile__text-link, .ec-place-profile__share, .ec-bestof-button, .ec-bestof-card__link, .ec-destination29-card__link, .ec-dest-explorer__submit, .ec-dest-explorer__share, .ec-idea__primary, .ec-ideas__filters button):focus-visible {
  outline: 3px solid #567d64;
  outline-offset: 4px;
  box-shadow: 0 0 0 2px var(--action-paper);
}
@media (max-width: 600px) {
  html body.ec-vivid.ec-public #main-content.ec-main .ec-bestof-actions > .ec-destination29-primary { flex: 1 1 auto; padding-inline: .85rem; gap: .65rem; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-destination29-primary + .ec-bestof-button--quiet { flex: 0 0 auto; width: auto; padding-inline: .85rem; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-place-profile__actions { width: 100%; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-place-profile__actions > .ec-place-profile__button:not(.ec-place-profile__button--quiet) { flex-basis: 100%; justify-content: space-between; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-place-profile__actions > .ec-place-profile__button--quiet { flex: 0 1 auto; }
  html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-text-link, .ec33-card__action) { font-size: .875rem; min-height: 44px; gap: .5rem; }
  html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-text-link, .ec33-card__action, .ec33-destination h3 a, .ec33-park h3 a) > svg { width: 20px; height: 20px; flex-basis: 20px; padding: 0; }
}
@media (prefers-reduced-motion: reduce) {
  html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-button, .ec33-text-link, .ec33-card__action, .ec33-destination h3 a, .ec33-park h3 a, .ec-place-profile__button, .ec-bestof-button, .ec-dest-explorer__submit, .ec-idea__primary, .ec-ideas__filters button),
  html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-text-link, .ec33-card__action, .ec33-destination h3 a, .ec33-park h3 a) > svg,
  html body.ec-vivid.ec-public #main-content.ec-main :is(.ec-bestof-card__copy h3, .ec-destination29-card__copy h3, .ec-around-profile__card-content h4 a) > span[aria-hidden] { transition: none !important; transform: none !important; }
}
@media (forced-colors: active) {
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer :is(.ec-destination29-card__actions, .ec-dest-card__actions) button[data-ec-save][data-entity-type][data-entity-id]:not([hidden]) { color: ButtonText !important; background: ButtonFace !important; border: 1px solid ButtonText !important; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer :is(.ec-destination29-card__actions, .ec-dest-card__actions) button[data-ec-save][data-entity-type][data-entity-id]:not([hidden])[aria-pressed=true] { color: Highlight !important; border-color: Highlight !important; }

  html body.ec-vivid.ec-public #main-content.ec-main :is(.ec33-button, .ec33-search button[type=submit], .ec-place-profile__button, .ec-bestof-button, .ec-dest-explorer__submit, .ec-idea__primary, .ec-ideas__filters button),
  html body.ec-vivid.ec-public #main-content.ec-main :is(a, button, span):is(.ec-place-profile__button--quiet, .ec-place-profile__button--light, .ec-bestof-button--quiet, .ec-bestof-button--light)[class]:hover:not(:disabled):not([aria-disabled=true]),
  html body.ec-vivid.ec-public #main-content.ec-main :is(a, button):is(.ec-place-profile__button, .ec-bestof-button)[class][aria-pressed=true] { color: ButtonText !important; background: ButtonFace !important; border-color: ButtonText !important; box-shadow: none; }
  html body.ec-vivid.ec-public #main-content.ec-main :is(a, button):focus-visible { outline-color: Highlight; }
  html body.ec-vivid.ec-public #main-content.ec-main span[aria-hidden]::after { forced-color-adjust: none; background: CanvasText; }
}

/* Feedback 2026-10-21: equal language cells, centered photo controls and compact practical links. */
html body.ec-public .ec-site-header:not(.ec-site-header--private) .ec-language-switcher > .ec-language {
  display: inline-flex; align-items: center; justify-content: center;
  box-sizing: border-box; flex: 0 0 44px; width: 44px; min-width: 44px; min-height: 44px;
  margin: 0; padding: .25rem; line-height: 1.3; text-align: center;
}
html body.ec-public #main-content .ec-gallery__link::after {
  content: ""; box-sizing: border-box; padding: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3H3v6m0-6 7 7m5 11h6v-6m0 6-7-7'/%3E%3C/svg%3E");
  background-position: center; background-size: 18px 18px; background-repeat: no-repeat;
}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__open {
  box-sizing: border-box; gap: 0; padding: 0;
}
html body.ec-public #main-content .ec-place-profile[data-ec-place-profile] .ec-place-profile__hero-media .ec-gallery--1 .ec-gallery__open::before {
  content: ""; display: block; flex: 0 0 20px; width: 20px; height: 20px; margin: 0; padding: 0;
  background: currentColor;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3H3v6m0-6 7 7m5 11h6v-6m0 6-7-7'/%3E%3C/svg%3E") center/contain no-repeat;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3H3v6m0-6 7 7m5 11h6v-6m0 6-7-7'/%3E%3C/svg%3E") center/contain no-repeat;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-profile[data-ec-place-profile] .ec-place-profile__contact { margin-top: .65rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-idea [data-journey-compare][aria-busy="true"] { display: inline-flex; align-items: center; gap: .5rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-idea [data-journey-compare][aria-busy="true"]::before {
  content: ""; width: 1em; height: 1em; flex: 0 0 1em; border: 2px solid currentColor;
  border-right-color: transparent; border-radius: 50%; animation: ec-compare-progress .7s linear infinite;
}
@keyframes ec-compare-progress { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  html body.ec-vivid.ec-public #main-content.ec-main .ec-idea [data-journey-compare][aria-busy="true"]::before { animation: none; }
}

/* portal-layout.css */
/* Shared public layouts: content first, controls scaled to the available choice. */
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer {
  --dx-ink: #173d36;
  --dx-muted: #56665f;
  --dx-line: #dce2d9;
  --dx-blue: #285d49;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub {
  padding: 2.5rem 0 0;
  margin-top: 1rem;
  border-top: 1px solid var(--dx-line);
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__header {
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 1.4rem;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__header h2 {
  font-size: clamp(1.8rem, 2.6vw, 2.5rem);
  line-height: 1.12;
  margin: 0 0 .6rem;
  text-wrap: balance;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__header p:not(.ec-bestof-eyebrow) {
  font-size: .9375rem;
  line-height: 1.6;
  max-width: 40ch;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__share {
  min-height: 44px;
  padding: .5rem 0;
  font-size: .8125rem;
  font-weight: 500;
  gap: .5rem;
  color: var(--dx-muted);
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__workspace { min-width: 0; }
/* The search is one useful control, without a second decorative panel around it. */
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__tools {
  display: flex;
  align-items: end;
  gap: .65rem;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__search {
  flex: 1 1 20rem;
  min-width: 0;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__search > label {
  font-size: .75rem;
  font-weight: 600;
  margin: 0 0 .4rem;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__search > div {
  min-height: 46px;
  border: 1px solid #cdd8cf;
  border-radius: 6px;
  background: #fff;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__tools input[type=search] {
  height: 44px;
  min-height: 44px;
  border: 0;
  padding: .55rem .7rem;
  background: transparent;
  box-shadow: none;
  font-size: 16px;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__submit {
  min-height: 46px;
  padding: .6rem 1rem;
  border-radius: 6px;
  gap: .6rem;
  font-size: .875rem;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__filters { gap: .25rem 1.1rem; margin-top: .65rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__chip {
  min-height: 44px;
  padding: .6rem .15rem;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  background: transparent;
  font-size: .8125rem;
  font-weight: 500;
  color: var(--dx-muted);
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__chip[aria-current=true],
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__chip[aria-current=true]:hover {
  border-color: var(--dx-blue);
  background: transparent;
  color: var(--dx-ink) !important;
  font-weight: 700;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__chip:hover { background: transparent; color: var(--dx-ink); }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__results-heading {
  margin: 1.25rem 0 .75rem;
  padding: 0;
  border: 0;
  font-size: .75rem;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__results-heading strong { color: var(--dx-muted); font-weight: 500; }
/* Small destinations have the same reading order as larger ones: heading, places, tools. */
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--compact { display: block; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__refine { margin: 1rem 0 0; max-width: 48rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__refine > summary {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: .6rem;
  min-height: 44px;
  list-style: none;
  color: var(--dx-muted);
  font: 500 .8125rem/1.4 var(--atlas-body,"DM Sans",Arial,sans-serif);
  cursor: pointer;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__refine > summary::-webkit-details-marker { display: none; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__refine > summary > span { font-size: 1.1rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__refine[open] > summary > span { transform: rotate(45deg); }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__refine[open] { padding-bottom: .75rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--compact .ec-dest-explorer__results-heading { margin-top: .1rem; }
/* Recommendation cards keep the photograph, place and practical context together. */
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  max-width: none;
  gap: 1.5rem 2rem;
  align-items: start;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-grid--directory { grid-template-columns: repeat(3,minmax(0,1fr)); }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card {
  display: block;
  min-width: 0;
  margin: 0;
  padding: 1.5rem 0 0;
  border: 0;
  border-top: 1px solid var(--dx-line);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__visual { min-width: 0; margin: 0; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__image {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  margin: 0;
  border-radius: 8px;
  background: #eef1ea;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__image img { display: block; width: 100%; height: 100%; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__image img:not([data-ec-original-aspect]) { object-fit: cover !important; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__image img[data-ec-original-aspect] { object-fit: contain !important; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__body { min-width: 0; padding-top: 1.1rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card--text .ec-destination29-card__body { padding-top: 0; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__copy h3 {
  display: block;
  margin: .35rem 0 .8rem;
  font: 600 1.45rem/1.22 var(--atlas-body,"DM Sans",Arial,sans-serif) !important;
  letter-spacing: -.025em;
  overflow-wrap: anywhere;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__copy h3 .ec-destination29-card__link {
  display: inline;
  color: var(--dx-ink);
  text-decoration: none;
  background: none;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__copy h3 a:hover { text-decoration: underline; text-underline-offset: .15em; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__label {
  margin: 0;
  color: #576b61;
  font: 500 .75rem/1.5 var(--atlas-body,"DM Sans",Arial,sans-serif);
  letter-spacing: .01em;
  text-transform: none;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__summary {
  display: block;
  overflow: visible;
  -webkit-line-clamp: unset;
  max-width: 66ch;
  margin: 0;
  color: #40574c;
  font-size: .9375rem;
  line-height: 1.65;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__address {
  display: flex;
  align-items: flex-start;
  gap: .45rem;
  margin: .9rem 0 0;
  color: #576b61;
  font-size: .8125rem;
  line-height: 1.5;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__address svg { width: 17px; height: 19px; flex: 0 0 17px; margin-top: .05rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__selection { margin: .65rem 0 0; font-size: .75rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: .35rem 1.3rem;
  margin: .75rem 0 0;
  padding: 0;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__actions :is(a,button) {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: .45rem;
  width: auto;
  min-width: 0;
  min-height: 44px;
  padding: .45rem 0;
  border: 0;
  border-radius: 2px;
  background: transparent;
  color: #50675b;
  font: 500 .8125rem/1.4 var(--atlas-body,"DM Sans",Arial,sans-serif);
  text-decoration: none;
  box-shadow: none;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__actions .ec-destination29-card__open { color: #234e3d; font-weight: 650; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__actions :is(a,button):hover,
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__actions button[aria-pressed=true] { text-decoration: underline; text-underline-offset: .25em; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__actions :is(a,button):focus-visible { outline: 2px solid #285d49; outline-offset: 4px; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card--photo {
  display: grid;
  grid-template-columns: minmax(0,.72fr) minmax(0,1fr);
  gap: 1.25rem;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card--photo .ec-destination29-card__body { padding: 0; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card__image { aspect-ratio: 4 / 5; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-grid:has(> .ec-destination29-card:only-child) { grid-template-columns: minmax(0,1fr); max-width: none; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card--photo:only-child {
  grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
  align-items: center;
  gap: clamp(1.5rem,3vw,3rem);
  padding: 1.5rem 0;
  border-bottom: 1px solid var(--dx-line);
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card--photo:only-child .ec-destination29-card__image { aspect-ratio: 3 / 2; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card:only-child .ec-destination29-card__copy h3 {
  font: 500 clamp(1.8rem,3vw,2.7rem)/1.12 var(--atlas-display,"Cormorant Garamond",Georgia,serif) !important;
  letter-spacing: -.03em;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card--text:only-child {
  display: block;
  padding: 1.5rem 0;
  border-bottom: 1px solid var(--dx-line);
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card--text:only-child .ec-destination29-card__body { max-width: 72ch; padding: 0; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card:only-child .ec-destination29-card__summary { font-size: 1rem; line-height: 1.7; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__next {
  margin: 1.75rem 0 0;
  padding: .8rem 0;
  gap: .25rem 1.5rem;
  border-top: 1px solid var(--dx-line);
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__next a { font-size: .8125rem; font-weight: 500; text-decoration: none; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__next a:hover { text-decoration: underline; }
/* Shared directory controls use the same light treatment across stories, search and discovery. */
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec-guide-directory__form,.ec-discover-experience__form,.ec-portal-search__form,.ec-event-directory__form) {
  border: 1px solid #dce2d9;
  border-radius: 8px;
  background: #f7f7f2;
  padding: 1rem;
  box-shadow: none;
}
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec-guide-directory__submit,.ec-discover-experience__button,.ec-portal-search__submit,.ec-event-directory__submit) {
  min-height: 44px;
  padding: .65rem 1rem;
  border-radius: 6px;
  background: #173d36;
  border-color: #173d36;
  color: #fff !important;
  font-size: .875rem;
}
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec-guide-directory__field,.ec-discover-experience__select) :is(input,select) { border-radius: 5px; }
@media (max-width: 60rem) {
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__refine > summary { justify-content: flex-start; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-grid--directory { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 40rem) {
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub { padding-top: 1.8rem; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__header { align-items: flex-start; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__tools { flex-wrap: wrap; gap: .5rem; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__search { flex-basis: calc(100% - 7rem); }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__submit { gap: .4rem; padding-inline: .75rem; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-grid { grid-template-columns: minmax(0,1fr); }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__summary { font-size: .9375rem; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__next { display: grid; gap: .15rem; margin-top: 1.25rem; }
}
@media (forced-colors: active) {
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card { background: Canvas; border-color: CanvasText; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__chip[aria-current=true] { border-color: Highlight; }
}
/* Main browsing choices stay visible; optional detail filters never obscure the results. */
html body.ec-vivid.ec-public #main-content.ec-main .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters {
  display: grid;
  grid-template-columns: minmax(0,1.4fr) minmax(0,1fr) minmax(0,.85fr) auto;
  max-width: none;
  align-items: end;
  gap: .85rem;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-discover-experience__main-filters > .ec-discover-experience__select { display: flex; flex-direction: column; align-items: stretch; gap: .4rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-discover-experience__main-filters select { min-height: 46px; font-size: 1rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-discover-experience__main-filters > button { min-height: 46px; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-discover-experience__filters { margin-top: .5rem; }
html body.ec-vivid.ec-public #main-content.ec-main :is(.ec-discover-experience__intro,.ec-guide-directory__heading,.ec-dest-explorer__header,.ec-portal-search__heading) h1 {
  font-family: var(--atlas-display,"Cormorant Garamond",Georgia,serif) !important;
  font-weight: 500 !important;
  font-size: clamp(2.5rem,4.5vw,4.2rem) !important;
  line-height: 1.08;
}
html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-grid--directory:has(> .ec-destination29-card:nth-child(2):last-child) { grid-template-columns: repeat(2,minmax(0,1fr)); }
@media (max-width: 60rem) {
  html body.ec-vivid.ec-public #main-content.ec-main .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 40rem) {
  html body.ec-vivid.ec-public #main-content.ec-main .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__main-filters { grid-template-columns: minmax(0,1fr); gap: .7rem; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-grid--directory:has(> .ec-destination29-card:nth-child(2):last-child) { grid-template-columns: minmax(0,1fr); }
}
/* One clear content column on smaller screens; photos remain attached to their place. */
@media (max-width: 64rem) {
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-grid { grid-template-columns: minmax(0,1fr); }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card--photo { grid-template-columns: minmax(0,.6fr) minmax(0,1fr); }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card__image { aspect-ratio: 3 / 2; }
}
@media (max-width: 40rem) {
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card--photo,
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card--photo:only-child { display: block; padding-top: 1.15rem; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card--photo .ec-destination29-card__body { padding-top: 1.1rem; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card__image { width: 100%; height: auto; aspect-ratio: 3 / 2; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer--hub .ec-destination29-card:only-child .ec-destination29-card__copy h3 { font-size: 2rem !important; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer .ec-destination29-card__actions { gap: .25rem 1.1rem; }
  html body.ec-vivid.ec-public #main-content.ec-main .ec-dest-explorer__refine { margin-top: .6rem; }
}

/* A lone place is a complete editorial row; a pair uses the available two columns. */
html body.ec-vivid.ec-public #main-content.ec-main #ec-public-search .ec-portal-search__grid:has(>.ec-portal-search__item>.ec-place-result-row),
html body.ec-vivid.ec-public #main-content.ec-main .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results:has(>.ec-place-result-row){grid-template-columns:minmax(0,1fr);max-width:none;width:100%}
html body.ec-vivid.ec-public #main-content.ec-main #ec-public-search .ec-portal-search__grid:has(>.ec-portal-search__item:first-child:nth-last-child(2)),
html body.ec-vivid.ec-public #main-content.ec-main .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results:has(>.ec-discover-card:first-of-type:nth-last-of-type(2)){grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;width:100%}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(1.5rem,3vw,3rem);align-items:start;min-width:0;width:100%;padding:1.25rem 0 0;border:0;border-top:1px solid #d9dfd7;border-radius:0;background:transparent;box-shadow:none;color:#203b33;font-family:var(--atlas-body,"DM Sans",Arial,sans-serif)}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__visual{min-width:0;margin:0}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__visual>a{display:block;min-height:0;overflow:visible;border:0;border-radius:0;background:transparent;aspect-ratio:auto}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__visual img{display:block;position:static;width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain;transform:none;border-radius:4px}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__body{min-width:0;max-width:68ch;padding:.15rem 0 0}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__meta{margin:0 0 .6rem;font-size:.8125rem;line-height:1.6;color:#52645c}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row h3{margin:0 0 1rem;font:500 clamp(1.9rem,3vw,2.65rem)/1.12 var(--atlas-display,"Cormorant Garamond",Georgia,serif);letter-spacing:-.025em;color:#203b33;overflow-wrap:break-word}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row h3 a{color:inherit;text-decoration:none}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__summary{display:block;margin:0;font-size:1rem;line-height:1.75;color:#52645c;overflow:visible}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__address{margin:1rem 0 0;font-size:.875rem;line-height:1.6;color:#52645c}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__selected{margin:.75rem 0 0;font-size:.75rem;font-weight:600;line-height:1.6;color:#285d49}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__actions{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem 1.5rem;margin:1rem 0 0}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__actions :is(a,button){display:inline-flex;align-items:center;justify-content:flex-start;gap:.55rem;min-height:44px;max-width:100%;margin:0;padding:.45rem 0;border:0;border-radius:.25rem;background:transparent;box-shadow:none;font:550 .875rem/1.5 var(--atlas-body,"DM Sans",Arial,sans-serif);color:#52645c;text-align:left;white-space:normal;text-decoration:none}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__actions .ec-place-result-row__open{font-weight:650;color:#285d49}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row :is(a,button):hover{text-decoration:underline;text-underline-offset:.2em}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row :is(a,button):focus-visible{outline:3px solid #285d49;outline-offset:4px}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__actions button[data-ec-save][data-entity-type][data-entity-id]:not([hidden]){justify-content:flex-start!important;border:0!important;background:transparent!important;color:#285d49!important}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__actions button[data-ec-save][data-entity-type][data-entity-id]:not([hidden])::before{width:18px!important;height:18px!important;flex-basis:18px!important}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__actions button[aria-pressed=true]{font-weight:700}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__actions button:disabled{opacity:.65;cursor:wait}
html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row--text{grid-template-columns:minmax(0,1fr)}
@media(max-width:48rem){
 html body.ec-vivid.ec-public #main-content.ec-main #ec-public-search .ec-portal-search__grid:has(>.ec-portal-search__item:first-child:nth-last-child(2)),
 html body.ec-vivid.ec-public #main-content.ec-main .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__results:has(>.ec-discover-card:first-of-type:nth-last-of-type(2)){grid-template-columns:minmax(0,1fr)}
 html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row{grid-template-columns:minmax(0,1fr);gap:1.25rem}
 html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__body{padding:0}
}
@media(forced-colors:active){
 html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row :is(a,button):focus-visible{outline-color:Highlight}
 html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__actions button[data-ec-save][data-entity-type][data-entity-id]:not([hidden]){color:ButtonText!important;background:Canvas!important}
 html body.ec-vivid.ec-public #main-content.ec-main .ec-place-result-row__actions button[data-ec-save][data-entity-type][data-entity-id]:not([hidden])[aria-pressed=true]{color:Highlight!important}
}

/* Compact Saved actions and search utilities. Existing action hooks and result layouts are unchanged. */
html body.ec-vivid.ec-public #main-content.ec-main .ec-saved-page { padding-block: 1.5rem 2.5rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-saved-page .ec-saved-heading { padding-bottom: .9rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-saved-page .ec-saved-heading h1 { font-size: clamp(2.2rem, 3.5vw, 2.8rem); }
html body.ec-vivid.ec-public #main-content.ec-main .ec-saved-page .ec-saved-eyebrow { margin-bottom: .45rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-saved-page .ec-saved-heading__intro { margin-top: .5rem; line-height: 1.6; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-saved-page .ec-saved-controls { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem .75rem; margin-bottom: .85rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-saved-page .ec-saved-controls > .ec-saved-button--explore { margin: 0; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-saved-page .ec-saved-controls > .ec-saved-sharing-launch { margin: 0; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-saved-page .ec-saved-controls > .ec-saved-toolbar { flex: 1 1 100%; margin: .2rem 0 0; padding: .65rem .9rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-saved-page .ec-saved-summary { margin: .9rem 0 .8rem; padding-bottom: .6rem; }
html body.ec-vivid.ec-public #main-content.ec-main #ec-public-search .ec-portal-search__tools { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: .5rem 1rem; margin-top: .75rem; }
html body.ec-vivid.ec-public #main-content.ec-main #ec-public-search .ec-portal-search__tools > .ec-portal-search__tabs { flex: 0 1 auto; margin: 0; }
html body.ec-vivid.ec-public #main-content.ec-main #ec-public-search .ec-portal-search__tools > .ec-portal-search__share:not([hidden]) { display: inline-flex; align-items: center; justify-content: flex-start; gap: .45rem; min-height: 44px; max-width: 100%; margin: 0; padding: .45rem 0; border: 0; border-radius: 0; background: transparent; color: #52645c; box-shadow: none; font-size: .75rem; line-height: 1.4; font-weight: 500; text-align: left; white-space: normal; }
html body.ec-vivid.ec-public #main-content.ec-main #ec-public-search .ec-portal-search__tools > .ec-portal-search__share:hover { color: #285d49; text-decoration: underline; text-underline-offset: .2em; }
@media (max-width: 42rem) {
 html body.ec-vivid.ec-public #main-content.ec-main .ec-saved-page { padding-top: 1.1rem; }
 html body.ec-vivid.ec-public #main-content.ec-main .ec-saved-page .ec-saved-controls { gap: .5rem; }
 html body.ec-vivid.ec-public #main-content.ec-main .ec-saved-page .ec-saved-controls > .ec-saved-toolbar { gap: .5rem .75rem; }
}

/* Keep the discovery introduction together above its filters at every width. */
html body.ec-vivid.ec-public #main-content.ec-main .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro { grid-template-columns: minmax(0, 1fr); align-items: start; gap: .5rem; }
html body.ec-vivid.ec-public #main-content.ec-main .ec-discover-experience[data-ec-discover-experience] .ec-discover-experience__intro > p { max-width: 60ch; margin: 0; }

/* home-journal-v2.css */
/* Home journal: keep the lead story prominent without reserving five grid rows. */
.ec-home-portal .ec-edition33 #home-stories .ec33-story,
.ec-home-portal .ec-edition33 #home-stories .ec33-story__body { min-width: 0; }

.ec-home-portal .ec-edition33 #home-stories .ec33-story__body { overflow-wrap: anywhere; }

@media (min-width: 761px) {
  .ec-home-portal .ec-edition33 #home-stories .ec33-journal__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-flow: row;
    grid-auto-rows: auto;
    gap: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2.2vw, 1.75rem);
    align-items: start;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-journal__grid > .ec33-story {
    grid-column: auto;
    grid-row: auto;
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
    height: auto;
    margin: 0;
    padding: 0 0 1.25rem;
    border-bottom: 1px solid #ccd7c7;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-journal__grid > .ec33-story--lead {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(22rem, .7fr);
    padding: 0;
    border: 0;
    border-top: 3px solid #b18a45;
    background: #173e34;
    color: #fffaf0;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story > .ec33-story__photo {
    display: block;
    width: 100%;
    aspect-ratio: 3 / 2;
    overflow: hidden;
    border-radius: 2px;
    background: #dde5d8;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead > .ec33-story__photo {
    height: 100%;
    min-height: 25rem;
    aspect-ratio: auto;
    border-radius: 0;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story > .ec33-story__photo img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    object-fit: cover !important;
    transform: none !important;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story > .ec33-story__body {
    width: 100%;
    padding: 1rem 0 0;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead > .ec33-story__body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(2rem, 5vw, 4.5rem) clamp(1.5rem, 4vw, 3.5rem);
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story h3 {
    max-width: none;
    margin: .65rem 0 .6rem;
    font-size: clamp(1.65rem, 2.1vw, 2rem);
    line-height: 1.12;
    text-wrap: pretty;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead h3 {
    max-width: 15ch;
    margin: .9rem 0 1.1rem;
    color: #fffaf0;
    font-size: clamp(2.7rem, 4vw, 4rem);
    line-height: .96;
    text-wrap: balance;
    overflow-wrap: normal;
    word-break: normal;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead h3 a {
    color: inherit;
    overflow-wrap: normal;
    word-break: normal;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story .ec33-story__summary {
    max-width: none;
    margin-bottom: 0;
    font-size: .875rem;
    line-height: 1.7;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead .ec33-story__summary {
    max-width: 38ch;
    color: #d7e2de;
    font-size: .95rem;
    line-height: 1.75;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead .ec33-story__meta {
    color: #d7bd84;
  }
}

@media (min-width: 761px) and (max-width: 63.99rem) {
  .ec-home-portal .ec-edition33 #home-stories .ec33-journal__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-journal__grid > .ec33-story--lead {
    grid-template-columns: minmax(0, 1.1fr) minmax(19rem, .9fr);
  }
}

@media (max-width: 760px) {
  .ec-home-portal .ec-edition33 #home-stories .ec33-journal__grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead {
    grid-row: auto;
    display: block;
    margin: 0 0 .5rem;
    padding: 0;
    border: 0;
    border-top: 3px solid #b18a45;
    background: #173e34;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead .ec33-story__photo {
    display: block;
    width: 100%;
    aspect-ratio: 3 / 2;
    border-radius: 0;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead .ec33-story__photo img {
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover !important;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead .ec33-story__body {
    padding: 1.4rem 1.2rem 1.6rem;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead .ec33-story__meta { color: #d7bd84; }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead h3 {
    margin: .65rem 0 .75rem;
    color: #fffaf0;
    font-size: clamp(2.1rem, 10vw, 3rem);
    line-height: 1;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead h3 a { color: inherit; }

  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead .ec33-story__summary {
    margin: 0;
    color: #d7e2de;
    font-size: .88rem;
    line-height: 1.7;
  }
}

.ec-home-portal .ec-edition33 #home-stories .ec33-journal__grid > .ec33-story[hidden] {
  display: none !important;
}

@media (forced-colors: active) {
  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead {
    background: Canvas;
    color: CanvasText;
    border-color: CanvasText;
  }
  .ec-home-portal .ec-edition33 #home-stories .ec33-story--lead :is(h3, h3 a, .ec33-story__meta, .ec33-story__summary) {
    color: CanvasText;
  }
}

/* navigation-depth.css */
/* Six direct category entrances; keep the established mobile menu behavior. */
@media (min-width: 75rem) {
  .ec-site-header[data-ec-header]:not(.ec-site-header--private) .ec-site-header__inner {
    gap: .75rem;
  }
  .ec-site-header[data-ec-header] .ec-primary-nav > ul {
    flex-wrap: nowrap;
    gap: 0 clamp(.25rem, .65vw, .75rem);
    justify-content: center;
  }
  .ec-site-header[data-ec-header] .ec-primary-nav > ul > li { flex: 0 0 auto; }
  .ec-site-header[data-ec-header] .ec-primary-nav > ul > li > a {
    white-space: nowrap;
    padding-inline: .2rem;
    font-size: .875rem;
  }
  .ec-site-header[data-ec-header] .ec-utility-nav { flex-shrink: 0; }
}
@media (max-width: 74.999rem) {
  .ec-site-header[data-ec-header] .ec-primary-nav > ul > li + li {
    border-top: 1px solid rgba(27, 61, 53, .1);
  }
  .ec-site-header[data-ec-header] .ec-primary-nav > ul > li > a {
    min-height: 48px;
    padding-block: .7rem;
    font-size: 1rem;
  }
}

/* portal4-motion-layer.css */
:root{--ec-portal4-motion-layer-ready:1}/* PORTAL 4.0 coherent motion layer — rebased local integration candidate. */

/* PORTAL 4.0 homepage motion prototype — local preview only.
   Load after the current editorial33/editorial15 sheets. */

html.ec33-motion-ready #main-content.ec-edition33 .ec33-motion-reveal {
  opacity: 0;
  transform: translate3d(var(--ec33-motion-x, 0), 8px, 0);
  transition:
    opacity 480ms cubic-bezier(.2, .7, .2, 1),
    transform 560ms cubic-bezier(.2, .7, .2, 1);
  transition-delay: var(--ec33-reveal-delay, 0ms);
}

html.ec33-motion-ready #main-content.ec-edition33 .ec33-motion-reveal.is-inview,
html.ec33-motion-ready #main-content.ec-edition33 .ec33-motion-reveal:focus-within {
  opacity: 1;
  transform: none;
  transition-delay: 0ms;
}

/* A tiny editorial sun beside the hero copy; separate from the raster/SVG wordmark. */
#main-content.ec-edition33 .ec33-hero__copy {
  position: relative;
}

#main-content.ec-edition33 .ec33-hero__copy::after {
  content: "";
  position: absolute;
  top: -.2rem;
  right: .15rem;
  width: 2.4rem;
  aspect-ratio: 1;
  pointer-events: none;
  opacity: .78;
  background:
    radial-gradient(circle, #f0b342 0 .31rem, transparent .34rem),
    repeating-conic-gradient(from 0deg, transparent 0deg 38deg, #e4a43c 38deg 42deg, transparent 42deg 60deg);
  transform-origin: 50% 50%;
  animation: ec33-sun-turn 72s linear infinite;
}

@keyframes ec33-sun-turn {
  to { transform: rotate(1turn); }
}

/* Pointer devices get a restrained surface cue; photo transforms are intentionally
   avoided because editorial33 applies transform:none!important to authored photos. */
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  #main-content.ec-edition33 :is(.ec33-destination, .ec33-card, .ec33-story, .ec33-park) {
    transition: transform 260ms ease, box-shadow 260ms ease, outline-color 260ms ease;
  }

  #main-content.ec-edition33 :is(.ec33-destination, .ec33-card, .ec33-story, .ec33-park):hover {
    transform: translateY(-2px) scale(1.008) rotate(.08deg);
    box-shadow: 0 8px 24px rgb(31 62 49 / 8%);
  }
}

#main-content.ec-edition33 :is(.ec33-destination, .ec33-card, .ec33-story, .ec33-park):focus-within {
  outline: 2px solid #668b79;
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  html.ec33-motion-ready #main-content.ec-edition33 .ec33-motion-reveal {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  #main-content.ec-edition33 .ec33-hero__copy::after {
    animation: none !important;
  }
}
/* PORTAL 4.0 restrained editorial motifs — local prototype only. */
.ec-home-portal .ec-edition33 #home-stories .ec-journal-today {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: .55rem 1.25rem;
  margin: clamp(1rem, 2vw, 1.5rem) 0 .8rem;
  padding: .65rem 0;
  border-top: 1px solid rgba(49, 95, 80, .28);
  border-bottom: 1px solid rgba(49, 95, 80, .28);
  color: #315f50;
  font: 650 .7rem/1.45 var(--atlas-body, "DM Sans", Arial, sans-serif);
  letter-spacing: .11em;
  text-transform: uppercase;
}

.ec-home-portal .ec-edition33 #home-stories .ec-journal-today__note {
  color: #66776f;
  font-weight: 500;
  letter-spacing: .025em;
  text-transform: none;
}

.ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif {
  position: relative;
  height: clamp(4rem, 7vw, 5.25rem);
  margin: 0 0 clamp(1.25rem, 2.5vw, 2rem);
  overflow: hidden;
  color: #315f50;
  pointer-events: none;
  user-select: none;
}

.ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif__landmarks {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
  opacity: .42;
}

.ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif__landmarks :is(path, line, ellipse) {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.2;
  vector-effect: non-scaling-stroke;
}

.ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif__sun {
  fill: #e6ae48;
  opacity: .78;
}

.ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif__route {
  position: absolute;
  inset: auto 0 .42rem;
  height: 1.65rem;
  overflow: hidden;
}

.ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif__runner {
  position: absolute;
  top: 0;
  right: 120px;
  width: 2.35rem;
  height: 1.55rem;
}

.ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif__boat {
  display: block;
  width: 100%;
  height: 100%;
  animation: ec-coastline-bob 3.8s ease-in-out infinite;
  transform-origin: 52% 78%;
  will-change: transform;
}

.ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif__boat svg {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
}

@keyframes ec-coastline-bob {
  0%, 100% { transform: translateY(0) rotate(-.35deg); }
  50% { transform: translateY(-1.5px) rotate(.35deg); }
}

@media (max-width: 760px) {
  .ec-home-portal .ec-edition33 #home-stories .ec-journal-today {
    align-items: flex-start;
    flex-direction: column;
    margin-top: .8rem;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif {
    height: 4rem;
    margin-bottom: 1.25rem;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif__landmarks {
    opacity: .36;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif__runner {
    width: 2rem;
    right: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif__boat {
    animation: none !important;
    transform: none !important;
    will-change: auto;
  }
}

/* Integration guard: the homepage must never show the retired scroll-following boat. */
.ec-home-portal :is(.ec33-scroll-route, .ec-site-scroll-route) {
  display: none !important;
}

@media (forced-colors: active) {
  .ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif,
  .ec-home-portal .ec-edition33 #home-stories .ec-journal-today {
    color: CanvasText;
    border-color: CanvasText;
  }

  .ec-home-portal .ec-edition33 #home-stories .ec-coastline-motif__sun {
    fill: CanvasText;
  }
}


/* PORTAL 4.0 site-wide motion candidate — local preview only.
   Add after the active template styles. The homepage keeps its separate motion candidate. */
html.ec-site-motion-ready .ec-site-motion-reveal {
  opacity: 0;
  transform: translate3d(var(--ec-site-motion-x, 0), 8px, 0);
  transition: opacity 460ms cubic-bezier(.2,.7,.2,1), transform 540ms cubic-bezier(.2,.7,.2,1), translate 240ms ease, rotate 240ms ease;
  transition-delay: var(--ec-site-motion-delay, 0ms);
}
html.ec-site-motion-ready .ec-site-motion-reveal.is-inview,
html.ec-site-motion-ready .ec-site-motion-reveal:focus-within {
  opacity: 1;
  transform: none;
  transition-delay: 0ms;
}

@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  :is(.ec-around-profile__card,.ec-destination29-card,.ec-bestof-card,.ec-portal-search__start,.ec-saved-card,.ec-trip-item) {
    transition: box-shadow 240ms ease, translate 240ms ease, rotate 240ms ease;
  }
  :is(.ec-around-profile__card,.ec-destination29-card,.ec-bestof-card,.ec-portal-search__start,.ec-saved-card,.ec-trip-item):hover {
    box-shadow: 0 7px 22px rgb(31 62 49 / 8%);
    translate: 0 -1px;
    rotate: .08deg;
  }
}
:is(.ec-around-profile__card,.ec-destination29-card,.ec-bestof-card,.ec-portal-search__start,.ec-saved-card,.ec-trip-item):focus-within {
  outline: 2px solid #668b79;
  outline-offset: 3px;
}

/* One anchored sea mark may sit under a suitable page heading. */
.ec-site-sea-mark {
  position: relative;
  height: 2rem;
  margin-block: .8rem 1rem;
  overflow: hidden;
  pointer-events: none;
  user-select: none;
}
.ec-site-sea-mark::before {
  content: "";
  position: absolute;
  inset: auto 0 .45rem;
  height: 1px;
  background: linear-gradient(90deg,rgba(49,95,80,.18),rgba(49,95,80,.62) 66%,rgba(49,95,80,.18));
}
.ec-site-sea-mark__boat {
  position: absolute;
  right: clamp(1.5rem, 9vw, 6rem);
  bottom: .48rem;
  display: block;
  width: 2rem;
  height: 1.5rem;
  color: #285d49;
  transform-origin: 52% 78%;
  animation: ec-site-boat-bob 3.8s ease-in-out infinite;
  will-change: transform;
}
.ec-site-sea-mark__boat svg { display: block; width: 100%; height: 100%; overflow: visible; }
@keyframes ec-site-boat-bob {
  0%,100% { transform: translateY(0) rotate(-.35deg); }
  50% { transform: translateY(-1.5px) rotate(.35deg); }
}

@media (max-width:760px) {
  .ec-site-sea-mark { height: 1.75rem; margin-block: .65rem .85rem; }
  .ec-site-sea-mark__boat { right: 1.25rem; width: 1.85rem; }
}

/* One SVG-native title motif. A landmark appears only when the template provides
   an explicit data-ec-landmark-motif value; route names are never guessed here. */
.ec-site-title-motif {
  display: inline-flex;
  align-items: flex-end;
  gap: .14em;
  width: auto;
  height: .5em;
  margin-inline-start: .24em;
  vertical-align: .56em;
  color: #dca844;
  pointer-events: none;
  user-select: none;
}
.ec-site-title-motif__sun,
.ec-site-title-motif__landmark { display: block; flex: none; height: 100%; width: auto; overflow: visible; }
.ec-site-title-motif__sun {
  width: .5em;
  min-width: .5em;
  max-width: .5em;
  height: .5em;
  flex: 0 0 .5em;
  aspect-ratio: 1;
  transform-origin: 50% 50%;
  animation: ec-site-sun-turn 96s linear infinite;
}
.ec-site-title-motif__landmark { height: .84em; color: #315f50; }
.ec-site-title-motif[data-kind="cathedral"] .ec-site-title-motif__landmark { width: 1.02em; }
.ec-site-title-motif[data-kind="arena"] .ec-site-title-motif__landmark { width: 1.14em; }
@keyframes ec-site-sun-turn { to { transform: rotate(1turn); } }

@media (max-width:760px) {
  .ec-site-title-motif { height: .44em; gap: .12em; margin-inline-start: .2em; }
  .ec-site-title-motif__sun {
    width: .44em;
    min-width: .44em;
    max-width: .44em;
    height: .44em;
    flex-basis: .44em;
  }
}

@media (prefers-reduced-motion:reduce) {
  html.ec-site-motion-ready .ec-site-motion-reveal {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
  .ec-site-sea-mark__boat {
    animation: none !important;
    transform: none !important;
    will-change: auto;
  }
  .ec-site-title-motif__sun { animation: none !important; }
}

@media (forced-colors:active) {
  .ec-site-title-motif,
  .ec-site-title-motif__landmark { color: CanvasText; }
}

/* Safari/Firefox/Chromium hard cap for the inline title sun. */
.ec-site-title-motif__sun { width:.5em!important; min-width:.5em!important; max-width:.5em!important; height:.5em!important; flex:0 0 .5em!important; }
@media (max-width:760px) { .ec-site-title-motif__sun { width:.44em!important; min-width:.44em!important; max-width:.44em!important; height:.44em!important; flex-basis:.44em!important; } }

/* portal4-home-journal-20261008.css */
/* Homepage journal: keep stories in source order without a fixed five-row lead.
   Load after editorial33.css. The native narrow-screen layout stays intact. */
:is(.ec-home-portal, .ec-edition33) #home-stories .ec33-story__body {
  min-width: 0;
  overflow-wrap: anywhere;
}

@media (min-width: 761px) {
  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-journal__grid {
    /* Up to three columns, collapsing empty tracks for smaller story counts. */
    grid-template-columns: repeat(auto-fit, minmax(min(100%, max(20rem, calc((100% - 3rem) / 3))), 1fr));
    grid-auto-flow: row;
    grid-auto-rows: auto;
    gap: 2rem 1.5rem;
    align-items: start;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-journal__grid > .ec33-story {
    grid-column: auto;
    grid-row: auto;
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
    margin: 0;
    padding: 0 0 1.25rem;
    border-bottom: 1px solid #ccd7c7;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-story > .ec33-story__photo {
    width: 100%;
    aspect-ratio: 3 / 2;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-story > .ec33-story__photo img {
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: contain !important;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-story > .ec33-story__body {
    width: 100%;
    padding: 1rem 0 0;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-story h3 {
    max-width: none;
    margin: .65rem 0 .6rem;
    font-size: clamp(1.75rem, 2.15vw, 2.1rem);
    line-height: 1.12;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-story .ec33-story__summary {
    max-width: none;
    margin-bottom: 0;
    font-size: .875rem;
    line-height: 1.7;
  }

  :is(.ec-home-portal, .ec-edition33) #home-stories .ec33-journal__grid > .ec33-story:only-child {
    max-width: 44rem;
  }
}

/* Keep the native hidden state authoritative if the story set is refreshed. */
:is(.ec-home-portal, .ec-edition33) #home-stories .ec33-journal__grid > .ec33-story[hidden] {
  display: none !important;
}

/* Four city walks: generous portrait photography and a consistent reading order. */
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-journal__grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem 1.5rem;align-items:stretch;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-journal__grid > .ec33-story {grid-column:auto;grid-row:auto;display:flex;flex-direction:column;gap:0;min-width:0;margin:0;padding:0 0 1.25rem;border-bottom:1px solid #b8c7b6;background:transparent;color:#183e37;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story > .ec33-story__photo {display:block;flex:none;width:100%;aspect-ratio:4/5;overflow:hidden;margin:0 0 1.25rem;border-radius:3px;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story > .ec33-story__photo img {display:block;width:100%;height:100%;max-height:none;object-fit:cover!important;object-position:var(--journal-focus,50% 50%);}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story > .ec33-story__body {display:flex;flex-direction:column;align-items:flex-start;flex:1;width:100%;padding:0;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story .ec33-story__meta {margin:0;color:#52695c;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story h3 {max-width:none;margin:.7rem 0 .85rem;font-size:clamp(1.65rem,2.1vw,2rem);line-height:1.14;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story .ec33-story__summary {display:block;max-width:none;margin:0 0 1rem;font-size:1rem;line-height:1.65;color:#526354;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story__read {display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;min-height:44px;margin-top:auto;color:#183e37;font:600 .9rem/1.4 var(--atlas-body);text-decoration:underline;text-underline-offset:.3em;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story__read svg {width:22px;height:22px;flex:none;}
.ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story a:focus-visible {outline:2px solid currentColor;outline-offset:5px;}
@media (max-width:1100px) {
 .ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-journal__grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:600px) {
 .ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-journal__grid {grid-template-columns:minmax(0,1fr);gap:2rem;}
 .ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story h3,
 .ec-home-portal .ec-edition33 #home-stories[data-home-stories24] .ec33-story:not(.ec33-story--lead) h3 {font-size:clamp(1.85rem,7.8vw,2.3rem);line-height:1.14;}
}

.ec-home-portal .ec-edition33 #home-stories [data-story-media="167"] {--journal-focus:43% 50%;}
.ec-home-portal .ec-edition33 #home-stories [data-story-media="169"] {--journal-focus:60% 50%;}
.ec-home-portal .ec-edition33 #home-stories [data-story-media="147"] {--journal-focus:54% 50%;}

