:root {
  --navy:#061b36;
  --navy-2:#0b2d50;
  --paper:#fbfaf6;
  --cream:#f3eee4;
  --white:#fff;
  --aqua:#58d6d0;
  --teal:#128781;
  --blue:#0a8dcc;
  --pink:#de4e91;
  --ink:#091c33;
  --muted:#657286;
  --line:rgba(6,27,54,.16);
  --serif:Georgia,"Times New Roman",serif;
  --sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --max:1280px;
  --pad:clamp(22px,4vw,64px);
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--paper); }
body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--sans); -webkit-font-smoothing:antialiased; }
body.menu-open,body.panel-open { overflow:hidden; }
img { display:block; max-width:100%; }
a { color:inherit; }
button,input { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid var(--aqua); outline-offset:4px; }
.shell { width:min(calc(100% - (var(--pad) * 2)),var(--max)); margin-inline:auto; }
.skip-link { position:fixed; z-index:100; left:18px; top:14px; padding:12px 16px; color:white; background:var(--navy); transform:translateY(-180%); }
.skip-link:focus { transform:none; }
.eyebrow { margin:0 0 18px; color:var(--teal); font-size:11px; font-weight:900; letter-spacing:.18em; text-transform:uppercase; }

.site-header { position:absolute; z-index:50; inset:0 0 auto; height:84px; color:white; background:rgba(4,20,39,.88); border-bottom:1px solid rgba(255,255,255,.16); backdrop-filter:blur(18px); }
.header-inner { height:100%; display:flex; align-items:center; gap:24px; }
.brand { width:168px; flex:0 0 auto; }
.brand img { width:100%; height:auto; filter:brightness(0) invert(1); }
.primary-nav { margin-left:auto; }
.primary-nav ul { display:flex; align-items:center; gap:26px; margin:0; padding:0; list-style:none; }
.primary-nav a,.primary-nav button { position:relative; padding:10px 0; color:rgba(255,255,255,.82); background:transparent; border:0; font-size:12px; font-weight:750; text-decoration:none; cursor:pointer; }
.primary-nav a::after { content:""; position:absolute; left:0; right:100%; bottom:0; height:2px; background:var(--aqua); transition:right .25s ease; }
.primary-nav a:hover { color:white; }
.primary-nav a:hover::after { right:0; }
.mobile-access { display:none; }
.header-actions { display:flex; align-items:center; gap:9px; margin-left:4px; padding-left:20px; border-left:1px solid rgba(255,255,255,.22); }
.signin { padding:10px 3px; color:rgba(255,255,255,.82); font-size:11px; font-weight:850; letter-spacing:.08em; text-decoration:none; text-transform:uppercase; }
.business-login { min-height:43px; padding:0 16px; color:var(--navy); background:white; border:1px solid white; border-radius:2px; cursor:pointer; font-size:10px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; transition:.22s ease; }
.business-login:hover { color:white; background:transparent; transform:translateY(-2px); }
.menu-button { display:none; min-width:58px; height:42px; padding:0 12px; color:white; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.3); font-size:9px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }

.business-intro { position:relative; min-height:760px; display:grid; align-items:center; overflow:hidden; padding-top:84px; color:white; background:linear-gradient(130deg,#031326 0%,#061b36 55%,#0a385b 100%); isolation:isolate; }
.intro-grid { position:absolute; inset:0; z-index:-2; opacity:.24; background-image:radial-gradient(circle,rgba(88,214,208,.7) .8px,transparent 1px); background-size:36px 36px; mask-image:linear-gradient(90deg,transparent 8%,black 55%); }
.intro-orbit { position:absolute; z-index:-1; border:1px solid rgba(88,214,208,.14); border-radius:50%; }
.orbit-one { width:min(65vw,900px); aspect-ratio:1; right:-14vw; top:-34vw; box-shadow:0 0 0 120px rgba(88,214,208,.015),0 0 0 240px rgba(88,214,208,.01); }
.orbit-two { width:260px; aspect-ratio:1; right:15vw; bottom:-90px; }
.intro-inner { display:grid; grid-template-columns:1.15fr .6fr; align-items:center; gap:clamp(55px,8vw,130px); padding-block:125px 85px; }
.business-intro .eyebrow { color:var(--aqua); }
.business-intro h1 { max-width:850px; margin:0; font:400 clamp(68px,8vw,118px)/.89 var(--serif); letter-spacing:-.067em; }
.intro-copy { max-width:690px; margin:30px 0 36px; color:rgba(255,255,255,.68); font:400 clamp(19px,2vw,27px)/1.55 var(--serif); }
.intro-action { display:inline-flex; align-items:center; gap:24px; min-height:55px; padding:0 22px; color:var(--navy); background:var(--aqua); border:1px solid var(--aqua); cursor:pointer; font-size:11px; font-weight:900; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; transition:.22s ease; }
.intro-action:hover { background:white; border-color:white; transform:translateY(-3px); }
.identity-card { padding:clamp(28px,4vw,50px); background:rgba(4,20,39,.5); border:1px solid rgba(88,214,208,.25); backdrop-filter:blur(18px); }
.identity-mark { width:76px; height:76px; display:grid; place-items:center; margin-bottom:45px; border:1px solid rgba(88,214,208,.35); border-radius:50%; background:rgba(88,214,208,.08); }
.identity-mark img { width:44px; filter:brightness(0) invert(1); }
.identity-card h2 { margin:0; font:400 clamp(29px,3vw,43px)/1.03 var(--serif); }
.identity-path { display:grid; gap:10px; margin-top:40px; }
.identity-path span { padding:10px 12px; color:rgba(255,255,255,.72); background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.12); font-size:9px; font-weight:850; letter-spacing:.09em; text-transform:uppercase; }
.identity-path i { width:1px; height:17px; margin-left:18px; background:var(--aqua); }

.access-section { background:var(--paper); }
.access-header { min-height:230px; display:flex; align-items:flex-end; justify-content:space-between; gap:60px; padding:70px max(var(--pad),calc((100vw - var(--max))/2)); border-bottom:1px solid var(--line); }
.access-header h2 { margin:0; font:400 clamp(50px,6vw,86px)/.92 var(--serif); letter-spacing:-.055em; }
.product-doors { display:grid; grid-template-columns:1fr 1fr; min-height:720px; }
.product-door { position:relative; display:flex; flex-direction:column; overflow:hidden; padding-block:clamp(50px,6vw,92px); padding-inline:var(--pad); }
.media-door { padding-inline-start:max(var(--pad),calc((100vw - var(--max))/2)); color:white; background:linear-gradient(145deg,#04152a,#0a385c); }
.ecay-door { padding-inline-end:max(var(--pad),calc((100vw - var(--max))/2)); color:var(--navy); background:linear-gradient(145deg,#eaf5f8,#fff); }
.door-top { display:flex; align-items:baseline; justify-content:space-between; padding-bottom:18px; border-bottom:1px solid currentColor; }
.door-top span { font:400 25px/1 var(--serif); }
.door-top b { font-size:10px; letter-spacing:.13em; text-transform:uppercase; }
.product-door h3 { max-width:600px; margin:0; font:400 clamp(52px,6vw,88px)/.92 var(--serif); letter-spacing:-.052em; }
.product-door > p:not(.eyebrow) { max-width:540px; margin:22px 0 0; color:inherit; opacity:.68; font-size:15px; line-height:1.7; }
.door-signal,.jobs-visual { position:relative; height:170px; margin:38px 0; }
.door-signal i { position:absolute; left:22%; top:50%; width:38px; height:38px; border:1px solid var(--aqua); border-radius:50%; transform:translate(-50%,-50%) scale(var(--signal-scale)); opacity:calc(1 - var(--signal-scale)/5); animation:door-pulse 3.6s ease-out infinite; }
.door-signal i:nth-child(1) { --signal-scale:1; }
.door-signal i:nth-child(2) { --signal-scale:2.8; animation-delay:1.2s; }
.door-signal i:nth-child(3) { --signal-scale:4.4; animation-delay:2.4s; }
@keyframes door-pulse { 0%,100%{opacity:.2} 50%{opacity:.75} }
.jobs-visual { display:flex; align-items:center; justify-content:center; gap:14px; }
.jobs-visual i { width:25%; max-width:120px; height:92px; border:1px solid rgba(6,27,54,.2); background:rgba(255,255,255,.56); box-shadow:9px 9px 0 rgba(10,141,204,.11); transition:.3s ease; }
.ecay-door:hover .jobs-visual i:nth-child(1) { transform:translateY(10px); }
.ecay-door:hover .jobs-visual i:nth-child(2) { transform:translateY(-20px); }
.ecay-door:hover .jobs-visual i:nth-child(3) { transform:translateY(3px); }
.coming-soon { width:max-content; min-height:58px; display:inline-flex; align-items:center; gap:10px; margin-top:48px; padding:0 18px; color:var(--aqua); border:1px solid rgba(88,214,208,.38); border-radius:999px; font-size:11px; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.coming-soon i { width:9px; height:9px; background:var(--aqua); border-radius:50%; box-shadow:0 0 18px var(--aqua); animation:status-pulse 1.8s ease-out infinite; }
@keyframes status-pulse { 0%{box-shadow:0 0 0 0 rgba(88,214,208,.5),0 0 14px var(--aqua)} 75%,100%{box-shadow:0 0 0 14px transparent,0 0 20px var(--aqua)} }
.ecay-signup { width:max-content; display:flex; align-items:center; gap:34px; margin-top:48px; padding:0 23px; color:white; background:var(--navy); border:1px solid var(--navy); cursor:pointer; font-size:11px; font-weight:900; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; transition:.25s ease; }
.access-section .product-door .ecay-signup { min-height:58px; }
.ecay-signup:hover { color:var(--navy); background:white; transform:translateY(-3px); box-shadow:0 18px 38px rgba(6,27,54,.15); }
.shared-id-banner { min-height:110px; display:flex; align-items:center; gap:18px; padding:20px max(var(--pad),calc((100vw - var(--max))/2)); color:white; background:#102c48; border-top:1px solid rgba(255,255,255,.15); }
.shared-mark { width:54px; height:54px; display:grid; place-items:center; flex:0 0 auto; border:1px solid rgba(88,214,208,.3); border-radius:50%; }
.shared-mark img { width:32px; filter:brightness(0) invert(1); }
.shared-id-banner strong,.shared-id-banner small { display:block; }
.shared-id-banner strong { font:400 23px/1.1 var(--serif); }
.shared-id-banner small { max-width:760px; margin-top:6px; color:rgba(255,255,255,.58); font-size:11px; line-height:1.55; }
.shared-pulse { display:flex; align-items:center; gap:8px; margin-left:auto; }
.shared-pulse i { width:9px; height:9px; background:var(--aqua); border-radius:50%; box-shadow:0 0 14px var(--aqua); }
.shared-pulse i:nth-child(2) { opacity:.55; }
.shared-pulse i:nth-child(3) { opacity:.2; }

.access-explainer { padding:clamp(90px,10vw,150px) 0; background:var(--cream); }
.explainer-heading { display:grid; grid-template-columns:1.1fr .55fr; gap:8vw; align-items:end; margin-bottom:55px; }
.explainer-heading h2 { margin:0; font:400 clamp(52px,6vw,88px)/.93 var(--serif); letter-spacing:-.055em; }
.explainer-heading > p { margin:0 0 8px; color:var(--muted); font-size:15px; line-height:1.75; }
.explainer-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.explainer-grid article { min-height:270px; padding:30px; background:rgba(255,255,255,.28); border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.explainer-grid span { color:var(--teal); font:400 22px/1 var(--serif); }
.explainer-grid strong { display:block; max-width:300px; margin:72px 0 15px; font:400 29px/1.08 var(--serif); }
.explainer-grid p { margin:0; color:var(--muted); font-size:12px; line-height:1.7; }

.site-footer { padding:44px 0; color:white; background:var(--navy); border-top:1px solid rgba(255,255,255,.15); }
.footer-inner { display:flex; align-items:center; justify-content:space-between; gap:30px; }
.footer-inner > a:first-child { width:175px; }
.footer-inner p { color:rgba(255,255,255,.55); font-size:11px; }
.footer-inner > a:last-child { color:var(--aqua); font-size:10px; font-weight:900; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; }

.panel-scrim { position:fixed; z-index:70; inset:0; background:rgba(1,10,21,.58); opacity:0; visibility:hidden; transition:.3s ease; }
.account-panel { position:fixed; z-index:80; inset:0 0 0 auto; width:min(100%,570px); overflow-y:auto; padding:clamp(46px,6vw,78px); color:var(--navy); background:rgba(255,255,255,.99); box-shadow:-40px 0 100px rgba(1,10,21,.25); transform:translateX(105%); transition:transform .42s cubic-bezier(.22,.75,.18,1); }
body.panel-open .panel-scrim { opacity:1; visibility:visible; }
body.panel-open .account-panel { transform:none; }
.panel-close { position:absolute; right:25px; top:24px; width:42px; height:42px; padding:0; background:transparent; border:1px solid var(--line); cursor:pointer; font-size:25px; }
.account-panel h2 { margin:0; font:400 clamp(46px,5vw,64px)/.94 var(--serif); letter-spacing:-.05em; }
.panel-copy,.handoff-copy { margin:20px 0 30px; color:var(--muted); font-size:14px; line-height:1.7; }
.account-promise { display:flex; align-items:center; gap:15px; margin-bottom:30px; padding:20px; color:white; background:var(--navy); }
.account-promise img { width:38px; filter:brightness(0) invert(1); }
.account-promise p { margin:0; }
.account-promise strong,.account-promise small { display:block; }
.account-promise strong { font:400 19px/1.1 var(--serif); }
.account-promise small { margin-top:6px; color:rgba(255,255,255,.6); font-size:10px; line-height:1.5; }
.account-form label { display:block; margin-bottom:10px; font-size:12px; font-weight:850; }
.account-form input { width:100%; min-height:62px; padding:0 17px; color:var(--navy); background:white; border:1px solid rgba(6,27,54,.3); font-size:16px; }
.account-form input:focus { outline:0; border-color:var(--navy); box-shadow:inset 0 0 0 1px var(--navy); }
.form-error { min-height:21px; margin:9px 0 0; color:#a5204c; font-size:11px; font-weight:700; }
.account-form button,.handoff-action { width:100%; min-height:60px; display:flex; align-items:center; justify-content:space-between; margin-top:8px; padding:0 20px; color:white; background:var(--navy); border:1px solid var(--navy); cursor:pointer; font-size:11px; font-weight:900; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; transition:.22s ease; }
.account-form button:hover,.handoff-action:hover { color:var(--navy); background:var(--aqua); border-color:var(--aqua); }
.account-form button b { font-size:17px; }
.panel-note { margin:16px 0 0; color:var(--muted); font-size:10px; line-height:1.6; }
.handoff-map { display:grid; gap:9px; margin:30px 0; }
.handoff-map article { display:grid; grid-template-columns:42px 1fr; align-items:center; gap:13px; min-height:78px; padding:15px; background:#f7f4eb; border:1px solid var(--line); }
.handoff-map article > span { color:var(--teal); font:400 18px/1 var(--serif); }
.handoff-map strong,.handoff-map small { display:block; }
.handoff-map strong { font:400 18px/1.1 var(--serif); }
.handoff-map small { margin-top:5px; color:var(--muted); font-size:9px; line-height:1.5; }
.panel-back { display:block; margin:18px auto 0; padding:0; color:var(--muted); background:transparent; border:0; cursor:pointer; font-size:10px; font-weight:850; letter-spacing:.07em; text-decoration:underline; text-underline-offset:4px; text-transform:uppercase; }

@media (max-width:980px) {
  .site-header { position:fixed; height:72px; }
  .brand { width:145px; }
  .header-actions { margin-left:auto; padding-left:0; border-left:0; }
  .header-actions .signin,.header-actions .business-login { display:none; }
  .menu-button { display:block; }
  .primary-nav { position:fixed; inset:72px 0 0; display:none; padding:30px var(--pad); background:rgba(4,20,39,.98); }
  body.menu-open .primary-nav { display:block; }
  .primary-nav ul { align-items:stretch; flex-direction:column; gap:0; }
  .primary-nav li { border-bottom:1px solid rgba(255,255,255,.14); }
  .primary-nav a,.primary-nav button { width:100%; display:block; padding:18px 0; text-align:left; font-size:14px; }
  .mobile-access { display:block; }
  .intro-inner { grid-template-columns:1fr; gap:55px; }
  .business-intro { min-height:0; }
  .business-intro h1 { font-size:clamp(65px,11vw,100px); }
  .identity-card { max-width:650px; }
  .access-header { align-items:flex-start; flex-direction:column; }
  .product-doors { grid-template-columns:1fr; }
  .product-door { min-height:680px; }
  .explainer-heading { grid-template-columns:1fr; gap:30px; }
}
@media (max-width:680px) {
  .business-intro h1 { font-size:61px; }
  .intro-copy { font-size:19px; }
  .intro-action { width:100%; justify-content:space-between; font-size:10px; }
  .identity-card { padding:28px; }
  .access-header { min-height:0; padding-block:60px; }
  .access-header h2 { font-size:52px; }
  .product-door { min-height:620px; padding-block:50px; }
  .product-door h3 { font-size:57px; }
  .ecay-signup { width:100%; justify-content:space-between; font-size:10px; }
  .shared-id-banner { align-items:flex-start; }
  .shared-pulse { display:none; }
  .explainer-grid { grid-template-columns:1fr; }
  .explainer-grid article { min-height:220px; }
  .explainer-grid strong { margin-top:50px; }
  .footer-inner { align-items:flex-start; flex-direction:column; }
  .account-panel { padding:70px 24px 45px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}
