:root{color-scheme:light;--paper:#f5f7fb;--white:#fff;--ink:#101f37;--soft:#516179;--line:#dce4ee;--navy:#0c1b33;--blue:#1559dc;--ice:#acd4ff;--radius:24px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;line-height:1.55}
a{color:inherit}
button,input,summary{font:inherit}
a:focus-visible,summary:focus-visible{outline:3px solid #2d79f4;outline-offset:5px}
.shell{width:min(1220px,calc(100% - 72px));margin-inline:auto}
.site-header,.site-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:20px}
.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;font-weight:750;letter-spacing:-.025em;white-space:nowrap}
.brand img{border-radius:10px;display:block;flex:none}
.brand small{display:block;font-size:12px;letter-spacing:0;font-weight:500;color:var(--soft)}
nav{display:flex;gap:26px;align-items:center}
nav a{text-decoration:none;font-size:14px;font-weight:650}
nav a:not(.button):hover,.text-link:hover,.guide-card:hover .guide-link{ text-decoration:underline;text-underline-offset:4px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:10px;text-decoration:none;font-weight:750;min-height:47px;padding:10px 16px;line-height:1.3;transition:background-color .18s,color .18s}
.button-nav{background:#e6eefc;color:#174794}
.button-nav:hover{background:#dce8fc}
.button-primary{background:#c5e3ff;color:#102745;min-height:52px;padding:13px 17px}
.button-primary:hover{background:#fff;color:#0b2f65}
.icon{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.skip{position:fixed;top:8px;left:12px;z-index:10;padding:8px 12px;background:var(--white);transform:translateY(-140%)}
.skip:focus{transform:none}
.hero{display:grid;grid-template-columns:1.08fr 1fr;background:#0b1931;color:#fff;border-radius:30px;overflow:hidden;min-height:567px}
.hero-copy{padding:clamp(35px,5.3vw,72px);padding-right:12px;align-self:center;z-index:1}
.eyebrow{margin:0 0 14px;font-size:.73rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#28538d}
.hero .eyebrow,.download-panel .eyebrow{color:var(--ice)}
.signal{display:inline-block;width:7px;height:7px;border-radius:50%;background:#7dc8ff;box-shadow:0 0 12px #75aaf8;margin-right:8px;vertical-align:.12em}
h1,h2{margin:0;font-weight:780;line-height:1.03;letter-spacing:-.056em;text-wrap:balance}
.hero h1{font-size:clamp(2.7rem,5.25vw,5rem)}
.hero h1 em{display:block;color:var(--ice);font-style:normal}
.intro{max-width:455px;color:#d3ddec;font-size:clamp(1rem,1.45vw,1.2rem);margin:23px 0 26px}
.actions{display:flex;flex-wrap:wrap;gap:12px 19px;align-items:center}
.text-link{display:inline-flex;align-items:center;gap:5px;text-decoration:none;font-size:.875rem;font-weight:700}
.text-link .icon{width:16px;height:16px}
.availability{color:#b9c8de;font-size:.8125rem;margin:14px 0 0}
.hero-art{position:relative;min-width:0;isolation:isolate;background:radial-gradient(ellipse at 63% 43%,#245598 0, #132e56 35%,#0b1931 73%)}
.route-art{position:absolute;z-index:-1;inset:0;width:100%;height:100%;fill:none;stroke:#5c8dc2;stroke-opacity:.27}
.route-line{stroke:#9ad1ff;stroke-opacity:.64;stroke-width:1.4;stroke-dasharray:5 6}
.route-line.alt{stroke-opacity:.42}
.route-dot{fill:#a9d5ff;stroke:none}
.phone{position:absolute;margin:0;overflow:hidden;border:5px solid #263b59;border-radius:28px;background:#101724;box-shadow:0 25px 52px #040c1b9c;line-height:0}
.phone img{display:block;width:100%;height:auto}
.phone-home{width:min(43%,226px);left:19%;top:8%;transform:rotate(-8deg)}
.phone-detail{width:min(39%,208px);left:53%;top:13%;transform:rotate(10deg)}
.art-caption{position:absolute;bottom:15px;right:24px;display:flex;align-items:center;gap:5px;color:#d1e1f4;font-size:.73rem;margin:0}
.art-caption .icon{width:14px;height:14px}
.quick-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 22px;border-bottom:1px solid var(--line);padding:29px 16px 32px}
.quick-facts>div{display:flex;gap:13px;align-items:flex-start}
.quick-facts>div>.icon{color:var(--blue);width:25px;height:25px;margin-top:3px}
.quick-facts strong{font-size:.96rem}
.quick-facts p{margin:2px 0 0;color:var(--soft);font-size:.89rem}
.section{padding:clamp(45px,7vw,92px) 0 0;scroll-margin-top:16px}
.section-intro{margin-bottom:24px}
.section-intro h2,.download-panel h2{font-size:clamp(2.1rem,4vw,3.25rem);text-wrap:initial}
.section-intro>p:last-child:not(.eyebrow){max-width:590px;margin:13px 0 0;color:var(--soft)}
.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.guide-card{display:flex;flex-direction:column;align-items:flex-start;min-height:213px;gap:10px;padding:23px 25px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;transition:border-color .2s,box-shadow .2s}
.guide-card:hover{border-color:#a6c3ed;box-shadow:0 8px 25px #213b6412}
.guide-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.iata,.chip{display:inline-flex;align-items:center;min-height:29px;border-radius:7px;padding:3px 9px;font-size:.74rem;font-weight:760}
.iata{background:#e8f0ff;color:#2259ad;font-variant-numeric:tabular-nums;letter-spacing:.08em}
.chip{background:#fbecee;color:#972940}
.guide-name{font-weight:760;letter-spacing:-.032em;font-size:1.45rem;line-height:1.18}
.guide-description{color:var(--soft);font-size:.9375rem}
.guide-link{margin-top:auto;display:inline-flex;align-items:center;gap:6px;color:#1550a7;font-size:.86rem;font-weight:750}
.guide-link .icon{width:17px;height:17px}
.questions{display:grid;grid-template-columns:1fr 1.34fr;gap:26px}
.answers{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line);padding:14px 0}
summary{font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:#1856a7;font-size:1.3rem;line-height:1}
details[open] summary::after{content:"−"}
details p{margin:11px 28px 2px 0;color:var(--soft)}
.download-panel{margin:clamp(43px,7vw,87px) 0 20px;display:flex;align-items:center;justify-content:space-between;gap:23px;background:var(--navy);color:#fff;padding:clamp(26px,4.3vw,55px);border-radius:var(--radius);scroll-margin-top:18px}
.download-panel h2+p{margin:13px 0 0;color:#d3ddec}
.download-actions{flex:none}
.site-footer{padding-bottom:32px}
.site-footer nav{flex-wrap:wrap;gap:10px 20px}
.site-footer nav a{color:var(--soft)}
.article-shell{max-width:860px}
.breadcrumb{display:inline-flex;color:#245a9d;margin:15px 0 20px;text-decoration:none;font-weight:650;gap:7px;align-items:center}
.breadcrumb:hover{text-decoration:underline}
.breadcrumb .icon{transform:rotate(180deg);width:17px}
.article-head{padding:clamp(26px,5vw,54px);border-radius:var(--radius);background:var(--navy);color:var(--white)}
.article-head h1{font-size:clamp(2.35rem,5.5vw,4.35rem);text-wrap:initial;margin-top:17px}
.article-head p{color:#d3ddec;margin-bottom:0;font-size:1.075rem;max-width:48ch}
.article-body{max-width:680px;margin:0 auto;padding:30px 0 0}
.article-body section{padding:20px 0;border-bottom:1px solid var(--line)}
.article-body h2{font-size:1.65rem;letter-spacing:-.035em;text-wrap:initial}
.article-body p{margin:13px 0 0;color:#3a4d67}
.article-body a,.more-guide{color:#1457ae;text-underline-offset:3px}
.more-guide{display:inline-block;margin:18px 0 0;font-weight:700}
@media(max-width:1060px){
  .hero{min-height:510px}
  .hero-copy{padding-left:37px}
  .phone-home{top:11%;left:15%}
  .phone-detail{top:16%;left:51%}
}
@media(max-width:820px){
  .shell{width:calc(100% - 36px)}
  .hero{grid-template-columns:1fr 0.8fr;min-height:unset}
  .hero-copy{padding:40px 0 40px 26px}
  .hero h1{font-size:clamp(2.45rem,6vw,4rem)}
  .phone-home{top:20%;width:52%;left:12%}
  .phone-detail{top:25%;width:48%;left:48%}
  .quick-facts{padding-inline:4px}
  .download-panel{flex-wrap:wrap}
}
@media(max-width:610px){
  .shell{width:calc(100% - 30px)}
  .site-header{padding-block:13px}
  .site-header .brand{font-size:.94rem;gap:8px}
  .site-header .brand img{width:33px;height:33px}
  .button-nav{min-height:42px;padding-inline:11px}
  .nav-guide{display:none}
  .hero{grid-template-columns:1fr;border-radius:20px}
  .hero-copy{padding:31px 21px 0}
  .hero h1{max-width:430px}
  .intro{margin:16px 0 19px}
  .actions{gap:14px}
  .availability{margin-top:10px}
  .hero-art{min-height:330px;margin-top:5px;overflow:hidden}
  .phone-home{top:8%;left:24%;width:min(36%,159px);border-radius:21px;border-width:4px}
  .phone-detail{top:14%;left:51%;width:min(34%,152px);border-radius:21px;border-width:4px}
  .art-caption{bottom:9px;right:12px;padding:3px 7px;background:#0b1931;border-radius:6px}
  .quick-facts{grid-template-columns:1fr;padding:22px 4px;gap:13px}
  .guide-grid,.questions{grid-template-columns:1fr}
  .questions{gap:0}
  .guide-card{padding:18px;min-height:unset}
  .guide-link{margin-top:7px}
  .download-panel{align-items:flex-start}
  .download-actions{flex:1 1 100%}
  .site-footer{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
