/* Homepage: cinematic hero, finder, splits, nationwide, guide cards */
.hero{position:relative;min-height:min(88vh,860px);display:flex;align-items:flex-end;background:var(--navy-900);color:#fff;overflow:hidden;isolation:isolate}
.hero__media{position:absolute;inset:0;z-index:0}
.hero__poster img,.hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%}
.hero__poster img{filter:saturate(.9) contrast(1.05)}
.js .hero__poster img{transform:scale(1.04);transition:transform 12s linear}
.js .hero.is-live .hero__poster img{transform:scale(1.12)}
.hero__video{opacity:0;transition:opacity 1.2s var(--ease)}
.hero__video.is-playing{opacity:1}
.hero__haze{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,18,32,.25) 0%,rgba(11,18,32,.15) 35%,rgba(11,18,32,.78) 75%,var(--navy-900) 100%),linear-gradient(90deg,rgba(11,18,32,.65) 0%,rgba(11,18,32,.1) 60%)}
.hero__lines{position:absolute;inset:auto 0 0 0;width:100%;height:45%;opacity:.35;fill:none;stroke:var(--rose-200);stroke-width:1}
.js .hero__lines path{stroke-dasharray:1800;stroke-dashoffset:1800}
.js .hero.is-live .hero__lines path{animation:vec-draw 3.2s var(--ease-out) forwards}
.js .hero.is-live .hero__lines path:nth-child(2){animation-delay:.3s}.js .hero.is-live .hero__lines path:nth-child(3){animation-delay:.6s}
.hero__content{position:relative;z-index:1;padding-block:clamp(6rem,10vw,9rem) clamp(2.5rem,5vw,4rem)}
.hero__content .eyebrow{color:var(--rose-200)}
.hero__title{font-size:var(--fs-hero);color:#fff;max-width:14ch;margin-bottom:1rem}
.hero__title span{display:block}
.hero__title-accent{color:var(--rose-200)}
.js .hero__title span{opacity:0;transform:translateY(18px)}
.js .hero.is-live .hero__title span{animation:vec-in .9s var(--ease-out) forwards}
.js .hero.is-live .hero__title span:nth-child(2){animation-delay:.12s}.js .hero.is-live .hero__title span:nth-child(3){animation-delay:.24s}
.hero__lead{font-size:var(--fs-md);color:var(--on-navy-2);max-width:56ch;margin-bottom:1.5rem}
.hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
.hero__tertiary{color:#fff;margin-left:.5rem}
.hero__facts{list-style:none;margin:2.5rem 0 0;padding:1.25rem 0 0;border-top:1px solid var(--line-on-navy);display:grid;grid-template-columns:repeat(3,auto);gap:1rem 3rem;justify-content:start}
.hero__facts strong{display:block;font-family:var(--font-display);font-weight:800;font-size:1.15rem;color:#fff;line-height:1.1}
.hero__facts span{font-size:var(--fs-xs);color:var(--on-navy-2);font-family:var(--font-mono);letter-spacing:.04em}
@media (max-width:700px){.hero{min-height:auto}.hero__content{padding-top:5rem}.hero__facts{grid-template-columns:1fr;gap:.75rem}.hero__facts li{display:flex;gap:.6rem;align-items:baseline}.hero__tertiary{margin-left:0;width:100%}}
@media (prefers-reduced-motion:reduce){.js .hero__poster img{transform:none!important;transition:none}.hero__video{display:none}.js .hero__title span,.js .hero__lines path{opacity:1;transform:none;animation:none;stroke-dashoffset:0}}
/* finder */
.finder{position:relative;z-index:2;margin-top:-2.5rem}
.finder__card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);padding:1.5rem;display:grid;grid-template-columns:minmax(14rem,.8fr) 2.2fr;gap:1.5rem;align-items:center}
.finder__card h2{font-size:1.35rem;margin:0}
.finder__options{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.5rem}
.finder__opt{display:flex;align-items:center;gap:.6rem;padding:.75rem .85rem;border:1.5px solid var(--border);border-radius:var(--radius);font-family:var(--font-display);font-weight:600;font-size:.9rem;color:var(--navy);text-decoration:none;transition:border-color var(--dur-1),background var(--dur-1),transform var(--dur-1)}
.finder__opt:hover{border-color:var(--navy);background:var(--neutral-50);transform:translateY(-1px)}
.finder__opt--custom{border-style:dashed;color:var(--rose)}
.finder__glyph{width:1.6rem;height:1.6rem;color:var(--rose);flex:none}
@media (max-width:900px){.finder__card{grid-template-columns:1fr}.finder{margin-top:0;padding-top:1.5rem}}
/* splits */
.split{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.split--rev .split__copy{order:2}
@media (max-width:900px){.split{grid-template-columns:1fr;gap:2rem}.split--rev .split__copy{order:0}}
.compare{list-style:none;margin:1.5rem 0;padding:0;display:grid;gap:.75rem}
.compare li{padding:.9rem 1rem;border:1px solid var(--line-on-navy);border-radius:var(--radius);background:rgba(255,255,255,.04)}
.compare strong{display:block;color:#fff;font-family:var(--font-display);margin-bottom:.2rem}
.compare span{font-size:var(--fs-sm);color:var(--on-navy-2)}
.used-grid .card{border-color:rgba(255,255,255,.12)}
.cat-grid .tile{min-height:17rem}
/* nationwide */
.nationwide{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:center}
@media (max-width:900px){.nationwide{grid-template-columns:1fr}}
.chips{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}
.au-land,.au-tas{fill:var(--neutral-100);stroke:var(--navy);stroke-width:1.5;stroke-linejoin:round}
.au-origin{fill:var(--rose)}
.au-label{font-weight:700!important;fill:var(--navy)!important}
.au-route{fill:none;stroke:var(--rose);stroke-width:1.5;stroke-dasharray:4 3}
.js .au-route{stroke-dasharray:600;stroke-dashoffset:600;opacity:.9}
.js .vec-au.is-live .au-route{animation:vec-draw 2.2s var(--ease-out) forwards;animation-delay:calc(var(--d)*180ms)}
.au-dot circle{fill:var(--navy)}
.js .au-dot{opacity:0}
.js .vec-au.is-live .au-dot{animation:vec-in .5s var(--ease-out) forwards;animation-delay:calc(900ms + var(--d)*180ms)}
/* guide cards */
.guide-card{display:flex;flex-direction:column;gap:.4rem;padding:1.4rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:#fff;text-decoration:none;color:inherit;transition:transform var(--dur-2),box-shadow var(--dur-2)}
.guide-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-2)}
.guide-card h3{font-size:1.1rem;margin:0}
.guide-card p{font-size:var(--fs-sm);color:var(--text-2);margin:0 0 .5rem}
.guide-card .link-arrow{margin-top:auto;color:var(--rose)}
