/* vanilla base reset (no framework) */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: var(--ukr1l-font, system-ui, -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif); line-height: 1.5; color: var(--ukr1l-ink, #111); background: var(--ukr1l-bg, #fff); }
h1, h2, h3, h4, h5, h6 { font-family: var(--ukr1l-font-display, var(--ukr1l-font, system-ui, sans-serif)); }
img, svg, video, canvas { max-width: 100%; height: auto; }
a { color: inherit; }
*:focus-visible { outline: 2px solid var(--ukr1l-primary, #2563eb); outline-offset: 2px; }
/* visibility shim for framework toggles */
.hidden { display: none !important; }

/* design tokens */
:root {
  --ukr1l-primary: #B4552A;
  --ukr1l-secondary: #3E5A73;
  --ukr1l-accent: #7A6A2F;
  --ukr1l-ink: #16130E;
  --ukr1l-slate: #5C564C;
  --ukr1l-mist: #EDE7DB;
  --ukr1l-border: #DED8CC;
  --ukr1l-surface: #FFFFFF;
  --ukr1l-bg: #F7F4EE;
  --ukr1l-text: #1A160F;
  --ukr1l-font: 'Segoe UI', Candara, 'Gill Sans', 'Trebuchet MS', sans-serif;
  --ukr1l-font-display: 'Optima', 'Segoe UI', Candara, 'Gill Sans', 'Gill Sans MT', sans-serif;
}

/* state utilities */
.is-open { display: block !important; }
.is-active { display: block !important; }
[hidden] { display: none !important; }

/* framework-injected components (vanilla) */
[data-ukr1l-ui="cookie-banner"] { position: fixed; left: 1rem; right: 1rem; bottom: 1rem; z-index: 9999; margin: 0 auto; max-width: 56rem; border: 1px solid var(--ukr1l-border, #e5e7eb); background: var(--ukr1l-surface, #fff); border-radius: 1rem; padding: 1rem; box-shadow: 0 10px 30px rgba(0,0,0,.15); }
[data-ukr1l-ui="cookie-banner"] > div { display: flex; flex-wrap: wrap; gap: 1rem; align-items: flex-start; justify-content: space-between; }
[data-ukr1l-ui="cookie-banner"] > div > div:last-child { display: flex; flex-wrap: wrap; gap: .5rem; }
[data-ukr1l-ui="cookie-banner"] a { text-decoration: underline; }
[data-ukr1l-cs-action], [data-ukr1l-ag-action] { cursor: pointer; border-radius: .5rem; padding: .5rem .9rem; font-size: .8rem; border: 1px solid var(--ukr1l-border, #d1d5db); background: transparent; color: var(--ukr1l-ink, #111); }
[data-ukr1l-cs-action="accept-all"], [data-ukr1l-cs-action="save"], [data-ukr1l-ag-action="confirm"] { background: var(--ukr1l-primary, #2563eb); color: #fff; border-color: transparent; font-weight: 600; }
[data-ukr1l-cs-action="reject-all"] { background: var(--ukr1l-ink, #111); color: #fff; border-color: transparent; font-weight: 600; }
[data-ukr1l-cs-panel] { margin-top: 1rem; border: 1px solid var(--ukr1l-border, #e5e7eb); background: var(--ukr1l-surface, #fff); border-radius: .75rem; padding: 1rem; font-size: .875rem; }
[data-ukr1l-cs-panel] > div { display: flex; flex-wrap: wrap; gap: .75rem; }
[data-ukr1l-ui="cookie-banner"] label { display: inline-flex; align-items: center; gap: .5rem; }
[data-ukr1l-ui="age-gate-overlay"] { position: fixed; inset: 0; z-index: 10000; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,.8); }
[data-ukr1l-ui="age-gate-overlay"] > div { width: 100%; max-width: 28rem; margin: 0 1rem; background: var(--ukr1l-surface, #1a1a2e); color: var(--ukr1l-ink, #fff); border-radius: 1rem; padding: 2rem; text-align: center; box-shadow: 0 20px 60px rgba(0,0,0,.4); }
[data-ukr1l-ui="age-gate-overlay"] > div > div:last-of-type { display: flex; flex-direction: column; gap: .75rem; }
[data-ukr1l-ag-action] { padding: .75rem 1.5rem; }

/* sections */
/* ukr1l:header */
/* ukr1l:header */
#header.site-header {
  position: sticky;
  top: 0;
  z-index: 60;
  background: var(--ukr1l-surface);
  border-bottom: 1px solid var(--ukr1l-border);
}
#header .site-header__bar {
  max-width: 72rem;
  margin: 0 auto;
  padding: 0.75rem clamp(1rem, 4vw, 3rem);
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}
#header .wordmark {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  text-decoration: none;
  margin-right: auto;
  min-height: 44px;
  justify-content: center;
}
#header .wordmark__name {
  font-family: var(--ukr1l-font-serif, 'Optima', 'Segoe UI', sans-serif);
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: var(--ukr1l-ink);
  line-height: 1.1;
}
#header .wordmark__tag {
  font-family: var(--ukr1l-font-sans, 'Segoe UI', sans-serif);
  font-size: 0.6875rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ukr1l-slate);
}
#header .primary-nav {
  display: flex;
  align-items: center;
  gap: clamp(0.75rem, 2vw, 1.75rem);
}
#header .primary-nav__list {
  display: flex;
  align-items: center;
  gap: clamp(0.75rem, 2vw, 1.5rem);
  list-style: none;
  margin: 0;
  padding: 0;
}
#header .primary-nav__link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-family: var(--ukr1l-font-sans, 'Segoe UI', sans-serif);
  font-size: 0.8125rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--ukr1l-text);
  text-decoration: none;
  border-bottom: 2px solid transparent;
  padding-bottom: 0.25rem;
  transition: border-color 180ms ease-out, color 180ms ease-out;
}
#header .primary-nav__link:hover,
#header .primary-nav__link:focus-visible {
  color: var(--ukr1l-primary);
  border-bottom-color: var(--ukr1l-accent);
}
#header .primary-nav__link:focus-visible,
#header .header-cta:focus-visible,
#header .menu-toggle:focus-visible {
  outline: 2px solid var(--ukr1l-secondary);
  outline-offset: 2px;
}
#header .header-cta {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0.5rem 1rem;
  border: 1px solid var(--ukr1l-ink);
  background: var(--ukr1l-ink);
  color: var(--ukr1l-surface);
  font-family: var(--ukr1l-font-sans, 'Segoe UI', sans-serif);
  font-size: 0.8125rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  text-decoration: none;
  border-radius: 2px;
  transition: background 180ms ease-out, color 180ms ease-out;
}
#header .header-cta:hover {
  background: var(--ukr1l-primary);
  border-color: var(--ukr1l-primary);
}
#header .menu-toggle {
  display: none;
  align-items: center;
  gap: 0.5rem;
  min-height: 44px;
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--ukr1l-border);
  background: var(--ukr1l-bg);
  color: var(--ukr1l-ink);
  font-family: var(--ukr1l-font-sans, 'Segoe UI', sans-serif);
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  border-radius: 2px;
  cursor: pointer;
}
#header .menu-toggle__lines,
#header .menu-toggle__lines::before,
#header .menu-toggle__lines::after {
  display: block;
  width: 18px;
  height: 2px;
  background: var(--ukr1l-ink);
  content: "";
}
#header .menu-toggle__lines {
  position: relative;
}
#header .menu-toggle__lines::before {
  position: absolute;
  top: -6px;
}
#header .menu-toggle__lines::after {
  position: absolute;
  top: 6px;
}
#header ::selection {
  background: var(--ukr1l-primary);
  color: var(--ukr1l-surface);
}
@media (max-width: 767px) {
  #header .menu-toggle {
    display: inline-flex;
  }
  #header .primary-nav {
    flex-direction: column;
    align-items: stretch;
    gap: 0.5rem;
    flex-basis: 100%;
    padding: 0.75rem 0 0.25rem;
    border-top: 1px solid var(--ukr1l-border);
  }
  #header .primary-nav__list {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  #header .primary-nav__link {
    border-bottom: 1px solid var(--ukr1l-border);
    padding-bottom: 0.5rem;
    letter-spacing: 0.08em;
  }
  #header .header-cta {
    justify-content: center;
  }
}
@media (prefers-reduced-motion: reduce) {
  #header .primary-nav__link,
  #header .header-cta {
    transition: none;
  }
}
/* ukr1l:footer */
/* ukr1l:footer */
#footer{background:var(--ukr1l-ink);color:var(--ukr1l-mist);font-family:'Segoe UI',Candara,'Gill Sans','Trebuchet MS',sans-serif;font-size:.9375rem;line-height:1.6;padding:clamp(2.5rem,6vw,4.5rem) 0 2rem}
#footer a{color:var(--ukr1l-mist);text-decoration:none;border-bottom:1px solid var(--ukr1l-slate);transition:color 180ms ease-out,border-color 180ms ease-out}
#footer a:hover{color:var(--ukr1l-primary);border-color:var(--ukr1l-primary)}
#footer a:focus-visible{outline:none}
#footer :focus-visible{outline:2px solid var(--ukr1l-primary);outline-offset:3px}
#footer ::selection{background:var(--ukr1l-accent);color:var(--ukr1l-surface)}
.footer-inner{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:clamp(1.5rem,4vw,3rem)}
.footer-wordmark{font-family:Optima,Candara,'Gill Sans',sans-serif;font-size:1.5rem;letter-spacing:-.015em;color:var(--ukr1l-surface);margin:0 0 .75rem}
.footer-tag{margin:0 0 .75rem;max-width:34ch;color:var(--ukr1l-border)}
.footer-note{margin:0;max-width:38ch;font-size:.8125rem;color:var(--ukr1l-slate)}
.footer-heading{font-family:Optima,Candara,'Gill Sans',sans-serif;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--ukr1l-border);margin:0 0 .9rem}
.footer-list,.footer-policy{list-style:none;margin:0;padding:0}
.footer-list li{margin-bottom:.5rem}
.footer-list a{font-size:.875rem}
.footer-address{font-style:normal;display:grid;gap:.4rem;font-size:.8125rem;font-variant-numeric:tabular-nums;color:var(--ukr1l-mist)}
.footer-legal{max-width:72rem;margin:clamp(2rem,5vw,3rem) auto 0;padding:clamp(1.25rem,3vw,2rem) clamp(1rem,4vw,3rem) 0;border-top:1px solid var(--ukr1l-slate);display:grid;gap:.75rem}
.footer-policy{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;font-size:.8125rem}
.footer-disclaimer{margin:0;max-width:70ch;font-size:.75rem;color:var(--ukr1l-border)}
.footer-copy{margin:0;font-size:.75rem;color:var(--ukr1l-slate)}
@media (max-width:1024px){.footer-inner{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.footer-inner{grid-template-columns:1fr;gap:2rem}.footer-policy{flex-direction:column;gap:.5rem}}
@media (prefers-reduced-motion:reduce){#footer a{transition:none}}
/* ukr1l:hero */
/* ukr1l:hero */
#hero{background:var(--ukr1l-bg);color:var(--ukr1l-text);padding:clamp(2rem,5vw,4rem) 0;font:16px/1.55 "Segoe UI",Candara,sans-serif}
#hero .grid{max-width:72rem;margin:auto;padding:0 clamp(1rem,4vw,3rem);display:grid;gap:clamp(1.5rem,4vw,2.5rem)}
@media(min-width:1024px){#hero .grid{grid-template-columns:7fr 5fr;align-items:start}}
#hero .k{margin:0 0 .7rem;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ukr1l-primary)}
#hero h1{margin:0;font-family:Optima,Candara,sans-serif;font-size:clamp(2rem,4vw,3.4rem);line-height:1.06;letter-spacing:-.02em;text-wrap:balance;color:var(--ukr1l-ink)}
#hero .m{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;margin:1.1rem 0;padding:0;list-style:none;font-size:.875rem}
#hero .m b{font-variant-numeric:tabular-nums;color:var(--ukr1l-ink)}
#hero .tg{display:inline-grid;grid-template-columns:1fr 1fr;border:1px solid var(--ukr1l-border);background:var(--ukr1l-surface)}
#hero .tg button{min-height:44px;padding:.6rem 1.4rem;border:0;border-bottom:2px solid transparent;background:none;color:var(--ukr1l-slate);font-size:.75rem;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}
#hero .tg [aria-selected=true]{color:var(--ukr1l-ink);border-bottom-color:var(--ukr1l-accent);background:var(--ukr1l-mist)}
#hero .l{margin:1.2rem 0 0;max-width:34rem;font-size:.9375rem;line-height:1.6}
#hero .ac{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}
#hero .bt{display:inline-flex;align-items:center;min-height:44px;padding:.75rem 1.3rem;color:var(--ukr1l-ink);border:1px solid var(--ukr1l-ink);border-radius:4px;font-size:.875rem;font-weight:600;text-decoration:none}
#hero .solid{background:var(--ukr1l-primary);border-color:var(--ukr1l-primary);color:var(--ukr1l-surface)}
#hero .bt:hover{background:var(--ukr1l-ink);border-color:var(--ukr1l-ink);color:var(--ukr1l-surface)}
#hero :focus-visible{outline:2px solid var(--ukr1l-accent);outline-offset:2px}
#hero ::selection{background:var(--ukr1l-accent);color:var(--ukr1l-surface)}
#hero img{display:block;width:100%;max-width:24rem;margin-top:1.6rem;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--ukr1l-border);border-radius:4px}
#hero .sd{background:var(--ukr1l-surface);border:1px solid var(--ukr1l-border);border-radius:6px;padding:clamp(1rem,2vw,1.4rem)}
#hero .lb{margin:0 0 .9rem;font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase}
#hero .sp{margin:0;padding:0;list-style:none}
#hero .sp li{display:grid;grid-template-columns:4rem 1fr auto;gap:.85rem;padding:.65rem 0 .65rem 1rem;border-left:2px solid var(--ukr1l-accent);border-bottom:1px solid var(--ukr1l-border)}
#hero .m,#hero .l,#hero .lb,#hero .tm,#hero .nn,#hero .pn{color:var(--ukr1l-slate)}
#hero .tm,#hero .nn{font-size:.75rem;font-variant-numeric:tabular-nums}
#hero .nt{display:block;font-size:1.0625rem;color:var(--ukr1l-ink)}
#hero .nn{margin-top:.15rem;font-size:.875rem}
#hero .bd{align-self:start;padding:.2rem .4rem;border:1px solid var(--ukr1l-border);font-size:.6875rem;letter-spacing:.07em;text-transform:uppercase;color:var(--ukr1l-slate)}
#hero .pn{margin:1rem 0 0;font-size:12px}
@media(prefers-reduced-motion:reduce){#hero *{transition:none!important;animation:none!important}}
/* ukr1l:route-selector */
/* ukr1l:route-selector */
#route-selector{background:var(--ukr1l-bg);color:var(--ukr1l-text);font-family:'Segoe UI',Candara,'Gill Sans',sans-serif;padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem)}
#route-selector *{box-sizing:border-box}
#route-selector ::selection{background:var(--ukr1l-accent);color:var(--ukr1l-surface)}
.route-inner{max-width:72rem;margin:0 auto}
.route-head{max-width:46rem;margin:0 0 2.5rem}
.kicker{margin:0 0 .6rem;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--ukr1l-accent)}
.route-head h2{margin:0 0 .75rem;font-family:Optima,'Segoe UI',Candara,sans-serif;font-size:clamp(1.5rem,3vw,2.5rem);font-weight:600;line-height:1.1;letter-spacing:-.015em;text-wrap:balance;color:var(--ukr1l-ink)}
.route-head p{margin:0;line-height:1.6;color:var(--ukr1l-slate)}
.routes{list-style:none;margin:0 0 2rem;padding:0;border-top:1px solid var(--ukr1l-border)}
.routes li{border-bottom:1px solid var(--ukr1l-border)}
.routes a{display:grid;gap:.45rem;padding:.9rem 1rem;border-left:2px solid var(--ukr1l-accent);color:inherit;text-decoration:none}
.routes a:hover{background:var(--ukr1l-mist)}
.routes a:focus-visible{outline:2px solid var(--ukr1l-secondary);outline-offset:2px}
.route-name{font-family:Optima,'Segoe UI',Candara,sans-serif;font-size:1.35rem;font-weight:600;line-height:1.2;color:var(--ukr1l-ink)}
.route-meta{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ukr1l-slate);font-variant-numeric:tabular-nums}
.route-note{font-size:.95rem;line-height:1.5;color:var(--ukr1l-slate)}
.route-foot{display:grid;gap:1.25rem;border-top:1px solid var(--ukr1l-border);padding-top:1.25rem}
.limits{margin:0;font-size:.8rem;line-height:1.6;color:var(--ukr1l-slate)}
.acts{display:flex;flex-wrap:wrap;gap:.75rem}
.acts a{display:inline-flex;align-items:center;min-height:44px;padding:.7rem 1.25rem;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;border-radius:2px}
.cta{background:var(--ukr1l-primary);border:1px solid var(--ukr1l-primary);color:var(--ukr1l-surface)}
.cta:hover{background:var(--ukr1l-ink);border-color:var(--ukr1l-ink)}
.ghost{border:1px solid var(--ukr1l-ink);color:var(--ukr1l-ink)}
.ghost:hover{background:var(--ukr1l-mist)}
@media(min-width:768px){.routes a{grid-template-columns:15rem 1fr;column-gap:2rem;align-items:start}.route-meta,.route-note{grid-column:2}}
@media(min-width:1024px){.route-foot{grid-template-columns:1.4fr 1fr;align-items:end}}
@media(prefers-reduced-motion:reduce){#route-selector *{transition:none}}
/* ukr1l:itinerary-timeline */
/* ukr1l:itinerary-timeline */
#itinerary-timeline{background:var(--ukr1l-bg);color:var(--ukr1l-text);font:16px/1.5 'Segoe UI',Candara,sans-serif;padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem)}
#itinerary-timeline .timeline-wrap{max-width:72rem;margin:0 auto}
#itinerary-timeline h2,#itinerary-timeline h3{font-family:'Optima',Candara,serif;color:var(--ukr1l-ink);margin:0 0 .4rem;letter-spacing:-.01em;text-wrap:balance}
#itinerary-timeline h2{font-size:clamp(1.5rem,3vw,2.5rem)}
#itinerary-timeline h3{font-size:1.1rem}
#itinerary-timeline .kicker{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ukr1l-accent);margin:0 0 .6rem}
#itinerary-timeline .lede{max-width:44rem;color:var(--ukr1l-slate);margin:0 0 2rem}
#itinerary-timeline .timeline-grid{display:grid;gap:2rem}
#itinerary-timeline .day-toggle{display:inline-grid;grid-template-columns:1fr 1fr;border:1px solid var(--ukr1l-border);margin-bottom:1.25rem}
#itinerary-timeline button{min-height:44px;padding:.6rem 1.2rem;border:0;border-bottom:2px solid transparent;background:var(--ukr1l-surface);color:var(--ukr1l-slate);font:inherit;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
#itinerary-timeline button[aria-selected=true]{color:var(--ukr1l-ink);border-bottom-color:var(--ukr1l-accent)}
#itinerary-timeline .route-rail{list-style:none;margin:0;padding:0}
#itinerary-timeline .route-node{display:grid;grid-template-columns:58px 1fr;gap:.75rem;border-left:2px solid var(--ukr1l-accent);border-bottom:1px solid var(--ukr1l-border);padding:.75rem 0 .75rem 1rem}
#itinerary-timeline .node-time{font-size:.8125rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ukr1l-secondary)}
#itinerary-timeline p{margin:0;font-size:.9375rem;color:var(--ukr1l-slate)}
#itinerary-timeline .transport-badge{align-self:start;justify-self:start;font-size:.6875rem;letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--ukr1l-border);padding:.2rem .45rem;white-space:nowrap}
#itinerary-timeline .logistics{border:1px solid var(--ukr1l-border);background:var(--ukr1l-surface);padding:1.25rem;align-self:start}
#itinerary-timeline dl{display:grid;grid-template-columns:1fr auto;gap:.5rem .75rem;margin:0 0 1rem;font-size:.9375rem}
#itinerary-timeline dt{color:var(--ukr1l-slate)}
#itinerary-timeline dd{margin:0;text-align:right;font-weight:600;font-variant-numeric:tabular-nums}
#itinerary-timeline .price-note{font-size:.75rem;color:var(--ukr1l-slate);margin:0 0 1rem}
#itinerary-timeline .cta,#itinerary-timeline .ghost{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.7rem 1.1rem;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;margin:0 .5rem .5rem 0}
#itinerary-timeline .cta{background:var(--ukr1l-primary);color:var(--ukr1l-surface)}
#itinerary-timeline .ghost{border:1px solid var(--ukr1l-ink);color:var(--ukr1l-ink)}
#itinerary-timeline a:focus-visible,#itinerary-timeline button:focus-visible{outline:2px solid var(--ukr1l-secondary);outline-offset:2px}
@media(min-width:768px){#itinerary-timeline .route-node{grid-template-columns:58px 1fr auto}}
@media(min-width:1024px){#itinerary-timeline .timeline-grid{grid-template-columns:2fr 1fr}#itinerary-timeline .logistics{position:sticky;top:1.5rem}}
@media(prefers-reduced-motion:reduce){#itinerary-timeline *{transition:none!important}}
/* ukr1l:included-table */
/* ukr1l:included-table */
#included-table{background:var(--ukr1l-bg);color:var(--ukr1l-text);font-family:'Segoe UI',Candara,'Gill Sans','Trebuchet MS',sans-serif;padding:clamp(3rem,8vw,7rem) 0;}
#included-table .included-table__wrap{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#included-table .included-table__kicker{margin:0 0 .75rem;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ukr1l-slate);}
#included-table h2{margin:0 0 1rem;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.15;letter-spacing:-.02em;color:var(--ukr1l-ink);text-wrap:balance;}
#included-table .included-table__lede{max-width:56ch;margin:0 0 clamp(1.5rem,4vw,3rem);font-size:1rem;line-height:1.65;color:var(--ukr1l-slate);}
#included-table .included-table__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1rem,3vw,2.5rem);}
#included-table .included-table__col{background:var(--ukr1l-surface);border:1px solid var(--ukr1l-border);border-radius:4px;padding:clamp(1rem,2.5vw,1.75rem);}
#included-table .included-table__col h3{margin:0 0 1rem;padding-bottom:.6rem;border-bottom:2px solid var(--ukr1l-accent);font-size:.8125rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ukr1l-ink);}
#included-table .included-table__col--out h3{border-bottom-color:var(--ukr1l-secondary);}
#included-table table{width:100%;border-collapse:collapse;font-size:.9375rem;}
#included-table th,#included-table td{padding:.6rem 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--ukr1l-border);font-weight:400;line-height:1.45;}
#included-table th{width:62%;padding-right:.75rem;color:var(--ukr1l-text);font-weight:600;}
#included-table td{color:var(--ukr1l-slate);font-variant-numeric:tabular-nums;}
#included-table tr:last-child th,#included-table tr:last-child td{border-bottom:none;}
#included-table .included-table__note{margin:1.25rem 0 .5rem;font-size:12px;color:var(--ukr1l-slate);}
#included-table .included-table__links{margin:0;font-size:.9375rem;color:var(--ukr1l-slate);}
#included-table a{color:var(--ukr1l-primary);text-decoration:underline;text-underline-offset:3px;}
#included-table a:hover{color:var(--ukr1l-ink);}
#included-table a:focus-visible{outline:2px solid var(--ukr1l-primary);outline-offset:3px;}
#included-table ::selection{background:var(--ukr1l-accent);color:var(--ukr1l-surface);}
@media (max-width:768px){#included-table .included-table__grid{grid-template-columns:1fr;}
#included-table th{width:58%;}}
@media (prefers-reduced-motion:reduce){#included-table *{transition:none!important;animation:none!important;}}
/* ukr1l:proof-strip */
/* ukr1l:proof-strip */
#proof-strip{background:var(--ukr1l-bg);color:var(--ukr1l-text);font-family:'Segoe UI',Candara,'Gill Sans','Trebuchet MS',sans-serif;padding:clamp(3rem,8vw,7rem) 0}
#proof-strip .proof-strip__inner{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
#proof-strip .proof-strip__kicker{margin:0;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ukr1l-accent)}
#proof-strip .proof-strip__title{margin:.5rem 0 0;font-family:Optima,'Segoe UI',Candara,'Gill Sans',sans-serif;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.15;letter-spacing:-.02em;text-wrap:balance}
#proof-strip .proof-strip__lede{max-width:58ch;margin:.75rem 0 0;font-size:.9375rem;line-height:1.6;color:var(--ukr1l-slate)}
#proof-strip .proof-strip__grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:clamp(1.5rem,4vw,3rem)}
#proof-strip .proof-day{padding-left:1rem;border-left:2px solid var(--ukr1l-accent)}
#proof-strip .proof-day__meta{margin:0;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ukr1l-slate)}
#proof-strip .proof-day__title{margin:.3rem 0 .75rem;font-family:Optima,'Segoe UI',Candara,'Gill Sans',sans-serif;font-size:1.5rem;line-height:1.2}
#proof-strip .proof-day__list{list-style:none;margin:0;padding:0}
#proof-strip .proof-row{display:grid;grid-template-columns:3.5rem 1fr auto;gap:.75rem;align-items:baseline;padding:.6rem 0;border-bottom:1px solid var(--ukr1l-border);font-size:.9375rem;line-height:1.5}
#proof-strip .proof-row__time{font-size:.75rem;font-variant-numeric:tabular-nums;color:var(--ukr1l-secondary)}
#proof-strip .proof-row__data{font-size:.8125rem;font-variant-numeric:tabular-nums;color:var(--ukr1l-slate);white-space:nowrap}
#proof-strip .proof-day__total{margin:.8rem 0 0;font-size:.8125rem;font-variant-numeric:tabular-nums;color:var(--ukr1l-slate)}
#proof-strip .proof-strip__figure{margin:clamp(1.5rem,4vw,3rem) 0 0}
#proof-strip .proof-strip__figure img{display:block;width:100%;height:auto;border:1px solid var(--ukr1l-border);border-radius:2px}
#proof-strip .proof-strip__figure figcaption{margin-top:.6rem;font-size:.8125rem;color:var(--ukr1l-slate)}
#proof-strip .proof-strip__foot{margin:1.5rem 0 0;font-size:.75rem;line-height:1.6;color:var(--ukr1l-slate)}
#proof-strip .proof-strip__foot a{color:var(--ukr1l-primary);text-decoration:underline;text-underline-offset:2px}
#proof-strip a:focus-visible{outline:2px solid var(--ukr1l-secondary);outline-offset:2px}
#proof-strip ::selection{background:var(--ukr1l-primary);color:var(--ukr1l-surface)}
@media (min-width:768px){#proof-strip .proof-strip__grid{grid-template-columns:1fr 1fr;gap:2.5rem}}
@media (prefers-reduced-motion:reduce){#proof-strip *{transition:none!important;animation:none!important}}
/* ukr1l:booking-panel */
/* ukr1l:booking-panel */
#booking-panel{background:var(--ukr1l-bg);color:var(--ukr1l-text);font-family:'Segoe UI',Candara,'Gill Sans','Trebuchet MS',sans-serif;padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem);border-top:1px solid var(--ukr1l-border)}
#booking-panel .booking-panel__inner{max-width:72rem;margin:0 auto}
.booking-panel__kicker{margin:0 0 .75rem;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ukr1l-primary)}
.booking-panel__title{margin:0 0 1rem;font-family:'Optima','Segoe UI',Candara,sans-serif;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.12;letter-spacing:-.015em;text-wrap:balance;color:var(--ukr1l-ink)}
.booking-panel__lede{max-width:52ch;margin:0 0 clamp(1.75rem,4vw,3rem);font-size:1rem;line-height:1.6;color:var(--ukr1l-slate)}
.booking-panel__grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem);align-items:start}
.booking-panel__subhead,.price-band__label{margin:0 0 1rem;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ukr1l-slate)}
.date-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--ukr1l-border)}
.date-row{display:grid;gap:.25rem;padding:.9rem 1rem;border-bottom:1px solid var(--ukr1l-border);border-left:2px solid var(--ukr1l-accent)}
.date-row__day{font-family:'Optima','Segoe UI',Candara,sans-serif;font-size:1.125rem;line-height:1.3;color:var(--ukr1l-ink)}
.date-row__meta{font-size:.9375rem;line-height:1.5;color:var(--ukr1l-slate);font-variant-numeric:tabular-nums}
.booking-panel__hint{margin:1rem 0 0;font-size:.875rem;line-height:1.55;color:var(--ukr1l-slate)}
#booking-panel a{color:var(--ukr1l-primary);text-decoration:underline;text-underline-offset:2px}
.booking-panel__price{background:var(--ukr1l-surface);border:1px solid var(--ukr1l-border);border-radius:4px;padding:clamp(1.25rem,3vw,1.75rem)}
.price-band__value{margin:0;font-size:clamp(1.75rem,3vw,2.125rem);font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ukr1l-ink)}
.price-band__currency{display:block;font-size:.8125rem;font-weight:600;letter-spacing:.1em;color:var(--ukr1l-slate)}
.price-band__unit{margin:.35rem 0 0;font-size:.875rem;color:var(--ukr1l-slate)}
.price-band__list{list-style:none;display:grid;gap:.5rem;margin:1rem 0 0;padding:1rem 0 0;border-top:1px solid var(--ukr1l-border);font-size:.875rem;line-height:1.5;color:var(--ukr1l-slate)}
.price-band__note{margin:.9rem 0 0;font-size:12px;line-height:1.4;color:var(--ukr1l-slate)}
.booking-panel__cta{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:1.25rem;padding:.75rem 1.5rem;background:var(--ukr1l-primary);color:var(--ukr1l-surface);border-radius:4px;font-weight:600;font-size:.9375rem;text-decoration:none;transition:background 180ms ease-out}
.booking-panel__cta:hover,.booking-panel__cta:active{background:var(--ukr1l-ink);color:var(--ukr1l-surface)}
.booking-panel__alt{margin:.85rem 0 0;font-size:.875rem;text-align:center}
#booking-panel :focus-visible{outline:2px solid var(--ukr1l-secondary);outline-offset:2px}
#booking-panel ::selection{background:var(--ukr1l-accent);color:var(--ukr1l-surface)}
@media (max-width:768px){.booking-panel__grid{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){#booking-panel *{transition:none}}

/* ukr1l:itineraries-intro */
/* ukr1l:itineraries-intro */
#itineraries-intro{background:var(--ukr1l-bg);color:var(--ukr1l-text);font-family:'Segoe UI',Candara,'Gill Sans','Trebuchet MS',sans-serif;padding:clamp(2.5rem,6vw,5rem) clamp(1rem,4vw,3rem);border-bottom:1px solid var(--ukr1l-border)}
#itineraries-intro *{box-sizing:border-box}
#itineraries-intro ::selection{background:var(--ukr1l-primary);color:var(--ukr1l-surface)}
#itineraries-intro .dossier-intro__inner{max-width:72rem;margin:0 auto;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
#itineraries-intro .dossier-intro__kicker{margin:0 0 .75rem;font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ukr1l-primary)}
#itineraries-intro .dossier-intro__title{margin:0 0 1rem;font-family:'Optima','Segoe UI',Candara,sans-serif;font-size:clamp(2rem,4vw,3.4rem);line-height:1.08;letter-spacing:-.02em;text-wrap:balance;color:var(--ukr1l-ink)}
#itineraries-intro .dossier-intro__lead{margin:0 0 1.5rem;font-size:1rem;line-height:1.6;color:var(--ukr1l-slate);max-width:46ch}
#itineraries-intro .dossier-intro__meta{display:flex;flex-wrap:wrap;gap:1.25rem 2.25rem;margin:0 0 1.5rem;padding:.85rem 0;border-top:1px solid var(--ukr1l-border);border-bottom:1px solid var(--ukr1l-border)}
#itineraries-intro .dossier-intro__meta dt{font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ukr1l-slate)}
#itineraries-intro .dossier-intro__meta dd{margin:.15rem 0 0;font-size:.9375rem;font-variant-numeric:tabular-nums;color:var(--ukr1l-ink)}
#itineraries-intro .dossier-intro__limits{margin:0 0 1.5rem;font-size:.875rem;line-height:1.65;color:var(--ukr1l-slate);border-left:2px solid var(--ukr1l-accent);padding-left:.9rem}
#itineraries-intro .dossier-intro__limits strong{color:var(--ukr1l-ink)}
#itineraries-intro .dossier-intro__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem}
#itineraries-intro .dossier-intro__cta{display:inline-flex;align-items:center;min-height:44px;padding:.7rem 1.4rem;background:var(--ukr1l-primary);color:var(--ukr1l-surface);border:1px solid var(--ukr1l-primary);border-radius:2px;font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-decoration:none}
#itineraries-intro .dossier-intro__cta:hover{background:var(--ukr1l-ink);border-color:var(--ukr1l-ink)}
#itineraries-intro .dossier-intro__link{color:var(--ukr1l-secondary);font-size:.875rem;text-decoration:underline;text-underline-offset:3px}
#itineraries-intro a:focus-visible{outline:2px solid var(--ukr1l-primary);outline-offset:2px}
#itineraries-intro .anatomy__heading{margin:0 0 1rem;font-family:'Optima','Segoe UI',Candara,sans-serif;font-size:1.25rem;letter-spacing:-.01em;color:var(--ukr1l-ink)}
#itineraries-intro .anatomy__list{list-style:none;margin:0;padding:0}
#itineraries-intro .anatomy__item{display:grid;grid-template-columns:2.5rem 1fr;gap:.75rem;border-left:2px solid var(--ukr1l-primary);padding:.75rem 0 .75rem 1rem;border-bottom:1px solid var(--ukr1l-border)}
#itineraries-intro .anatomy__num{font-size:.75rem;font-variant-numeric:tabular-nums;letter-spacing:.08em;color:var(--ukr1l-accent);padding-top:.2rem}
#itineraries-intro .anatomy__item h3{margin:0 0 .2rem;font-family:'Optima','Segoe UI',Candara,sans-serif;font-size:1.0625rem;font-weight:600;color:var(--ukr1l-ink)}
#itineraries-intro .anatomy__item p{margin:0;font-size:.875rem;line-height:1.55;color:var(--ukr1l-slate)}
@media (max-width:1024px){#itineraries-intro .dossier-intro__inner{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){#itineraries-intro *{transition:none!important;animation:none!important}}
/* ukr1l:filter-bar */
/* ukr1l:filter-bar */
#filter-bar{background:var(--ukr1l-bg);border-top:1px solid var(--ukr1l-border);border-bottom:1px solid var(--ukr1l-border);padding:clamp(1.5rem,4vw,2.75rem) clamp(1rem,4vw,3rem);}
#filter-bar .filter-bar__inner{max-width:72rem;margin:0 auto;display:grid;gap:1.15rem;}
#filter-bar .filter-bar__title{font-family:'Optima','Segoe UI',Candara,sans-serif;font-size:clamp(1.25rem,2.2vw,1.65rem);line-height:1.2;letter-spacing:-0.01em;text-wrap:balance;color:var(--ukr1l-ink);margin:0;}
#filter-bar .filter-bar__note{color:var(--ukr1l-slate);font-size:0.875rem;line-height:1.55;max-width:62ch;margin:0.45rem 0 0;}
#filter-bar .filter-bar__form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.85rem 1rem;align-items:end;}
#filter-bar .filter-field{display:grid;gap:0.35rem;}
#filter-bar .filter-field label{font-size:0.72rem;text-transform:uppercase;letter-spacing:0.09em;color:var(--ukr1l-slate);}
#filter-bar .filter-field select{appearance:none;width:100%;min-height:44px;padding:0.55rem 1.6rem 0.55rem 0.65rem;font-family:inherit;font-size:0.9rem;color:var(--ukr1l-text);background-color:var(--ukr1l-surface);border:1px solid var(--ukr1l-border);border-radius:2px;background-image:linear-gradient(45deg,transparent 50%,var(--ukr1l-slate) 50%),linear-gradient(135deg,var(--ukr1l-slate) 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;}
#filter-bar .filter-field select:hover{border-color:var(--ukr1l-slate);}
#filter-bar .filter-field select:focus-visible,#filter-bar .filter-reset:focus-visible{outline:2px solid var(--ukr1l-primary);outline-offset:2px;}
#filter-bar .filter-bar__actions{grid-column:1/-1;display:flex;justify-content:flex-start;align-items:center;gap:1rem;flex-wrap:wrap;}
#filter-bar .filter-reset{display:inline-flex;align-items:center;min-height:44px;color:var(--ukr1l-primary);font-size:0.875rem;text-decoration:underline;text-underline-offset:3px;border-radius:2px;}
#filter-bar .filter-reset:hover{color:var(--ukr1l-secondary);}
#filter-bar .filter-bar__count{margin:0;font-size:0.9375rem;line-height:1.5;color:var(--ukr1l-ink);font-variant-numeric:tabular-nums;}
#filter-bar .filter-bar__count strong{color:var(--ukr1l-primary);font-weight:700;}
@media (max-width:1024px){#filter-bar .filter-bar__form{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:640px){#filter-bar .filter-bar__form{grid-template-columns:1fr;}}
@media (prefers-reduced-motion:reduce){#filter-bar *{transition:none !important;}}
#filter-bar ::selection{background:var(--ukr1l-mist);color:var(--ukr1l-ink);}
/* ukr1l:route-list */
/* ukr1l:route-list */
.route-list{background:var(--ukr1l-bg);padding:clamp(3rem,8vw,7rem) 0;color:var(--ukr1l-text)}
.route-list__inner{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
.route-list__head{display:grid;gap:.75rem;padding-bottom:1.25rem;border-bottom:1px solid var(--ukr1l-border);margin-bottom:.5rem}
.route-list__title{margin:0;font-family:'Optima','Segoe UI',Candara,sans-serif;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.15;letter-spacing:-.015em;color:var(--ukr1l-ink);text-wrap:balance}
.route-list__note{margin:0;max-width:58ch;font-size:.9375rem;line-height:1.55;color:var(--ukr1l-slate)}
.route-list__items{list-style:none;margin:0;padding:0}
.route-card{display:grid;grid-template-columns:3px 1fr;gap:1rem;padding:1.25rem 0;border-bottom:1px solid var(--ukr1l-border)}
.route-card__rail{background:var(--ukr1l-primary);border-radius:2px}
.route-card__meta{margin:0 0 .45rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ukr1l-slate)}
.route-card__title{margin:0 0 .7rem;font-family:'Optima','Segoe UI',Candara,sans-serif;font-size:clamp(1.25rem,2.2vw,1.5rem);line-height:1.2;color:var(--ukr1l-ink)}
.route-card__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr));gap:.5rem 1.25rem;margin:0 0 .75rem;padding:0}
.route-card__stats dt{margin:0;font-size:.6875rem;letter-spacing:.07em;text-transform:uppercase;color:var(--ukr1l-slate)}
.route-card__stats dd{margin:.15rem 0 0;font-size:.9375rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ukr1l-ink)}
.route-card__included{margin:0;max-width:70ch;font-size:.9375rem;line-height:1.5;font-variant-numeric:tabular-nums;color:var(--ukr1l-text)}
.route-list__foot{margin:1.5rem 0 0;max-width:70ch;font-size:.875rem;line-height:1.55;color:var(--ukr1l-slate)}
.route-list__foot a{color:var(--ukr1l-secondary);text-decoration:underline;text-underline-offset:3px}
.route-list__foot a:hover{color:var(--ukr1l-primary)}
.route-list a:focus-visible,.route-list button:focus-visible{outline:2px solid var(--ukr1l-primary);outline-offset:3px}
.route-list ::selection{background:var(--ukr1l-primary);color:var(--ukr1l-surface)}
@media (max-width:640px){.route-card{grid-template-columns:3px 1fr;gap:.85rem}.route-card__stats{grid-template-columns:repeat(auto-fit,minmax(5.5rem,1fr))}}
/* ukr1l:itineraries-cta */
/* ukr1l:itineraries-cta */
#itineraries-cta{background:var(--ukr1l-ink);color:var(--ukr1l-mist);padding:clamp(2.75rem,7vw,5rem) clamp(1rem,4vw,3rem);}
#itineraries-cta .enquiry-band__inner{max-width:72rem;margin:0 auto;border-left:2px solid var(--ukr1l-primary);padding-left:clamp(1.25rem,3vw,2.25rem);display:grid;gap:0.9rem;}
#itineraries-cta .enquiry-band__kicker{margin:0;display:inline-block;width:max-content;background:var(--ukr1l-primary);color:var(--ukr1l-surface);font-family:var(--ukr1l-font-sans);font-size:0.75rem;letter-spacing:0.12em;text-transform:uppercase;padding:0.3rem 0.6rem;border-radius:var(--ukr1l-radius-sm);font-weight:600;}
#itineraries-cta .enquiry-band__title{margin:0;font-family:var(--ukr1l-font-serif);font-size:clamp(1.6rem,3.2vw,2.5rem);line-height:1.14;letter-spacing:-0.012em;text-wrap:balance;color:var(--ukr1l-mist);max-width:34ch;}
#itineraries-cta .enquiry-band__body{margin:0;max-width:62ch;font-size:1rem;line-height:1.6;color:var(--ukr1l-mist);}
#itineraries-cta .enquiry-band__meta{margin:0;max-width:62ch;font-size:0.8125rem;line-height:1.5;color:var(--ukr1l-border);font-variant-numeric:tabular-nums;}
#itineraries-cta .enquiry-band__actions{margin-top:0.5rem;display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem 1.75rem;}
#itineraries-cta .enquiry-band__button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0.85rem 1.6rem;background:var(--ukr1l-primary);color:var(--ukr1l-surface);border:1px solid var(--ukr1l-primary);border-radius:var(--ukr1l-radius-sm);font-family:var(--ukr1l-font-sans);font-size:1rem;font-weight:600;text-decoration:none;transition:background-color 180ms ease-out,color 180ms ease-out;}
#itineraries-cta .enquiry-band__button:hover,#itineraries-cta .enquiry-band__button:focus-visible{background:var(--ukr1l-secondary);border-color:var(--ukr1l-secondary);color:var(--ukr1l-surface);}
#itineraries-cta .enquiry-band__button:active{background:var(--ukr1l-accent);border-color:var(--ukr1l-accent);}
#itineraries-cta a:focus-visible{outline:2px solid var(--ukr1l-mist);outline-offset:3px;}
#itineraries-cta .enquiry-band__aside{margin:0;font-size:0.875rem;line-height:1.5;color:var(--ukr1l-border);}
#itineraries-cta .enquiry-band__aside a{color:var(--ukr1l-mist);text-decoration:underline;text-underline-offset:3px;}
#itineraries-cta .enquiry-band__aside a:hover{color:var(--ukr1l-surface);}
@media (max-width:640px){#itineraries-cta .enquiry-band__inner{border-left-width:2px;padding-left:1rem;}#itineraries-cta .enquiry-band__actions{flex-direction:column;align-items:flex-start;}#itineraries-cta .enquiry-band__button{width:100%;}}
@media (prefers-reduced-motion:reduce){#itineraries-cta .enquiry-band__button{transition:none;}}
/* ukr1l:contact-intro */
/* ukr1l:contact-intro */
#contact-intro{background:var(--ukr1l-bg);color:var(--ukr1l-text);font-family:'Segoe UI',Candara,sans-serif;padding:clamp(3rem,7vw,6rem) clamp(1rem,4vw,3rem)}
#contact-intro .shell{display:grid;gap:clamp(1.5rem,4vw,3rem);max-width:72rem;margin:0 auto}
#contact-intro p{margin:0 0 1.5rem;max-width:38rem;line-height:1.6;color:var(--ukr1l-slate)}
#contact-intro .kicker,#contact-intro dt{margin:0 0 .8rem;font-size:.7rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--ukr1l-accent)}
#contact-intro h1{margin:0 0 1rem;font:400 clamp(2rem,4.2vw,3.2rem)/1.08 Optima,Candara,sans-serif;letter-spacing:-.02em;text-wrap:balance;color:var(--ukr1l-ink)}
#contact-intro dl{display:grid;gap:1rem;margin:0 0 1.6rem}
#contact-intro dd{margin:0;padding-top:.5rem;border-top:2px solid var(--ukr1l-border);font-variant-numeric:tabular-nums}
#contact-intro .actions{display:flex;flex-wrap:wrap;gap:.75rem}
#contact-intro a{display:inline-block;min-height:44px;padding:.7rem 1.2rem;border:1px solid var(--ukr1l-primary);border-radius:2px;background:var(--ukr1l-primary);color:var(--ukr1l-surface);font-size:.875rem;font-weight:700;text-decoration:none}
#contact-intro a:hover{background:var(--ukr1l-ink);border-color:var(--ukr1l-ink)}
#contact-intro .ghost{background:var(--ukr1l-surface);border-color:var(--ukr1l-border);color:var(--ukr1l-ink)}
#contact-intro .rail{background:var(--ukr1l-surface);border:1px solid var(--ukr1l-border);border-left:2px solid var(--ukr1l-accent);padding:1.2rem}
#contact-intro h2{margin:0 0 .9rem;font:400 1.25rem Optima,Candara,sans-serif;color:var(--ukr1l-ink)}
#contact-intro ol{margin:0;padding:0;list-style:none;display:grid;gap:.8rem}
#contact-intro li{display:grid;grid-template-columns:2rem 1fr;gap:.5rem;line-height:1.5;font-variant-numeric:tabular-nums}
#contact-intro :focus-visible{outline:2px solid var(--ukr1l-secondary);outline-offset:3px}
#contact-intro ::selection{background:var(--ukr1l-mist);color:var(--ukr1l-ink)}
@media(min-width:640px){#contact-intro dl{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){#contact-intro .shell{grid-template-columns:7fr 5fr;align-items:start}}
@media(prefers-reduced-motion:reduce){#contact-intro *{transition:none!important}}
/* ukr1l:enquiry-form */
/* ukr1l:enquiry-form */
#enquiry-form{background:var(--ukr1l-bg);color:var(--ukr1l-text);padding:clamp(3rem,8vw,6rem) clamp(1rem,4vw,3rem);font:400 1rem/1.55 'Segoe UI',Candara,sans-serif}
#enquiry-form .enq__inner{max-width:72rem;margin:0 auto;display:grid;gap:clamp(1.5rem,4vw,3rem)}
#enquiry-form .enq__kicker{margin:0 0 .4rem;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ukr1l-primary)}
#enquiry-form h2{margin:0 0 .6rem;font-family:Optima,Candara,sans-serif;font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.15;text-wrap:balance;color:var(--ukr1l-ink)}
#enquiry-form .enq__lede{margin:0 0 1.25rem;max-width:54ch;color:var(--ukr1l-slate)}
#enquiry-form form{background:var(--ukr1l-surface);border:1px solid var(--ukr1l-border);border-radius:2px;padding:clamp(1.1rem,3vw,1.75rem)}
#enquiry-form .enq__grid{display:grid;gap:.9rem}
#enquiry-form label{display:block;margin-bottom:.3rem;font-size:.75rem;letter-spacing:.07em;text-transform:uppercase;color:var(--ukr1l-slate)}
#enquiry-form :is(input,select){width:100%;min-height:44px;padding:.55rem .65rem;font:inherit;color:var(--ukr1l-text);background:var(--ukr1l-surface);border:1px solid var(--ukr1l-border);border-radius:2px}
#enquiry-form :is(input,select):focus-visible{outline:2px solid var(--ukr1l-primary);outline-offset:1px}
#enquiry-form button{margin-top:1.1rem;min-height:44px;padding:.8rem 1.4rem;font-size:.7rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ukr1l-surface);background:var(--ukr1l-primary);border:1px solid var(--ukr1l-primary);border-radius:2px;cursor:pointer;transition:background 180ms ease-out}
#enquiry-form button:hover{background:var(--ukr1l-ink);border-color:var(--ukr1l-ink)}
#enquiry-form .enq__note{margin:.8rem 0 0;font-size:12px;color:var(--ukr1l-slate)}
#enquiry-form .enq__aside{border-left:2px solid var(--ukr1l-accent);padding-left:1rem}
#enquiry-form .enq__aside ul{margin:0 0 .8rem;padding:0;list-style:none;display:grid;gap:.5rem;font-size:.95rem;font-variant-numeric:tabular-nums}
#enquiry-form .enq__aside strong{display:inline-block;min-width:9rem;color:var(--ukr1l-ink)}
#enquiry-form a{color:var(--ukr1l-secondary)}
#enquiry-form a:hover{color:var(--ukr1l-primary)}
#enquiry-form ::selection{background:var(--ukr1l-mist);color:var(--ukr1l-ink)}
@media (min-width:64rem){#enquiry-form .enq__inner{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}}
@media (prefers-reduced-motion:reduce){#enquiry-form *{transition:none!important}}

/* ukr1l:contact-details */
/* ukr1l:contact-details */
.contact-details{background:var(--ukr1l-bg);color:var(--ukr1l-text);padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem);font-family:'Segoe UI',Candara,'Gill Sans','Trebuchet MS',sans-serif;}
.contact-details__inner{max-width:72rem;margin:0 auto;display:grid;gap:clamp(1.5rem,4vw,2.5rem);}
.contact-details__kicker{margin:0 0 .5rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ukr1l-accent);}
.contact-details__title{margin:0 0 .75rem;font-family:Optima,'Segoe UI',Candara,'Gill Sans',sans-serif;font-size:clamp(1.75rem,3.5vw,2.5rem);line-height:1.15;letter-spacing:-.015em;color:var(--ukr1l-ink);text-wrap:balance;}
.contact-details__lead{margin:0;max-width:60ch;font-size:1rem;line-height:1.6;color:var(--ukr1l-slate);}
.contact-details__list{margin:0;padding:0;border-top:1px solid var(--ukr1l-border);}
@media (min-width:768px){.contact-details__list{display:grid;grid-template-columns:1fr 1fr;column-gap:2.5rem;}}
.contact-details__row{display:grid;gap:.3rem;padding:.9rem 0;border-bottom:1px solid var(--ukr1l-border);}
.contact-details__row dt{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ukr1l-slate);}
.contact-details__row dd{margin:0;font-size:1rem;line-height:1.5;font-variant-numeric:tabular-nums;color:var(--ukr1l-text);}
.contact-details__row dd a{color:var(--ukr1l-secondary);text-decoration:underline;text-underline-offset:3px;}
.contact-details__row dd a:hover{color:var(--ukr1l-primary);}
.contact-details__note{margin:0;padding:1rem 1.25rem;background:var(--ukr1l-mist);border-left:2px solid var(--ukr1l-accent);border-radius:2px;font-size:.875rem;line-height:1.65;color:var(--ukr1l-ink);}
.contact-details__links{margin:0;font-size:.9375rem;color:var(--ukr1l-slate);}
.contact-details__links a{color:var(--ukr1l-secondary);font-weight:600;text-decoration:underline;text-underline-offset:3px;}
.contact-details__links a:hover{color:var(--ukr1l-primary);}
.contact-details a:focus-visible{outline:2px solid var(--ukr1l-primary);outline-offset:2px;}
.contact-details ::selection{background:var(--ukr1l-accent);color:var(--ukr1l-surface);}
@media (prefers-reduced-motion:reduce){.contact-details *{transition:none !important;}}

.disclaimer-page{max-width:960px;margin:0 auto;padding:24px 16px;font-family:var(--ukr1l-font);color:var(--ukr1l-text);background:var(--ukr1l-bg);line-height:1.6}.page-header h1{font-family:var(--ukr1l-font-display);font-size:2.2rem;color:var(--ukr1l-primary);margin:0 0 8px}.lead{color:var(--ukr1l-slate);font-size:.95rem;margin-bottom:24px}.policy-content h2{font-family:var(--ukr1l-font-display);font-size:1.4rem;color:var(--ukr1l-secondary);margin:28px 0 8px}.policy-content p{margin:0 0 12px}.policy-content a{color:var(--ukr1l-primary);text-decoration:underline}.contact-form{margin:24px 0;padding:20px;background:var(--ukr1l-surface);border:1px solid var(--ukr1l-border);border-radius:var(--radius-md)}.contact-form label{display:block;font-weight:600;margin-bottom:4px;color:var(--ukr1l-ink)}.contact-form input,.contact-form textarea{width:100%;padding:10px;margin-bottom:16px;border:1px solid var(--ukr1l-border);border-radius:var(--radius-sm);font-family:inherit;font-size:1rem;background:var(--ukr1l-bg)}.contact-form textarea{min-height:100px;resize:vertical}.contact-form button{background:var(--ukr1l-primary);color:var(--ukr1l-surface);border:none;padding:12px 24px;font-size:1rem;font-weight:600;border-radius:var(--radius-md);cursor:pointer}.contact-form button:hover{background:var(--ukr1l-secondary)}.business-footer{margin-top:32px;padding-top:16px;border-top:1px solid var(--ukr1l-border);font-size:.9rem;color:var(--ukr1l-slate)}.business-footer p{margin:0 0 4px}
:root{--ukr1l-primary:#B4552A;--ukr1l-secondary:#3E5A73;--ukr1l-accent:#7A6A2F;--ukr1l-ink:#16130E;--ukr1l-slate:#5C564C;--ukr1l-mist:#EDE7DB;--ukr1l-border:#DED8CC;--ukr1l-surface:#FFFFFF;--ukr1l-bg:#F7F4EE;--ukr1l-text:#1A160F;--ukr1l-font:'Segoe UI',Candara,'Gill Sans','Trebuchet MS',sans-serif;--ukr1l-font-display:Optima,'Segoe UI',Candara,'Gill Sans','Gill Sans MT',sans-serif}
.policy-page{max-width:58rem;margin:0 auto;padding:3rem 1.5rem;background:var(--ukr1l-bg);color:var(--ukr1l-text);font-family:var(--ukr1l-font);font-size:1rem;line-height:1.65}
.policy-header{border-bottom:1px solid var(--ukr1l-border);padding-bottom:1.25rem;margin-bottom:2rem}
.policy-title{font-family:var(--ukr1l-font-display);font-size:2.1rem;line-height:1.2;margin:0 0 .4rem;color:var(--ukr1l-ink)}
.policy-updated{margin:0;font-size:.9rem;color:var(--ukr1l-slate)}
.policy-section{margin:0 0 1.6rem;padding-left:1rem;border-left:2px solid var(--ukr1l-mist)}
.policy-section h2{font-family:var(--ukr1l-font-display);font-size:1.12rem;margin:0 0 .45rem;color:var(--ukr1l-secondary)}
.policy-section p{margin:0;color:var(--ukr1l-text)}
.policy-form{margin-top:1rem}
.policy-label{display:block;margin:.8rem 0 .25rem;font-size:.85rem;font-weight:600;letter-spacing:.02em;color:var(--ukr1l-slate)}
.policy-input{display:block;width:100%;box-sizing:border-box;padding:.6rem .7rem;border:1px solid var(--ukr1l-border);border-radius:4px;background:var(--ukr1l-surface);color:var(--ukr1l-text);font:inherit;font-size:.95rem}
.policy-input:focus{outline:2px solid var(--ukr1l-primary);outline-offset:1px}
.policy-submit{margin-top:1.25rem;padding:.7rem 1.6rem;border:0;border-radius:4px;background:var(--ukr1l-primary);color:var(--ukr1l-surface);font:inherit;font-weight:600;cursor:pointer}
.policy-submit:hover{background:var(--ukr1l-accent)}
@media (max-width:40rem){.policy-page{padding:2rem 1rem}.policy-title{font-size:1.7rem}}
.policy-page{background:var(--ukr1l-bg);color:var(--ukr1l-text);font-family:var(--ukr1l-font);line-height:1.65;padding:48px 20px 64px;}
.policy-content{max-width:820px;margin:0 auto;background:var(--ukr1l-surface);border:1px solid var(--ukr1l-border);border-radius:6px;padding:40px 32px 48px;}
.policy-header{border-bottom:2px solid var(--ukr1l-primary);padding-bottom:16px;margin-bottom:28px;}
.policy-title{font-family:var(--ukr1l-font-display);color:var(--ukr1l-ink);font-size:2rem;line-height:1.2;margin:0 0 8px;}
.policy-updated{color:var(--ukr1l-slate);font-size:.9rem;margin:0;}
.policy-content h2{font-family:var(--ukr1l-font-display);color:var(--ukr1l-secondary);font-size:1.15rem;margin:28px 0 8px;}
.policy-content p{margin:0 0 12px;font-size:1rem;}
.policy-form{margin-top:16px;padding:20px;background:var(--ukr1l-mist);border:1px solid var(--ukr1l-border);border-radius:4px;display:flex;flex-direction:column;gap:6px;}
.policy-form label{font-size:.9rem;color:var(--ukr1l-slate);}
.policy-form input,.policy-form textarea{font-family:inherit;font-size:1rem;padding:8px 10px;border:1px solid var(--ukr1l-border);border-radius:2px;background:var(--ukr1l-surface);color:var(--ukr1l-text);}
.policy-form input:focus,.policy-form textarea:focus{outline:2px solid var(--ukr1l-primary);outline-offset:1px;}
.policy-submit{margin-top:10px;align-self:flex-start;background:var(--ukr1l-primary);color:var(--ukr1l-surface);border:none;border-radius:4px;padding:10px 20px;font-size:.95rem;cursor:pointer;}
.policy-submit:hover{background:var(--ukr1l-ink);}
.thanks-page {
  max-width: 720px;
  margin: 0 auto;
  padding: 3rem 1.5rem;
  background: var(--ukr1l-bg);
  font-family: var(--ukr1l-font);
  color: var(--ukr1l-text);
  line-height: 1.6;
}
.thanks-card {
  background: var(--ukr1l-surface);
  border: 1px solid var(--ukr1l-border);
  border-radius: 6px;
  padding: 2.5rem 2rem;
  text-align: center;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.thanks-title {
  font-family: var(--ukr1l-font-display);
  font-size: 2rem;
  font-weight: 600;
  color: var(--ukr1l-secondary);
  margin: 0 0 1rem;
}
.thanks-message {
  font-size: 1.0625rem;
  margin: 0 0 1.25rem;
  color: var(--ukr1l-slate);
}
.thanks-link {
  color: var(--ukr1l-primary);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.thanks-back {
  display: inline-block;
  margin-top: 1.5rem;
  padding: 0.75rem 1.75rem;
  background: var(--ukr1l-primary);
  color: var(--ukr1l-surface);
  border-radius: 4px;
  text-decoration: none;
  font-weight: 600;
  transition: background 0.2s;
}
.thanks-back:hover {
  background: var(--ukr1l-accent);
}
.thanks-info {
  margin-top: 2.5rem;
  padding: 1.75rem 2rem;
  background: var(--ukr1l-mist);
  border-radius: 6px;
  border: 1px solid var(--ukr1l-border);
}
.thanks-info-title {
  font-family: var(--ukr1l-font-display);
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--ukr1l-ink);
  margin: 0 0 1rem;
}
.thanks-info-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1.25rem;
}
.thanks-info-list li {
  padding: 0.4rem 0;
  border-bottom: 1px solid var(--ukr1l-border);
  font-size: 0.9375rem;
  color: var(--ukr1l-text);
}
.thanks-info-list li:last-child {
  border-bottom: none;
}
.thanks-info-label {
  font-weight: 600;
  color: var(--ukr1l-slate);
  margin-right: 0.5rem;
}
.thanks-note {
  font-size: 0.875rem;
  color: var(--ukr1l-slate);
  line-height: 1.5;
  margin: 1.25rem 0 0;
  padding-top: 1rem;
  border-top: 1px solid var(--ukr1l-border);
}
@media (max-width: 480px) {
  .thanks-page { padding: 2rem 1rem; }
  .thanks-card { padding: 1.75rem 1.25rem; }
  .thanks-info { padding: 1.25rem 1rem; }
}
section[data-ukr1l-mka]:not([data-ukr1l-mka='header']):not([data-ukr1l-mka='footer']) { position: relative; }
section[data-ukr1l-mka]:not([data-ukr1l-mka='header']):not([data-ukr1l-mka='footer']) { border-top: 1px solid var(--ukr1l-border); }
section[data-ukr1l-mka]:not([data-ukr1l-mka='header']) h1,section[data-ukr1l-mka]:not([data-ukr1l-mka='header']) h2 { max-width: 20ch; letter-spacing: -0.035em; }
section[data-ukr1l-mka]:nth-of-type(even)::before { content: ''; position: absolute; top: 0; left: 0; width: 5rem; border-top: 3px solid var(--ukr1l-accent); }
:root {
  --ukr1l-c-content-width: 72rem;
  --ukr1l-c-gutter: clamp(1rem, 4vw, 3rem);
  --ukr1l-c-measure: 65ch;
  --ukr1l-c-heading-display: clamp(2.5rem, 6vw, 5.5rem);
}
[data-ukr1l-dr] { scroll-margin-top: 1.5rem; }
main > section, main [data-ukr1l-mka] { padding-inline: var(--ukr1l-c-gutter); }
[data-ukr1l-dr*='article'], [data-ukr1l-dr*='review'] { max-width: var(--ukr1l-c-measure); }
h1 { font-size: var(--ukr1l-c-heading-display); }
@media (max-width: 768px) { [data-ukr1l-dr] { min-width: 0; } }