/* LandingPro.Site v2 — Premium Clean/Tech Blue */

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }

:root {
    --primary: #2563eb;
    --primary-hover: #1d4ed8;
    --primary-dark: #1e3a8a;
    --primary-50: #eff6ff;
    --primary-100: #dbeafe;
    --primary-200: #bfdbfe;
    --primary-300: #93c5fd;
    --accent: #0ea5e9;
    --accent-light: #38bdf8;
    --white: #ffffff;
    --gray-50: #f8fafc; --gray-100: #f1f5f9; --gray-200: #e2e8f0;
    --gray-300: #cbd5e1; --gray-400: #94a3b8; --gray-500: #64748b;
    --gray-600: #475569; --gray-700: #334155; --gray-800: #1e293b;
    --gray-900: #0f172a; --gray-950: #020617;
    --success: #10b981; --success-light: #d1fae5;
    --error: #ef4444; --error-light: #fee2e2;
    --warning: #f59e0b; --warning-light: #fef3c7;
    --info: #3b82f6; --info-light: #dbeafe;
    --font-display: 'Clash Display', 'Plus Jakarta Sans', sans-serif;
    --font-body: 'Plus Jakarta Sans', sans-serif;
    --section-gap: 120px;
    --radius-sm: 8px; --radius-md: 12px; --radius-lg: 20px; --radius-xl: 28px; --radius-full: 9999px;
    --shadow-sm: 0 2px 8px rgba(0,0,0,0.04);
    --shadow-md: 0 4px 24px rgba(0,0,0,0.06);
    --shadow-lg: 0 12px 48px rgba(0,0,0,0.08);
    --shadow-xl: 0 20px 60px rgba(0,0,0,0.1);
    --shadow-glow: 0 0 60px rgba(37,99,235,0.15);
    --ease: cubic-bezier(0.4,0,0.2,1);
    --ease-spring: cubic-bezier(0.34,1.56,0.64,1);
}

html { scroll-behavior: smooth; }
body { font-family: var(--font-body); font-size: 16px; line-height: 1.7; color: var(--gray-800); background: var(--white); overflow-x: hidden; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; display: block; }
a { text-decoration: none; color: inherit; transition: all .3s var(--ease); }
ul { list-style: none; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.highlight { color: var(--primary); }

/* PRELOADER */
.preloader { position: fixed; inset: 0; z-index: 9999; background: var(--gray-950); display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 32px; transition: opacity .6s var(--ease), visibility .6s; }
.preloader.hide { opacity: 0; visibility: hidden; pointer-events: none; }
.preloader__logo { display: flex; align-items: center; gap: 6px; }
.preloader__letter { display: inline-flex; align-items: center; justify-content: center; width: 60px; height: 60px; font-family: var(--font-display); font-size: 26px; font-weight: 800; color: var(--white); border-radius: var(--radius-md); opacity: 0; transform: translateY(20px) scale(0.8); animation: letterPop .5s var(--ease-spring) forwards; }
.preloader__letter:nth-child(1) { animation-delay: .1s; background: var(--primary); }
.preloader__letter:nth-child(2) { animation-delay: .25s; background: rgba(37,99,235,.6); }
.preloader__letter:nth-child(3) { animation-delay: .4s; background: rgba(37,99,235,.3); }
@keyframes letterPop { to { opacity: 1; transform: translateY(0) scale(1); } }
.preloader__bar-wrap { width: 200px; height: 3px; background: rgba(255,255,255,.08); border-radius: 4px; overflow: hidden; }
.preloader__bar { height: 100%; width: 0; background: linear-gradient(90deg, var(--primary), var(--accent-light)); border-radius: 4px; animation: barGo 1.8s var(--ease) .5s forwards; }
@keyframes barGo { 0%{width:0} 40%{width:60%} 80%{width:92%} 100%{width:100%} }
.preloader__text { font-size: 12px; color: var(--gray-500); letter-spacing: 4px; text-transform: uppercase; opacity: 0; animation: fadeIn .4s var(--ease) .6s forwards; }

/* ANIMATIONS */
@keyframes fadeIn { to { opacity: 1; } }
@keyframes fadeUp { from { opacity:0; transform:translateY(40px); } to { opacity:1; transform:translateY(0); } }
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }
@keyframes shimmer { 0%{background-position:-200% center} 100%{background-position:200% center} }
@keyframes pulseRing { 0%{transform:scale(1);opacity:1} 100%{transform:scale(1.5);opacity:0} }

[data-aos] { opacity:0; transform:translateY(40px); transition: opacity .7s var(--ease), transform .7s var(--ease); }
[data-aos].aos-in { opacity:1; transform:translateY(0); }
[data-aos="fade-right"] { transform:translateX(-40px); }
[data-aos="fade-right"].aos-in { transform:translateX(0); }
[data-aos="zoom-in"] { transform:scale(.9); }
[data-aos="zoom-in"].aos-in { transform:scale(1); }

/* BUTTONS */
.btn { display:inline-flex; align-items:center; gap:10px; padding:14px 32px; font-family:var(--font-body); font-size:15px; font-weight:600; border-radius:var(--radius-full); border:2px solid transparent; cursor:pointer; transition:all .35s var(--ease); position:relative; overflow:hidden; white-space:nowrap; }
.btn--primary { background:var(--primary); color:var(--white); }
.btn--primary:hover { background:var(--primary-hover); transform:translateY(-3px); box-shadow:0 12px 32px rgba(37,99,235,.35); }
.btn--white { background:var(--white); color:var(--primary); }
.btn--white:hover { transform:translateY(-3px); box-shadow:0 12px 32px rgba(0,0,0,.1); }
.btn--outline { background:transparent; color:var(--gray-700); border-color:var(--gray-200); }
.btn--outline:hover { border-color:var(--primary); color:var(--primary); transform:translateY(-3px); }
.btn--ghost { background:transparent; color:var(--gray-600); padding:10px 20px; }
.btn--ghost:hover { color:var(--primary); }
.btn--lg { padding:18px 40px; font-size:16px; }
.btn--block { width:100%; justify-content:center; }
.btn i { font-size:14px; transition:transform .35s var(--ease); }
.btn:hover i.fa-arrow-right { transform:translateX(5px); }

/* NAVBAR */
.nav { position:fixed; top:0; left:0; width:100%; z-index:1000; padding:20px 0; transition:all .4s var(--ease); }
.nav.scrolled { padding:12px 0; background:rgba(255,255,255,.95); backdrop-filter:blur(24px) saturate(180%); -webkit-backdrop-filter:blur(24px) saturate(180%); border-bottom:1px solid rgba(0,0,0,.04); }
.nav__inner { max-width:1200px; margin:0 auto; padding:0 24px; display:flex; align-items:center; justify-content:space-between; }
.logo { display:flex; align-items:center; gap:12px; z-index:10; }
.logo__icon { width:42px; height:42px; display:flex; align-items:center; justify-content:center; background:var(--primary); border-radius:var(--radius-md); position:relative; overflow:hidden; }
.logo__icon::after { content:''; position:absolute; top:-50%; left:-50%; width:200%; height:200%; background:linear-gradient(45deg,transparent 40%,rgba(255,255,255,.15) 50%,transparent 60%); animation:shimmer 3s infinite; }
.logo__icon svg { width:22px; height:22px; position:relative; z-index:1; }
.logo__text { font-family:var(--font-display); font-size:22px; font-weight:700; color:var(--gray-900); letter-spacing:-.5px; }
.logo__text span { color:var(--primary); }
.nav__menu { display:flex; align-items:center; gap:4px; }
.nav__link { padding:10px 18px; font-size:14px; font-weight:500; color:var(--gray-500); border-radius:var(--radius-full); transition:all .3s var(--ease); }
.nav__link:hover,.nav__link.active { color:var(--gray-900); background:var(--gray-50); }
.nav__actions { display:flex; align-items:center; gap:8px; }
.nav__toggle { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:8px; z-index:10; }
.nav__toggle span { width:24px; height:2px; background:var(--gray-800); border-radius:2px; transition:all .3s var(--ease); transform-origin:center; }
.nav__toggle.active span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.nav__toggle.active span:nth-child(2) { opacity:0; }
.nav__toggle.active span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* HERO */
.hero { position:relative; min-height:100vh; display:flex; align-items:center; padding:100px 0 80px; overflow:hidden; }
.hero__bg { position:absolute; inset:0; pointer-events:none; }
.hero__orb { position:absolute; border-radius:50%; filter:blur(80px); opacity:.5; }
.hero__orb--1 { width:600px; height:600px; background:var(--primary-100); top:-20%; right:-10%; animation:float 8s ease-in-out infinite; }
.hero__orb--2 { width:400px; height:400px; background:rgba(14,165,233,.1); bottom:-10%; left:-5%; animation:float 10s ease-in-out infinite 2s; }
.hero__grid { position:absolute; inset:0; background-image:linear-gradient(rgba(37,99,235,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.03) 1px,transparent 1px); background-size:80px 80px; mask-image:radial-gradient(ellipse 70% 50% at 50% 50%,black 20%,transparent 70%); -webkit-mask-image:radial-gradient(ellipse 70% 50% at 50% 50%,black 20%,transparent 70%); }
.hero__dots { position:absolute; right:5%; top:15%; display:grid; grid-template-columns:repeat(6,1fr); gap:16px; opacity:.15; }
.hero__dots span { width:4px; height:4px; border-radius:50%; background:var(--primary); }
.hero__content { position:relative; z-index:1; display:grid; grid-template-columns:1.1fr .9fr; gap:60px; align-items:center; }
.hero__left { max-width:600px; }
.hero__badge { display:inline-flex; align-items:center; gap:8px; padding:8px 20px 8px 8px; background:var(--primary-50); border:1px solid var(--primary-100); border-radius:var(--radius-full); font-size:13px; font-weight:600; color:var(--primary); margin-bottom:28px; animation:fadeUp .6s var(--ease) .2s both; }
.hero__badge-icon { width:28px; height:28px; display:flex; align-items:center; justify-content:center; background:var(--primary); color:var(--white); border-radius:50%; font-size:11px; }
.hero__title { font-family:var(--font-display); font-size:clamp(38px,5.5vw,64px); font-weight:800; line-height:1.08; color:var(--gray-950); letter-spacing:-2px; margin-bottom:24px; animation:fadeUp .6s var(--ease) .35s both; }
.hero__title-gradient { background:linear-gradient(135deg,var(--primary),var(--accent)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.hero__desc { font-size:18px; color:var(--gray-500); line-height:1.75; margin-bottom:36px; max-width:520px; animation:fadeUp .6s var(--ease) .5s both; }
.hero__cta { display:flex; gap:14px; margin-bottom:48px; animation:fadeUp .6s var(--ease) .65s both; flex-wrap:wrap; }
.hero__proof { display:flex; align-items:center; gap:16px; animation:fadeUp .6s var(--ease) .8s both; }
.hero__avatars { display:flex; }
.hero__avatar { width:36px; height:36px; border-radius:50%; border:2px solid var(--white); margin-left:-10px; background:var(--primary-100); display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:700; color:var(--primary); }
.hero__avatar:first-child { margin-left:0; }
.hero__proof-text { font-size:13px; color:var(--gray-500); line-height:1.4; }
.hero__proof-text strong { color:var(--gray-800); display:block; }
.hero__right { position:relative; animation:fadeUp .8s var(--ease) .4s both; }
.hero__visual { position:relative; background:var(--gray-50); border-radius:var(--radius-xl); border:1px solid var(--gray-100); padding:24px; box-shadow:var(--shadow-xl); }
.hero__visual::before { content:''; position:absolute; inset:-1px; border-radius:var(--radius-xl); padding:1px; background:linear-gradient(135deg,var(--primary-200),transparent 50%,var(--accent-light)); -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); -webkit-mask-composite:xor; mask-composite:exclude; opacity:.5; }
.hero__mockup { background:var(--white); border-radius:var(--radius-lg); overflow:hidden; border:1px solid var(--gray-100); }
.hero__mockup-bar { display:flex; align-items:center; gap:8px; padding:12px 16px; background:var(--gray-50); border-bottom:1px solid var(--gray-100); }
.hero__mockup-dot { width:8px; height:8px; border-radius:50%; }
.hero__mockup-dot:nth-child(1){background:#ef4444} .hero__mockup-dot:nth-child(2){background:#f59e0b} .hero__mockup-dot:nth-child(3){background:#10b981}
.hero__mockup-url { flex:1; margin-left:8px; padding:6px 12px; background:var(--white); border-radius:var(--radius-sm); font-size:12px; color:var(--gray-400); border:1px solid var(--gray-100); }
.hero__mockup-body { padding:20px; min-height:240px; display:flex; flex-direction:column; gap:12px; }
.hero__mockup-line { height:10px; border-radius:4px; background:var(--gray-100); }
.hero__mockup-line--title { width:70%; height:16px; background:var(--gray-200); }
.hero__mockup-line--sub { width:90%; }
.hero__mockup-line--short { width:40%; }
.hero__mockup-line--btn { width:35%; height:32px; background:var(--primary-100); border-radius:var(--radius-sm); }
.hero__float-card { position:absolute; background:var(--white); border-radius:var(--radius-lg); padding:16px 20px; box-shadow:var(--shadow-lg); border:1px solid var(--gray-100); animation:float 5s ease-in-out infinite; z-index:2; }
.hero__float-card--1 { top:-20px; right:-30px; }
.hero__float-card--2 { bottom:30px; left:-40px; animation-delay:2s; }
.hero__float-card-icon { width:36px; height:36px; border-radius:var(--radius-md); display:flex; align-items:center; justify-content:center; font-size:16px; margin-bottom:8px; }
.hero__float-card h4 { font-size:13px; font-weight:700; color:var(--gray-800); }
.hero__float-card p { font-size:11px; color:var(--gray-400); }

/* SECTION HEADER */
.section-header { text-align:center; max-width:620px; margin:0 auto 64px; }
.section-header__tag { display:inline-flex; align-items:center; gap:6px; padding:6px 16px; background:var(--primary-50); color:var(--primary); border:1px solid var(--primary-100); border-radius:var(--radius-full); font-size:13px; font-weight:600; margin-bottom:20px; }
.section-header__title { font-family:var(--font-display); font-size:clamp(30px,4vw,46px); font-weight:800; color:var(--gray-900); letter-spacing:-1.5px; line-height:1.12; margin-bottom:18px; }
.section-header__desc { font-size:17px; color:var(--gray-500); line-height:1.7; }

/* TEMPLATES */
.templates { padding:var(--section-gap) 0; background:var(--gray-50); position:relative; }
.templates::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent,var(--gray-200),transparent); }
.templates__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.template-card { background:var(--white); border-radius:var(--radius-lg); overflow:hidden; border:1px solid var(--gray-100); transition:all .4s var(--ease); position:relative; }
.template-card:hover { transform:translateY(-10px); box-shadow:var(--shadow-xl); }
.template-card__img { position:relative; aspect-ratio:16/10; overflow:hidden; background:var(--gray-100); }
.template-card__img img { width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease); }
.template-card:hover .template-card__img img { transform:scale(1.08); }
.template-card__overlay { position:absolute; inset:0; background:linear-gradient(180deg,rgba(15,23,42,0) 30%,rgba(15,23,42,.7) 100%); display:flex; align-items:flex-end; justify-content:center; padding:20px; opacity:0; transition:opacity .4s var(--ease); }
.template-card:hover .template-card__overlay { opacity:1; }
.template-card__body { padding:20px 24px 24px; }
.template-card__body h3 { font-family:var(--font-display); font-size:18px; font-weight:700; color:var(--gray-900); margin-bottom:6px; }
.template-card__body p { font-size:14px; color:var(--gray-500); line-height:1.5; }

/* STEPS */
.steps { padding:var(--section-gap) 0; }
.steps__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.step-card { position:relative; padding:40px 32px 36px; background:var(--white); border:1px solid var(--gray-100); border-radius:var(--radius-lg); text-align:center; transition:all .4s var(--ease); overflow:hidden; }
.step-card::before { content:''; position:absolute; top:0; left:50%; transform:translateX(-50%); width:60px; height:3px; background:var(--primary); border-radius:0 0 4px 4px; opacity:0; transition:opacity .4s,width .4s; }
.step-card:hover::before { opacity:1; width:100%; }
.step-card:hover { transform:translateY(-8px); box-shadow:var(--shadow-lg); border-color:var(--primary-100); }
.step-card__num { position:absolute; top:16px; right:20px; font-family:var(--font-display); font-size:56px; font-weight:800; color:var(--primary-50); line-height:1; }
.step-card__icon { width:68px; height:68px; display:flex; align-items:center; justify-content:center; margin:0 auto 24px; background:var(--primary-50); color:var(--primary); border-radius:var(--radius-lg); font-size:26px; transition:all .4s var(--ease); }
.step-card:hover .step-card__icon { background:var(--primary); color:var(--white); transform:scale(1.05); box-shadow:0 8px 24px rgba(37,99,235,.3); }
.step-card__title { font-family:var(--font-display); font-size:20px; font-weight:700; color:var(--gray-900); margin-bottom:12px; }
.step-card__desc { font-size:15px; color:var(--gray-500); line-height:1.65; }

/* PRICING */
.pricing { padding:var(--section-gap) 0; background:var(--gray-950); position:relative; overflow:hidden; }
.pricing::before { content:''; position:absolute; width:500px; height:500px; background:radial-gradient(circle,rgba(37,99,235,.15),transparent 70%); top:-200px; right:-100px; border-radius:50%; }
.pricing .section-header__tag { background:rgba(37,99,235,.15); border-color:rgba(37,99,235,.2); }
.pricing .section-header__title { color:var(--white); }
.pricing .section-header__desc { color:var(--gray-400); }
.pricing__card { max-width:520px; margin:0 auto; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08); border-radius:var(--radius-xl); padding:48px 44px; backdrop-filter:blur(16px); position:relative; transition:all .4s var(--ease); }
.pricing__card:hover { border-color:rgba(37,99,235,.3); box-shadow:var(--shadow-glow); transform:translateY(-4px); }
.pricing__badge { position:absolute; top:-14px; left:50%; transform:translateX(-50%); padding:6px 24px; background:var(--primary); color:var(--white); font-size:13px; font-weight:700; border-radius:var(--radius-full); box-shadow:0 4px 16px rgba(37,99,235,.4); }
.pricing__price { display:flex; align-items:flex-start; justify-content:center; gap:6px; margin-bottom:40px; padding-bottom:36px; border-bottom:1px solid rgba(255,255,255,.06); }
.pricing__amount { font-family:var(--font-display); font-size:76px; font-weight:800; color:var(--white); letter-spacing:-4px; line-height:1; }
.pricing__currency span:first-child { font-family:var(--font-display); font-size:28px; font-weight:700; color:var(--white); }
.pricing__period { font-size:15px; color:var(--gray-500); }
.pricing__features { margin-bottom:32px; }
.pricing__features li { display:flex; align-items:center; gap:14px; padding:11px 0; font-size:15px; color:var(--gray-300); }
.pricing__features li i { color:var(--accent-light); font-size:14px; flex-shrink:0; }
.pricing__methods-box { padding:20px; background:rgba(255,255,255,.04); border-radius:var(--radius-md); border:1px solid rgba(255,255,255,.06); margin-bottom:28px; }
.pricing__methods-box>p { font-size:13px; color:var(--gray-500); margin-bottom:12px; font-weight:500; }
.pricing__methods { display:flex; gap:8px; flex-wrap:wrap; }
.method-chip { display:inline-flex; align-items:center; gap:6px; padding:7px 16px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.08); border-radius:var(--radius-full); font-size:13px; font-weight:500; color:var(--gray-300); }
.method-chip i { color:var(--accent-light); }

/* FAQ */
.faq { padding:var(--section-gap) 0; }
.faq__list { max-width:740px; margin:0 auto; }
.faq__item { border:1px solid var(--gray-100); border-radius:var(--radius-md); margin-bottom:10px; overflow:hidden; transition:all .3s var(--ease); }
.faq__item:hover { border-color:var(--primary-200); }
.faq__item.active { border-color:var(--primary-200); background:var(--primary-50); }
.faq__question { width:100%; display:flex; justify-content:space-between; align-items:center; padding:20px 24px; background:none; border:none; cursor:pointer; font-family:var(--font-body); font-size:15px; font-weight:600; color:var(--gray-800); text-align:left; transition:color .3s; }
.faq__question:hover { color:var(--primary); }
.faq__icon { width:28px; height:28px; display:flex; align-items:center; justify-content:center; background:var(--gray-50); border-radius:50%; font-size:12px; color:var(--gray-400); flex-shrink:0; transition:all .3s var(--ease); }
.faq__item.active .faq__icon { background:var(--primary); color:var(--white); transform:rotate(45deg); }
.faq__answer { max-height:0; overflow:hidden; transition:max-height .4s var(--ease),padding .4s var(--ease); }
.faq__item.active .faq__answer { max-height:200px; padding:0 24px 20px; }
.faq__answer p { font-size:15px; color:var(--gray-500); line-height:1.7; }

/* CONTACT */
.contact { padding:var(--section-gap) 0; background:var(--gray-50); }
.contact__grid { display:grid; grid-template-columns:1fr 1.5fr; gap:48px; align-items:start; }
.contact__cards { display:flex; flex-direction:column; gap:14px; }
.contact__card { display:flex; align-items:center; gap:16px; padding:20px 24px; background:var(--white); border-radius:var(--radius-md); border:1px solid var(--gray-100); transition:all .3s var(--ease); }
.contact__card:hover { border-color:var(--primary-200); transform:translateX(6px); }
.contact__card-icon { width:48px; height:48px; display:flex; align-items:center; justify-content:center; background:var(--primary-50); color:var(--primary); border-radius:var(--radius-md); font-size:18px; flex-shrink:0; }
.contact__card h4 { font-size:14px; font-weight:600; color:var(--gray-800); margin-bottom:2px; }
.contact__card p,.contact__card a { font-size:14px; color:var(--gray-500); }
.contact__card a:hover { color:var(--primary); }
.contact__form-wrap { background:var(--white); padding:40px; border-radius:var(--radius-lg); border:1px solid var(--gray-100); box-shadow:var(--shadow-sm); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.form-group { margin-bottom:20px; }
.form-group label { display:block; font-size:14px; font-weight:600; color:var(--gray-700); margin-bottom:8px; }
.form-group input,.form-group select,.form-group textarea { width:100%; padding:14px 18px; font-family:var(--font-body); font-size:15px; color:var(--gray-800); background:var(--gray-50); border:1.5px solid var(--gray-200); border-radius:var(--radius-md); transition:all .3s var(--ease); outline:none; }
.form-group input:focus,.form-group select:focus,.form-group textarea:focus { border-color:var(--primary); background:var(--white); box-shadow:0 0 0 4px rgba(37,99,235,.08); }
.form-group input::placeholder,.form-group textarea::placeholder { color:var(--gray-400); }
.form-group textarea { resize:vertical; min-height:120px; }

/* FOOTER */
.footer { padding:64px 0 0; background:var(--gray-950); color:var(--gray-400); }
.footer__grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:48px; padding-bottom:48px; border-bottom:1px solid rgba(255,255,255,.06); }
.footer__brand p { margin-top:14px; font-size:14px; color:var(--gray-500); max-width:280px; line-height:1.65; }
.footer__col h4 { font-size:13px; font-weight:700; color:var(--white); margin-bottom:16px; letter-spacing:.5px; text-transform:uppercase; }
.footer__col a { display:block; font-size:14px; color:var(--gray-500); margin-bottom:10px; }
.footer__col a:hover { color:var(--white); transform:translateX(4px); }
.footer__bottom { padding:24px 0; text-align:center; }
.footer__bottom p { font-size:13px; color:var(--gray-600); }

/* WHATSAPP */
.wa-float { position:fixed; bottom:28px; right:28px; z-index:999; }
.wa-float__btn { width:60px; height:60px; border-radius:50%; background:#25d366; color:var(--white); display:flex; align-items:center; justify-content:center; font-size:28px; box-shadow:0 4px 20px rgba(37,211,102,.35); transition:all .3s var(--ease); position:relative; cursor:pointer; border:none; }
.wa-float__btn:hover { transform:scale(1.1); box-shadow:0 6px 28px rgba(37,211,102,.45); }
.wa-float__pulse { position:absolute; inset:-4px; border-radius:50%; border:2px solid #25d366; animation:pulseRing 2s infinite; }
.wa-float__tooltip { position:absolute; bottom:70px; right:0; background:var(--white); color:var(--gray-800); padding:12px 18px; border-radius:var(--radius-md); box-shadow:var(--shadow-lg); font-size:13px; font-weight:500; white-space:nowrap; opacity:0; transform:translateY(8px); transition:all .3s var(--ease); pointer-events:none; }
.wa-float__tooltip::after { content:''; position:absolute; bottom:-6px; right:24px; width:12px; height:12px; background:var(--white); transform:rotate(45deg); }
.wa-float:hover .wa-float__tooltip { opacity:1; transform:translateY(0); }

/* ALERTS */
.alert { padding:14px 20px; border-radius:var(--radius-md); font-size:14px; font-weight:500; margin-bottom:20px; display:flex; align-items:center; gap:10px; }
.alert-success { background:var(--success-light); color:#065f46; border:1px solid #a7f3d0; }
.alert-error { background:var(--error-light); color:#991b1b; border:1px solid #fecaca; }
.alert-warning { background:var(--warning-light); color:#92400e; border:1px solid #fde68a; }
.alert-info { background:var(--info-light); color:#1e40af; border:1px solid #93c5fd; }

/* RESPONSIVE */
@media(max-width:1024px) {
    .hero__content{grid-template-columns:1fr;gap:40px}
    .hero__right{max-width:500px;margin:0 auto}
    .templates__grid{grid-template-columns:repeat(2,1fr)}
    .steps__grid{grid-template-columns:repeat(2,1fr)}
    .footer__grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px) {
    :root{--section-gap:80px}
    .nav__menu,.nav__actions{display:none}
    .nav__toggle{display:flex}
    .nav__menu.active{display:flex;flex-direction:column;position:fixed;inset:0;background:rgba(255,255,255,.98);backdrop-filter:blur(20px);align-items:center;justify-content:center;gap:8px;z-index:5}
    .nav__menu.active .nav__link{font-size:20px;padding:14px 24px;color:var(--gray-800)}
    .nav__menu.active+.nav__actions{display:flex;position:fixed;bottom:40px;left:50%;transform:translateX(-50%);z-index:6;gap:12px}
    .hero{min-height:auto;padding:120px 0 80px}
    .hero__content{text-align:center}
    .hero__left{max-width:100%}
    .hero__desc{max-width:100%;margin-left:auto;margin-right:auto}
    .hero__cta{justify-content:center}
    .hero__proof{justify-content:center}
    .hero__float-card,.hero__dots{display:none}
    .templates__grid,.steps__grid{grid-template-columns:1fr}
    .contact__grid{grid-template-columns:1fr}
    .form-row{grid-template-columns:1fr}
    .footer__grid{grid-template-columns:1fr;gap:32px}
    .wa-float__btn{width:52px;height:52px;font-size:24px}
}
@media(max-width:480px) {
    .hero__title{font-size:34px;letter-spacing:-1px}
    .pricing__amount{font-size:60px}
    .hero__cta{flex-direction:column;align-items:center}
    .contact__form-wrap{padding:24px}
}
