/* ============================================================
   WEDGE TRAVEL — Home page styles
   ============================================================ */

/* HERO */
.home-hero{ position:relative; min-height:100svh; display:flex; align-items:flex-end;
  background:var(--ink); color:var(--on-dark); overflow:hidden; }
.home-hero__bg{ position:absolute; inset:-12% 0; z-index:0; }
.home-hero__bg img{ width:100%; height:100%; object-fit:cover; }
.home-hero__scrim{ position:absolute; inset:0; z-index:1;
  background:
    linear-gradient(180deg, rgba(10,9,6,.55) 0%, rgba(10,9,6,.05) 26%, rgba(10,9,6,.18) 55%, rgba(10,9,6,.86) 100%),
    linear-gradient(90deg, rgba(10,9,6,.55) 0%, rgba(10,9,6,0) 60%); }
.home-hero__inner{ position:relative; z-index:2; width:100%; padding-bottom:clamp(56px,9vh,128px); padding-top:120px; }
.home-hero__copy{ max-width:920px; }
.home-hero__title{ margin:22px 0 0; color:var(--paper); }
.home-hero__sub{ font-size:clamp(18px,1.7vw,23px); line-height:1.5; color:rgba(239,232,218,.82);
  max-width:560px; margin:26px 0 0; opacity:0; transform:translateY(18px);
  transition:opacity 1s var(--ease) .5s, transform 1s var(--ease) .5s; }
.home-hero__actions{ display:flex; align-items:center; gap:28px; flex-wrap:wrap; margin-top:36px;
  opacity:0; transform:translateY(18px); transition:opacity 1s var(--ease) .66s, transform 1s var(--ease) .66s; }
.home-hero__copy.is-in .home-hero__sub,
.home-hero__copy.is-in .home-hero__actions{ opacity:1; transform:none; }
.home-hero__copy.is-in .mask-line > span{ transform:translateY(0); }
.home-hero .mask-line > span{ transition:transform 1.1s var(--ease); }
.home-hero .mask-line:nth-child(2) > span{ transition-delay:.12s; }

.home-hero__cue{ position:absolute; right:var(--gutter); bottom:clamp(40px,8vh,90px); z-index:3;
  display:flex; flex-direction:column; align-items:center; gap:14px; color:rgba(239,232,218,.7);
  font-family:var(--mono); font-size:11px; letter-spacing:.28em; text-transform:uppercase; writing-mode:vertical-rl; }
.home-hero__cueline{ width:1px; height:60px; background:rgba(239,232,218,.4); position:relative; overflow:hidden; }
.home-hero__cueline::after{ content:""; position:absolute; left:0; top:-60px; width:1px; height:60px; background:var(--bronze-2);
  animation:cue 2.4s var(--ease) infinite; }
@keyframes cue{ 0%{transform:translateY(0)} 60%,100%{transform:translateY(120px)} }
@media (max-width:640px){ .home-hero__cue{ display:none; } }

/* STATEMENT */
.statement{ background:var(--paper); }
.statement__lead{ font-family:var(--display); font-weight:500; letter-spacing:-.02em; line-height:1.16;
  font-size:clamp(28px,4.4vw,60px); max-width:18ch; margin:26px 0 0; }
.statement__lead em{ font-style:italic; font-weight:500; color:var(--bronze-deep); }
.statement__hl{ position:relative; white-space:nowrap; }
.statement__hl::after{ content:""; position:absolute; left:0; right:0; bottom:.08em; height:2px; background:var(--bronze); opacity:.6; }
.statement__meta{ display:grid; grid-template-columns:repeat(3,1fr); gap:40px; margin-top:clamp(48px,7vw,96px);
  border-top:1px solid var(--line-soft); padding-top:46px; }
.statement__meta p{ margin:10px 0 0; font-size:16.5px; line-height:1.6; color:var(--ink-soft); max-width:34ch; }
@media (max-width:760px){ .statement__meta{ grid-template-columns:1fr; gap:30px; } }

/* PILLARS */
.pillars{ background:var(--bone); }
.pillars__head{ display:grid; grid-template-columns:1fr 1.5fr; gap:40px; align-items:end; margin-bottom:clamp(46px,6vw,80px); }
.pillars__head h2{ max-width:14ch; }
.pillars__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:0; border-top:1px solid var(--line-soft); }
.pillar{ padding:40px 36px 46px; border-bottom:1px solid var(--line-soft); border-right:1px solid var(--line-soft); }
.pillar:nth-child(3n){ border-right:0; }
.pillar__rule{ width:30px; height:2px; background:var(--bronze); margin-bottom:24px; }
.pillar h3{ margin-bottom:12px; }
.pillar p{ margin:0; color:var(--ink-soft); font-size:16px; line-height:1.62; }
@media (max-width:900px){ .pillars__head{ grid-template-columns:1fr; gap:20px; }
  .pillars__grid{ grid-template-columns:1fr 1fr; } .pillar:nth-child(3n){ border-right:1px solid var(--line-soft);} .pillar:nth-child(2n){ border-right:0; } }
@media (max-width:560px){ .pillars__grid{ grid-template-columns:1fr; } .pillar{ border-right:0 !important; } }

/* FEATURE SWITCHER */
.switcher__head{ max-width:760px; margin-bottom:clamp(40px,5vw,64px); }
.switcher__head h2{ margin-top:22px; }
.switcher__tabs{ display:flex; flex-wrap:wrap; gap:10px; border-bottom:1px solid rgba(239,232,218,.16); padding-bottom:26px; margin-bottom:46px; }
.switcher__tab{ background:transparent; border:1px solid rgba(239,232,218,.2); color:var(--on-dark-mute);
  font-family:var(--mono); font-size:13px; letter-spacing:.04em; padding:11px 18px; transition:.4s var(--ease); }
.switcher__tab:hover{ color:var(--on-dark); border-color:rgba(239,232,218,.5); }
.switcher__tab.is-active{ background:var(--paper); color:var(--ink); border-color:var(--paper); }
.switcher__stage{ display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(36px,5vw,76px); align-items:center; }
.switcher__media{ position:relative; aspect-ratio:4/3; overflow:hidden; background:var(--ink-2); }
.switcher__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transform:scale(1.06);
  transition:opacity 1s var(--ease), transform 2s var(--ease); }
.switcher__media img.is-on{ opacity:1; transform:scale(1); }
.switcher__cap{ position:absolute; left:0; bottom:0; z-index:2; background:var(--ink); color:var(--on-dark-mute);
  font-family:var(--mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; padding:9px 16px; }
.switcher__copy{ animation:fadeUp .7s var(--ease); }
.switcher__title{ margin-bottom:20px; color:var(--paper); }
@keyframes fadeUp{ from{opacity:0;transform:translateY(16px)} to{opacity:1;transform:none} }
@media (max-width:860px){ .switcher__stage{ grid-template-columns:1fr; gap:30px; } }

/* PROVIDER */
.provider{ background:var(--paper); }
.provider__row{ display:grid; grid-template-columns:1.2fr 1fr; gap:clamp(40px,6vw,96px); align-items:center; }
.provider__left h2{ margin-top:20px; }
.provider__list{ list-style:none; margin:0; padding:0; }
.provider__item{ display:flex; align-items:center; gap:18px; font-family:var(--display); font-weight:600;
  font-size:clamp(24px,3vw,40px); letter-spacing:-.02em; padding:22px 0; border-bottom:1px solid var(--line-soft); }
.provider__item:first-child{ border-top:1px solid var(--line-soft); }
.provider__mark{ color:var(--bronze); font-size:.55em; font-family:var(--body); }
@media (max-width:860px){ .provider__row{ grid-template-columns:1fr; gap:30px; } }

/* FLEET */
.fleet{ background:var(--bone); }
.fleet__head{ max-width:840px; margin-bottom:clamp(40px,5vw,70px); }
.fleet__head h2{ margin-top:22px; }
.fleet__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(20px,2.4vw,34px); }
.fleet__media{ aspect-ratio:4/5; }
.fleet__model{ position:absolute; left:0; bottom:0; z-index:2; background:var(--ink); color:var(--on-dark-mute);
  font-family:var(--mono); font-size:10.5px; letter-spacing:.12em; text-transform:uppercase; padding:8px 13px; }
.fleet__body{ padding-top:22px; }
.fleet__span{ font-family:var(--mono); font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--bronze-deep); }
.fleet__body h3{ margin:10px 0 8px; }
.fleet__body p{ margin:0; font-size:16px; }
@media (max-width:860px){ .fleet__grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .fleet__grid{ grid-template-columns:1fr; } }

/* CTA */
.cta{ position:relative; overflow:hidden; }
.cta__bg{ position:absolute; inset:-10% 0; z-index:0; }
.cta__bg img{ width:100%; height:100%; object-fit:cover; }
.cta__scrim{ position:absolute; inset:0; z-index:1; background:linear-gradient(90deg, rgba(10,9,6,.92) 0%, rgba(10,9,6,.55) 60%, rgba(10,9,6,.3) 100%); }
.cta__inner{ position:relative; z-index:2; }
.cta__inner h2{ margin:22px 0 22px; max-width:16ch; color:var(--paper); }
