/* Purpose-specific entry points; existing scroll paths and auth remain shared. */
.purpose-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.hero-title .purpose-actions{justify-content:center}
.button-secondary{background:transparent;border-color:#799abb65;color:#d5e5f8}
.button-secondary:hover{background:#abcfff12;border-color:#93b9e3}
.text-link{font-size:13px;color:#adc9eb;padding:10px 0;border-bottom:1px solid #91b7df4d}
.text-link:hover{color:#fff;border-color:#d5e8ff}
.purpose-note,.hero-title .purpose-note{font-size:12px;line-height:1.7;color:#8fa6c2;margin-top:17px}
.purpose-section{max-width:1140px;margin:auto;padding:95px 40px}
.purpose-heading h2{font-size:clamp(35px,4.1vw,57px);line-height:1.18;margin-bottom:20px}
.purpose-heading>p:not(.eyebrow){font-size:17px;color:#91a6c1}
.purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:44px}
.purpose-card{border-top:1px solid #8badcf45;padding-top:26px}
.purpose-card h3{font-size:25px;margin:12px 0 18px;letter-spacing:-.04em}
.purpose-card>p:not(.purpose-step){font-size:14px;line-height:1.9;color:#a4b8d2;max-width:420px}
.purpose-card .button{margin-top:25px}
.purpose-card .purpose-step{font-size:11px;letter-spacing:.16em;color:#80b9ff}
.editorial-items .purpose-step .button{font-size:12px;padding:9px 15px;margin-top:18px;gap:15px}
.editorial-heading .purpose-note{font-size:12px;margin:20px 0 0}
.editorial{padding-top:95px;padding-bottom:95px}
.closing{padding:65px 24px 80px}
.closing .symbol{width:28px;margin-bottom:24px}
.closing h2{font-size:clamp(28px,3.3vw,43px);margin-bottom:24px}
/* Shorter stages retain the same exponential arrival/departure curves. */
.motion .hero{height:155svh}
.motion .showcase{height:185svh}
.motion .journey{height:240svh}

/* The platform is an entry point, with brand storytelling continuing on scroll. */
body[data-site="platform"] .constellation{background:radial-gradient(ellipse 44% 48% at 50% 50%,#246ce42b 0%,#17458412 45%,#10305a05 70%,transparent 100%)}
body[data-site="platform"] .hero-title{text-align:left;padding:150px 7vw 35px}
body[data-site="platform"] .hero-title h1{font-size:clamp(48px,6vw,86px);line-height:1.13}
body[data-site="platform"] .hero-subtitle{font-size:16px;line-height:1.8;margin:22px 0 26px}
.portal-shortcuts{display:grid;grid-template-columns:repeat(3,1fr);max-width:520px;border-top:1px solid #87aed13d;border-bottom:1px solid #87aed13d}
.portal-shortcuts>a{display:grid;grid-template-columns:24px 1fr;align-items:center;column-gap:11px;row-gap:8px;padding:20px 15px;transition:background .18s, color .18s}
.portal-shortcuts>a:first-child{padding-left:0}
.portal-shortcuts>a+a{border-left:1px solid #87aed126}
.portal-shortcuts svg{width:21px;height:21px;color:#9acbff}
.portal-shortcuts b{font-size:17px;letter-spacing:-.03em;font-weight:550}
.portal-shortcuts span{grid-column:1/-1;color:#94aecb;font-size:12px}
.portal-shortcuts>a:hover{background:#5896df0e}
.portal-shortcuts>a:hover span{color:#e3f0ff}
.portal-account-link{display:inline-flex;align-items:center;gap:14px;color:#a1b5ce;font-size:12px;margin-top:23px;padding:4px 0}
.portal-account-link:hover{color:#fff}
.motion body[data-site="platform"] .hero-title{inset:0 auto auto 0;width:54%;padding:clamp(125px,20svh,195px) 0 0 7vw}
.motion body[data-site="platform"] .hero-art{left:64%;width:58vw;height:59svh;bottom:16svh}
.motion body[data-site="platform"] .constellation .sat-drive{left:5%;top:23%}
.motion body[data-site="platform"] .constellation .sat-blog{right:3%;top:47%}
.motion body[data-site="platform"] .constellation .sat-info{left:10%;bottom:5%}
body[data-site="platform"] .journey .purpose-actions{gap:20px}
body[data-site="platform"] #norem .journey-art{mix-blend-mode:normal}
body[data-site="platform"] #norem .journey-art img{mask-image:linear-gradient(90deg,transparent,#000 4% 96%,transparent),linear-gradient(transparent,#000 4% 94%,transparent);mask-composite:intersect}

/* Native disclosure stays functional with JavaScript disabled. */
.services-menu{position:relative}
.services-menu summary{position:relative;list-style:none;cursor:pointer;padding:9px 0;font-size:13px;color:#d1dbe8}
.services-menu summary::-webkit-details-marker{display:none}
.services-menu summary::after{content:'';position:absolute;left:0;right:0;bottom:2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:center;transition:transform .22s cubic-bezier(.16,1,.3,1)}
.services-menu summary:hover::after,.services-menu[open] summary::after,.services-menu summary:focus-visible::after{transform:scaleX(1)}
.services-menu summary:focus-visible{outline:2px solid #91caff;outline-offset:6px}
.services-panel{position:absolute;left:50%;top:calc(100% + 13px);width:310px;transform:translateX(-50%);padding:13px 20px 7px;background:linear-gradient(130deg,#152339fa,#091320fc);border:1px solid #a4c5ee40;border-radius:16px;box-shadow:0 18px 55px #0008,inset 0 1px #e0efff22;backdrop-filter:blur(22px);animation:services-reveal .22s cubic-bezier(.16,1,.3,1)}
.services-panel::before{content:'';position:absolute;top:-16px;left:0;right:0;height:16px}
.site-header .services-panel>a{display:grid;grid-template-columns:1fr auto;gap:5px;padding:16px 0;white-space:normal}
.services-panel>a+a{border-top:1px solid #b9d1ec1c}
.services-panel b{font-size:15px;font-weight:550}
.services-panel span{font-size:12px;color:#92aac8;grid-column:1}
.services-panel i{font-style:normal;grid-row:1/3;grid-column:2;align-self:center;color:#a0c6f0}
.site-header .services-panel>a::after{display:none}
.site-header .services-panel>a.services-overview{display:flex;justify-content:space-between;font-size:12px;color:#90b8e7}
@keyframes services-reveal{from{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%,0)}}
@media(min-width:701px) and (max-height:760px){
 body[data-site="norem"] .hero-title{padding-top:105px}
 body[data-site="norem"] .hero-title h1{font-size:clamp(42px,5vw,68px)}
 body[data-site="norem"] .hero-subtitle{font-size:15px;margin:14px 0 18px}
 body[data-site="norem"] .hero-title .purpose-note{margin-top:12px;font-size:11px}
 .motion body[data-site="norem"][data-product-scenes="v4"] .hero-art{height:40svh;bottom:-2svh}
}
@media(min-width:701px) and (max-height:850px){
 .motion body[data-site="drive"] .hero-art,.motion body[data-site="blog"] .hero-art{height:48svh;bottom:-2svh}
}
@media(max-width:1000px) and (min-width:701px){
 .portal-shortcuts>a{grid-template-columns:1fr;gap:8px;padding:18px 12px}
 .portal-shortcuts svg{display:none}
 .portal-shortcuts b{font-size:15px}
 .portal-shortcuts span{font-size:10px}
 .motion body[data-site="platform"] .hero-title{width:57%}
 body[data-site="platform"] .hero-subtitle{font-size:14px}
 .services-panel{left:30%}
}
@media(max-width:700px){
 .purpose-actions{gap:10px}
 .purpose-section{padding:65px 25px}
 .purpose-grid{grid-template-columns:1fr;gap:35px;margin-top:32px}
 .purpose-heading h2{font-size:34px}
 .purpose-heading>p:not(.eyebrow){font-size:14px}
 .purpose-card h3{font-size:23px}
 .purpose-card>p:not(.purpose-step){font-size:13px}
 .purpose-note,.hero-title .purpose-note{font-size:11px}
 .editorial{padding:65px 25px}
 .closing{padding:55px 25px 65px}
 .closing h2{font-size:28px}
 .motion .hero{height:150svh}
 .motion .showcase{height:175svh}
 .motion .journey{height:225svh}
 body[data-site="platform"] .site-header nav{display:flex;gap:22px}
 body[data-site="platform"] .site-header nav>a{display:none}
 .services-menu summary{font-size:12px}
 .services-panel{position:fixed;left:20px;right:20px;top:67px;width:auto;transform:none}
 @keyframes services-reveal{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}
 body[data-site="norem"] .site-header nav{display:flex}
 body[data-site="norem"] .site-header nav>a:not(.download-link){display:none}
 body[data-site="norem"] .site-header .download-link{font-size:10px}
 body[data-site="norem"] .site-header{gap:12px}
 body[data-site="norem"] .brand>span{font-size:12px}
 body[data-site="norem"] .brand img{width:76px}
 body[data-site="norem"] .hero-title .purpose-note{margin-top:14px}
 .motion body[data-site="norem"][data-product-scenes="v4"] .hero-art{top:max(385px,45svh);height:auto;bottom:4svh;width:120vw}
 body[data-site="platform"] .hero-title,.motion body[data-site="platform"] .hero-title{padding:110px 25px 0;width:100%;text-align:left}
 body[data-site="platform"] .hero-title h1{font-size:clamp(38px,10vw,51px);line-height:1.16}
 body[data-site="platform"] .hero-subtitle{font-size:13px;margin:18px 0 22px}
 .portal-shortcuts{max-width:100%}
 .portal-shortcuts>a{grid-template-columns:1fr;padding:16px 12px;gap:7px}
 .portal-shortcuts svg{display:none}
 .portal-shortcuts b{font-size:16px}
 .portal-shortcuts span{font-size:10px}
 .portal-account-link{margin-top:15px;font-size:11px}
 .motion body[data-site="platform"] .hero-art{left:50%;height:36svh;width:100vw;bottom:5svh}
 .motion body[data-site="platform"] .hero-intro{top:115px}
 .motion body[data-site="platform"] .hero-intro .button{display:inline-flex}
 .motion body[data-site="platform"] .satellite{font-size:13px;padding:10px 14px}
 .motion body[data-site="platform"] .constellation .sat-drive{left:10%}
 .motion body[data-site="platform"] .constellation .sat-blog{right:7%}
 .motion body[data-site="platform"] .constellation .sat-info{left:21%;bottom:0}
 body[data-site="platform"] .journey .purpose-actions{gap:16px}
 .text-link{font-size:11px}
}
@media(max-width:700px) and (max-height:700px){
 .motion body[data-site="platform"] .hero-title{padding-top:92px}
 .motion body[data-site="platform"] .hero-art{height:28svh;bottom:5svh}
 .motion body[data-site="platform"] .portal-account-link{display:none}
}
@media(prefers-reduced-motion:reduce){.services-panel{animation:none}.services-menu summary::after{transition:none}}
