/* TRIBE home: vehicle-led editorial experience. */
:root { --home-ink: #182431; --home-wine: #a72b40; --home-mist: #f5f6f6; }
body { color: var(--home-ink); }
body:has(.home-stage) { --site-content-width: 1200px; }
body .site-header .header-cta { border-color: #eddce0; background: #fff8f9; color: #8f2639; }
body .site-header .header-cta:hover { background: #f9e9ed; }
.home-stage { position: relative; overflow: hidden; padding: 44px 32px 0; background: #f6f4f1; }
.home-stage-inner { display: grid; grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr); align-items: stretch; max-width: 1200px; min-height: 545px; margin: auto; }
.home-stage-copy { position: relative; z-index: 2; display: flex; flex-direction: column; justify-content: center; padding: 20px 32px 40px 0; }
.home-kicker, .home-label { margin: 0; color: var(--home-wine); font-size: 11px; font-weight: 900; letter-spacing: .16em; }
.home-kicker { display: flex; align-items: center; gap: 11px; margin-bottom: 24px; }
.home-kicker-line { display: inline-block; width: 24px; height: 1px; background: currentColor; }
.home-stage h1 { margin: 0; color: var(--home-ink); font-size: clamp(44px, 4vw, 66px); line-height: 1.16; letter-spacing: -.07em; font-weight: 900; white-space: nowrap; }
.home-stage h1 em { color: var(--home-wine); font-style: normal; }
.home-stage-description { margin: 27px 0 30px; color: #52606f; font-size: 15px; line-height: 1.85; }
.home-stage-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 23px; }
.home-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 38px; min-height: 56px; padding: 0 22px; border-radius: 4px; font-size: 14px; font-weight: 800; }
.home-button-primary { background: var(--home-wine); color: #fff; }
.home-button-primary:hover { background: #862134; }
.home-button-text { display: inline-flex; align-items: center; gap: 14px; min-height: 48px; border-bottom: 1px solid #9d5663; color: #812537; font-size: 14px; font-weight: 800; }
.home-stage-disclaimer { margin: 30px 0 0; color: #7b858f; font-size: 11px; }
.home-stage-visual { position: relative; min-width: 0; overflow: hidden; min-height: 545px; background: radial-gradient(circle at 53% 70%, #6e7987 0, #354353 44%, #1a2734 100%); color: #fff; }
.home-stage-visual::after { position: absolute; z-index: 1; right: -30%; bottom: -28%; width: 125%; height: 70%; content: ""; border: 1px solid #ffffff1f; border-radius: 50%; transform: rotate(-14deg); }
.home-stage-grid { position: absolute; inset: 0; opacity: .12; background: linear-gradient(90deg, transparent 49.9%, #fff 50%, transparent 50.1%), linear-gradient(0deg, transparent 49.9%, #fff 50%, transparent 50.1%); background-size: 92px 92px; mask-image: linear-gradient(to bottom, transparent, #000 50%, transparent); }
.home-stage-orbit { position: absolute; left: 6%; top: 8%; width: 75%; aspect-ratio: 1; border: 1px solid #ffffff26; border-radius: 50%; }
.home-stage-visual-top, .home-stage-visual-bottom { position: absolute; z-index: 3; left: 32px; right: 32px; display: flex; align-items: center; justify-content: space-between; }
.home-stage-visual-top { top: 28px; color: #d3dbe2; font-size: 10px; font-weight: 800; letter-spacing: .19em; }
.home-stage-car { position: absolute; z-index: 2; left: 0; top: 47%; display: block; width: 110%; height: auto; transform: translate(-3%, -50%); filter: drop-shadow(0 25px 23px #0b111c85); animation: home-car-enter 1.1s cubic-bezier(.22,.78,.26,1) both; }
.home-stage-visual-bottom { bottom: 32px; align-items: end; padding-top: 20px; border-top: 1px solid #ffffff55; }
.home-stage-visual-bottom div { display: flex; flex-direction: column; gap: 4px; }
.home-stage-visual-bottom small { color: #d3dbe2; font-size: 10px; font-weight: 700; letter-spacing: .12em; }
.home-stage-visual-bottom strong { font-size: 27px; line-height: 1; letter-spacing: -.04em; }
.home-stage-visual-bottom a { display: inline-flex; gap: 18px; align-items: center; color: #fff; font-size: 12px; font-weight: 800; }
.home-stage-visual-bottom a:hover { text-decoration: underline; text-underline-offset: 5px; }
.home-path { position: relative; z-index: 3; display: grid; grid-template-columns: 1.13fr 1.62fr auto; gap: 28px; align-items: center; max-width: 1200px; min-height: 130px; margin: -5px auto 0; padding: 22px 28px; background: #fff; box-shadow: 0 15px 42px #1e273416; }
.home-path-title { display: flex; align-items: flex-start; gap: 15px; }
.home-path-title > span { padding-top: 3px; color: var(--home-wine); font-size: 11px; font-weight: 900; white-space: nowrap; }
.home-path h2 { margin: 0; font-size: 20px; line-height: 1.38; letter-spacing: -.045em; }
.home-path ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; list-style: none; margin: 0; padding: 0; }
.home-path li { display: flex; flex-direction: column; gap: 7px; padding: 9px 0 9px 15px; border-left: 1px solid #dfe3e6; color: #354252; font-size: 12px; font-weight: 750; }
.home-path li span { color: var(--home-wine); font-size: 10px; font-weight: 900; }
.home-start-action { display: inline-flex; align-items: center; justify-content: space-between; gap: 18px; min-width: 172px; min-height: 48px; padding: 0 16px; border: 1px solid #a72b40; color: #8e2336; font-size: 12px; font-weight: 800; }
.home-start-action:hover { background: #a72b40; color: #fff; }
@keyframes home-car-enter { from { opacity: 0; transform: translate(12%, -49%) scale(.91); } to { opacity: 1; transform: translate(-3%, -50%) scale(1); } }

.home-discovery { padding: 120px max(32px, calc((100% - 1200px)/2)) 110px; background: var(--home-mist); }
.home-section-head { display: flex; justify-content: space-between; align-items: end; gap: 28px; margin-bottom: 30px; }
.home-section-head h2, .home-method h2, .home-questions h2 { margin: 14px 0 0; font-size: clamp(34px, 3vw, 50px); line-height: 1.27; letter-spacing: -.065em; }
.home-section-head h2 span { color: #566474; }
.home-section-head p:last-child { margin: 13px 0 0; color: #62707c; font-size: 14px; }
.home-section-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 30px; min-width: 153px; padding: 10px 0; border-bottom: 1px solid #a72b40; color: #8f2639; font-size: 13px; font-weight: 800; white-space: nowrap; }
.home-section-link:hover { gap: 38px; }
.home-brand-strip { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 19px; padding: 16px 23px; border: 1px solid #dfe3e6; background: #fff; }
.home-brand-strip > span { color: #596878; font-size: 12px; font-weight: 750; white-space: nowrap; }
.home-brand-strip > div { display: flex; flex-wrap: wrap; gap: 6px; }
.home-brand-strip a { display: inline-flex; align-items: center; gap: 16px; padding: 8px 15px; border-radius: 100px; color: #263442; font-size: 12px; font-weight: 800; }
.home-brand-strip a:hover { background: #f3e9eb; color: #9b263b; }
.home-brand-strip a span { color: #a72b40; }
.home-featured-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.home-feature-card { min-width: 0; overflow: hidden; border: 1px solid #e0e4e6; background: #fff; color: var(--home-ink); transition: transform .25s ease, box-shadow .25s ease; }
.home-feature-card:hover { transform: translateY(-5px); box-shadow: 0 18px 36px #1a293317; }
.home-feature-visual { position: relative; display: grid; place-items: center; height: 214px; overflow: hidden; }
.home-feature-visual::before { position: absolute; bottom: -46px; width: 85%; height: 90px; content: ""; border-radius: 50%; background: #ffffff9c; filter: blur(20px); }
.home-feature-santafe { background: #e8e5e1; }.home-feature-carnival { background: #e8ecee; }.home-feature-g80 { background: #e5e8ec; }.home-feature-sorento { background: #e9e9e5; }
.home-feature-visual img { position: relative; display: block; width: 108%; max-width: none; height: 100%; object-fit: contain; filter: drop-shadow(0 14px 10px #18253430); transition: transform .4s ease; }
.home-feature-card:hover img { transform: scale(1.05); }
.home-feature-meta { display: flex; flex-direction: column; padding: 19px 20px 20px; }
.home-feature-meta small { color: #788590; font-size: 10px; font-weight: 850; letter-spacing: .1em; }
.home-feature-meta strong { margin-top: 3px; font-size: 26px; letter-spacing: -.05em; }
.home-feature-meta > span { display: flex; align-items: center; justify-content: space-between; margin-top: 20px; padding-top: 13px; border-top: 1px solid #e8ebed; color: #8f2639; font-size: 12px; font-weight: 800; }
.home-feature-meta b { font-size: 18px; font-weight: 500; }
.home-featured-note { margin: 18px 0 0; color: #76818b; font-size: 11px; }
.home-featured.is-revealed .home-feature-card { animation: home-card-enter .7s ease both; }
.home-featured.is-revealed .home-feature-card:nth-child(2) { animation-delay: .08s; }.home-featured.is-revealed .home-feature-card:nth-child(3) { animation-delay: .16s; }.home-featured.is-revealed .home-feature-card:nth-child(4) { animation-delay: .24s; }
@keyframes home-card-enter { from { opacity: .3; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }

.home-method { overflow: hidden; padding: 105px max(32px, calc((100% - 1200px)/2)); background: #182632; color: #fff; }
.home-method-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
.home-method .home-label { color: #e8a5ae; }
.home-method h2 { font-size: clamp(37px, 3.6vw, 58px); }
.home-method h2 span { color: #eaa6ae; }
.home-method-lead > p:not(.home-label) { max-width: 360px; margin: 22px 0 27px; color: #bfccd6; font-size: 14px; line-height: 1.75; }
.home-method .home-section-link { color: #fff; border-color: #de929e; }
.home-method-detail { position: relative; min-height: 350px; }
.home-method-numeral { position: absolute; top: -115px; right: -35px; color: #ffffff0d; font-size: 390px; font-weight: 900; line-height: 1; letter-spacing: -.12em; pointer-events: none; }
.home-method ol { position: relative; z-index: 1; list-style: none; margin: 0; padding: 0; }
.home-method li { display: flex; gap: 27px; align-items: start; min-height: 116px; padding: 21px 0; border-top: 1px solid #ffffff3a; }
.home-method li:last-child { border-bottom: 1px solid #ffffff3a; }
.home-method li > span { padding-top: 7px; color: #eaa6ae; font-size: 12px; font-weight: 800; }
.home-method li div { display: flex; flex-direction: column; gap: 6px; }
.home-method li strong { font-size: 22px; letter-spacing: -.04em; }
.home-method li small { color: #b5c3ce; font-size: 13px; }
.home-questions { padding: 110px max(32px, calc((100% - 1200px)/2)); background: #fff; }
.home-questions-inner { display: grid; grid-template-columns: .8fr 1.2fr; gap: 110px; }
.home-questions .home-section-link { margin-top: 28px; }
.home-questions details { padding: 23px 0; border-bottom: 1px solid #dce1e4; }
.home-questions details:first-child { border-top: 1px solid #dce1e4; }
.home-questions summary { color: #263441; font-size: 17px; font-weight: 750; cursor: pointer; }
.home-questions details p { margin: 12px 0 0; color: #62717e; font-size: 13px; line-height: 1.8; }
.home-closing { display: flex; justify-content: space-between; align-items: center; gap: 30px; padding: 62px max(32px, calc((100% - 1200px)/2)); background: #a72b40; color: #fff; }
.home-closing p { margin: 0 0 6px; color: #f0c7ce; font-size: 12px; }
.home-closing h2 { margin: 0; font-size: clamp(27px, 2.8vw, 39px); line-height: 1.25; letter-spacing: -.055em; }
.home-closing a { display: inline-flex; justify-content: space-between; align-items: center; gap: 35px; min-width: 196px; padding: 15px 18px; background: #fff; color: #8f2639; font-size: 13px; font-weight: 800; }
.home-closing a:hover { background: #f8ebed; }
.home-stage a:focus-visible, .home-discovery a:focus-visible, .home-method a:focus-visible, .home-questions a:focus-visible, .home-closing a:focus-visible { outline: 3px solid #d2354f; outline-offset: 3px; }
.home-method a:focus-visible, .home-closing a:focus-visible { outline-color: #fff; }
@media (min-width: 761px) and (max-width: 1450px) { body:has(.home-stage) .quick-rail { display: none; } }
@media (max-width: 1100px) {
  .home-stage h1 { font-size: clamp(38px, 4.2vw, 50px); }
  .home-path { grid-template-columns: 1fr 1.5fr; }
  .home-start-action { grid-column: 2; justify-self: end; }
  .home-discovery { padding-top: 90px; }
  .home-featured-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .home-stage { padding: 0; }
  .home-stage-inner { display: flex; flex-direction: column; min-height: 0; }
  .home-stage-copy { padding: 52px 20px 42px; }
  .home-stage h1 { font-size: clamp(34px, 8.5vw, 50px); white-space: normal; }
  .home-stage-description { margin: 19px 0 24px; font-size: 13px; }
  .home-stage-description br { display: none; }
  .home-stage-disclaimer { margin-top: 23px; }
  .home-stage-visual { min-height: 360px; }
  .home-stage-car { width: min(120%, 660px); left: 50%; top: 47%; transform: translate(-50%, -50%); animation: none; }
  .home-stage-visual-top, .home-stage-visual-bottom { left: 20px; right: 20px; }
  .home-stage-visual-top { top: 20px; }.home-stage-visual-bottom { bottom: 22px; }
  .home-path { display: flex; flex-direction: column; align-items: stretch; gap: 19px; margin: 0; padding: 26px 20px; box-shadow: none; }
  .home-path h2 { font-size: 19px; }
  .home-path ol { gap: 0; }
  .home-path li { padding-left: 10px; font-size: 11px; }
  .home-start-action { justify-self: stretch; }
  .home-discovery { padding: 72px 20px; }
  .home-section-head { align-items: flex-start; flex-direction: column; gap: 10px; }
  .home-section-head h2, .home-questions h2 { font-size: 35px; }
  .home-brand-strip { align-items: flex-start; flex-direction: column; padding: 14px; }
  .home-brand-strip > div { width: 100%; }
  .home-brand-strip a { padding: 7px 10px; }
  .home-featured-grid { gap: 10px; }
  .home-feature-visual { height: 160px; }
  .home-feature-meta { padding: 13px; }
  .home-feature-meta strong { font-size: 21px; }
  .home-feature-meta > span { margin-top: 12px; }
  .home-method { padding: 76px 20px; }
  .home-method-inner { grid-template-columns: 1fr; gap: 40px; }
  .home-method-detail { min-height: 0; }
  .home-method-numeral { top: -20px; right: 0; font-size: 250px; }
  .home-questions { padding: 75px 20px; }
  .home-questions-inner { grid-template-columns: 1fr; gap: 30px; }
  .home-closing { align-items: stretch; flex-direction: column; padding: 50px 20px; }
}
@media (max-width: 490px) {
  .home-stage-actions { align-items: stretch; flex-direction: column; gap: 5px; }
  .home-button-primary { justify-content: space-between; }
  .home-button-text { align-self: flex-start; }
  .home-stage-visual { min-height: 320px; }
  .home-stage-car { width: 135%; }
  .home-featured-grid { grid-template-columns: 1fr 1fr; }
  .home-feature-visual { height: 128px; }
  .home-feature-visual img { width: 120%; }
  .home-feature-meta small { font-size: 9px; }
  .home-feature-meta strong { font-size: 19px; }
  .home-feature-meta > span { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-stage-car, .home-featured.is-revealed .home-feature-card { animation: none !important; }
  .home-feature-card, .home-feature-visual img { transition: none; }
}

/* Carry the hero's warm wine palette through the supporting sections. */
.home-discovery{background:#fff;padding-top:88px;padding-bottom:88px}
.home-section-head h2,.home-method h2,.home-questions h2{color:#30252a}
.home-section-head h2 span{color:#8d6b76}
.home-label{color:#a02743}
.home-section-head p:last-child,.home-questions details p{color:#82737a}
.home-section-link{border:1px solid #ead7dd;border-radius:28px;padding:12px 20px;gap:22px;transition:background .2s}
.home-section-link:hover{background:#fbf1f4;gap:22px}
.home-brand-strip{border-color:#f0e3e7;border-radius:18px;background:#fcf8f9;padding:12px 20px;margin-bottom:22px}
.home-brand-strip>span{color:#8b737d}
.home-brand-strip a{color:#704451}
.home-featured-grid{gap:20px}
.home-feature-card{border:1px solid #eee3e6;border-radius:20px;box-shadow:0 6px 22px #68223705;color:#36292f}
.home-feature-card:hover{box-shadow:0 16px 32px #68223712}
.home-feature-santafe,.home-feature-carnival,.home-feature-g80,.home-feature-sorento{background:radial-gradient(ellipse at 50% 70%,#fff 0%,#f3ebea 76%)}
.home-feature-visual img{filter:drop-shadow(0 12px 10px #56303d20)}
.home-feature-meta{padding:22px}
.home-feature-meta small{color:#a0828d;font-weight:700}
.home-feature-meta strong{font-size:25px}
.home-feature-meta>span{border-color:#f1e7ea;color:#9a2541}
.home-featured-note{color:#9b8d93;line-height:1.7}
.home-method{background:#fbf3f5;color:#412b34;padding-top:88px;padding-bottom:88px}
.home-method .home-label{color:#a02743}
.home-method h2{font-size:clamp(34px,3.3vw,52px)}
.home-method h2 span{color:#a02743}
.home-method-lead>p:not(.home-label){color:#8a707b}
.home-method .home-section-link{color:#92243e;border-color:#e5cbd4;background:#fff9fb}
.home-method-numeral{display:none}
.home-method-detail{min-height:0}
.home-method ol{display:grid;gap:12px}
.home-method li,.home-method li:last-child{min-height:104px;padding:24px;gap:20px;background:#ffffffb8;border:1px solid #efdee4;border-radius:18px}
.home-method li>span{display:grid;place-items:center;flex:none;width:32px;height:32px;padding:0;border-radius:50%;background:#f7e7ed;color:#a02743}
.home-method li strong{font-size:20px;color:#49323b}
.home-method li small{color:#927882;line-height:1.6}
.home-questions{padding-top:88px;padding-bottom:88px}
.home-questions details,.home-questions details:first-child{margin-bottom:12px;padding:22px 24px;border:1px solid #efE2e7;border-radius:16px;background:#fdfafb}
.home-questions summary{color:#543a45;font-size:16px;line-height:1.6}
.home-closing{background:radial-gradient(ellipse at 90% 30%,#be526b 0%,#98213e 75%);padding-top:56px;padding-bottom:56px}
.home-closing a{border-radius:28px;padding:16px 24px;box-shadow:0 8px 24px #580b2514}
.home-method a:focus-visible{outline-color:#a02743}
@media(max-width:760px){.home-discovery,.home-method,.home-questions{padding-top:64px;padding-bottom:64px}.home-featured-grid{gap:12px}.home-brand-strip{padding:14px;border-radius:16px}.home-feature-card{border-radius:16px}.home-feature-meta{padding:16px}.home-feature-meta strong{font-size:22px}.home-method li,.home-method li:last-child{padding:20px;gap:14px}.home-questions details,.home-questions details:first-child{padding:18px}.home-closing{padding-top:40px;padding-bottom:40px}}

/* A continuous white canvas below the main slide. */
.home-discovery,.home-method,.home-questions,.home-closing,
.home-brand-strip,.home-feature-card,.home-feature-visual,
.home-feature-santafe,.home-feature-carnival,.home-feature-g80,.home-feature-sorento,
.home-method li,.home-method li:last-child,
.home-questions details,.home-questions details:first-child,
.home-method .home-section-link,.home-closing a{background:#fff}
.home-feature-visual::before{background:none}
.home-method li>span{background:transparent}
.home-closing{color:#30252a;border-top:1px solid #f0e6e9}
.home-closing p{color:#8a707b}
.home-closing a{border:1px solid #ead7dd;box-shadow:none}
.home-closing a:focus-visible{outline-color:#a02743}
