.product-page { background:#071d35; }
.product-page .site-header { background:rgba(7,28,51,.96); }
@media (min-width:801px) { .product-page .nav__dropdown-panel { max-height:70vh; overflow-y:auto; } }
.product-hero { position:relative; isolation:isolate; min-height:760px; padding:calc(var(--header) + 5rem) 0 2rem; overflow:hidden; border-bottom:1px solid var(--line); background:#06182c; }
.product-cinema { position:absolute; inset:0; z-index:-2; background:#06182c; }
.product-cinema video { width:100%; height:100%; object-fit:cover; opacity:.36; }
.product-cinema::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(3,16,31,.97),rgba(4,22,40,.72) 48%,rgba(7,37,65,.2)),linear-gradient(0deg,#071d35,transparent 36%); }
.product-hero__layout { display:grid; grid-template-columns:1.25fr 1fr; align-items:center; gap:2rem; min-height:510px; }
.product-hero h1 { max-width:850px; margin:0 0 1.5rem; font-size:clamp(3rem,5.3vw,5.3rem); line-height:1.01; letter-spacing:-.055em; text-wrap:balance; animation:product-arrive .85s both; }
.product-promise { max-width:620px; margin-bottom:1rem; color:#85d5ff; font-size:clamp(1.3rem,2vw,1.75rem); font-weight:700; line-height:1.3; animation:product-arrive 1s .1s both; }
.product-lede { max-width:600px; color:#c5d7e8; line-height:1.8; font-size:1.05rem; animation:product-arrive 1s .2s both; }
.product-actions { display:flex; align-items:center; flex-wrap:wrap; gap:1.4rem; margin:2.25rem 0; animation:product-arrive 1s .3s both; }
.product-explore,.product-text-link { display:inline-flex; align-items:center; gap:1rem; min-height:44px; color:#c7e9ff; font-weight:700; }
.product-explore:hover,.product-text-link:hover { color:#fff; }
.product-hero__bottom { display:flex; justify-content:space-between; align-items:center; gap:1rem; margin-top:2rem; color:var(--muted); font-size:.8rem; }
.product-hero__bottom a { display:inline-flex; align-items:center; min-height:44px; }
.product-motion { min-height:44px; padding:.65rem 1rem; border:1px solid rgba(138,205,255,.3); border-radius:3px; background:rgba(9,37,64,.7); color:#c5e7ff; cursor:pointer; }
.product-visual { position:relative; height:470px; max-width:470px; width:100%; margin:auto; display:grid; place-items:center; }
.product-orbit { position:absolute; width:82%; aspect-ratio:1; border:1px solid rgba(105,198,255,.22); border-radius:50%; box-shadow:inset 0 0 55px rgba(44,145,255,.05); }
.product-orbit::after { content:""; position:absolute; top:50%; left:-4px; width:7px; height:7px; border-radius:50%; background:#ace8ff; box-shadow:0 0 12px #44baff,0 0 30px #168cff; }
.product-orbit--outer { animation:product-orbit 24s linear infinite; }
.product-orbit--inner { width:62%; border-style:dashed; border-color:rgba(105,198,255,.15); animation:product-orbit 18s linear infinite reverse; }
.product-core { width:160px; height:160px; display:grid; place-items:center; border:1px solid rgba(140,219,255,.64); border-radius:30px 8px; transform:rotate(-8deg); background:linear-gradient(140deg,rgba(36,111,177,.65),rgba(6,33,59,.85)); box-shadow:0 0 70px rgba(28,151,255,.22),inset 0 0 35px rgba(87,174,255,.1); animation:product-breathe 5s ease-in-out infinite; }
.product-core svg { width:78px; height:84px; fill:none; stroke:#b5ecff; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; transform:rotate(8deg); filter:drop-shadow(0 0 8px rgba(103,210,255,.6)); }
.product-satellite { position:absolute; display:flex; align-items:center; gap:.65rem; min-height:45px; padding:.75rem 1rem; border:1px solid rgba(111,195,255,.4); background:rgba(9,38,66,.94); color:#ceeaff; box-shadow:0 8px 24px rgba(0,10,25,.3); border-radius:3px; font-size:.8rem; font-weight:650; animation:product-float 6s ease-in-out infinite; }
.product-satellite i { width:6px; height:6px; border-radius:50%; background:#7cddff; box-shadow:0 0 12px #168cff; }
.product-satellite--1 { top:12%; left:4%; }
.product-satellite--2 { top:44%; right:-1%; animation-delay:-2s; }
.product-satellite--3 { bottom:13%; left:8%; animation-delay:-4s; }
.product-visual__caption { position:absolute; bottom:-5px; font-size:.78rem; color:#a5c1d8; letter-spacing:.04em; }
.product-switcher { border-bottom:1px solid var(--line); background:#0b2a49; }
.product-switcher .shell { display:flex; gap:1.2rem; padding-block:1.1rem; overflow-x:auto; scrollbar-width:thin; }
.product-switcher a { flex:1; display:flex; align-items:center; padding:.5rem 0; min-height:44px; color:#94b7d4; font-size:.74rem; font-weight:650; line-height:1.6; }
.product-switcher a[aria-current] { color:#d9f3ff; text-shadow:0 0 15px rgba(69,181,255,.4); }
.product-switcher a:hover { color:#fff; }
.product-section { padding:7rem 0; scroll-margin-top:100px; }
.product-section h2,.product-quote h2 { margin-bottom:1.4rem; font-size:clamp(2.25rem,3.6vw,3.5rem); line-height:1.08; text-wrap:balance; }
.product-section p { color:#b3cce0; line-height:1.8; }
.product-experience { background:radial-gradient(ellipse at 95% 60%,rgba(27,100,174,.19),transparent 55%); }
.product-experience__layout { display:grid; grid-template-columns:.8fr 1.2fr; align-items:center; gap:4rem; }
.product-example-note { padding-left:1rem; border-left:2px solid #3c96d5; font-size:.86rem; }
.product-outcomes { border-block:1px solid var(--line); background:linear-gradient(120deg,#0c2f51,#0a2541); }
.product-outcomes h2 { max-width:640px; }
.product-outcome-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:3.5rem; }
.product-outcome { padding:0 2rem; border-left:1px solid rgba(105,184,243,.25); }
.product-outcome:first-child { padding-left:0; border-left:0; }
.product-outcome:last-child { padding-right:0; }
.product-outcome h3 { font-size:1.45rem; line-height:1.3; margin-bottom:1.3rem; }
.product-outcome p { font-size:.96rem; }
.product-outcome .product-before { color:#a6b8cc; }
.product-outcome__arrow { color:#6dd0ff; display:block; margin:.4rem 0 .8rem; font-size:1.5rem; }
.product-scope__layout { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:start; }
.product-feature-list { list-style:none; margin:0; padding:0; }
.product-feature-list li { display:flex; gap:1.1rem; align-items:flex-start; padding:1.15rem 0; border-bottom:1px solid rgba(105,184,243,.2); font-size:1rem; line-height:1.55; color:#d5e9f8; }
.product-feature-list li:first-child { padding-top:0; }
.product-feature-list span { color:#78d9ff; }
.product-faq { background:#0a2846; border-block:1px solid var(--line); }
.product-faq__layout { display:grid; grid-template-columns:.7fr 1.3fr; gap:5rem; }
.product-faq details { border-bottom:1px solid rgba(105,184,243,.25); }
.product-faq summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; list-style:none; min-height:64px; padding:1.3rem 0; cursor:pointer; font-size:1.08rem; font-weight:700; }
.product-faq summary::-webkit-details-marker { display:none; }
.product-faq summary span { color:#75d2ff; font-size:1.5rem; transition:transform .2s; }
.product-faq details[open] summary span { transform:rotate(45deg); }
.product-faq details p { margin:0 0 1.8rem; }
.product-quote { background:radial-gradient(ellipse at 85% 55%,rgba(33,136,228,.16),transparent 50%),#071d35; scroll-margin-top:90px; }
.product-quote .brief-panel { padding:2rem; background:rgba(17,59,94,.65); }
.product-quote .project-form { padding:0; }
.product-quote .choice { min-height:72px; }
.product-next-steps { list-style:decimal; padding-left:1.3rem; margin:2rem 0; }
.product-next-steps li { padding:.4rem 0 .8rem .4rem; color:#8acdf6; }
.product-next-steps strong,.product-next-steps span { display:block; }
.product-next-steps strong { color:#d5e9f8; margin-bottom:.35rem; }
.product-next-steps span { color:#a9c4da; line-height:1.7; font-size:.9rem; }
.product-page .footer__links { grid-template-columns:1.6fr 1fr 1fr 1fr; }
.product-demo { min-width:0; border:1px solid rgba(116,198,255,.48); border-radius:8px; background:#081c31; box-shadow:0 22px 70px rgba(0,7,19,.35),0 0 45px rgba(36,127,214,.08); overflow:hidden; }
.demo-toolbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.7rem; padding:1rem 1.2rem; border-bottom:1px solid rgba(105,184,243,.2); background:#102d49; color:#bfdcf2; font-size:.8rem; }
.demo-toolbar strong { color:#e7f6ff; }
.demo-tabs { display:flex; flex-wrap:wrap; gap:.5rem; padding:1rem 1.2rem 0; }
.demo-tab { flex:1; min-height:44px; padding:.6rem .7rem; border:1px solid rgba(128,195,240,.27); border-radius:3px; color:#b0cce1; background:#0e2b46; font:inherit; font-size:.8rem; cursor:pointer; }
.demo-tab[aria-pressed="true"],.demo-tab.is-active { color:#edfbff; border-color:#63c8ff; background:#174d73; box-shadow:inset 0 -2px #67d1ff; }
.demo-screen { padding:1.3rem; min-height:310px; }
.demo-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.demo-panel { padding:1.1rem; border:1px solid rgba(126,194,242,.22); border-radius:4px; background:linear-gradient(145deg,#113551,#0b243c); }
.demo-panel h3,.demo-panel h4 { margin:.2rem 0 1rem; color:#e4f4ff; font-size:1.05rem; letter-spacing:-.02em; }
.demo-label { display:block; color:#9abbd4; font-size:.77rem; line-height:1.5; }
.demo-value { display:block; font-size:2.25rem; line-height:1.2; font-weight:750; color:#c4edff; margin:.5rem 0; }
.demo-row { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.7rem 0; border-bottom:1px solid rgba(131,197,243,.13); color:#d8ebf9; font-size:.86rem; }
.demo-row:last-child { border:0; }
.demo-status { display:inline-flex; align-items:center; gap:.3rem; color:#a5e6d0; background:rgba(32,154,112,.1); border:1px solid rgba(76,207,163,.25); border-radius:3px; padding:.35rem .5rem; font-size:.73rem; line-height:1.4; }
.demo-status.is-low,.demo-status.is-pending { color:#f3d59a; background:rgba(180,127,25,.12); border-color:rgba(225,174,85,.3); }
.demo-action { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:.65rem .9rem; margin-top:.6rem; border:1px solid #77c7fa; border-radius:3px; background:#9edcff; color:#082137; font:inherit; font-size:.8rem; font-weight:750; cursor:pointer; }
.demo-action:hover { background:#d0f0ff; }
.demo-action:disabled { opacity:.45; cursor:default; }
.demo-toolbar .demo-action { margin:0; min-height:44px; background:transparent; color:#c0def4; border-color:#416786; font-size:.72rem; }
.product-section .demo-note { font-size:.8rem; line-height:1.65; color:#b4cee1; margin:.8rem 0 0; }
.demo-flow { display:flex; align-items:stretch; gap:.65rem; margin:1rem 0; padding:0; list-style:none; }
.demo-node { flex:1; padding:.85rem .6rem; border:1px solid #2d5272; border-radius:3px; background:#0c2842; color:#a4c2d8; text-align:center; font-size:.78rem; line-height:1.6; }
.demo-node.is-active,.demo-node.is-complete { color:#e5f8ff; border-color:#64caff; background:#164665; box-shadow:0 0 22px rgba(36,167,246,.1); }
.demo-log { margin-top:1rem; padding:.85rem 1rem; min-height:58px; border-left:2px solid #58baff; background:#102e49; color:#bdddf2; font-size:.83rem; line-height:1.65; list-style:none; }
.demo-log li + li { margin-top:.35rem; }
.product-demo > .demo-status { display:block; margin:1rem 1.2rem 0; }
.product-demo > .demo-status:empty { display:none; }
.product-demo > .demo-note { padding:0 1.2rem 1rem; }
.demo-toolbar .demo-note { margin:0; flex:1; min-width:180px; }
.demo-panel.is-warning { border-color:#ceac67; }
.demo-screen button + button { margin-left:.45rem; }
.product-page [data-product-reveal] { transition:opacity .7s ease,transform .7s ease; }
.product-page.product-reveal-ready [data-product-reveal]:not(.is-in-view) { opacity:0; transform:translateY(20px); }
.product-motion-paused *,.product-motion-paused *::before,.product-motion-paused *::after { animation-play-state:paused !important; }
@keyframes product-arrive { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:none; } }
@keyframes product-orbit { to { transform:rotate(360deg); } }
@keyframes product-breathe { 0%,100% { box-shadow:0 0 70px rgba(28,151,255,.18),inset 0 0 35px rgba(87,174,255,.1); } 50% { box-shadow:0 0 95px rgba(28,151,255,.36),inset 0 0 40px rgba(87,174,255,.18); } }
@keyframes product-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-8px); } }
@media (max-width:1100px) {
 .product-hero__layout { grid-template-columns:1.2fr .8fr; gap:1rem; }
 .product-visual { height:380px; }
 .product-core { width:130px; height:130px; }
 .product-satellite { font-size:.7rem; padding:.65rem; }
 .product-experience__layout { gap:2rem; grid-template-columns:.8fr 1.2fr; }
 .product-scope__layout,.product-faq__layout { gap:3rem; }
 .product-quote .quote__intro { max-width:720px; }
}
@media (max-width:800px) {
 .product-hero { min-height:0; padding-top:calc(var(--header) + 3rem); }
 .product-hero__layout { grid-template-columns:1fr; }
 .product-hero h1 { font-size:clamp(2.8rem,9vw,4.5rem); max-width:650px; }
 .product-lede { font-size:1rem; }
 .product-visual { height:340px; width:min(100%,390px); margin-top:1rem; }
 .product-hero__bottom { margin-top:1rem; }
 .product-switcher a { flex:0 0 150px; font-size:.75rem; }
 .product-section { padding:4.5rem 0; }
 .product-experience__layout,.product-scope__layout,.product-faq__layout { grid-template-columns:1fr; gap:2rem; }
 .product-section__intro { max-width:600px; }
 .product-outcome-grid { grid-template-columns:1fr; margin-top:2rem; }
 .product-outcome,.product-outcome:first-child,.product-outcome:last-child { padding:1.5rem 0; border-left:0; border-bottom:1px solid var(--line); }
 .product-outcome:last-child { border-bottom:0; padding-bottom:0; }
 .product-outcome h3 { margin-bottom:.8rem; }
 .product-page .footer__links { grid-template-columns:1fr 1fr; }
 .product-page .nav__dropdown.is-open .nav__dropdown-panel { max-height:56vh; overflow-y:auto; }
 .product-page .nav__menu { max-height:calc(100dvh - var(--header)); overflow-y:auto; }
 .product-quote { padding:4.5rem 0; }
 .product-quote .brief-panel { padding:1.25rem; }
}
@media (max-width:480px) {
 .product-page .shell { padding-inline:20px; }
 .product-hero { padding-top:calc(var(--header) + 2.5rem); }
 .product-actions { gap:.8rem; }
 .product-actions .button { width:100%; }
 .product-explore { width:100%; justify-content:center; }
 .product-hero__bottom { font-size:.7rem; }
 .product-motion { padding:.5rem .7rem; font-size:.7rem; }
 .product-visual { height:310px; }
 .product-satellite--1 { left:0; }
 .product-satellite--2 { right:0; }
 .demo-grid { grid-template-columns:1fr; }
 .demo-screen { padding:1rem; }
 .demo-tabs { padding:1rem 1rem 0; }
 .demo-flow { flex-wrap:wrap; }
 .demo-node { flex-basis:40%; }
 .product-page .footer__links { gap:2rem 1rem; }
}
@media (prefers-reduced-motion:reduce) {
 .product-page *, .product-page *::before,.product-page *::after { animation:none !important; transition:none !important; }
 .product-page [data-product-reveal] { opacity:1 !important; transform:none !important; }
}
