/* Home-only layout. Shared navigation and tokens belong to the application shell. */
.tm-home{background:#fff;color:#18243a}
.tm-home .hero.wide{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);grid-template-areas:'intro photo' 'search search';gap:32px 52px;background:#fff;color:#18243a;padding:132px 32px 28px;max-width:1200px;margin:0 auto;border-radius:0;overflow:visible;isolation:isolate}
.tm-home .hero__scrim{display:none}
.tm-home .hero.wide .hero__image{grid-area:photo;position:relative;inset:auto;z-index:0;display:block;width:100%;height:300px;object-fit:cover;filter:none;opacity:1;border-radius:28px}
.tm-home .hero.wide .hero__content{grid-area:intro;align-self:center;color:#18243a}
.tm-home .hero__content h1{font-size:clamp(36px,4.2vw,54px);line-height:1.16;letter-spacing:-.04em;max-width:16ch;color:#18243a}
.tm-home .hero__content p{color:#607086;font-size:16px;line-height:1.75;margin-top:18px;max-width:480px}
.tm-home .hero__content .hero__eyebrow{font-size:11px;color:#3563e9;letter-spacing:.13em;font-weight:750;margin:0 0 16px}
.tm-home .home-start{margin-top:24px;min-height:48px;border-radius:12px;padding-inline:24px;text-decoration:none}
.tm-home .hero.wide .hero-search-wrap{grid-area:search;background:#fff;border:1px solid #e4e9f1;border-radius:18px;padding:8px;box-shadow:0 8px 32px #18243a09}
.tm-home .hero-search{background:#fff;min-height:78px;border-radius:12px;grid-template-columns:minmax(160px,1.8fr) minmax(150px,1fr) minmax(85px,.6fr) auto}
.tm-home .hero-search .field label{color:#18243a;font-size:12px;font-weight:700}
.tm-home .hero-search input,.tm-home .hero-search select{background:#fff;color:#18243a}
.tm-home .hero-search__submit{border-radius:12px;min-width:112px;min-height:50px}
.tm-home .hero-search__planning-note{margin:0;padding:6px 16px 10px!important;font-size:11px;color:#607086;background:#fff}
.tm-home .tm-travel-tools{display:none}
.home-shortcuts{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding-block:12px 24px}
.home-shortcuts a{display:flex;flex-direction:column;align-items:center;gap:12px;text-decoration:none;color:#18243a;padding:16px 8px;border-radius:16px;text-align:center;min-width:0;transition:background .15s}
.home-shortcuts a:hover{background:#f5f7fb}
.home-shortcuts span{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:#edf2ff;color:#3563e9;font-size:26px;font-family:system-ui,sans-serif}
.home-shortcuts a:nth-child(2n) span{background:#fff0ec;color:#d85341}
.home-shortcuts strong{font-size:13px;line-height:1.45;font-weight:650}
.tm-home #essentials{padding-top:12px;padding-bottom:40px}
.tm-home .section-heading{font-size:28px;color:#18243a;line-height:1.3}
.home-trip-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}
.home-trip-card{padding:28px;border:1px solid #e4e9f1;border-radius:20px;background:#f5f7fb;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:22px}
.home-trip-card--saved{background:#fff}
.home-trip-card .eyebrow{color:#3563e9;font-size:11px;margin-bottom:10px}
.home-trip-card h3{font-size:22px;letter-spacing:-.025em;line-height:1.35;margin:0 0 10px}
.home-trip-card p:not(.eyebrow){color:#607086;font-size:14px;line-height:1.7;margin:0;max-width:430px}
.home-trip-links{display:flex;flex-wrap:wrap;gap:16px}
.tm-home .home-trip-card .btn{border-radius:11px;min-height:44px}
.tm-home .section--paper,.tm-home .section--pine{background:#fff;color:#18243a;border-block:1px solid #edf0f5}
.tm-home .section-split{align-items:center}
.tm-home .section-lead{color:#607086;font-size:14px;line-height:1.7}
.tm-home .section{padding-block:40px}
.tm-home .chip-row{flex-wrap:wrap;gap:8px;margin-block:22px}
.tm-home .chip{border-radius:999px;min-height:40px;background:#f5f7fb;border-color:#e4e9f1;color:#42516a}
.tm-home .place-card,.tm-home .review-card,.tm-home .stay-list-card{border-radius:18px;box-shadow:none;border:1px solid #e4e9f1;background:#fff;overflow:hidden}
.tm-home .place-card img{filter:none}
.tm-home .map-controls{background:#f5f7fb;border:1px solid #e4e9f1;border-radius:18px}
.tm-home .map-frame{border-radius:18px;overflow:hidden;border:1px solid #e4e9f1}
.tm-home .map-selection,.tm-home .map-place-list{color:#18243a;background:#fff}
.tm-home .map-heading .map-eyebrow{color:#607086}
.tm-home .btn--primary,.tm-home .chip[aria-pressed=true]{background:#3563e9!important;border-color:#3563e9!important;color:#fff!important}
.tm-home :is(a,button,input,select):focus-visible{outline:3px solid #ff6b59;outline-offset:3px}
@media(max-width:800px){
 .tm-home .hero.wide{padding:104px 20px 20px;grid-template-columns:1fr;grid-template-areas:'intro' 'search';gap:24px}
 .tm-home .hero.wide .hero__image{display:none}
 .tm-home .hero__content h1{font-size:38px;max-width:17ch}
 .tm-home .hero__content p{font-size:14px;max-width:40ch;margin-top:14px}
 .tm-home .hero__content .hero__eyebrow{margin-bottom:12px}
 .tm-home .home-start{margin-top:20px}
 .tm-home .hero-search{grid-template-columns:minmax(0,1fr) auto;min-height:70px;padding:8px;gap:8px}
 .tm-home .hero-search .hero-search__place{grid-column:auto;min-width:0}
 .tm-home .hero-search__submit{grid-column:auto;min-width:72px;min-height:48px;padding:12px}
 .tm-home .hero-search__submit svg{display:none}
 .tm-home .hero-search input{min-width:0;width:100%;box-shadow:none;padding:0}
 .tm-home .hero-search__planning-note{font-size:10px;line-height:1.6;padding-inline:8px!important}
 .home-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding-block:0 24px}
 .home-shortcuts a{padding:12px 4px;gap:8px}
 .home-shortcuts span{width:46px;height:46px;border-radius:15px;font-size:24px}
 .home-shortcuts strong{font-size:12px}
 .home-trip-grid{grid-template-columns:1fr;gap:14px;margin-top:18px}
 .home-trip-card{padding:22px;gap:18px}
 .home-trip-card h3{font-size:21px}
 .tm-home .section{padding-block:28px}
 .tm-home .section-heading{font-size:24px}
 .tm-home .section-split{gap:12px}
 .tm-home .place-grid{grid-template-columns:1fr}
 .tm-home .chip-row{gap:6px}
 .tm-home .chip{font-size:12px;padding-inline:12px}
}
@media(prefers-reduced-motion:reduce){.home-shortcuts a{transition:none}}
