/* EK: unified question buttons, 2026-11-10. */
:root .ek-header a.ek-contact,
:root .ek-mobile-menu nav a.ek-contact,
:root .ek-v2-head a.ek-v2-question {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  min-height:44px!important;
  height:auto!important;
  padding:11px 20px!important;
  border:0!important;
  border-radius:999px!important;
  background:#222!important;
  color:#fff!important;
  font-family:inherit!important;
  font-size:14px!important;
  font-weight:600!important;
  line-height:1.5!important;
  text-align:center!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  transition:background-color .15s ease!important;
}
:root .ek-v2-head a.ek-v2-question {background:#fff!important;color:#222!important;}
:root .ek-header a.ek-contact:hover,
:root .ek-mobile-menu nav a.ek-contact:hover {background:#3b3b3b!important;color:#fff!important;}
:root .ek-v2-head a.ek-v2-question:hover {background:#ededed!important;color:#222!important;}
:root .ek-header a.ek-contact:focus-visible,
:root .ek-mobile-menu nav a.ek-contact:focus-visible,
:root .ek-v2-head a.ek-v2-question:focus-visible {outline:3px solid #b54708!important;outline-offset:4px!important;}
.ek-contact .ek-contact-label {color:inherit!important;font-weight:inherit!important;line-height:inherit!important;}
:root .ek-mobile-menu nav a.ek-contact {margin-top:10px!important;align-self:flex-start;}
@media(max-width:700px){
 :root .ek-header a.ek-contact,
 :root .ek-mobile-menu nav a.ek-contact,
 :root .ek-v2-head a.ek-v2-question {min-height:40px!important;padding:11px 14px!important;font-size:14px!important;line-height:1.5!important;}
}

/* EK: shared action-button geometry and typography, 2026-11-10. */
:root body :is(a.ek-btn,a.ep-btn,.ekturkey a.button,.ektc a.button,.vb-r7k a.t-btnflex,.vb-b9s a.t-btnflex,.ek-v2-buttons>a,.ek-header a.ek-contact,.ek-mobile-menu nav a.ek-contact,.ek-v2-head a.ek-v2-question){
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 box-sizing:border-box!important;min-height:48px!important;height:auto!important;max-width:100%;
 padding:12px 22px!important;border-radius:999px!important;
 font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
 font-size:14px!important;font-weight:600!important;line-height:22px!important;
 letter-spacing:normal!important;text-align:center!important;text-decoration:none!important;
 white-space:normal!important;overflow-wrap:anywhere;cursor:pointer;
 border-width:1px!important;border-style:solid!important;
 transition:background-color .15s ease,border-color .15s ease,color .15s ease!important;
}
:root body :is(.ek-header a.ek-contact,.ek-mobile-menu nav a.ek-contact,.ek-v2-head a.ek-v2-question){border-width:0!important;white-space:nowrap!important;padding-block:13px!important;}
:root body :is(a.ek-btn,a.ep-btn,.ekturkey a.button,.ektc a.button,.vb-r7k a.t-btnflex,.vb-b9s a.t-btnflex,.ek-v2-buttons>a){background:#b54708!important;color:#fff!important;border-color:#b54708!important;}
:root body :is(a.ek-btn,a.ep-btn,.ekturkey a.button,.ektc a.button,.vb-r7k a.t-btnflex,.vb-b9s a.t-btnflex,.ek-v2-buttons>a):hover{background:#963a07!important;color:#fff!important;border-color:#963a07!important;transform:none!important;}
:root body :is(a.ek-btn-outline,a.ep-btn-secondary){background:transparent!important;color:#222!important;border-color:#999!important;}
:root body :is(a.ek-btn-outline,a.ep-btn-secondary):hover{background:#eee!important;color:#222!important;border-color:#777!important;}
:root body .ek-v2-buttons>a+a{background:transparent!important;color:#fff!important;border-color:#ffffffb3!important;}
:root body .ek-v2-buttons>a+a:hover{background:#ffffff20!important;color:#fff!important;border-color:#fff!important;}
:root body :is(.vb-r7k a.t-btnflex,.vb-b9s a.t-btnflex) :is(.t-btnflex__text,span){font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;}
:root body :is(a.ek-btn,a.ep-btn,.ekturkey a.button,.ektc a.button,.vb-r7k a.t-btnflex,.vb-b9s a.t-btnflex,.ek-v2-buttons>a,.ek-header a.ek-contact,.ek-mobile-menu nav a.ek-contact,.ek-v2-head a.ek-v2-question):focus-visible{outline:3px solid #b54708!important;outline-offset:4px!important;}
:root body .ek-v2-buttons>a:focus-visible{outline-color:#fff!important;}
/* Compact filter controls share a separate, consistent control size. */
:root #vyezdy :is(.ek-filter-btn,.ek-card-tag,.ek-filter-reset){box-sizing:border-box!important;min-height:44px!important;border-radius:999px!important;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;font-size:14px!important;font-weight:600!important;line-height:20px!important;padding:11px 16px!important;}
@media(max-width:700px){
 :root body :is(a.ek-btn,a.ep-btn,.ekturkey a.button,.ektc a.button,.vb-r7k a.t-btnflex,.vb-b9s a.t-btnflex,.ek-v2-buttons>a,.ek-header a.ek-contact,.ek-mobile-menu nav a.ek-contact,.ek-v2-head a.ek-v2-question){min-height:44px!important;padding:10px 18px!important;font-size:14px!important;line-height:22px!important;}
 :root body :is(.ek-header a.ek-contact,.ek-mobile-menu nav a.ek-contact,.ek-v2-head a.ek-v2-question){padding:11px 14px!important;font-size:14px!important;}
}
@media(prefers-reduced-motion:reduce){:root body :is(a.ek-btn,a.ep-btn,.ekturkey a.button,.ektc a.button,.vb-r7k a.t-btnflex,.vb-b9s a.t-btnflex,.ek-v2-buttons>a,.ek-header a.ek-contact,.ek-mobile-menu nav a.ek-contact,.ek-v2-head a.ek-v2-question){transition:none!important;}}

/* Keep secondary actions visually secondary, including local hero overrides. */
:root body a.ek-btn.ek-btn-outline,:root body a.ep-btn.ep-btn-secondary{background:transparent!important;color:#222!important;border-color:#999!important;}
:root body a.ek-btn.ek-btn-outline:hover,:root body a.ep-btn.ep-btn-secondary:hover{background:#eee!important;color:#222!important;border-color:#777!important;}
:root body .ek-v2-hero .ek-v2-buttons>a+a{background:transparent!important;color:#fff!important;border-color:#ffffffb3!important;}
:root body .ek-v2-hero .ek-v2-buttons>a+a:hover{background:#ffffff20!important;color:#fff!important;border-color:#fff!important;}

/* EK: shared typography and spacing scale, 2026-11-10. */
:root{--ek-font-ui:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--ek-space-section:64px;--ek-space-heading:24px;}
:root body :is(.ek-page,.ekblog,.ektc,.ekturkey,.ep,.vb-r7k,.vb-b9s){font-family:var(--ek-font-ui)!important;font-size:17px!important;line-height:1.65!important;-webkit-font-smoothing:antialiased;}
:root body :is(.ek-page,.ekblog,.ektc,.ekturkey,.ep,.vb-r7k,.vb-b9s) :where(h1,h2,h3,h4,h5,h6,p,li,a,summary,dt,dd,figcaption,th,td,label,select,input,textarea,button){font-family:var(--ek-font-ui)!important;}
:root body :is(.ek-page,.ekblog,.ektc,.ekturkey,.ep,.vb-r7k,.vb-b9s) :is(h1,h2,h3,h4){font-weight:600!important;letter-spacing:-.025em!important;overflow-wrap:break-word;text-wrap:balance;}
:root body :is(.ek-page,.ekblog,.ektc,.ekturkey,.ep,.vb-r7k,.vb-b9s) h1{font-size:56px!important;line-height:1.08!important;letter-spacing:-.04em!important;margin:0 0 24px!important;}
:root body :is(.ek-page,.ekblog,.ektc,.ekturkey,.ep,.vb-r7k,.vb-b9s) h2{font-size:36px!important;line-height:1.18!important;margin:0 0 24px!important;}
:root body :is(.ek-page,.ekblog,.ektc,.ekturkey,.ep,.vb-r7k,.vb-b9s) h3{font-size:24px!important;line-height:1.25!important;margin:0 0 12px!important;}
:root body :is(.ek-page,.ekblog,.ektc,.ekturkey,.ep,.vb-r7k,.vb-b9s) h4{font-size:18px!important;line-height:1.35!important;margin:0 0 12px!important;}
:root body :is(.ek-page,.ekblog,.ektc,.ekturkey,.ep,.vb-r7k,.vb-b9s) :is(h1,h2,h3,h4)>:is(span,em,strong){font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;}
/* Content width and page gutters; articles remain a narrower reading column. */
:root body :is(.ek-wrap,.ep .ep-wrap,.ekturkey .wrap,.ekblog .wrap,.ektc .wrap){width:min(1108px,calc(100% - 72px))!important;margin-inline:auto!important;}
:root body :is(.ekblog article.wrap,.ektc article.wrap,.ek-winter .ek-winter-reading){width:min(840px,calc(100% - 72px))!important;max-width:840px!important;margin-inline:auto!important;}
:root body :is(.vb-r7k,.vb-b9s){padding-inline:max(36px,calc((100% - 1108px)/2))!important;}
:root body :is(.ek-section,.ep .ep-section,.vb-r7k__part,.vb-b9s__part){padding-block:var(--ek-space-section)!important;}
:root body :is(.ep .ep-hero,.ekblog>header,.ektc>header,.ekturkey>.hero,.ekblog>.hero){padding-block:56px 40px!important;}
:root body :is(.ekblog article.wrap,.ektc article.wrap){margin-block:48px!important;}
/* Article flow and body copy. */
:root body :is(.ekblog article,.ektc article) h2{margin:48px 0 20px!important;}
:root body :is(.ekblog article,.ektc article) h3{margin:28px 0 12px!important;}
:root body :is(.ekblog article,.ektc article)>section:first-child>h2:first-child{margin-top:0!important;}
:root body :is(.ekblog article,.ektc article,.ek-winter-reading) :is(p,li){font-size:17px!important;line-height:1.7!important;}
:root body :is(.ekblog article,.ektc article,.ek-winter-reading) p{margin-block:0 16px!important;}
:root body :is(.ekblog article,.ektc article,.ek-winter-reading) li{margin-bottom:8px!important;}
:root body .ek-winter-reading>section{padding-top:48px!important;}
:root body :is(.ekblog .lead,.ektc .lead,.ekturkey .lead,.ep .ep-lead,.ek-intro,.ek-lede){font-size:20px!important;line-height:1.55!important;}
/* Cards keep a compact, consistent heading tier. */
:root body :is(.ek-trip-card,.ekblog .card,.ekturkey .card) :is(h2,h3){font-size:24px!important;line-height:1.25!important;margin:0 0 12px!important;}
:root body .ek-v2-hero h2{font-size:56px!important;line-height:1.08!important;letter-spacing:-.04em!important;margin:0 0 24px!important;}
@media(max-width:760px){
 :root{--ek-space-section:40px;--ek-space-heading:20px;}
 :root body :is(.ek-page,.ekblog,.ektc,.ekturkey,.ep,.vb-r7k,.vb-b9s) h1{font-size:36px!important;line-height:1.12!important;letter-spacing:-.035em!important;margin-bottom:20px!important;}
 :root body :is(.ek-page,.ekblog,.ektc,.ekturkey,.ep,.vb-r7k,.vb-b9s) h2{font-size:28px!important;line-height:1.2!important;margin-bottom:20px!important;}
 :root body :is(.ek-page,.ekblog,.ektc,.ekturkey,.ep,.vb-r7k,.vb-b9s) h3{font-size:22px!important;line-height:1.25!important;}
 :root body :is(.ek-wrap,.ep .ep-wrap,.ekturkey .wrap,.ekblog .wrap,.ektc .wrap,.ekblog article.wrap,.ektc article.wrap,.ek-winter .ek-winter-reading){width:calc(100% - 36px)!important;}
 :root body :is(.vb-r7k,.vb-b9s){padding-inline:18px!important;}
 :root body :is(.ep .ep-hero,.ekblog>header,.ektc>header,.ekturkey>.hero,.ekblog>.hero){padding-block:36px 28px!important;}
 :root body :is(.ekblog article.wrap,.ektc article.wrap){margin-block:32px!important;}
 :root body :is(.ekblog article,.ektc article) h2{margin-top:36px!important;}
 :root body .ek-winter-reading>section{padding-top:36px!important;}
 :root body :is(.ekblog .lead,.ektc .lead,.ekturkey .lead,.ep .ep-lead,.ek-intro,.ek-lede){font-size:18px!important;line-height:1.55!important;}
 :root body :is(.ek-trip-card,.ekblog .card,.ekturkey .card) :is(h2,h3){font-size:22px!important;line-height:1.25!important;}
 :root body .ek-v2-hero h2{font-size:36px!important;line-height:1.12!important;letter-spacing:-.035em!important;}
}

/* EK: shared trip-card and photograph geometry, 2026-11-10. */
:root{--ek-media-radius:24px;--ek-card-padding:24px;--ek-media-gap:24px;}
:root body :is(.ek-trip-card,.ek-destination,.ep .ep-card,.ekturkey .trip,.vb-r7k__sight,.ekblog .card,.ekblog .triplink){border-radius:var(--ek-media-radius)!important;overflow:hidden;box-sizing:border-box;min-width:0;}
:root body :is(.ek-card-body,.ek-destination-body,.ep .ep-area-body){padding:var(--ek-card-padding)!important;min-width:0;}
:root body :is(.ek-trip-grid,.ek-destination-grid,.ep .ep-areas,.ek-rest-grid){gap:var(--ek-media-gap)!important;align-items:stretch;}
:root body #vyezdy .ek-trip-grid{gap:var(--ek-media-gap)!important;}
/* Card covers use one landscape format; grouped cards keep the same cover height. */
:root body :is(.ek-trip-card>img,.ek-group-photo>img,.ek-destination-photo>img,.ekturkey .trip>img){display:block!important;width:100%!important;height:240px!important;max-height:none!important;object-fit:cover!important;border-radius:0!important;flex-shrink:0;}
:root body :is(.ek-trip-card>img,.ek-destination-photo>img).ek-fontainebleau-cutout,
:root body :is(.ek-trip-card>img,.ek-destination-photo>img).ek-sintra-cutout{object-fit:contain!important;}
/* Hero photos share a 4:3 frame, while preserving each photo's focal position. */
:root body :is(img.ek-hero-image,img.vb-r7k__photo,img.vb-b9s__photo,.ek-winter-hero>img){display:block!important;width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:4/3!important;object-fit:cover!important;border-radius:var(--ek-media-radius)!important;}
:root body img.ek-hero-image:is(.ek-fontainebleau-cutout,.ek-sintra-cutout){object-fit:contain!important;}
/* Editorial photos and galleries keep original proportions. */
:root body :is(.ek-rest-card figure,.ek-about-photo,.ek-photo-track figure,.ep .ep-area-media){border-radius:var(--ek-media-radius)!important;overflow:hidden;}
:root body :is(.ek-rest-card figure img,.ek-about-photo img,.ek-photo-track img){display:block!important;width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;}
:root body #trip-photos .ek-photo-track{gap:var(--ek-media-gap)!important;border-radius:var(--ek-media-radius)!important;grid-auto-columns:calc((100% - var(--ek-media-gap))/2)!important;}
:root body #trip-photos .ek-photo-track figure{border-radius:var(--ek-media-radius)!important;margin:0!important;}
:root body .ekblog>img.heroimg{display:block!important;width:min(1108px,calc(100% - 72px))!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;border-radius:var(--ek-media-radius)!important;margin:32px auto 0!important;}
:root body :is(.ek-coach-photo,.ek-about-photo){margin-inline:0;}
:root body .ek-coach-photo img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:4/5!important;object-fit:cover!important;border-radius:var(--ek-media-radius)!important;}
:root body .vb-r7k__sight>img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:3/2!important;object-fit:cover!important;border-radius:0!important;}
:root body .ep .ep-area-media{margin:0!important;}
/* A multi-photo collage keeps its layout and photo credits. */
:root body .ep .ep-area-media:not(.ep-cirali-media){border-radius:var(--ek-media-radius) 0 0 var(--ek-media-radius)!important;}
@media(max-width:760px){
 :root{--ek-media-radius:16px;--ek-card-padding:20px;--ek-media-gap:20px;}
 :root body :is(.ek-trip-card>img,.ek-group-photo>img,.ek-destination-photo>img,.ekturkey .trip>img){height:auto!important;aspect-ratio:3/2!important;}
 :root body #trip-photos .ek-photo-track{grid-auto-columns:100%!important;}
 :root body .ekblog>img.heroimg{width:calc(100% - 36px)!important;margin-top:24px!important;}
 :root body .ep .ep-area-media:not(.ep-cirali-media){aspect-ratio:3/2!important;border-radius:var(--ek-media-radius) var(--ek-media-radius) 0 0!important;}
}

/* The same spacing scale for compact program cards and photo albums. */
:root body :is(.ekturkey .tripbody,.vb-r7k__sight-body,.ek-album-card,.ekblog .triplink){padding:var(--ek-card-padding)!important;}
:root body :is(.ekturkey .tripgrid,.vb-r7k__sight-grid,.ekblog .triplinks){gap:var(--ek-media-gap)!important;}
:root body .ek-album-card{border-radius:var(--ek-media-radius)!important;}
:root body :is(.ek-rest-card figure img,.ek-about-photo img,.ek-photo-track img){border-radius:0!important;}

/* Keep intrinsic image widths from widening the Cirali collage. */
:root body .ep #personal-cirali .ep-cirali-media{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:100%!important;min-width:0!important;}
:root body .ep #personal-cirali .ep-cirali-media img{min-width:0!important;max-width:100%!important;}

/* Align the Rocklands group divider with the gutter below the spanning card. */
@media(min-width:761px){
 :root body #vyezdy .ek-trip-grouped .ek-group-options{position:relative;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px!important;}
 :root body #vyezdy .ek-trip-grouped .ek-group-options::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--ek-line,#e2e2e2);transform:translateX(-50%);pointer-events:none;}
 :root body #vyezdy .ek-trip-grouped .ek-group-option+.ek-group-option{border-left:0!important;padding-left:0!important;}
}
