/* CYBERCLIC V2 — Full-Width Premium Dynamic */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400;1,600&display=swap');
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
:root {
  --ink:#0B1120; --ink-light:#111B2E; --navy:#0F1D36; --navy-soft:#162744;
  --gold:#C9A96E; --gold-light:#E8D5A8; --gold-glow:rgba(201,169,110,0.25);
  --white:#ffffff; --ivory:#F8F7F4; --gray:#8B95A5; --gray-light:#C4C9D2;
  --shadow:0 8px 30px rgba(11,17,32,0.1); --shadow-lg:0 25px 70px rgba(11,17,32,0.18);
  --radius:20px; --radius-sm:12px; --max-w:1280px;
  --tr:0.35s cubic-bezier(0.4,0,0.2,1); --tr-fast:0.25s cubic-bezier(0.4,0,0.2,1);
}
html { scroll-behavior:smooth; }
body { font-family:'Inter',-apple-system,sans-serif; background:var(--white); color:#475569; line-height:1.65; -webkit-font-smoothing:antialiased; overflow-x:hidden; }
a { color:inherit; text-decoration:none; } img { max-width:100%; height:auto; display:block; }
h1,h2,h3,h4 { font-family:'Inter',sans-serif; font-weight:800; line-height:1.1; letter-spacing:-0.03em; color:var(--ink); }
.container { width:100%; max-width:var(--max-w); margin:0 auto; padding:0 2rem; }

/* ===== NAV ===== */
.nav { position:fixed; top:0; left:0; right:0; z-index:1000; padding:1.1rem 0; transition:var(--tr-fast); background:transparent; border-bottom:1px solid transparent; }
.nav.scrolled { background:rgba(255,255,255,0.94); backdrop-filter:blur(16px); border-bottom-color:rgba(11,17,32,0.06); box-shadow:0 1px 10px rgba(11,17,32,0.04); }
.nav .container { display:flex; align-items:center; justify-content:space-between; }
.logo-img { height:34px; width:auto; }
.nav-links { display:flex; gap:2rem; list-style:none; align-items:center; }
.nav-links a { font-size:0.85rem; font-weight:600; color:var(--ink); transition:var(--tr-fast); position:relative; }
.nav-links a::after { content:''; position:absolute; bottom:-5px; left:0; width:0; height:2px; background:var(--gold); transition:var(--tr-fast); border-radius:1px; }
.nav-links a:hover { color:var(--gold); } .nav-links a:hover::after { width:100%; }
.nav-cta { background:var(--ink); color:var(--white)!important; padding:0.65rem 1.5rem; border-radius:100px; font-weight:700!important; font-size:0.8rem!important; transition:var(--tr-fast); }
.nav-cta:hover { background:var(--gold); color:var(--ink)!important; transform:translateY(-2px); }
.nav-cta::after { display:none!important; }
.nav-toggle { display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none; }
.nav-toggle span { display:block; width:24px; height:2.5px; background:var(--ink); border-radius:2px; }

/* ===== HERO — Logo grid + text ===== */
.hero { min-height:100vh; display:flex; align-items:center; padding-top:100px; padding-bottom:3rem; position:relative; overflow:hidden; background:linear-gradient(170deg,var(--ivory) 0%,#EEF0F4 50%,#E8EBF0 100%); }
.hero-blob { position:absolute; border-radius:50%; filter:blur(90px); pointer-events:none; opacity:0.3; }
.hero-blob.b1 { width:500px; height:500px; background:radial-gradient(circle,#4F46E5,transparent); top:-8%; right:-5%; animation:blob1 18s ease-in-out infinite; }
.hero-blob.b2 { width:400px; height:400px; background:radial-gradient(circle,var(--gold),transparent); bottom:-5%; left:-6%; animation:blob2 22s ease-in-out infinite; }
@keyframes blob1 { 0%,100%{transform:translate(0,0)scale(1)} 50%{transform:translate(-30px,20px)scale(1.1)} }
@keyframes blob2 { 0%,100%{transform:translate(0,0)scale(1)} 50%{transform:translate(25px,-30px)scale(1.08)} }
.hero .container { display:grid; grid-template-columns:1.1fr 1fr; gap:4rem; align-items:center; position:relative; z-index:2; }
.hero-left { opacity:0; animation:fadeInUp 0.8s ease forwards 0.3s; }
.hero-visual { opacity:0; animation:fadeInUp 0.8s ease forwards 0.6s; }
@keyframes fadeInUp { to{opacity:1;transform:translateY(0)} from{opacity:0;transform:translateY(24px)} }

.hero-tag { display:inline-block; padding:0.45rem 1.1rem; border-radius:100px; border:1.5px solid rgba(11,17,32,0.1); background:rgba(255,255,255,0.6); backdrop-filter:blur(8px); color:var(--gold); font-size:0.75rem; font-weight:700; letter-spacing:0.08em; margin-bottom:1.4rem; text-transform:uppercase; text-align:center; }
.hero h1 { font-size:clamp(2.4rem,5vw,4.2rem); font-weight:800; color:var(--ink); margin-bottom:1.3rem; line-height:1.05; letter-spacing:-0.04em; }
.hero-deco { position:absolute; inset:0; pointer-events:none; z-index:1; }
.hero-deco svg { position:absolute; color:var(--gold); opacity:0.25; }
.deco-star { width:28px; height:28px; top:18%; left:8%; animation:floatDeco 6s ease-in-out infinite; }
.deco-ring { width:60px; height:60px; top:65%; left:4%; animation:floatDeco 8s ease-in-out infinite reverse; }
.deco-diamond { width:22px; height:22px; top:12%; right:42%; animation:floatDeco 7s ease-in-out infinite 1s; }
@keyframes floatDeco { 0%,100%{transform:translateY(0)rotate(0deg)} 50%{transform:translateY(-12px)rotate(8deg)} }
.hero h1 .accent { font-style:italic; font-family:'Playfair Display',serif; font-weight:600; color:var(--gold); font-size:1.05em; }
.hero-desc { font-size:1.05rem; color:#64748B; max-width:460px; margin-bottom:2rem; line-height:1.6; }
.hero-cta-row { display:flex; gap:1rem; flex-wrap:wrap; align-items:center; margin-bottom:2.5rem; }
.hero-stats { display:flex; gap:2.5rem; margin-top:0.5rem; }
.hero-stat { display:flex; flex-direction:column; }
.hs-num { font-family:'Playfair Display',serif; font-size:2rem; font-weight:700; color:var(--ink); line-height:1; }
.hs-lab { font-size:0.8rem; color:#94a3b8; margin-top:0.3rem; font-weight:500; }
.btn { display:inline-flex; align-items:center; gap:0.5rem; padding:0.9rem 2rem; border-radius:100px; font-weight:700; font-size:0.88rem; transition:var(--tr-fast); cursor:pointer; border:none; }
.btn-primary { background:var(--ink); color:var(--white); box-shadow:0 4px 15px rgba(11,17,32,0.2); }
.btn-primary:hover { background:var(--gold); color:var(--ink); transform:translateY(-3px); box-shadow:0 10px 30px var(--gold-glow); }
.btn-outline { background:transparent; color:var(--ink); border:1.5px solid rgba(11,17,32,0.12); padding:0.85rem 1.8rem; }
.btn-outline:hover { border-color:var(--gold); color:var(--gold); transform:translateY(-3px); }

/* ===== HERO AUDIT FORM — Premium dark glass ===== */
.audit-card-wrap { position:relative; width:100%; max-width:430px; }
/* Glow behind card */
.audit-card-wrap::after { content:''; position:absolute; inset:20px; background:radial-gradient(circle,rgba(201,169,110,0.35),transparent 70%); filter:blur(50px); z-index:-1; animation:glowPulse 5s ease-in-out infinite; }
@keyframes glowPulse { 0%,100%{transform:scale(1);opacity:0.5} 50%{transform:scale(1.15);opacity:0.9} }

.hero-audit-form { background:linear-gradient(160deg,rgba(15,23,42,0.97),rgba(11,17,32,0.99)); backdrop-filter:blur(20px); border-radius:24px; padding:2.6rem; position:relative; z-index:1; overflow:hidden; }
/* Shimmer sweep across card */
.hero-audit-form::before { content:''; position:absolute; top:0; left:-150%; width:60%; height:100%; background:linear-gradient(100deg,transparent,rgba(201,169,110,0.06),transparent); transform:skewX(-20deg); animation:cardShine 7s ease-in-out infinite; pointer-events:none; }
@keyframes cardShine { 0%,60%{left:-150%} 100%{left:150%} }
/* Floating gold particles */
.audit-form-glow { position:absolute; top:15%; right:10%; width:6px; height:6px; border-radius:50%; background:var(--gold); box-shadow:0 0 12px var(--gold), -60px 40px 0 -2px rgba(201,169,110,0.5), -120px -10px 0 -3px rgba(201,169,110,0.35), 40px 90px 0 -3px rgba(201,169,110,0.4); animation:particleFloat 9s ease-in-out infinite; pointer-events:none; }
@keyframes particleFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-14px)} }

.audit-pill { display:inline-flex; align-items:center; gap:0.5rem; background:rgba(201,169,110,0.12); border:1px solid rgba(201,169,110,0.25); color:var(--gold); font-size:0.7rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; padding:0.35rem 0.9rem; border-radius:100px; margin-bottom:1.2rem; position:relative; }
.audit-pill::before { content:''; width:7px; height:7px; border-radius:50%; background:var(--gold); animation:pulseDot 2s ease-in-out infinite; }
@keyframes pulseDot { 0%,100%{box-shadow:0 0 0 0 rgba(201,169,110,0.5)} 50%{box-shadow:0 0 0 6px rgba(201,169,110,0)} }

.hero-audit-form h3 { color:var(--white); font-size:1.45rem; margin-bottom:0.3rem; font-weight:800; letter-spacing:-0.02em; position:relative; }
.hero-audit-form h3 .gold-word { color:var(--gold); font-family:'Playfair Display',serif; font-style:italic; font-weight:600; }
.hero-audit-subtitle { color:rgba(255,255,255,0.45); font-size:0.85rem; margin-bottom:1.6rem; position:relative; }

.audit-badges { display:flex; gap:0.5rem; margin-bottom:1.5rem; position:relative; }
.audit-badges span { display:flex; align-items:center; gap:0.4rem; font-size:0.74rem; font-weight:600; color:rgba(255,255,255,0.75); background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); padding:0.4rem 0.9rem; border-radius:100px; transition:var(--tr-fast); }
.audit-badges span:hover { border-color:var(--gold); color:var(--gold); transform:translateY(-2px); }
.audit-badges .ab-check { color:var(--gold); font-weight:800; }

.hero-audit-form .form-row { display:flex; flex-direction:column; gap:1rem; margin-bottom:1.2rem; position:relative; }
.hero-audit-form .form-group { display:flex; flex-direction:column; gap:0.4rem; }
.hero-audit-form label { font-size:0.7rem; font-weight:600; color:rgba(255,255,255,0.5); text-transform:uppercase; letter-spacing:0.1em; }
.hero-audit-form .form-input { width:100%; padding:0.9rem 1.1rem; border-radius:12px; border:1.5px solid rgba(255,255,255,0.08); background:rgba(255,255,255,0.04); color:var(--white); font-size:0.9rem; font-family:inherit; transition:var(--tr-fast); }
.hero-audit-form .form-input::placeholder { color:rgba(255,255,255,0.25); }
.hero-audit-form .form-input:focus { outline:none; border-color:var(--gold); background:rgba(201,169,110,0.05); box-shadow:0 0 0 3px rgba(201,169,110,0.12), 0 0 20px rgba(201,169,110,0.1); }

.hero-audit-form .btn-primary { width:100%; justify-content:center; margin-top:0.2rem; background:linear-gradient(135deg,var(--gold),#e0c9a0); color:var(--ink); font-size:0.92rem; font-weight:800; border:none; padding:1rem; border-radius:12px; position:relative; overflow:hidden; letter-spacing:0.01em; box-shadow:0 6px 25px rgba(201,169,110,0.3); }
.hero-audit-form .btn-primary::after { content:''; position:absolute; top:0; left:-100%; width:100%; height:100%; background:linear-gradient(90deg,transparent,rgba(255,255,255,0.45),transparent); transition:0.55s; }
.hero-audit-form .btn-primary:hover { transform:translateY(-3px); box-shadow:0 14px 40px rgba(201,169,110,0.45); }
.hero-audit-form .btn-primary:hover::after { left:100%; }

.audit-error { font-size:0.75rem; color:#F87171; margin-top:0.3rem; max-height:0; opacity:0; overflow:hidden; transition:var(--tr-fast); }
.audit-error.show { max-height:1.5rem; opacity:1; }
#audit-error-email.audit-error.show { max-height:2.5rem; }
#audit-error-server.audit-error.show { max-height:4rem; }
.hero-audit-form .form-input.invalid { border-color:#F87171 !important; }
.form-input.invalid { border-color:#F87171 !important; }

.audit-trust { display:flex; align-items:center; justify-content:center; gap:0.4rem; margin-top:1.1rem; font-size:0.74rem; color:rgba(255,255,255,0.65); position:relative; }
.audit-trust .at-lock { color:var(--gold); opacity:0.9; }

.audit-step { transition:opacity 0.3s ease, transform 0.3s ease; }
.audit-step2-msg { color:rgba(255,255,255,0.7); font-size:0.85rem; line-height:1.6; margin-bottom:1.2rem; text-align:left; }
.audit-success { text-align:center; padding:1.5rem 0; }
.audit-success-icon { width:56px; height:56px; border-radius:50%; background:linear-gradient(135deg,#34D399,#10B981); color:var(--white); display:flex; align-items:center; justify-content:center; font-size:1.6rem; font-weight:800; margin:0 auto 1rem; box-shadow:0 8px 25px rgba(16,185,129,0.3); }
.audit-success h4 { color:var(--white); font-size:1.2rem; margin-bottom:0.4rem; }
.audit-success p { color:rgba(255,255,255,0.55); font-size:0.85rem; }

.contact-error { font-size:0.75rem; color:#F87171; margin-bottom:0.8rem; max-height:0; opacity:0; overflow:hidden; transition:var(--tr-fast); }
.contact-error.show { max-height:2rem; opacity:1; }
.contact-success { display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; min-height:420px; padding:2rem; }
.contact-success-icon { width:56px; height:56px; border-radius:50%; background:linear-gradient(135deg,#818CF8,#6366F1); color:var(--white); display:flex; align-items:center; justify-content:center; font-size:1.6rem; font-weight:800; margin:0 auto 1rem; box-shadow:0 8px 25px rgba(99,102,241,0.25); }
.contact-success h4 { color:var(--ink); font-size:1.2rem; margin-bottom:0.4rem; }
.contact-success p { color:#64748B; font-size:0.9rem; }

/* ===== MARQUEE ===== */
.marquee { background:var(--ink); padding:1.2rem 0; overflow:hidden; position:relative; }
.marquee-track { display:flex; gap:3.5rem; width:max-content; animation:tick 30s linear infinite; }
@keyframes tick { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }
.marquee-item { font-size:0.9rem; font-weight:600; color:rgba(255,255,255,0.15); white-space:nowrap; display:flex; align-items:center; gap:3.5rem; letter-spacing:0.06em; text-transform:uppercase; }
.marquee-item span { color:rgba(255,255,255,0.7); }
.marquee-item::after { content:'◆'; color:var(--gold); font-size:0.5rem; opacity:0.5; }

/* ===== SERVICES — Dark grid ===== */
.services-dark { background:linear-gradient(135deg,#1E3A5F 0%,#0F1D36 50%,#0B1120 100%); padding:6rem 0; position:relative; overflow:hidden; }
.services-dark::before { content:''; position:absolute; top:20%; right:10%; width:80px; height:80px; background:rgba(201,169,110,0.15); border-radius:50%; filter:blur(20px); animation:floatAudit 6s ease-in-out infinite; }
.services-dark::after { content:''; position:absolute; bottom:20%; left:8%; width:60px; height:60px; background:rgba(79,70,229,0.12); border-radius:50%; filter:blur(15px); animation:floatAudit 8s ease-in-out infinite reverse; }
.services-dark .sec-head { text-align:center; margin:0 auto 3.5rem; max-width:600px; position:relative; }
.services-dark .sec-head h2 { color:var(--white); font-size:clamp(1.8rem,3vw,2.6rem); }
.services-dark .sec-head p { color:rgba(255,255,255,0.5); font-size:1rem; margin-top:0.6rem; }
.services-dark .kicker { color:var(--gold); justify-content:center; }
.services-dark .kicker::before { display:none; }

.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; position:relative; z-index:2; }
.service-card { display:block; text-decoration:none; background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.08); border-radius:var(--radius); padding:2.2rem; transition:var(--tr-fast); position:relative; overflow:hidden; backdrop-filter:blur(12px); }
.service-card:hover { background:rgba(255,255,255,0.06); border-color:rgba(255,255,255,0.12); transform:translateY(-6px); box-shadow:0 20px 50px rgba(0,0,0,0.3); }
.service-card:hover .service-icon { background:var(--gold); color:var(--ink); }
.service-icon { width:52px; height:52px; border-radius:14px; background:linear-gradient(135deg,rgba(255,255,255,0.08),rgba(255,255,255,0.02)); border:1px solid rgba(255,255,255,0.1); display:flex; align-items:center; justify-content:center; margin-bottom:1.4rem; transition:var(--tr-fast); color:var(--gold); }
.service-icon svg { width:24px; height:24px; stroke-width:1.8; }
.service-card:hover .service-icon { background:linear-gradient(135deg,var(--gold),#d4b87a); color:var(--ink); border-color:rgba(201,169,110,0.4); transform:scale(1.08) rotate(-3deg); }
.service-card h3 { color:var(--white); font-size:1.05rem; margin-bottom:0.5rem; font-weight:700; }
.service-card p { color:rgba(255,255,255,0.45); font-size:0.88rem; line-height:1.6; }

/* ===== APPROCHE — 4 wide steps ===== */
.approach { background:linear-gradient(180deg,var(--white) 0%,#F8FAFC 50%,var(--white) 100%); padding:6rem 0; position:relative; overflow:hidden; }
.approach::before { content:''; position:absolute; top:-80px; right:-80px; width:300px; height:300px; background:radial-gradient(circle,rgba(201,169,110,0.06),transparent 60%); filter:blur(50px); pointer-events:none; }
.approach::after { content:''; position:absolute; bottom:-60px; left:-60px; width:250px; height:250px; background:radial-gradient(circle,rgba(79,70,229,0.04),transparent 60%); filter:blur(40px); pointer-events:none; }
.approach-head { text-align:center; margin-bottom:3.5rem; position:relative; }
.approach-head .kicker { color:var(--gold); justify-content:center; margin-bottom:0.8rem; }
.approach-head h2 { font-size:clamp(1.8rem,3vw,2.6rem); margin-bottom:0.6rem; }
.approach-head p { color:#64748B; max-width:500px; margin:0 auto; }

.approach-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem; position:relative; }
.approach-steps::before { content:''; position:absolute; top:2.6rem; left:12.5%; right:12.5%; height:2px; background:linear-gradient(90deg,transparent,#E2E8F0,transparent); z-index:0; }

.ap-step { background:var(--white); border:1px solid rgba(11,17,32,0.06); border-radius:var(--radius); padding:2rem 1.5rem; text-align:center; position:relative; z-index:1; transition:var(--tr-fast); box-shadow:0 4px 20px rgba(11,17,32,0.04); }
.ap-step:hover { transform:translateY(-8px); box-shadow:0 20px 50px rgba(11,17,32,0.1); }
.ap-step:hover .ap-step-icon { transform:scale(1.1) rotate(-5deg); }
.ap-step:hover .ap-step-num { color:var(--gold); }

.ap-step-top { display:flex; align-items:center; justify-content:center; gap:0.8rem; margin-bottom:1.2rem; position:relative; }
.ap-step-num { font-family:'Playfair Display',serif; font-size:1.5rem; font-weight:700; color:var(--ink); opacity:0.12; transition:var(--tr-fast); line-height:1; }
.ap-step-icon { width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center; color:var(--white); transition:var(--tr-fast); box-shadow:0 6px 20px rgba(0,0,0,0.1); }
.step-1 .ap-step-icon { background:linear-gradient(135deg,#818CF8,#6366F1); box-shadow:0 6px 20px rgba(99,102,241,0.25); }
.step-2 .ap-step-icon { background:linear-gradient(135deg,#34D399,#10B981); box-shadow:0 6px 20px rgba(16,185,129,0.25); }
.step-3 .ap-step-icon { background:linear-gradient(135deg,#F59E0B,#D97706); box-shadow:0 6px 20px rgba(217,119,6,0.25); }
.step-4 .ap-step-icon { background:linear-gradient(135deg,var(--gold),#b8963e); box-shadow:0 6px 20px rgba(201,169,110,0.3); }

.ap-step h4 { font-size:1.05rem; margin-bottom:0.5rem; color:var(--ink); font-weight:700; }
.ap-step p { font-size:0.82rem; color:#64748B; line-height:1.55; }

.ap-step-line { position:absolute; top:2.6rem; right:-1.5rem; width:1.5rem; height:2px; background:linear-gradient(90deg,#E2E8F0,transparent); z-index:2; }
.ap-step:last-child .ap-step-line { display:none; }

/* ===== TESTIMONIALS SLIDER ===== */
.testimonials { background:linear-gradient(170deg,#F1F5F9 0%,#E2E8F0 100%); padding:6rem 0; position:relative; }
.testimonials .sec-head { text-align:center; margin-bottom:2.5rem; }
.testimonials .sec-head h2 { font-size:clamp(1.8rem,3vw,2.6rem); }

.testimonial-slider { max-width:640px; margin:0 auto; position:relative; background:rgba(255,255,255,0.5); backdrop-filter:blur(12px); border-radius:var(--radius); padding:3rem 2rem; border:1px solid rgba(255,255,255,0.5); box-shadow:0 10px 40px rgba(11,17,32,0.06); overflow:hidden; min-height:400px; display:flex; flex-direction:column; }
.testimonial-track { position:relative; width:100%; flex:1; }
.testimonial-slide { position:absolute; top:0; left:0; width:100%; height:100%; text-align:center; }
.testimonial-avatar { width:64px; height:64px; border-radius:50%; background:linear-gradient(135deg,var(--ink),#1e293b); color:var(--gold); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:1.1rem; margin:0 auto 1.2rem; box-shadow:0 4px 15px rgba(11,17,32,0.15); }
.testimonial-text { font-family:'Playfair Display',serif; font-size:1.15rem; color:var(--ink); line-height:1.65; margin-bottom:1.2rem; font-style:italic; }
.testimonial-stars { color:var(--gold); letter-spacing:0.15em; font-size:1rem; margin-bottom:0.6rem; }
.testimonial-name { font-weight:700; color:var(--ink); font-size:0.95rem; }
.testimonial-role { font-size:0.82rem; color:#64748B; margin-top:0.15rem; }
.testimonial-dots { display:flex; justify-content:center; gap:0.5rem; margin-top:auto; padding-top:1.5rem; position:relative; z-index:10; }
.dot { width:10px; height:10px; border-radius:50%; background:rgba(11,17,32,0.15); cursor:pointer; transition:var(--tr-fast); border:none; padding:0; }
.dot:hover { background:rgba(11,17,32,0.3); transform:scale(1.2); }
.dot.active { background:var(--gold); width:28px; border-radius:100px; }

/* ===== CONTACT ===== */
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-bottom:1rem; }
.form-input { width:100%; padding:0.9rem 1.2rem; border-radius:var(--radius-sm); border:1.5px solid rgba(255,255,255,0.1); background:rgba(255,255,255,0.05); color:var(--white); font-size:0.9rem; font-family:inherit; transition:var(--tr-fast); }
.form-input::placeholder { color:rgba(255,255,255,0.3); }
.form-input:focus { outline:none; border-color:var(--gold); background:rgba(255,255,255,0.08); }
.contact { background:var(--white); padding:6rem 0; }
.contact .container { display:grid; grid-template-columns:1fr 1.1fr; gap:4rem; align-items:center; }
.contact-left .kicker { color:var(--gold); margin-bottom:0.8rem; }
.contact-left h2 { font-size:clamp(1.8rem,3vw,2.6rem); margin-bottom:1rem; }
.contact-left p { color:#64748B; margin-bottom:2rem; }
.contact-info { display:flex; flex-direction:column; gap:1.2rem; }
.c-info-item { display:flex; align-items:center; gap:1rem; padding:1rem; border-radius:var(--radius-sm); border:1px solid rgba(11,17,32,0.05); transition:var(--tr-fast); }
.c-info-item:hover { background:var(--ivory); border-color:rgba(201,169,110,0.2); }
.c-info-icon { width:44px; height:44px; border-radius:50%; background:var(--white); border:1.5px solid rgba(11,17,32,0.08); color:var(--ink); display:flex; align-items:center; justify-content:center; font-size:1.1rem; flex-shrink:0; transition:var(--tr-fast); }
.c-info-item:hover .c-info-icon { border-color:var(--gold); color:var(--gold); }
.c-info-icon svg { width:20px; height:20px; }
.c-info-text h4 { font-size:0.9rem; margin-bottom:0.15rem; }
.c-info-text a { font-size:0.85rem; color:#64748B; transition:var(--tr-fast); }
.c-info-text a:hover { color:var(--gold); }

.contact-form { background:var(--white); border:1.5px solid rgba(11,17,32,0.06); border-radius:var(--radius); padding:2.5rem; box-shadow:var(--shadow); }
.contact-form h3 { font-size:1.1rem; margin-bottom:1.5rem; }
.contact-form .form-row { grid-template-columns:1fr 1fr; }
.contact-form .form-input { background:var(--ivory); border-color:rgba(11,17,32,0.08); color:var(--ink); }
.contact-form .form-input::placeholder { color:#94A3B8; }
.contact-form .form-input:focus { border-color:var(--gold); }
.contact-form textarea { grid-column:1/-1; resize:vertical; min-height:120px; }
.contact-form .btn-primary { background:var(--ink); color:var(--white); margin-top:0.5rem; }
.contact-form .btn-primary:hover { background:var(--gold); }

/* ===== FAQ ACCORDION ===== */
.faq { background:var(--white); padding:6rem 0; }
.faq .sec-head { text-align:center; margin:0 auto 3.5rem; max-width:600px; }
.faq .sec-head h2 { font-size:clamp(1.8rem,3vw,2.6rem); }
.faq-list { max-width:800px; margin:0 auto; display:flex; flex-direction:column; gap:0.6rem; }
.faq-item { border:1px solid rgba(11,17,32,0.06); border-radius:var(--radius-sm); background:#fff; overflow:hidden; transition:var(--tr-fast); }
.faq-item:hover { border-color:rgba(11,17,32,0.1); }
.faq-item.open { border-color:rgba(201,169,110,0.3); box-shadow:0 4px 20px rgba(11,17,32,0.04); }
.faq-question { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.2rem 1.5rem; cursor:pointer; background:none; border:none; width:100%; text-align:left; font-family:inherit; }
.faq-question h4 { font-size:0.95rem; font-weight:700; color:var(--ink); transition:var(--tr-fast); }
.faq-item.open .faq-question h4 { color:var(--gold); }
.faq-chevron { width:24px; height:24px; display:flex; align-items:center; justify-content:center; color:var(--gray); transition:var(--tr-fast); flex-shrink:0; }
.faq-chevron svg { width:16px; height:16px; }
.faq-item.open .faq-chevron { transform:rotate(180deg); color:var(--gold); }
.faq-answer { max-height:0; overflow:hidden; transition:max-height 0.4s cubic-bezier(0.4,0,0.2,1), padding 0.4s ease; }
.faq-item.open .faq-answer { max-height:300px; }
.faq-answer-inner { padding:0 1.5rem 1.2rem; color:#64748B; font-size:0.9rem; line-height:1.65; }

/* ===== FOOTER ===== */
.footer { background:var(--ink); padding:4rem 0 1.5rem; }
.footer-grid { display:grid; grid-template-columns:2fr repeat(3,1fr); gap:3rem; margin-bottom:3rem; }
.footer-brand p { color:rgba(255,255,255,0.4); margin-top:1rem; font-size:0.88rem; max-width:300px; line-height:1.7; }
.footer-title { font-weight:700; margin-bottom:1.2rem; font-size:0.7rem; text-transform:uppercase; letter-spacing:0.12em; color:rgba(255,255,255,0.35); }
.footer-links { list-style:none; }
.footer-links li { margin-bottom:0.6rem; }
.footer-links a { color:rgba(255,255,255,0.45); font-size:0.84rem; transition:var(--tr-fast); }
.footer-links a:hover { color:var(--gold); }
.footer-bottom { border-top:1px solid rgba(255,255,255,0.06); padding-top:1.5rem; display:flex; justify-content:space-between; flex-wrap:wrap; gap:1rem; }
.footer-bottom p { color:rgba(255,255,255,0.25); font-size:0.8rem; }

/* ===== SERVICE PAGES ===== */
.hero-service { min-height:70vh; }
.hero-service .hero-left { max-width:640px; }

.service-card-alt { background:var(--white); border:1.5px solid rgba(11,17,32,0.06); border-radius:var(--radius); padding:2.2rem; transition:var(--tr-fast); position:relative; }
.service-card-alt:hover { transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:rgba(201,169,110,0.3); }
.service-card-alt:hover .service-icon { background:var(--gold); color:var(--ink); }
.service-card-alt h3 { font-size:1.15rem; margin-bottom:0.8rem; color:var(--ink); }
.service-card-alt p { color:#64748B; font-size:0.9rem; line-height:1.6; margin-bottom:1.2rem; }

.service-features { list-style:none; display:flex; flex-direction:column; gap:0.5rem; }
.service-features li { font-size:0.82rem; color:#475569; display:flex; align-items:center; gap:0.5rem; }
.service-features li::before { content:'✓'; color:var(--gold); font-weight:800; }

.benefits-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; margin-top:2rem; }
.benefit-card { background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.08); border-radius:var(--radius); padding:1.8rem; text-align:center; transition:var(--tr-fast); }
.benefit-card:hover { background:rgba(255,255,255,0.08); transform:translateY(-5px); }
.benefit-icon { width:48px; height:48px; border-radius:50%; background:rgba(201,169,110,0.15); display:flex; align-items:center; justify-content:center; font-size:1.5rem; margin:0 auto 1rem; }
.benefit-card h4 { color:var(--gold); font-size:1rem; margin-bottom:0.5rem; }
.benefit-card p { color:rgba(255,255,255,0.6); font-size:0.85rem; line-height:1.6; }

.tech-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem; }
.tech-item { background:var(--white); border:1.5px solid rgba(11,17,32,0.06); border-radius:var(--radius-sm); padding:1.5rem; text-align:center; transition:var(--tr-fast); }
.tech-item:hover { border-color:var(--gold); transform:translateY(-3px); }
.tech-name { display:block; font-weight:700; color:var(--ink); font-size:0.95rem; margin-bottom:0.4rem; }
.tech-item p { font-size:0.8rem; color:#64748B; }

/* ===== PAGE CONTENT LAYOUT ===== */
.page-header { background:radial-gradient(circle at 12% 18%,rgba(201,169,110,0.32),transparent 28%),radial-gradient(circle at 86% 24%,rgba(79,70,229,0.16),transparent 30%),linear-gradient(135deg,#FFF7E8 0%,#F7FBFF 48%,#F3ECFF 100%); padding:150px 0 4rem; position:relative; overflow:hidden; }
.page-header::before { content:''; position:absolute; right:8%; top:34%; width:130px; height:130px; border-radius:40px; background:linear-gradient(135deg,rgba(201,169,110,0.24),rgba(255,255,255,0.28)); transform:rotate(16deg); animation:floatAudit 7s ease-in-out infinite; }
.page-header::after { content:''; position:absolute; left:6%; bottom:-46px; width:180px; height:180px; border-radius:50%; background:rgba(79,70,229,0.08); filter:blur(4px); animation:floatAudit 9s ease-in-out infinite reverse; }
.page-header .container { max-width:900px; }
.breadcrumb { display:flex; align-items:center; gap:0.6rem; font-size:0.78rem; color:#94a3b8; margin-bottom:1rem; position:relative; z-index:1; }
.breadcrumb a { color:#64748b; transition:var(--tr-fast); }
.breadcrumb a:hover { color:var(--gold); }
.page-header h1 { font-size:clamp(2rem,4vw,3.2rem); margin-bottom:1rem; max-width:780px; position:relative; z-index:1; text-wrap:balance; }
.page-subtitle { font-size:1.12rem; color:#475569; max-width:680px; position:relative; z-index:1; line-height:1.7; }

.page-layout { padding:4rem 0; background:linear-gradient(180deg,#FFFDF8 0%,#F8FBFF 42%,#FFFFFF 100%); position:relative; }
.page-layout::before { content:''; position:absolute; inset:8rem auto auto -90px; width:220px; height:220px; border-radius:50%; background:rgba(201,169,110,0.08); filter:blur(8px); pointer-events:none; }
.page-layout::after { content:''; position:absolute; inset:auto -120px 16rem auto; width:260px; height:260px; border-radius:50%; background:rgba(79,70,229,0.06); filter:blur(10px); pointer-events:none; }
.page-layout .container { display:grid; grid-template-columns:240px 1fr; gap:3rem; max-width:1100px; align-items:start; }

.page-sidebar { position:sticky; top:100px; }
.sidebar-nav { background:rgba(255,255,255,0.82); border:1.5px solid rgba(201,169,110,0.16); border-radius:var(--radius); padding:1.5rem; margin-bottom:1rem; box-shadow:0 18px 45px rgba(11,17,32,0.06); backdrop-filter:blur(14px); }
.sidebar-title { font-size:0.75rem; font-weight:700; text-transform:uppercase; letter-spacing:0.1em; color:var(--gold); margin-bottom:1rem; }
.sidebar-nav ul { list-style:none; display:flex; flex-direction:column; gap:0.6rem; }
.sidebar-nav a { font-size:0.9rem; color:#475569; transition:var(--tr-fast); display:block; padding:0.3rem 0; }
.sidebar-nav a:hover { color:var(--gold); padding-left:0.5rem; }
.sidebar-cta { background:linear-gradient(135deg,var(--ink),#233D63); border-radius:var(--radius); padding:1.5rem; text-align:center; box-shadow:0 18px 45px rgba(11,17,32,0.16); position:relative; overflow:hidden; }
.sidebar-cta::before { content:''; position:absolute; width:90px; height:90px; border-radius:50%; background:rgba(201,169,110,0.18); right:-34px; top:-34px; }
.sidebar-cta p { font-size:0.85rem; color:rgba(255,255,255,0.7); margin-bottom:1rem; }
.sidebar-cta .btn { width:100%; padding:0.7rem 1rem; font-size:0.8rem; }

.page-content { min-width:0; position:relative; z-index:1; }
.content-section { margin-bottom:4.5rem; }
.content-section h2 { font-size:clamp(1.55rem,2.2vw,2rem); margin-bottom:1rem; color:var(--ink); text-wrap:balance; }
.content-section .lead { font-size:1.16rem; color:#334155; line-height:1.75; margin-bottom:1.5rem; }
.content-section p { color:#64748b; line-height:1.7; margin-bottom:1rem; }

.type-card { display:flex; gap:1.5rem; background:rgba(255,255,255,0.9); border:1.5px solid rgba(201,169,110,0.13); border-radius:calc(var(--radius) + 4px); padding:2rem; margin-bottom:1.5rem; transition:var(--tr-fast); box-shadow:0 16px 45px rgba(11,17,32,0.055); position:relative; overflow:hidden; }
.type-card::after { content:''; position:absolute; right:-42px; top:-42px; width:120px; height:120px; border-radius:50%; background:linear-gradient(135deg,rgba(201,169,110,0.12),rgba(79,70,229,0.07)); transition:var(--tr-fast); }
.type-card::before { content:''; position:absolute; inset:0; background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,0.55) 46%,transparent 72%); transform:translateX(-120%); transition:transform 0.8s ease; pointer-events:none; }
.type-card:hover { border-color:rgba(201,169,110,0.38); transform:translateY(-5px); box-shadow:0 24px 60px rgba(11,17,32,0.09); }
.type-card:hover::after { transform:scale(1.2); }
.type-card:hover::before { transform:translateX(120%); }
.type-icon { width:62px; height:62px; border-radius:20px; background:linear-gradient(135deg,#FFF2D0,#F2E7FF); display:flex; align-items:center; justify-content:center; flex-shrink:0; box-shadow:inset 0 0 0 1px rgba(255,255,255,0.5),0 12px 24px rgba(201,169,110,0.12); color:var(--ink); }
.type-icon svg { width:28px; height:28px; stroke-width:1.8; }
.type-content h3 { font-size:1.1rem; margin-bottom:0.5rem; color:var(--ink); }
.type-content p { font-size:0.9rem; margin-bottom:1rem; }
.type-content ul { list-style:none; display:flex; flex-wrap:wrap; gap:0.5rem 1.5rem; }
.type-content li { font-size:0.8rem; color:#64748b; display:flex; align-items:center; gap:0.4rem; }
.type-content li::before { content:'✓'; color:var(--gold); font-weight:800; }

.section-dark { background:var(--ink); border-radius:var(--radius); padding:2.5rem; margin-left:-1rem; margin-right:-1rem; }
.section-dark h2 { color:var(--white); }
.advantages-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; margin-top:1.5rem; }
.adv-item { text-align:center; }
.adv-emoji { font-size:2rem; display:block; margin-bottom:0.5rem; }
.adv-item h4 { font-size:0.95rem; color:var(--gold); margin-bottom:0.4rem; }
.adv-item p { font-size:0.8rem; color:rgba(255,255,255,0.6); line-height:1.5; margin:0; }

.process-steps { display:flex; flex-direction:column; gap:1.5rem; margin-top:1.5rem; }
.process-step { display:flex; gap:1.5rem; align-items:flex-start; }
.step-num { width:48px; height:48px; border-radius:50%; background:var(--ivory); border:2px solid var(--gold); display:flex; align-items:center; justify-content:center; font-family:'Playfair Display',serif; font-weight:700; color:var(--gold); flex-shrink:0; font-size:1.1rem; }
.step-content h4 { font-size:1rem; margin-bottom:0.3rem; color:var(--ink); }
.step-content p { font-size:0.9rem; margin:0; }

.process-timeline { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.4rem; margin-top:2rem; counter-reset:process; }
.timeline-step { min-height:150px; background:linear-gradient(145deg,rgba(255,255,255,0.96),#FFF7E8); border:1.5px solid rgba(201,169,110,0.2); border-radius:calc(var(--radius) + 6px); padding:1.8rem; position:relative; overflow:hidden; box-shadow:0 18px 45px rgba(11,17,32,0.07); transition:var(--tr-fast); }
.timeline-step:nth-child(5) { grid-column:1/-1; min-height:auto; }
.timeline-step::before { content:''; position:absolute; inset:auto -42px -42px auto; width:130px; height:130px; border-radius:50%; background:linear-gradient(135deg,rgba(201,169,110,0.18),rgba(79,70,229,0.09)); }
.timeline-step::after { content:''; position:absolute; inset:0; background:linear-gradient(120deg,transparent,rgba(255,255,255,0.5),transparent); transform:translateX(-120%); transition:transform 0.75s ease; }
.timeline-step:hover { transform:translateY(-5px); box-shadow:0 26px 65px rgba(11,17,32,0.1); }
.timeline-step:hover::after { transform:translateX(120%); }
.timeline-num { width:48px; height:48px; border-radius:16px; background:linear-gradient(135deg,var(--ink),#2B4B78); color:var(--gold); display:flex; align-items:center; justify-content:center; font-family:'Playfair Display',serif; font-weight:800; margin-bottom:1rem; position:relative; z-index:1; box-shadow:0 12px 25px rgba(11,17,32,0.16); }
.timeline-content { position:relative; z-index:1; }
.timeline-content h4 { font-size:1.05rem; margin-bottom:0.35rem; color:var(--ink); }
.timeline-content p { font-size:0.88rem; line-height:1.5; margin:0; color:#64748b; max-width:34ch; }

.tech-list { display:flex; flex-direction:column; gap:1rem; margin-top:1.5rem; }
.tech-row { display:flex; align-items:center; gap:1.5rem; padding:1rem 1.2rem; background:linear-gradient(135deg,#FFF8E8,#F8FAFF); border:1px solid rgba(201,169,110,0.12); border-radius:var(--radius-sm); transition:var(--tr-fast); }
.tech-row:hover { transform:translateX(6px); border-color:rgba(201,169,110,0.28); box-shadow:0 12px 28px rgba(11,17,32,0.055); }
.tech-label { font-weight:700; color:var(--ink); min-width:160px; font-size:0.95rem; }
.tech-desc { color:#64748b; font-size:0.9rem; }

.faq-list-simple { display:flex; flex-direction:column; gap:0.8rem; margin-top:1.5rem; }
.faq-item-simple { background:rgba(255,255,255,0.9); border:1.5px solid rgba(201,169,110,0.12); border-radius:var(--radius-sm); overflow:hidden; box-shadow:0 8px 25px rgba(11,17,32,0.035); }
.faq-item-simple summary { padding:1.2rem 1.5rem; cursor:pointer; font-weight:600; color:var(--ink); display:flex; align-items:center; justify-content:space-between; list-style:none; }
.faq-item-simple summary::-webkit-details-marker { display:none; }
.faq-item-simple summary::after { content:'+'; font-size:1.2rem; color:var(--gold); transition:var(--tr-fast); }
.faq-item-simple[open] summary::after { content:'−'; }
.faq-item-simple p { padding:0 1.5rem 1.2rem; color:#64748b; font-size:0.9rem; line-height:1.6; margin:0; }

.cta-inline { background:radial-gradient(circle at 14% 18%,rgba(201,169,110,0.34),transparent 25%),linear-gradient(135deg,#1E3A5F,var(--navy)); border-radius:calc(var(--radius) + 6px); padding:3rem; text-align:center; color:#fff; position:relative; overflow:hidden; box-shadow:0 26px 70px rgba(30,58,95,0.22); }
.cta-inline::after { content:''; position:absolute; right:-50px; bottom:-60px; width:180px; height:180px; border-radius:50%; background:rgba(255,255,255,0.08); animation:floatAudit 8s ease-in-out infinite; }
.cta-inline h2 { color:#fff !important; margin-bottom:0.8rem; }
.cta-inline p { color:rgba(255,255,255,0.8) !important; margin-bottom:1.5rem; }

/* ===== ANIMATIONS ===== */
.reveal { opacity:0; transform:translateY(24px); transition:opacity 0.7s ease, transform 0.7s ease; }
.reveal.active { opacity:1; transform:translateY(0); }
.stagger-grid > * { opacity:0; transform:translateY(20px); transition:opacity 0.6s ease, transform 0.6s ease; }
.stagger-grid.active > *:nth-child(1) { transition-delay:0s; opacity:1; transform:translateY(0); }
.stagger-grid.active > *:nth-child(2) { transition-delay:0.08s; opacity:1; transform:translateY(0); }
.stagger-grid.active > *:nth-child(3) { transition-delay:0.16s; opacity:1; transform:translateY(0); }
.stagger-grid.active > *:nth-child(4) { transition-delay:0.24s; opacity:1; transform:translateY(0); }
.stagger-grid.active > *:nth-child(5) { transition-delay:0.32s; opacity:1; transform:translateY(0); }
.stagger-grid.active > *:nth-child(6) { transition-delay:0.4s; opacity:1; transform:translateY(0); }

/* ===== RESPONSIVE ===== */
@media (max-width:900px) {
  .container { padding:0 1rem; }
  .hero .container { grid-template-columns:1fr; gap:3rem; text-align:center; }
  .hero .container > * { min-width:0; }
  .hero-left { max-width:100%; min-width:0; width:100%; }
  .hero-visual { width:100%; max-width:100%; }
  .audit-card-wrap { margin:0 auto; max-width:100%; }
  .hero h1, .hero-desc, .hero-tag { max-width:100%; overflow-wrap:anywhere; }
  .hero { overflow-x:clip; }
  .hero-cta-row { justify-content:center; }
  .hero-desc { margin:0 auto 2rem; }
  .hero-audit-form { max-width:100%; }
  .service-grid { grid-template-columns:1fr 1fr; }
  .benefits-grid { grid-template-columns:1fr 1fr; }
  .tech-grid { grid-template-columns:1fr 1fr; }
  .approach-steps { grid-template-columns:repeat(2,1fr); }
  .approach-steps::before { display:none; }
  .ap-step-line { display:none; }
  .contact .container { grid-template-columns:1fr; gap:3rem; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .page-layout .container { grid-template-columns:1fr; }
  .page-sidebar { position:static; }
  .sidebar-nav { display:none; }
  .type-card { flex-direction:column; }
  .tech-row { flex-direction:column; align-items:flex-start; gap:0.3rem; }
  .advantages-grid { grid-template-columns:1fr 1fr; }
  .process-timeline { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:768px) {
  .nav-links { display:none; position:absolute; top:100%; left:0; right:0; background:var(--white); flex-direction:column; padding:1.5rem; gap:1.2rem; border-bottom:1px solid rgba(11,17,32,0.06); }
  .nav-links.active { display:flex; } .nav-toggle { display:flex; }
  .hero { padding-top:104px; }
  .page-header { padding:120px 0 2rem; }
  .service-grid { grid-template-columns:1fr; }
  .benefits-grid { grid-template-columns:1fr; }
  .tech-grid { grid-template-columns:1fr 1fr; }
  .advantages-grid { grid-template-columns:1fr; }
  .approach-steps { grid-template-columns:1fr; }
  .contact-form .form-row { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr; }
  .process-step { gap:1rem; }
  .process-timeline { grid-template-columns:1fr; }
  .timeline-step:nth-child(5) { grid-column:auto; }
}

/* ===== POPUP MODAL ===== */
.modal-overlay { position:fixed; inset:0; z-index:2000; background:rgba(11,17,32,0.55); backdrop-filter:blur(8px); display:flex; align-items:center; justify-content:center; opacity:0; pointer-events:none; transition:opacity 0.3s ease; }
.modal-overlay.active { opacity:1; pointer-events:auto; }
.modal-content { background:var(--white); border-radius:var(--radius); padding:2.5rem; width:100%; max-width:520px; margin:1rem; position:relative; box-shadow:var(--shadow-lg); transform:translateY(20px); transition:transform 0.35s cubic-bezier(0.4,0,0.2,1); }
.modal-overlay.active .modal-content { transform:translateY(0); }
.modal-close { position:absolute; top:1rem; right:1rem; width:36px; height:36px; border-radius:50%; border:none; background:var(--ivory); color:var(--ink); font-size:1.4rem; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:var(--tr-fast); }
.modal-close:hover { background:var(--gold); color:var(--white); transform:rotate(90deg); }
.modal-content h3 { font-size:1.3rem; margin-bottom:1.5rem; color:var(--ink); }
.modal-form .form-row { grid-template-columns:1fr 1fr; gap:0.8rem; margin-bottom:0.8rem; }
.modal-form .form-input { background:var(--ivory); border-color:rgba(11,17,32,0.08); color:var(--ink); }
.modal-form .form-input::placeholder { color:#94A3B8; }
.modal-form .form-input:focus { border-color:var(--gold); }
.modal-form textarea { grid-column:1/-1; resize:vertical; min-height:100px; }
.modal-form .btn-primary { width:100%; justify-content:center; margin-top:0.5rem; }
.modal-error { font-size:0.75rem; color:#F87171; margin-bottom:0.6rem; max-height:0; opacity:0; overflow:hidden; transition:var(--tr-fast); }
.modal-error.show { max-height:2rem; opacity:1; }
.modal-success { display:none; text-align:center; padding:2rem 0; }
.modal-success-icon { width:56px; height:56px; border-radius:50%; background:linear-gradient(135deg,#34D399,#10B981); color:var(--white); display:flex; align-items:center; justify-content:center; font-size:1.6rem; font-weight:800; margin:0 auto 1rem; box-shadow:0 8px 25px rgba(16,185,129,0.3); }
.modal-success h4 { color:var(--ink); font-size:1.2rem; margin-bottom:0.4rem; }
.modal-success p { color:#64748B; font-size:0.9rem; }
@media (max-width:768px) {
  .modal-form .form-row { grid-template-columns:1fr; }
  .modal-content { padding:1.8rem; }
}
@media (max-width:480px) {
  .container { padding:0 0.75rem; }
  .hero .container { gap:2rem; }
  .hero-left { padding-inline:0.35rem; }
  .hero h1 { font-size:clamp(1.5rem,7.5vw,2rem); letter-spacing:-0.01em; line-height:1.08; margin-left:auto; margin-right:auto;  text-wrap:balance; }
  .hero-desc { font-size:1rem; max-width:31ch; margin-left:auto; margin-right:auto; }
  .hero-tag { font-size:0.65rem; padding:0.4rem 0.9rem; }
}
