/* Homepage: a future designed around you */
body[data-page="landing"] { background:var(--bg-white); }
.future-hero { padding:65px 0 0; background:var(--bg-white); overflow:hidden; }
.future-hero-grid { display:grid; grid-template-columns:1.12fr 1fr; align-items:center; gap:64px; }
.eyebrow { font-size:11px; font-weight:800; letter-spacing:2px; display:inline-flex; gap:10px; align-items:center; color:var(--primary-navy); }
.status-dot { width:7px; height:7px; background:var(--bg-white); border-radius:50%; box-shadow:0 0 0 5px #f1f3f5; }
.future-copy h1 { font-size:clamp(42px,5vw,70px); font-weight:600; letter-spacing:-3px; line-height:1.05; margin:26px 0; color:var(--primary-navy); }
.future-copy h1 em, .editorial-heading em, .fit-intro em, .chapter-cta em { font-family:Georgia,serif; font-weight:400; color:var(--brand-orange); }
.future-copy > p { max-width:540px; font-size:16px; line-height:1.9; color:var(--text-muted); }
.hero-actions { display:flex; flex-wrap:wrap; gap:24px; align-items:center; margin:30px 0; }
.future-hero .btn-primary, .chapter-cta .btn-primary { background:var(--bg-white); border-color:var(--primary-navy); border-radius:8px; padding:17px 23px; }
.text-link { display:inline-flex; gap:16px; align-items:center; border:0; background:none; color:var(--primary-navy); font:700 13px var(--font-body); cursor:pointer; padding:10px 0; }
.text-link span { font-size:23px; }
.hero-note { display:flex; align-items:center; gap:16px; color:var(--text-muted); font-size:11px; line-height:1.8; }
.hero-note strong { color:var(--primary-navy); font-weight:600; }
.mini-avatars { display:flex; padding-left:8px; }
.mini-avatars i { display:grid; place-items:center; width:34px; height:34px; margin-left:-8px; background:var(--bg-white); color:var(--primary-navy); border:3px solid var(--bg-white); border-radius:50%; }
.mini-avatars i:nth-child(2) { background:var(--bg-white); }
.future-art { position:relative; min-height:475px; border-radius:150px 150px 24px 24px; background:var(--bg-white); color:var(--primary-navy); padding:30px; }
.art-topline { display:flex; justify-content:space-between; font-size:8px; letter-spacing:1.3px; position:relative; z-index:1; margin-top:32px; }
.art-live { color:var(--primary-navy); }
.journey-globe { width:100%; display:block; margin-top:-14px; overflow:visible; }
.globe-lines { fill:none; stroke:var(--primary-navy); stroke-width:.7; opacity:.35; }
.outer-orbit { fill:none; stroke:#94a3b8; stroke-width:.8; stroke-dasharray:3 9; transform-origin:250px 207px; animation:globe-orbit 55s linear infinite; }
.globe-land { fill:#8eaed0; opacity:.55; }
.flight-path { fill:none; stroke:var(--brand-orange); stroke-width:2; stroke-dasharray:8 7; animation:route-flow 4s linear infinite; }
.map-point { fill:var(--brand-orange); }
.plane-mark { fill:var(--brand-orange); animation:plane-drift 6s ease-in-out infinite; }
.orbit-label { position:absolute; display:flex; gap:12px; align-items:center; background:var(--bg-white); color:var(--primary-navy); border:1px solid var(--border-color); border-radius:12px; padding:14px 17px; font-size:10px; animation:gentle-float 6s ease-in-out infinite; }
.orbit-label i { font-size:22px; }.orbit-label strong { display:block; color:var(--primary-navy); font-size:12px; margin-top:2px; }
.label-profile { left:-24px; top:180px; }.label-future { right:-20px; top:310px; animation-delay:-3s; }
.journey-ticket { display:flex; align-items:center; justify-content:space-between; background:var(--bg-white); color:var(--primary-navy); padding:21px 24px; border-radius:10px; margin-top:-25px; position:relative; }
.journey-ticket span { display:block; font-size:8px; letter-spacing:2px; margin-bottom:7px; }.journey-ticket strong { font-size:15px; letter-spacing:2px; }.journey-ticket b { color:var(--brand-orange); padding:0 12px; }.journey-ticket > i { font-size:27px; }
.proof-strip { display:grid; grid-template-columns:repeat(4,1fr); margin-top:65px; padding-block:30px; border-top:1px solid var(--border-color); border-bottom:1px solid #e5e6dc; }
.proof-strip > div { padding-inline:32px; border-right:1px solid var(--border-color); }.proof-strip > div:first-child { padding-left:0; }.proof-strip > div:last-child { border:0; }
.proof-strip strong { display:block; font:500 clamp(23px,3vw,34px) var(--font-heading); color:var(--primary-navy); }.proof-strip span { display:block; margin-top:5px; color:var(--text-muted); font-size:11px; }
.support-section, .difference-section { padding:95px 0; }
.editorial-heading { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:36px; }
.editorial-heading h2, .fit-intro h2, .chapter-cta h2 { font-size:clamp(34px,4vw,48px); color:var(--primary-navy); line-height:1.13; letter-spacing:-1.6px; font-weight:500; margin-top:17px; }
.editorial-heading > p { max-width:400px; color:var(--text-muted); font-size:14px; line-height:1.9; }
.support-grid { display:grid; grid-template-columns:1.15fr 1fr 1fr; gap:18px; }
.support-feature { grid-row:span 2; background:var(--bg-white); border-radius:16px; padding:34px; display:flex; flex-direction:column; align-items:start; }
.service-number { font-size:9px; letter-spacing:1.5px; color:var(--text-muted); font-weight:700; }.support-feature .service-icon { font-size:34px; color:var(--primary-navy); margin:32px 0; }
.support-feature h3 { color:var(--primary-navy); font-size:29px; font-weight:500; }.support-feature p { color:var(--text-muted); font-size:13px; line-height:1.9; margin:22px 0; }.support-feature .text-link { margin-top:auto; }
.support-card { padding:27px; border:1px solid var(--border-color); border-radius:16px; background:var(--bg-white); }.support-card > i { display:block; font-size:24px; color:var(--brand-orange); margin:22px 0 16px; }.support-card h3 { font-size:20px; font-weight:500; color:var(--primary-navy); }.support-card p { font-size:12px; line-height:1.9; color:var(--text-muted); margin-top:10px; }
.future-fit { background:var(--bg-white); color:var(--primary-navy); padding:80px 0; }.fit-layout { display:grid; grid-template-columns:1fr 1.2fr; gap:90px; align-items:center; }.fit-intro .eyebrow { color:var(--primary-navy); }.fit-intro h2 { color:var(--primary-navy); font-size:52px; }.fit-intro h2 em { color:var(--brand-orange); }.fit-intro p { color:var(--text-muted); font-size:14px; line-height:1.9; margin:24px 0; max-width:365px; }.fit-caption { display:block; font-size:10px; letter-spacing:.7px; color:var(--text-muted); }
.fit-workspace { border:1px solid var(--border-color); border-radius:18px; overflow:hidden; background:var(--bg-white); color:var(--primary-navy); }.fit-tabs { display:flex; padding:10px; gap:4px; background:var(--bg-white); }.fit-tabs button { flex:1; border:0; background:transparent; color:var(--text-muted); padding:15px 8px; font:600 11px var(--font-body); border-radius:8px; cursor:pointer; }.fit-tabs button[aria-selected="true"] { background:var(--bg-white); color:#fff; }
#fit-panel { padding:34px; min-height:325px; }.fit-panel-label { font-size:9px; letter-spacing:1.3px; color:var(--brand-orange); font-weight:700; }#fit-panel h3 { color:var(--primary-navy); font-size:25px; font-weight:500; margin:15px 0; }#fit-panel p { font-size:13px; line-height:1.8; color:var(--text-muted); }#fit-panel ul { list-style:none; margin-top:20px; display:grid; gap:10px; font-size:12px; }#fit-panel li::before { content:'↗'; color:var(--brand-orange); margin-right:12px; }
.fit-footer { border-top:1px solid var(--border-color); padding:20px 28px; display:flex; justify-content:space-between; align-items:center; gap:14px; font-size:10px; color:var(--text-muted); }.fit-footer button { width:36px; height:36px; border:0; border-radius:50%; background:var(--bg-white); color:var(--primary-navy); cursor:pointer; flex-shrink:0; }
.difference-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; }.difference-grid article { border-top:1px solid var(--border-color); padding-top:25px; }.difference-grid article > span { color:var(--brand-orange); font:italic 32px Georgia,serif; }.difference-grid h3 { color:var(--primary-navy); margin:15px 0; font-size:23px; font-weight:500; }.difference-grid p { font-size:13px; color:var(--text-muted); line-height:1.9; }
.chapter-cta { text-align:center; background:var(--bg-white); padding:80px 20px; }.chapter-cta h2 { margin:22px 0 30px; font-size:clamp(38px,5vw,60px); }.chapter-cta p { font-size:12px; color:var(--text-muted); margin-top:20px; }
@keyframes globe-orbit { to { transform:rotate(360deg); } }@keyframes route-flow { to { stroke-dashoffset:-60; } }@keyframes gentle-float { 50% { transform:translateY(-9px); } }@keyframes plane-drift { 50% { transform:translate(12px,-6px) rotate(2deg); } }
@media(max-width:1000px) { .future-hero-grid { gap:34px; }.future-copy h1 { letter-spacing:-2px; }.future-art { min-height:390px; padding:20px; }.label-profile { left:-10px; top:130px; }.label-future { right:-8px; top:245px; }.art-live { display:none; }.fit-layout { gap:35px; }.support-feature { padding:25px; } }
@media(max-width:720px) { .future-hero { padding-top:35px; }.future-hero-grid,.fit-layout { grid-template-columns:1fr; }.future-copy h1 { font-size:46px; }.future-copy > p { font-size:14px; }.future-art { margin:15px 8px 0; max-width:470px; width:calc(100% - 16px); justify-self:center; }.proof-strip { grid-template-columns:1fr 1fr; gap:25px 0; margin-top:35px; }.proof-strip > div,.proof-strip > div:first-child { padding:0 18px; }.proof-strip > div:nth-child(2) { border:0; }.editorial-heading { display:block; }.editorial-heading > p { margin-top:20px; }.support-grid { grid-template-columns:1fr 1fr; }.support-feature { grid-column:1 / -1; grid-row:auto; }.support-card { padding:20px; }.support-section,.difference-section { padding:60px 0; }.difference-grid { grid-template-columns:1fr; gap:25px; }.fit-intro h2 { font-size:43px; }.fit-intro h2 br { display:none; }.fit-intro p { max-width:none; }#fit-panel { padding:25px; min-height:350px; }.fit-tabs button { font-size:10px; }.fit-footer { padding:16px; }.chapter-cta { padding:60px 15px; } }
@media(max-width:390px) { .future-copy h1 { font-size:39px; }.support-grid { grid-template-columns:1fr; }.label-future { top:235px; }.orbit-label { padding:10px; }.journey-ticket strong { font-size:12px; }.future-art { min-height:365px; } }

/* Light surfaces, logo-blue typography and orange highlights. */
.future-art, .future-fit, .chapter-cta, .support-feature, .fit-tabs { background: #f7f8fa; }
.future-art { border: 1px solid var(--border-color); box-shadow: 0 12px 32px rgba(0,0,0,.045); }
.future-fit { border-block: 1px solid var(--border-color); }
.future-hero .btn-primary, .chapter-cta .btn-primary, .fit-tabs button[aria-selected="true"] { background: var(--primary-navy); color: #fff; }
.future-hero .btn-primary:hover, .chapter-cta .btn-primary:hover { background: var(--primary-navy-dark); }
.status-dot { background: var(--brand-orange); }
.mini-avatars i, .fit-footer button { background: #f1f3f5; }
.mini-avatars i:nth-child(2) { color: var(--brand-orange); }
.orbit-label, .journey-ticket, .fit-workspace, .support-card { box-shadow: 0 6px 20px rgba(0,0,0,.04); }
.journey-ticket { border: 1px solid var(--border-color); }
.support-feature { border: 1px solid var(--border-color); }
.globe-land { opacity: .45; }
.art-live, .support-card > i, .journey-ticket b { color: var(--brand-orange); }
