/* Final home refinement: navigation hierarchy, fixed-card media and interaction. */
@media (min-width: 901px) {
  .out-header { display:grid; grid-template-columns:minmax(210px,1fr) auto minmax(250px,1fr); gap:24px; }
  .out-header .out-menu { margin:0; justify-self:center; }
  .out-header .out-actions { justify-self:end; }
  .out-header .out-menu-list { gap:24px; }
}
.out-language summary,.out-currency summary { min-height:42px; padding:8px 12px; border:1px solid #c7d2c8; border-radius:999px; background:#f3f6ed; color:#062733!important; font-size:12px; letter-spacing:.06em; }
.out-language summary:hover,.out-currency summary:hover { background:#dfeac0; }
.out-language__menu,.out-currency__menu { border-radius:10px; overflow:hidden; }
.out-featured-journeys .out-horizontal-rail { scroll-behavior:smooth; }
@media (min-width: 1080px) { .out-journey-card { flex:0 0 calc((100% - 66px) / 4); } .out-journey-card__body h3 { font-size:21px; } }
.out-specialized-mosaic { grid-template-rows:repeat(2,260px); grid-auto-rows:260px; }
.out-specialized-card--1,.out-specialized-card--4 { grid-row:span 1; }
.out-specialized-card { min-height:0; }
.out-journal-card { transition:transform .34s cubic-bezier(.2,.75,.2,1), box-shadow .34s ease; }
.out-journal-card img { transition:transform .7s cubic-bezier(.2,.75,.2,1), filter .35s ease; }
.out-journal-card h3,.out-journal-card b { transition:color .25s ease, transform .25s ease; }
.out-journal-card:hover,.out-journal-card:focus-visible { transform:translateY(-9px); box-shadow:0 22px 34px #001f2b4a; }
.out-journal-card:hover img,.out-journal-card:focus-visible img { transform:scale(1.09); filter:saturate(1.12); }
.out-journal-card:hover h3,.out-journal-card:focus-visible h3 { color:#668329; }
.out-journal-card:hover b,.out-journal-card:focus-visible b { color:#668329; transform:translateX(5px); }
.out-footer { grid-template-columns:1.45fr repeat(4,minmax(0,1fr)); }
.out-footer-quick a { position:relative; flex-direction:column; gap:10px; }
.out-footer-quick a span { display:grid; place-items:center; width:32px; height:32px; border-radius:50%; background:#c8e363; color:#062733; font:700 16px Arial,sans-serif; }
.out-footer-credentials { display:flex; align-items:center; min-height:45px; margin-top:20px; }
.out-footer-credentials img { display:block; max-width:126px; max-height:52px; width:auto; height:auto; filter:brightness(0) invert(1); opacity:.95; }
.out-footer-cta .out-button { background:#c8e363!important; color:#062733!important; }
.out-footer-legal { display:flex; flex-wrap:wrap; gap:0 14px; }
.out-footer-legal a { display:inline; margin:0; color:#dce8d7; font-size:10px; }
@media (max-width:900px) { .out-footer { grid-template-columns:repeat(2,minmax(0,1fr)); } .out-footer-quick { grid-column:1/-1; } .out-footer-quick a span { flex:0 0 auto; } }
@media (max-width:560px) { .out-specialized-mosaic { grid-template-rows:none; } .out-specialized-card { min-height:370px; } .out-footer { grid-template-columns:1fr; } .out-footer-quick { grid-template-columns:1fr; } .out-footer-quick a { flex-direction:row; justify-content:flex-start; text-align:left; } }

/* Keep rails clean: the page provides drag interaction instead of browser scrollbars. */
.out-horizontal-rail,.out-testimonial-rail,.out-specialized-mosaic,.out-journal-grid { -ms-overflow-style:none; scrollbar-width:none; cursor:grab; }
.out-horizontal-rail::-webkit-scrollbar,.out-testimonial-rail::-webkit-scrollbar,.out-specialized-mosaic::-webkit-scrollbar,.out-journal-grid::-webkit-scrollbar { display:none; }
.out-horizontal-rail.is-dragging,.out-testimonial-rail.is-dragging,.out-specialized-mosaic.is-dragging,.out-journal-grid.is-dragging { cursor:grabbing; scroll-snap-type:none; user-select:none; }
.out-featured-journeys > .out-horizontal-rail { max-width:1340px; margin:0 auto; padding:0 5.5% 18px; }
@media (min-width:1080px) { .out-featured-journeys > .out-horizontal-rail .out-journey-card { flex-basis:calc((100% - 66px) / 4); } }

/* Footer follows the lean three-column hierarchy of the original site. */
.out-footer { grid-template-columns:1.2fr 1fr 1.35fr; gap:44px; padding-top:38px; }
.out-footer-quick { display:flex; grid-column:1/-1; gap:0; margin:0 0 20px; border-top:1px solid #35505a; border-bottom:1px solid #35505a; background:transparent; }
.out-footer-quick a { flex:1; min-height:76px; flex-direction:row; justify-content:flex-start; gap:12px; padding:16px 0; background:transparent; color:#fff!important; font:700 14px Georgia,serif; text-align:left; }
.out-footer-quick a + a { padding-left:34px; border-left:1px solid #35505a; }
.out-footer-quick a:hover { background:transparent; color:#c8e363!important; }
.out-footer-quick a svg { flex:0 0 auto; width:26px; height:26px; padding:6px; border-radius:50%; background:#c8e363; fill:none; stroke:#062733; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.out-footer-quick a svg circle { fill:none; }
.out-footer-quick a span { display:block; width:auto; height:auto; border-radius:0; background:none; color:inherit; font:inherit; }
.out-footer-contact p { margin:9px 0; }
.out-footer-contact a { margin:8px 0; }
.out-footer-credentials img { filter:none; max-width:135px; max-height:62px; }
.out-footer-cta { grid-column:1/-1; margin-top:4px; }
.out-footer-legal { grid-column:1/-1; }
@media (max-width:900px) { .out-footer { grid-template-columns:1fr 1fr; } .out-footer-quick { display:grid; grid-template-columns:1fr; } .out-footer-quick a + a { padding-left:0; border-left:0; border-top:1px solid #35505a; } }
@media (max-width:560px) { .out-footer { grid-template-columns:1fr; } .out-footer-quick a { min-height:62px; } }

/* Exact rail math prevents a partial fifth/fourth card at desktop widths. */
.out-featured-journeys > .out-horizontal-rail { box-sizing:border-box; width:100%; }
.out-featured-journeys > .out-horizontal-rail { scroll-padding-inline:5.5%; }
.out-featured-journeys > .out-horizontal-rail .out-journey-card { scroll-snap-stop:always; }
.out-testimonial-rail { box-sizing:border-box; width:100%; }
@media (min-width:1080px) {
  .out-featured-journeys > .out-horizontal-rail .out-journey-card { flex:0 0 calc((100% - 66px) / 4); }
  .out-testimonial-rail .out-testimonial-card { flex:0 0 calc((100% - 44px) / 3); }
}

/* Larger editorial rhythm for the final section of the page. */
.out-footer { gap:54px; padding:64px 8% 30px; }
.out-footer-quick { margin:0 0 42px; padding:17px 0; }
.out-footer-quick a { min-height:66px; font-size:18px; line-height:1.15; }
.out-footer-quick a svg { width:36px; height:36px; padding:8px; }
.out-footer .out-brand { max-width:245px; margin-bottom:28px; }
.out-footer p { max-width:300px; font-size:14px; line-height:1.7; }
.out-footer-title { display:block; margin-bottom:18px; font-size:11px; letter-spacing:.18em; }
.out-footer a { margin:12px 0; font-size:14px; line-height:1.35; }
.out-footer-contact p { margin:0 0 14px; }
.out-footer-credentials { margin-top:28px; }
.out-footer-cta { padding:42px 0; margin-top:16px; }
.out-footer-cta h2 { max-width:620px; font-size:clamp(36px,3.4vw,52px); line-height:1.02; }
.out-footer-cta .out-button { padding:17px 24px; font-size:12px; }
.out-footer-legal { padding-top:4px; font-size:12px; }
.out-footer-legal a { font-size:12px; }
@media (max-width:900px) { .out-footer { gap:38px; padding-block:54px 26px; } .out-footer-quick { margin-bottom:18px; padding:0; } }

/* Compact, information-rich footer: four equal editorial columns and no empty CTA field. */
.out-footer { grid-template-columns:1.25fr 1fr 1fr 1.35fr; gap:36px; padding:46px 8% 24px; }
.out-footer-quick { margin:0 0 30px; padding:10px 0; }
.out-footer-quick a { min-height:58px; font-size:16px; }
.out-footer-quick a svg { width:32px; height:32px; }
.out-footer .out-brand { max-width:220px; margin-bottom:18px; }
.out-footer p { max-width:270px; margin:0; font-size:13px; line-height:1.55; }
.out-footer-title { margin-bottom:13px; font-size:10px; }
.out-footer a { margin:8px 0; font-size:13px; }
.out-footer-contact p { margin:0 0 10px; }
.out-footer-credentials { min-height:0; margin-top:20px; }
.out-footer-credentials img { max-width:145px; max-height:55px; }
.out-footer-legal { margin-top:22px; padding-top:18px; border-top:1px solid #35505a; }
.out-footer-legal,.out-footer-legal a { font-size:11px; }
@media (max-width:1050px) { .out-footer { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; } .out-footer-quick { grid-column:1/-1; } }

/* Header and controls: stronger, calmer hierarchy. */
.out-announcement { background:#6a7f2d; color:#fff; font-size:11px; padding:11px; }
.out-header { min-height:88px; border-bottom-color:#cbd5c1!important; }
.out-menu-list a { font-size:14px; letter-spacing:.01em; }
.out-button { padding:16px 23px; font-size:13px; }
.out-filter-tabs button { padding:14px 20px; font-size:14px; }
.out-language summary,.out-currency summary { min-height:48px; padding:9px 14px; font-size:13px; }
.out-language__flag { display:inline-block; width:21px; height:21px; vertical-align:middle; }
.out-language__menu a { display:flex; align-items:center; gap:8px; font-size:12px; }

/* Video remains available on mobile and preserves a full cover crop. */
@media (max-width:700px) { .out-hero--video .out-hero__video { display:block; } .out-hero--video .out-hero__video iframe { width:260vh; min-width:100%; height:146.25vw; min-height:100%; } }

/* Carousel arrows and compact testimonials. */
.out-rail-controls { display:flex; gap:12px; max-width:1340px; margin:18px auto 0; padding:0 5.5%; }
.out-rail-controls button { display:grid; place-items:center; width:38px; height:38px; border:0; border-radius:50%; background:#062733; color:#fff; font-size:20px; cursor:pointer; transition:transform .2s ease,background .2s ease; }
.out-rail-controls button:hover { background:#6a7f2d; transform:translateY(-2px); }
@media (min-width:1080px) { .out-testimonial-rail .out-testimonial-card { flex:0 0 calc((100% - 66px) / 4); min-height:250px; padding:24px; } }
.out-testimonial-card p[data-out-testimonial-copy] { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:5; margin:18px 0 10px; font-size:18px; line-height:1.35; }
.out-testimonial-card.is-expanded p[data-out-testimonial-copy] { display:block; }
.out-testimonial-more { align-self:flex-start; margin:0 0 14px; padding:0; border:0; background:transparent; color:#567826; font:700 12px Arial,sans-serif; cursor:pointer; text-decoration:underline; }
.out-partner-logos img { filter:none; }

/* Footer: remove the redundant navigation column, use official white logo and elevate legal links. */
.out-footer > div:nth-child(3) { display:none; }
.out-footer { grid-template-columns:1.25fr 1fr 1.35fr; gap:40px; }
.out-footer .out-brand { padding:0!important; background:transparent!important; }
.out-footer .out-brand img { content:url('/wp-content/uploads/2021/12/OT-2.png'); max-width:250px; }
.out-footer-legal { justify-content:center; gap:18px; margin-top:28px; padding:23px 0 0; color:#dce8d7; font-size:14px; font-weight:700; }
.out-footer-legal a { color:#fff; font-size:14px; }
@media (max-width:900px) { .out-header { min-height:72px; } .out-menu-list a { font-size:16px; } .out-footer { grid-template-columns:1fr 1fr; } .out-footer > div:nth-child(3) { display:none; } }
@media (max-width:560px) { .out-footer { grid-template-columns:1fr; } .out-footer-legal { justify-content:flex-start; font-size:12px; } .out-footer-legal a { font-size:12px; } }
