:root{--ink:#142937;--muted:#5a6e7a;--teal:#087a78;--deep:#153949;--accent:#f16f40;--ice:#edf4f5;--line:#d9e3e6;--white:#fff;--radius:10px;font-size:16px;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--teal);outline-offset:4px}a{text-decoration:none}p{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:12px;top:-80px;z-index:100;background:var(--ink);color:white;padding:12px}.skip-link:focus{top:12px}.header{max-width:1380px;margin:auto;padding:25px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;font-size:23px;font-weight:760;letter-spacing:-1px;gap:9px;white-space:nowrap}.brand-light{font-weight:400}.brand-dot{color:var(--accent)}nav{display:flex;gap:30px;font-size:14px;font-weight:600}nav a:hover,.text-link:hover{color:var(--teal)}.header-region{color:var(--muted);font-size:12px;font-weight:650;letter-spacing:1.2px}.planner-section{background:var(--ice);padding:46px 5% 0}.planner-section>*{max-width:1240px;margin-left:auto;margin-right:auto}.intro{position:relative;padding-bottom:29px}.eyebrow{font-size:12px;letter-spacing:1.7px;font-weight:750;color:var(--teal)}h1{font-size:clamp(2.4rem,4.25vw,3.75rem);line-height:1.05;letter-spacing:-2.5px;font-weight:650;margin:16px 0}.accent{color:var(--accent)}.intro p{position:absolute;right:0;top:38px;max-width:370px;font-size:16px;margin:0}.workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:24px;align-items:stretch}.planner-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:27px 28px 20px;box-shadow:0 8px 24px #19384306}.planner-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px;gap:12px}.quiet{font-size:12px;color:var(--muted)}.journey-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-bottom:17px;border-bottom:1px solid var(--line)}.field{display:flex;flex-direction:column;gap:6px;min-width:0;position:relative}.field>span{font-size:13px;font-weight:650;color:var(--muted)}input:not([type=radio]):not([type=checkbox]),select{width:100%;border:1px solid var(--line);border-radius:6px;padding:11px 12px;min-height:46px;background:white;color:var(--ink);min-width:0;font-size:14px}select{padding-right:22px}.input-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 12px;margin-top:17px}.optional{font-size:11px;font-weight:400;display:block;line-height:1}.planner-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:22px}.segmented{display:flex;background:#f0f4f5;border:0;border-radius:6px;padding:3px;margin:0}.segmented label{position:relative;cursor:pointer}.segmented input{position:absolute;opacity:0}.segmented span{display:block;font-size:13px;padding:9px 14px;border-radius:4px}.segmented input:checked+span{background:white;box-shadow:0 1px 4px #14293718;font-weight:650}.segmented input:focus-visible+span{outline:3px solid var(--teal)}.primary{border:0;background:var(--teal);color:white;padding:13px 25px;border-radius:6px;font-weight:700;font-size:14px;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;min-height:46px}.primary:hover{background:#086967}.stop-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;font-size:13px}.stop-row label{display:flex;align-items:center;gap:7px}.stop-row input{accent-color:var(--teal);width:16px;height:16px}.stop-row>span{font-size:12px;color:var(--muted)}.planner-note{font-size:12px;margin:18px 0 0;padding-top:14px;border-top:1px solid var(--line)}.journey-preview{background:var(--deep);color:white;border-radius:var(--radius);padding:26px 28px;position:relative;overflow:hidden}.journey-preview .eyebrow{color:#99cdce}.preview-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.preview-tag{font-size:11px;letter-spacing:.6px;border:1px solid #ffffff26;padding:4px 8px;border-radius:4px}.journey-preview h2{font-size:27px;line-height:1.2;letter-spacing:-.8px;font-weight:550;margin:18px 0 20px}.route-diagram{margin:16px 0 22px}.waypoint{display:flex;align-items:center;gap:16px;position:relative;padding-bottom:26px}.waypoint:last-child{padding-bottom:0}.waypoint:not(:last-child):after{content:'';position:absolute;left:21px;top:39px;height:21px;border-left:1px dashed #91b7bd}.waypoint-marker{width:43px;height:40px;border:1px solid #7da5ae;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:650;color:#aed8d8;flex-shrink:0}.waypoint:last-child .waypoint-marker{background:var(--accent);color:white;border-color:var(--accent)}.waypoint strong{display:block;font-weight:600;font-size:16px}.waypoint div>span{display:block;font-size:12px;color:#afc5cd}.preview-stats{display:flex;border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25;padding:15px 0;gap:28px}.preview-stats strong{display:block;font-size:21px;font-weight:550}.preview-stats span{font-size:11px;color:#afc5cd}.preview-insight{display:flex;gap:10px;margin-top:18px}.insight-icon{background:#ffffff15;color:#d3e5e6;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;margin-top:3px}.preview-insight p{color:#b7ced5;font-size:12px;margin:0;line-height:1.65}.preview-insight strong{color:white;font-weight:550}.text-link{font-size:14px;color:var(--teal);font-weight:650;border-bottom:1px solid #afd0d0;padding-bottom:3px;display:inline-block}.journey-preview .text-link{color:white;font-size:12px;margin-top:20px;border-color:#587b86}.trust-strip{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:23px 0;font-size:12px;color:var(--muted)}.trust-strip span:before{content:'✓';color:var(--teal);margin-right:8px}.trust-strip a{border-bottom:1px solid var(--line)}.section{max-width:1240px;margin:auto;padding:54px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}h2{font-size:30px;line-height:1.2;letter-spacing:-1px;font-weight:600;margin:10px 0 0}h3{font-size:19px;font-weight:650;line-height:1.3}.route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.route-card{border:1px solid var(--line);border-radius:var(--radius);padding:24px;transition:transform .18s,border-color .18s;background:white}.route-card:hover{border-color:var(--teal);transform:translateY(-3px)}.route-card>div{display:flex;align-items:center;gap:12px;font-size:12px}.route-origin{background:var(--ice);font-weight:750;padding:4px 7px;border-radius:4px}.route-line{height:1px;width:35px;background:var(--line);position:relative}.route-line:after{content:'';position:absolute;right:0;top:-2px;background:var(--teal);width:5px;height:5px;border-radius:50%}.route-end{color:var(--muted)}.route-card h3{margin:18px 0 5px}.route-card p{margin:0;font-size:14px}.route-card p span{margin:0 6px}.route-region{display:block;font-size:12px;color:var(--muted);margin-top:17px}footer{max-width:1240px;margin:auto;border-top:1px solid var(--line);padding:35px 0 25px}footer p{font-size:13px;max-width:500px}footer>div{display:flex;gap:25px;font-size:13px}footer small{display:block;color:var(--muted);font-size:12px;margin-top:25px}.error{background:#fff2ef;border:1px solid #efb7a5;color:#8c331b;padding:12px;border-radius:6px;font-size:14px;margin-top:16px}.error[hidden],[hidden]{display:none!important}#destination-list{position:absolute;top:100%;left:0;right:0;z-index:15;background:white;border:1px solid var(--line);border-radius:6px;box-shadow:0 10px 30px #14293715;margin:4px 0;padding:5px;list-style:none;max-height:300px;overflow:auto}#destination-list li{padding:10px;font-size:14px;cursor:pointer;border-radius:4px}#destination-list li:hover,#destination-list li[aria-selected=true]{background:var(--ice)}.result-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.result-heading p{font-size:14px;margin:6px 0}.recommendation{display:flex;gap:16px;background:var(--ice);border-left:3px solid var(--teal);border-radius:0 6px 6px 0;padding:22px 24px;margin-bottom:22px}.recommendation h3{margin:0 0 5px}.recommendation p{margin:0;font-size:14px;max-width:900px}.options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.option{border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column}.option-top{display:flex;justify-content:space-between;align-items:start;gap:12px}.option-top h3{margin:0}.option-tag{font-size:11px;color:var(--teal);background:var(--ice);padding:4px 7px;white-space:nowrap;border-radius:4px}.option .price{font-size:25px;letter-spacing:-.6px;font-weight:650;margin:15px 0 0}.price-basis{font-size:12px;margin:2px 0 13px}.option dl{margin:0;display:grid;gap:11px}.option dl div{border-top:1px solid var(--line);padding-top:10px}.option dt{font-size:12px;font-weight:650;color:var(--muted)}.option dd{font-size:14px;margin:2px 0 0}.option a{margin-top:22px;align-self:start}.option details{font-size:14px;margin-top:14px}.option summary{cursor:pointer;color:var(--teal);font-weight:600;min-height:36px}.option ul{padding-left:20px;color:var(--muted)}.result-notes{font-size:13px;color:var(--muted);margin-top:22px}.results-section{scroll-margin-top:25px}button:disabled{opacity:.55;cursor:not-allowed}.stop-row label:has(input:disabled){color:var(--muted)}@media(min-width:1500px){.planner-section{padding-top:55px}.intro{padding-bottom:38px}}@media(max-width:1350px){.section,footer{margin-left:5%;margin-right:5%}.input-grid{gap:12px 9px}.planner-card{padding:24px}.journey-preview{padding:24px}}@media(max-width:1000px){.header-region{display:none}nav{gap:20px}.intro p{max-width:310px}.workspace{grid-template-columns:1.4fr 1fr;gap:18px}.input-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-fields{grid-template-columns:1fr}.journey-preview h2{margin-bottom:30px}.planner-top{align-items:start}.quiet{max-width:110px;text-align:right}.options{grid-template-columns:1fr 1fr}}@media(max-width:760px){.header{padding:20px 5%;flex-wrap:wrap;gap:18px}.brand{font-size:21px}nav{width:100%;overflow:auto;gap:24px;white-space:nowrap;font-size:13px;padding-bottom:2px}.planner-section{padding-top:30px}.intro p{position:static;max-width:500px;font-size:15px;margin-top:15px}.intro{padding-bottom:23px}h1{letter-spacing:-1.5px}.workspace{grid-template-columns:1fr}.journey-preview{display:none}.journey-fields{grid-template-columns:1fr}.planner-card{padding:20px}.planner-top{margin-bottom:15px}.quiet{max-width:none;font-size:11px}.field>span{font-size:14px}.optional{display:inline;font-size:11px}.planner-bottom{flex-wrap:wrap;gap:14px}.primary{flex:1;padding-left:15px;padding-right:15px}.trust-strip{display:grid;grid-template-columns:1fr 1fr;font-size:11px;gap:9px;padding:19px 0}.section{padding:35px 0}.section-head{align-items:start}.section-head h2,h2{font-size:26px}.section-head .text-link{font-size:12px}.route-grid{grid-template-columns:1fr}.route-card{padding:20px}.options{grid-template-columns:1fr}.result-heading{display:block}.recommendation{padding:18px}.option{padding:21px}footer{padding:26px 0}footer>div{flex-wrap:wrap;gap:16px}.stop-row{align-items:start}.stop-row>span{max-width:84px;text-align:right}.result-heading .text-link{margin-top:10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
:root{scroll-behavior:smooth}.content-main{max-width:1240px;margin:0 auto;padding:24px 0 42px}.breadcrumbs{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:12px;font-weight:400;color:var(--muted);margin-bottom:30px;white-space:normal;overflow:visible}.breadcrumbs a{color:var(--teal)}.page-intro{max-width:900px;margin:40px 0 35px}.page-intro h1{font-size:clamp(2.1rem,3.8vw,3.3rem);line-height:1.13;letter-spacing:-1.8px;margin:15px 0 20px}.page-intro p{max-width:780px;font-size:18px;line-height:1.65}.small-note{font-size:12px;color:var(--muted);line-height:1.7}.route-overview{padding:24px 28px;background:var(--ice);border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;gap:25px}.route-metrics{display:flex;gap:40px}.route-metrics span{display:block;color:var(--muted);font-size:12px}.route-metrics strong{display:block;font-size:22px;font-weight:600;letter-spacing:-.6px;margin-top:5px}.route-cta{display:flex;flex-direction:column;align-items:start;gap:12px;flex-shrink:0}.route-body{display:grid;grid-template-columns:minmax(0,2.6fr) minmax(240px,1fr);gap:50px;margin:40px 0}.route-body h2{font-size:26px;margin-bottom:15px}.practical-list{padding:0;list-style:none;margin:24px 0 36px}.practical-list li{padding:18px 0 18px 25px;border-bottom:1px solid var(--line);font-size:16px;line-height:1.8;position:relative;color:var(--muted)}.practical-list li:before{content:'';width:6px;height:6px;position:absolute;left:1px;top:29px;border:1px solid var(--teal);border-radius:50%}.body-note{font-size:14px;line-height:1.75;margin-bottom:20px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}table th,table td{padding:19px 20px;vertical-align:top;border-bottom:1px solid var(--line)}table tr:last-child td,table tr:last-child th{border-bottom:0}thead{background:var(--ice);color:var(--muted);font-size:12px}tbody th{width:24%;font-weight:650}table small{display:block;color:var(--muted);font-size:12px;line-height:1.65;margin-top:6px}table .text-link{font-size:12px;margin-top:8px}.route-aside{background:var(--deep);color:white;padding:25px;border-radius:var(--radius);align-self:start;position:sticky;top:25px}.route-aside .eyebrow{color:#a2cfd0}.route-aside p{font-size:13px;color:#b2cbd3}.route-aside h3{font-size:18px}.route-aside .text-link{color:white}.route-aside hr{border:0;border-top:1px solid #ffffff24;margin:25px 0}.route-guidance-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:34px 0 38px}.route-guidance-grid p{font-size:14px;line-height:1.8}.faq-list{margin:22px 0 35px}.faq-list details{border-top:1px solid var(--line);padding:19px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{font-size:16px;font-weight:600;cursor:pointer;list-style:none;position:relative;padding-right:26px}.faq-list summary:after{content:'+';position:absolute;right:0;color:var(--teal);font-size:22px;line-height:1}.faq-list details[open] summary:after{content:'−'}.faq-list p{font-size:15px;line-height:1.8;margin:14px 0 0}.source-links{display:grid;gap:13px}.source-links a{color:var(--teal);font-size:14px;text-decoration:underline;line-height:1.5;overflow-wrap:anywhere}.sources-section{background:var(--ice);padding:25px;margin-top:35px;border-radius:8px}.sources-section p{font-size:14px}.sources-section>.text-link{margin-top:25px}.related-section{padding-bottom:0}.mode-band{background:#f3f7f8;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.mode-grid p{font-size:15px;line-height:1.8;max-width:340px}.mode-symbol{font-size:12px;letter-spacing:1.3px;color:var(--teal);border:1px solid #bed7d9;padding:6px 8px;border-radius:4px}.mode-grid h3{margin-top:19px}.airport-home-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.airport-home-grid>a{padding:24px 0;border-top:1px solid var(--line);transition:border-color .15s}.airport-home-grid>a:hover{border-color:var(--teal)}.airport-home-grid h3{font-size:16px;margin:16px 0 9px}.airport-home-grid p{font-size:13px;margin:0 0 10px}.airport-mini-code{font-size:29px;font-weight:550;letter-spacing:-.8px;color:var(--teal)}.lagoon-section{background:var(--ice);display:grid;grid-template-columns:1.25fr 1fr;gap:60px;padding:40px;border-radius:var(--radius);margin-top:5px;margin-bottom:20px}.lagoon-copy h2{font-size:34px;margin:15px 0 18px}.lagoon-copy p{font-size:15px;line-height:1.8;max-width:470px}.lagoon-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:23px}.lagoon-flow{background:white;border-radius:6px;padding:25px;border:1px solid var(--line)}.lagoon-flow>div{display:flex;align-items:center;gap:15px;font-size:14px}.leg-code{background:var(--deep);color:white;font-size:12px;font-weight:650;min-width:44px;text-align:center;padding:7px;border-radius:4px}.lagoon-code{background:var(--teal)}.leg-time{display:block;margin:10px 0 10px 21px;border-left:1px dashed #9ababe;padding:4px 0 4px 35px;font-size:11px;color:var(--muted)}.lagoon-flow p{font-size:12px;border-top:1px solid var(--line);padding-top:15px;margin-bottom:0}.intelligence-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.intelligence-grid .eyebrow{font-size:11px;letter-spacing:1px}.intelligence-grid h3{font-size:18px;margin:13px 0}.intelligence-grid p{font-size:14px;line-height:1.8}.intelligence-grid .text-link{font-size:12px}.methodology-teaser{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:70px}.methodology-teaser h2{max-width:430px}.methodology-teaser p{font-size:15px;line-height:1.8;margin-top:0}.airport-banner{display:flex;align-items:center;gap:28px;background:var(--ice);padding:32px;border-radius:var(--radius);margin-bottom:40px}.airport-code{font-size:50px;font-weight:550;letter-spacing:-2px;color:var(--teal)}.airport-banner h2{font-size:23px;margin-top:7px}.airport-banner .primary{margin-left:auto;flex-shrink:0}.airport-content{display:grid;grid-template-columns:2fr 1fr;gap:65px}.airport-content h2{font-size:25px}.airport-content p{line-height:1.8}.airport-content aside{border-left:1px solid var(--line);padding-left:30px}.airport-content aside h3{margin-top:0}.info-box{padding:25px 30px;background:var(--ice);border-radius:8px;margin:30px 0}.info-box p{font-size:15px;line-height:1.8;margin-bottom:5px}.info-box h3{margin-top:0}.info-box .text-link{margin-top:15px}.airport-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.airport-card{border:1px solid var(--line);border-radius:var(--radius);padding:30px;display:flex;flex-direction:column;align-items:start}.airport-card:hover{border-color:var(--teal)}.airport-card .eyebrow{margin-top:15px}.airport-card h2{font-size:25px;margin:12px 0}.airport-card p{font-size:15px;line-height:1.8}.airport-card strong{font-size:14px;color:var(--teal);font-weight:600}.directory-tools{display:flex;align-items:center;gap:20px;background:var(--ice);padding:20px;border-radius:6px;margin-bottom:30px}.directory-tools label{font-size:14px;font-weight:650}.directory-tools input{max-width:440px}.directory-tools p{font-size:13px;margin-left:auto}.directory-grid .route-card{display:block;height:100%}.empty-state{text-align:center;padding:50px}.article-main{max-width:850px}.article-main section h2{font-size:25px;margin-top:35px;margin-bottom:15px}.article-main section p{font-size:16px;line-height:1.9}.article-main .page-intro{margin-bottom:40px}.article-main .source-links{grid-template-columns:1fr 1fr;gap:17px}.disclosure-links{display:flex;gap:25px;font-size:14px;color:var(--teal);margin-top:35px}.return-fields{margin-top:14px;max-width:220px}.lagoon-fields{margin-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:12px;background:var(--ice);padding:13px;border-radius:5px}.arrival-details{font-size:12px;margin-top:17px;color:var(--muted)}.arrival-details summary{cursor:pointer;min-height:30px}.arrival-details .field{max-width:300px;margin-top:10px}.arrival-details p{font-size:12px}.timing-panel{border:1px solid var(--line);border-radius:8px;padding:24px;margin:20px 0;display:grid;grid-template-columns:1fr 2fr;gap:25px}.timing-panel strong{font-size:22px;display:block;color:var(--teal)}.timing-panel span{font-size:12px;color:var(--muted)}.timing-panel ul{padding-left:19px;font-size:14px;color:var(--muted);line-height:1.8;margin:0}.result-warnings{background:#fff4ee;border-left:3px solid var(--accent);padding:18px 20px;font-size:14px;color:#76401e;margin:20px 0}.hotel-note{padding:14px 20px;background:var(--ice);border-radius:6px;margin-bottom:20px;font-size:14px}.results-section .results-toolbar{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px}.results-toolbar .text-link{font-size:13px}.support-routes{font-size:13px;margin-top:10px}.support-routes a{color:var(--teal);text-decoration:underline;margin-right:12px;display:inline-block;padding:4px 0}.preview-fares{display:flex;gap:20px;margin:17px 0 0}.preview-fares span{font-size:11px;color:#afc5cd;display:block}.preview-fares strong{font-size:17px;font-weight:550;display:block}.readiness-note{font-size:12px;color:var(--muted)}.results-subline{font-size:13px;color:var(--muted)}@media(max-width:1350px){.content-main{margin-left:5%;margin-right:5%}.article-main{margin-left:auto;margin-right:auto;padding-left:5%;padding-right:5%}}@media(max-width:1000px){.route-body{grid-template-columns:minmax(0,1fr);gap:20px}.route-aside{display:none}.intelligence-grid{grid-template-columns:1fr 1fr}.airport-home-grid{grid-template-columns:1fr 1fr}.route-metrics{gap:25px}.route-metrics strong{font-size:19px}.route-overview{padding:22px}.lagoon-section{gap:30px;padding:30px}.lagoon-actions{gap:14px}.airport-banner{gap:20px;padding:25px}.airport-banner h2{font-size:20px}}@media(max-width:760px){.content-main{padding-top:15px}.page-intro{margin:25px 0}.page-intro p{font-size:16px}.breadcrumbs{font-size:12px;gap:7px;margin-bottom:20px}.route-overview{display:block;padding:20px}.route-metrics{display:grid;grid-template-columns:1fr 1fr;gap:20px}.route-metrics>div:last-child{grid-column:1/-1}.route-cta{flex-direction:row;align-items:center;flex-wrap:wrap;margin-top:23px}.route-metrics strong{font-size:21px}.route-body{margin-top:28px}.route-body h2{font-size:24px}.route-guidance-grid{grid-template-columns:1fr;gap:10px}.practical-list li{font-size:15px;padding-top:15px;padding-bottom:15px}.table-wrap table{min-width:620px}.table-wrap th,.table-wrap td{padding:16px}.mode-grid{grid-template-columns:1fr;gap:22px}.mode-grid article{border-bottom:1px solid var(--line);padding-bottom:18px}.mode-grid article:last-child{border-bottom:0}.mode-grid p{max-width:none}.airport-home-grid{gap:20px}.airport-home-grid h3{font-size:15px}.airport-home-grid p{font-size:13px}.lagoon-section{grid-template-columns:1fr;margin-left:5%;margin-right:5%;gap:22px;padding:24px}.lagoon-copy h2{font-size:29px}.lagoon-flow{padding:20px}.lagoon-flow>div{font-size:13px}.intelligence-grid{gap:25px 20px}.intelligence-grid h3{font-size:17px}.methodology-teaser{grid-template-columns:1fr;gap:22px}.airport-banner{flex-wrap:wrap;gap:16px;padding:20px}.airport-banner .primary{margin-left:0;flex:auto}.airport-code{font-size:40px}.airport-banner h2{font-size:20px}.airport-content{grid-template-columns:1fr;gap:20px}.airport-content aside{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:22px}.airport-grid{grid-template-columns:1fr;gap:18px}.airport-card{padding:24px}.directory-tools{display:block;padding:17px}.directory-tools input{margin-top:8px}.directory-tools p{margin-bottom:0}.article-main{margin-left:0;margin-right:0;max-width:none}.article-main .source-links{grid-template-columns:1fr}.disclosure-links{flex-wrap:wrap}.timing-panel{grid-template-columns:1fr;gap:15px;padding:20px}.sources-section{padding:20px}.section.related-section{margin-left:0;margin-right:0}.lagoon-fields{grid-template-columns:1fr 1fr}.form-info{font-size:13px}}@media(max-width:370px){.input-grid,.lagoon-fields,.intelligence-grid{grid-template-columns:1fr}.planner-bottom{display:block}.planner-bottom .primary{display:flex;width:100%;margin-top:15px}.trust-strip{grid-template-columns:1fr}.stop-row{display:block}.stop-row>span{display:block;max-width:none;text-align:left;margin-top:5px}}

/* Input size, keyboard focus and tap targets for the review build. */
@media(max-width:760px){.input-grid,.lagoon-fields,.intelligence-grid{grid-template-columns:1fr}.planner-bottom{display:block}.planner-bottom .primary{display:flex;width:100%;margin-top:15px}.trust-strip{flex-direction:column;align-items:flex-start}}
.waypoint:last-child .waypoint-marker{color:var(--ink)}.header nav a{min-height:44px;display:flex;align-items:center}.option summary,.arrival-details summary{min-height:44px;display:flex;align-items:center}.journey-preview :focus-visible,.route-aside :focus-visible{outline-color:white}.directory-tools .primary{white-space:nowrap}@media(max-width:760px){input:not([type=radio]):not([type=checkbox]),select{font-size:16px}.header nav{gap:23px}.trust-strip,.optional,.quiet{font-size:12px}.planner-top{align-items:center}.stop-row label{min-height:44px}}@media(max-width:760px){.header nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;overflow:visible;white-space:normal;padding-bottom:0}.header nav a{padding:0 9px;background:#f0f4f5;border:1px solid var(--line);border-radius:6px;justify-content:flex-start}.header nav a:hover{border-color:var(--teal)}}

/* Keep changing route labels and the same preview readable at every width. */
.preview-header{flex-wrap:wrap;gap:10px}.preview-tag{max-width:100%;overflow-wrap:anywhere}.preview-stats{flex-wrap:wrap}.preview-stats>div{min-width:0;max-width:100%}.waypoint>div{min-width:0;overflow-wrap:anywhere}
@media(max-width:760px){.journey-preview{display:block}.preview-stats strong{font-size:20px}#destination-list li{min-height:44px;display:flex;align-items:center}}

/* Native temporal controls must shrink to their grid/flex track on iOS as well.
   Keep the native picker; constrain its box and WebKit's internal value. */
.planner-card input:is([type=date],[type=time],[type=datetime-local]){display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-inline-size:0;max-inline-size:100%;height:calc(1.55em + 24px);-webkit-appearance:none;appearance:none}
.planner-card input:is([type=date],[type=time],[type=datetime-local])::-webkit-date-and-time-value{min-width:0;min-height:1em;text-align:left}
.planner-card input:is([type=date],[type=time],[type=datetime-local])::-webkit-datetime-edit{min-width:0;padding:0}

/* Day trips stay a secondary mode inside the existing planner. */
.planner-mode{display:inline-flex;gap:3px;padding:3px;background:#f0f4f5;border-radius:6px;margin:0 0 18px}.planner-mode button{min-height:44px;min-width:95px;border:0;border-radius:4px;padding:9px 16px;background:transparent;color:var(--muted);font-size:14px;cursor:pointer}.planner-mode button[aria-pressed=true]{background:white;color:var(--ink);font-weight:650;box-shadow:0 1px 4px #14293718}.tour-intro{margin:0 0 18px;font-size:15px}.tour-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.tour-result-card{border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px;max-width:100%}.tour-result-card p{font-size:15px}.tour-status{font-weight:650;color:var(--teal);font-size:13px!important;letter-spacing:.4px}.tour-warning .tour-status{color:#76401e}.tour-warning{border-left:3px solid var(--accent)}.tour-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:20px 0}.tour-facts>div{min-width:0}.tour-facts span,.tour-facts small{display:block;color:var(--muted);font-size:14px}.tour-facts strong{display:block;font-size:23px;line-height:1.35;margin:7px 0;overflow-wrap:anywhere}.tour-core h3{margin-bottom:10px}.tour-core ol{display:flex;gap:8px 12px;flex-wrap:wrap;list-style:none;padding:0}.tour-core li{background:var(--ice);padding:7px 11px;border-radius:5px;font-size:14px}.tour-alternatives{background:var(--ice);padding:18px 20px;border-radius:6px;margin:20px 0}.tour-alternatives h3{margin:0}.tour-alternatives li{font-size:15px;color:var(--muted)}.tour-alternatives>div{display:flex;flex-wrap:wrap;gap:12px}.tour-alternative{border:1px solid var(--line);border-radius:6px;background:white;color:var(--teal);padding:10px 14px;min-height:46px;font-size:14px;cursor:pointer}.tour-preview-route{list-style:none;padding:0;margin:15px 0 20px}.tour-preview-route li{padding:6px 0 6px 14px;border-left:1px dashed #ffffff50;font-size:14px;overflow-wrap:anywhere}.tour-preview-route li:first-child,.tour-preview-route li:last-child{font-weight:650;border-left:2px solid var(--accent)}.tour-result-card .result-notes{font-size:13px;line-height:1.7}.tour-result-card>.text-link{display:inline-flex;align-items:center;min-height:46px}.tour-result-card .small-note{font-size:14px}
@media(max-width:760px){.tour-inputs,.tour-facts{grid-template-columns:1fr}.tour-result-card{padding:20px}.tour-facts{gap:18px}.tour-core ol{display:block}.tour-core li{margin:6px 0;overflow-wrap:anywhere}.tour-alternatives{padding:16px}.tour-alternatives>div{display:grid;grid-template-columns:minmax(0,1fr)}.tour-alternative{width:100%;text-align:left}.tour-preview-route li{font-size:15px}}

/* Directory cards sit directly under the page H1; keep their existing size. */
.route-card h2{font-size:19px;font-weight:650;line-height:1.3;letter-spacing:normal;margin:18px 0 5px}

/* Iceland Planner is a companion to the primary website planner. */
.product-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin:25px 0 15px}.product-actions a,.product-module a,.product-back-links a,.install-guides a{min-height:46px;display:inline-flex;align-items:center}.product-byline{font-size:16px!important;font-weight:650;color:var(--ink)!important;letter-spacing:.2px}.product-byline span{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:3px}.product-home{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:55px;align-items:center;padding:46px;background:var(--ice);border:1px solid var(--line);border-radius:var(--radius);margin-top:34px}.product-home h2{font-size:38px;line-height:1.18;max-width:560px}.product-home-copy>p{max-width:560px}.product-home figure,.product-page figure{margin:0;min-width:0}.product-home-visual{text-align:center}.product-home-visual img{display:block;width:210px;height:auto;margin:0 auto;border:1px solid var(--line);border-radius:12px;box-shadow:0 15px 35px #14293718}.product-home figcaption,.product-page figcaption{font-size:12px;color:var(--muted);line-height:1.5;margin-top:12px;text-align:center}.product-module{padding:24px 28px;background:var(--ice);border:1px solid var(--line);border-radius:var(--radius);margin:32px 0 0}.product-module h2{font-size:24px;letter-spacing:-.5px;line-height:1.3;margin:10px 0}.product-module p{font-size:15px;max-width:760px;margin-bottom:8px}.product-module-result{margin-top:24px}.product-page{padding-bottom:0}.product-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:60px;align-items:center;padding:35px 0 65px}.product-hero h1{font-size:70px;line-height:1.03;letter-spacing:-3px;margin:20px 0 8px}.product-hero .product-byline{margin:0 0 28px}.product-promise{font-size:30px!important;font-weight:600;line-height:1.3;color:var(--ink)!important;letter-spacing:-.7px}.product-hero p{max-width:580px}.product-hero-visual img{display:block;width:260px;max-width:100%;height:auto;margin:0 auto;border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 45px #14293718}.product-section{padding:55px 0;border-top:1px solid var(--line)}.product-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 32px}.product-features h3{font-size:21px;line-height:1.3;margin:12px 0}.product-features p{font-size:15px}.product-tour-story{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:60px;padding:50px;background:var(--ice);border-radius:var(--radius);margin:15px 0 55px}.product-tour-story img{display:block;width:250px;max-width:100%;height:auto;margin:0 auto;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px #14293712}.product-tour-story h2{font-size:36px;line-height:1.2;max-width:540px}.product-tour-story p{max-width:560px}.product-tour-story a{display:inline-flex;align-items:center;min-height:46px}.product-install{scroll-margin-top:24px}.install-guides{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0}.install-guides article{border:1px solid var(--line);border-radius:var(--radius);padding:25px;min-width:0}.install-guides h3{font-size:22px;line-height:1.3;margin:12px 0 20px}.install-guides ol{padding-left:22px;margin:0}.install-guides li{font-size:15px;line-height:1.7;padding-left:4px;margin-bottom:12px}.install-guides p{font-size:15px}.product-qr img{display:block;max-width:100%;width:144px;height:auto;background:#fff;margin-bottom:15px}.product-qr p{font-size:14px}.product-practical{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px}.product-practical h2{font-size:28px;line-height:1.3}.product-practical p{font-size:15px}.product-back-links{display:flex;flex-direction:column;align-items:flex-start}.header nav a[data-app-action]{font-size:inherit;font-weight:inherit;border-bottom:0}
@media(max-width:1000px){.product-hero{gap:30px}.product-hero h1{font-size:55px}.product-home{gap:30px;padding:32px}.product-features{grid-template-columns:repeat(2,minmax(0,1fr))}.install-guides{grid-template-columns:1fr}.product-qr{display:flex;align-items:center;gap:24px}.product-tour-story{padding:30px;gap:35px}}
@media(max-width:760px){.product-home{grid-template-columns:1fr;gap:30px;padding:24px;margin:30px 20px}.product-home h2{font-size:31px}.product-home-visual img{width:220px}.product-actions{align-items:stretch;gap:8px;margin-top:22px}.product-actions .primary{flex:0 0 100%;width:100%;text-align:center;justify-content:center}.product-actions .text-link{justify-content:flex-start}.product-hero{grid-template-columns:1fr;gap:30px;padding:18px 0 40px}.product-hero h1{font-size:46px;letter-spacing:-1.8px;margin-top:16px}.product-promise{font-size:26px!important}.product-hero-visual img{width:250px}.product-page .eyebrow{line-height:1.65}.product-features{grid-template-columns:1fr;gap:24px}.product-section{padding:35px 0}.product-section h2{font-size:30px;line-height:1.25}.product-tour-story{grid-template-columns:1fr;gap:28px;padding:24px;margin-bottom:35px}.product-tour-story>div{grid-row:1}.product-tour-story h2{font-size:30px}.product-tour-story img{width:250px}.install-guides article{padding:22px}.product-qr{display:block}.product-practical{grid-template-columns:1fr;gap:20px}.product-module{padding:22px}.product-module h2{font-size:23px}.product-module a{width:100%}.header nav a[data-app-action]{grid-column:1/-1;min-height:44px}}

footer a[data-app-action]{display:inline-flex;align-items:center;min-height:44px;padding:8px 0}

/* Compact mobile menu; desktop links keep their existing layout. */
.mobile-nav-toggle{display:none}
@media(max-width:760px){#journey-planner,#main{scroll-margin-top:var(--nav-scroll-offset,16px)}.header .mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:64px;border:1px solid var(--line);border-radius:6px;background:#f0f4f5;color:var(--ink);font-size:14px;font-weight:600;padding:8px 12px;cursor:pointer}.header nav{display:none}.header[data-nav-open] nav{display:grid}.header{gap:12px}}
