:root{
--cpas-primary:#00c0f4;
--cpas-primary-2:#0aa7d3;
--cpas-ink:#0b1220;
--cpas-ink-2:#0f1a2d;
--cpas-slate:#93a4bf;
--cpas-border:rgba(255,255,255,.10);
--cpas-card:rgba(255,255,255,.075);
--cpas-card-2:rgba(255,255,255,.11);
--cpas-shadow:0 18px 50px rgba(0,0,0,.35);
--cpas-shadow-soft:0 10px 30px rgba(0,0,0,.25);
--cpas-radius:18px;
--cpas-radius-sm:14px;
--cpas-max:1180px;
}

html{
scroll-behavior:smooth;
}

body{
background:
radial-gradient(1300px 760px at 15% -10%, rgba(0,192,244,.36), transparent 60%),
radial-gradient(980px 560px at 80% 10%, rgba(10,167,211,.24), transparent 60%),
linear-gradient(180deg, #0b1020 0%, #080c18 45%, #070a14 100%);
color:rgba(255,255,255,.92);
font-feature-settings:"ss01" 1,"cv02" 1;
}

.container{
max-width:var(--cpas-max);
}

.site-navbar{
background:rgba(8,12,22,.55);
backdrop-filter:blur(14px);
border-bottom:1px solid rgba(255,255,255,.06);
transition:background .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.site-navbar.is-scrolled{
background:rgba(8,12,22,.78);
box-shadow:var(--cpas-shadow-soft);
border-color:rgba(255,255,255,.08);
}

.navbar .nav-link{
color:rgba(255,255,255,.72);
font-weight:500;
letter-spacing:.01em;
padding:.44rem .68rem;
border-radius:999px;
transition:color .2s ease, background .2s ease;
}
.navbar .nav-link.dropdown-toggle{
align-items:center;
}
.navbar .nav-link.dropdown-toggle::after{
align-self:center;
margin-top:0;
}

.navbar .nav-link:hover,
.navbar .nav-link:focus{
color:#fff;
background:rgba(255,255,255,.06);
}

.navbar .nav-link.active{
color:#fff;
background:rgba(0,192,244,.14);
}

.brand-logo{
height:60px;
width:auto;
filter:brightness(0) invert(1);
}

.brand-text{
font-weight:700;
letter-spacing:.06em;
text-transform:uppercase;
}

.btn-primary{
background:linear-gradient(135deg, var(--cpas-primary) 0%, var(--cpas-primary-2) 100%);
border:0;
box-shadow:0 16px 40px rgba(0,192,244,.20);
}

.btn-primary:hover,
.btn-primary:focus{
filter:saturate(1.06) brightness(1.02);
box-shadow:0 18px 44px rgba(0,192,244,.24);
}

.btn-outline-light{
border-color:rgba(255,255,255,.20);
}

.btn-outline-light:hover,
.btn-outline-light:focus{
background:rgba(255,255,255,.08);
border-color:rgba(255,255,255,.30);
}

.lang-toggle{
border-color:rgba(255,255,255,.18);
}

.nav-pill{
background:rgba(8,12,22,.38);
border:1px solid rgba(255,255,255,.10);
border-radius:999px;
padding:6px 8px;
backdrop-filter:blur(14px);
}

.nav-pill .navbar-nav{
gap:2px;
}

.nav-pill .nav-link{
font-size:.88rem;
}

.nav-actions{
background:rgba(8,12,22,.38);
border:1px solid rgba(255,255,255,.10);
border-radius:999px;
padding:6px 8px;
backdrop-filter:blur(14px);
}

.nav-actions .btn{
border-radius:999px;
padding:.44rem .75rem;
}

.nav-actions .btn-cta{
box-shadow:none;
}

.section{
padding:96px 0;
}

.section:first-of-type{
padding-top:118px;
}

section{
scroll-margin-top:92px;
}

.section-kicker{
display:inline-flex;
align-items:center;
gap:.5rem;
padding:.4rem .75rem;
border-radius:999px;
background:rgba(255,255,255,.06);
border:1px solid rgba(255,255,255,.08);
color:rgba(255,255,255,.78);
font-size:.85rem;
letter-spacing:.08em;
text-transform:uppercase;
}

.display-hero{
font-weight:700;
letter-spacing:-.02em;
line-height:1.04;
}

.lead{
color:rgba(255,255,255,.72);
}

.hero-wrap{
border-radius:calc(var(--cpas-radius) + 8px);
background:
radial-gradient(900px 500px at 20% 0%, rgba(0,192,244,.22), transparent 55%),
linear-gradient(180deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,.02) 100%);
border:1px solid rgba(255,255,255,.08);
box-shadow:var(--cpas-shadow);
overflow:hidden;
}

.hero-section{
position:relative;
height:100vh;
min-height:720px;
}

.hero-carousel,
.hero-carousel .carousel-inner,
.hero-carousel .carousel-item{
height:100%;
}

.hero-slide{
position:relative;
height:100%;
}

.hero-media{
position:absolute;
inset:0;
overflow:hidden;
}

.hero-media img{
width:100%;
height:100%;
object-fit:cover;
display:block;
}

.hero-media svg{
width:100%;
height:100%;
display:block;
}

.hero-scrim{
position:absolute;
inset:0;
background:
linear-gradient(90deg, rgba(6,10,18,.92) 0%, rgba(6,10,18,.70) 35%, rgba(6,10,18,.20) 70%, rgba(6,10,18,0) 100%),
linear-gradient(180deg, rgba(6,10,18,.20) 0%, rgba(6,10,18,.35) 100%);
}

.hero-inner{
position:relative;
height:100%;
z-index:2;
padding-top:88px;
padding-bottom:132px;
}

.hero-copy{
max-width:720px;
}

.hero-bottom{
position:absolute;
left:0;
right:0;
bottom:24px;
z-index:3;
}

.hero-bottom .hero-badges{
background:rgba(8,12,22,.28);
border:1px solid rgba(255,255,255,.10);
border-radius:calc(var(--cpas-radius) + 6px);
padding:14px 14px;
backdrop-filter:blur(16px);
}

.hero-carousel .carousel-indicators{
display:none;
bottom:18px;
z-index:4;
gap:8px;
}

.hero-carousel .carousel-indicators [data-bs-target]{
width:28px;
height:4px;
border-radius:999px;
opacity:.5;
}

.hero-carousel .carousel-indicators .active{
opacity:1;
}

.hero-control{
position:absolute;
top:50%;
transform:translateY(-50%);
z-index:4;
width:auto;
opacity:1;
}

.hero-carousel .carousel-control-prev{
left:18px;
}

.hero-carousel .carousel-control-next{
right:18px;
}

.hero-control-icon{
width:44px;
height:44px;
border-radius:999px;
display:grid;
place-items:center;
background:rgba(8,12,22,.40);
border:1px solid rgba(255,255,255,.14);
backdrop-filter:blur(16px);
color:#fff;
transition:transform .2s ease, background .2s ease, border-color .2s ease;
}

.hero-control:hover .hero-control-icon{
transform:scale(1.04);
background:rgba(8,12,22,.55);
border-color:rgba(0,192,244,.30);
}

.hero-control-icon svg{
width:22px;
height:22px;
}

.hero-badges{
display:flex;
flex-wrap:wrap;
gap:.6rem;
}

.metric-badge{
display:inline-flex;
align-items:center;
gap:.5rem;
padding:.55rem .75rem;
border-radius:999px;
background:rgba(255,255,255,.06);
border:1px solid rgba(255,255,255,.10);
color:rgba(255,255,255,.82);
font-size:.9rem;
}

.metric-dot{
width:10px;
height:10px;
border-radius:999px;
background:var(--cpas-primary);
box-shadow:0 0 0 5px rgba(0,192,244,.14);
}

.card-surface{
border-radius:var(--cpas-radius);
background:linear-gradient(180deg, rgba(255,255,255,.08) 0%, rgba(255,255,255,.04) 100%);
border:1px solid rgba(255,255,255,.10);
box-shadow:var(--cpas-shadow-soft);
}

.soft-card{
border-radius:var(--cpas-radius);
background:rgba(255,255,255,.04);
border:1px solid rgba(255,255,255,.08);
transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

.soft-card:hover{
transform:translateY(-2px);
background:rgba(255,255,255,.055);
border-color:rgba(0,192,244,.22);
box-shadow:0 18px 45px rgba(0,0,0,.35);
}

.icon-chip{
width:44px;
height:44px;
border-radius:14px;
display:grid;
place-items:center;
background:rgba(0,192,244,.12);
border:1px solid rgba(0,192,244,.22);
color:#d7fbff;
}

.icon-chip svg{
width:22px;
height:22px;
}

.media-placeholder{
border-radius:var(--cpas-radius);
background:linear-gradient(180deg, rgba(255,255,255,.05) 0%, rgba(255,255,255,.02) 100%);
border:1px solid rgba(255,255,255,.08);
overflow:hidden;
box-shadow:var(--cpas-shadow-soft);
}
.media-placeholder--bounded{
height:360px;
}
.media-placeholder--bounded img{
width:100%;
height:100%;
object-fit:cover;
display:block;
}
.media-placeholder--bounded-vertical{
    min-height:450px;
    max-height:670px;
}

@media (max-width: 991.98px){
.media-placeholder--bounded{
height:260px;
}
}

.media-placeholder svg{
width:100%;
height:auto;
display:block;
}

.compare-table{
border-radius:var(--cpas-radius);
overflow:hidden;
border:1px solid rgba(255,255,255,.10);
}

.table{
margin-bottom:0;
}

.table thead th{
background:rgba(255,255,255,.06);
color:rgba(255,255,255,.86);
border-bottom:1px solid rgba(255,255,255,.10);
}

.table td, .table th{
border-color:rgba(255,255,255,.08);
color:rgba(255,255,255,.78);
}

.compare-cards .soft-card{
height:100%;
}

.timeline{
display:grid;
gap:14px;
}

.timeline-step{
display:flex;
gap:14px;
align-items:flex-start;
padding:16px;
border-radius:var(--cpas-radius);
background:rgba(255,255,255,.04);
border:1px solid rgba(255,255,255,.08);
}

.timeline-index{
flex:0 0 auto;
width:36px;
height:36px;
border-radius:12px;
display:grid;
place-items:center;
background:rgba(0,192,244,.14);
border:1px solid rgba(0,192,244,.24);
color:#e9feff;
font-weight:700;
}

.cta-panel{
border-radius:calc(var(--cpas-radius) + 8px);
background:
radial-gradient(900px 520px at 20% 0%, rgba(0,192,244,.24), transparent 60%),
linear-gradient(180deg, rgba(255,255,255,.08) 0%, rgba(255,255,255,.03) 100%);
border:1px solid rgba(255,255,255,.10);
box-shadow:var(--cpas-shadow);
padding:42px;
}

.form-control, .form-select{
background:rgba(255,255,255,.04);
border:1px solid rgba(255,255,255,.12);
color:rgba(255,255,255,.90);
border-radius:14px;
}

.form-control:focus, .form-select:focus{
background:rgba(255,255,255,.06);
border-color:rgba(0,192,244,.45);
box-shadow:0 0 0 .25rem rgba(0,192,244,.18);
color:#fff;
}

.form-control::placeholder{
color:rgba(255,255,255,.48);
}

.site-footer{
border-top:1px solid rgba(255,255,255,.08);
background:rgba(4,6,12,.55);
}

.footer-title{
font-weight:700;
letter-spacing:.02em;
margin-bottom:12px;
}

.footer-summary{
color:rgba(255,255,255,.68);
max-width:46ch;
}

.footer-links,
.footer-meta{
list-style:none;
padding:0;
margin:0;
display:grid;
gap:10px;
}

.footer-links a,
.footer-meta a{
color:rgba(255,255,255,.72);
text-decoration:none;
}

.footer-links a:hover,
.footer-meta a:hover{
color:#fff;
text-decoration:underline;
text-decoration-color:rgba(0,192,244,.55);
}

.footer-bottom{
border-top:1px solid rgba(255,255,255,.08);
}

[data-reveal]{
opacity:0;
transform:translateY(18px);
transition:opacity .6s ease, transform .6s ease;
}

[data-reveal].is-inview{
opacity:1;
transform:none;
}

.toast{
background:rgba(8,12,22,.92);
border:1px solid rgba(255,255,255,.12);
box-shadow:var(--cpas-shadow-soft);
}

@media (max-width: 991.98px){
body.nav-open{
overflow:hidden;
}
body.nav-open::before{
content:"";
position:fixed;
inset:0;
background:rgba(0,0,0,.92);
z-index:1025;
}
.site-navbar{
z-index:1030;
}
.site-navbar .navbar-collapse{
position:relative;
z-index:1031;
max-height:calc(100vh - 70px);
overflow:auto;
padding-bottom:18px;
}
.site-navbar .nav-pill,
.site-navbar .nav-actions{
background:transparent;
border:0;
padding:0;
backdrop-filter:none;
}
.site-navbar .nav-actions{
flex-direction:column;
align-items:stretch;
width:100%;
gap:10px;
}
.site-navbar .nav-actions .btn,
.site-navbar .nav-actions .btn-cta{
width:100%;
}
.site-navbar .nav-actions .dropdown{
width:100%;
}
.site-navbar .navbar-nav{
align-items:stretch;
gap:6px;
}
.site-navbar .navbar-nav .nav-link{
border-radius:12px;
padding:.8rem 1rem;
}
.site-navbar .more-desktop-menu{
display:none;
}
.site-navbar .dropdown-menu{
position:static;
float:none;
width:100%;
margin-top:8px;
border-radius:14px;
}
section{
scroll-margin-top:84px;
}
.cta-panel{
padding:26px;
}
.navbar .nav-link{
padding:.5rem .6rem;
}
.brand-logo{
height:44px;
}
}

@media (prefers-reduced-motion: reduce){
html{
scroll-behavior:auto;
}
[data-reveal]{
opacity:1;
transform:none;
transition:none;
}
.soft-card{
transition:none;
}
}
