.button,.way,.aircraft-card,.route-card,.destination{transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}.button:active{transform:translateY(1px)}.button:hover{box-shadow:0 5px 16px #8e6d3525}.nav a{position:relative}.nav a:after{content:'';position:absolute;bottom:-7px;left:0;width:100%;height:1px;background:#9c7b3f;transform:scaleX(0);transform-origin:left;transition:transform .2s}.nav a:hover:after{transform:scaleX(1)}.reveal{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}.reveal.is-visible{opacity:1;transform:none}dialog[open]{animation:dialog-in .18s ease-out}@keyframes dialog-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.field:focus-within{border-radius:5px;background:#f5efE5}.detail-body:has(.featured-routes){max-width:1120px}.detail-body:has(.featured-routes)>h1{max-width:850px;margin-bottom:24px;font-size:clamp(40px,5vw,66px)}.directory-intro{max-width:650px;margin-bottom:38px;color:#756b5c}.directory-intro .eyebrow{color:#997b43}.featured-routes{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.featured-route{border:1px solid #e1d6c4;border-radius:9px;overflow:hidden;background:#fffcf7;transition:box-shadow .25s,transform .25s}.featured-route>img{width:100%;height:195px;object-fit:cover}.featured-route>div{padding:24px}.featured-route h2{font-size:29px;line-height:1.25;margin:14px 0 22px}.featured-route h2 span{font-family:Manrope,sans-serif;color:#ad8c52;font-size:23px}.route-explore{display:flex;justify-content:space-between;font-size:12px;color:#8a6b36}.directory-toolbar{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-top:65px;padding-bottom:20px;border-bottom:1px solid #ddd1bc}.directory-toolbar h2{margin:0;font-size:38px}.route-search{font-size:11px;color:#7a6b53;display:block;width:340px}.route-search input{display:block;width:100%;background:#fffdf8;border:1px solid #d8c9ae;border-radius:6px;padding:14px 16px;margin-top:8px;outline-offset:3px;font-size:13px}.directory-count{font-size:12px;color:#817463;margin:18px 0}.detail-body .route-group{display:grid;grid-template-columns:240px 1fr;gap:35px;margin:0;padding:30px 0;border-bottom:1px solid #e4dacb}.route-group h2{font-size:28px;line-height:1.3}.route-group .eyebrow{font-size:9px;letter-spacing:1.5px;color:#8d7855}.route-rows{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}.route-rows>a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 0;border-bottom:1px solid #ece4d7;transition:color .18s,background .18s}.route-rows strong{display:block;font-weight:500;font-size:14px}.route-rows small{display:block;color:#8d806e;font-size:10px;margin-top:4px}.route-row-action{color:#9c7b3f;font-size:10px;white-space:nowrap}.route-row-action b{margin-left:8px;font-size:17px;font-weight:400}.route-rows>a:hover{color:#957035;background:#f5efe4}.route-groups [hidden],.route-rows [hidden]{display:none!important}.directory-help{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#eee6d8;border-radius:10px;padding:36px;margin:50px 0 10px}.directory-help h2{font-size:32px}.directory-help p:last-child{font-size:13px;margin:0;max-width:550px}.directory-help .button{flex-shrink:0}@media(hover:hover){.featured-route:hover,.way:hover,.aircraft-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px #3f301512}.destination:hover img{transform:scale(1.04)}.destination img{transition:transform .4s ease}}@media(max-width:760px){.featured-routes{grid-template-columns:1fr}.featured-route{display:grid;grid-template-columns:40% 60%}.featured-route>img{height:100%;min-height:200px}.featured-route>div{padding:20px}.featured-route h2{font-size:26px}.featured-route .eyebrow{font-size:8px;letter-spacing:1.4px}.directory-toolbar{display:block;margin-top:40px}.route-search{width:100%;margin-top:22px}.detail-body .route-group{grid-template-columns:1fr;gap:4px;padding:24px 0}.route-rows{grid-template-columns:1fr}.route-group h2{margin-bottom:10px}.directory-help{display:block;padding:25px}.directory-help .button{margin-top:24px}.detail-body:has(.featured-routes)>h1{font-size:39px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Short interaction feedback. No continuous effects or layout animation. */
@media(prefers-reduced-motion:no-preference){
 .button{transition:background-color 160ms ease,border-color 160ms ease,transform 160ms ease;box-shadow:none}
 .button:hover{box-shadow:none}
 .button:active{transform:translateY(1px) scale(.985)}
 .button .arrow,.route-card .arrow,.route-explore>span,.route-row-action b,.guide-sidebar nav>a>span{display:inline-block;transition:transform 180ms cubic-bezier(.2,.7,.3,1)}
 .button:hover .arrow,.route-card:hover .arrow{transform:translateX(3px)}
 .featured-route:hover .route-explore>span,.route-rows>a:hover .route-row-action b,.guide-sidebar nav>a:hover>span{transform:translate(2px,-2px)}
 .way,.aircraft-card,.featured-route{transition:transform 180ms cubic-bezier(.2,.7,.3,1),border-color 180ms ease}
 .place-panel:not([hidden]){animation:panel-arrive 140ms ease-out}
 dialog[open]{animation:panel-arrive 170ms cubic-bezier(.2,.7,.3,1)}
 dialog[open]::backdrop{animation:backdrop-arrive 140ms ease-out}
 .faq details[open]>p,.guide-section details[open]>p{animation:panel-arrive 150ms ease-out}
 .field{transition:background-color 140ms ease}
 .brief-fields input,.brief-fields textarea,.route-search input{transition:border-color 140ms ease,background-color 140ms ease}
 .brief-fields input:focus,.brief-fields textarea:focus,.route-search input:focus{border-color:#a7874f;background:#fffdf9}
 .count button{transition:color 120ms ease,transform 120ms ease}
 .count button:active{transform:scale(.9);color:#98743a}
 .reveal{transform:translateY(9px);transition:opacity 300ms ease-out,transform 300ms cubic-bezier(.2,.7,.3,1)}
 .reveal.is-visible{transform:none}
 @media(hover:hover){.way:hover,.aircraft-card:hover,.featured-route:hover{transform:translateY(-2px);box-shadow:none;border-color:#c5ad82}.destination img{transition:transform 240ms ease-out}.destination:hover img{transform:scale(1.025)}}
 @media(max-width:760px){.nav.open{animation:panel-arrive 150ms ease-out}}
}
@keyframes panel-arrive{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes backdrop-arrive{from{opacity:0}to{opacity:1}}

@media(max-width:760px){.site-header{gap:12px;padding-inline:5%}.header-actions{gap:9px}.header-actions .button{display:inline-flex;padding:10px 12px;font-size:10px;white-space:nowrap}.header-actions .language{display:none}.brand svg{width:30px}.brand strong{font-size:20px}.menu-button{padding:4px}}
