/* Hallmark · pre-emit critique: P4 H4 E4 S5 R4 V4 */
/* Hallmark · macrostructure: Photographic / Workbench · genre: modern-minimal with atmospheric hero · anchor hue: teal
   User-approved exceptions: dimensional italic wordmark and interactive phone. */
@import url('/local-fonts.css?v=20261002a');
@import url('/tokens.css?v=20261002a');
*{box-sizing:border-box}html,body{overflow-x:clip}html{scroll-behavior:smooth;scroll-padding-top:var(--space-6)}body{margin:0;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);line-height:1.5}button,input,select{font:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0}a{color:inherit;text-decoration:none}button,a,input,select{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--color-focus)}button:disabled,select:disabled{opacity:.55;cursor:not-allowed;background:var(--color-panel)}button:active:not(:disabled),a.button:active{filter:brightness(.9)}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-display);font-style:normal;min-width:0;overflow-wrap:anywhere;letter-spacing:-.045em;line-height:1.12}h2{font-size:var(--text-heading)}h3{font-size:var(--text-xl)}em{font-style:normal;color:var(--color-accent)}svg{display:block}small{font-size:var(--text-xs)}.wrap{width:min(1120px,calc(100% - 64px));margin-inline:auto}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);min-height:48px;padding:var(--space-3) var(--space-6);border-radius:var(--radius-pill);font-weight:700;font-size:var(--text-sm);line-height:1.2;white-space:nowrap;background:var(--color-ink);color:var(--color-inverse);transition:background var(--dur-short) var(--ease-out)}.button:hover{background:var(--color-accent)}.button.aqua{background:var(--color-accent-light);color:var(--color-accent-ink)}.button.aqua:hover{background:var(--color-inverse)}.text-link{display:inline-block;background:none;padding:var(--space-2) 0;border-bottom:1px solid currentColor;font-size:var(--text-sm);white-space:nowrap}.brand{font-family:var(--font-brand);font-size:26px;font-weight:900;font-style:italic;letter-spacing:-1.3px;white-space:nowrap}
.hero{position:relative;background:linear-gradient(var(--color-overlay),transparent 65%,var(--color-paper)),url('/assets/alpine.webp') center 48%/cover;color:var(--color-inverse);padding-bottom:var(--space-8)}.nav{height:80px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);position:relative;z-index:2}.nav nav{display:flex;align-items:center;gap:var(--space-8);font-size:var(--text-sm)}.nav nav a{white-space:nowrap}.nav a:hover{color:var(--color-accent-light)}.login{background:none;color:var(--color-inverse);font-size:var(--text-sm);padding:var(--space-2);white-space:nowrap}.login span{margin-left:var(--space-3)}.hero-heading{width:min(1120px,calc(100% - 64px));margin:auto;padding:var(--space-8) 0 0;position:relative;z-index:2}.hero-heading h1{font-size:var(--text-display);max-width:620px}.hero-heading h1 em{color:var(--color-accent-light)}.hero-heading>p{font-size:var(--text-base);margin-top:var(--space-4);max-width:440px;color:var(--color-inverse-muted)}.hero-actions{display:flex;gap:var(--space-6);align-items:center;margin-top:var(--space-6)}.hero-secondary{font-size:var(--text-sm);white-space:nowrap}.hero-secondary span{margin-left:var(--space-2)}.hero-art{height:308px;position:relative;pointer-events:none}.wordmark{position:absolute;top:4px;width:100%;font-family:var(--font-brand);font-size:clamp(100px,17vw,240px);font-weight:900;font-style:italic;letter-spacing:-.085em;line-height:1;text-align:center;color:var(--color-accent-light);text-shadow:0 2px var(--color-depth-1),0 4px var(--color-depth-2),0 7px var(--color-depth-3),0 18px 24px var(--color-overlay);overflow:hidden}.phone{position:absolute;right:calc(50% - 390px);top:-178px;width:222px;height:462px;transform:scale(.84);transform-origin:center center;background:var(--color-phone);border:5px solid var(--color-metal);border-radius:40px;box-shadow:0 0 0 3px var(--color-metal-dark),0 16px 32px var(--color-shadow);padding:var(--space-3) var(--space-4);text-align:center;pointer-events:auto}.phone-top{height:24px;display:flex;align-items:center;justify-content:space-between;font-size:10px}.island{width:76px;height:16px;background:var(--color-ink);border-radius:var(--radius-pill)}.phone-logo{font-family:var(--font-brand);font-weight:900;font-style:italic;text-align:left;font-size:16px;margin:var(--space-5) 0 var(--space-2)}.phone>strong{font-size:12px}.phone>small{font-size:10px;display:block;color:var(--color-inverse-muted)}.phone-cards{position:relative;height:228px;margin-top:var(--space-4);touch-action:pan-y;cursor:grab;user-select:none}.phone-cards:active{cursor:grabbing}.postcard{position:absolute;top:16px;width:120px;height:188px;border:2px solid var(--color-inverse);border-radius:var(--radius-sm);display:flex;align-items:end;overflow:hidden;background-size:cover;background-position:center;transition:transform var(--dur-short) var(--ease-out)}.postcard span{background:linear-gradient(transparent,var(--color-overlay));color:var(--color-inverse);font-size:12px;width:100%;padding:var(--space-6) var(--space-2) var(--space-2);text-align:left}.card-0{left:-44px;transform:rotate(-12deg);z-index:1}.card-1{left:30px;top:0;height:212px;z-index:3}.card-2{right:-44px;transform:rotate(12deg);z-index:2}.swipe-dots{display:flex;justify-content:center;gap:0}.swipe-dots button{width:28px;height:28px;background:none;display:grid;place-items:center;padding:0;border-radius:50%}.swipe-dots button:after{content:'';width:8px;height:8px;background:var(--color-metal);border-radius:50%}.swipe-dots button[aria-pressed=true]:after{background:var(--color-accent-light)}.phone .swipe{margin-top:var(--space-2)}.home-indicator{position:absolute;bottom:12px;left:calc(50% - 38px);width:76px;height:4px;border-radius:var(--radius-pill);background:var(--color-inverse)}.features{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:var(--space-5) var(--space-6);background:var(--color-glass);backdrop-filter:blur(8px);border:1px solid var(--color-glass-rule);border-radius:var(--radius-card);gap:var(--space-6)}.features>div{display:grid;grid-template-columns:40px minmax(0,1fr);gap:var(--space-4);align-items:center}.features>div+div{border-left:1px solid var(--color-glass-rule);padding-left:var(--space-6)}.feature-icon svg{width:40px;height:40px}.features b{font-size:var(--text-sm);display:block}.features small{display:block;font-size:var(--text-xs);color:var(--color-inverse-muted);margin-top:var(--space-1)}
.destination-hub{margin:var(--space-12) 0 var(--space-16);padding:var(--space-10);background:var(--color-panel);border-radius:var(--radius-section)}.hub-top{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-10);align-items:start;padding-bottom:var(--space-8);border-bottom:1px solid var(--color-rule)}.hub-top h2{font-size:clamp(38px,4.5vw,56px)}.hub-choices>p{font-size:var(--text-base);color:var(--color-muted);max-width:44ch;margin-bottom:var(--space-6)}.hub-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.hub-mode{background:none;position:relative;display:flex;flex-direction:column;align-items:start;text-align:left;gap:var(--space-2);padding:var(--space-4) 0;border-top:2px solid var(--color-rule);color:var(--color-ink)}.hub-mode.active{border-color:var(--color-accent)}.mode-icon{color:var(--color-accent);margin-bottom:var(--space-1)}.mode-icon svg{width:28px;height:28px}.hub-mode strong{font-size:var(--text-sm);white-space:nowrap}.hub-mode small{color:var(--color-muted);line-height:1.4;max-width:18ch;padding-right:var(--space-4)}.mode-arrow{position:absolute;right:0;top:var(--space-4);font-size:var(--text-lg)}.hub-search-row{display:flex;align-items:center;gap:var(--space-6);justify-content:space-between;margin:var(--space-8) 0 var(--space-6)}.hub-search-row h3{font-size:var(--text-xl)}.hub-search-row form{display:flex;gap:var(--space-3);align-items:center;background:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-pill);width:50%;padding:var(--space-1) var(--space-1) var(--space-1) var(--space-4)}.hub-search-row svg{width:20px;height:20px;flex:none}.hub-search-row input{width:100%;min-width:0;border:0;background:none;color:var(--color-ink);padding:var(--space-3) 0;font-size:var(--text-sm);height:44px}.hub-search-row button{flex:none;width:44px;height:44px;border-radius:50%;background:var(--color-ink);color:var(--color-inverse);font-size:var(--text-xl)}input::placeholder{color:var(--color-muted)}.ribbon-row{display:flex;gap:var(--space-2);height:76px;margin-top:var(--space-3)}.country-pill{flex:1 0 auto;border-radius:var(--radius-pill);padding:0 var(--space-5);background:var(--color-ink);color:var(--color-inverse);display:flex;gap:var(--space-3);align-items:center;justify-content:center;font-size:var(--text-base);white-space:nowrap}.country-pill:hover{background:var(--color-accent)}.country-pill span{font-size:24px}.country-pill svg{width:24px;height:24px}.destination-photo{flex:1.4 1 160px;min-width:44px;border-radius:var(--radius-pill);background-size:cover;background-position:center}.hub-regions{font-size:var(--text-xs);color:var(--color-muted);text-align:center;margin-top:var(--space-6)}.filtered .destination-photo{display:none}.filtered .ribbon-row{display:contents}.destination-ribbons.filtered{display:flex;gap:var(--space-3);flex-wrap:wrap}.filtered .country-pill{flex:0 1 auto;min-height:56px}#destination-empty{margin:var(--space-6) 0;color:var(--color-muted)}.japan{background-image:url('/assets/japan-photo.webp')}.france{background-image:url('/assets/france-photo.webp')}.italy{background-image:url('/assets/italy-photo.webp')}.uae{background-image:url('/assets/uae-photo.webp')}
.route-panel{padding:0 0 var(--space-16);border-bottom:1px solid var(--color-rule)}.route-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--space-12);align-items:end;margin-bottom:var(--space-10)}.route-logo{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6)}.route-logo>span{color:var(--color-accent)}.route-logo svg{width:48px;height:48px}.route-logo b{font-family:var(--font-display);font-size:var(--text-xl);font-weight:800;letter-spacing:-1px}.route-logo small{display:block;color:var(--color-muted)}.route-logo .brand{font-size:16px;letter-spacing:-.7px}.route-heading h2{font-size:var(--text-heading)}.route-intro p:first-child{font-size:var(--text-lg);font-weight:700;color:var(--color-ink);margin-bottom:var(--space-4)}.route-intro p{color:var(--color-muted);max-width:46ch}.route-builder{padding:var(--space-6) 0;border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule)}.route-builder p{font-size:var(--text-sm);color:var(--color-muted);margin-top:var(--space-2)}.route-controls{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center;margin-top:var(--space-6)}.stops{display:flex;gap:var(--space-2);flex-wrap:wrap}.stop{border:1px solid var(--color-rule);border-radius:var(--radius-pill);background:var(--color-panel);display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);padding:var(--space-1) var(--space-2) var(--space-1) var(--space-3)}.stop>span{display:flex;align-items:center;gap:var(--space-2)}.stop-icon{width:16px;height:16px}.stop button{width:32px;height:36px;display:grid;place-items:center;background:none;font-size:20px;border-radius:50%;color:var(--color-muted)}.add-stop{border:1px solid var(--color-rule);background:var(--color-surface);border-radius:var(--radius-pill);min-height:44px;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);white-space:nowrap}.route-controls>.button{margin-left:auto}.route-panel .aqua{background:var(--color-ink);color:var(--color-inverse)}.route-panel .aqua:hover{background:var(--color-accent)}.example-heading{margin-top:var(--space-10)}.vibe-title{font-size:clamp(25px,3vw,32px);margin-bottom:var(--space-3)}.example-heading p{color:var(--color-muted);max-width:65ch}.example-route{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;margin:var(--space-6) 0}.example-route>span{font-size:var(--text-sm)}.example-route b{font-size:var(--text-xs);font-weight:400;color:var(--color-muted);margin-left:var(--space-1)}.example-route i{font-style:normal;color:var(--color-accent)}.vibes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}.vibe{background:var(--color-panel);border:1px solid var(--color-rule);border-radius:var(--radius-card);padding:var(--space-6);min-width:0}.vibe>div{display:flex;flex-direction:column;height:100%}.vibe small{font-size:var(--text-xs);color:var(--color-muted)}.vibe h3{font-size:var(--text-xl);margin:var(--space-4) 0;min-height:54px}.example-price{display:flex;align-items:baseline;gap:var(--space-2);font-family:var(--font-display);font-size:44px;line-height:1.1;letter-spacing:-2px;font-variant-numeric:tabular-nums;margin-bottom:var(--space-5)}.example-price span{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:0;color:var(--color-muted)}.vibe p{font-size:var(--text-sm);color:var(--color-muted);line-height:1.5;min-height:64px}.vibe ul{list-style:none;padding:0;margin:var(--space-5) 0;font-size:var(--text-sm);line-height:1.8}.vibe li:before{content:'✓';color:var(--color-accent);margin-right:var(--space-2)}.coverage-note{color:var(--color-muted);border-top:1px solid var(--color-rule);padding-top:var(--space-4);font-size:var(--text-xs);line-height:1.5;min-height:56px;margin-top:auto}.option-benefit{font-size:var(--text-sm);font-weight:600;color:var(--color-accent);margin:var(--space-4) 0}.plan-choice{display:flex;align-items:center;justify-content:center;gap:var(--space-2);background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-rule);border-radius:var(--radius-pill);min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:600;white-space:nowrap}.radio-mark{width:16px;height:16px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center}.plan-choice[aria-checked=true] .radio-mark:after{content:'';width:8px;height:8px;border-radius:50%;background:currentColor}.vibe.selected{background:var(--color-ink);color:var(--color-inverse);border-color:var(--color-ink)}.selected small,.selected p,.selected .example-price span,.selected .coverage-note{color:var(--color-inverse-muted)}.selected .coverage-note{border-color:var(--color-inverse-rule)}.selected .example-price,.selected li:before,.selected .option-benefit{color:var(--color-accent-light)}.selected .plan-choice{background:var(--color-accent-light);color:var(--color-accent-ink);border-color:var(--color-accent-light)}.example-disclaimer{font-size:var(--text-xs);color:var(--color-muted);margin:var(--space-4) 0;max-width:76ch}.bundle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);margin-top:var(--space-8)}.bundle h3{font-size:var(--text-lg)}.bundle p{color:var(--color-muted);font-size:var(--text-sm);margin-top:var(--space-2)}
.section{padding:var(--space-16) 0}.section-title{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--space-12);align-items:end;margin-bottom:var(--space-8)}.section-title p{max-width:40ch;color:var(--color-muted)}.setup-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-8)}.setup-steps li{padding-top:var(--space-5);border-top:1px solid var(--color-rule)}.step-number{font-size:var(--text-sm);color:var(--color-accent);font-variant-numeric:tabular-nums}.setup-steps h3{font-size:var(--text-lg);margin:var(--space-3) 0}.setup-steps p{font-size:var(--text-sm);color:var(--color-muted);max-width:40ch}.compatibility{background:var(--color-panel);border-radius:var(--radius-section);padding:var(--space-10);display:grid;grid-template-columns:1.1fr 1fr;gap:var(--space-12)}.compat-copy{display:flex;gap:var(--space-5);align-items:start}.device-icon{color:var(--color-accent)}.device-icon svg{width:44px;height:64px}.compat-copy p{font-size:var(--text-sm);margin:var(--space-4) 0;color:var(--color-muted)}.compat-copy h2{font-size:var(--text-heading)}.compatibility form{display:grid;gap:var(--space-2)}label{font-size:var(--text-sm);font-weight:500}select,input{border:1px solid var(--color-rule);border-radius:var(--radius-sm);color:var(--color-ink);background:var(--color-surface);min-height:48px;padding:var(--space-3);width:100%;min-width:0}select:invalid{color:var(--color-muted)}select:user-invalid,input:user-invalid{border-color:var(--color-error)}.compatibility .button{margin-top:var(--space-2);background:var(--color-ink);color:var(--color-inverse)}.compatibility form>small{font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-1)}footer{display:flex;flex-wrap:wrap;gap:var(--space-6);align-items:center;justify-content:space-between;padding-block:var(--space-10)}footer p{font-size:var(--text-sm);color:var(--color-muted)}footer nav{display:flex;align-items:center;gap:var(--space-6);flex-wrap:wrap}footer nav a,footer nav button{background:none;padding:var(--space-2) 0;font-size:var(--text-sm);white-space:nowrap}footer .copyright{width:100%;font-size:var(--text-xs);display:flex;justify-content:space-between;gap:var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--color-rule)}
dialog{border:1px solid var(--color-rule);border-radius:var(--radius-card);padding:var(--space-10);width:min(520px,calc(100% - 32px));background:var(--color-paper);color:var(--color-ink);box-shadow:0 24px 80px var(--color-shadow)}dialog::backdrop{background:var(--color-overlay);backdrop-filter:blur(6px)}dialog h2{font-size:30px;padding-right:var(--space-4)}dialog p{margin:var(--space-4) 0;color:var(--color-muted)}dialog .close{position:absolute;right:var(--space-2);top:var(--space-2);width:40px;height:40px;border-radius:50%;background:none;font-size:28px}dialog .button{margin-top:var(--space-4)}dialog label{display:block;margin:var(--space-4) 0 var(--space-2)}dialog ul{padding-left:var(--space-5);line-height:1.8}.eyebrow{font-size:var(--text-xs);color:var(--color-muted);margin-bottom:var(--space-3)}#toast{position:fixed;bottom:var(--space-6);left:50%;transform:translateX(-50%);display:none;max-width:calc(100% - 32px);padding:var(--space-3) var(--space-5);background:var(--color-ink);color:var(--color-inverse);border-radius:var(--radius-sm);z-index:5;font-size:var(--text-sm)}#toast.show{display:block}.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}
@media(max-width:1000px){.phone{right:8%;transform:scale(.76);top:-152px}.hero-heading>p{max-width:340px}.hero-heading h1{font-size:48px}.hero-art{height:304px}.hero-heading{padding-top:var(--space-6)}.features{gap:var(--space-4);padding:var(--space-5)}.features>div{grid-template-columns:28px minmax(0,1fr);gap:var(--space-3)}.features>div+div{padding-left:var(--space-4)}.feature-icon svg{width:28px;height:32px}.destination-hub{padding:var(--space-8)}.hub-top{gap:var(--space-6)}.country-pill{padding-inline:var(--space-4);font-size:var(--text-sm)}.route-heading{gap:var(--space-8)}.vibes{grid-template-columns:1fr;gap:0}.vibe{border-radius:0;padding:var(--space-6);border-bottom:0}.vibe:first-child{border-radius:var(--radius-card) var(--radius-card) 0 0}.vibe:last-child{border-radius:0 0 var(--radius-card) var(--radius-card);border-bottom:1px solid var(--color-rule)}.vibe>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-3) var(--space-8);align-items:start}.vibe small{grid-column:1}.vibe h3{grid-column:1;min-height:0;margin:0;font-size:var(--text-xl)}.example-price{grid-column:1;margin:0;grid-row:3}.vibe p{grid-column:1;grid-row:4;min-height:0}.vibe ul{grid-column:2;grid-row:1/4;margin:0}.coverage-note{grid-column:2;grid-row:4;min-height:0;margin:0;padding:var(--space-3) 0 0}.option-benefit{grid-column:1;margin:0}.plan-choice{grid-column:2;grid-row:5}.example-route{gap:var(--space-2)}.setup-steps{gap:var(--space-6)}.compatibility{padding:var(--space-8);gap:var(--space-8)}}
@media(max-width:700px){.wrap,.hero-heading{width:calc(100% - 40px)}.nav{height:72px;gap:var(--space-3)}.nav nav{gap:var(--space-4)}.nav nav a:last-child{display:none}.nav .brand{font-size:23px}.login{display:none}.hero-heading{text-align:left;padding-top:var(--space-6)}.hero-heading h1{font-size:42px}.hero-heading>p{max-width:360px;font-size:var(--text-sm)}.hero-actions{gap:var(--space-5);margin-top:var(--space-5)}.hero-actions .button{padding-inline:var(--space-5)}.hero-art{height:352px;margin-top:var(--space-2)}.phone{left:50%;right:auto;top:-36px;transform:translateX(-50%) scale(.7)}.wordmark{top:104px;font-size:22vw}.features{grid-template-columns:1fr;gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-card)}.features>div{grid-template-columns:28px 1fr;gap:var(--space-4)}.features>div+div{border:0;padding:0}.features p{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap}.features small{margin:0;font-size:var(--text-xs)}.hero{padding-bottom:var(--space-6)}.destination-hub{margin:var(--space-8) 0 var(--space-12);padding:var(--space-6);border-radius:var(--radius-card)}.hub-top{grid-template-columns:1fr;gap:var(--space-6);padding-bottom:var(--space-6)}.hub-top h2{font-size:40px;line-height:1.08}.hub-choices>p{font-size:var(--text-sm);margin-bottom:var(--space-4)}.hub-modes{gap:var(--space-4)}.hub-mode{padding-block:var(--space-3)}.hub-mode small{font-size:var(--text-xs)}.hub-search-row{display:block;margin:var(--space-6) 0 var(--space-5)}.hub-search-row h3{font-size:22px;margin-bottom:var(--space-4)}.hub-search-row form{width:100%;padding-left:var(--space-3);gap:var(--space-2)}.destination-ribbons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.ribbon-row{display:contents}.destination-photo{display:none}.country-pill{min-height:52px;padding:var(--space-2) var(--space-3);gap:var(--space-2);font-size:var(--text-sm)}.hub-regions{font-size:var(--text-xs);margin-top:var(--space-5)}.route-heading{grid-template-columns:1fr;gap:var(--space-5);margin-bottom:var(--space-6)}.route-heading h2{font-size:32px}.route-logo{margin-bottom:var(--space-4)}.route-logo svg{width:40px;height:40px}.route-intro p:first-child{font-size:var(--text-base);margin-bottom:var(--space-2)}.route-intro p{font-size:var(--text-sm)}.route-builder{padding-block:var(--space-5)}.route-builder h3{font-size:22px}.route-builder p{font-size:var(--text-sm)}.route-controls{gap:var(--space-2);margin-top:var(--space-4)}.route-controls>.button{margin:var(--space-2) 0 0;width:100%}.stops{gap:var(--space-2)}.stop{font-size:var(--text-xs)}.stop-icon{display:none}.stop button{height:32px;width:28px}.example-heading{margin-top:var(--space-8)}.vibe-title{font-size:28px}.example-heading p{font-size:var(--text-sm)}.example-route{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin:var(--space-5) 0}.example-route i{display:none}.example-route>span{font-size:var(--text-xs)}.example-route b{font-size:var(--text-xs)}.vibe{padding:var(--space-5) var(--space-4)}.vibe>div{gap:var(--space-3);grid-template-columns:1fr}.vibe small,.vibe h3,.vibe .example-price,.vibe p,.vibe ul,.coverage-note,.option-benefit,.plan-choice{grid-column:auto;grid-row:auto}.vibe small{font-size:var(--text-xs)}.vibe h3{font-size:24px}.vibe .example-price{font-size:38px}.vibe p{font-size:var(--text-sm)}.vibe ul{display:flex;gap:var(--space-2);flex-wrap:wrap;font-size:var(--text-xs);line-height:1.5}.vibe li:before{display:none}.vibe li+li:before{content:'·';display:inline;margin-right:var(--space-2);color:inherit}.coverage-note{font-size:var(--text-xs);padding-top:var(--space-3)}.option-benefit{font-size:var(--text-sm)}.plan-choice{margin-top:var(--space-1)}.example-disclaimer{font-size:var(--text-xs);margin-block:var(--space-4)}.bundle{display:block;margin-top:var(--space-6)}.bundle .button{margin-top:var(--space-4);width:100%}.route-panel{padding-bottom:var(--space-12)}.section{padding-block:var(--space-12)}.section-title{grid-template-columns:1fr;gap:var(--space-3);margin-bottom:var(--space-6)}.section-title h2{font-size:32px}.section-title p{font-size:var(--text-sm)}.setup-steps{grid-template-columns:1fr;gap:var(--space-5)}.setup-steps li{display:grid;grid-template-columns:28px 1fr;gap:var(--space-4);padding-top:var(--space-4)}.setup-steps h3{margin:0 0 var(--space-2);font-size:var(--text-lg)}.compatibility{grid-template-columns:1fr;gap:var(--space-6);padding:var(--space-6);border-radius:var(--radius-card)}.compat-copy{gap:var(--space-3)}.device-icon svg{width:32px;height:48px}.compat-copy h2{font-size:30px}.compat-copy p{margin:var(--space-3) 0}.compat-copy .text-link{font-size:var(--text-xs)}footer{padding-block:var(--space-8);gap:var(--space-5)}footer nav{gap:var(--space-4)}footer .copyright{display:block;padding-top:var(--space-5)}.copyright span{display:block;margin-top:var(--space-2)}dialog{padding:var(--space-8) var(--space-6)}dialog h2{font-size:26px}dialog .button{max-width:100%}.features b{font-size:var(--text-sm)}}
@media(max-width:360px){.wrap,.hero-heading{width:calc(100% - 32px)}.nav nav{gap:var(--space-3);font-size:var(--text-xs)}.nav .brand{font-size:21px}.hero-heading h1{font-size:38px}.hero-actions{gap:var(--space-4)}.hero-actions .button{padding-inline:var(--space-4)}.hero-secondary{font-size:var(--text-xs)}.hub-top h2{font-size:36px}.destination-hub{padding:var(--space-5)}.hub-mode strong{font-size:var(--text-xs)}.hub-mode small{padding-right:0}.features p{display:block}.features small{margin-top:var(--space-1)}.compatibility{padding:var(--space-5)}.compat-copy{display:block}.device-icon{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.hero :focus-visible,.vibe.selected :focus-visible{outline-color:var(--color-accent-light)}
/* Destination motion and route planning — September review. */
.features{background:var(--color-surface);color:var(--color-ink);border-color:var(--color-rule);box-shadow:0 12px 32px var(--color-shadow);backdrop-filter:none;padding:var(--space-6);gap:var(--space-6)}.features>div{grid-template-columns:48px 1fr}.features>div+div{border-color:var(--color-rule)}.feature-icon{display:grid;place-items:center;width:48px;height:48px;background:var(--color-panel);color:var(--color-accent);border-radius:var(--radius-sm)}.feature-icon svg{width:28px;height:28px}.features small{color:var(--color-muted)}
.destination-ribbons{display:block;overflow:hidden}.ribbon-row{display:flex;width:max-content;height:76px;gap:0;margin-top:var(--space-3)}.ribbon-group{display:flex;flex-shrink:0;gap:var(--space-3);padding-right:var(--space-3);animation:country-drift 32s linear infinite}.ribbon-row:nth-child(2) .ribbon-group{animation-direction:reverse;animation-duration:38s}.ribbon-group .country-pill,.country-copy{flex:none;width:168px;min-height:76px}.country-copy{border-radius:var(--radius-pill);padding:0 var(--space-5);background:var(--color-ink);color:var(--color-inverse);display:flex;gap:var(--space-3);align-items:center;justify-content:center;font-size:var(--text-base);white-space:nowrap}.country-copy span{font-size:24px}.country-copy svg{width:24px;height:24px}.country-copy:hover{background:var(--color-accent)}.ribbon-group .destination-photo{display:block;flex:none;width:210px}.destination-ribbons:hover .ribbon-group,.destination-ribbons:focus-within .ribbon-group,.destination-ribbons.paused .ribbon-group{animation-play-state:paused}.destination-ribbons:focus-within .ribbon-group{animation:none}.destination-ribbons:focus-within{overflow:auto}.motion-toggle{display:block;margin:var(--space-3) auto 0;color:var(--color-muted);font-size:var(--text-xs)}.filtered .ribbon-row,.filtered .ribbon-group{display:contents;animation:none}.filtered .ribbon-copy,.filtered .destination-photo{display:none}.filtered .country-pill{width:auto;min-height:52px}.deck-navigation{display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.deck-navigation button{width:32px;height:30px;background:none;color:var(--color-accent-light);border-radius:50%}.deck-navigation small{font-size:10px;color:var(--color-inverse-muted)}
@keyframes country-drift{to{transform:translateX(-100%)}}
.stops{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.stop{position:relative;display:flex;justify-content:flex-start;gap:var(--space-3);border-radius:var(--radius-sm);padding:var(--space-4);background:var(--color-surface)}.stop .stop-flag{display:block;font-size:32px;line-height:1}.stop .stop-details{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);padding-right:var(--space-4)}.stop-details small{color:var(--color-muted);font-size:var(--text-xs)}.stop button{position:absolute;right:2px;top:2px;width:28px;height:28px;font-size:18px}.route-builder{margin-top:var(--space-8);padding:var(--space-6);border:1px solid var(--color-rule);border-radius:var(--radius-card);background:var(--color-panel)}.sim-set{display:flex;gap:var(--space-2);margin:0 0 var(--space-5)}.sim-mini{margin:0;flex:1;max-width:64px;min-width:0;text-align:center}.sim-mini img{display:block;width:100%;max-width:56px;height:auto;margin:auto}.sim-mini figcaption{font-size:var(--text-xs);margin-top:var(--space-1);white-space:nowrap}.planner-header{border-bottom:1px solid var(--color-rule)}.planner-header .nav{color:var(--color-ink)}.planner{padding-block:var(--space-12);max-width:900px}.planner h1{font-size:var(--text-display);margin:var(--space-4) 0}.planner-lead{color:var(--color-muted);max-width:55ch}.planner-summary{padding:var(--space-6);background:var(--color-panel);border-radius:var(--radius-card);margin-block:var(--space-8)}.planner-summary h2{font-size:var(--text-xl);margin-bottom:var(--space-5)}.planner-summary .stops{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:var(--space-6)}.planner-note{color:var(--color-muted);font-size:var(--text-sm);margin:var(--space-4) 0}.planner-actions{display:flex;gap:var(--space-4);flex-wrap:wrap}
@media(min-width:701px) and (max-width:1000px){.sim-set{grid-column:2;grid-row:1/4;margin:0}.vibe ul{grid-row:5;grid-column:1/-1}.vibe .plan-choice{grid-row:6}.vibe .option-benefit{grid-row:6;align-self:center}.stops{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.features{padding:var(--space-5);gap:var(--space-4)}.features>div{grid-template-columns:40px 1fr;gap:var(--space-3)}.feature-icon{width:40px;height:40px}.features p{display:block}.features small{margin-top:var(--space-1)}.features>div+div{padding-top:var(--space-4);border-top:1px solid var(--color-rule)}.ribbon-row{height:64px}.ribbon-group .country-pill,.country-copy{width:140px;min-height:64px}.ribbon-group .destination-photo{width:170px}.stops{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.stop{display:block;padding:var(--space-3)}.stop .stop-details{margin-top:var(--space-2);padding:0}.stop .stop-flag{font-size:28px}.route-builder{padding:var(--space-4)}.sim-set{margin-bottom:var(--space-2);gap:var(--space-2)}.sim-mini{max-width:52px}.sim-mini img{max-width:44px}.planner-summary{padding:var(--space-4)}.planner{padding-block:var(--space-8)}.planner h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){.ribbon-group{animation:none}.ribbon-copy,.motion-toggle{display:none}.destination-ribbons{overflow:auto}.ribbon-row{width:max-content}}
/* Review: standalone destination cards, one planning entry, inline device status. */
.travel-deck{position:absolute;right:calc(50% - 440px);top:-190px;width:360px;pointer-events:auto}.travel-deck .phone-cards{height:290px;margin:0}.travel-deck .postcard{width:168px;height:234px;top:24px;box-shadow:0 12px 24px var(--color-shadow)}.travel-deck .card-0{left:0}.travel-deck .card-1{left:96px;top:0;height:266px}.travel-deck .card-2{right:0}.travel-deck .postcard span{font-size:var(--text-sm)}.travel-deck .deck-navigation small{font-size:var(--text-xs)}.travel-deck .deck-navigation button{width:40px;height:40px}.travel-deck .swipe-dots button{width:32px;height:32px}.wordmark .reveal-letter{display:inline-block;animation:letter-in 800ms var(--ease-out) both;animation-delay:calc(var(--letter-index)*65ms)}@keyframes letter-in{from{opacity:0;transform:translateY(45px) rotate(5deg)}to{opacity:1;transform:none}}
.hub-top h2 em,.route-heading h2 em{color:var(--color-accent)}.route-logo .brand{color:var(--color-ink)}.sim-mini{max-width:44px}.sim-mini img{max-width:28px}.sim-mini figcaption{font-size:11px}.sim-set{gap:var(--space-3);align-items:start}.route-cta{border-top:1px solid var(--color-rule);padding-top:var(--space-6)}.country-suggestions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:320px;overflow:auto;background:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-sm);padding:var(--space-2);gap:var(--space-1);margin-bottom:var(--space-4)}.country-suggestions button{background:none;text-align:left;padding:var(--space-3);border-radius:var(--radius-sm)}.country-suggestions button:hover,.country-suggestions button:focus-visible{background:var(--color-panel)}.catalog-status{font-size:var(--text-xs);color:var(--color-muted);margin-bottom:var(--space-4)}.device-status{padding:var(--space-4);border:1px solid var(--color-rule);border-left:3px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-surface);margin-top:var(--space-3)}.device-status[data-state=no]{border-left-color:var(--color-error)}.device-status p{font-size:var(--text-sm);margin:var(--space-2) 0;color:var(--color-muted)}.device-status a{font-size:var(--text-sm);text-decoration:underline}.compatibility-form form{display:grid;gap:var(--space-3)}.device-steps{padding-left:var(--space-6)}.device-steps li{padding:var(--space-4) 0}.device-steps p{color:var(--color-muted);margin-top:var(--space-3)}.device-sources{display:flex;flex-wrap:wrap;gap:var(--space-5);text-decoration:underline}.planner-add{display:grid;grid-template-columns:1fr 90px auto;gap:var(--space-3);align-items:end}.planner-add label{display:grid;gap:var(--space-2)}#trip-vibe{margin:var(--space-2) 0 var(--space-5)}
@media(max-width:1000px){.travel-deck{right:4%;width:300px;top:-170px}.travel-deck .postcard{width:144px}.travel-deck .card-1{left:78px}.sim-mini{max-width:44px}}
@media(max-width:700px){.travel-deck{right:auto;left:50%;top:var(--space-6);transform:translateX(-50%);width:260px}.travel-deck .phone-cards{height:245px}.travel-deck .postcard{width:124px;height:198px}.travel-deck .card-1{left:68px;height:222px}.hero-art{height:356px}.wordmark{top:100px}.country-suggestions{grid-template-columns:1fr}.planner-add{grid-template-columns:1fr 72px}.planner-add .button{grid-column:1/-1}.sim-mini img{max-width:28px}}
.travel-deck .deck-navigation{width:max-content;max-width:100%;margin:auto;background:var(--color-ink);border-radius:var(--radius-pill);padding-inline:var(--space-2)}.travel-deck .swipe-dots button:after{box-shadow:0 0 0 2px var(--color-ink)}
/* Light catalog companion and annual planning story. */
.mode-byline{font-size:var(--text-xs);color:var(--color-accent);font-weight:700}.hub-top h2 em{color:var(--color-accent-light);background:var(--color-ink);border-radius:var(--radius-sm);padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone}.search-empty{grid-column:1/-1;display:flex;gap:var(--space-4);align-items:start;padding:var(--space-6)}.empty-search-icon{width:44px;height:44px;display:grid;place-items:center;flex:none;background:var(--color-panel);border-radius:50%;font-size:28px;color:var(--color-accent)}.search-empty strong{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.03em}.search-empty p{font-size:var(--text-sm);color:var(--color-muted);margin:var(--space-2) 0}.search-empty .text-link{font-size:var(--text-sm)}.year-plan{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--space-10);padding:var(--space-8);margin-top:var(--space-10);background:var(--color-panel);border-radius:var(--radius-card)}.year-copy h3{font-size:32px}.year-copy>p:not(.eyebrow){color:var(--color-muted);margin-top:var(--space-4);font-size:var(--text-sm)}.year-copy .text-link{margin-top:var(--space-4)}.year-calendar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.year-calendar>div{border-top:2px solid var(--color-accent);padding-top:var(--space-3)}.year-calendar small{font-size:11px;letter-spacing:.1em;color:var(--color-muted);display:block}.year-calendar span{display:block;margin:var(--space-2) 0;font-size:22px}.year-calendar b{display:block;font-size:var(--text-base)}.year-calendar p{color:var(--color-muted);font-size:var(--text-xs);margin-top:var(--space-1)}.year-caption{grid-column:1/-1;font-size:11px!important;border-top:1px solid var(--color-rule);padding-top:var(--space-3)}
@media(max-width:700px){.year-plan{grid-template-columns:1fr;padding:var(--space-6);gap:var(--space-6)}.year-copy h3{font-size:28px}.search-empty{padding:var(--space-4);gap:var(--space-3)}.search-empty strong{font-size:var(--text-base)}.search-empty .empty-search-icon{width:32px;height:32px}.search-empty .text-link{font-size:var(--text-xs)}.mode-byline{font-size:11px}}
