:root{--navy:#0b2340;--navy2:#15385e;--red:#b3263e;--red2:#d14659;--gold:#d5ae5e;--blue:#2c7da0;--sky:#dbeef4;--cream:#faf7ef;--paper:#fffdf9;--ink:#142638;--muted:#62717e;--line:#d9e0e5;--white:#fff;--shadow:0 18px 50px rgba(11,35,64,.13);--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:18px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.55}button,input,select,textarea{font:inherit;color:inherit}button,a{touch-action:manipulation}a{color:inherit}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.eyebrow{margin:0 0 9px;font-size:.74rem;letter-spacing:.15em;font-weight:900;color:var(--red)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 20px;border:0;border-radius:12px;text-decoration:none;font-weight:850;cursor:pointer}.primary{background:var(--red);color:#fff;box-shadow:0 8px 20px rgba(179,38,62,.23)}.ghost{border:1px solid rgba(255,255,255,.65);color:#fff;background:rgba(255,255,255,.08)}.navy{background:var(--navy);color:#fff}.outline{border:1px solid var(--line);background:#fff;color:var(--navy)}.text-button{border:0;background:none;color:var(--red);font-weight:850;cursor:pointer;text-decoration:none;padding:8px}
.hero{min-height:720px;position:relative;overflow:hidden;background:radial-gradient(circle at 80% 25%,rgba(54,136,172,.75),transparent 35%),linear-gradient(120deg,#081b33 0%,#0b2c50 58%,#183d61 100%);color:#fff;padding:0 6vw 120px}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(to bottom,black,transparent)}.topbar{position:relative;z-index:4;max-width:1180px;margin:auto;padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{text-decoration:none;font-weight:950;letter-spacing:.12em}.brand span{color:var(--gold)}.official-pill{font-size:.82rem;text-decoration:none;border:1px solid rgba(255,255,255,.35);padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.07)}.hero-copy{position:relative;z-index:3;max-width:1180px;margin:100px auto 0}.hero-copy .eyebrow{color:#dceef6}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3.4rem,9vw,7.7rem);line-height:.88;letter-spacing:-.045em;margin:0;max-width:900px}.hero h1 em{display:block;color:var(--gold);font-weight:400}.hero-lede{max-width:650px;font-size:clamp(1rem,2.2vw,1.3rem);margin:30px 0;color:#edf5f8}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-art{position:absolute;right:3vw;bottom:95px;width:min(43vw,580px);height:410px;opacity:.5}.monument{position:absolute;bottom:0;left:50%;width:23px;height:330px;background:linear-gradient(#fff,#d5e8ef);clip-path:polygon(50% 0,100% 8%,75% 100%,25% 100%,0 8%)}.monument:after{content:"";position:absolute;bottom:-10px;left:-90px;width:205px;height:20px;border-radius:50%;background:#d5e8ef}.pulse{position:absolute;bottom:120px;left:0;width:100%;height:100px;background:linear-gradient(90deg,transparent 2%,#fff 2% 7%,transparent 7% 26%,#fff 26% 30%,transparent 30%);clip-path:polygon(0 50%,25% 50%,31% 35%,38% 69%,45% 8%,52% 90%,59% 50%,100% 50%,100% 54%,58% 54%,52% 100%,45% 19%,38% 78%,30% 44%,26% 54%,0 54%)}.memorial-star{position:absolute;right:20px;top:40px;color:var(--gold);font-size:7rem}.hero-wave{position:absolute;bottom:-58px;left:-5%;width:110%;height:120px;background:var(--paper);border-radius:50% 50% 0 0}
.quick-facts{position:relative;z-index:5;max-width:1040px;margin:-60px auto 35px;padding:0 18px;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}.quick-facts article{background:#fff;padding:25px 16px;text-align:center}.quick-facts strong{display:block;color:var(--navy);font:800 1.7rem Georgia,serif}.quick-facts span{display:block;color:var(--muted);font-size:.82rem;margin-top:4px}
.section{max-width:1180px;margin:auto;padding:82px 6vw}.tint{max-width:none;background:var(--cream);padding-left:max(6vw,calc((100vw - 1180px)/2 + 6vw));padding-right:max(6vw,calc((100vw - 1180px)/2 + 6vw))}.section-heading{max-width:770px;margin-bottom:34px}.section-heading h2{font:800 clamp(2.15rem,5vw,4rem)/1.03 Georgia,serif;letter-spacing:-.03em;margin:0 0 12px;color:var(--navy)}.section-heading>p:last-child{color:var(--muted);font-size:1.03rem;margin:0}
.match-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:22px}.match-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.match-options button{min-height:150px;padding:20px;text-align:left;border:1px solid var(--line);border-radius:18px;background:#fff;cursor:pointer;transition:.2s}.match-options button:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.match-options button[aria-pressed=true]{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 10px 30px rgba(11,35,64,.23)}.match-options span,.match-options strong,.match-options small{display:block}.match-options span{font-size:1.65rem;margin-bottom:18px}.match-options strong{font-size:1rem}.match-options small{margin-top:5px;color:var(--muted)}.match-options button[aria-pressed=true] small{color:#d8e4ec}.match-result{border-radius:22px;background:linear-gradient(145deg,var(--navy),var(--navy2));color:#fff;padding:30px;align-self:stretch}.match-result .eyebrow{color:var(--gold)}.match-result h3{font:700 2rem/1.08 Georgia,serif;margin:0 0 13px}.match-result p{color:#d8e6ed}.match-result .button{margin-top:10px}
.day-tabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}.day-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:11px 18px;white-space:nowrap;font-weight:800;cursor:pointer}.day-tabs button[aria-selected=true]{background:var(--red);color:#fff;border-color:var(--red)}.day-panel{margin-top:20px;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;display:grid;grid-template-columns:.36fr .64fr}.day-summary{background:var(--navy);color:#fff;padding:34px}.day-summary .eyebrow{color:var(--gold)}.day-summary h3{font:700 2.2rem/1.05 Georgia,serif;margin:0 0 10px}.day-summary p{color:#d9e5eb}.timeline{padding:25px 34px}.timeline-row{display:grid;grid-template-columns:95px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}.timeline-row:last-child{border-bottom:0}.timeline-row time{font-size:.85rem;font-weight:900;color:var(--red)}.timeline-row strong,.timeline-row span{display:block}.timeline-row span{font-size:.9rem;color:var(--muted);margin-top:3px}.timeline-row .event-tag{display:inline-block;width:max-content;font-size:.68rem;letter-spacing:.08em;color:#fff;background:var(--red);border-radius:999px;padding:3px 7px;margin-bottom:4px}
.honor-section{max-width:none;background:linear-gradient(145deg,#081b33,#0c2d50);color:#fff;padding-left:max(6vw,calc((100vw - 1180px)/2 + 6vw));padding-right:max(6vw,calc((100vw - 1180px)/2 + 6vw))}.light-heading h2{color:#fff}.light-heading>p:last-child{color:#d7e3e9}.honor-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.honor-card{border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:26px;background:rgba(255,255,255,.06)}.honor-card.featured{background:#fff;color:var(--ink)}.card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.72rem;font-weight:900;letter-spacing:.06em}.badge{padding:5px 9px;border-radius:999px}.badge.public{background:#dff2e6;color:#185c35}.badge.restricted{background:#f9e5e8;color:#8f1f31}.honor-card h3{font:700 1.7rem/1.08 Georgia,serif;margin:18px 0 10px}.honor-card p,.honor-card li{font-size:.92rem}.honor-card:not(.featured) p,.honor-card:not(.featured) li{color:#dce7ed}.honor-card ul{padding-left:20px}.honor-card a{display:inline-block;margin-top:8px;color:var(--gold);font-weight:850}.honor-card.featured a{color:var(--red)}.soft-note{padding-top:12px;border-top:1px solid currentColor;opacity:.8}.care-banner{margin-top:20px;display:flex;gap:18px;align-items:flex-start;background:var(--gold);color:#1e2a35;border-radius:18px;padding:23px}.care-banner>span{font-size:2rem}.care-banner strong{font-size:1.05rem}.care-banner p{margin:4px 0 0}
.stay-card{display:grid;grid-template-columns:.42fr .58fr;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.stay-visual{min-height:370px;padding:36px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:linear-gradient(160deg,rgba(11,35,64,.12),rgba(11,35,64,.92)),linear-gradient(135deg,#58a6c4,#132f50);position:relative}.stay-visual:before{content:"M";position:absolute;top:20px;right:25px;font:800 9rem Georgia,serif;color:rgba(255,255,255,.08)}.stay-visual span{font-size:.74rem;letter-spacing:.14em;font-weight:900;color:var(--gold)}.stay-visual strong{font:700 1.65rem/1.2 Georgia,serif;margin-top:10px}.stay-visual small{margin-top:16px;color:#dbe8ee}.stay-copy{background:#fff;padding:28px}.fact-row{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--line)}.fact-row span{color:var(--muted)}.fact-row strong{text-align:right}.link-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.route-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.route-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 8px 30px rgba(11,35,64,.08)}.route-map{height:160px;position:relative;background:linear-gradient(135deg,#d9edf3,#a9cbd8);overflow:hidden}.route-map:before,.route-map:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(11,35,64,.18)}.route-map:before{width:230px;height:230px;top:-130px;right:-40px}.route-map:after{width:160px;height:160px;bottom:-90px;left:-25px}.route-map.calm{background:linear-gradient(135deg,#e5efe1,#b7d6be)}.route-map.mall{background:linear-gradient(135deg,#efe5cf,#d6bd88)}.route-map.airport{background:linear-gradient(135deg,#e4e1ef,#c6bddc)}.route-map i{position:absolute;left:23%;right:23%;top:52%;border-top:3px dashed var(--navy);transform:rotate(-8deg)}.pin{position:absolute;z-index:2;background:var(--navy);color:#fff;padding:6px 9px;border-radius:8px;font-size:.68rem;font-weight:900}.pin:after{content:"";position:absolute;left:50%;bottom:-6px;border:6px solid transparent;border-top-color:var(--navy);border-bottom:0;transform:translateX(-50%)}.p1{left:12%;top:63%}.p2{right:10%;top:28%}.route-body{padding:25px}.route-body h3{font:700 1.65rem/1.1 Georgia,serif;margin:0 0 10px;color:var(--navy)}.route-body>p:not(.eyebrow):not(.restroom){color:var(--muted)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chips span{background:var(--cream);border:1px solid #eadfc7;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:800}.restroom{background:#eef6f8;border-radius:10px;padding:10px;font-size:.82rem}.route-body a{font-weight:850;color:var(--red)}
.place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.place-card{min-height:365px;border-radius:20px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 8px 26px rgba(11,35,64,.08);display:flex;flex-direction:column}.place-visual{height:145px;padding:18px;display:flex;align-items:flex-start;justify-content:space-between;color:#fff;background:linear-gradient(135deg,var(--navy2),var(--blue));position:relative;overflow:hidden}.place-visual:after{content:"";position:absolute;width:160px;height:160px;border:26px solid rgba(255,255,255,.08);border-radius:50%;right:-55px;bottom:-85px}.place-visual.food{background:linear-gradient(135deg,#8f2135,#d15b56)}.place-visual .area{font-size:.7rem;font-weight:900;letter-spacing:.08em;background:rgba(0,0,0,.24);border-radius:999px;padding:6px 9px}.place-visual .price{font-weight:950;letter-spacing:.06em;color:#fff}.place-body{padding:20px;display:flex;flex-direction:column;flex:1}.place-body h3{font:700 1.35rem/1.1 Georgia,serif;margin:0 0 7px;color:var(--navy)}.place-body p{font-size:.87rem;color:var(--muted);margin:0 0 12px}.place-meta{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:14px}.place-meta span{font-size:.7rem;background:#eef4f6;border-radius:6px;padding:5px 7px}.place-actions{display:flex;gap:8px;margin-top:auto}.place-actions a{flex:1;text-align:center;text-decoration:none;font-size:.78rem;font-weight:850;border:1px solid var(--line);border-radius:9px;padding:9px}.place-actions a:first-child{background:var(--navy);color:#fff;border-color:var(--navy)}.visited-button{width:100%;margin-top:9px;border:0;background:#eef6f8;color:var(--navy);border-radius:9px;padding:9px;font-weight:850;cursor:pointer}.food-filter{display:flex;gap:8px;overflow-x:auto;margin-bottom:20px;scrollbar-width:none}.food-filter button{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 13px;font-weight:800;cursor:pointer}.food-filter button.active{background:var(--red);color:#fff;border-color:var(--red)}
.budget-section{background:#fff}.budget-layout{display:grid;grid-template-columns:290px 1fr;gap:35px}.budget-summary{grid-row:1/5}.budget-ring{width:250px;height:250px;margin:0 auto 25px;border-radius:50%;background:conic-gradient(var(--blue) 0%,var(--line) 0);display:grid;place-items:center;position:relative}.budget-ring:after{content:"";position:absolute;inset:20px;background:#fff;border-radius:50%}.budget-ring>div{position:relative;z-index:1;text-align:center}.budget-ring small,.budget-ring span,.budget-ring strong{display:block}.budget-ring strong{font:700 2.5rem Georgia,serif;color:var(--navy)}.budget-ring span{font-size:.8rem;color:var(--muted)}label{font-size:.8rem;font-weight:850}.budget-summary input,.expense-form input,.expense-form select,.expense-tools select,.review-card input,.review-card select,.review-card textarea{display:block;width:100%;margin-top:6px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:11px}.expense-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}.expense-form .button{grid-column:1/-1}.expense-tools{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-top:18px}.expense-list{grid-column:2;list-style:none;margin:0;padding:0}.expense-list li{display:grid;grid-template-columns:1fr auto;gap:10px;border-bottom:1px solid var(--line);padding:12px 0}.expense-list small,.expense-list span{display:block;color:var(--muted)}.expense-list button{border:0;background:none;color:var(--red);cursor:pointer}
.review-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;box-shadow:var(--shadow)}.review-fields,.cost-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.rating-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:24px 0}.rating-row{border:1px solid var(--line);border-radius:12px;padding:11px;text-align:center}.rating-row strong{display:block;font-size:.77rem;margin-bottom:5px}.stars{display:flex;justify-content:center}.stars button{border:0;background:none;color:#c8cdd1;padding:2px;font-size:1.25rem;cursor:pointer}.stars button.on{color:var(--gold)}.cost-grid{grid-template-columns:repeat(4,1fr);align-items:end;margin:20px 0}.review-total{background:var(--navy);color:#fff;border-radius:10px;padding:11px}.review-total span,.review-total strong{display:block}.review-total strong{font-size:1.3rem}.review-card textarea{resize:vertical}.photo-upload{display:block;margin-top:18px}.photo-upload input{position:absolute;opacity:0;pointer-events:none}.photo-upload span{display:block;margin-top:7px;border:2px dashed var(--line);border-radius:12px;padding:20px;text-align:center;color:var(--red);cursor:pointer}.photo-preview{display:flex;gap:8px;overflow-x:auto;margin-top:10px}.photo-preview img{width:92px;height:92px;border-radius:10px;object-fit:cover}.consent-box{display:grid;gap:8px;background:var(--cream);border-radius:12px;padding:17px;margin:18px 0}.consent-box label,.budget-check{font-weight:650}.consent-box input,.budget-check input{display:inline;width:auto;margin:0 7px 0 0}.budget-check{display:block;margin-bottom:18px}.form-note{color:var(--muted);font-size:.84rem}.saved-reviews{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:20px}.saved-review{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.saved-review h3{font:700 1.2rem Georgia,serif;margin:0}.saved-review p{font-size:.85rem;color:var(--muted)}.saved-review .review-stars{color:var(--gold)}
.challenge-section{background:linear-gradient(135deg,#f6efe0,#e9f3f5);max-width:none;padding-left:max(6vw,calc((100vw - 1180px)/2 + 6vw));padding-right:max(6vw,calc((100vw - 1180px)/2 + 6vw))}.challenge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.challenge-grid button{min-height:135px;text-align:left;border:1px solid rgba(11,35,64,.12);border-radius:16px;padding:18px;background:rgba(255,255,255,.8);cursor:pointer}.challenge-grid button[aria-pressed=true]{background:var(--navy);color:#fff}.challenge-grid span,.challenge-grid strong{display:block}.challenge-grid span{font-size:1.5rem;margin-bottom:18px}.challenge-grid small{display:block;color:var(--muted);margin-top:5px}.challenge-grid button[aria-pressed=true] small{color:#d6e2e9}.challenge-progress{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;margin-top:18px}.challenge-progress>div{height:10px;background:#fff;border-radius:99px;overflow:hidden}.challenge-progress span{display:block;width:0;height:100%;background:var(--red);transition:.2s}
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.info-grid a,.info-grid button{border:1px solid var(--line);border-radius:16px;background:#fff;padding:20px;text-decoration:none;text-align:left;cursor:pointer}.info-grid span,.info-grid strong,.info-grid small{display:block}.info-grid span{font-size:1.5rem;margin-bottom:17px}.info-grid strong{color:var(--navy)}.info-grid small{color:var(--muted);margin-top:4px}.prototype-note{margin-top:20px;border-left:4px solid var(--gold);background:var(--cream);padding:15px}.prototype-note strong{color:var(--navy)}footer{text-align:center;background:#06182c;color:#fff;padding:55px 20px 115px}footer strong{letter-spacing:.14em}footer p{color:#b9c8d1}
.mobile-nav{position:fixed;z-index:50;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -10px 28px rgba(11,35,64,.12)}.mobile-nav a,.mobile-nav button{height:68px;border:0;background:#fff;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--navy);font-weight:850;font-size:.68rem;cursor:pointer}.mobile-nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}.mobile-nav a:nth-child(2){color:var(--red)}.sheet-backdrop{position:fixed;z-index:60;inset:0;background:rgba(3,15,29,.55)}.more-sheet{position:fixed;z-index:61;left:0;right:0;bottom:0;max-height:82vh;background:#fff;border-radius:25px 25px 0 0;padding:25px 20px calc(25px + env(safe-area-inset-bottom));transform:translateY(105%);transition:.25s;overflow:auto}.more-sheet.open{transform:translateY(0)}.sheet-head{display:flex;justify-content:space-between;align-items:flex-start}.sheet-head h2{font:700 2rem Georgia,serif;margin:0}.sheet-head button{border:0;background:var(--cream);border-radius:50%;width:40px;height:40px;font-size:1.8rem;cursor:pointer}.more-sheet nav{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:20px}.more-sheet nav a{text-decoration:none;border:1px solid var(--line);border-radius:12px;padding:13px;font-weight:800}.more-sheet nav span{margin-right:7px}

/* Photo-rich edition */
.hero{background-image:linear-gradient(90deg,rgba(4,19,36,.9) 0%,rgba(6,28,51,.72) 48%,rgba(6,28,51,.28) 100%),url("https://images.unsplash.com/photo-1635521451262-a757a9600cf6?auto=format&fit=crop&fm=jpg&q=88&w=2400");background-position:center;background-size:cover}
.hero:before{z-index:1;background:linear-gradient(180deg,rgba(3,15,29,.08),rgba(3,15,29,.16));mask-image:none}
.hero-art{z-index:2;opacity:.12}.hero-credit{position:absolute;z-index:4;right:5vw;bottom:78px;color:rgba(255,255,255,.88);font-size:.68rem;text-decoration:none;background:rgba(3,15,29,.48);padding:6px 9px;border-radius:999px}.hero-credit:hover{text-decoration:underline}
.honor-card{overflow:hidden}.honor-photo{height:190px;margin:-26px -26px 22px;position:relative;background:#07192e;overflow:hidden}.honor-photo img{width:100%;height:100%;object-fit:cover;display:block}.honor-photo:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(3,15,29,.78))}.honor-photo figcaption{position:absolute;z-index:2;left:13px;right:13px;bottom:9px;color:#fff;font-size:.62rem;text-shadow:0 1px 3px #000}.honor-card.featured .honor-photo figcaption{color:#fff}
.stay-visual{background-image:linear-gradient(160deg,rgba(5,25,46,.12),rgba(5,25,46,.94)),url("https://cache.marriott.com/is/image/marriotts7prod/cy-wasct-exterior-24190%3AFeature-Hor?fit=constrain&wid=1600");background-position:center;background-size:cover}.stay-visual>a{margin-top:12px;color:#fff;font-size:.65rem;text-decoration:none;opacity:.82}.stay-visual>a:hover{text-decoration:underline}.stay-visual span,.stay-visual strong,.stay-visual small,.stay-visual>a{position:relative;z-index:2}
.parking-tip{margin-top:16px;display:flex;gap:15px;align-items:flex-start;background:#eef6f8;border:1px solid #cfe2e9;border-radius:16px;padding:18px}.parking-tip>span{font-size:1.65rem}.parking-tip strong,.parking-tip small{display:block}.parking-tip p{margin:4px 0;color:var(--muted);font-size:.9rem}.parking-tip a{font-weight:900;color:var(--red)}.parking-tip small{margin-top:7px;color:var(--muted)}
.route-map{height:190px}.route-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.route-map:before{z-index:1;inset:0;width:auto;height:auto;top:0;right:0;border:0;border-radius:0;background:linear-gradient(120deg,rgba(7,26,47,.52),rgba(7,26,47,.08),rgba(7,26,47,.42))}.route-map:after{display:none}.route-map i{z-index:2;border-color:#fff;filter:drop-shadow(0 1px 2px #000)}.route-map .pin{box-shadow:0 3px 12px rgba(0,0,0,.3)}
.place-card{min-height:430px}.place-visual{height:185px;flex:0 0 185px}.place-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.place-visual:after{z-index:1;inset:0;width:auto;height:auto;border:0;border-radius:0;background:linear-gradient(180deg,rgba(3,15,29,.46),rgba(3,15,29,.02) 48%,rgba(3,15,29,.62))}.place-visual .area,.place-visual .price{position:relative;z-index:2;text-shadow:0 1px 4px rgba(0,0,0,.9)}.place-visual .area{background:rgba(3,15,29,.7);backdrop-filter:blur(4px)}.place-visual .price{background:rgba(3,15,29,.66);border-radius:999px;padding:5px 9px}.photo-source{position:absolute;z-index:3;right:12px;bottom:10px;color:#fff;font-size:.62rem;text-decoration:none;background:rgba(3,15,29,.62);padding:4px 7px;border-radius:999px}.photo-source:hover{text-decoration:underline}.prototype-note a{font-weight:850;color:var(--red)}
@media(min-width:1000px){.mobile-nav{left:50%;right:auto;transform:translateX(-50%);width:650px;border:1px solid var(--line);border-bottom:0;border-radius:18px 18px 0 0;overflow:hidden}.more-sheet{left:50%;right:auto;width:620px;transform:translate(-50%,105%)}.more-sheet.open{transform:translate(-50%,0)}}
@media(max-width:900px){.hero-art{right:-12vw;width:68vw;opacity:.28}.match-layout{grid-template-columns:1fr}.match-options{grid-template-columns:repeat(2,1fr)}.place-grid{grid-template-columns:repeat(2,1fr)}.challenge-grid{grid-template-columns:repeat(2,1fr)}.info-grid{grid-template-columns:repeat(2,1fr)}.budget-layout{grid-template-columns:1fr}.budget-summary{grid-row:auto}.expense-list{grid-column:auto}}
@media(max-width:650px){.hero{min-height:680px;padding-left:22px;padding-right:22px;background-position:59% center}.topbar{padding-top:18px}.official-pill{font-size:0;width:42px;height:42px;display:grid;place-items:center}.official-pill:after{content:"↗";font-size:1rem}.hero-copy{margin-top:85px}.hero h1{font-size:3.55rem}.hero-credit{left:22px;right:auto;bottom:70px}.quick-facts{grid-template-columns:repeat(2,1fr);margin-left:14px;margin-right:14px}.section,.tint,.honor-section,.challenge-section{padding:62px 21px}.section-heading h2{font-size:2.35rem}.match-options{gap:8px}.match-options button{min-height:135px;padding:15px}.day-panel{grid-template-columns:1fr}.timeline{padding:20px}.timeline-row{grid-template-columns:76px 1fr;gap:10px}.honor-grid,.route-grid,.place-grid{grid-template-columns:1fr}.stay-card{grid-template-columns:1fr}.stay-visual{min-height:300px}.fact-row{display:block}.fact-row strong{display:block;text-align:left;margin-top:3px}.review-fields,.cost-grid{grid-template-columns:1fr}.rating-grid{grid-template-columns:repeat(2,1fr)}.rating-row:last-child{grid-column:1/-1}.saved-reviews{grid-template-columns:1fr}.challenge-grid{grid-template-columns:1fr 1fr}.info-grid{grid-template-columns:1fr}.expense-form{grid-template-columns:1fr}.expense-tools{align-items:stretch;flex-direction:column}.more-sheet nav{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.mobile-nav,.more-sheet,.sheet-backdrop,.hero-actions,.visited-button,.food-filter,#reviewForm,#expenseForm{display:none!important}.hero{min-height:500px}.section{break-inside:avoid}.honor-section{-webkit-print-color-adjust:exact;print-color-adjust:exact}footer{padding-bottom:30px}}
