@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;1,500&family=Inter:wght@300;400;500;600&display=swap');
:root{--bg:#070706;--panel:rgba(17,16,13,.82);--line:rgba(222,170,84,.22);--gold:#d8a857;--gold2:#f0c47c;--text:#f4efe5;--muted:#a69e90;--green:#72d29a}
*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:Inter,system-ui;background:radial-gradient(circle at 50% -10%,#302112 0,transparent 32%),var(--bg);min-height:100vh}.ambient{position:fixed;inset:-20%;pointer-events:none;background:radial-gradient(circle at 25% 15%,rgba(223,151,56,.11),transparent 24%),radial-gradient(circle at 78% 40%,rgba(45,105,117,.08),transparent 30%);animation:breathe 12s ease-in-out infinite alternate}.app-shell{width:min(1600px,100%);margin:auto;padding:18px 18px 110px}.topbar{height:70px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20;background:linear-gradient(#070706 70%,transparent);backdrop-filter:blur(8px)}button{font:inherit;color:inherit}.brand{border:0;background:none;display:flex;align-items:center;gap:12px;color:#fff;cursor:pointer}.brand .palm{color:var(--gold);font-size:27px}.brand b{font-family:"Cormorant Garamond";font-size:25px;letter-spacing:.23em}.brand small{display:block;color:var(--gold);letter-spacing:.38em;font-size:9px}.top-actions{display:flex;gap:10px}.icon-btn,.avatar{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.03);cursor:pointer}.avatar{font-size:12px}.glass{background:linear-gradient(145deg,rgba(20,19,16,.88),rgba(8,8,7,.92));border:1px solid var(--line);box-shadow:0 20px 60px rgba(0,0,0,.32);backdrop-filter:blur(18px);border-radius:22px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr 1.28fr .78fr;gap:14px}.hero-card{position:relative;min-height:620px;grid-row:span 2}.hero-card>img,.destination>img,.book>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade,.destination-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,4,.92),rgba(5,5,4,.2) 62%,rgba(5,5,4,.5)),linear-gradient(0deg,rgba(5,5,4,.85),transparent 55%)}.hero-copy{position:absolute;left:38px;right:30px;bottom:38px;z-index:2}.eyebrow,.panel-head>span,.page-title>span,.destination-copy>span{font-size:11px;letter-spacing:.22em;color:var(--gold2)}h1,h2,h3{font-family:"Cormorant Garamond",serif;font-weight:500}.hero-copy h1{font-size:68px;line-height:.88;margin:16px 0}.hero-copy h1 em{color:#f3dfbf}.hero-copy p{font-size:18px}.signature{font-family:"Cormorant Garamond",serif;font-style:italic;color:var(--gold2);font-size:40px;margin:22px 0}.primary,.secondary{border:1px solid rgba(225,171,80,.55);background:rgba(218,165,78,.12);border-radius:999px;padding:13px 18px;cursor:pointer}.primary span{margin-left:20px}.countdown-card{position:absolute;right:20px;top:20px;z-index:3;display:grid;grid-template-columns:1.2fr 1fr 1fr;background:rgba(5,5,4,.62);border:1px solid var(--line);border-radius:16px;backdrop-filter:blur(16px);overflow:hidden}.countdown-card>*{padding:13px 16px;border-left:1px solid var(--line)}.countdown-card strong{font:500 34px "Cormorant Garamond";color:var(--gold2)}.countdown-card span,.countdown-card small{display:block;font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.15em}.countdown-card b{font-size:18px}.globe-card{min-height:420px;padding:18px}.panel-head{display:flex;align-items:center;justify-content:space-between;color:var(--gold);font-size:11px;letter-spacing:.12em}.panel-head i{font-style:normal;color:var(--green);font-size:9px}.panel-head button{border:0;background:none;color:var(--gold);font-size:10px;cursor:pointer}.globe{height:300px;position:relative;overflow:hidden}.earth{position:absolute;width:420px;height:420px;left:50%;top:38%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 73% 24%,#fff8da 0 1%,#f0a73a 2%,transparent 8%),radial-gradient(circle at 34% 36%,#714f2a 0 1%,transparent 1.6%),radial-gradient(circle at 56% 57%,#8a6633 0 1%,transparent 1.5%),radial-gradient(circle at 60% 35%,#243645,#071019 65%);box-shadow:inset -55px -20px 80px #000,0 0 60px rgba(227,161,65,.22);animation:float 9s ease-in-out infinite}.globe svg{position:absolute;inset:0;width:100%;height:100%}.route{fill:none;stroke:var(--gold2);stroke-width:2;stroke-dasharray:9 9;filter:drop-shadow(0 0 5px var(--gold));animation:dash 7s linear infinite}.dot{fill:#fff2cf;stroke:var(--gold);stroke-width:4}.route-label{position:absolute;padding:8px 10px;border:1px solid var(--line);background:rgba(8,8,7,.72);border-radius:10px;color:var(--gold2)}.route-label small{display:block;color:#ddd;font-size:9px}.route-label.start{left:12%;top:42%}.route-label.end{right:10%;bottom:15%}.flight-strip{display:grid;grid-template-columns:1.3fr 1fr auto;gap:10px;align-items:center;background:rgba(255,255,255,.03);border:1px solid var(--line);padding:12px;border-radius:15px}.flight-strip span{color:var(--gold);font-size:9px}.flight-strip b,.flight-strip small{display:block}.flight-strip small{color:var(--muted);font-size:10px}.flight-strip button{border:1px solid var(--line);background:none;border-radius:999px;padding:9px 12px;color:var(--gold2)}.concierge-card{padding:20px;min-height:420px}.concierge-card h2{font-size:31px;margin:25px 0 5px}.concierge-card>p{color:var(--muted);font-size:13px;margin-bottom:18px}.insight{width:100%;display:flex;align-items:center;gap:12px;text-align:left;border:1px solid var(--line);background:rgba(255,255,255,.025);padding:13px;border-radius:14px;margin:9px 0;cursor:pointer}.insight>span{color:var(--gold);font-size:23px}.insight div{flex:1}.insight b,.insight small{display:block}.insight small{color:var(--muted);margin-top:4px}.insight i{color:var(--gold)}.ask,.chat form{display:flex;gap:8px;margin-top:14px}.ask input,.chat input{flex:1;background:#0c0c0b;border:1px solid var(--line);border-radius:999px;padding:13px 15px;color:white}.ask button,.chat form button{border:1px solid var(--line);background:var(--gold);color:#17120b;border-radius:999px;padding:0 15px}.destination{height:200px;position:relative;margin-top:14px;margin-left:calc(33.33% + 5px);width:calc(66.67% - 5px)}.destination-copy{position:absolute;z-index:2;left:28px;bottom:30px}.destination-copy h2{font-size:42px;margin:4px 0}.destination-copy p{margin:0;color:#ddd}.weather{position:absolute;z-index:2;right:25px;bottom:25px;display:grid;grid-template-columns:auto auto;gap:6px 15px}.weather b{color:var(--gold2);font-size:20px}.weather small{color:#ddd}.lower-grid{display:grid;grid-template-columns:1.2fr 1.3fr .8fr;gap:14px;margin-top:14px}.timeline-preview,.memory-preview,.budget-preview{min-height:270px;padding:20px}.timeline-row{display:grid;grid-template-columns:50px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.timeline-row time{color:var(--gold2);font-family:"Cormorant Garamond";font-size:20px}.timeline-row b,.timeline-row small{display:block}.timeline-row small{color:var(--muted)}.memory-preview{background:linear-gradient(90deg,rgba(9,9,8,.96),rgba(9,9,8,.45)),url('assets/hero-device.png') center/cover}.memory-preview h2{font-size:38px;margin:40px 0 5px}.memory-preview p{color:#c3baa9}.budget-ring{width:130px;height:130px;border-radius:50%;margin:28px auto 18px;background:conic-gradient(var(--gold) 0 38%,#6c9aaa 38% 67%,#efe0bd 67% 83%,#533c2b 83%);display:grid;place-items:center}.budget-ring:before{content:"";width:88px;height:88px;background:#0b0b0a;border-radius:50%;position:absolute}.budget-ring span{position:relative;text-align:center;font-size:10px}.budget-ring b{font-size:15px}.budget-meta{display:flex;justify-content:space-between}.budget-meta small,.budget-meta b{display:block}.budget-meta b{color:var(--green)}.view{display:none;animation:fade .45s ease}.view.active{display:block}.page-title{padding:55px 10px 28px}.page-title h1{font-size:64px;margin:8px 0}.page-title p{color:var(--muted)}.journey-layout{display:grid;grid-template-columns:1fr 320px;gap:16px}.timeline-full,.trip-summary,.chat{padding:24px}.timeline-event{display:grid;grid-template-columns:110px 34px 1fr;gap:18px;padding:20px 0}.timeline-event .rail{position:relative}.timeline-event .rail:before{content:"";position:absolute;left:50%;top:0;bottom:-22px;width:1px;background:var(--line)}.timeline-event .rail:after{content:"";position:absolute;left:50%;top:7px;width:9px;height:9px;background:var(--gold);border-radius:50%;transform:translateX(-50%);box-shadow:0 0 12px var(--gold)}.timeline-event time{color:var(--gold2)}.timeline-event h3{font-size:28px;margin:0}.timeline-event p{color:var(--muted)}.trip-summary{height:max-content;position:sticky;top:90px}.progress{height:7px;background:#231d15;border-radius:999px;overflow:hidden;margin:18px 0 8px}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold2))}.trip-summary ul{padding:0;list-style:none;line-height:2.2;color:#c9c0b2}.book{min-height:560px;position:relative;display:grid;grid-template-columns:1.2fr 1fr}.book>img{position:relative}.book>div{padding:70px 55px}.book h2{font-size:62px;margin:10px 0}.book p{color:var(--muted)}.chat{max-width:900px;margin:auto;min-height:550px;display:flex;flex-direction:column}.chat #messages{flex:1}.message{max-width:72%;padding:15px 18px;border-radius:18px;margin:10px 0;line-height:1.5}.message.assistant{background:#15130f;border:1px solid var(--line)}.message.user{background:#3a2a15;margin-left:auto}.vault-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.vault-item{padding:28px}.vault-item span{font-size:30px;color:var(--gold)}.vault-item h3{font-size:28px;margin:18px 0 4px}.vault-item p{color:var(--muted)}.bottom-nav{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:50;width:min(760px,calc(100% - 24px));height:72px;display:grid;grid-template-columns:repeat(5,1fr);padding:8px 14px;border-radius:28px}.bottom-nav button{border:0;background:none;color:#777;display:grid;place-items:center;gap:3px;cursor:pointer}.bottom-nav button span{font-size:10px}.bottom-nav button.active{color:var(--gold2)}.bottom-nav .center{width:58px;height:58px;justify-self:center;border-radius:50%;background:radial-gradient(circle,#f3c374,#a16b21);color:#171008;font-size:24px;box-shadow:0 0 22px rgba(224,165,73,.45)}#toast{position:fixed;left:50%;bottom:105px;transform:translate(-50%,20px);opacity:0;background:#17140f;border:1px solid var(--line);padding:12px 18px;border-radius:999px;z-index:60;transition:.25s}#toast.show{opacity:1;transform:translate(-50%,0)}
@keyframes dash{to{stroke-dashoffset:-180}}@keyframes float{50%{transform:translate(-50%,-52%) scale(1.015)}}@keyframes breathe{to{transform:scale(1.04)}}@keyframes fade{from{opacity:0;transform:translateY(8px)}}
@media(max-width:1100px){.hero-grid{grid-template-columns:1fr 1fr}.hero-card{grid-row:auto}.concierge-card{grid-column:span 2}.destination{margin-left:0;width:100%}.lower-grid{grid-template-columns:1fr 1fr}.budget-preview{grid-column:span 2}.journey-layout{grid-template-columns:1fr}.trip-summary{position:static}.vault-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.app-shell{padding:8px 8px 100px}.topbar{height:58px}.hero-grid,.lower-grid{display:block}.hero-card,.globe-card,.concierge-card,.timeline-preview,.memory-preview,.budget-preview{margin-bottom:10px}.hero-card{min-height:680px}.hero-copy{left:22px;bottom:30px}.hero-copy h1{font-size:58px}.countdown-card{top:auto;right:12px;left:12px;bottom:150px}.countdown-card>*{padding:10px}.globe{height:270px}.destination{height:360px}.destination-copy h2{font-size:38px}.weather{left:28px;right:auto;bottom:22px;transform:translateY(82px)}.page-title h1{font-size:48px}.timeline-event{grid-template-columns:76px 20px 1fr}.book{display:block}.book>img{height:330px}.book>div{padding:35px 25px}.book h2{font-size:48px}.vault-grid{grid-template-columns:1fr}.bottom-nav{height:66px}.bottom-nav .center{width:52px;height:52px}.brand b{font-size:20px}.brand small{font-size:7px}.flight-strip{grid-template-columns:1fr 1fr}.flight-strip button{grid-column:span 2}.signature{font-size:34px}}
