:root{
  --bg-base:#0a0e17;
  --bg-base-2:#0d1220;
  --surface: rgba(255,255,255,0.045);
  --surface-strong: rgba(255,255,255,0.075);
  --border-soft: rgba(255,255,255,0.09);
  --border-strong: rgba(255,255,255,0.16);
  --text-primary:#eef1f6;
  --text-muted:#9aa5b6;
  --text-faint:#6d7789;
  --accent-teal:#2dd4bf;
  --accent-cyan:#38bdf8;
  --accent-violet:#8b6cf6;
  --accent-amber:#f5b942;
  --radius-sm:10px;
  --radius-md:20px;
  --radius-lg:32px;
  --radius-pill:999px;
  --shadow-1: 0 1px 2px rgba(0,0,0,0.5);
  --shadow-2: 0 10px 30px rgba(0,0,0,0.4), 0 2px 8px rgba(0,0,0,0.35);
  --shadow-glow: 0 16px 46px rgba(45,212,191,0.16), 0 4px 18px rgba(139,108,246,0.14);
  --transition-base: 0.35s cubic-bezier(.2,.7,.3,1);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:'Instrument Sans', sans-serif;
  background:var(--bg-base);
  color:var(--text-primary);
  line-height:1.65;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%; display:block; height:auto; border-radius:var(--radius-md);}
a{color:inherit; text-decoration:none;}
h1,h2,h3,h4{font-family:'Instrument Sans', sans-serif; font-weight:700; margin:0 0 .5em; letter-spacing:-0.01em; color:var(--text-primary);}
p{margin:0 0 1em; color:var(--text-muted);}
button{font-family:inherit; cursor:pointer;}

.eyebrow-tag{
  display:inline-flex; align-items:center; gap:.5em;
  font-size:.8rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase;
  color:var(--accent-teal);
  margin-bottom:1rem;
}

h1.hero-heading{font-size:clamp(2.4rem, 5.5vw, 4.4rem); line-height:1.05;}
.page-heading{font-size:clamp(2.1rem, 4.5vw, 3.4rem); line-height:1.1;}
.section-heading-block h2, .content-block h2{font-size:clamp(1.6rem, 3vw, 2.4rem); line-height:1.15;}
.content-block h3, .step-card h3, .glossary-item h3, .mini-card h3{font-size:clamp(1.05rem, 1.6vw, 1.3rem);}


.bg-aurora-1{
  background:
    radial-gradient(circle at 12% 18%, rgba(45,212,191,0.18), transparent 45%),
    radial-gradient(circle at 85% 10%, rgba(139,108,246,0.20), transparent 50%),
    radial-gradient(circle at 70% 80%, rgba(56,189,248,0.14), transparent 50%),
    var(--bg-base);
}
.bg-aurora-2{
  background:
    radial-gradient(circle at 85% 20%, rgba(139,108,246,0.18), transparent 45%),
    radial-gradient(circle at 10% 75%, rgba(245,185,66,0.10), transparent 50%),
    radial-gradient(circle at 50% 0%, rgba(45,212,191,0.12), transparent 55%),
    var(--bg-base-2);
}
.bg-aurora-3{
  background:
    radial-gradient(circle at 20% 85%, rgba(56,189,248,0.16), transparent 50%),
    radial-gradient(circle at 80% 15%, rgba(45,212,191,0.14), transparent 50%),
    radial-gradient(circle at 45% 45%, rgba(139,108,246,0.10), transparent 60%),
    var(--bg-base);
}
.bg-aurora-4{
  background:
    radial-gradient(circle at 15% 10%, rgba(245,185,66,0.10), transparent 45%),
    radial-gradient(circle at 90% 85%, rgba(139,108,246,0.20), transparent 50%),
    radial-gradient(circle at 50% 50%, rgba(45,212,191,0.08), transparent 60%),
    var(--bg-base-2);
}


.nav-bar{
  position:fixed; top:0; left:0; right:0; z-index:200;
  background:rgba(10,14,23,0.55);
  backdrop-filter:blur(14px) saturate(140%);
  -webkit-backdrop-filter:blur(14px) saturate(140%);
  border-bottom:1px solid rgba(255,255,255,0.06);
  transition:background var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
}
.nav-bar.solid-nav{
  background:rgba(9,12,20,0.92);
  border-bottom:1px solid var(--border-soft);
}
.nav-bar.scrolled-nav{
  box-shadow:0 12px 30px rgba(0,0,0,0.4);
}
.nav-inner{
  max-width:1280px; margin:0 auto; padding:0.9rem 1.75rem;
  display:flex; align-items:center; justify-content:space-between;
}
.brand-mark{display:flex; align-items:center; gap:.6rem; font-weight:700; font-size:1.1rem;}
.brand-logo{width:34px; height:34px; border-radius:8px;}
.nav-links{display:flex; gap:2rem;}
.nav-links a{
  font-size:.95rem; font-weight:500; color:var(--text-muted);
  position:relative; padding:.4rem 0;
  transition:color var(--transition-base);
}
.nav-links a:hover, .nav-links a.active{color:var(--text-primary);}
.nav-links a.active::after{
  content:''; position:absolute; left:0; bottom:-2px; width:100%; height:2px;
  background:linear-gradient(90deg, var(--accent-teal), var(--accent-violet));
  border-radius:2px;
}
.hamburger{
  display:none; flex-direction:column; gap:5px; background:none; border:none; padding:8px;
  width:44px; height:44px; align-items:center; justify-content:center;
}
.hamburger span{width:22px; height:2px; background:var(--text-primary); border-radius:2px; transition:var(--transition-base);}


.mobile-menu{
  position:fixed; inset:0; z-index:300; display:flex;
  opacity:0; visibility:hidden; transform:translateY(-8px);
  transition:opacity var(--transition-base), visibility var(--transition-base), transform var(--transition-base);
}
.mobile-menu.open{opacity:1; visibility:visible; transform:translateY(0);}
.mobile-menu-left{
  flex:1 1 55%; background:linear-gradient(155deg,#0d1220,#141a2b 55%, #1c2440);
  padding:6rem 2rem 3rem; position:relative;
  display:flex; flex-direction:column;
}
.mobile-menu-right{flex:1 1 45%; position:relative; display:none;}
.mobile-menu-right img{width:100%; height:100%; object-fit:cover; border-radius:0;}
.mobile-menu-close{
  position:absolute; top:1.5rem; right:1.5rem; width:46px; height:46px;
  background:var(--surface-strong); border:1px solid var(--border-soft); border-radius:50%;
  color:var(--text-primary); font-size:1.2rem;
}
.mobile-menu-links{display:flex; flex-direction:column; gap:1.3rem; margin-top:auto; margin-bottom:auto;}
.mobile-menu-links a{
  font-size:clamp(1.8rem, 7vw, 2.6rem); font-weight:700; color:var(--text-primary);
  text-align:left; transition:color var(--transition-base), transform var(--transition-base);
}
.mobile-menu-links a:hover{color:var(--accent-teal); transform:translateX(6px);}

@media(min-width:640px){
  .mobile-menu-right{display:block;}
}


.primary-action{
  display:inline-flex; align-items:center; gap:.6rem;
  background:linear-gradient(135deg, var(--accent-teal), var(--accent-cyan));
  color:#04211d; font-weight:700; padding:.9rem 1.8rem; border-radius:var(--radius-pill);
  border:none; box-shadow:var(--shadow-2); transition:transform var(--transition-base), box-shadow var(--transition-base);
  min-height:44px;
}
.primary-action:hover{transform:translateY(-3px); box-shadow:var(--shadow-glow);}
.ghost-action{
  display:inline-flex; align-items:center; gap:.6rem;
  background:transparent; color:var(--text-primary); font-weight:600;
  padding:.85rem 1.7rem; border-radius:var(--radius-pill); border:1px solid var(--border-strong);
  transition:background var(--transition-base), transform var(--transition-base);
  min-height:44px;
}
.ghost-action:hover{background:var(--surface-strong); transform:translateY(-2px);}
.full-width-action{width:100%; justify-content:center;}


.hero-section{min-height:100vh; padding:9rem 1.5rem 4rem; display:flex; flex-direction:column; justify-content:center; gap:3rem;}
.hero-inner{max-width:880px; margin:0 auto; text-align:center;}
.hero-sub{font-size:1.15rem; max-width:640px; margin:1.4rem auto 2rem;}
.hero-actions{display:flex; gap:1rem; justify-content:center; flex-wrap:wrap;}

.mini-card-row{
  display:flex; gap:1.2rem; overflow-x:auto; padding:0.5rem 1.5rem 1.5rem; max-width:1280px; margin:0 auto; width:100%;
  scrollbar-width:thin;
}
.mini-card-row::-webkit-scrollbar{height:6px;}
.mini-card-row::-webkit-scrollbar-thumb{background:var(--border-strong); border-radius:10px;}
.mini-card{
  flex:0 0 240px; background:var(--surface); border:1px solid var(--border-soft); border-radius:var(--radius-md);
  padding:1.6rem; backdrop-filter:blur(10px);
  box-shadow:var(--shadow-1);
  transition:transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
}
.mini-card:hover{transform:translateY(-6px); box-shadow:var(--shadow-glow); border-color:var(--border-strong);}
.mini-card-icon{
  display:inline-flex; align-items:center; justify-content:center; width:46px; height:46px;
  background:linear-gradient(135deg, rgba(45,212,191,0.2), rgba(139,108,246,0.2));
  border-radius:14px; color:var(--accent-teal); font-size:1.2rem; margin-bottom:1rem;
}
.mini-card p{font-size:.9rem; margin:0;}


.content-section{padding:6rem 1.5rem;}
.page-hero{padding:9rem 1.5rem 4.5rem;}
.section-inner{max-width:1200px; margin:0 auto;}
.section-heading-block{max-width:720px; margin-bottom:2.5rem;}
.section-heading-block h2{margin-bottom:.6rem;}
.section-sub{color:var(--text-muted); max-width:600px;}
.page-sub{max-width:640px; font-size:1.1rem;}

.two-column-layout{display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center;}
.two-column-layout.reverse{direction:rtl;}
.two-column-layout.reverse > *{direction:ltr;}
@media(max-width:860px){
  .two-column-layout, .two-column-layout.reverse{grid-template-columns:1fr; direction:ltr;}
}

.content-block{
  background:var(--surface); border:1px solid var(--border-soft); border-radius:var(--radius-md);
  padding:2rem; backdrop-filter:blur(10px);
  box-shadow:var(--shadow-1);
  transition:transform var(--transition-base), box-shadow var(--transition-base);
}
.content-block:hover{box-shadow:var(--shadow-2);}
.highlight-panel{border-color:rgba(45,212,191,0.25); background:linear-gradient(160deg, rgba(45,212,191,0.08), rgba(139,108,246,0.06));}
.centered-block{max-width:760px; margin:0 auto; text-align:center;}
.content-image img{width:100%; box-shadow:var(--shadow-2); border:1px solid var(--border-soft);}

.invisible-join{padding-top:0; padding-bottom:0;}
.invisible-join .section-inner{padding:4.5rem 0;}
.content-flow{max-width:760px; margin:0 auto; padding:0 0 1rem;}
.flow-lede{font-size:1.3rem; font-weight:600; color:var(--text-primary); margin-bottom:1rem;}


.step-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.8rem; position:relative;}
@media(max-width:900px){.step-grid{grid-template-columns:1fr;}}
.step-card{
  background:var(--surface); border:1px solid var(--border-soft); border-radius:var(--radius-lg);
  padding:2.4rem 2rem; position:relative; backdrop-filter:blur(10px);
  box-shadow:var(--shadow-1);
  transition:transform var(--transition-base), box-shadow var(--transition-base);
}
.step-card:hover{transform:translateY(-8px); box-shadow:var(--shadow-glow);}
.step-number{
  position:absolute; top:1.5rem; right:1.8rem; font-size:2.2rem; font-weight:700;
  color:transparent; -webkit-text-stroke:1.5px var(--border-strong);
}
.step-icon{
  display:inline-flex; align-items:center; justify-content:center; width:56px; height:56px;
  background:linear-gradient(135deg, var(--accent-teal), var(--accent-violet));
  border-radius:16px; color:#04121a; font-size:1.4rem; margin-bottom:1.4rem;
}


.table-wrap{overflow-x:auto; margin-bottom:2rem; border-radius:var(--radius-md); border:1px solid var(--border-soft);}
.comparison-table{width:100%; border-collapse:collapse; min-width:680px; background:var(--surface); backdrop-filter:blur(10px);}
.comparison-table th, .comparison-table td{padding:1.1rem 1.3rem; text-align:left; border-bottom:1px solid var(--border-soft);}
.comparison-table thead th{font-size:.85rem; text-transform:uppercase; letter-spacing:.06em; color:var(--accent-teal); background:rgba(255,255,255,0.03);}
.comparison-table tbody tr:last-child td{border-bottom:none;}
.row-tag{display:block; font-size:.8rem; color:var(--text-faint); margin-top:.2rem; font-weight:400;}
.recommended-row td{background:rgba(45,212,191,0.05);}
.recommended-tag{
  display:inline-flex; align-items:center; gap:.4rem; font-size:.72rem; font-weight:700;
  color:#04211d; background:var(--accent-amber); padding:.2rem .6rem; border-radius:var(--radius-pill); margin-top:.5rem;
}


.info-grid{display:grid; gap:1.6rem;}
.info-grid.two-col{grid-template-columns:repeat(2,1fr);}
.info-grid.four-col{grid-template-columns:repeat(4,1fr);}
.info-grid.five-col{grid-template-columns:repeat(5,1fr);}
@media(max-width:980px){
  .info-grid.four-col{grid-template-columns:repeat(2,1fr);}
  .info-grid.five-col{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:640px){
  .info-grid.two-col, .info-grid.four-col, .info-grid.five-col{grid-template-columns:1fr;}
}
.info-icon{
  display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px;
  background:rgba(56,189,248,0.14); color:var(--accent-cyan); border-radius:12px; font-size:1.1rem; margin-bottom:1rem;
}


.glossary-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1.4rem;}
@media(max-width:980px){.glossary-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.glossary-grid{grid-template-columns:1fr;}}
.glossary-item{
  background:var(--surface); border:1px solid var(--border-soft); border-radius:var(--radius-md);
  padding:1.5rem; transition:transform var(--transition-base), box-shadow var(--transition-base);
}
.glossary-item:hover{transform:translateY(-4px); box-shadow:var(--shadow-2);}
.glossary-item h3{color:var(--accent-teal); margin-bottom:.5rem;}
.glossary-item p{font-size:.92rem; margin:0;}


.cta-section{padding-bottom:7rem;}
.cta-inner{
  display:grid; grid-template-columns:0.9fr 1.1fr; gap:2.5rem; align-items:center;
  background:var(--surface); border:1px solid var(--border-soft); border-radius:var(--radius-lg);
  padding:2.5rem; box-shadow:var(--shadow-2);
}
@media(max-width:860px){.cta-inner{grid-template-columns:1fr;}}
.cta-image{border-radius:var(--radius-md); width:100%; box-shadow:var(--shadow-1);}
.cta-text h2{margin-bottom:1rem;}


.site-footer{padding:5rem 1.5rem 2rem;}
.footer-grid{
  max-width:1200px; margin:0 auto; display:grid; grid-template-columns:1.4fr 1fr 1fr 1.2fr; gap:1.5rem;
}
@media(max-width:940px){.footer-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr;}}
.footer-card{
  background:var(--surface); border:1px solid var(--border-soft); border-radius:var(--radius-md);
  padding:1.8rem; box-shadow:var(--shadow-1);
}
.footer-card h4{color:var(--accent-teal); font-size:.95rem; text-transform:uppercase; letter-spacing:.06em; margin-bottom:1rem;}
.footer-card a{display:block; color:var(--text-muted); font-size:.95rem; padding:.35rem 0; transition:color var(--transition-base);}
.footer-card a:hover{color:var(--text-primary);}
.footer-card p{font-size:.9rem;}
.footer-logo{width:36px; height:36px; margin-bottom:1rem; border-radius:8px;}
.footer-cookie-link{
  background:none; border:none; color:var(--text-muted); font-size:.95rem; padding:.35rem 0; text-align:left;
  transition:color var(--transition-base);
}
.footer-cookie-link:hover{color:var(--text-primary);}
.footer-bottom{max-width:1200px; margin:2.5rem auto 0; text-align:center;}
.footer-bottom p{font-size:.82rem; color:var(--text-faint);}


.contact-layout{align-items:start;}
.contact-form-card{padding:2.5rem;}
.form-note{font-size:.88rem;}
.form-row{margin-bottom:1.2rem; display:flex; flex-direction:column; gap:.4rem;}
.form-row label{font-size:.88rem; font-weight:600; color:var(--text-primary);}
.form-row input[type="text"], .form-row input[type="email"], .form-row input[type="tel"], .form-row textarea{
  background:rgba(255,255,255,0.04); border:1px solid var(--border-soft); border-radius:var(--radius-sm);
  padding:.85rem 1rem; color:var(--text-primary); font-size:.95rem; font-family:inherit;
  transition:border-color var(--transition-base), background var(--transition-base);
  min-height:44px;
}
.form-row input:focus, .form-row textarea:focus{outline:none; border-color:var(--accent-teal); background:rgba(255,255,255,0.06);}
.form-row textarea{resize:vertical;}
.checkbox-row{flex-direction:row; align-items:flex-start; gap:.7rem;}
.checkbox-row input{width:20px; height:20px; margin-top:.2rem; accent-color:var(--accent-teal);}
.checkbox-row label{font-weight:400; font-size:.88rem; color:var(--text-muted);}
.checkbox-row a{color:var(--accent-teal); text-decoration:underline;}
.contact-info-stack{display:flex; flex-direction:column; gap:1.2rem;}
.info-card{display:flex; flex-direction:column; gap:.3rem;}
.info-card h3{margin-bottom:.2rem;}
.map-embed{border-radius:var(--radius-md); overflow:hidden; border:1px solid var(--border-soft); box-shadow:var(--shadow-2);}
.map-embed iframe{display:block; border-radius:var(--radius-md);}


.thanks-main{min-height:100vh; display:flex; align-items:center; justify-content:center; padding:9rem 1.5rem 4rem;}
.thanks-card{
  max-width:480px; text-align:center; background:var(--surface-strong); border:1px solid var(--border-soft);
  border-radius:var(--radius-lg); padding:3rem 2.2rem; box-shadow:var(--shadow-glow); backdrop-filter:blur(14px);
}
.thanks-icon{font-size:3rem; color:var(--accent-teal); display:block; margin-bottom:1.2rem;}
.thanks-sub{font-size:.88rem; color:var(--text-faint);}


.legal-content{max-width:820px; margin:0 auto;}
.legal-content h2{margin-top:2.4rem; color:var(--accent-teal); font-size:1.3rem;}
.legal-content h2:first-child{margin-top:0;}
.legal-content p{font-size:.98rem;}


.scroll-reveal{opacity:0; transform:translateY(24px); transition:opacity .8s ease, transform .8s ease;}
.scroll-reveal.revealed{opacity:1; transform:translateY(0);}


.cookie-backdrop{
  position:fixed; inset:0; background:rgba(5,8,14,0.72); backdrop-filter:blur(4px);
  display:none; align-items:center; justify-content:center; z-index:500; padding:1.5rem;
}
.cookie-backdrop.visible{display:flex;}
.cookie-modal{
  max-width:520px; width:100%; background:#111726; border:1px solid var(--border-strong);
  border-radius:var(--radius-lg); padding:2.2rem; box-shadow:var(--shadow-glow);
}
.cookie-modal h2{margin-bottom:.7rem;}
.cookie-modal > p{font-size:.92rem;}
.cookie-categories{display:flex; flex-direction:column; gap:1rem; margin:1.4rem 0;}
.cookie-row{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  background:rgba(255,255,255,0.03); border:1px solid var(--border-soft); border-radius:var(--radius-sm); padding:1rem 1.2rem;
}
.cookie-row strong{font-size:.92rem; display:block; margin-bottom:.2rem;}
.cookie-row p{font-size:.82rem; margin:0;}
.cookie-row input[type="checkbox"]{width:22px; height:22px; accent-color:var(--accent-teal); flex-shrink:0;}
.cookie-actions{display:flex; flex-wrap:wrap; gap:.8rem; justify-content:flex-end;}


@media(max-width:900px){
  .nav-links{display:none;}
  .hamburger{display:flex;}
}


@media(max-width:640px){
  .content-section{padding:4rem 1.2rem;}
  .page-hero{padding:8rem 1.2rem 3rem;}
  .hero-section{padding:8rem 1.2rem 3rem;}
  .contact-form-card{padding:1.6rem;}
}
.iti{width:100%;}
#phone{width:100%;}
====END-CSS-MARKER====