*{box-sizing:border-box}body,html{margin:0;min-height:100%;overflow-x:clip}html{scroll-behavior:smooth}body{background:var(--color-paper);color:var(--color-ink);font:16px/1.55 var(--font-body);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:active,button:active{transform:translateY(0)}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3{margin:0;font-family:var(--font-display);font-style:normal;line-height:1.06;letter-spacing:-.035em;overflow-wrap:anywhere;min-width:0}p{margin:0}input,select,textarea{border:1px solid var(--color-line);outline:2px solid transparent;outline-offset:1px}a:focus-visible,button:focus-visible,input:focus,select:focus,textarea:focus{outline:2px solid var(--focus);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap;border:0}.skip-link{position:fixed;top:10px;left:10px;z-index:var(--z-tooltip);transform:translateY(-160%);padding:10px 14px;border-radius:var(--radius-sm);background:var(--color-ink);color:var(--color-paper-2)}.skip-link:focus{transform:none}.icon{display:inline-grid;place-items:center;width:1.2em;height:1.2em;flex:0 0 auto;font-style:normal;line-height:1}.eyebrow{display:block;margin-bottom:10px;font-size:11px;font-weight:800;letter-spacing:.14em;color:var(--color-muted)}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-nav);height:var(--topbar);display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;grid-gap:20px;gap:20px;padding:0 28px;background:color-mix(in srgb,var(--color-paper) 90%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.topbar--product{border-bottom:1px solid var(--color-line)}.brand{justify-self:start;display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:18px;font-weight:900;letter-spacing:-.04em;white-space:nowrap}.brand__mark{display:block;width:72px;height:48px;border-radius:var(--radius-sm);object-fit:contain}.brand__mark--large{width:160px;height:107px;margin:0 auto 24px}.topbar__tools{justify-self:end;display:flex;align-items:center;gap:8px}.avatar-button,.tool-button{display:grid;place-items:center;min-width:38px;height:38px;padding:0 10px;border:0;border-radius:999px;background:var(--color-paper-2);font-size:12px;font-weight:800;box-shadow:0 1px 0 var(--color-line);white-space:nowrap}.avatar-button{background:var(--color-ink);color:var(--color-paper-2)}.trip-meta{display:flex;align-items:center;gap:9px;height:42px;padding:0 17px;border:0;border-radius:999px;background:var(--color-paper-2);box-shadow:0 1px 0 var(--color-line);white-space:nowrap}.trip-meta strong{font-size:12px}.trip-meta span{padding-left:9px;border-left:1px solid var(--color-line);color:var(--color-muted);font-size:12px}.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 18px;border:1px solid transparent;border-radius:999px;font-weight:800;white-space:nowrap;transition:transform var(--dur-micro) var(--ease-out),box-shadow var(--dur-short) var(--ease-out),background-color var(--dur-short) var(--ease-out)}.button--small{min-height:38px;padding:0 14px;font-size:12px}.button--ink{background:var(--color-ink);color:var(--color-paper-2);box-shadow:0 7px 18px var(--color-shadow)}.button--ink:hover{box-shadow:0 10px 26px var(--color-shadow)}.button--lilac{background:var(--color-accent);color:var(--color-accent-ink)}.button--lilac:hover{background:var(--color-accent-2)}.button--ghost{border-color:var(--color-line);background:var(--color-paper-2)}.button--selected{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success)}.button--wide{width:100%}.text-button{border:0;background:transparent;text-decoration:underline;text-underline-offset:4px;font-weight:700}.back-link{display:inline-flex;align-items:center;gap:8px;color:var(--color-muted);font-size:13px;font-weight:700;white-space:nowrap}.landing{min-height:calc(100vh - var(--topbar))}.hero{max-width:1380px;min-height:calc(100vh - 142px);margin:auto;padding:42px 5vw 84px;display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);grid-gap:6vw;gap:6vw;align-items:center}.hero__content{grid-column:2;max-width:720px}.hero h1{font-size:clamp(46px,3.8vw,62px);line-height:.98}.hero h1,.hero__lede{width:min(760px,calc(100% + 130px));max-width:none}.hero__lede{margin:24px 0 27px;color:var(--color-muted);font-size:clamp(14px,1vw,16px);font-weight:600;white-space:nowrap}.hero__visual-shell{grid-column:1;grid-row:1;position:relative;width:min(40vw,500px);aspect-ratio:5/4;justify-self:end;transform:translateX(clamp(0px,3vw,36px))}.hero__visual{position:absolute;inset:0;overflow:hidden;border-radius:var(--radius-lg)}.hero__visual>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.float-card{position:absolute;z-index:2;display:grid;grid-template-columns:38px 1fr;grid-column-gap:9px;column-gap:9px;align-items:center;min-width:190px;padding:12px 15px;border-radius:18px;background:var(--color-paper-2);box-shadow:var(--shadow-sm);transform:rotate(2deg)}.float-card>span{grid-row:1/span 2;font-size:24px}.float-card strong{font-size:13px}.float-card small{color:var(--color-muted);font-size:10px}.float-card--one{top:12%;left:-10%;transform:translateX(7px) rotate(2deg)}.float-card--two{right:-7%;bottom:11%;transform:rotate(-3deg)}.prompt{width:min(calc(100% + 48px),760px);padding:10px;border:1px solid var(--color-line);border-radius:25px;background:var(--color-paper-2);box-shadow:0 18px 55px var(--color-shadow)}.prompt textarea{display:block;width:100%;min-height:112px;padding:8px 10px;resize:none;border:0;background:transparent;font-size:15px;font-weight:600}.prompt textarea:focus,.prompt textarea:focus-visible{outline:0}.prompt__footer{display:flex;align-items:center;gap:10px;padding-left:4px}.prompt__footer>span{flex:1 1;color:var(--color-muted);font-size:11px}.attachment,.send-button{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border:0;border-radius:999px}.attachment{background:var(--color-paper-3);font-size:23px}.send-button{background:var(--color-accent);color:var(--color-accent-ink);font-size:20px}.prompt-chips{width:min(calc(100% + 48px),760px);display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.prompt-chips button,.sidebar-chips .sidebar-chip,.suggestions button{min-height:36px;border:1px solid var(--color-line);border-radius:999px;background:transparent;padding:7px 12px;font-size:11px;font-weight:700;white-space:nowrap}.prompt-chips button{white-space:normal;text-align:left;overflow-wrap:anywhere}.prompt-chips button:hover,.sidebar-chips .sidebar-chip:hover,.suggestions button:hover{background:var(--color-accent-soft);border-color:var(--color-accent)}.hero__note{margin-top:14px;color:var(--color-muted);font-size:11px}.landing-strip{min-height:78px;display:flex;align-items:center;justify-content:center;gap:45px;padding:20px;background:var(--color-ink);color:var(--color-paper-2)}.landing-strip span{display:flex;align-items:center;gap:8px;font-weight:700;white-space:nowrap}.chat-shell{min-height:calc(100vh - var(--topbar));display:grid;grid-template-columns:minmax(360px,41%) minmax(0,1fr)}.chat-panel{position:relative;z-index:2;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto auto;height:calc(100vh - var(--topbar));padding:20px 22px 12px;background:var(--color-paper-2);box-shadow:6px 0 30px var(--color-shadow)}.chat-panel__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 4px 18px;border-bottom:1px solid var(--color-line)}.chat-panel__head>div{text-align:right}.chat-panel__head span,.chat-panel__head strong{display:block}.chat-panel__head span{color:var(--color-muted);font-size:10px}.messages{overflow-y:auto;min-height:0;padding:24px 3px}.message{display:flex;align-items:flex-start;gap:9px;margin:0 0 20px}.message--user{justify-content:flex-end}.assistant-mark{display:grid;place-items:center;width:28px;height:28px;flex:0 0 auto;border-radius:50%;background:var(--color-ink);color:var(--color-accent);font:900 13px var(--font-display)}.message__bubble{max-width:82%;padding:13px 15px;border-radius:5px 18px 18px 18px;background:var(--color-paper);font-size:13px}.message--user .message__bubble{border-radius:18px 18px 5px 18px;background:var(--color-accent-soft)}.assistant-message__bubble{min-width:0}.assistant-message__content{display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs);min-width:0;overflow-wrap:anywhere}.assistant-message__paragraph{min-width:0}.assistant-message__content ul{display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs);margin:0;padding-left:1.2em}.assistant-message__content li{padding-left:var(--space-3xs)}.assistant-message__content strong{font-weight:800}.assistant-message__copy{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3xs);min-height:var(--size-touch);margin:var(--space-2xs) 0 0 auto;padding:0 var(--space-2xs);border:0;border-radius:var(--radius-pill);background:transparent;color:var(--color-muted);font-size:var(--text-xs);font-weight:700;line-height:1;white-space:nowrap;transition:transform var(--dur-micro) var(--ease-out),background-color var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out)}.assistant-message__copy:hover{background:var(--color-paper-2);color:var(--color-ink)}.assistant-message__copy:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.assistant-message__copy:active{transform:translateY(1px)}.assistant-message__copy:disabled{cursor:not-allowed;opacity:.55}.assistant-message__copy.is-copied{color:var(--color-success)}.message--typing{align-items:center;margin-bottom:var(--space-sm)}.message--typing .message__bubble{max-width:none;padding:0;border-radius:0;background:transparent}.typing{display:flex;align-items:center;gap:5px;color:var(--color-muted);font-size:11px}.typing--assistant{min-height:28px}.typing--assistant>span{margin-right:var(--space-3xs)}.typing--generation{color:var(--color-ink);font-size:var(--text-sm)}.typing--generation>span{font-weight:700;white-space:nowrap}.typing i{width:5px;height:5px;border-radius:50%;background:var(--color-muted);animation:pulse 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@keyframes pulse{50%{opacity:.25;transform:translateY(-2px)}}.suggestions{display:flex;gap:7px;padding-bottom:10px;overflow-x:auto}.composer{display:flex;align-items:center;gap:8px;min-height:54px;padding:6px 7px 6px 14px;border:1px solid var(--color-line);border-radius:19px;background:var(--color-paper)}.composer input{width:100%;height:40px;border:0;background:transparent}.composer button{display:grid;place-items:center;width:40px;height:40px;flex:0 0 auto;border:0;border-radius:50%;background:var(--color-ink);color:var(--color-paper-2)}.instant-note{display:block;padding-top:7px;text-align:center;color:var(--color-muted);font-size:9px}.discovery-panel{min-width:0;height:calc(100vh - var(--topbar));overflow-y:auto;display:grid;place-items:center;padding:34px;background:var(--color-accent-soft)}.discovery-empty,.generation,.trip-ready{width:min(100%,680px)}.discovery-empty{text-align:center}.discovery-empty h2,.generation h2,.trip-ready h2{font-size:clamp(30px,4vw,52px)}.discovery-empty>p:not(.eyebrow),.generation>p:not(.eyebrow),.trip-ready__body>p:not(.eyebrow){max-width:530px;margin:15px auto 23px;color:var(--color-muted)}.destination-collage{width:min(100%,560px);height:280px;margin:0 auto 28px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-gap:10px;gap:10px;transform:rotate(-1deg)}.destination-collage img{width:100%;height:100%;object-fit:cover;border-radius:26px}.destination-collage img:first-child{grid-row:1/3;border-radius:44% 27% 24% 31%/31% 35% 28% 42%}.generation{text-align:center}.generation__orb{display:grid;place-items:center;width:104px;height:104px;margin:0 auto 28px;border-radius:45% 55% 49% 51%;background:var(--color-ink);color:var(--color-accent);font-size:40px;box-shadow:0 0 0 16px color-mix(in srgb,var(--color-accent) 30%,transparent)}.progress{height:8px;margin:25px 0 8px;overflow:hidden;border-radius:999px;background:var(--color-paper-2)}.progress span{display:block;height:100%;border-radius:inherit;background:var(--color-ink)}.generation ol{max-width:390px;margin:27px auto 0;padding:0;list-style:none;text-align:left}.generation li{display:flex;align-items:center;gap:12px;padding:7px 0;color:var(--color-muted);font-size:12px}.generation li span{display:grid;place-items:center;width:25px;height:25px;border:1px solid var(--color-line);border-radius:50%;background:var(--color-paper-2)}.generation li.active{color:var(--color-ink);font-weight:800}.generation li.done span{background:var(--color-ink);color:var(--color-paper-2)}.trip-ready{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:hidden;border-radius:var(--radius-lg);background:var(--color-paper-2);box-shadow:var(--shadow-lg)}.trip-ready__image{position:relative;min-height:440px}.trip-ready__image img{width:100%;height:100%;object-fit:cover}.trip-ready__image span{position:absolute;top:18px;left:18px;padding:7px 10px;border-radius:999px;background:var(--color-success-soft);color:var(--color-success);font-size:9px;font-weight:900;letter-spacing:.12em}.trip-ready__body{align-self:center;padding:34px}.trip-ready__body>p:not(.eyebrow){margin-left:0}.mini-stats{display:flex;gap:18px;margin-bottom:24px}.mini-stats span{color:var(--color-muted);font-size:10px}.mini-stats strong{display:block;color:var(--color-ink);font-size:20px}.product-shell{min-height:calc(100vh - var(--topbar));display:grid;grid-template-columns:330px minmax(0,1fr)}.trip-sidebar{position:-webkit-sticky;position:sticky;top:var(--topbar);height:calc(100vh - var(--topbar));display:flex;flex-direction:column;gap:18px;padding:23px 20px 17px;border-right:1px solid var(--color-line);background:var(--color-paper-2)}.trip-sidebar__intro{display:flex;align-items:flex-start;gap:10px}.trip-sidebar__intro p{margin-top:3px;color:var(--color-muted);font-size:11px}.sidebar-thread{flex:1 1;overflow:auto;padding-top:22px;border-top:1px solid var(--color-line)}.sidebar-thread .message__bubble{max-width:100%}.sidebar-chips{display:flex;gap:7px}.sidebar-chips .sidebar-chip{display:flex;flex:1 1;align-items:center;justify-content:center;min-width:0;width:100%;text-align:center;white-space:normal;overflow-wrap:anywhere;line-height:1.25;border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-focus)}.sidebar-chips .sidebar-chip:disabled{cursor:not-allowed;opacity:.55}@media (max-width:1050px){.sidebar-chips{gap:5px}.sidebar-chips .sidebar-chip{padding-inline:8px;font-size:10px}}.composer--sidebar{flex:0 0 auto}.workspace{min-width:0}.workspace__head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:34px 4vw 23px}.workspace__head h1{max-width:760px;font-size:clamp(29px,3.6vw,51px)}.workspace__head p{margin-top:8px;color:var(--color-muted);font-size:12px}.workspace__actions{display:flex;gap:8px;flex:0 0 auto}.workspace-nav{position:-webkit-sticky;position:sticky;top:var(--topbar);z-index:200;display:flex;gap:4px;padding:0 4vw;border-bottom:1px solid var(--color-line);background:color-mix(in srgb,var(--color-paper) 94%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overflow-x:auto}.workspace-nav a{position:relative;min-height:53px;display:flex;align-items:center;gap:7px;padding:0 13px;color:var(--color-muted);font-size:11px;font-weight:800;white-space:nowrap}.workspace-nav a.active{color:var(--color-ink)}.workspace-nav a.active:after{content:"";position:absolute;inset:auto 10px -1px;height:3px;border-radius:3px 3px 0 0;background:var(--color-ink)}.workspace__body{padding:28px 4vw 70px}.overview-grid{display:grid;grid-template-columns:minmax(0,1fr) 270px;grid-gap:25px;gap:25px;align-items:start}.overview-main{min-width:0}.route-strip{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);padding:20px;border-radius:var(--radius-md);background:var(--color-paper-2);box-shadow:0 1px 0 var(--color-line)}.route-strip,.route-strip>div{display:grid;align-items:center}.route-strip>div{min-width:0;grid-template-columns:34px 1fr;grid-column-gap:9px;column-gap:9px}.route-strip small,.route-strip strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-strip small{color:var(--color-muted);font-size:9px}.route-strip strong{font-size:12px}.route-dot{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--color-paper-3);font-weight:900}.route-dot--accent{background:var(--color-accent)}.route-line{position:relative;min-width:40px;padding:0 7px;color:var(--color-muted);font-size:8px;text-align:center}.route-line:before{content:"";display:block;height:1px;margin-bottom:3px;background:var(--color-line)}.map-card{min-height:300px;margin:20px 0;display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);overflow:hidden;border-radius:var(--radius-lg);background:var(--color-ink);color:var(--color-paper-2)}.map-card__copy{align-self:center;padding:35px}.map-card__copy .eyebrow{color:var(--color-accent)}.map-card__copy h2{font-size:31px}.map-card__copy p{margin:13px 0 22px;color:var(--color-paper-3);font-size:12px}.map-card__copy a{font-weight:800;text-decoration:underline;text-underline-offset:5px}.mock-map{position:relative;min-height:300px;overflow:hidden;background:var(--color-map)}.water{position:absolute;border-radius:45%;background:var(--color-water)}.water--one{width:75%;height:120%;right:-25%;top:-15%;transform:rotate(18deg)}.water--two{width:38%;height:60%;left:-15%;bottom:-30%}.road{position:absolute;height:10px;border:2px solid var(--color-road);border-radius:50%}.road--one{width:90%;left:-5%;top:47%;transform:rotate(-18deg)}.road--two{width:60%;left:25%;top:65%;transform:rotate(38deg)}.map-pin{position:absolute;z-index:3;width:32px;height:32px;border:3px solid var(--color-paper-2);border-radius:50% 50% 50% 10%;background:var(--color-ink);color:var(--color-paper-2);box-shadow:var(--shadow-sm);transform:rotate(-45deg);font-weight:900}.map-pin:first-letter{transform:rotate(45deg)}.pin--1{left:28%;top:36%}.pin--2{right:24%;top:29%}.pin--3{left:47%;bottom:20%}.map-label{position:absolute;z-index:2;padding:3px 6px;border-radius:5px;background:color-mix(in srgb,var(--color-paper-2) 80%,transparent);font-size:9px;font-weight:800}.label--1{left:18%;top:55%}.label--2{right:9%;bottom:12%}.journey-block{padding:27px;border-radius:var(--radius-lg);background:var(--color-paper-2)}.section-title{display:flex;justify-content:space-between;gap:20px;margin-bottom:22px}.section-title span:first-child{color:var(--color-muted);font-size:10px;font-weight:800}.section-title h2{margin:3px 0 7px;font-size:33px}.section-title p{color:var(--color-muted);font-size:12px}.weather{white-space:nowrap}.summary-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;grid-gap:14px;gap:14px;padding:13px;margin-bottom:11px;border:1px solid var(--color-line);border-radius:18px}.summary-card__icon{display:grid;place-items:center;background:var(--color-accent-soft);font-size:25px}.summary-card img,.summary-card__icon{width:64px;height:60px;border-radius:14px}.summary-card img{object-fit:cover}.summary-card small{color:var(--color-muted);font-size:8px;font-weight:800;letter-spacing:.08em}.summary-card h3{margin:3px 0;font:800 13px var(--font-body);letter-spacing:0}.summary-card p{color:var(--color-muted);font-size:10px}.summary-card>strong{font-size:12px;white-space:nowrap}.summary-card>a{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--color-paper)}.days-list{margin-top:24px;border-top:1px solid var(--color-line)}.day-card{width:100%;display:grid;grid-template-columns:83px minmax(0,1fr) auto;align-items:center;grid-gap:15px;gap:15px;padding:17px 7px;border:0;border-bottom:1px solid var(--color-line);background:transparent;text-align:left}.day-card:hover{background:var(--color-paper)}.day-card__date small,.day-card__date strong{display:block}.day-card__date small{color:var(--color-muted);font-size:10px}.day-card__body{min-width:0}.day-card__body small,.day-card__body span,.day-card__body strong{display:block}.day-card__body small{color:var(--color-muted);font-size:8px;letter-spacing:.07em}.day-card__body strong{margin:2px 0}.day-card__body span{overflow:hidden;color:var(--color-muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.cost-card{position:-webkit-sticky;position:sticky;top:calc(var(--topbar) + 75px);padding:23px;border-radius:var(--radius-md);background:var(--color-paper-2);box-shadow:var(--shadow-sm)}.cost-card>strong{display:block;font:900 28px var(--font-display);letter-spacing:-.04em}.cost-card>p{color:var(--color-muted);font-size:10px}.cost-card dl{margin:22px 0;padding:15px 0;border-block:1px solid var(--color-line)}.cost-card dl div{display:flex;justify-content:space-between;gap:12px;padding:5px 0;font-size:10px}.cost-card dd{margin:0;font-weight:800;text-align:right}.cost-card>small{display:block;margin-top:11px;color:var(--color-muted);font-size:9px;text-align:center}.catalog-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,.65fr);grid-gap:24px;gap:24px}.catalog-main{min-width:0}.catalog-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:23px}.catalog-head h2{font-size:clamp(28px,3vw,42px)}.catalog-head p{margin-top:8px;color:var(--color-muted);font-size:12px}.filter-button{height:40px;padding:0 15px;border:1px solid var(--color-line);border-radius:999px;background:var(--color-paper-2);white-space:nowrap}.hotel-list{display:grid;grid-gap:14px;gap:14px}.hotel-card{display:grid;grid-template-columns:220px minmax(0,1fr);overflow:hidden;border:2px solid transparent;border-radius:23px;background:var(--color-paper-2)}.hotel-card.selected{border-color:var(--color-accent-2)}.hotel-card>img{width:100%;height:100%;min-height:265px;object-fit:cover}.hotel-card__body{min-width:0;padding:20px}.hotel-card__top{display:flex;justify-content:space-between;color:var(--color-muted);font-size:10px}.rating{padding:4px 7px;border-radius:7px;background:var(--color-success-soft);color:var(--color-success);font-weight:900}.hotel-card h3{margin:6px 0;font-size:20px}.hotel-card p,.hotel-card small{color:var(--color-muted);font-size:10px}.tags{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0}.tags span{padding:4px 7px;border-radius:999px;background:var(--color-paper);font-size:8px;font-weight:800}.hotel-card__price{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-top:17px}.hotel-card__price span,.hotel-card__price strong{display:block}.hotel-card__price strong{font-size:17px}.hotel-card__price span{color:var(--color-muted);font-size:8px}.catalog-map{position:-webkit-sticky;position:sticky;top:calc(var(--topbar) + 75px);height:calc(100vh - var(--topbar) - 105px);min-height:500px;overflow:hidden;border-radius:var(--radius-lg)}.catalog-map .mock-map{height:100%}.catalog-map__note{position:absolute;right:15px;bottom:15px;left:15px;z-index:4;display:flex;justify-content:space-between;gap:14px;padding:14px;border-radius:15px;background:var(--color-paper-2);box-shadow:var(--shadow-sm);font-size:10px}.catalog-map__note span{font-weight:900;white-space:nowrap}.activities-page,.transport-page,.versions-page{max-width:980px;margin:auto}.transport-list{display:grid;grid-gap:12px;gap:12px}.transport-card{display:grid;grid-template-columns:66px minmax(0,1fr) auto;grid-gap:17px;gap:17px;align-items:center;padding:19px;border:2px solid transparent;border-radius:22px;background:var(--color-paper-2)}.transport-card.selected{border-color:var(--color-accent-2)}.transport-card.expired{background:var(--color-paper-3)}.transport-card__icon{display:grid;place-items:center;width:66px;height:66px;border-radius:18px;background:var(--color-accent-soft);font-size:29px}.transport-card__main>div{display:flex;align-items:center;gap:8px}.transport-card__main small{color:var(--color-muted);font-size:8px;letter-spacing:.1em;font-weight:900}.transport-card h3{margin:5px 0;font-size:19px}.transport-card p,.transport-card__main>span{color:var(--color-muted);font-size:10px}.transport-card__price{min-width:145px;text-align:right}.transport-card__price small,.transport-card__price strong{display:block}.transport-card__price strong{font-size:17px}.transport-card__price small{color:var(--color-muted);font-size:8px}.transport-card__price .button{min-height:36px;margin-top:8px;font-size:10px}.status{display:inline-block;padding:4px 7px;border-radius:999px;background:var(--color-success-soft);color:var(--color-success);font-size:8px;font-weight:900;white-space:nowrap}.status--expired{background:var(--color-danger-soft);color:var(--color-danger)}.info-banner{display:flex;gap:13px;margin-top:22px;padding:16px;border-radius:18px;background:var(--color-accent-soft)}.info-banner>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--color-ink);color:var(--color-paper-2);font-weight:900}.info-banner p{color:var(--color-muted);font-size:10px}.day-filter{display:flex;gap:5px}.day-filter button{min-height:36px;padding:0 11px;border:1px solid var(--color-line);border-radius:999px;background:var(--color-paper-2);font-size:10px;font-weight:800;white-space:nowrap}.day-filter button.active{background:var(--color-ink);color:var(--color-paper-2)}.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:15px;gap:15px}.activity-card{position:relative;overflow:hidden;padding:0;border:0;border-radius:20px;background:var(--color-paper-2);text-align:left;transition:transform var(--dur-short) var(--ease-out)}.activity-card:hover{transform:translateY(-3px)}.activity-card img{width:100%;height:160px;object-fit:cover}.activity-card>div{padding:15px}.activity-card__time{position:absolute;top:12px;left:12px;padding:5px 8px;border-radius:999px;background:var(--color-paper-2);font-size:8px;font-weight:900}.activity-card small{color:var(--color-muted);font-size:8px;letter-spacing:.08em}.activity-card h3{min-height:42px;margin:4px 0;font:800 14px/1.25 var(--font-body);letter-spacing:0}.activity-card p{overflow:hidden;color:var(--color-muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.activity-card strong{display:block;margin-top:10px;font-size:11px}.version-list{display:grid;grid-gap:10px;gap:10px}.version-card{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;grid-gap:15px;gap:15px;padding:18px;border:1px solid var(--color-line);border-radius:19px;background:var(--color-paper-2)}.version-card.current{border-color:var(--color-accent-2)}.version-card__number{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--color-paper);font-weight:900}.version-card h3{margin:3px 0;font:800 15px var(--font-body);letter-spacing:0}.version-card p,.version-card small{color:var(--color-muted);font-size:9px}.edit-preview,.version-preview{min-width:0;overflow-wrap:anywhere;padding:var(--space-sm);border:var(--rule-fine) solid var(--color-accent-2);border-radius:var(--radius-md);background:var(--color-accent-soft)}.edit-preview h3,.version-preview h3{margin:var(--space-2xs) 0;font-size:var(--text-md)}.edit-preview dl,.version-preview dl{display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs);margin:var(--space-xs) 0}.edit-preview dl div,.version-preview dl div{display:flex;justify-content:space-between;gap:var(--space-xs);font-size:var(--text-xs)}.edit-preview dd,.version-preview dd{margin:0;font-weight:800;text-align:right}.edit-preview>small,.version-preview>small{display:block;color:var(--color-muted);font-size:var(--text-xs)}.edit-preview__actions,.version-preview__actions{display:flex;flex-wrap:wrap;gap:var(--space-2xs);margin-top:var(--space-sm)}.edit-preview__actions .button,.version-preview__actions .button{min-height:44px;white-space:normal}.version-preview{margin-top:var(--space-md)}.full-map,.version-preview{background:var(--color-paper-2)}.full-map{height:calc(100vh - var(--topbar) - 215px);min-height:590px;display:grid;grid-template-columns:310px minmax(0,1fr);overflow:hidden;border-radius:var(--radius-lg)}.full-map__side{position:relative;z-index:4;padding:25px;box-shadow:5px 0 22px var(--color-shadow)}.full-map__side h2{font-size:31px}.full-map .mock-map{min-height:100%}.map-days{display:grid;grid-gap:7px;gap:7px;margin-top:25px}.map-days button{display:block;padding:13px;border:1px solid transparent;border-radius:14px;background:var(--color-paper);text-align:left}.map-days button.active{border-color:var(--color-accent-2);background:var(--color-accent-soft)}.map-days small,.map-days span,.map-days strong{display:block}.map-days small,.map-days span{color:var(--color-muted);font-size:8px}.map-days strong{margin:2px 0;font-size:11px}.center-page{min-height:calc(100vh - var(--topbar));display:grid;place-content:center;grid-gap:18px;gap:18px;padding:40px 20px}.share-card,.success-card{width:min(100%,600px);padding:40px;border-radius:var(--radius-lg);background:var(--color-paper-2);box-shadow:var(--shadow-lg);text-align:center}.share-card h1,.success-card h1{font-size:clamp(31px,4vw,45px)}.share-card>p:not(.eyebrow),.success-card>p:not(.eyebrow){margin:15px 0 27px;color:var(--color-muted)}.share-illustration,.success-mark{display:grid;place-items:center;width:78px;height:78px;margin:0 auto 22px;border-radius:45% 55% 46% 54%;background:var(--color-accent);font-size:32px;font-weight:900}.share-card label{display:block;margin-bottom:6px;text-align:left;font-size:10px;font-weight:800}.copy-field{display:flex;gap:7px}.copy-field input{min-width:0;flex:1 1;height:46px;padding:0 12px;border-radius:12px;background:var(--color-paper);font-size:10px}.copy-field button{min-height:46px;border:0;border-radius:12px;background:var(--color-ink);color:var(--color-paper-2);font-weight:800;white-space:nowrap}.share-note{display:flex;gap:11px;margin:17px 0;padding:14px;border-radius:14px;background:var(--color-success-soft);text-align:left}.share-note>span{color:var(--color-success);font-weight:900}.share-note p{color:var(--color-muted);font-size:9px}.auth-page{min-height:calc(100vh - var(--topbar));display:grid;grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr)}.auth-art{display:grid;place-items:end start;padding:7vw;background:linear-gradient(150deg,var(--color-ink),var(--color-muted));color:var(--color-paper-2)}.auth-art>div{max-width:650px}.auth-art .eyebrow{color:var(--color-accent)}.auth-art h1{font-size:clamp(46px,6vw,78px)}.auth-art p{max-width:480px;margin-top:20px;color:var(--color-paper-3)}.auth-card{align-self:center;width:min(100% - 40px,450px);margin:auto;padding:40px;border-radius:var(--radius-lg);background:var(--color-paper-2);text-align:center;box-shadow:var(--shadow-sm)}.auth-card .back-link{display:flex;margin-bottom:24px}.auth-card h2{font-size:31px}.auth-card>p{margin:12px 0 24px;color:var(--color-muted);font-size:11px}.stack-form{display:grid;grid-gap:14px;gap:14px;text-align:left}.stack-form label{font-size:10px;font-weight:800}.stack-form input{width:100%;height:46px;margin-top:5px;padding:0 12px;border-radius:12px}.auth-card .legal{margin-bottom:0;font-size:8px}.booking-page{max-width:1180px;margin:auto;padding:42px 4vw 80px;display:grid;grid-template-columns:minmax(0,1fr) 330px;grid-gap:45px;gap:45px;align-items:start}.booking-main h1{max-width:760px;margin-top:14px;font-size:clamp(37px,4.4vw,59px)}.booking-lede{max-width:650px;margin:17px 0 32px;color:var(--color-muted)}.booking-form{display:grid;grid-gap:22px;gap:22px}.booking-form fieldset{margin:0;padding:23px;border:0;border-radius:22px;background:var(--color-paper-2)}.booking-form legend{padding:0 0 13px;font:800 17px var(--font-display)}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:9px;gap:9px}.service-option{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);padding:13px;border:1px solid var(--color-line);border-radius:14px;cursor:pointer}.service-option:has(input:checked){border-color:var(--color-accent-2);background:var(--color-accent-soft)}.service-option input{position:absolute;top:10px;right:10px}.service-option>span{grid-row:1/3;font-size:20px}.service-option strong{font-size:11px}.service-option small{color:var(--color-muted);font-size:8px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:13px;gap:13px}.booking-form label{font-size:10px;font-weight:800}.booking-form input:not([type=checkbox]),.booking-form select,.booking-form textarea{width:100%;min-height:46px;margin-top:5px;padding:10px 12px;border-radius:12px;background:var(--color-paper)}.booking-form textarea{resize:vertical}.consent{display:flex;align-items:flex-start;gap:9px}.consent input{width:18px;height:18px;margin:1px 0 0}.field-error{min-height:1lh;color:var(--color-danger);font-size:9px}.booking-summary{position:-webkit-sticky;position:sticky;top:calc(var(--topbar) + 25px);overflow:hidden;padding:22px;border-radius:24px;background:var(--color-paper-2);box-shadow:var(--shadow-sm)}.booking-summary img{width:calc(100% + 44px);height:180px;margin:-22px -22px 20px;object-fit:cover}.booking-summary h2{font-size:25px}.booking-summary>p{margin-top:7px;color:var(--color-muted);font-size:10px}.booking-summary dl{margin:22px 0;padding-block:12px;border-block:1px solid var(--color-line)}.booking-summary dl div{display:grid;grid-gap:4px;gap:4px;padding:7px 0}.booking-summary dt{color:var(--color-muted);font-size:8px}.booking-summary dd{margin:0;font-size:10px;font-weight:800}.booking-summary>small{color:var(--color-muted);font-size:8px}.success-mark{background:var(--color-success-soft);color:var(--color-success)}.next-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:24px}.next-steps div{padding:12px;border-radius:13px;background:var(--color-paper)}.next-steps span{display:grid;place-items:center;width:24px;height:24px;margin:0 auto 8px;border-radius:50%;background:var(--color-ink);color:var(--color-paper-2);font-size:9px}.next-steps p{font-size:9px}.success-card .text-button{margin-top:15px}.modal-backdrop{position:fixed;inset:0;z-index:800;display:grid;place-items:center;padding:20px;background:color-mix(in srgb,var(--color-ink) 65%,transparent);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal{width:min(100%,760px);max-height:calc(100vh - 40px);overflow:auto;border-radius:var(--radius-lg);background:var(--color-paper-2);box-shadow:var(--shadow-lg)}.modal-head{display:flex;justify-content:space-between;gap:20px;padding:28px;border-bottom:1px solid var(--color-line)}.modal-head h2{font-size:31px}.modal-head p{margin-top:8px;color:var(--color-muted);font-size:11px}.modal-close{display:grid;place-items:center;width:40px;height:40px;flex:0 0 auto;border:0;border-radius:50%;background:var(--color-paper);font-size:24px}.timeline{padding:10px 28px 28px}.timeline button{width:100%;display:grid;grid-template-columns:55px 38px minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;padding:15px 0;border:0;border-bottom:1px solid var(--color-line);background:transparent;text-align:left}.timeline button>span{font-size:10px;font-weight:800}.timeline i{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--color-accent-soft);font-style:normal}.timeline small{color:var(--color-muted);font-size:8px}.timeline strong{display:block;font-size:12px}.timeline p{color:var(--color-muted);font-size:9px}.timeline b{font-size:10px;white-space:nowrap}.activity-detail{position:relative}.activity-detail>img{width:100%;height:330px;object-fit:cover}.modal-close--overlay{position:absolute;top:14px;right:14px;z-index:2}.activity-detail__body{padding:28px}.activity-detail h2{font-size:35px}.activity-detail__body>p{margin:14px 0;color:var(--color-muted)}.activity-detail__location{font-size:11px}.detail-price{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:23px;padding-top:20px;border-top:1px solid var(--color-line)}.detail-price small,.detail-price strong{display:block}.detail-price small{color:var(--color-muted);font-size:8px}.detail-price strong{font-size:19px}.activity-detail__body>.text-button{margin-top:16px}.toast{position:fixed;z-index:var(--z-toast);left:50%;bottom:24px;transform:translate(-50%,30px);padding:11px 17px;border-radius:999px;background:var(--color-ink);color:var(--color-paper-2);box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;font-size:11px;font-weight:800;transition:transform var(--dur-short) var(--ease-out),opacity var(--dur-short) var(--ease-out)}.toast.show{transform:translate(-50%);opacity:1}@media (max-width:1050px){.hero{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:4vw}.hero__visual-shell{width:min(40vw,500px)}.float-card{min-width:160px}.float-card--one{left:-2%}.float-card--two{right:-2%}.product-shell{grid-template-columns:270px minmax(0,1fr)}.overview-grid{grid-template-columns:minmax(0,1fr)}.cost-card{position:static}.catalog-layout{grid-template-columns:minmax(0,1fr)}.catalog-map{position:relative;top:auto;height:420px;min-height:0;order:-1}.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:820px){:root{--topbar:58px}.topbar{grid-template-columns:minmax(0,1fr) auto;padding:0 14px}.topbar .trip-meta,.topbar__meta-placeholder,.topbar__tools .button span{display:none}.brand{font-size:16px}.brand__mark{width:58px;height:39px}.hero{min-height:auto;padding:35px 24px 65px;grid-template-columns:minmax(0,1fr)}.hero__content{grid-column:1;grid-row:1;max-width:none}.hero h1{width:auto;font-size:clamp(40px,6.6vw,54px)}.hero__lede{width:auto;white-space:normal}.prompt,.prompt-chips{width:100%}.hero__visual-shell{grid-column:1;grid-row:2;width:min(100%,360px);margin-top:42px;justify-self:center;transform:none}.landing-strip{justify-content:flex-start;gap:28px;overflow-x:auto}.chat-shell{grid-template-columns:minmax(0,1fr)}.chat-panel{height:auto;min-height:calc(100vh - var(--topbar))}.discovery-panel{height:auto;min-height:720px}.trip-ready{grid-template-columns:minmax(0,1fr)}.trip-ready__image{min-height:260px}.chat-panel__head{position:-webkit-sticky;position:sticky;top:var(--topbar);z-index:3;background:var(--color-paper-2)}.messages{min-height:55vh}.product-shell{display:block}.trip-sidebar{display:none}.workspace__head{align-items:flex-start;padding:27px 20px 20px}.workspace__actions .button--ghost{display:none}.workspace-nav{padding:0 10px}.workspace__body{padding:20px 16px 55px}.map-card{grid-template-columns:minmax(0,1fr)}.map-card .mock-map{min-height:280px}.full-map{height:auto;min-height:0;grid-template-columns:minmax(0,1fr)}.full-map__side{box-shadow:none}.full-map .mock-map{min-height:540px}.auth-page{grid-template-columns:minmax(0,1fr)}.auth-art{display:none}.auth-card{margin-block:50px}.booking-page{grid-template-columns:minmax(0,1fr)}.booking-summary{position:static;order:-1}}@media (max-width:580px){.topbar__tools{gap:4px}.avatar-button,.tool-button{min-width:34px;height:34px;padding:0 7px}.topbar__tools .button{min-width:34px;width:34px;padding:0}.hero{padding-inline:17px}.hero h1{font-size:clamp(38px,12vw,54px)}.hero__lede{margin:18px 0 20px;font-size:15px}.prompt-chips{flex-wrap:wrap;margin-inline:0;padding-inline:0;overflow:visible}.float-card{min-width:145px;padding:9px}.float-card--one{top:7%}.landing-strip{font-size:11px}.chat-panel{padding:13px 12px 10px}.discovery-panel{min-height:630px;padding:28px 15px}.destination-collage{height:220px}.trip-ready__body{padding:25px}.workspace__head{display:block}.workspace__head h1{font-size:31px}.workspace__actions{margin-top:16px}.workspace__actions .button--ink{width:100%}.route-strip{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.route-strip>.route-line:nth-last-child(2),.route-strip>div:last-child{display:none}.route-line{min-width:28px}.journey-block{padding:18px 14px}.section-title,.weather{display:block}.weather{margin-top:9px}.summary-card{grid-template-columns:auto minmax(0,1fr) auto}.summary-card>strong{grid-column:2}.summary-card>a{grid-column:3;grid-row:1/3}.day-card{grid-template-columns:60px minmax(0,1fr) auto;padding-inline:2px}.catalog-head{display:block}.catalog-head .button,.catalog-head .filter-button,.day-filter{margin-top:15px}.day-filter{max-width:100%;overflow-x:auto}.hotel-card{grid-template-columns:minmax(0,1fr)}.hotel-card>img{min-height:190px;height:190px}.hotel-card__price{align-items:center}.transport-card{grid-template-columns:48px minmax(0,1fr);padding:14px}.transport-card__icon{width:48px;height:48px;font-size:22px}.transport-card__price{grid-column:2;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:9px;text-align:left}.transport-card__price .button{margin-top:0}.activity-grid{grid-template-columns:minmax(0,1fr)}.activity-card{display:grid;grid-template-columns:125px minmax(0,1fr)}.activity-card img{height:100%;min-height:150px}.activity-card__time{display:none}.version-card{grid-template-columns:44px minmax(0,1fr)}.version-card .button,.version-card .status{grid-column:2;justify-self:start}.full-map .mock-map{min-height:430px}.share-card,.success-card{padding:28px 20px}.copy-field{display:grid}.copy-field button{width:100%}.auth-card{width:calc(100% - 24px);padding:30px 20px}.booking-page{padding-inline:14px}.form-grid,.service-grid{grid-template-columns:minmax(0,1fr)}.booking-form fieldset{padding:18px 14px}.next-steps{grid-template-columns:minmax(0,1fr)}.next-steps div{display:flex;align-items:center;gap:10px}.next-steps span{margin:0;flex:0 0 auto}.modal-backdrop{padding:8px}.modal{max-height:calc(100vh - 16px);border-radius:22px}.modal-head{padding:22px 18px}.timeline{padding:8px 18px 20px}.timeline button{grid-template-columns:43px 34px minmax(0,1fr)}.timeline b{grid-column:3}.activity-detail>img{height:230px}.activity-detail__body{padding:21px 17px}.activity-detail h2{font-size:29px}.detail-price{align-items:flex-start;flex-direction:column}.detail-price .button{width:100%}}@media (max-width:360px){.brand span:last-child{display:none}.hero{padding-inline:14px}.workspace__head{padding-inline:15px}.workspace__body{padding-inline:10px}.summary-card img,.summary-card__icon{width:52px;height:52px}.catalog-map{height:330px}.activity-card{grid-template-columns:105px minmax(0,1fr)}}.chat-shell--checklist{grid-template-columns:minmax(360px,35%) minmax(0,65%)}.planner-chat{grid-template-rows:auto minmax(72px,1fr) auto auto auto;box-shadow:none;border-right:var(--rule-hair) solid var(--color-line)}.planner-chat--hotel-step{grid-template-rows:auto minmax(96px,.35fr) minmax(340px,1fr) auto auto}.planner-messages{padding-block:var(--space-md)}.planner-question{display:grid;grid-gap:var(--space-xs);gap:var(--space-xs);padding:var(--space-sm) var(--space-2xs);border-top:var(--rule-hair) solid var(--color-line)}.planner-question h1{min-width:0;overflow-wrap:anywhere;font:800 var(--text-lg) var(--font-body);letter-spacing:-.02em}.planner-question>p{max-width:65ch;color:var(--color-muted);font-size:var(--text-sm)}.planner-question__status{display:flex;align-items:center;gap:var(--space-2xs);font-size:var(--text-xs)}.planner-question__status .assistant-mark{width:var(--space-md);height:var(--space-md);font-size:var(--text-xs)}.planner-quick-replies{display:flex;flex-wrap:wrap;gap:var(--space-2xs)}.destination-chips button,.planner-quick-replies button{min-height:var(--size-touch);padding-inline:var(--space-xs);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-pill);background:var(--color-paper);color:var(--color-ink);font-size:var(--text-xs);font-weight:700;white-space:nowrap;transition:transform var(--dur-micro) var(--ease-out),background-color var(--dur-micro) var(--ease-out)}.destination-chips button.active,.destination-chips button:hover,.planner-quick-replies button:hover{background:var(--color-accent)}.destination-chips button:active,.planner-quick-replies button:active{transform:translateY(1px)}.inline-error{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:var(--space-2xs) var(--space-sm);gap:var(--space-2xs) var(--space-sm);min-width:0;margin-top:var(--space-xs);padding:var(--space-xs) var(--space-sm);border:var(--rule-hair) solid color-mix(in srgb,var(--color-danger) 24%,var(--color-line));border-radius:var(--radius-sm);background:var(--color-danger-soft);color:var(--color-danger);font-size:var(--text-xs);line-height:1.4;overflow-wrap:anywhere}.inline-error strong{grid-column:1/-1}.inline-error button{min-height:var(--size-touch);padding:0;border:0;background:transparent;font-size:inherit}.inline-error a,.inline-error button{justify-self:end;color:inherit;font-weight:800;text-decoration:underline;text-underline-offset:3px}.budget-options{display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs)}.budget-options__label,.budget-options__notice{color:var(--color-muted);font-size:var(--text-xs)}.budget-options__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-2xs);gap:var(--space-2xs)}.budget-option{display:grid;grid-gap:3px;gap:3px;min-width:0;min-height:var(--size-touch);padding:var(--space-xs);border:var(--rule-fine) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper-2);color:var(--color-ink);text-align:left;transition:transform var(--dur-micro) var(--ease-out),border-color var(--dur-micro) var(--ease-out),background-color var(--dur-micro) var(--ease-out)}.budget-option:hover{border-color:var(--color-focus);background:var(--color-paper);transform:translateY(-1px)}.budget-option:active{transform:translateY(1px)}.budget-option strong{font-size:var(--text-xs)}.budget-option span{font:800 var(--text-sm) var(--font-display)}.budget-option small{color:var(--color-muted);font-size:10px}.planner-composer{margin-top:var(--space-xs)}.planner-legal{padding-top:var(--space-2xs);color:var(--color-muted);font-size:var(--text-xs);text-align:center}.hotel-chat-card{display:grid;grid-gap:var(--space-xs);gap:var(--space-xs);margin-top:var(--space-xs);padding:var(--space-xs);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper-2)}.hotel-chat-card--selected{border-color:var(--color-focus)}.hotel-chat-card__main{display:grid;grid-template-columns:96px minmax(0,1fr);grid-gap:var(--space-xs);gap:var(--space-xs);align-items:center;min-width:0}.hotel-chat-card__main img{width:96px;height:74px;border-radius:var(--radius-sm);object-fit:cover}.hotel-chat-card__main small,.hotel-chat-card__main strong{display:block}.hotel-chat-card__main strong{overflow-wrap:anywhere;font:800 var(--text-sm) var(--font-display)}.hotel-chat-card__main small{margin-top:var(--space-3xs);color:var(--color-muted);font-size:var(--text-xs)}.hotel-chat-card__link{display:flex;align-items:center;justify-content:center;width:100%;min-height:var(--size-touch);padding-inline:var(--space-xs);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-pill);background:var(--color-paper-2);color:var(--color-ink);font-size:var(--text-xs);font-weight:800;line-height:1;text-align:center;white-space:nowrap;transition:transform var(--dur-micro) var(--ease-out),background-color var(--dur-short) var(--ease-out)}@media (hover:hover) and (pointer:fine){.hotel-chat-card__link:hover{background:var(--color-paper);transform:translateY(-1px)}}.hotel-chat-card__link:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.hotel-chat-card__link:active{transform:translateY(1px)}.checklist-workbench{place-items:stretch;padding:0;overflow:hidden;background:var(--color-planner)}.checklist-workbench__content{min-width:0;min-height:0;height:100%}.mobile-checklist-toggle{display:none}.trip-checklist{width:min(100%,720px);min-height:100%;margin:auto;display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-gap:var(--space-lg);gap:var(--space-lg);padding:clamp(var(--space-md),6vh,var(--space-2xl))}.trip-checklist__head{display:flex;align-items:center;gap:var(--space-sm);width:min(100%,520px);margin:auto}.trip-checklist__head svg{width:64px;height:64px;flex:0 0 auto;overflow:visible}.trip-checklist__head circle{fill:none;stroke:var(--color-paper-2);stroke-width:3}.trip-checklist__head circle.progress{stroke:var(--color-focus);stroke-linecap:round;stroke-dasharray:100;transform:rotate(-90deg);transform-origin:center}.trip-checklist__head text{fill:var(--color-ink);font:800 10px var(--font-body);text-anchor:middle;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.trip-checklist__head span{display:block;font-size:var(--text-xs);font-weight:800;letter-spacing:.08em}.trip-checklist__head h1{min-width:0;overflow-wrap:anywhere;font:900 clamp(1.5rem,3vw,2rem) var(--font-display);letter-spacing:-.035em}.trip-checklist__head p{color:var(--color-neutral);font-size:var(--text-sm)}.trip-checklist__items{position:relative;width:min(100%,520px);margin:auto;padding:0;list-style:none}.trip-checklist__content,.trip-checklist__items{display:grid;align-content:center;grid-gap:var(--space-sm);gap:var(--space-sm)}.trip-checklist__content{min-height:0}.trip-checklist__thinking{width:min(100%,520px);display:flex;align-items:center;gap:var(--space-2xs);margin:auto;padding:var(--space-2xs) var(--space-xs);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-paper-2) 68%,transparent);color:var(--color-ink);font-size:var(--text-xs);font-weight:700}.trip-checklist__thinking-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--color-focus);animation:pulse 1s infinite}.trip-checklist__items:before{content:"";position:absolute;top:var(--space-md);bottom:var(--space-md);left:17px;width:var(--rule-hair);background:var(--color-rule-2)}.trip-checklist__items li{position:relative;z-index:var(--z-base);display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;grid-gap:var(--space-xs);gap:var(--space-xs);min-width:0}.trip-checklist__marker{display:grid;place-items:center;width:36px;height:36px;border:var(--rule-hair) solid var(--color-rule-2);border-radius:50%;background:var(--color-planner);color:var(--color-neutral);font-weight:900}.trip-checklist__items li.active .trip-checklist__marker{border-color:var(--color-focus);background:var(--color-paper-2);color:var(--color-focus)}.trip-checklist__items li.done .trip-checklist__marker{border-color:var(--color-ink);background:var(--color-ink);color:var(--color-paper-2)}.trip-checklist__items strong{display:block;font-size:var(--text-xs);letter-spacing:.055em;text-transform:uppercase}.trip-checklist__items p{min-width:0;overflow-wrap:anywhere;color:var(--color-neutral);font-size:var(--text-sm)}.trip-checklist__items li.done p{color:var(--color-ink);font-weight:700}.trip-checklist__extras{width:min(100%,520px);margin:auto;padding:var(--space-sm);border:var(--rule-hair) solid var(--color-rule-2);border-radius:var(--radius-md);background:var(--color-paper-2)}.trip-checklist__extras>strong{font-size:var(--text-xs);letter-spacing:.055em;text-transform:uppercase}.trip-checklist__extras ul{margin:var(--space-2xs) 0 0;padding-left:var(--space-md);color:var(--color-neutral);font-size:var(--text-sm)}.trip-checklist__action{width:min(100%,520px);margin:auto;padding:var(--space-sm);border-radius:var(--radius-md);background:var(--color-paper-2);text-align:center}.trip-checklist__action .button{min-height:var(--size-touch)}.trip-checklist__action p{max-width:65ch;margin:var(--space-xs) auto 0;color:var(--color-muted);font-size:var(--text-xs)}.trip-checklist__action .text-button{margin-top:var(--space-2xs)}.generation-screen--flat{align-self:center;justify-self:center;box-shadow:none}.destination-shell.destination-shell--parity{grid-template-columns:minmax(360px,32%) minmax(280px,20%) minmax(0,48%);height:calc(100vh - var(--topbar));min-height:0}.destination-shell--parity .destination-chat{height:100%;border-right:var(--rule-hair) solid var(--color-line);box-shadow:none}.destination-messages{padding-block:var(--space-sm)}.destination-chips{display:flex;gap:var(--space-2xs);padding-block:var(--space-xs);overflow-x:auto}.destination-chips button{min-height:36px;padding-inline:var(--space-2xs)}.destination-shell--parity .destination-picker{min-height:0;grid-template-rows:auto minmax(0,1fr) auto;gap:var(--space-sm);padding:var(--space-sm) var(--space-2xs) var(--space-sm) var(--space-sm)}.destination-shell--parity .destination-picker__head{justify-content:space-between;padding-inline:var(--space-2xs)}.destination-shell--parity .destination-picker__head span{color:var(--color-muted);font-size:var(--text-xs)}.destination-shell--parity .destination-hero-card{min-height:0}.destination-card-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-2xs);gap:var(--space-2xs)}.destination-card-strip button{min-width:0;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;grid-gap:var(--space-2xs);gap:var(--space-2xs);min-height:var(--size-touch);padding:var(--space-3xs);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-paper);text-align:left}.destination-card-strip img{width:40px;height:40px;border-radius:calc(var(--radius-sm) - var(--space-3xs));object-fit:cover}.destination-card-strip span{min-width:0;overflow:hidden;color:var(--color-ink);font-size:var(--text-xs);font-weight:800;text-overflow:ellipsis;white-space:nowrap}.destination-map__title{position:absolute;top:var(--space-sm);left:50%;z-index:var(--z-raised);display:grid;justify-items:center;transform:translateX(-50%)}.destination-map__title span,.destination-map__title strong{padding:var(--space-3xs) var(--space-2xs);background:var(--color-paper-2)}.destination-map__title strong{border-radius:var(--radius-pill);font-size:var(--text-sm)}.destination-map__title span{color:var(--color-muted);font-size:var(--text-xs)}.destination-shell--parity .destination-map__label{top:auto;right:var(--space-sm);bottom:var(--space-sm);left:auto}.destination-shell--parity .destination-map .mock-map{height:100%}.mock-map--detailed{isolation:isolate;background-color:var(--color-map);background-image:repeating-linear-gradient(23deg,transparent 0,transparent 31px,var(--color-road) 32px,var(--color-road) 34px),repeating-linear-gradient(101deg,transparent 0,transparent 45px,var(--color-road) 46px,var(--color-road) 48px)}.mock-map__network{position:absolute;inset:0;z-index:var(--z-base);width:100%;height:100%;color:var(--color-road)}.map-route{fill:none;stroke:currentColor;stroke-width:.7;vector-effect:non-scaling-stroke}.map-route--major{stroke:var(--color-paper-2);stroke-width:2}.mock-map--detailed .water{z-index:0;opacity:.82}.mock-map--detailed .map-pin{position:absolute;top:var(--pin-y);left:var(--pin-x);z-index:var(--z-raised);width:36px;height:36px;display:grid;place-items:center;padding:0;overflow:visible;border:var(--rule-fine) solid var(--color-paper-2);border-radius:50%;background:var(--color-ink);color:var(--color-paper-2);font-size:var(--text-xs);font-weight:900;transform:translate(-50%,-50%);transition:transform var(--dur-micro) var(--ease-out)}.mock-map--detailed .map-pin.active,.mock-map--detailed .map-pin:hover{transform:translate(-50%,-50%) scale(1.08)}.mock-map--detailed .map-pin.active{background:var(--color-focus)}.mock-map--detailed .map-pin.has-image{width:44px;height:44px;background:var(--color-paper-2)}.mock-map--detailed .map-pin--hotel{width:44px;height:52px;border:0;border-radius:0;background-color:transparent;background-repeat:no-repeat;background-position:50%;background-size:contain;box-shadow:none}.mock-map--detailed .map-pin--hotel.active,.mock-map--detailed .map-pin--hotel:hover{background-color:transparent;transform:translate(-50%,-50%) scale(1.08)}.map-pin__image{width:100%;height:100%;border:var(--rule-hair) solid var(--color-paper-2);border-radius:50%;object-fit:cover}.map-pin__number{line-height:1}.map-pin__badge{position:absolute;top:-6px;right:-6px;min-width:1.2rem;height:1.2rem;display:grid;place-items:center;padding-inline:var(--space-3xs);border:var(--rule-fine) solid var(--color-paper-2);border-radius:var(--radius-pill);background:var(--color-focus);color:var(--color-paper-2);font-size:10px;line-height:1}.map-place-label{position:absolute;top:calc(var(--pin-y) + var(--space-md));left:var(--pin-x);z-index:var(--z-raised);max-width:160px;padding:var(--space-3xs) var(--space-2xs);border-radius:var(--radius-pill);background:var(--color-paper-2);color:var(--color-ink);font-size:var(--text-xs);font-weight:800;text-align:center;transform:translateX(-50%)}.map-place-label:not(.active){opacity:.72}.mock-map__attribution{position:absolute;right:var(--space-2xs);bottom:var(--space-2xs);z-index:var(--z-raised);padding:var(--space-3xs) var(--space-2xs);border-radius:var(--radius-pill);background:var(--color-paper-2);color:var(--color-muted);font-size:var(--text-xs)}.mock-map__google{position:absolute;inset:0;z-index:var(--z-base)}.mock-map__google[aria-hidden=true]{visibility:hidden;pointer-events:none}.mock-map__loading{position:absolute;top:50%;left:50%;z-index:var(--z-raised);padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-pill);background:var(--color-paper-2);color:var(--color-ink);font-size:var(--text-xs);font-weight:800;transform:translate(-50%,-50%);box-shadow:var(--shadow-sm)}.mock-map__pin-card{position:absolute;right:var(--space-sm);bottom:var(--space-sm);z-index:var(--z-overlay);width:min(18rem,calc(100% - var(--space-lg)));overflow:hidden;border:var(--rule-hair) solid var(--color-paper-2);border-radius:var(--radius-lg);background:var(--color-ink);color:var(--color-paper-2);box-shadow:var(--shadow-lg)}.mock-map__pin-card-media{position:relative;aspect-ratio:3/4;min-height:12rem;background:var(--color-paper-3)}.mock-map__pin-card-media>img{width:100%;height:100%;object-fit:cover}.mock-map__pin-card-empty{height:100%;display:grid;place-items:center;padding:var(--space-md);color:var(--color-muted);font-size:var(--text-sm);text-align:center}.mock-map__pin-card-toolbar{position:absolute;top:var(--space-xs);right:var(--space-xs);left:var(--space-xs);z-index:var(--z-raised);display:flex;align-items:center;justify-content:space-between;gap:var(--space-xs);pointer-events:none}.mock-map__pin-card-toolbar>*{pointer-events:auto}.mock-map__pin-card-counter{padding:var(--space-3xs) var(--space-2xs);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-ink) 80%,transparent);font-size:var(--text-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mock-map__pin-card-nav,.mock-map__pin-card-toolbar button{display:grid;place-items:center;border:0;border-radius:50%;background:color-mix(in srgb,var(--color-ink) 80%,transparent);color:var(--color-paper-2)}.mock-map__pin-card-toolbar button{width:var(--size-touch);height:var(--size-touch);font-size:var(--text-lg);line-height:1}.mock-map__pin-card-close{border:var(--rule-fine) solid var(--color-paper-2)!important;background:var(--color-paper-2)!important;color:var(--color-ink)!important;box-shadow:var(--shadow-sm);font-weight:900}.mock-map__pin-card-nav{position:absolute;top:50%;width:var(--size-touch);height:var(--size-touch);transform:translateY(-50%);font-size:var(--text-lg)}.mock-map__pin-card-nav--prev{left:var(--space-xs)}.mock-map__pin-card-nav--next{right:var(--space-xs)}.mock-map__pin-card-copy{display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs);padding:var(--space-sm)}.mock-map__pin-card-copy strong{overflow-wrap:anywhere;font:800 var(--text-md) var(--font-display)}.mock-map__pin-card-copy p,.mock-map__pin-card-copy small{color:var(--color-paper-3);font-size:var(--text-xs)}.mock-map__pin-card-copy p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.mock-map--detailed .map-pin:focus-visible,.mock-map__pin-card-nav:focus-visible,.mock-map__pin-card-toolbar button:focus-visible{outline:var(--rule-fine) solid var(--color-focus);outline-offset:2px}@media (max-width:580px){.mock-map__pin-card{right:var(--space-2xs);bottom:var(--space-2xs);left:var(--space-2xs);width:auto;border-radius:var(--radius-md)}.mock-map__pin-card-media{aspect-ratio:16/9;min-height:0}}.destination-discovery{width:100%;height:100%;min-height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-gap:var(--space-sm);gap:var(--space-sm);padding:clamp(var(--space-sm),4vh,var(--space-xl));background:var(--color-paper-2)}.destination-discovery__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-sm)}.destination-discovery__head h1{max-width:24ch;font-size:clamp(1.15rem,2vw,1.6rem)}.destination-discovery__count{flex:0 0 auto;padding:var(--space-3xs) var(--space-2xs);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-pill);color:var(--color-muted);font-size:10px;white-space:nowrap}.destination-discovery__body{min-height:0;display:grid;grid-template-columns:minmax(210px,.88fr) minmax(0,1.12fr);grid-gap:var(--space-sm);gap:var(--space-sm)}.destination-discovery__media-column{min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.destination-media-card{position:relative;min-width:0;min-height:0;overflow:hidden;border-radius:var(--radius-md);background:var(--color-ink);box-shadow:var(--shadow-sm)}.destination-media-card--hero{min-height:0}.destination-media-card__asset{width:100%;height:100%;min-height:inherit;object-fit:cover}.destination-media-card__overlay{position:absolute;right:0;bottom:0;left:0;z-index:var(--z-raised);display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs);padding:clamp(var(--space-sm),3vw,var(--space-lg));background:linear-gradient(transparent,var(--color-ink));color:var(--color-paper-2)}.destination-media-card__overlay small,.destination-media-card__overlay span{font-size:var(--text-xs);letter-spacing:.08em}.destination-media-card__overlay strong{font:800 var(--text-lg) var(--font-display);letter-spacing:-.025em}.destination-media-card__overlay small{opacity:.84;letter-spacing:0}.destination-media-card__overlay button{justify-self:start;min-height:var(--size-touch);padding-inline:var(--space-sm);border:0;border-radius:var(--radius-pill);background:var(--color-paper-2);color:var(--color-ink);font-size:var(--text-xs);font-weight:800}.destination-media-card__empty{display:grid;min-height:220px;place-items:center;padding:var(--space-md);color:var(--color-paper-3);text-align:center}.destination-media-card__empty button{min-height:var(--size-touch);padding:0 var(--space-sm);border:0;border-radius:var(--radius-pill);font-weight:800}.destination-media-feed{min-height:0;height:100%;flex:1 1 auto;display:grid;grid-auto-rows:max-content;align-content:start;grid-gap:var(--space-sm);gap:var(--space-sm);overflow-y:auto;overscroll-behavior:contain;padding-right:var(--space-3xs);scroll-snap-type:y proximity}.destination-place-media-card{min-width:0;min-height:clamp(18rem,52vh,32rem);overflow:hidden;border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper);box-shadow:var(--shadow-sm);scroll-snap-align:start}.destination-place-media-card.is-selected{border-color:var(--color-focus);box-shadow:0 0 0 2px var(--color-accent-soft),var(--shadow-sm)}.destination-place-media-card.is-included{border-color:#16834a;box-shadow:0 0 0 2px rgba(22,131,74,.2),var(--shadow-sm)}.destination-place-media-card.is-included .destination-media-card__overlay button{background:#16834a;color:#fff}.destination-place-media-card__gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-2xs);gap:var(--space-2xs);padding:var(--space-2xs)}.destination-place-media-card__media{position:relative;min-width:0;height:clamp(6rem,15vh,10rem);overflow:hidden;border-radius:var(--radius-sm);background:var(--color-ink)}.destination-place-media-card__media--hero{grid-column:1/-1;height:clamp(13rem,31vh,22rem);min-height:clamp(16rem,44vh,28rem)}.destination-place-media-card__media .destination-media-card__asset{display:block}.destination-media-feed__type{position:absolute;top:var(--space-xs);right:var(--space-xs);z-index:var(--z-raised);padding:var(--space-3xs) var(--space-2xs);border-radius:var(--radius-pill);background:var(--color-paper-2);color:var(--color-ink);font-size:10px;font-weight:800}.destination-discovery__map-column{position:relative;min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper)}.destination-discovery__map-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-xs);padding:var(--space-sm)}.destination-discovery__map-head>div{min-width:0;display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs)}.destination-discovery__map-head .eyebrow{margin:0}.destination-discovery__map-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.destination-discovery__map-head small{color:var(--color-muted);font-size:var(--text-xs)}.destination-discovery__map-head a{flex:0 0 auto;color:var(--color-focus);font-size:var(--text-xs);font-weight:800;text-decoration:underline}.destination-map-surface{min-height:0;height:100%;overflow:hidden}.destination-map-surface .mock-map{min-height:0;height:100%}.destination-discovery__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-sm);border-radius:var(--radius-md);background:var(--color-accent-soft)}.destination-discovery__footer>div{min-width:0;display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs)}.destination-discovery__footer span{color:var(--color-muted);font-size:var(--text-xs);font-weight:800;letter-spacing:.08em}.destination-discovery__footer strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.destination-discovery__footer p{color:var(--color-muted);font-size:var(--text-xs)}.destination-discovery__footer .button{flex:0 0 auto}.destination-discovery__notice{color:var(--color-danger);font-size:var(--text-xs)}.destination-discovery--empty{align-content:center;justify-items:center;min-height:100%;text-align:center}.destination-discovery--empty h1{max-width:18ch;font-size:clamp(1.7rem,4vw,2.7rem)}.destination-discovery--empty>p:not(.eyebrow){max-width:45ch;color:var(--color-muted)}.destination-discovery--empty .assistant-mark{width:52px;height:52px;margin-bottom:var(--space-xs)}.planner-selected-places{margin:0 var(--space-sm) var(--space-sm);padding:var(--space-sm);border:1px solid rgba(22,131,74,.35);border-radius:var(--radius-md);background:rgba(22,131,74,.07)}.planner-selected-places>div{display:flex;gap:var(--space-xs);align-items:flex-start}.planner-selected-places p{margin-top:var(--space-3xs);color:var(--color-muted);font-size:var(--text-sm)}.planner-selected-places ul{display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs);margin:var(--space-xs) 0 0 calc(32px + var(--space-xs));padding:0;list-style:none}.planner-selected-places li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-xs)}.planner-selected-places li button{border:0;background:transparent;color:#126b3d;font-size:var(--text-xs);font-weight:800}@media (min-width:1025px){.destination-discovery{grid-template-columns:minmax(220px,.58fr) minmax(0,1.42fr);grid-template-rows:auto minmax(0,1fr) auto}.destination-discovery__head{grid-column:1;grid-row:1}.destination-discovery__head .eyebrow,.destination-discovery__head p{display:none}.destination-discovery__head h1{max-width:24ch;font-size:clamp(1.15rem,2vw,1.6rem)}.destination-discovery__count{padding:var(--space-3xs) var(--space-2xs);font-size:10px}.destination-discovery__body{display:contents}.destination-discovery__media-column{grid-column:1;grid-row:2}.destination-discovery__map-column{grid-column:2;grid-row:1/4;height:100%}.destination-discovery__footer{grid-column:1;grid-row:3}.destination-discovery__notice{grid-column:1/-1}}.hotel-selection{width:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-gap:var(--space-xs);gap:var(--space-xs);padding:var(--space-xs) 0 0;background:transparent}.hotel-selection__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-xs)}.hotel-selection__head h1{max-width:22ch;font-size:clamp(1.15rem,2.6vw,1.55rem)}.hotel-selection__head p{max-width:58ch;margin-top:var(--space-3xs);color:var(--color-muted);font-size:var(--text-xs)}.hotel-selection__list{min-height:0;max-height:300px;display:grid;grid-template-columns:minmax(0,1fr);align-content:start;grid-gap:var(--space-2xs);gap:var(--space-2xs);overflow:auto;padding-right:var(--space-3xs)}.hotel-selection__card{display:grid;grid-template-columns:92px minmax(0,1fr);min-width:0;min-height:112px;overflow:hidden;border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper)}.hotel-selection__card.selected{border:var(--rule-fine) solid var(--color-focus);box-shadow:0 0 0 2px var(--color-accent-soft)}.hotel-selection__card>img{width:100%;height:112px;min-height:112px;object-fit:cover}.hotel-selection__card-body{min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-xs);padding:var(--space-xs)}.hotel-selection__card-body .eyebrow{color:var(--color-focus)}.hotel-selection__card-body h2{margin-top:2px;font:800 var(--text-sm) var(--font-display)}.hotel-selection__card-body h2,.hotel-selection__card-body p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.hotel-selection__card-body p{margin-top:3px;color:var(--color-muted);font-size:var(--text-xs)}.hotel-selection__card-body footer{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-2xs)}.hotel-selection__card-body .button,.hotel-selection__card-body footer strong{font-size:var(--text-xs);white-space:nowrap}.hotel-selection__card-body .button{min-height:32px;padding-inline:var(--space-xs)}.hotel-selection__error{display:flex;align-items:center;justify-content:space-between;gap:var(--space-xs);padding:var(--space-xs);border-radius:var(--radius-sm);background:var(--color-danger-soft);color:var(--color-danger);font-size:var(--text-xs)}.hotel-selection__error button{color:inherit;font-weight:800;text-decoration:underline}.hotel-selection__empty{display:grid;align-content:center;justify-items:center;grid-gap:var(--space-xs);gap:var(--space-xs);min-height:200px;text-align:center}.hotel-selection__empty h2{font:800 var(--text-lg) var(--font-display)}.hotel-selection__empty p{color:var(--color-muted);font-size:var(--text-sm)}.hotel-selection__footer{display:flex;align-items:center;justify-content:stretch;gap:var(--space-sm);padding:var(--space-xs);border-radius:var(--radius-md);background:var(--color-accent-soft)}.hotel-selection__footer .button{width:100%;min-height:var(--size-touch)}.hotel-selection--loading{align-content:center;justify-items:center;min-height:180px;padding:var(--space-sm);border-radius:var(--radius-md);background:var(--color-paper-2);text-align:center}.hotel-selection--loading .generation-orbit{width:52px;height:52px;margin-bottom:var(--space-xs);font-size:24px}.hotel-selection--loading h1{font-size:clamp(1.25rem,4vw,1.8rem)}.hotel-selection--loading>p:not(.eyebrow){color:var(--color-muted)}.hotel-step-aside{width:min(100%,520px);min-height:100%;margin:auto;display:grid;align-content:center;grid-gap:var(--space-md);gap:var(--space-md);padding:clamp(var(--space-md),6vh,var(--space-2xl))}.hotel-step-aside__head{display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs)}.hotel-step-aside__head h1{max-width:16ch;font:900 clamp(1.7rem,3vw,2.5rem) var(--font-display);letter-spacing:-.035em}.hotel-step-aside__head p,.hotel-step-aside__hint{color:var(--color-neutral);font-size:var(--text-sm)}.hotel-step-aside__status{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;grid-gap:var(--space-xs);gap:var(--space-xs);padding:var(--space-sm);border-radius:var(--radius-md);background:var(--color-paper-2)}.hotel-step-aside__status>span{display:grid;place-items:center;width:36px;height:36px;border:var(--rule-hair) solid var(--color-rule-2);border-radius:50%;color:var(--color-neutral);font-weight:900}.hotel-step-aside__status>span.done{border-color:var(--color-ink);background:var(--color-ink);color:var(--color-paper-2)}.hotel-step-aside__status strong{display:block;font-size:var(--text-xs);letter-spacing:.08em}.hotel-step-aside__status p{margin-top:var(--space-3xs);overflow-wrap:anywhere;color:var(--color-muted);font-size:var(--text-sm)}@media (max-width:900px){.chat-shell--checklist{grid-template-columns:minmax(320px,45%) minmax(0,55%)}.destination-discovery,.trip-checklist{padding:var(--space-md)}.destination-discovery__body{grid-template-columns:minmax(190px,.86fr) minmax(0,1.14fr);gap:var(--space-xs)}.destination-shell.destination-shell--parity{height:auto;min-height:calc(100vh - var(--topbar));grid-template-columns:minmax(330px,45%) minmax(0,55%)}.destination-shell--parity .destination-chat{grid-row:1/3;min-height:calc(100vh - var(--topbar))}.destination-shell--parity .destination-picker{grid-row:1;grid-column:2}.destination-shell--parity .destination-map{grid-row:2;grid-column:2;min-height:420px}.hotel-step-aside{padding:var(--space-md)}}@media (max-width:680px){.chat-shell--checklist{display:block}.planner-chat{height:auto;min-height:calc(100vh - var(--topbar));border-right:0}.planner-messages{min-height:180px;max-height:38vh}.checklist-workbench{height:auto;overflow:visible}.checklist-workbench,.destination-discovery,.trip-checklist{min-height:calc(100vh - var(--topbar))}.destination-discovery__body{grid-template-columns:minmax(0,1fr)}.destination-discovery__media-column{min-height:380px;overflow:visible}.destination-media-feed{height:auto;overflow:visible;padding-right:0}.destination-discovery__map-column{min-height:390px}.destination-shell--parity{display:block}.destination-shell--parity .destination-chat{min-height:calc(100vh - var(--topbar))}.destination-shell--parity .destination-picker{padding:var(--space-sm)}.destination-shell--parity .destination-hero-card{min-height:430px}.destination-card-strip{grid-template-columns:minmax(0,1fr)}.destination-shell--parity .destination-map,.destination-shell--parity .destination-map .mock-map{min-height:430px;height:430px}.hotel-selection{padding:var(--space-sm) 0 0}.hotel-selection__head{display:block}.hotel-selection__list{max-height:320px}.hotel-selection__footer{align-items:stretch;flex-direction:column-reverse}.hotel-selection__footer .button{width:100%}.hotel-step-aside{min-height:340px;padding:var(--space-lg) var(--space-sm)}.inline-error{grid-template-columns:minmax(0,1fr)}.inline-error a,.inline-error button{justify-self:start}}@media (max-width:414px){.planner-chat{padding-inline:var(--space-xs)}.planner-question{padding-inline:0}.planner-quick-replies{display:grid;grid-template-columns:minmax(0,1fr)}.planner-quick-replies button{width:100%}.budget-options__list{grid-template-columns:minmax(0,1fr)}.trip-checklist{padding:var(--space-sm) var(--space-xs)}.trip-checklist__head{align-items:flex-start}.trip-checklist__head svg{width:52px;height:52px}.trip-checklist__action{padding:var(--space-xs)}.map-place-label{max-width:120px}.destination-discovery{padding:var(--space-sm) var(--space-xs)}.destination-discovery__head{display:block}.destination-discovery__count{display:inline-block;margin-top:var(--space-xs)}.destination-discovery__footer{align-items:stretch;flex-direction:column}.destination-discovery__footer .button{width:100%}.destination-discovery__media-column{min-height:300px}.destination-discovery__map-column{min-height:330px}}@media (max-width:1024px){.chat-shell--checklist{min-height:calc(100dvh - var(--topbar));display:flex;flex-direction:column}.chat-shell--checklist>.checklist-workbench{order:-1}.chat-shell--checklist>.planner-chat{order:1}.planner-chat{height:calc(100dvh - var(--topbar));min-height:calc(100dvh - var(--topbar));grid-template-rows:minmax(0,1fr) auto auto auto;padding:var(--space-md) var(--space-sm) var(--space-xs);border-right:0}.planner-chat .chat-panel__head{display:none}.planner-messages{min-height:0;max-height:none;overflow-y:auto}.planner-composer{position:static;margin-top:var(--space-xs);box-shadow:var(--shadow-sm)}.planner-legal{padding-bottom:var(--space-2xs)}.checklist-workbench{height:auto;min-height:0;overflow:visible;padding:var(--space-xs);background:var(--color-paper-2)}.checklist-workbench__content{display:none;height:auto}.checklist-workbench--mobile-open .checklist-workbench__content{display:block}.mobile-checklist-toggle{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:var(--space-sm);gap:var(--space-sm);width:100%;min-height:58px;padding:var(--space-xs) var(--space-sm);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper-2);color:var(--color-ink);box-shadow:var(--shadow-sm);font:inherit;text-align:left}.mobile-checklist-toggle__summary{min-width:0;display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs)}.mobile-checklist-toggle__summary>span{color:var(--color-muted);font-size:9px;font-weight:900;letter-spacing:.08em}.mobile-checklist-toggle__summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm)}.mobile-checklist-toggle__action{display:flex;align-items:center;gap:var(--space-2xs);color:var(--color-muted);font-size:var(--text-xs);font-weight:800;white-space:nowrap}.mobile-checklist-toggle__action b{display:grid;place-items:center;width:24px;height:24px;border:var(--rule-hair) solid var(--color-line);border-radius:50%;color:var(--color-ink);font-size:var(--text-sm)}.mobile-checklist-toggle:focus-visible{outline:var(--rule-fine) solid var(--color-focus);outline-offset:2px}.destination-discovery{min-height:0;padding:var(--space-md)}.destination-discovery__body{grid-template-columns:minmax(0,1fr)}.destination-discovery__media-column{min-height:0;overflow:visible}.destination-media-feed{height:min(62dvh,32rem);overflow-y:auto}.destination-discovery__map-column{min-height:clamp(360px,60dvh,540px)}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.button,.toast,.topbar,.trip-sidebar,.workspace-nav,.workspace__actions{display:none!important}.overview-grid,.product-shell{display:block}.workspace__body{padding:0}.cost-card{box-shadow:none}}.checklist-card{width:min(100%,460px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:9px;gap:9px;padding:28px;border-radius:var(--radius-lg);background:var(--color-paper-2);box-shadow:var(--shadow-lg)}.checklist-card>div{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.checklist-card .eyebrow{margin:0}.checklist-card>span{padding:11px;border-radius:12px;background:var(--color-paper);color:var(--color-muted);font-size:10px;font-weight:700}.checklist-card>span.done{background:var(--color-success-soft);color:var(--color-success)}.checklist-card .button{grid-column:1/-1;margin-top:8px}.destination-shell{min-height:100vh;display:grid;grid-template-columns:minmax(390px,32%) minmax(300px,20%) minmax(0,48%);background:var(--color-paper)}.destination-chat{height:100vh;box-shadow:5px 0 25px var(--color-shadow)}.destination-chat .messages{min-height:0}.destination-inline-card{display:grid;grid-template-columns:90px minmax(0,1fr);overflow:hidden;margin:8px 0 14px;border-radius:18px;background:var(--color-paper)}.destination-inline-card img{width:90px;height:100%;object-fit:cover}.destination-inline-card>div{display:grid;align-content:center;grid-gap:4px;gap:4px;padding:10px}.destination-inline-card small{color:var(--color-muted);font-size:8px}.destination-inline-card strong{font-size:11px}.destination-inline-card button{min-height:31px;border:0;border-radius:999px;background:var(--color-accent);font-size:9px;font-weight:800}.destination-picker{min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr);grid-gap:18px;gap:18px;padding:20px 8px 20px 18px;background:var(--color-paper-2)}.destination-picker__head{display:flex;justify-content:center;align-items:center}.destination-picker__head h1{font:800 15px var(--font-body);letter-spacing:0}.destination-hero-card{position:relative;overflow:hidden;min-height:520px;border-radius:22px}.destination-hero-card>img{width:100%;height:100%;object-fit:cover}.destination-hero-card:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,var(--color-ink))}.destination-hero-card>div{position:absolute;z-index:2;right:15px;bottom:15px;left:15px;color:var(--color-paper-2)}.destination-hero-card h2{margin:4px 0;font-size:22px}.destination-hero-card small,.destination-hero-card span{font-size:9px}.destination-hero-card .button{margin-top:11px;background:var(--color-paper-2);color:var(--color-ink)}.destination-map{position:relative;min-width:0}.destination-map .mock-map{height:100vh}.destination-map__label{position:absolute;top:42%;left:52%;z-index:5;display:flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:var(--color-paper-2);box-shadow:var(--shadow-sm);font-size:10px}.destination-map__label span{width:10px;height:10px;border-radius:50%;background:var(--color-ink)}.search-page{min-height:100vh;padding-bottom:60px;background:var(--color-paper)}.search-nav{height:50px;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px;padding:0 12px;border-bottom:1px solid var(--color-line);background:var(--color-paper-2)}.search-nav>a{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--color-paper)}.search-nav strong{font-size:12px}.demo-badge{padding:5px 8px;border-radius:999px;background:var(--color-accent-soft);color:var(--color-focus);font-size:8px;font-weight:900;letter-spacing:.08em}.search-query{width:min(100% - 32px,1160px);margin:16px auto;padding:18px 26px 14px;border:1px solid var(--color-line);border-radius:26px;background:var(--color-paper-2);box-shadow:0 10px 30px var(--color-shadow)}.search-query>label{display:block;margin-bottom:7px;font-size:9px;font-weight:800}.search-query>div:first-of-type{display:flex;gap:8px}.search-query input{width:100%;height:42px;padding:0 4px;border:0;background:transparent;font-weight:700}.search-query>div:first-of-type button{width:42px;height:42px;border:0;border-radius:50%;background:var(--color-ink);color:var(--color-paper-2)}.search-chips{display:flex;flex-wrap:wrap;gap:6px}.search-chips button{min-height:31px;padding:0 10px;border:0;border-radius:999px;background:var(--color-paper);font-size:9px;white-space:nowrap}.result-toolbar{width:min(100% - 32px,1160px);margin:0 auto 12px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--color-muted);font-size:9px}.result-toolbar>div{display:flex;gap:5px}.result-toolbar button,.result-toolbar select{min-height:34px;padding:0 10px;border:1px solid var(--color-line);border-radius:999px;background:var(--color-paper-2);font-size:9px;white-space:nowrap}.hotel-search-layout{width:min(100% - 32px,1160px);margin:auto;display:grid;grid-template-columns:275px minmax(0,1fr);grid-gap:14px;gap:14px;align-items:start}.hotel-filter-rail{position:-webkit-sticky;position:sticky;top:12px;overflow:hidden;border-radius:20px;background:var(--color-paper-2)}.hotel-filter-rail .mock-map{min-height:155px}.filter-group{padding:15px 18px;border-top:1px solid var(--color-line)}.filter-group small,.filter-group strong{display:block}.filter-group small{color:var(--color-muted);font-size:8px}.filter-group strong{font-size:11px}.active-filters{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.active-filters button,.active-filters span{padding:5px 7px;border:0;border-radius:999px;background:var(--color-accent-soft);font-size:8px}.filter-reset{border:0;background:transparent;color:var(--color-focus);font-size:9px;font-weight:800}.hotel-search-results{min-width:0;display:grid;grid-gap:13px;gap:13px}.hotel-result{min-width:0;display:grid;grid-template-columns:190px minmax(0,1fr);overflow:hidden;border:2px solid transparent;border-radius:22px;background:var(--color-paper-2)}.hotel-result.selected{border-color:var(--color-accent-2)}.hotel-result__image{position:relative;min-height:290px}.hotel-result__image img{width:100%;height:100%;object-fit:cover}.hotel-result__image>div{position:absolute;right:9px;bottom:9px;display:flex;gap:4px}.hotel-result__image button{width:29px;height:29px;border:0;border-radius:50%;background:var(--color-ink);color:var(--color-paper-2)}.hotel-result__content{min-width:0;padding:18px}.hotel-result__title{display:flex;justify-content:space-between;gap:15px}.hotel-result__title h2{font:800 17px var(--font-body);letter-spacing:-.02em}.hotel-result__title span{display:block;color:var(--color-muted);font-size:9px}.hotel-result__title button{padding:0;border:0;background:transparent;color:var(--focus);font-size:9px;text-decoration:underline}.hotel-result__title>strong{min-width:75px;font-size:19px;text-align:right}.hotel-result__title>strong small{display:block;color:var(--color-muted);font-size:8px;font-weight:500}.why-fit{min-height:60px;padding:10px;border-radius:13px;background:var(--color-paper)}.why-fit p,.why-fit strong{font-size:9px}.why-fit p{color:var(--color-muted)}.hotel-result__footer{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-top:13px}.hotel-result__footer>div>span,.hotel-result__footer>div>strong{display:block}.hotel-result__footer>div:first-child strong{font-size:10px}.hotel-result__footer>div:first-child span{color:var(--color-success);font-size:8px}.hotel-result__footer>div:last-child{text-align:right}.hotel-result__footer>div:last-child>strong{font-size:18px}.hotel-result__footer small,.hotel-result__footer span{color:var(--color-muted);font-size:8px}.hotel-result__footer .button{min-height:36px;margin-top:6px;font-size:9px}.large-hotel-map{overflow:hidden;border-radius:22px;background:var(--color-paper-2)}.large-hotel-map .mock-map{min-height:650px}.large-hotel-map p{padding:13px;font-size:10px;font-weight:800}.empty-state{min-height:340px;display:grid;place-content:center;justify-items:center;grid-gap:9px;gap:9px;padding:30px;border-radius:22px;background:var(--color-paper-2);text-align:center}.empty-state>span{font-size:38px}.empty-state p{color:var(--color-muted)}.flight-form{width:min(100% - 32px,1160px);margin:18px auto;display:grid;grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr) repeat(3,minmax(120px,.7fr)) auto;grid-gap:7px;gap:7px;padding:12px;border-radius:18px;background:var(--color-paper-2);box-shadow:var(--shadow-sm)}.flight-form label,.flight-form>div{min-width:0;padding:6px 9px;border:1px solid var(--color-line);border-radius:12px}.flight-form small{display:block;color:var(--color-muted);font-size:8px}.flight-form input,.flight-form select{width:100%;height:26px;padding:0;border:0;background:transparent;font-size:10px;font-weight:800}.flight-form>button[type=button]{align-self:center;width:36px;height:36px;border:0;border-radius:50%;background:var(--color-accent-soft)}.flight-form>.button{align-self:stretch;min-height:54px;font-size:10px}.flight-intro,.flight-loading{min-height:560px;display:grid;place-content:center;justify-items:center;grid-gap:12px;gap:12px;padding:20px;text-align:center}.flight-intro>span{font-size:65px}.flight-intro h1{font-size:45px}.flight-intro p,.flight-loading p{color:var(--color-muted)}.flight-loading i{width:46px;height:46px;border:3px solid var(--color-accent);border-top-color:var(--color-ink);border-radius:50%;animation:pulse 1s infinite}.flight-results{width:min(100% - 32px,1000px);margin:35px auto}.flight-results__head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:17px}.flight-results__head h1{font-size:38px}.flight-sort{display:flex;gap:5px}.flight-sort button{min-height:34px;padding:0 11px;border:1px solid var(--color-line);border-radius:999px;background:var(--color-paper-2);font-size:9px}.flight-sort button.active{background:var(--color-ink);color:var(--color-paper-2)}.flight-result{display:grid;grid-template-columns:50px 145px minmax(0,1fr) 200px;align-items:center;grid-gap:13px;gap:13px;margin-bottom:10px;padding:17px;border-radius:18px;background:var(--color-paper-2)}.flight-result.expired{background:var(--color-paper-3)}.airline-logo{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--color-paper);font-size:22px}.flight-result>div:nth-child(2) span,.flight-result>div:nth-child(2) strong{display:block}.flight-result>div:nth-child(2) strong{font-size:10px}.flight-result>div:nth-child(2) span{color:var(--color-muted);font-size:8px}.flight-times{display:grid;grid-template-columns:auto auto minmax(70px,1fr) auto auto;align-items:center;grid-gap:8px;gap:8px}.flight-times strong{font-size:16px}.flight-times span{color:var(--color-muted);font-size:9px}.flight-times i{color:var(--color-muted);font-size:8px;font-style:normal;text-align:center}.flight-times i:after{content:"";display:block;height:1px;margin-top:4px;background:var(--color-line)}.flight-fare{text-align:right}.flight-fare small,.flight-fare strong{display:block}.flight-fare small{color:var(--color-muted);font-size:8px}.flight-fare strong{font-size:17px}.flight-fare .button{min-height:34px;margin-top:6px;font-size:8px}.flight-review>h2{margin:8px 0 17px}.flight-review .flight-result{box-shadow:0 1px 0 var(--color-line)}.flight-review__total{display:flex;justify-content:flex-end;align-items:center;gap:25px;padding:17px;border-radius:18px;background:var(--color-ink);color:var(--color-paper-2)}.flight-review__total small,.flight-review__total strong{display:block}.flight-review__total small{color:var(--color-accent);font-size:8px}.flight-review__total strong{font-size:24px}.trip-metrics{justify-content:center;gap:25px;min-height:52px}.trip-metrics>span{display:flex;align-items:center;gap:5px;color:var(--color-muted);font-size:9px;white-space:nowrap}.trip-metrics strong{color:var(--color-ink)}.trip-version-mini{margin-top:15px;padding:13px;border:2px solid var(--color-accent-2);border-radius:14px}.trip-version-mini small,.trip-version-mini span,.trip-version-mini strong{display:block}.trip-version-mini small,.trip-version-mini span{color:var(--color-muted);font-size:8px}.trip-version-mini strong{font-size:10px}.add-service-card,.flight-ticket{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(0,1.5fr) auto;align-items:center;grid-gap:16px;gap:16px;margin-bottom:11px;padding:16px;border:1px solid var(--color-line);border-radius:18px}.flight-ticket>div:first-child small,.flight-ticket>div:first-child span,.flight-ticket>div:first-child strong{display:block}.flight-ticket small,.flight-ticket span{color:var(--color-muted);font-size:8px}.flight-ticket>div:last-child{text-align:right}.flight-ticket>div:last-child strong{display:block;font-size:12px}.card-link,.flight-ticket button{padding:2px 5px;border:0;background:transparent;color:var(--focus);font-size:8px;text-decoration:underline}.add-service-card{grid-template-columns:50px minmax(0,1fr) auto;background:var(--color-paper)}.add-service-card>span{font-size:25px}.add-service-card p{color:var(--color-muted);font-size:9px}.circle-action{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:var(--color-paper)}.mobile-product-nav{display:none}.cart-page{width:min(100% - 32px,1050px);margin:auto;padding:45px 0 80px;display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:35px;gap:35px;align-items:start}.cart-page h1{margin:12px 0 8px;font-size:46px}.cart-page section>p{margin-bottom:25px;color:var(--color-muted)}.cart-list{display:grid;grid-gap:9px;gap:9px}.cart-item{display:grid;grid-template-columns:22px 42px minmax(0,1fr) auto;align-items:center;grid-gap:11px;gap:11px;padding:16px;border:1px solid var(--color-line);border-radius:17px;background:var(--color-paper-2);cursor:pointer}.cart-item input{width:18px;height:18px}.cart-item>span{font-size:23px}.cart-item em,.cart-item small,.cart-item strong{display:block}.cart-item em,.cart-item small{color:var(--color-muted);font-size:8px}.cart-item em{font-style:normal}.cart-item>b{white-space:nowrap}.cart-summary{position:-webkit-sticky;position:sticky;top:80px;padding:24px;border-radius:22px;background:var(--color-ink);color:var(--color-paper-2)}.cart-summary>strong{display:block;font:900 29px var(--font-display)}.cart-summary>p{margin:6px 0 20px;color:var(--color-paper-3);font-size:9px}.cart-summary .is-disabled{pointer-events:none;opacity:.5}.origin-dialog .modal-head{border:0}.origin-options{display:grid;grid-gap:12px;gap:12px;padding:0 28px 28px}.origin-option{display:grid;grid-template-columns:45px minmax(0,1fr) auto;align-items:center;grid-gap:11px;gap:11px;padding:14px;border:1px solid var(--color-line);border-radius:16px;background:var(--color-paper);text-align:left}.origin-option>span:first-child{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:var(--color-accent);font-size:20px}.origin-option small,.origin-option strong{display:block}.origin-divider,.origin-option small{color:var(--color-muted);font-size:9px}.origin-divider{display:flex;align-items:center;gap:8px}.origin-divider:after,.origin-divider:before{content:"";flex:1 1;height:1px;background:var(--color-line)}.origin-options label{font-size:9px;font-weight:800}.origin-options select{width:100%;height:45px;margin-top:5px;padding:0 10px;border-radius:12px;background:var(--color-paper-2)}.geo-status{min-height:1lh;color:var(--color-muted);font-size:9px;text-align:center}@media (max-width:900px){.destination-shell{grid-template-columns:minmax(330px,45%) minmax(0,55%)}.destination-map{grid-column:2;min-height:420px}.destination-map .mock-map{height:420px}.destination-picker{grid-row:1/2}.destination-chat{grid-row:1/3}.flight-form{grid-template-columns:repeat(3,minmax(0,1fr))}.flight-form>button[type=button]{display:none}.flight-form>.button{grid-column:1/-1}.flight-result{grid-template-columns:50px minmax(0,1fr)}.flight-fare,.flight-times{grid-column:2}.flight-fare{text-align:left}.flight-fare .button{width:100%}.hotel-search-layout{grid-template-columns:220px minmax(0,1fr)}.hotel-result{grid-template-columns:150px minmax(0,1fr)}.hotel-result__image{min-height:340px}.cart-page{grid-template-columns:minmax(0,1fr)}.cart-summary{position:static}}@media (max-width:680px){.destination-shell{display:block}.destination-chat{height:auto;min-height:100vh}.destination-picker{padding:15px}.destination-hero-card{min-height:430px}.destination-map{min-height:380px}.destination-map .mock-map{height:380px}.flight-form,.flight-results,.hotel-search-layout,.result-toolbar,.search-query{width:calc(100% - 20px)}.result-toolbar{align-items:flex-start;flex-direction:column}.result-toolbar>div{max-width:100%;overflow-x:auto}.hotel-search-layout{grid-template-columns:minmax(0,1fr)}.hotel-filter-rail{position:static}.hotel-filter-rail .mock-map{display:none}.hotel-result{grid-template-columns:minmax(0,1fr)}.hotel-result__image{min-height:210px;height:210px}.hotel-result__footer{align-items:stretch;flex-direction:column}.hotel-result__footer>div:last-child{text-align:left}.hotel-result__footer .button{width:100%}.flight-form{grid-template-columns:repeat(2,minmax(0,1fr))}.flight-form>.button{grid-column:1/-1}.flight-intro h1{font-size:34px}.flight-results__head{align-items:flex-start;flex-direction:column}.flight-sort{max-width:100%;overflow-x:auto}.flight-result{grid-template-columns:42px minmax(0,1fr);padding:13px}.flight-times{grid-template-columns:auto auto minmax(60px,1fr) auto auto}.flight-review__total{align-items:stretch;flex-direction:column}.flight-review__total .button{width:100%}.trip-metrics{justify-content:flex-start;overflow-x:auto}.workspace__actions{max-width:100%;overflow-x:auto}.flight-ticket{grid-template-columns:minmax(0,1fr)}.flight-ticket>div:last-child{text-align:left}.add-service-card{grid-template-columns:42px minmax(0,1fr)}.add-service-card .button{grid-column:2;justify-self:start}.mobile-product-nav{position:fixed;right:10px;bottom:10px;left:10px;z-index:350;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:5px;border-radius:999px;background:var(--color-ink);box-shadow:var(--shadow-lg)}.mobile-product-nav a{min-height:42px;display:grid;place-items:center;border-radius:999px;color:var(--color-paper-2);font-size:10px;font-weight:800;white-space:nowrap}.mobile-product-nav a.active{background:var(--color-accent);color:var(--color-ink)}.cart-page{width:calc(100% - 20px);padding-top:25px}.cart-page h1{font-size:36px}.cart-item{grid-template-columns:20px 35px minmax(0,1fr)}.cart-item>b{grid-column:3}.checklist-card{grid-template-columns:minmax(0,1fr);padding:20px}.checklist-card .button,.checklist-card>div{grid-column:1}}.generation-screen,.planning-card{width:min(100%,620px);padding:clamp(24px,5vw,50px);border-radius:var(--radius-lg);background:var(--color-paper-2);box-shadow:var(--shadow-lg)}.generation-screen h1,.planning-card h1{margin-bottom:12px;font-size:clamp(32px,5vw,58px)}.generation-screen>p:not(.eyebrow),.planning-card>p:not(.eyebrow){color:var(--color-muted)}.planning-progress{position:relative;height:6px;margin-bottom:28px;border-radius:999px;background:var(--color-paper-3)}.planning-progress span{position:absolute;right:0;bottom:10px;color:var(--color-muted);font-size:12px;font-weight:800}.planning-progress i{display:block;height:100%;border-radius:inherit;background:var(--color-ink)}.answer-list{display:grid;grid-gap:10px;gap:10px;margin-top:28px}.answer-list button{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 18px;border:1px solid var(--color-line);border-radius:16px;background:var(--color-paper);text-align:left;font-weight:800}.answer-list button:hover{border-color:var(--color-accent-2);background:var(--color-accent-soft)}.answer-list b{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border-radius:50%;background:var(--color-ink);color:var(--color-paper-2)}.planning-card--review>.assistant-mark{width:54px;height:54px;margin-bottom:20px;font-size:20px}.planning-card--review dl{margin:24px 0;border-block:1px solid var(--color-line)}.planning-card--review dl div{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--color-line)}.planning-card--review dl div:last-child{border:0}.planning-card--review dt{color:var(--color-muted)}.planning-card--review dd{margin:0;font-weight:800;text-align:right}.planning-card--review .text-button{display:block;margin:14px auto 0}.generation-screen{text-align:center}.generation-orbit{display:grid;place-items:center;width:96px;height:96px;margin:0 auto 26px;border-radius:44% 56% 49% 51%;background:var(--color-ink);color:var(--color-accent);font-size:38px;animation:pulse 1.3s var(--ease-standard) infinite}.generation-orbit--logo{display:block;width:144px;height:96px;border-radius:var(--radius-md);background:transparent;object-fit:contain}.generation-bar{height:9px;margin:26px 0 8px;overflow:hidden;border-radius:999px;background:var(--color-paper-3)}.generation-bar i{display:block;height:100%;border-radius:inherit;background:var(--color-accent-2)}.generation-screen>strong{font-size:24px}.generation-screen ul{max-width:350px;margin:25px auto 0;padding:0;list-style:none;text-align:left}.generation-screen li{padding:7px 0;color:var(--color-muted)}.generation-screen li:before{content:"○";display:inline-block;width:26px}.generation-screen li.active{color:var(--color-ink);font-weight:800}.generation-screen li.active:before{content:"•"}.generation-screen li.done{color:var(--color-success);font-weight:800}.generation-screen li.done:before{content:"✓"}.download-menu{position:relative}.download-menu__panel{position:absolute;right:0;bottom:calc(100% + 8px);top:auto;z-index:var(--z-nav);width:270px;overflow:hidden;padding:7px;border:1px solid var(--color-line);border-radius:16px;background:var(--color-paper-2);box-shadow:var(--shadow-lg)}.download-menu__panel button{width:100%;display:block;padding:12px;border:0;border-radius:11px;background:transparent;text-align:left}.download-menu__panel button:hover{background:var(--color-accent-soft)}.download-menu__panel span,.download-menu__panel strong{display:block}.download-menu__panel span{margin-top:2px;color:var(--color-muted);font-size:12px;white-space:normal}.payment-page{width:min(100% - 32px,1000px);margin:auto;padding:46px 0 80px;display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:35px;gap:35px;align-items:start}.payment-card{padding:32px;border-radius:var(--radius-lg);background:var(--color-paper-2);box-shadow:var(--shadow-sm)}.payment-card h1{margin:12px 0 20px;font-size:clamp(38px,5vw,58px)}.demo-notice{display:grid;grid-gap:2px;gap:2px;margin-bottom:24px;padding:14px;border-radius:14px;background:var(--color-success-soft);color:var(--color-success)}.demo-notice span{font-size:13px}.payment-form{display:grid;grid-gap:14px;gap:14px}.payment-form>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.payment-form label{font-size:12px;font-weight:800}.payment-form input{width:100%;min-height:48px;margin-top:5px;padding:0 12px;border-radius:12px;background:var(--color-paper)}.payment-summary{position:-webkit-sticky;position:sticky;top:calc(var(--topbar) + 24px);padding:24px;border-radius:22px;background:var(--color-ink);color:var(--color-paper-2)}.payment-summary h2{margin:8px 0;font-size:25px}.payment-summary>p,.payment-summary>small{color:var(--color-paper-3)}.confirmation-card dl,.payment-summary dl{margin:22px 0;padding-block:12px;border-block:1px solid var(--color-line)}.confirmation-card dl div,.payment-summary dl div{display:flex;justify-content:space-between;gap:15px;padding:7px 0}.confirmation-card dd,.payment-summary dd{margin:0;font-weight:800;text-align:right}.confirmation-card dl{text-align:left}@media (max-width:820px){.payment-page{grid-template-columns:minmax(0,1fr)}.payment-summary{position:static;order:-1}}@media (max-width:580px){.generation-screen,.planning-card{padding:24px 18px}.generation-screen h1,.planning-card h1{font-size:34px}.payment-page{width:calc(100% - 20px);padding-top:20px}.payment-card{padding:24px 16px}.payment-form>div{grid-template-columns:minmax(0,1fr)}.download-menu{position:static}.download-menu__panel{right:10px;left:10px;width:auto}}.account-menu{position:relative}.account-menu>summary{list-style:none;cursor:pointer}.account-menu>summary::-webkit-details-marker{display:none}.account-menu__panel{position:absolute;top:calc(100% + var(--space-xs));right:0;z-index:var(--z-nav);width:19rem;max-width:calc(100dvw - var(--space-lg));padding:var(--space-2xs);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);background:var(--color-paper-2);box-shadow:var(--shadow-sm)}.account-menu__panel>div{padding:var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-rule)}.account-menu__panel small,.account-menu__panel strong,.account-menu__panel>div span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu__panel>div span{color:var(--color-muted);font-size:var(--text-xs)}.account-menu__panel a,.account-menu__panel button{width:100%;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:0 var(--space-sm);border:0;border-radius:var(--radius-input);background:transparent;font-weight:700;text-align:left;white-space:nowrap}.account-menu__panel button{color:var(--color-danger)}.account-page,.checkout-shell,.secure-checkout,.traveler-page{min-height:calc(100dvh - var(--topbar))}.checkout-shell{padding:var(--space-lg) var(--space-sm) var(--space-2xl)}.checkout-panel{width:min(100%,54rem);margin:auto}.checkout-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:var(--space-md);gap:var(--space-md);align-items:start;padding-bottom:var(--space-lg)}.checkout-heading h1{grid-column:1/-1;max-width:18ch;font-size:clamp(2rem,6vw,3.5rem)}.checkout-heading>div{text-align:right}.checkout-heading>div span,.checkout-heading>div strong{display:block}.checkout-heading>div span{color:var(--color-muted);font-size:var(--text-xs)}.checkout-heading>div strong{font-size:var(--text-lg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.self-checkout h2{font-size:clamp(1.4rem,4vw,2rem)}.self-checkout p{margin-top:var(--space-2xs);color:var(--color-muted)}.self-checkout{padding:var(--space-md);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);background:var(--color-paper-2)}.self-checkout>header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);padding-bottom:var(--space-md)}.self-checkout>header>span{flex:0 0 auto;padding:.35rem .65rem;border-radius:var(--radius-pill);background:var(--color-success-soft);color:var(--color-success);font-size:var(--text-xs);font-weight:800}.service-group{border-top:var(--rule-hair) solid var(--color-rule)}.service-group summary{min-height:60px;display:grid;grid-template-columns:2rem minmax(0,1fr) auto 1rem;align-items:center;grid-gap:var(--space-xs);gap:var(--space-xs);cursor:pointer;list-style:none}.service-group summary::-webkit-details-marker{display:none}.service-group summary>span:nth-of-type(2){font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.service-group__icon{width:2rem;height:2rem;display:grid;place-items:center;border-radius:50%;background:var(--color-paper-3);font-style:normal}.service-group summary i{font-style:normal;transition:transform var(--dur-short) var(--ease-out)}.service-group[open] summary i{transform:rotate(180deg)}.select-all{min-height:44px;display:flex;color:var(--color-muted);font-size:var(--text-sm)}.checkout-service,.select-all{align-items:center;gap:var(--space-xs)}.checkout-service{min-height:66px;display:grid;grid-template-columns:1.25rem minmax(0,1fr) auto;grid-gap:var(--space-xs);padding-block:var(--space-xs);border-top:var(--rule-hair) solid var(--color-rule);cursor:pointer}.checkout-service input,.document-choice input,.select-all input{width:1.1rem;height:1.1rem;accent-color:var(--color-ink)}.checkout-service small,.checkout-service strong{display:block}.checkout-service small{color:var(--color-muted)}.checkout-service b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.checkout-service.disabled{opacity:.55;cursor:not-allowed}.checkout-total{display:grid;grid-gap:var(--space-sm);gap:var(--space-sm);align-items:center;padding-top:var(--space-md);border-top:var(--rule-fine) solid var(--color-ink)}.checkout-total>div{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.checkout-total strong{font-size:var(--text-lg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.checkout-legal{margin-top:var(--space-sm);color:var(--color-muted);font-size:var(--text-xs);text-align:center}.checkout-steps{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);margin:var(--space-lg) 0}.checkout-steps span{display:flex;align-items:center;gap:var(--space-2xs);color:var(--color-muted);font-size:var(--text-sm);font-weight:800;white-space:nowrap}.checkout-steps span b{width:1.75rem;height:1.75rem;display:grid;place-items:center;border-radius:50%;background:var(--color-paper-3)}.checkout-steps span.active,.checkout-steps span.done{color:var(--color-ink)}.checkout-steps span.active b,.checkout-steps span.done b{background:var(--color-ink);color:var(--color-paper-2)}.checkout-steps i{width:clamp(2rem,10vw,5rem);height:var(--rule-hair);background:var(--color-rule)}.traveler-page{padding:var(--space-md) var(--space-sm) var(--space-2xl)}.traveler-panel{min-width:0}.traveler-panel>header h1{margin-top:var(--space-md);font-size:clamp(2rem,7vw,3.5rem)}.traveler-panel>header>p{margin-top:var(--space-xs);color:var(--color-muted)}.traveler-panel form{display:grid;grid-gap:var(--space-md);gap:var(--space-md);margin-top:var(--space-lg)}.contact-card,.traveler-card{min-width:0;margin:0;padding:var(--space-sm);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);background:var(--color-paper-2)}.contact-card legend,.traveler-card legend{width:100%;display:flex;align-items:center;gap:var(--space-xs);padding:0 0 var(--space-sm);font:800 var(--text-md)/1.2 var(--font-display)}.traveler-card legend small{color:var(--color-muted);font:400 var(--text-xs)/1.4 var(--font-body)}.traveler-card legend button{-webkit-margin-start:auto;margin-inline-start:auto;border:0;background:transparent;color:var(--color-danger)}.document-choice,.document-tabs{display:flex;gap:var(--space-2xs)}.document-choice{flex-wrap:wrap}.document-choice label{min-height:44px;display:flex;align-items:center;gap:var(--space-2xs);padding-inline:var(--space-sm);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-pill);cursor:pointer}.document-tabs{margin:var(--space-sm) 0;padding:var(--space-3xs);border-radius:var(--radius-pill);background:var(--color-paper-3)}.document-tabs button{min-height:44px;flex:1 1;border:0;border-radius:var(--radius-pill);background:transparent;font-weight:800;white-space:nowrap}.document-tabs button.active{background:var(--color-paper-2);box-shadow:var(--shadow-sm)}.document-upload{padding:var(--space-sm);border:var(--rule-hair) dashed var(--color-rule-2);border-radius:var(--radius-input)}.document-upload>label{min-height:10rem;display:grid;place-content:center;justify-items:center;grid-gap:var(--space-2xs);gap:var(--space-2xs);cursor:pointer;text-align:center}.document-upload>label>span{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--color-accent-soft);font-size:1.5rem}.document-upload small,.document-upload ul{color:var(--color-muted);font-size:var(--text-xs)}.traveler-grid{display:grid;grid-gap:var(--space-sm);gap:var(--space-sm)}.contact-card label,.traveler-grid label{min-width:0;font-size:var(--text-sm);font-weight:800}.traveler-grid label>small{color:var(--color-muted);font-weight:400}.contact-card input,.traveler-grid input,.traveler-grid select{width:100%;min-height:48px;margin-top:var(--space-2xs);padding:0 var(--space-sm);border-radius:var(--radius-input);background:var(--color-paper)}.phone-field{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;margin-top:var(--space-2xs);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-input);background:var(--color-paper)}.phone-field span{padding-inline:var(--space-sm);-webkit-border-end:var(--rule-hair) solid var(--color-rule);border-inline-end:var(--rule-hair) solid var(--color-rule);white-space:nowrap}.phone-field input{margin:0;border:0;background:transparent}.add-traveler{min-height:48px;border:var(--rule-hair) dashed var(--color-rule-2);border-radius:var(--radius-input);background:transparent;font-weight:800}.traveler-actions{display:grid;grid-gap:var(--space-xs);gap:var(--space-xs)}.traveler-summary{padding:var(--space-md);border-radius:var(--radius-card);background:var(--color-ink);color:var(--color-paper-2)}.traveler-summary>small,.traveler-summary>span{color:var(--color-paper-3)}.traveler-summary h2{margin:var(--space-xs) 0;font-size:var(--text-lg)}.traveler-summary>div{display:flex;justify-content:space-between;gap:var(--space-md);margin:var(--space-md) 0;padding-top:var(--space-sm);border-top:var(--rule-hair) solid var(--color-neutral)}.defer-dialog{position:fixed;inset:0;width:min(calc(100% - var(--space-lg)),28rem);height:-moz-fit-content;height:fit-content;margin:auto;padding:0;border:0;border-radius:var(--radius-card);background:var(--color-paper-2);color:var(--color-ink);box-shadow:var(--shadow-lg)}.defer-dialog::-webkit-backdrop{background:color-mix(in oklch,var(--color-ink) 60%,transparent)}.defer-dialog::backdrop{background:color-mix(in oklch,var(--color-ink) 60%,transparent)}.defer-dialog form{display:grid;grid-gap:var(--space-sm);gap:var(--space-sm);padding:var(--space-md);text-align:center}.defer-dialog__mark{width:3rem;height:3rem;display:grid;place-items:center;margin:auto;border-radius:50%;background:var(--color-accent-soft)}.defer-dialog p{color:var(--color-muted)}.secure-checkout{padding:var(--space-md) var(--space-sm) var(--space-2xl)}.secure-checkout>section{min-width:0}.secure-checkout header h1{margin-top:var(--space-lg);font-size:clamp(2rem,7vw,3.5rem)}.secure-checkout header p{margin-top:var(--space-xs);color:var(--color-muted)}.secure-lines{margin-top:var(--space-lg);border-block:var(--rule-hair) solid var(--color-rule)}.secure-lines>div{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding-block:var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-rule)}.secure-lines>div:last-child{border:0}.secure-lines small,.secure-lines strong{display:block}.secure-lines small{color:var(--color-muted)}.secure-lines b,.secure-total strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.secure-total{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) 0}.secure-total strong{font-size:var(--text-lg)}.pay-button{min-height:52px}.secure-provider{margin-top:var(--space-sm);color:var(--color-muted);font-size:var(--text-xs);text-align:center}.secure-checkout>aside{align-self:start;padding:var(--space-md);border-radius:var(--radius-card);background:var(--color-paper-2)}.secure-trip-art{overflow:hidden;margin:calc(var(--space-md) * -1) calc(var(--space-md) * -1) var(--space-md);border-radius:var(--radius-card) var(--radius-card) 0 0}.secure-trip-art img{width:100%;aspect-ratio:16/9;object-fit:cover}.secure-checkout aside>p,.secure-checkout aside>small{color:var(--color-muted)}.secure-checkout aside h2{margin:var(--space-xs) 0;font-size:var(--text-lg)}.details-reminder{margin-top:var(--space-md);padding:var(--space-sm);border-radius:var(--radius-input);background:var(--color-accent-soft)}.details-reminder p{margin-top:var(--space-2xs);font-size:var(--text-xs)}.account-page,.account-rail{padding:var(--space-sm)}.account-rail{display:grid;grid-gap:var(--space-sm);gap:var(--space-sm);border-radius:var(--radius-card);background:var(--color-paper-2)}.account-identity{display:flex;align-items:center;gap:var(--space-xs);min-width:0}.account-identity>span,.profile-hero>span,.setting-avatar{width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--color-ink);color:var(--color-accent);font-weight:900}.account-identity div{min-width:0}.account-identity small,.account-identity strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-identity small{color:var(--color-muted)}.account-rail nav{display:flex;gap:var(--space-2xs);overflow-x:auto}.account-rail nav a{min-height:44px;display:flex;align-items:center;gap:var(--space-xs);padding:0 var(--space-sm);border-radius:var(--radius-pill);white-space:nowrap}.account-rail nav a.active{background:var(--color-ink);color:var(--color-paper-2)}.account-rail nav i{font-style:normal}.account-rail>button{min-height:44px;border:0;background:transparent;color:var(--color-danger);text-align:left}.account-content{min-width:0;padding:var(--space-lg) 0}.account-content>header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-lg)}.account-content>header h1{font-size:clamp(2rem,7vw,3.5rem)}.account-trip-grid{display:grid;grid-gap:var(--space-md);gap:var(--space-md)}.account-trip-card{overflow:hidden;border-radius:var(--radius-card);background:var(--color-paper-2)}.account-trip-card img{width:100%;aspect-ratio:16/9;object-fit:cover}.account-new-trip,.account-trip-card>div{padding:var(--space-md)}.account-new-trip p,.account-trip-card p,.account-trip-card small{color:var(--color-muted)}.account-new-trip h2,.account-trip-card h2{margin:var(--space-xs) 0;font-size:var(--text-lg)}.account-new-trip .button,.account-trip-card .button{margin-top:var(--space-md)}.account-new-trip{display:grid;align-content:center;min-height:15rem;border:var(--rule-hair) dashed var(--color-rule-2);border-radius:var(--radius-card)}.account-new-trip>span{font-size:2rem}.account-tabs{display:flex;gap:var(--space-lg);border-bottom:var(--rule-hair) solid var(--color-rule)}.account-tabs button{min-height:48px;padding:0;border:0;border-bottom:var(--rule-fine) solid transparent;background:transparent;color:var(--color-muted);font-weight:800;white-space:nowrap}.account-tabs button.active{border-color:var(--color-ink);color:var(--color-ink)}.account-tabs--sub{gap:var(--space-sm);margin-top:var(--space-sm);border:0}.account-tabs--sub button{min-height:40px;padding:0 var(--space-sm);border:0;border-radius:var(--radius-pill);background:var(--color-paper-2)}.account-tabs--sub button.active{background:var(--color-ink);color:var(--color-paper-2)}.account-empty,.account-gate{display:grid;justify-items:center;grid-gap:var(--space-xs);gap:var(--space-xs);padding:var(--space-2xl) var(--space-sm);text-align:center}.account-empty p,.account-gate p{max-width:40ch;color:var(--color-muted)}.account-empty__icon{width:4rem;height:4rem;display:grid;place-items:center;border-radius:50%;background:var(--color-accent-soft);font-size:2rem}.booking-record{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-top:var(--space-md);padding:var(--space-md);border-radius:var(--radius-card);background:var(--color-paper-2)}.booking-record p,.booking-record small{color:var(--color-muted)}.booking-record strong{font-size:var(--text-lg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.profile-view,.settings-list{display:grid;grid-gap:var(--space-md);gap:var(--space-md)}.profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:var(--space-sm);gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-card);background:var(--color-paper-2)}.profile-hero>span{width:64px;height:64px;font-size:var(--text-lg)}.profile-about p,.profile-hero p{color:var(--color-muted)}.profile-hero .button{grid-column:1/-1}.profile-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-xs);gap:var(--space-xs)}.profile-stats div{padding:var(--space-md);border-radius:var(--radius-card);background:var(--color-paper-2)}.profile-stats span,.profile-stats strong{display:block}.profile-stats strong{font-size:var(--text-lg)}.profile-stats span{color:var(--color-muted)}.profile-details{margin:0;padding:0 var(--space-md);border-radius:var(--radius-card);background:var(--color-paper-2)}.profile-details div{display:flex;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:var(--rule-hair) solid var(--color-rule)}.profile-details div:last-child{border:0}.profile-details dd{margin:0;font-weight:800;text-align:right}.profile-about{padding:var(--space-md)}.settings-list section{overflow:hidden;border-radius:var(--radius-card);background:var(--color-paper-2)}.settings-list section>h2{padding:var(--space-md) var(--space-md) var(--space-xs);font:800 var(--text-sm)/1.4 var(--font-body)}.setting-row{width:100%;min-height:64px;display:grid;grid-template-columns:2.5rem minmax(0,1fr) auto;align-items:center;grid-gap:var(--space-xs);gap:var(--space-xs);padding:var(--space-xs) var(--space-md);border:0;border-top:var(--rule-hair) solid var(--color-rule);background:transparent;text-align:left}.setting-row>span:not(.setting-avatar){width:2.25rem;height:2.25rem;display:grid;place-items:center;border-radius:50%;background:var(--color-paper-3)}.setting-row small,.setting-row strong{display:block}.setting-row small{color:var(--color-muted)}.setting-row--danger{color:var(--color-danger)}.confirmation-card .button+.button{margin-top:var(--space-xs)}@media (hover:hover) and (pointer:fine){input:hover,select:hover,textarea:hover{background-color:var(--color-paper-2)}.account-menu__panel a:hover,.account-menu__panel button:hover,.setting-row:hover{background:var(--color-paper-3)}}@media (min-width:48rem){.checkout-shell,.secure-checkout,.traveler-page{padding:var(--space-xl) var(--space-md) var(--space-2xl)}.checkout-total{grid-template-columns:minmax(0,1fr) auto}.secure-checkout,.traveler-page{width:min(100%,70rem);margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 19rem;grid-gap:var(--space-xl);gap:var(--space-xl);align-items:start}.secure-checkout>aside,.traveler-summary{position:-webkit-sticky;position:sticky;top:calc(var(--topbar) + var(--space-md))}.traveler-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.traveler-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center}.account-page{padding:var(--space-md)}.account-trip-grid{grid-template-columns:minmax(0,1.35fr) minmax(16rem,.65fr)}.profile-hero{grid-template-columns:auto minmax(0,1fr) auto}.profile-hero .button{grid-column:auto}}@media (min-width:60rem){.account-page{width:min(100%,75rem);margin:auto;display:grid;grid-template-columns:16rem minmax(0,1fr);grid-gap:var(--space-xl);gap:var(--space-xl)}.account-rail{position:-webkit-sticky;position:sticky;top:calc(var(--topbar) + var(--space-md));align-self:start}.account-rail nav{display:grid;overflow:visible}.account-rail nav a{border-radius:var(--radius-input)}.account-content{padding:var(--space-md) 0 var(--space-2xl)}}@media (max-width:40rem){.new-trip-link{display:none}.checkout-heading{grid-template-columns:minmax(0,1fr)}.checkout-heading>div{grid-row:2;text-align:left}.self-checkout{padding:var(--space-sm)}.self-checkout>header{display:grid}.checkout-service{grid-template-columns:1.25rem minmax(0,1fr)}.checkout-service>b{grid-column:2}.checkout-steps{justify-content:flex-start;overflow-x:auto}.secure-checkout>aside,.traveler-summary{margin-bottom:var(--space-md)}.secure-checkout,.traveler-page{display:flex;flex-direction:column}.secure-checkout>aside,.traveler-page>aside{order:-1}.document-choice label{width:100%}.account-content>header{align-items:flex-start;flex-direction:column-reverse}.booking-record{align-items:flex-start;flex-direction:column}}.itinerary-shell{grid-template-columns:minmax(20rem,33%) minmax(0,1fr);background:var(--color-paper)}.itinerary-chat{min-width:0;box-shadow:none;border-right:var(--rule-hair) solid var(--color-line)}.itinerary-chat .sidebar-thread{padding-top:var(--space-md)}.itinerary-chat .message{margin-bottom:var(--space-sm)}.itinerary-chat .message__bubble{max-width:92%}.itinerary-hotel-card{display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs);margin-top:var(--space-md);padding:var(--space-xs);border-radius:var(--radius-md);background:var(--color-paper)}.itinerary-hotel-card>div{display:grid;grid-template-columns:88px minmax(0,1fr);grid-gap:var(--space-xs);gap:var(--space-xs);align-items:center}.itinerary-hotel-card img{width:88px;height:78px;border-radius:var(--radius-sm);object-fit:cover}.itinerary-hotel-card small,.itinerary-hotel-card span,.itinerary-hotel-card strong{display:block}.itinerary-hotel-card strong{overflow-wrap:anywhere;font:800 var(--text-sm) var(--font-body)}.itinerary-hotel-card small{margin-top:var(--space-3xs);color:var(--color-muted);font-size:var(--text-xs)}.itinerary-hotel-card>div>div>span{margin-top:var(--space-xs);color:var(--color-success);font-size:var(--text-xs);font-weight:800}.itinerary-workspace{min-width:0;height:calc(100vh - var(--topbar));display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:var(--color-paper)}.itinerary-workspace .workspace__head{align-items:center;padding:var(--space-md) clamp(var(--space-md),4vw,var(--space-2xl)) var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-line)}.itinerary-workspace .workspace__head h1{max-width:22ch;font-size:clamp(1.8rem,3vw,3rem)}.itinerary-workspace .workspace__head p{max-width:65ch}.itinerary-workspace .workspace__body{min-height:0;overflow-y:auto;padding:0}.itinerary-workspace .workspace__actions{align-self:center}.itinerary-workspace .workspace__actions .button{min-height:var(--size-touch)}.itinerary-overview{display:block;width:min(100%,42rem);margin:0 auto;padding:var(--space-md) var(--space-lg) var(--space-2xl)}.itinerary-overview>.overview-main{min-width:0}.itinerary-overview>.cost-card{display:none}.itinerary-cover{display:grid;grid-template-columns:72px minmax(0,1fr);grid-gap:var(--space-sm);gap:var(--space-sm);align-items:center;margin-bottom:var(--space-md);padding:var(--space-xs);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper-2)}.itinerary-cover img{width:72px;height:72px;border-radius:var(--radius-sm);object-fit:cover}.itinerary-cover h2{margin:.15rem 0 .25rem;overflow-wrap:anywhere;font-size:clamp(1rem,2.1vw,1.55rem)}.itinerary-cover p{margin:0;color:var(--color-muted);font-size:var(--text-xs)}.itinerary-overview .route-strip{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1.2fr) auto minmax(0,1fr);grid-gap:var(--space-xs);gap:var(--space-xs);margin-bottom:var(--space-sm);padding:var(--space-xs);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-pill);background:var(--color-paper-2);box-shadow:none}.itinerary-overview .route-strip>div{grid-template-columns:1.6rem minmax(0,1fr);column-gap:var(--space-3xs)}.itinerary-overview .route-strip .route-dot{width:1.6rem;height:1.6rem;font-size:var(--text-xs)}.itinerary-overview .route-strip small{font-size:9px}.itinerary-overview .route-strip strong{font-size:10px}.itinerary-overview .route-strip .route-line{min-width:1.25rem;font-size:9px}.itinerary-overview .map-card{display:block;min-height:0;height:150px;margin:0 0 var(--space-lg);border-radius:var(--radius-md);background:var(--color-paper-2)}.itinerary-overview .map-card__copy{display:none}.itinerary-overview .map-card .mock-map{min-height:150px;height:150px}.itinerary-overview .journey-block{min-height:100%;overflow:hidden;padding:var(--space-md) 0 var(--space-2xl);background:var(--color-paper)}.itinerary-overview .journey-block:before{top:var(--space-xl);bottom:var(--space-2xl);left:1.5rem}.itinerary-intro{position:relative;z-index:var(--z-base);width:calc(100% - 4rem);margin:0 0 var(--space-md) 4rem}.itinerary-intro h2{font-size:clamp(2rem,4vw,3.4rem)}.itinerary-hero-media{position:relative;z-index:var(--z-base);width:calc(100% - 4rem);min-height:13rem;grid-template-columns:minmax(0,1fr) 4.5rem;margin:0 0 var(--space-lg) 4rem}.itinerary-hero-media img{border-radius:var(--radius-md)}.itinerary-overview .journey-block>.add-service-card,.itinerary-overview .journey-block>.days-list,.itinerary-overview .journey-block>.flight-ticket,.itinerary-overview .journey-block>.summary-card{position:relative;z-index:var(--z-base);width:calc(100% - 4rem);margin-right:0;margin-left:4rem}.itinerary-overview .journey-block>.add-service-card:before,.itinerary-overview .journey-block>.days-list:before,.itinerary-overview .journey-block>.flight-ticket:before,.itinerary-overview .journey-block>.summary-card:before{position:absolute;left:-3.35rem;top:var(--space-sm);display:grid;place-items:center;width:2.25rem;height:2.25rem;border:var(--rule-fine) solid var(--color-paper-2);border-radius:50%;background:var(--color-ink);color:var(--color-paper-2);font-size:var(--text-sm);font-weight:900}.itinerary-overview .journey-block>.flight-ticket:before{content:"✈"}.itinerary-overview .journey-block>.summary-card--transport:before{content:"↗"}.itinerary-overview .journey-block>.summary-card--stay:before{content:"⌂"}.itinerary-overview .journey-block>.days-list:before{content:"☷"}.itinerary-overview .journey-block>.add-service-card,.itinerary-overview .journey-block>.flight-ticket,.itinerary-overview .journey-block>.summary-card{padding:var(--space-sm);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper-2);box-shadow:var(--shadow-sm)}.itinerary-overview .journey-block>.flight-ticket{grid-template-columns:minmax(8rem,.7fr) minmax(12rem,1.2fr) auto;gap:var(--space-sm);margin-bottom:var(--space-sm)}.itinerary-overview .journey-block>.add-service-card,.itinerary-overview .journey-block>.summary-card{margin-bottom:var(--space-sm)}.itinerary-overview .journey-block>.days-list{display:grid;grid-gap:var(--space-xs);gap:var(--space-xs);margin-top:var(--space-md);border:0}.itinerary-overview .days-list .day-card{min-height:var(--size-touch);padding:var(--space-sm);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper-2)}.itinerary-overview .days-list .day-card:hover{background:var(--color-paper-2);border-color:var(--color-focus)}.itinerary-overview .days-list .timeline{border-radius:0 0 var(--radius-md) var(--radius-md)}.itinerary-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-xs) clamp(var(--space-md),4vw,var(--space-2xl));border-top:var(--rule-hair) solid var(--color-line);background:var(--color-paper-2)}.itinerary-actions>div:first-child{min-width:0;display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs)}.itinerary-actions .eyebrow{margin:0}.itinerary-actions>div:first-child strong{font:900 clamp(1rem,2vw,1.35rem) var(--font-display);letter-spacing:-.035em;white-space:nowrap}.itinerary-actions__buttons{display:flex;align-items:center;gap:var(--space-xs)}.itinerary-actions__buttons .button{min-height:var(--size-touch)}@media (max-width:820px){.itinerary-shell{display:block}.itinerary-shell .trip-sidebar{position:static;display:flex;height:auto;min-height:calc(100vh - var(--topbar));border-right:0;border-bottom:var(--rule-hair) solid var(--color-line)}.itinerary-chat .sidebar-thread{max-height:24rem;flex:0 1 auto}.itinerary-workspace{height:auto;min-height:calc(100vh - var(--topbar))}.itinerary-workspace .workspace__body{overflow:visible}.itinerary-overview{width:100%;padding:var(--space-sm)}.itinerary-overview .journey-block{padding:var(--space-md) 0 var(--space-xl)}.itinerary-overview .journey-block:before{left:1.5rem}.itinerary-hero-media,.itinerary-intro,.itinerary-overview .journey-block>.add-service-card,.itinerary-overview .journey-block>.days-list,.itinerary-overview .journey-block>.flight-ticket,.itinerary-overview .journey-block>.summary-card{width:calc(100% - 4rem);margin-left:4rem}.itinerary-overview .journey-block>.add-service-card:before,.itinerary-overview .journey-block>.days-list:before,.itinerary-overview .journey-block>.flight-ticket:before,.itinerary-overview .journey-block>.summary-card:before{left:-3.35rem}.itinerary-actions{position:-webkit-sticky;position:sticky;bottom:0;z-index:var(--z-raised)}}@media (min-width:48rem) and (max-width:820px){.hero h1,.hero__lede{white-space:nowrap}.hero__lede{max-width:none;font-size:15px}}@media (max-width:580px){.itinerary-cover{grid-template-columns:60px minmax(0,1fr)}.itinerary-cover img{width:60px;height:60px}.itinerary-overview .route-strip{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.itinerary-overview .route-strip>.route-line:nth-last-child(2),.itinerary-overview .route-strip>div:last-child{display:none}.itinerary-overview .map-card,.itinerary-overview .map-card .mock-map{height:130px;min-height:130px}.itinerary-workspace .workspace__head{display:block}.itinerary-workspace .workspace__actions{margin-top:var(--space-sm)}.itinerary-hero-media{grid-template-columns:minmax(0,1fr) 5rem;min-height:10rem}.itinerary-overview .journey-block>.flight-ticket{grid-template-columns:minmax(0,1fr)}.itinerary-overview .journey-block>.flight-ticket .flight-route,.itinerary-overview .journey-block>.flight-ticket>div:last-child{grid-column:1}.itinerary-actions{align-items:stretch;flex-direction:column}.itinerary-actions__buttons{width:100%}.itinerary-actions__buttons .button,.itinerary-actions__buttons>*{flex:1 1}}.itinerary-overview{width:min(100%,52rem);padding:var(--space-xl) var(--space-lg) var(--space-2xl)}.itinerary-hero-card{display:grid;grid-template-columns:minmax(13rem,.86fr) minmax(0,1.14fr);grid-gap:var(--space-lg);gap:var(--space-lg);align-items:center;margin-bottom:var(--space-xl)}.itinerary-hero-card__media{min-width:0}.itinerary-hero-card__media>img{display:block;width:100%;aspect-ratio:1/1;max-height:18rem;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.itinerary-hero-card__media>a{display:inline-flex;min-height:var(--size-touch);align-items:center;margin-top:var(--space-2xs);padding-inline:var(--space-2xs);color:var(--color-ink);font-size:var(--text-xs);text-decoration:underline;text-underline-offset:3px}.itinerary-hero-card__content{min-width:0;display:grid;grid-gap:var(--space-xs);gap:var(--space-xs)}.itinerary-hero-card__content h2{max-width:18ch;overflow-wrap:anywhere;font:900 clamp(1.5rem,3vw,2.35rem)/1.02 var(--font-display);letter-spacing:-.045em}.itinerary-stats{display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-md)}.itinerary-stats>span{display:inline-flex;align-items:center;gap:var(--space-2xs);min-height:var(--size-touch);color:var(--color-muted);font-size:var(--text-sm);white-space:nowrap}.itinerary-stats b{font-size:var(--text-lg);line-height:1}.itinerary-stats b,.itinerary-stats strong{color:var(--color-ink);font-weight:500}.itinerary-overview .itinerary-route{gap:var(--space-xs);margin-bottom:var(--space-md);padding:var(--space-sm);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-pill);background:var(--color-paper-2);box-shadow:none}.itinerary-overview .itinerary-route>div{grid-template-columns:2rem minmax(0,1fr);column-gap:var(--space-2xs)}.itinerary-overview .itinerary-route .route-dot{width:2rem;height:2rem;background:var(--color-paper-3)}.itinerary-overview .itinerary-route .route-dot--accent{background:var(--color-accent)}.itinerary-overview .itinerary-route small,.itinerary-overview .itinerary-route strong{font-size:var(--text-xs)}.itinerary-overview .itinerary-route .route-line{min-width:2rem;padding:0;color:var(--color-ink)}.itinerary-overview .itinerary-route .route-line:before{margin-bottom:-.7rem}.itinerary-overview .itinerary-route .route-line i{position:relative;z-index:var(--z-base);display:inline-grid;place-items:center;width:1.7rem;height:1.7rem;border:var(--rule-hair) solid var(--color-line);border-radius:50%;background:var(--color-paper);font-style:normal;font-size:var(--text-xs)}.itinerary-overview .itinerary-map{position:relative;display:block;height:11rem;min-height:0;margin:0 0 var(--space-xl);overflow:hidden;border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper-2)}.itinerary-overview .itinerary-map .mock-map{height:100%;min-height:100%}.itinerary-overview .itinerary-map .map-card__copy{position:absolute;right:var(--space-sm);bottom:var(--space-sm);z-index:var(--z-raised);display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-pill);background:var(--color-paper-2);color:var(--color-ink);box-shadow:var(--shadow-sm)}.itinerary-overview .itinerary-map .map-card__copy .eyebrow{color:var(--color-muted)}.itinerary-overview .itinerary-map .map-card__copy a{color:var(--color-ink);font-size:var(--text-xs);text-decoration:none;white-space:nowrap}.itinerary-overview .journey-block{position:relative;min-height:0;margin:0;padding:var(--space-xl) 0 var(--space-2xl);overflow:visible;border-radius:0;background:transparent}.itinerary-overview .journey-block:before{content:"";position:absolute;top:var(--space-lg);bottom:var(--space-xl);left:1.25rem;width:var(--rule-hair);background:var(--color-rule-2)}.journey-event{position:relative;display:grid;grid-template-columns:6rem minmax(0,1fr);grid-gap:var(--space-md);gap:var(--space-md);align-items:start}.journey-event+.journey-event{margin-top:var(--space-xl)}.journey-event__rail{position:relative;z-index:var(--z-raised);display:grid;grid-template-columns:2.5rem minmax(0,1fr);grid-gap:var(--space-xs);gap:var(--space-xs);align-items:start}.journey-event__rail>span{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:var(--rule-fine) solid var(--color-paper);border-radius:50%;background:var(--color-ink);color:var(--color-paper-2);font-size:var(--text-md);font-weight:800}.journey-event__rail>div{display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs);padding-top:var(--space-3xs)}.journey-event__rail strong{font-size:var(--text-sm);line-height:1.15}.journey-event__rail small{color:var(--color-muted);font-size:var(--text-xs);line-height:1.25}.journey-event__content{min-width:0}.itinerary-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);margin:0 0 var(--space-md)}.itinerary-intro>div{min-width:0}.itinerary-heading>div>span,.itinerary-intro>div>span:first-child{color:var(--color-muted);font-size:var(--text-xs);font-weight:900;letter-spacing:.08em}.itinerary-intro h2{max-width:20ch;margin:var(--space-2xs) 0 var(--space-xs);font:900 clamp(2rem,4vw,3.2rem)/.98 var(--font-display);letter-spacing:-.05em}.itinerary-intro p{max-width:58ch;color:var(--color-muted);font-size:var(--text-sm);line-height:1.45}.itinerary-intro__meta{flex:0 0 auto;color:var(--color-ink);font-size:var(--text-sm);white-space:nowrap}.itinerary-hero-media{width:100%;min-height:15rem;display:grid;grid-template-columns:minmax(0,1fr) 6rem;grid-template-rows:repeat(2,minmax(0,1fr));grid-gap:var(--space-xs);gap:var(--space-xs);margin:0}.itinerary-hero-media img{width:100%;height:100%;min-height:0;object-fit:cover;border-radius:var(--radius-lg)}.itinerary-hero-media img:first-child{grid-row:1/3}.itinerary-hero-media--single{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(15rem,1fr)}.itinerary-hero-media--single img:first-child{grid-row:auto}.journey-services{display:grid;grid-gap:var(--space-sm);gap:var(--space-sm)}.journey-services>.add-service-card,.journey-services>.flight-ticket,.journey-services>.summary-card{width:100%;margin:0;border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-card);background:var(--color-paper-2);box-shadow:var(--shadow-sm)}.journey-services>.flight-ticket{grid-template-columns:minmax(8rem,.7fr) minmax(0,1.4fr) auto;gap:var(--space-sm);padding:var(--space-md)}.journey-services>.add-service-card,.journey-services>.summary-card{padding:var(--space-sm)}.journey-services .flight-ticket button{min-height:var(--size-touch);padding-inline:var(--space-2xs)}.journey-services .summary-card img,.journey-services .summary-card__icon{width:4rem;height:3.75rem}.journey-services .summary-card>.circle-action{min-width:var(--size-touch);min-height:var(--size-touch)}.itinerary-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-sm)}.itinerary-heading h2{margin-top:var(--space-2xs);font:900 clamp(1.6rem,3vw,2.35rem)/1 var(--font-display);letter-spacing:-.04em}.itinerary-heading>strong{flex:0 0 auto;padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-focus);font-size:var(--text-xs);white-space:nowrap}.itinerary-overview .journey-event .days-list{display:grid;grid-gap:var(--space-xs);gap:var(--space-xs);margin:0;border:0}.itinerary-overview .days-list .itinerary-day-card{min-height:5.5rem;grid-template-columns:6rem minmax(0,1fr) auto;gap:var(--space-sm);padding:var(--space-xs);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-card);background:var(--color-paper-2);box-shadow:var(--shadow-sm);transition:border-color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.itinerary-overview .days-list .itinerary-day-card:hover{border-color:var(--color-accent-2);background:var(--color-paper-2);transform:translateY(-1px)}.itinerary-day-card .day-card__media{display:block;width:6rem;height:4.5rem;overflow:hidden;border-radius:var(--radius-sm);background:var(--color-paper-3)}.itinerary-day-card .day-card__media img{width:100%;height:100%;object-fit:cover}.itinerary-day-card .day-card__body{display:grid;align-content:center;grid-gap:var(--space-3xs);gap:var(--space-3xs)}.itinerary-day-card .day-card__body>small{display:block;overflow:hidden;color:var(--color-muted);font-size:var(--text-xs);letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.itinerary-day-card .day-card__body>small strong{display:inline;margin:0;color:var(--color-focus);font-size:inherit}.itinerary-day-card .day-card__body>small span{display:inline;color:var(--color-muted);font-size:inherit}.itinerary-day-card .day-card__body>strong{display:block;overflow:hidden;margin:0;font-size:var(--text-md);text-overflow:ellipsis;white-space:nowrap}.itinerary-day-card .day-card__body>span{display:-webkit-box;overflow:hidden;color:var(--color-muted);font-size:var(--text-xs);line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.itinerary-day-card>span:last-child{padding-inline:var(--space-2xs);color:var(--color-muted);font-size:var(--text-lg)}.itinerary-overview .days-list .timeline{margin:calc(var(--space-xs) * -1) 0 0;padding:var(--space-xs) var(--space-sm) var(--space-sm);border:var(--rule-hair) solid var(--color-line);border-top:0;border-radius:0 0 var(--radius-card) var(--radius-card);background:var(--color-paper-2)}.itinerary-overview .days-list .timeline button{min-height:var(--size-touch);grid-template-columns:3rem 2.5rem minmax(0,1fr) auto;gap:var(--space-xs);padding-block:var(--space-xs)}.itinerary-overview .days-list .timeline .timeline__media{width:2.5rem;height:2.5rem;overflow:hidden}.itinerary-overview .days-list .timeline .timeline__media img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-sm)}.itinerary-overview .days-list .timeline button>div{min-width:0}.itinerary-overview .days-list .timeline button strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:820px){.itinerary-overview{width:100%;padding:var(--space-lg) var(--space-sm) var(--space-2xl)}.itinerary-hero-card{grid-template-columns:minmax(0,1fr);gap:var(--space-md)}.itinerary-hero-card__media>img{max-height:none;aspect-ratio:16/9;border-radius:var(--radius-card)}.itinerary-hero-card__content h2{max-width:24ch}.itinerary-overview .journey-block{padding-top:var(--space-lg)}.journey-event{grid-template-columns:5rem minmax(0,1fr);gap:var(--space-sm)}.journey-event__rail{grid-template-columns:2.5rem minmax(0,1fr);gap:var(--space-2xs)}.journey-services>.flight-ticket{grid-template-columns:minmax(0,1fr)}.journey-services>.flight-ticket .flight-route,.journey-services>.flight-ticket>div:last-child{grid-column:1}.itinerary-actions{position:-webkit-sticky;position:sticky;bottom:0;z-index:var(--z-raised)}}@media (max-width:580px){.itinerary-overview{padding:var(--space-md) var(--space-2xs) var(--space-2xl)}.itinerary-hero-card{margin-bottom:var(--space-lg)}.itinerary-hero-card__media>img{aspect-ratio:16/10}.itinerary-stats{gap:var(--space-2xs) var(--space-xs)}.itinerary-stats>span{flex:1 1 calc(50% - var(--space-xs));min-height:40px;font-size:var(--text-xs)}.itinerary-stats b{font-size:var(--text-md)}.itinerary-overview .itinerary-route{padding:var(--space-xs)}.itinerary-overview .itinerary-route>div{grid-template-columns:1.7rem minmax(0,1fr)}.itinerary-overview .itinerary-route .route-dot{width:1.7rem;height:1.7rem}.itinerary-overview .itinerary-route small{font-size:9px}.itinerary-overview .itinerary-route strong{font-size:10px}.itinerary-overview .itinerary-map,.itinerary-overview .itinerary-map .mock-map{height:8.5rem;min-height:8.5rem}.itinerary-overview .itinerary-map .map-card__copy{right:var(--space-2xs);bottom:var(--space-2xs);gap:var(--space-2xs);padding:var(--space-3xs) var(--space-2xs)}.itinerary-overview .itinerary-map .map-card__copy .eyebrow{display:none}.itinerary-overview .journey-block:before{left:1.125rem}.journey-event{grid-template-columns:4.25rem minmax(0,1fr);gap:var(--space-xs)}.journey-event+.journey-event{margin-top:var(--space-lg)}.journey-event__rail{grid-template-columns:2.25rem minmax(0,1fr);gap:var(--space-3xs)}.journey-event__rail>span{width:2.25rem;height:2.25rem;font-size:var(--text-sm)}.journey-event__rail strong{font-size:var(--text-xs)}.journey-event__rail small{font-size:9px}.itinerary-intro{display:block}.itinerary-intro h2{font-size:clamp(1.9rem,10vw,2.8rem)}.itinerary-intro__meta{display:block;margin-top:var(--space-sm)}.itinerary-hero-media{min-height:10rem;grid-template-columns:minmax(0,1fr) 4.5rem}.itinerary-hero-media--single{grid-template-columns:minmax(0,1fr);grid-template-rows:10rem}.itinerary-overview .days-list .itinerary-day-card{grid-template-columns:4.5rem minmax(0,1fr) auto;gap:var(--space-xs);padding:var(--space-2xs)}.itinerary-day-card .day-card__media{width:4.5rem;height:4rem}.itinerary-day-card .day-card__body>strong{font-size:var(--text-sm)}.itinerary-day-card .day-card__body>span{display:none}.itinerary-day-card>span:last-child{padding-inline:0}.itinerary-overview .days-list .timeline{padding-inline:var(--space-xs)}.itinerary-overview .days-list .timeline button{grid-template-columns:2.5rem 2.25rem minmax(0,1fr);gap:var(--space-2xs)}.itinerary-overview .days-list .timeline button>b{grid-column:3}.itinerary-overview .days-list .timeline .timeline__media{width:2.25rem;height:2.25rem}.itinerary-heading{align-items:flex-start;flex-direction:column;gap:var(--space-xs)}.journey-services>.summary-card{grid-template-columns:auto minmax(0,1fr) auto}.journey-services>.summary-card>strong{grid-column:2}.journey-services>.summary-card>a{grid-column:3;grid-row:1/3}.itinerary-actions{align-items:stretch;flex-direction:column}.itinerary-actions__buttons{width:100%}.itinerary-actions__buttons .button,.itinerary-actions__buttons>*{flex:1 1}}.hotel-search-page{padding-bottom:var(--space-2xl)}.hotel-search-page .search-nav{min-height:64px;height:auto;grid-template-columns:44px minmax(0,1fr) auto;padding:var(--space-2xs) var(--space-sm);background:var(--color-paper-2)}.hotel-search-page .search-nav>a{width:44px;height:44px;border:var(--rule-hair) solid var(--color-line);border-radius:50%;background:var(--color-paper);font-size:var(--text-lg)}.search-nav__title{min-width:0;display:grid;grid-gap:2px;gap:2px}.search-nav__eyebrow{color:var(--color-muted);font-size:9px;font-weight:900;letter-spacing:.1em}.search-nav__title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:800 var(--text-md)/1.1 var(--font-display);letter-spacing:-.025em}.search-nav__status{display:flex;align-items:center;gap:var(--space-2xs);min-height:32px;padding:0 var(--space-xs);border-radius:var(--radius-pill);background:var(--color-success-soft);color:var(--color-success);font-size:9px;font-weight:900;letter-spacing:.04em;white-space:nowrap}.search-nav__status i{width:7px;height:7px;border-radius:50%;background:currentColor}.hotel-search-page .search-query{width:calc(100% - var(--space-lg));max-width:72.5rem;margin:var(--space-md) auto var(--space-sm);padding:var(--space-md);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-card);background:var(--color-paper-2);box-shadow:var(--shadow-sm)}.hotel-search-page .search-query>.search-query__head{display:grid;grid-gap:var(--space-md);gap:var(--space-md)}.search-query__head h1{margin:var(--space-2xs) 0 var(--space-2xs);font:900 clamp(1.8rem,6vw,3.2rem)/.98 var(--font-display);letter-spacing:-.045em}.search-query__head p{max-width:48ch;color:var(--color-muted);font-size:var(--text-sm)}.search-query__context{display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs);padding:var(--space-sm);border-radius:var(--radius-input);background:var(--color-accent-soft)}.search-query__context span{color:var(--color-focus);font-size:9px;font-weight:900;letter-spacing:.08em}.search-query__context strong{font-size:var(--text-md)}.hotel-search-page .search-query__label,.search-query__context small{color:var(--color-muted);font-size:var(--text-xs)}.hotel-search-page .search-query__label{display:block;margin:var(--space-md) 0 var(--space-2xs);font-weight:800}.hotel-search-page .search-query__input{display:flex;align-items:center;gap:var(--space-2xs);padding:var(--space-2xs);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-pill);background:var(--color-paper)}.hotel-search-page .search-query input{min-width:0;height:44px;padding-inline:var(--space-xs);border:0;background:transparent;font-size:var(--text-sm);font-weight:700}.hotel-search-page .search-query__input button{flex:0 0 auto;width:44px;height:44px;border:0;border-radius:50%;background:var(--color-ink);color:var(--color-paper-2);font-size:var(--text-lg)}.hotel-search-page .search-query__input button:disabled{cursor:wait;opacity:.65}.hotel-search-page .search-chips{align-items:center;gap:var(--space-2xs);margin-top:var(--space-sm)}.hotel-search-page .search-chips>span{margin-right:var(--space-2xs);color:var(--color-muted);font-size:var(--text-xs);font-weight:800}.hotel-search-page .search-chips button{min-height:44px;padding-inline:var(--space-sm);border:var(--rule-hair) solid var(--color-line);background:var(--color-paper);font-size:var(--text-xs);font-weight:800}.hotel-search-page .search-chips button.active{border-color:var(--color-accent-2);background:var(--color-accent-soft);color:var(--color-focus)}.hotel-search-page .result-toolbar{width:calc(100% - var(--space-lg));max-width:72.5rem;margin:0 auto var(--space-sm);display:grid;grid-gap:var(--space-xs);gap:var(--space-xs);align-items:center}.hotel-search-page .result-toolbar__summary{min-width:0;display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs)}.result-toolbar__summary strong{font:900 var(--text-lg)/1.1 var(--font-display);letter-spacing:-.025em}.result-toolbar__summary span{overflow:hidden;text-overflow:ellipsis;color:var(--color-muted);font-size:var(--text-xs);white-space:nowrap}.result-toolbar__summary .result-toolbar__error{color:var(--color-danger)}.hotel-search-page .result-toolbar__controls{display:flex;align-items:center;gap:var(--space-2xs);max-width:100%;overflow-x:auto}.sort-control{min-height:44px;display:flex;align-items:center;gap:var(--space-2xs);padding-inline:var(--space-xs);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-pill);background:var(--color-paper-2);white-space:nowrap}.sort-control span{color:var(--color-muted);font-size:var(--text-xs)}.sort-control select{min-height:40px;padding:0 var(--space-2xs) 0 0;border:0;background:transparent;font-size:var(--text-xs);font-weight:800}.hotel-search-page .map-toggle,.large-hotel-map__head button{min-height:44px;padding-inline:var(--space-sm);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-pill);background:var(--color-paper-2);font-size:var(--text-xs);font-weight:800;white-space:nowrap}.hotel-search-page .map-toggle{background:var(--color-ink);color:var(--color-paper-2)}.hotel-search-page .hotel-search-layout{width:calc(100% - var(--space-lg));max-width:72.5rem;margin:auto;display:grid;grid-template-columns:minmax(0,1fr);grid-gap:var(--space-md);gap:var(--space-md);align-items:start}.hotel-search-page .hotel-filter-rail{position:static;overflow:hidden;border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-card);background:var(--color-paper-2);box-shadow:var(--shadow-sm)}.filter-rail__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-sm);padding:var(--space-md)}.filter-rail__head h2{margin-top:var(--space-2xs);font:900 var(--text-lg)/1 var(--font-display);letter-spacing:-.03em}.filter-rail__clear{min-height:44px;padding-inline:var(--space-xs);border:0;border-radius:var(--radius-pill);background:transparent;color:var(--color-focus);font-size:var(--text-xs);font-weight:800;white-space:nowrap}.filter-rail__clear:disabled,.filter-reset:disabled{cursor:not-allowed;opacity:.42}.filter-rail__map{display:none;position:relative;margin:0 var(--space-md) var(--space-2xs);overflow:hidden;border-radius:var(--radius-input)}.filter-rail__map .mock-map{height:156px;min-height:156px}.filter-rail__map>span{position:absolute;right:var(--space-xs);bottom:var(--space-xs);padding:var(--space-3xs) var(--space-2xs);border-radius:var(--radius-pill);background:var(--color-paper-2);color:var(--color-muted);font-size:9px;font-weight:800}.hotel-search-page .filter-group{padding:var(--space-sm) var(--space-md);border-top:var(--rule-hair) solid var(--color-line)}.hotel-search-page .filter-group>small,.hotel-search-page .filter-group>strong{display:block}.hotel-search-page .filter-group>small{color:var(--color-muted);font-size:var(--text-xs)}.hotel-search-page .filter-group>strong{margin-top:var(--space-3xs);font-size:var(--text-sm)}.hotel-search-page .filter-group--options{display:grid;grid-gap:var(--space-xs);gap:var(--space-xs)}.filter-group__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-xs)}.filter-group__head>span{color:var(--color-muted);font-size:var(--text-xs);white-space:nowrap}.filter-options{display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs)}.filter-option{min-height:44px;display:flex;align-items:center;gap:var(--space-xs);cursor:pointer}.filter-option input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--color-ink)}.filter-option__copy{min-width:0;display:grid;grid-gap:2px;gap:2px}.filter-option__copy small,.filter-option__copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-option__copy strong{font-size:var(--text-sm)}.filter-option__copy small{color:var(--color-muted);font-size:var(--text-xs)}.filter-option__stars{color:var(--color-accent-2);font-size:var(--text-xs);letter-spacing:.05em}.filter-group__note{color:var(--color-muted);font-size:var(--text-xs);line-height:1.4}.hotel-search-page .filter-group--active{display:grid;grid-gap:var(--space-xs);gap:var(--space-xs)}.hotel-search-page .active-filters{min-height:24px;align-items:center;gap:var(--space-2xs);margin:0}.hotel-search-page .active-filters button,.hotel-search-page .active-filters span{min-height:30px;display:inline-flex;align-items:center;padding-inline:var(--space-2xs);border:0;border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-focus);font-size:var(--text-xs);font-weight:800}.hotel-search-page .active-filters>span{background:var(--color-paper);color:var(--color-muted);font-weight:500}.hotel-search-page .filter-reset{justify-self:start;min-height:44px;padding:0;border:0;background:transparent;color:var(--color-focus);font-size:var(--text-xs);font-weight:800}.hotel-search-page .hotel-search-results{min-width:0;display:grid;grid-gap:var(--space-sm);gap:var(--space-sm)}.hotel-search-page .hotel-result{min-width:0;display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden;border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-card);background:var(--color-paper-2);box-shadow:var(--shadow-sm);transition:transform var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.hotel-search-page .hotel-result:hover{transform:translateY(-2px);border-color:var(--color-accent-2)}.hotel-search-page .hotel-result.selected{border:var(--rule-fine) solid var(--color-accent-2)}.hotel-search-page .hotel-result__image{position:relative;min-height:188px;height:188px;background:var(--color-paper-3)}.hotel-search-page .hotel-result__image img{width:100%;height:100%;object-fit:cover}.hotel-result__selected{position:absolute;top:var(--space-xs);left:var(--space-xs);padding:var(--space-3xs) var(--space-2xs);border-radius:var(--radius-pill);background:var(--color-ink);color:var(--color-paper-2);font-size:9px;font-weight:900}.hotel-search-page .hotel-result__content{min-width:0;display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md)}.hotel-search-page .hotel-result__title{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-sm)}.hotel-result__identity{min-width:0;display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs)}.hotel-search-page .hotel-result__stars{color:var(--color-accent-2);font-size:var(--text-xs);font-weight:900;letter-spacing:.04em}.hotel-result__stars em{color:var(--color-muted);font-size:var(--text-xs);font-style:normal;font-weight:700;letter-spacing:0}.hotel-search-page .hotel-result__title h2{margin:0;overflow-wrap:anywhere;font:900 clamp(1.15rem,3vw,1.5rem)/1.05 var(--font-display);letter-spacing:-.035em}.hotel-search-page .hotel-result__map-link{justify-self:start;min-height:32px;padding:0;border:0;background:transparent;color:var(--color-focus);font-size:var(--text-xs);font-weight:800;text-decoration:underline;white-space:nowrap}.hotel-result__rating{flex:0 0 auto;display:grid;grid-gap:2px;gap:2px;min-width:58px;text-align:right}.hotel-result__rating strong{font:900 var(--text-lg)/1 var(--font-display)}.hotel-result__rating small{color:var(--color-muted);font-size:9px}.hotel-search-page .tags{display:flex;flex-wrap:wrap;gap:var(--space-2xs)}.hotel-search-page .tags span{padding:var(--space-3xs) var(--space-2xs);border-radius:var(--radius-pill);background:var(--color-paper);color:var(--color-muted);font-size:var(--text-xs);font-weight:700}.hotel-search-page .why-fit{min-height:0;padding:var(--space-sm);border-radius:var(--radius-input);background:var(--color-paper)}.hotel-search-page .why-fit strong{font-size:var(--text-xs)}.hotel-search-page .why-fit p{margin-top:var(--space-2xs);color:var(--color-muted);font-size:var(--text-xs);line-height:1.5}.hotel-search-page .hotel-result__footer{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:var(--space-md);gap:var(--space-md);margin-top:auto}.hotel-result__price,.hotel-result__room{min-width:0;display:grid;align-content:start;grid-gap:var(--space-3xs);gap:var(--space-3xs)}.hotel-result__room small{color:var(--color-muted);font-size:9px;font-weight:900;letter-spacing:.08em}.hotel-result__room strong{overflow-wrap:anywhere;font-size:var(--text-sm)}.hotel-result__price span,.hotel-result__room span{color:var(--color-muted);font-size:var(--text-xs)}.hotel-result__room span{color:var(--color-success)}.hotel-result__price strong{font:900 var(--text-lg)/1 var(--font-display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hotel-result__price strong small{color:var(--color-muted);font:700 var(--text-xs) var(--font-body)}.hotel-result__price .button{width:100%;min-height:44px;margin-top:var(--space-2xs);font-size:var(--text-xs);white-space:nowrap}.hotel-search-page .large-hotel-map{overflow:hidden;border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-card);background:var(--color-paper-2);box-shadow:var(--shadow-sm)}.large-hotel-map__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-md)}.large-hotel-map__head>div{min-width:0;display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs)}.large-hotel-map__head strong{overflow:hidden;text-overflow:ellipsis;font-size:var(--text-sm);white-space:nowrap}.hotel-search-page .large-hotel-map .mock-map{min-height:360px;height:clamp(22rem,65vh,42rem)}.hotel-map-loading{min-height:360px;display:grid;place-content:center;justify-items:center;grid-gap:var(--space-xs);gap:var(--space-xs);padding:var(--space-md);border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-card);background:var(--color-paper-2);text-align:center}.hotel-map-loading h2{font:900 var(--text-lg) var(--font-display)}.hotel-map-loading p{color:var(--color-muted);font-size:var(--text-sm)}.hotel-spinner{width:14px;height:14px;border-radius:50%;background:var(--color-accent-2);animation:hotel-loading-pulse 1s var(--ease-in-out) infinite}.hotel-loading{display:grid;grid-gap:var(--space-sm);gap:var(--space-sm)}.hotel-result--skeleton{pointer-events:none}.hotel-result--skeleton .hotel-result__content{min-height:270px}.hotel-skeleton{border-radius:var(--radius-input);background:var(--color-paper-3);animation:hotel-skeleton-pulse 1.25s var(--ease-in-out) infinite}.hotel-skeleton--eyebrow{width:5rem;height:12px}.hotel-skeleton--title{width:min(75%,19rem);height:28px}.hotel-skeleton--line{width:100%;height:12px}.hotel-skeleton--short{width:68%}.hotel-skeleton--room{width:45%;height:38px}.hotel-skeleton--cta{width:100%;height:44px}.hotel-search-page .hotel-empty{min-height:360px;border:var(--rule-hair) solid var(--color-line);box-shadow:var(--shadow-sm)}.hotel-empty>span{width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:var(--color-accent-soft);color:var(--color-focus);font-size:var(--text-xl);font-weight:900}.hotel-empty h2{max-width:25ch;font:900 var(--text-lg) var(--font-display)}.hotel-empty p{max-width:42ch;font-size:var(--text-sm)}.hotel-empty>div{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2xs);margin-top:var(--space-2xs)}.hotel-empty--error>span{background:var(--color-danger-soft);color:var(--color-danger)}.hotel-search-page button,.hotel-search-page input,.hotel-search-page select{font-family:inherit}.hotel-search-page button:focus-visible,.hotel-search-page input:focus-visible,.hotel-search-page select:focus-visible{outline:var(--rule-fine) solid var(--color-focus);outline-offset:2px}.hotel-search-page button:disabled{cursor:not-allowed}@keyframes hotel-skeleton-pulse{50%{opacity:.46}}@keyframes hotel-loading-pulse{50%{transform:scale(.72);opacity:.46}}@media (max-width:30rem){.hotel-search-page .search-nav{grid-template-columns:44px minmax(0,1fr)}.hotel-search-page .search-nav__status{display:none}.hotel-search-page .hotel-search-layout,.hotel-search-page .result-toolbar,.hotel-search-page .search-query{width:calc(100% - var(--space-md))}.hotel-search-page .search-query{padding:var(--space-sm)}.search-query__head h1{font-size:1.75rem}.search-query__context{padding:var(--space-xs)}.hotel-search-page .hotel-result__title{gap:var(--space-xs)}.hotel-result__rating{min-width:48px}}@media (min-width:40rem){.hotel-search-page .search-query__head{grid-template-columns:minmax(0,1fr) minmax(14rem,.42fr);align-items:end}.hotel-search-page .result-toolbar{display:flex;justify-content:space-between}.hotel-search-page .hotel-result{grid-template-columns:12rem minmax(0,1fr)}.hotel-search-page .hotel-result__image{height:auto;min-height:20rem}.hotel-search-page .hotel-result__footer{grid-template-columns:minmax(0,1fr) minmax(12rem,.7fr);align-items:end}.hotel-result__price{justify-items:end;text-align:right}.hotel-result__price .button{width:auto}}@media (min-width:48rem){.hotel-search-page .hotel-search-layout{grid-template-columns:minmax(13.75rem,30%) minmax(0,1fr)}}@media (min-width:60rem){.hotel-search-page .search-query{padding:var(--space-lg) var(--space-xl) var(--space-md)}.hotel-search-page .hotel-search-layout{grid-template-columns:17.5rem minmax(0,1fr);gap:var(--space-lg)}.hotel-search-page .hotel-filter-rail{position:-webkit-sticky;position:sticky;top:var(--space-sm)}.filter-rail__map{display:block}.hotel-search-page .hotel-result{grid-template-columns:14rem minmax(0,1fr)}}.public-trip-header{grid-template-columns:minmax(0,1fr) auto;padding-inline:var(--space-sm)}.public-trip-header__label{display:none;color:var(--color-muted);font-size:var(--text-xs);font-weight:800;white-space:nowrap}.public-trip-header__tools{min-width:0}.public-trip-header .public-trip-copy{min-width:44px;padding-inline:var(--space-xs)}.public-trip-header .public-trip-create{display:none}.public-trip-page{min-height:calc(100dvh - var(--topbar));background:var(--color-paper)}.public-trip-overview{width:min(100%,64rem);padding:var(--space-md) var(--space-sm) var(--space-2xl)}.public-trip-hero{min-width:0;margin-bottom:var(--space-lg)}.public-trip-hero>img{width:100%;height:clamp(13rem,56vw,22rem);object-fit:cover;border-radius:var(--radius-card);background:var(--color-paper-3)}.public-trip-hero__content{min-width:0;display:grid;grid-gap:var(--space-xs);gap:var(--space-xs);padding:var(--space-md) var(--space-2xs) 0;text-align:center}.public-trip-hero__content h1{max-width:20ch;margin-inline:auto;font:900 clamp(2rem,9vw,4.75rem)/.98 var(--font-display);letter-spacing:-.045em}.public-trip-hero__content>p{max-width:62ch;margin-inline:auto;color:var(--color-muted);font-size:var(--text-sm)}.public-trip-hero .itinerary-stats{justify-content:center}.public-trip-hero .itinerary-stats>span{min-width:0}.public-trip-hero .itinerary-stats strong{overflow:hidden;text-overflow:ellipsis}.public-trip-route{margin-block:0 var(--space-lg)}.public-trip-route>.route-line:nth-last-child(2),.public-trip-route>div:last-child{display:none}.itinerary-overview .public-trip-map{height:15rem;margin-bottom:var(--space-xl)}.itinerary-overview .public-trip-map .mock-map{height:100%;min-height:100%}.itinerary-overview .public-trip-map .map-card__copy{right:var(--space-xs);bottom:var(--space-xs);max-width:calc(100% - var(--space-md))}.itinerary-overview .public-trip-map .map-card__copy>span:last-child{overflow:hidden;text-overflow:ellipsis;color:var(--color-muted);font-size:var(--text-xs);white-space:nowrap}.public-trip-section{padding-block:var(--space-xl);border-top:var(--rule-hair) solid var(--color-line)}.public-trip-section h2{font-size:clamp(1.65rem,6vw,2.6rem)}.public-trip-section__head{min-width:0;display:grid;grid-gap:var(--space-sm);gap:var(--space-sm);margin-bottom:var(--space-md)}.public-trip-section__head>div{min-width:0}.public-trip-section__head>strong{font-size:var(--text-sm);white-space:nowrap}.public-trip-intro>p{max-width:65ch;margin-top:var(--space-sm);color:var(--color-muted)}.public-trip-gallery{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 5rem;grid-template-rows:repeat(2,minmax(0,1fr));grid-gap:var(--space-2xs);gap:var(--space-2xs);min-height:12rem;margin-top:var(--space-lg)}.public-trip-gallery img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-card);background:var(--color-paper-3)}.public-trip-gallery img:first-child{grid-row:1/3}.public-trip-stay__card{min-width:0;display:grid;overflow:hidden;border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-card);background:var(--color-paper-2);box-shadow:var(--shadow-sm)}.public-trip-stay__card>img{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--color-paper-3)}.public-trip-stay__card>div{min-width:0;display:grid;align-content:center;grid-gap:var(--space-2xs);gap:var(--space-2xs);padding:var(--space-md)}.public-trip-stay__card h3{font-size:var(--text-lg)}.public-trip-stay__card p{color:var(--color-muted);font-size:var(--text-sm)}.public-trip-stay__card small{color:var(--color-muted);font-size:var(--text-xs)}.public-trip-days{display:grid;grid-gap:var(--space-xs);gap:var(--space-xs)}.public-trip-day{overflow:hidden;border:var(--rule-hair) solid var(--color-line);border-radius:var(--radius-card);background:var(--color-paper-2);box-shadow:var(--shadow-sm)}.public-trip-day>summary{min-width:0;min-height:var(--space-2xl);display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:var(--space-xs);gap:var(--space-xs);align-items:center;padding:var(--space-sm);cursor:pointer;list-style:none}.public-trip-day>summary::-webkit-details-marker{display:none}.public-trip-day>summary:focus-visible{outline:var(--rule-fine) solid var(--color-focus);outline-offset:-2px}.public-trip-day>summary:active{background:var(--color-paper)}.public-trip-day>summary>span{display:grid;place-items:center;min-width:3.25rem;min-height:44px;padding-inline:var(--space-2xs);border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-focus);font-size:var(--text-xs);font-weight:900;white-space:nowrap}.public-trip-day>summary>div{min-width:0;display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs)}.public-trip-day>summary strong{overflow:hidden;text-overflow:ellipsis;font-size:var(--text-sm);white-space:nowrap}.public-trip-day>summary small{color:var(--color-muted);font-size:var(--text-xs)}.public-trip-day>summary>b{display:grid;place-items:center;width:44px;height:44px;font-size:var(--text-lg);font-weight:500;transition:transform var(--duration-fast) var(--ease-out)}.public-trip-day[open]>summary>b{transform:rotate(45deg)}.public-trip-day__items{padding:0 var(--space-sm) var(--space-sm);border-top:var(--rule-hair) solid var(--color-line)}.public-trip-day__items article{min-width:0;display:grid;grid-template-columns:2.5rem 2.75rem minmax(0,1fr);grid-gap:var(--space-2xs);gap:var(--space-2xs);align-items:center;padding-block:var(--space-xs);border-bottom:var(--rule-hair) solid var(--color-line)}.public-trip-day__items article:last-child{border-bottom:0}.public-trip-day__items time{color:var(--color-muted);font-size:var(--text-xs);font-weight:800}.public-trip-day__items img{width:2.75rem;height:2.75rem;object-fit:cover;border-radius:var(--radius-sm);background:var(--color-paper-3)}.public-trip-day__items article>div{min-width:0;display:grid;grid-gap:var(--space-3xs);gap:var(--space-3xs)}.public-trip-day__items article>div strong{overflow:hidden;text-overflow:ellipsis;font-size:var(--text-sm);white-space:nowrap}.public-trip-day__items article p,.public-trip-day__items article small{color:var(--color-muted);font-size:var(--text-xs)}.public-trip-day__items article>b{grid-column:3;font-size:var(--text-xs)}.public-trip-total{display:grid;grid-gap:var(--space-md);gap:var(--space-md);margin-top:var(--space-lg);padding:var(--space-md);border-radius:var(--radius-card);background:var(--color-ink);color:var(--color-paper-2)}.public-trip-total>div:first-child>strong{display:block;font:900 clamp(1.6rem,7vw,2.5rem)/1 var(--font-display);letter-spacing:-.04em}.public-trip-total>div:first-child>p,.public-trip-total>small{color:var(--color-paper-3);font-size:var(--text-xs)}.public-trip-total>div:nth-child(2){display:flex;flex-wrap:wrap;gap:var(--space-2xs)}.public-trip-total .public-trip-copy{border-color:var(--color-rule-2);background:var(--color-ink-2);color:var(--color-paper-2)}.public-trip-total .button{flex:1 1 auto}.public-trip-total>small{grid-column:1/-1}@media (hover:hover) and (pointer:fine){.public-trip-day>summary:hover{background:var(--color-paper)}}@media (min-width:40rem){.public-trip-header{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);padding-inline:var(--space-lg)}.public-trip-header__label{display:block}.public-trip-header .public-trip-create{display:inline-flex}.public-trip-overview{padding:var(--space-xl) var(--space-lg) var(--space-3xl)}.public-trip-hero__content{padding-top:var(--space-lg)}.public-trip-route>.route-line:nth-last-child(2),.public-trip-route>div:last-child{display:grid}.public-trip-gallery{grid-template-columns:minmax(0,1fr) 8rem;min-height:18rem;gap:var(--space-xs)}.public-trip-stay__card{grid-template-columns:minmax(13rem,.7fr) minmax(0,1.3fr)}.public-trip-stay__card>img{height:100%;min-height:16rem;aspect-ratio:auto}.public-trip-day__items article{grid-template-columns:3rem 3.25rem minmax(0,1fr) auto;gap:var(--space-xs)}.public-trip-day__items img{width:3.25rem;height:3.25rem}.public-trip-day__items article>b{grid-column:auto;white-space:nowrap}.public-trip-total{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:var(--space-lg)}}@media (min-width:60rem){.public-trip-hero>img{height:min(35vw,22rem);border-radius:var(--radius-lg)}.public-trip-hero__content{padding-inline:var(--space-xl)}}@media (prefers-reduced-motion:reduce){.public-trip-day>summary>b{transition:none}}@media (max-width:1024px){.chat-shell--checklist{min-height:auto;display:flex;flex-direction:column}.chat-shell--checklist>.checklist-workbench{display:none}.chat-shell--checklist>.planner-chat{order:1}.checklist-workbench--mobile-open{max-height:min(76dvh,40rem);overflow-y:auto}.checklist-workbench__content{min-width:0}.planner-chat{height:auto;min-height:calc(100dvh - var(--topbar));padding-bottom:max(var(--space-xs),env(safe-area-inset-bottom))}.planner-chat:has(.planner-messages--empty){grid-template-rows:auto;align-content:start}.planner-messages{min-height:0;max-height:min(46dvh,28rem);overflow-y:auto}.planner-messages--empty{display:none}.planner-messages--empty:has(.message--typing){display:block;min-height:var(--space-xl)}.planner-composer{position:-webkit-sticky;position:sticky;bottom:0;z-index:var(--z-raised);margin-top:var(--space-xs);background:color-mix(in srgb,var(--color-paper-2) 94%,transparent);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.planner-composer,.planner-legal{padding-bottom:max(var(--space-2xs),env(safe-area-inset-bottom))}.destination-discovery{height:auto}.destination-discovery,.destination-discovery__body{min-height:0;display:block;overflow:visible}.destination-discovery__media-column{min-height:0;overflow:visible}.destination-media-feed{height:auto;overflow:visible;overscroll-behavior:auto}.chat-shell--checklist .mock-map,.destination-discovery__map-column,.destination-map{display:none}.destination-discovery__footer{display:grid;grid-gap:var(--space-sm);gap:var(--space-sm)}.destination-discovery__footer .button{width:100%}}@media (max-width:820px){.hero{min-height:calc(100dvh - var(--topbar));padding:var(--space-md) var(--space-sm) calc(var(--space-xl) + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr);align-content:start;gap:var(--space-lg)}.hero__visual-shell{grid-column:1;grid-row:1;width:min(100%,360px);margin:0 auto;transform:none}.hero__content{grid-column:1;grid-row:2;max-width:none}.hero h1{max-width:18ch}.hero h1,.hero__lede{width:auto;margin-inline:auto;text-align:center}.hero__lede{white-space:normal}.itinerary-shell{display:block;min-height:calc(100dvh - var(--topbar))}.itinerary-shell .trip-sidebar{display:none}.itinerary-workspace{min-height:calc(100dvh - var(--topbar));padding-bottom:calc(5rem + env(safe-area-inset-bottom))}.itinerary-actions,.itinerary-workspace .workspace__body,.itinerary-workspace .workspace__head{min-width:0}.itinerary-actions{position:-webkit-sticky;position:sticky;bottom:0;z-index:var(--z-raised);padding-bottom:max(var(--space-xs),env(safe-area-inset-bottom))}.itinerary-actions__buttons{width:100%}.itinerary-actions__buttons .button,.itinerary-actions__buttons>*{flex:1 1;min-width:0}.full-map{height:auto;min-height:0;grid-template-columns:minmax(0,1fr)}.full-map__side{min-width:0}.full-map .mock-map{min-height:min(68dvh,32rem)}.mobile-product-nav{position:fixed;right:10px;bottom:max(10px,env(safe-area-inset-bottom));left:10px;z-index:350;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:5px;border-radius:999px;background:var(--color-ink);box-shadow:var(--shadow-lg)}.mobile-product-nav a{min-height:42px;display:grid;place-items:center;border-radius:999px;color:var(--color-paper-2);font-size:10px;font-weight:800;white-space:nowrap}.mobile-product-nav a.active{background:var(--color-accent);color:var(--color-ink)}}@media (max-width:580px){.prompt{width:100%;max-width:none;padding:var(--space-xs);border-radius:var(--radius-card)}.prompt textarea{min-height:88px;padding:var(--space-2xs) var(--space-xs);font-size:var(--text-sm)}.prompt__footer{min-height:44px}.attachment,.send-button{width:44px;height:44px}.float-card{display:none}.account-menu>summary{position:relative;z-index:var(--z-nav)}.account-menu[open]:before{content:"";position:fixed;inset:0;z-index:calc(var(--z-nav) - 1);background:color-mix(in srgb,var(--color-ink) 42%,transparent)}.account-menu__panel{position:fixed;top:auto;right:0;bottom:0;left:0;z-index:var(--z-nav);width:100%;max-width:none;max-height:min(72dvh,34rem);overflow-y:auto;border-radius:var(--radius-card) var(--radius-card) 0 0;padding-bottom:max(var(--space-2xs),env(safe-area-inset-bottom))}.public-trip-overview{padding-bottom:calc(var(--space-2xl) + env(safe-area-inset-bottom))}.public-trip-total{margin-bottom:env(safe-area-inset-bottom)}.public-trip-total>div:nth-child(2){display:grid;grid-template-columns:minmax(0,1fr)}.public-trip-total .button{width:100%}.download-menu__panel{right:0;left:auto;width:17rem;max-width:calc(100% - var(--space-md))}}@media (max-width:414px){.prompt-chips{width:100%;display:grid;grid-template-columns:minmax(0,1fr);grid-gap:var(--space-2xs);gap:var(--space-2xs);margin-top:var(--space-sm)}.prompt-chips button{width:100%;min-width:0;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}}@media (max-width:30rem){.hotel-search-page .search-nav{grid-template-columns:44px minmax(0,1fr)}.hotel-search-page .hotel-search-layout,.hotel-search-page .result-toolbar,.hotel-search-page .search-query{width:calc(100% - var(--space-md))}.hotel-search-page .result-toolbar__controls{overflow-x:auto}.hotel-search-page .hotel-result__title{align-items:flex-start}.hotel-search-page .hotel-result__content,.hotel-search-page .hotel-result__identity{min-width:0}.hotel-search-page .hotel-result__price .button{width:100%;min-height:44px}}