/* YTT v3.68.183 — FINAL HOMEPAGE POLISH
 * Classic, restrained interaction + compact hero navigation.
 * This layer does not change booking/operations logic.
 */

/* =========================================================
   HERO CONTROLS — compact, quiet, contextual
   ========================================================= */
.ytt175-hero-breakout .ytt169-hero .ytt164-controls{
  box-shadow:none!important;
  transition:opacity .22s ease, transform .22s ease, background .22s ease!important;
}
.ytt175-hero-breakout .ytt169-hero .ytt164-arrow{
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:999px!important;
  background:rgba(4,31,20,.28)!important;
  color:rgba(255,255,255,.92)!important;
  box-shadow:none!important;
  font-family:Arial,sans-serif!important;
  font-weight:300!important;
  line-height:1!important;
  transition:background .18s ease,border-color .18s ease,opacity .18s ease,transform .18s ease!important;
}
.ytt175-hero-breakout .ytt169-hero .ytt164-arrow:hover,
.ytt175-hero-breakout .ytt169-hero .ytt164-arrow:focus-visible{
  background:rgba(249,115,22,.88)!important;
  border-color:rgba(249,115,22,.95)!important;
  color:#fff!important;
  transform:scale(1.03)!important;
  outline:none!important;
}

@media(min-width:761px){
  /* Entire control cluster is hover/focus-only on desktop. */
  .ytt175-hero-breakout .ytt169-hero .ytt164-controls{
    gap:5px!important;
    padding:4px 6px!important;
    bottom:18px!important;
    border-color:rgba(255,255,255,.16)!important;
    background:rgba(4,31,20,.30)!important;
    backdrop-filter:blur(6px)!important;
    -webkit-backdrop-filter:blur(6px)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate(-50%,3px)!important;
  }
  .ytt175-hero-breakout .ytt169-hero:hover .ytt164-controls,
  .ytt175-hero-breakout .ytt169-hero:focus-within .ytt164-controls{
    opacity:.88!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate(-50%,0)!important;
  }
  .ytt175-hero-breakout .ytt169-hero .ytt164-arrow{
    width:27px!important;
    height:27px!important;
    min-width:27px!important;
    font-size:18px!important;
  }
  .ytt175-hero-breakout .ytt169-hero .ytt164-dots{
    gap:4px!important;
  }
  .ytt175-hero-breakout .ytt169-hero .ytt164-dot{
    width:3.5px!important;
    height:3.5px!important;
    min-width:3.5px!important;
    opacity:.82!important;
  }
  .ytt175-hero-breakout .ytt169-hero .ytt164-dot.is-active{
    width:9px!important;
  }
}

@media(max-width:760px){
  /* Touch has no hover: keep controls available but visually recessive. */
  .ytt175-hero-breakout .ytt169-hero .ytt164-controls{
    top:9px!important;
    right:9px!important;
    gap:3px!important;
    min-height:0!important;
    padding:3px 4px!important;
    border-color:rgba(255,255,255,.13)!important;
    background:rgba(4,31,20,.23)!important;
    backdrop-filter:blur(5px)!important;
    -webkit-backdrop-filter:blur(5px)!important;
    opacity:.25!important;
  }
  .ytt175-hero-breakout .ytt169-hero.ytt-dots-visible .ytt164-controls,
  .ytt175-hero-breakout .ytt169-hero:focus-within .ytt164-controls{
    opacity:.64!important;
  }
  .ytt175-hero-breakout .ytt169-hero .ytt164-arrow{
    width:21px!important;
    height:21px!important;
    min-width:21px!important;
    border:0!important;
    background:rgba(255,255,255,.07)!important;
    font-size:15px!important;
  }
  .ytt175-hero-breakout .ytt169-hero .ytt164-dots{gap:3px!important}
  .ytt175-hero-breakout .ytt169-hero .ytt164-dot{
    width:2.5px!important;
    height:2.5px!important;
    min-width:2.5px!important;
    background:rgba(255,255,255,.38)!important;
  }
  .ytt175-hero-breakout .ytt169-hero .ytt164-dot.is-active{
    width:7px!important;
    background:rgba(255,123,32,.68)!important;
  }
}

/* =========================================================
   HOMEPAGE RHYTHM — consistent, classic spacing
   ========================================================= */
@media(min-width:761px){
  .ytt178-home .ytt166-section{padding-top:64px!important;padding-bottom:64px!important}
  .ytt178-home .ytt169-why,
  .ytt178-home .ytt169-reviews{padding-top:62px!important;padding-bottom:62px!important}
}

/* Cards should lift subtly rather than jump. */
.ytt178-home :is(.ytt166-service-card,.ytt166-category-card,.ytt166-route-card){
  transition:transform .20s ease,box-shadow .20s ease,border-color .20s ease!important;
}
@media(hover:hover) and (pointer:fine){
  .ytt178-home .ytt166-service-card:hover{transform:translateY(-3px)!important}
  .ytt178-home .ytt166-category-card:hover{transform:translateY(-2px)!important}
  .ytt178-home .ytt166-route-card:hover{transform:translateY(-2px)!important;box-shadow:0 12px 28px rgba(8,55,35,.11)!important}
}

/* Consistent visible keyboard focus across interactive homepage elements. */
.ytt178-home :is(a,button,summary):focus-visible,
.ytt175-hero-breakout :is(a,button):focus-visible{
  outline:2px solid #f97316!important;
  outline-offset:3px!important;
}

/* Keep route cards crisp and classic. */
.ytt178-home .ytt166-route-card{
  border:1px solid rgba(8,55,35,.07)!important;
}

/* Reviews: keep the section visually contained without oversized chrome. */
.ytt178-home .ytt169-reviews-body{
  border-radius:18px!important;
  overflow:hidden!important;
}

/* Mobile: preserve strong hierarchy without excessive vertical length. */
@media(max-width:760px){
  .ytt178-home .ytt166-section{padding-top:40px!important;padding-bottom:40px!important}
  .ytt178-home > .ytt166-services:first-child{padding-top:22px!important}
  .ytt178-home .ytt166-section-head{margin-bottom:18px!important}
  .ytt178-home .ytt166-section-head h2{font-size:clamp(25px,7.3vw,31px)!important;line-height:1.09!important}
  .ytt178-home .ytt166-section-head>p:last-child{font-size:11.5px!important;line-height:1.5!important}

  /* Do not override the deliberately compact FAQ/closing CTA from v181. */
  .ytt178-home .ytt166-faq{padding-top:30px!important;padding-bottom:0!important}
}

@media(prefers-reduced-motion:reduce){
  .ytt175-hero-breakout .ytt169-hero .ytt164-controls,
  .ytt175-hero-breakout .ytt169-hero .ytt164-arrow,
  .ytt178-home :is(.ytt166-service-card,.ytt166-category-card,.ytt166-route-card){transition:none!important}
}
