/* WCAG 2.2 accessibility improvements; preserves the series palette. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
:focus-visible{outline:3px solid #071a3d!important;outline-offset:3px!important;box-shadow:0 0 0 6px #fff!important}
main:focus{outline:none}
.skip-link{top:0;transform:translateY(-140%);color:#071a3d;background:#f2bd25;z-index:200}
.skip-link:focus{top:10px;transform:none}
a,button,input,select,textarea,summary,[tabindex]{scroll-margin-block:110px 24px}
main p a,main li a,.search-results a{text-decoration:underline;text-underline-offset:.18em}
button,input,select,textarea,summary{font:inherit}
button,summary{cursor:pointer}
button,.search-trigger,.search-close{min-width:44px;min-height:44px}
input,select,textarea{min-height:44px;border-color:#566579!important}
input[aria-invalid="true"]{border:2px solid #a01025!important}
.field-error{display:block;margin:.4rem 0 0;color:#a01025;font-weight:700;font-size:.95rem}
.calc-results .field-error{color:#fff}
main,section,article,aside,.wrap,.header-inner,.home-hero-copy,.book-intro-grid>div,.calculator-shell>*{min-width:0}
p,li,figcaption,label,td,th,.source-links a,.form-error{overflow-wrap:anywhere}
.table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;margin-block:1rem}
.table-scroll table{margin:0;width:100%}
.table-scroll caption{text-align:left;font-weight:700;padding:.6rem 0;color:#14233a}
.search-panel{border:0;padding:0;width:min(760px,90vw);max-width:90vw;max-height:90dvh;height:auto;inset:0;margin:auto;overflow:auto;background:#fff;color:#14233a}
.search-panel:not([open]){display:none}
.search-panel[open]{display:block}
.search-panel::backdrop{background:rgba(4,19,45,.92)}
.search-box{width:100%;padding:24px;box-shadow:none}
.search-box h2{font-size:clamp(1.6rem,5vw,2.4rem);line-height:1.2;letter-spacing:normal;margin:0}
.search-box label{display:block;font-weight:700;margin-top:1rem}
.search-box input{margin:8px 0 16px}
.search-results a{line-height:1.5}
.tools-hub-number{color:#566579}
.country-link.live:hover:after{color:#f2bd25}
.calc-bar-track{border:1px solid #fff}
.calc-bar-track i{background:#f2bd25}
@media(max-width:1080px){.site-header{position:relative}.header-inner{flex-wrap:wrap}.site-nav{width:100%;max-height:none}.site-nav.open{position:static;order:5;flex-basis:100%;overflow:visible}.brand{flex:1;min-width:0}.brand small{width:auto}.search-trigger{flex-shrink:0}}
@media(max-width:640px){html,body{overflow-x:visible!important}h1{font-size:clamp(2rem,10vw,3rem)!important;line-height:1.12!important}h2{font-size:clamp(1.65rem,8vw,2.4rem)!important;line-height:1.2!important}.header-inner{gap:8px}.brand span{white-space:normal}.brand small{font-size:.65rem}.menu-button{min-width:44px;padding:10px 8px}.search-trigger{margin-left:0}.site-nav{position:static}.hero,.home-hero{overflow:visible}.hero-inner,.book-intro-grid{min-width:0}.book-row{overflow-x:auto}.chapter-list{columns:1}.section-heading{flex-direction:column;align-items:start}.calculator-form,.calc-form{min-width:0}fieldset{min-width:0}.calc-detail{flex-wrap:wrap}.calculator-form-head{min-width:0}.search-box{padding:18px}.search-panel{width:94vw;max-width:94vw}.hero-photo-stack{max-width:100%}.feature-lead h3{font-size:2rem}.country-lead-visual figcaption{position:static;max-width:none}.country-lead-visual{height:auto}.country-lead-visual img{height:240px}.photo-journal-grid figcaption{position:static;background:#071a3d}.photo-journal-grid figure{overflow:visible}.photo-journal-grid{grid-auto-rows:auto}.photo-journal-grid img{height:220px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(forced-colors:active){button,input,select,textarea{border:1px solid ButtonText!important}:focus-visible{outline:3px solid Highlight!important;box-shadow:none!important}a{text-decoration:underline}.calc-bar-track{border:1px solid CanvasText}.calc-bar-track i{background:Highlight}}
[hidden]{display:none!important}
footer .footer-facebook{background:#1256ac;color:#fff}
.newsletter .eyebrow{color:#fff!important}
.calculator-results .eyebrow{color:#f2bd25}
:is(.hero,.home-hero,.editorial-hero,.calc-hero,.tools-hero) :is(h1,h2,h3) em{color:#f2bd25}
.visual-hero-overlay{background:linear-gradient(90deg,rgba(4,19,45,.94),rgba(4,19,45,.78))}
.calculator-results .recommendation-card .eyebrow{color:#c71e32}
:is(.page-hero,.travel-story-hero,.visual-page-hero,.retirement-tool-promo) .eyebrow{color:#f2bd25}
:is(.page-hero,.travel-story-hero,.visual-page-hero) :is(h1,h2,h3) em{color:#f2bd25}
.story-photo-grid figcaption,.travel-story>section>figure figcaption,.photo-journal-grid figcaption{background:rgba(4,19,45,.94);padding:14px}
.route-card:before{background:rgba(7,26,61,.76)}
.photo-destination-grid .destination-card:before{background:rgba(7,26,61,.76)}
/* Text enlargement must not force the header or card grids outside the page. */
.site-header{position:relative}
.header-inner{flex-wrap:wrap}
.site-nav{flex-wrap:wrap;min-width:0;max-width:100%}
h1,h2,h3,.destination-card span,.book-tile strong{overflow-wrap:anywhere;word-break:normal}
.topic-ribbon .wrap{flex-wrap:wrap;overflow:visible}
@media(min-width:1081px){.site-nav{flex:1}.destination-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.score{min-width:0;overflow-wrap:anywhere}
@media(min-width:1081px){.country-scorecard{grid-template-columns:repeat(5,minmax(0,1fr))}}
.hero-photo-main{display:flex;flex-direction:column}
.hero-photo-main img{flex:1;min-height:0;height:0}
.hero-photo-main figcaption{flex-shrink:0;background:#fff;color:#071a3d}
