:root{--bg:#06080F;--surface:#0C1120;--card:#111827;--card2:#162035;--cyan:#22D3EE;--cyan-dim:rgba(34,211,238,0.12);--cyan-glow:rgba(34,211,238,0.25);--gold:#F59E0B;--gold-dim:rgba(245,158,11,0.12);--text:#F0F4FF;--muted:#6B7FA3;--border:rgba(255,255,255,0.07);--border-cyan:rgba(34,211,238,0.2);}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Plus Jakarta Sans',sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden;line-height:1.7;font-size:16px;}
::-webkit-scrollbar{width:4px;}
::-webkit-scrollbar-track{background:var(--bg);}
::-webkit-scrollbar-thumb{background:var(--cyan-dim);border-radius:2px;}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:1rem 6%;background:rgba(6,8,15,0.85);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.logo-icon{width:36px;height:36px;border-radius:9px;background:linear-gradient(135deg,#0891B2,#22D3EE);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-weight:700;font-size:15px;color:#fff;}
.logo-name{font-family:'Playfair Display',serif;font-weight:700;font-size:1.2rem;color:var(--text);}
.logo-name span{color:var(--cyan);}
.nav-links{display:flex;gap:2rem;list-style:none;}
.nav-links a{color:var(--muted);text-decoration:none;font-size:0.88rem;font-weight:500;transition:color 0.2s;}
.nav-links a:hover{color:var(--cyan);}
.nav-btn{background:transparent;border:1px solid var(--border-cyan);color:var(--cyan);font-weight:600;font-size:0.85rem;padding:0.5rem 1.3rem;border-radius:6px;text-decoration:none;font-family:'Plus Jakarta Sans',sans-serif;transition:background 0.2s,box-shadow 0.2s;}
.nav-btn:hover{background:var(--cyan-dim);box-shadow:0 0 20px var(--cyan-glow);}

/* HERO */
.hero{min-height:100vh;display:flex;align-items:center;padding:9rem 6% 5rem;position:relative;overflow:hidden;}
.hero-bg{position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse 55% 55% at 80% 30%,rgba(34,211,238,0.07) 0%,transparent 70%),radial-gradient(ellipse 40% 40% at 15% 70%,rgba(8,145,178,0.06) 0%,transparent 65%);}
.dots-bg{position:absolute;inset:0;z-index:0;opacity:0.035;background-image:radial-gradient(circle,var(--cyan) 1px,transparent 1px);background-size:32px 32px;}
.hero-content{position:relative;z-index:1;max-width:680px;}
.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:0.78rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--cyan);margin-bottom:1.8rem;}
.eyebrow-line{width:28px;height:1px;background:var(--cyan);}
.hero h1{font-family:'Playfair Display',serif;font-size:clamp(2.8rem,6.5vw,4.8rem);font-weight:800;line-height:1.05;letter-spacing:-0.02em;margin-bottom:1.6rem;}
.hero h1 em{font-style:italic;color:var(--cyan);}
.hero h1 .gold{color:var(--gold);}
.hero-sub{font-size:1.1rem;color:var(--muted);max-width:520px;margin-bottom:2.8rem;font-weight:300;line-height:1.8;}
.hero-sub strong{color:var(--text);font-weight:500;}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:3.5rem;}
.btn-primary{background:var(--cyan);color:#06080F;font-weight:700;font-size:0.92rem;padding:0.85rem 2rem;border-radius:7px;text-decoration:none;font-family:'Plus Jakarta Sans',sans-serif;transition:box-shadow 0.25s,transform 0.2s;}
.btn-primary:hover{box-shadow:0 0 35px rgba(34,211,238,0.4);transform:translateY(-2px);}
.btn-ghost{border:1px solid var(--border);color:var(--text);padding:0.85rem 2rem;border-radius:7px;text-decoration:none;font-size:0.92rem;font-weight:500;transition:border-color 0.2s,background 0.2s;}
.btn-ghost:hover{border-color:var(--border-cyan);background:var(--cyan-dim);}
.hero-trust{display:flex;align-items:center;gap:2rem;flex-wrap:wrap;}
.trust-item{display:flex;flex-direction:column;}
.trust-num{font-family:'Playfair Display',serif;font-size:1.7rem;font-weight:700;color:var(--cyan);line-height:1;}
.trust-label{font-size:0.75rem;color:var(--muted);margin-top:3px;}
.trust-div{width:1px;height:36px;background:var(--border);}

/* SECTIONS */
section{padding:6rem 6%;}
.section-tag{font-size:0.75rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--cyan);margin-bottom:0.7rem;display:flex;align-items:center;gap:8px;}
.section-tag::before{content:'';width:20px;height:1px;background:var(--cyan);}
.section-title{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:700;line-height:1.15;margin-bottom:1rem;letter-spacing:-0.01em;}
.section-sub{color:var(--muted);font-size:1rem;max-width:520px;font-weight:300;line-height:1.8;}
.section-head{margin-bottom:3.5rem;}

/* SERVICES */
#services{background:var(--surface);}
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1.25rem;}
.svc-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:2rem;position:relative;overflow:hidden;transition:transform 0.3s,border-color 0.3s;}
.svc-card::after{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:0;transition:opacity 0.3s;}
.svc-card:hover{transform:translateY(-5px);border-color:var(--border-cyan);}
.svc-card:hover::after{opacity:1;}
.svc-icon{width:46px;height:46px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:1.2rem;background:var(--cyan-dim);border:1px solid var(--border-cyan);}
.svc-card h3{font-family:'Playfair Display',serif;font-size:1.15rem;font-weight:700;margin-bottom:0.6rem;}
.svc-card p{font-size:0.88rem;color:var(--muted);line-height:1.7;}
.svc-badge{display:inline-block;margin-top:1.2rem;font-size:0.72rem;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;color:var(--gold);background:var(--gold-dim);padding:0.3rem 0.8rem;border-radius:4px;}

/* PROCESS */
#process{background:var(--bg);}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;}
.process-grid::before{content:'';position:absolute;top:28px;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,var(--border-cyan),transparent);}
.step{padding:0 1.5rem 0 0;position:relative;}
.step-num{width:56px;height:56px;border-radius:50%;border:1px solid var(--border-cyan);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-weight:700;font-size:1.1rem;color:var(--cyan);background:var(--bg);margin-bottom:1.5rem;position:relative;z-index:1;}
.step h3{font-size:1rem;font-weight:600;margin-bottom:0.5rem;}
.step p{font-size:0.85rem;color:var(--muted);line-height:1.7;}

/* WHY */
#why{background:var(--surface);}
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;}
.why-list{list-style:none;margin-top:2rem;}
.why-list li{display:flex;align-items:flex-start;gap:12px;padding:0.9rem 0;border-bottom:1px solid var(--border);font-size:0.95rem;}
.why-list li:last-child{border-bottom:none;}
.why-check{flex-shrink:0;width:20px;height:20px;border-radius:50%;background:var(--cyan-dim);border:1px solid var(--border-cyan);display:flex;align-items:center;justify-content:center;color:var(--cyan);font-size:0.65rem;margin-top:2px;font-weight:700;}
.why-card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:2rem;}
.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;}
.stat-box{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1.2rem;text-align:center;}
.stat-box .num{font-family:'Playfair Display',serif;font-size:2rem;font-weight:700;color:var(--cyan);line-height:1;}
.stat-box .lbl{font-size:0.72rem;color:var(--muted);margin-top:5px;}
.canada-badge{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1rem 1.2rem;font-size:0.88rem;color:var(--muted);line-height:1.5;}

/* PRICING */
#pricing{background:var(--bg);}
.pricing-note{font-size:0.85rem;color:var(--muted);margin-top:0.5rem;font-style:italic;}
.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;margin-top:3rem;}
.price-card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:2rem;position:relative;}
.price-card.featured{border-color:rgba(34,211,238,0.4);background:var(--card2);}
.featured-tag{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--cyan);color:#06080F;font-size:0.7rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;padding:0.25rem 1rem;border-radius:50px;white-space:nowrap;}
.price-tier{font-size:0.75rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--cyan);margin-bottom:0.5rem;}
.price-amount{font-family:'Playfair Display',serif;font-size:2.6rem;font-weight:700;line-height:1;margin-bottom:0.3rem;}
.price-amount sup{font-size:1.2rem;vertical-align:super;}
.price-amount small{font-size:0.95rem;font-weight:400;color:var(--muted);font-family:'Plus Jakarta Sans',sans-serif;}
.price-desc{font-size:0.85rem;color:var(--muted);margin-bottom:1.5rem;margin-top:0.3rem;}
.price-features{list-style:none;margin-bottom:1.8rem;}
.price-features li{font-size:0.88rem;color:var(--muted);padding:0.42rem 0;display:flex;align-items:flex-start;gap:9px;border-bottom:1px solid var(--border);}
.price-features li:last-child{border-bottom:none;}
.price-features li::before{content:'✓';color:var(--cyan);font-weight:700;font-size:0.75rem;flex-shrink:0;margin-top:2px;}
.price-features li span{color:var(--text);}
.btn-plan{display:block;text-align:center;text-decoration:none;padding:0.82rem;border-radius:8px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:0.9rem;transition:all 0.2s;border:1px solid var(--border);color:var(--text);}
.btn-plan:hover{border-color:var(--border-cyan);color:var(--cyan);}
.btn-plan.cta{background:var(--cyan);color:#06080F;border:none;}
.btn-plan.cta:hover{box-shadow:0 0 30px rgba(34,211,238,0.35);}

/* CONTACT */
#contact{background:var(--surface);}
.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:5rem;align-items:start;}
.contact-info h2{font-family:'Playfair Display',serif;font-size:2rem;font-weight:700;margin-bottom:1rem;}
.contact-info p{color:var(--muted);margin-bottom:2.2rem;font-weight:300;line-height:1.8;}
.contact-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:1.3rem;}
.c-icon{width:38px;height:38px;border-radius:8px;flex-shrink:0;background:var(--cyan-dim);border:1px solid var(--border-cyan);display:flex;align-items:center;justify-content:center;font-size:0.95rem;}
.c-icon-label{font-size:0.72rem;color:var(--muted);font-weight:500;margin-bottom:2px;}
.c-icon-value{font-size:0.92rem;font-weight:500;}
.contact-form{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:2.2rem;}
.contact-form h3{font-family:'Playfair Display',serif;font-size:1.3rem;font-weight:700;margin-bottom:1.8rem;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.form-group{margin-bottom:1.1rem;}
label{font-size:0.78rem;color:var(--muted);display:block;margin-bottom:0.4rem;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;}
input,select,textarea{width:100%;background:rgba(255,255,255,0.04);border:1px solid var(--border);border-radius:7px;padding:0.75rem 1rem;color:var(--text);font-family:'Plus Jakarta Sans',sans-serif;font-size:0.9rem;transition:border-color 0.2s;outline:none;}
input:focus,select:focus,textarea:focus{border-color:rgba(34,211,238,0.4);}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:0.6;}
textarea{min-height:110px;resize:vertical;}
select option{background:var(--card);}
.form-submit{width:100%;padding:0.9rem;border:none;cursor:pointer;background:var(--cyan);color:#06080F;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:0.95rem;border-radius:8px;transition:box-shadow 0.2s,transform 0.2s;}
.form-submit:hover{box-shadow:0 0 30px rgba(34,211,238,0.35);transform:translateY(-1px);}

/* FOOTER */
footer{background:var(--bg);border-top:1px solid var(--border);padding:3.5rem 6% 2rem;}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:3rem;margin-bottom:2.5rem;}
.footer-brand p{color:var(--muted);font-size:0.86rem;margin-top:1rem;max-width:220px;font-weight:300;line-height:1.7;}
.footer-sub{font-size:0.78rem;color:var(--muted);margin-top:0.4rem;opacity:0.7;font-style:italic;}
.footer-col h4{font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--cyan);margin-bottom:1rem;}
.footer-col ul{list-style:none;}
.footer-col li{margin-bottom:0.6rem;}
.footer-col a{color:var(--muted);text-decoration:none;font-size:0.86rem;transition:color 0.2s;}
.footer-col a:hover{color:var(--cyan);}
.footer-bottom{border-top:1px solid var(--border);padding-top:1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;}
.footer-bottom p{font-size:0.78rem;color:var(--muted);}
.footer-loc{font-size:0.78rem;color:var(--muted);}


/* ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
.hero-content>*{opacity:0;animation:fadeUp 0.7s ease forwards;}
.hero-eyebrow{animation-delay:0.1s;}
.hero h1{animation-delay:0.25s;}
.hero-sub{animation-delay:0.4s;}
.hero-actions{animation-delay:0.55s;}
.hero-trust{animation-delay:0.7s;}

/* MOBILE */
@media(max-width:900px){
  .nav-links{display:none;}
  .why-grid,.contact-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .process-grid{grid-template-columns:1fr 1fr;}
  .process-grid::before{display:none;}
  .step{padding:0 0 2rem 0;}
}
@media(max-width:600px){
  #chat-window{width:calc(100vw - 32px);right:16px;bottom:88px;}
  .footer-grid,.process-grid{grid-template-columns:1fr;}
  .form-row{grid-template-columns:1fr;}
  .hero-trust{gap:1.2rem;}
  .trust-div{display:none;}
}
