/* ═══════════════════════════════════════════════
   MYDMC V3.0 — PREMIUM GLASSMORPHISM DESIGN
   Inspired by: Revolut, Apple, iOS
═══════════════════════════════════════════════ */

:root {
    --bg-primary: #050508;
    --bg-secondary: #0a0a0f;
    --bg-card: rgba(255,255,255,0.03);
    --bg-glass: rgba(255,255,255,0.06);
    --bg-glass-hover: rgba(255,255,255,0.1);
    --border-glass: rgba(255,255,255,0.08);
    --border-glass-hover: rgba(255,255,255,0.15);
    --text-primary: #ffffff;
    --text-secondary: rgba(255,255,255,0.6);
    --text-muted: rgba(255,255,255,0.35);
    --accent-teal: #00D4AA;
    --accent-teal-glow: rgba(0,212,170,0.15);
    --accent-cyan: #00B4D8;
    --accent-purple: #8B5CF6;
    --accent-gradient: linear-gradient(135deg, #60A5FA, #A78BFA, #F472B6);
    --accent-gradient-subtle: linear-gradient(135deg, rgba(0,212,170,0.1) 0%, rgba(0,180,216,0.1) 50%, rgba(139,92,246,0.1) 100%);
    --glass-blur: 40px;
    --radius-sm: 12px;
    --radius-md: 20px;
    --radius-lg: 28px;
    --radius-xl: 40px;
    --radius-pill: 100px;
    --font-display: 'Inter', sans-serif;
    --font-body: 'Outfit', sans-serif;
    --transition-smooth: cubic-bezier(0.16, 1, 0.3, 1);
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; -webkit-font-smoothing:antialiased; }
body { font-family:var(--font-body); background:var(--bg-primary); color:var(--text-primary); overflow-x:hidden; line-height:1.6; }

/* AMBIENT */
.ambient-bg { position:fixed; top:0; left:0; width:100%; height:100%; z-index:0; pointer-events:none; }
.ambient-orb { position:absolute; border-radius:50%; filter:blur(120px); animation:orbFloat 20s ease-in-out infinite; }
.ambient-orb--1 { width:600px; height:600px; background:var(--accent-teal); top:-200px; right:-100px; opacity:0.12; }
.ambient-orb--2 { width:500px; height:500px; background:var(--accent-purple); bottom:-150px; left:-100px; opacity:0.08; animation-delay:-7s; }
.ambient-orb--3 { width:400px; height:400px; background:var(--accent-cyan); top:50%; left:50%; transform:translate(-50%,-50%); opacity:0.05; animation-delay:-14s; }
@keyframes orbFloat { 0%,100%{transform:translate(0,0) scale(1)} 33%{transform:translate(30px,-40px) scale(1.05)} 66%{transform:translate(-20px,30px) scale(0.95)} }

.grain-overlay { position:fixed; top:0; left:0; width:100%; height:100%; z-index:1; pointer-events:none; opacity:0.03;
    background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    background-repeat:repeat; }

/* NAV */
.nav { position:fixed; top:0; left:0; right:0; z-index:1000; padding:16px 40px; transition:all 0.5s var(--transition-smooth); }
.nav.scrolled { background:rgba(5,5,8,0.75); backdrop-filter:blur(var(--glass-blur)); -webkit-backdrop-filter:blur(var(--glass-blur)); border-bottom:1px solid var(--border-glass); }
.nav-inner { max-width:1400px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; }
.nav-logo { display:flex; align-items:center; gap:10px; text-decoration:none; }
.nav-links { display:flex; align-items:center; gap:6px; list-style:none; }
.nav-links a { display:inline-flex; align-items:center; padding:8px 18px; font-size:13px; font-weight:500; letter-spacing:0.5px; text-transform:uppercase; color:var(--text-secondary); text-decoration:none; border-radius:var(--radius-pill); transition:all 0.3s ease; }
.nav-links a:hover { color:var(--text-primary); background:var(--bg-glass); }
.nav-links li a.active { color:var(--text-primary)!important; border-bottom:2px solid var(--accent-teal)!important; border-radius:0!important; padding-bottom:6px!important; }
.nav-cta { background:var(--accent-gradient)!important; color:var(--bg-primary)!important; font-weight:600!important; padding:10px 24px!important; }
.nav-cta:hover { transform:scale(1.02); box-shadow:0 0 30px var(--accent-teal-glow); }
.nav-mobile-toggle { display:none; width:40px; height:40px; border:none; background:transparent; border-radius:var(--radius-sm); cursor:pointer; flex-direction:column; align-items:center; justify-content:center; gap:6px; position:relative; }
.nav-mobile-toggle span { display:block; width:22px; height:1.5px; background:var(--text-primary); border-radius:2px; transition:all 0.35s cubic-bezier(0.4,0,0.2,1); transform-origin:center; }
.nav-mobile-toggle.active span:nth-child(1) { transform:translateY(7.5px) rotate(45deg); }
.nav-mobile-toggle.active span:nth-child(2) { opacity:0; transform:scaleX(0); }
.nav-mobile-toggle.active span:nth-child(3) { transform:translateY(-7.5px) rotate(-45deg); }

/* MOBILE NAV */
.mobile-nav { position:fixed; top:0; left:0; right:0; bottom:0; z-index:999; background:rgba(5,5,8,0.97); backdrop-filter:blur(60px); -webkit-backdrop-filter:blur(60px); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:0; opacity:0; pointer-events:none; transition:opacity 0.4s ease; }
.mobile-nav.open { opacity:1; pointer-events:all; }
.mobile-nav-logo { margin-bottom:48px; opacity:0.5; }
.mobile-nav-logo img { height:36px; }
.mobile-nav a { font-family:var(--font-heading); font-size:20px; font-weight:600; letter-spacing:2px; text-transform:uppercase; color:var(--text-secondary); text-decoration:none; padding:16px 0; transition:all 0.3s ease; opacity:0; transform:translateY(20px); }
.mobile-nav.open a { opacity:1; transform:translateY(0); }
.mobile-nav.open a:nth-child(2) { transition-delay:0.05s; }
.mobile-nav.open a:nth-child(3) { transition-delay:0.1s; }
.mobile-nav.open a:nth-child(4) { transition-delay:0.15s; }
.mobile-nav.open a:nth-child(5) { transition-delay:0.2s; }
.mobile-nav.open a:nth-child(6) { transition-delay:0.25s; }
.mobile-nav a:hover { color:var(--accent-teal); letter-spacing:4px; }
.mobile-nav .mobile-nav-cta { margin-top:40px; padding:14px 40px; background:var(--accent-gradient); border-radius:var(--radius-pill); color:var(--bg-primary); font-size:14px; font-weight:600; letter-spacing:1px; }
.mobile-nav .mobile-nav-cta:hover { letter-spacing:1px; transform:translateY(-2px); box-shadow:0 0 30px var(--accent-teal-glow); }
.mobile-nav-close { display:none; }

/* HERO */
.hero { position:relative; z-index:2; min-height:100vh; display:flex; align-items:center; justify-content:center; padding:120px 40px 80px; overflow:hidden; }
.hero-content { max-width:900px; text-align:center; position:relative; }
.page-hero { position:relative; z-index:2; padding:180px 40px 80px; text-align:center; }
.page-hero-content { max-width:800px; margin:0 auto; }
.hero-badge { display:inline-flex; align-items:center; gap:8px; padding:8px 20px; border-radius:var(--radius-pill); background:var(--bg-glass); border:1px solid var(--border-glass); backdrop-filter:blur(20px); font-size:13px; font-weight:500; color:var(--accent-teal); letter-spacing:1px; text-transform:uppercase; margin-bottom:32px; opacity:0; animation:fadeUp 0.8s var(--transition-smooth) 0.2s forwards; }
.hero-badge::before { content:''; width:6px; height:6px; border-radius:50%; background:var(--accent-teal); box-shadow:0 0 10px var(--accent-teal); animation:pulse 2s ease-in-out infinite; }
@keyframes pulse { 0%,100%{opacity:1} 50%{opacity:0.4} }

h1, .section-title { font-family:var(--font-display); }
.hero h1, .page-hero h1 { font-family:'Inter', sans-serif; font-size:clamp(2.8rem,5vw,3.75rem); font-weight:700; line-height:1; letter-spacing:-2px; margin-bottom:28px; opacity:0; animation:fadeUp 0.8s var(--transition-smooth) 0.4s forwards; }
.gradient-text { background:var(--accent-gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.hero-sub { font-size:clamp(16px,2vw,20px); color:var(--text-secondary); max-width:560px; margin:0 auto 48px; line-height:1.7; font-weight:300; opacity:0; animation:fadeUp 0.8s var(--transition-smooth) 0.6s forwards; }
.hero-actions { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; opacity:0; animation:fadeUp 0.8s var(--transition-smooth) 0.8s forwards; }
@keyframes fadeUp { from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} }

.scroll-indicator { position:absolute; bottom:40px; left:0; right:0; display:flex; flex-direction:column; align-items:center; gap:8px; opacity:0; animation:fadeUp 0.8s var(--transition-smooth) 1.2s forwards; }
.scroll-indicator span { font-size:11px; text-transform:uppercase; letter-spacing:2px; color:var(--text-muted); }
.scroll-line { width:1px; height:40px; background:linear-gradient(to bottom,var(--accent-teal),transparent); animation:scrollPulse 2s ease-in-out infinite; }
@keyframes scrollPulse { 0%,100%{opacity:1;transform:scaleY(1)} 50%{opacity:0.3;transform:scaleY(0.5)} }

/* BUTTONS */
.btn-primary { display:inline-flex; align-items:center; gap:10px; padding:16px 36px; font-family:var(--font-body); font-size:15px; font-weight:600; color:var(--bg-primary); background:var(--accent-gradient); border:none; border-radius:var(--radius-pill); cursor:pointer; text-decoration:none; transition:all 0.4s var(--transition-smooth); position:relative; overflow:hidden; }
.btn-primary::before { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(255,255,255,0.2) 0%,transparent 50%); opacity:0; transition:opacity 0.3s ease; }
.btn-primary:hover { transform:translateY(-2px) scale(1.02); box-shadow:0 10px 40px rgba(0,212,170,0.3); }
.btn-primary:hover::before { opacity:1; }
.btn-glass { display:inline-flex; align-items:center; gap:10px; padding:16px 36px; font-family:var(--font-body); font-size:15px; font-weight:500; color:var(--text-primary); background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:var(--radius-pill); cursor:pointer; text-decoration:none; backdrop-filter:blur(20px); transition:all 0.4s var(--transition-smooth); }
.btn-glass:hover { background:var(--bg-glass-hover); border-color:var(--border-glass-hover); transform:translateY(-2px); box-shadow:0 10px 30px rgba(0,0,0,0.3); }

/* SECTION WITH VIDEO BACKGROUND */
.section-video { position:relative; overflow:hidden; }
.section-video video { position:absolute; top:50%; left:50%; min-width:100%; min-height:100%; transform:translate(-50%,-50%); object-fit:cover; opacity:0.08; z-index:0; }
.section-video .section-inner { position:relative; z-index:1; }

/* SECTIONS */
.section { position:relative; z-index:2; padding:120px 40px; }
.section-inner { max-width:1200px; margin:0 auto; }
.section-label { display:inline-flex; align-items:center; gap:12px; font-size:12px; font-weight:600; letter-spacing:3px; text-transform:uppercase; color:var(--accent-teal); margin-bottom:20px; }
.section-label::before { content:''; width:30px; height:1px; background:var(--accent-teal); }
.section-title { font-size:clamp(2rem,4vw,3rem); font-weight:600; letter-spacing:-1px; line-height:1; margin-bottom:20px; }
.section-subtitle { font-size:18px; color:var(--text-secondary); max-width:600px; font-weight:300; line-height:1.7; }
.section-divider { width:100%; height:1px; background:linear-gradient(90deg,transparent,var(--border-glass),transparent); max-width:1200px; margin:0 auto; }

/* GLASS CARDS */
.glass-card { position:relative; padding:40px 32px; background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:var(--radius-lg); backdrop-filter:blur(var(--glass-blur)); -webkit-backdrop-filter:blur(var(--glass-blur)); overflow:hidden; transition:all 0.5s var(--transition-smooth); }
.glass-card:hover { transform:translateY(-6px); border-color:rgba(0,212,170,0.2); box-shadow:0 20px 60px rgba(0,0,0,0.4); }
.glass-card::after { content:''; position:absolute; top:-50%; left:-50%; width:200%; height:200%; background:radial-gradient(circle at center,var(--accent-teal-glow) 0%,transparent 60%); opacity:0; transition:opacity 0.5s ease; pointer-events:none; }
.glass-card:hover::after { opacity:1; }

/* SERVICE CARDS */
.services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:60px; }
.service-card { position:relative; padding:40px 32px; background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:var(--radius-lg); backdrop-filter:blur(var(--glass-blur)); overflow:hidden; transition:all 0.5s var(--transition-smooth); cursor:pointer; text-decoration:none; display:block; color:inherit; }
.service-card::after { content:''; position:absolute; top:-50%; left:-50%; width:200%; height:200%; background:radial-gradient(circle at center,var(--accent-teal-glow) 0%,transparent 60%); opacity:0; transition:opacity 0.5s ease; pointer-events:none; }
.service-card:hover { transform:translateY(-8px); border-color:rgba(0,212,170,0.2); box-shadow:0 20px 60px rgba(0,0,0,0.4); }
.service-card:hover::after { opacity:1; }
.service-card--featured { grid-column:span 2; grid-row:span 2; padding:48px 40px; }
.service-icon { width:56px; height:56px; display:flex; align-items:center; justify-content:center; border-radius:var(--radius-md); background:var(--accent-gradient-subtle); border:1px solid rgba(0,212,170,0.15); margin-bottom:24px; font-size:24px; position:relative; z-index:1; }
.service-tag { font-size:11px; font-weight:600; letter-spacing:2px; text-transform:uppercase; color:var(--accent-teal); margin-bottom:12px; position:relative; z-index:1; }
.service-card h3 { font-family:var(--font-display); font-size:24px; font-weight:700; margin-bottom:12px; letter-spacing:-0.5px; position:relative; z-index:1; }
.service-card--featured h3 { font-size:32px; }
.service-card p { font-size:14px; color:var(--text-secondary); line-height:1.7; position:relative; z-index:1; }
.service-arrow { display:inline-flex; align-items:center; gap:8px; margin-top:20px; font-size:13px; font-weight:600; color:var(--accent-teal); position:relative; z-index:1; transition:gap 0.3s ease; }
.service-card:hover .service-arrow { gap:14px; }

/* PRICING GRID */
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:60px; }
.pricing-card { position:relative; padding:48px 32px; background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:var(--radius-lg); backdrop-filter:blur(var(--glass-blur)); text-align:center; transition:all 0.5s var(--transition-smooth); }
.pricing-card:hover { transform:translateY(-8px); border-color:rgba(0,212,170,0.2); }
.pricing-card.featured { border-color:rgba(0,212,170,0.3); background:rgba(0,212,170,0.05); }
.pricing-card.featured::before { content:'POPULAIRE'; position:absolute; top:-12px; left:50%; transform:translateX(-50%); padding:4px 16px; font-size:11px; font-weight:600; letter-spacing:1px; color:var(--bg-primary); background:var(--accent-gradient); border-radius:var(--radius-pill); }
.pricing-card h3 { font-family:var(--font-display); font-size:24px; font-weight:700; margin-bottom:8px; }
.pricing-desc { font-size:14px; color:var(--text-secondary); margin-bottom:24px; line-height:1.6; }
.pricing-features { list-style:none; text-align:left; margin-bottom:32px; }
.pricing-features li { padding:10px 0; font-size:14px; color:var(--text-secondary); border-bottom:1px solid var(--border-glass); display:flex; align-items:center; gap:10px; }
.pricing-features li::before { content:'✓'; color:var(--accent-teal); font-weight:700; }

/* FEATURE GRID */
.feature-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; margin-top:60px; }
.feature-card { padding:36px 28px; background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:var(--radius-lg); backdrop-filter:blur(20px); transition:all 0.4s var(--transition-smooth); }
.feature-card:hover { border-color:var(--border-glass-hover); transform:translateY(-4px); }
.feature-card h4 { font-family:var(--font-display); font-size:18px; font-weight:600; margin-bottom:10px; }
.feature-card p { font-size:14px; color:var(--text-secondary); line-height:1.7; }
.feature-icon { font-size:32px; margin-bottom:16px; }

/* STEPS */
.steps-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:60px; }
.step-card { padding:32px 24px; background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:var(--radius-lg); backdrop-filter:blur(20px); text-align:center; transition:all 0.4s ease; position:relative; }
.step-card:hover { border-color:var(--border-glass-hover); transform:translateY(-4px); }
.step-number { font-family:var(--font-display); font-size:48px; font-weight:800; background:var(--accent-gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; opacity:0.4; line-height:1; margin-bottom:12px; }
.step-card h4 { font-family:var(--font-display); font-size:16px; font-weight:600; margin-bottom:8px; }
.step-card p { font-size:13px; color:var(--text-secondary); line-height:1.6; }

/* PLATFORMS ROW */
.platforms-row { display:flex; flex-wrap:wrap; gap:16px; justify-content:center; margin-top:40px; }
.platform-badge { padding:12px 24px; background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:var(--radius-pill); backdrop-filter:blur(20px); font-size:14px; font-weight:500; color:var(--text-secondary); transition:all 0.3s ease; }
.platform-badge:hover { border-color:var(--border-glass-hover); color:var(--text-primary); }

/* PRODUCT HIGHLIGHT */
.product-highlight { background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:var(--radius-xl); backdrop-filter:blur(var(--glass-blur)); padding:60px; display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; margin-top:60px; position:relative; overflow:hidden; }
.product-highlight::before { content:''; position:absolute; top:-100px; right:-100px; width:300px; height:300px; background:var(--accent-teal); border-radius:50%; filter:blur(150px); opacity:0.1; }
.product-info h3 { font-family:var(--font-display); font-size:36px; font-weight:700; letter-spacing:-1px; margin-bottom:16px; }
.product-info p { font-size:15px; color:var(--text-secondary); line-height:1.7; margin-bottom:24px; }

/* PRESTATIONS */
.prestations-list { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:60px; }
.prestation-item { padding:36px 28px; background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:var(--radius-lg); backdrop-filter:blur(20px); transition:all 0.4s var(--transition-smooth); }
.prestation-item:hover { border-color:var(--border-glass-hover); transform:translateY(-4px); }
.prestation-number { font-family:var(--font-display); font-size:48px; font-weight:800; background:var(--accent-gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; opacity:0.3; line-height:1; margin-bottom:16px; }
.prestation-item h4 { font-family:var(--font-display); font-size:18px; font-weight:600; margin-bottom:10px; }
.prestation-item p { font-size:13px; color:var(--text-secondary); line-height:1.7; }

/* ABOUT */
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; margin-top:60px; }
.about-text h3 { font-family:var(--font-display); font-size:28px; font-weight:700; margin-bottom:20px; }
.about-text p { font-size:15px; color:var(--text-secondary); line-height:1.8; margin-bottom:16px; }
.about-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.stat-card { padding:28px 24px; background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:var(--radius-md); backdrop-filter:blur(20px); text-align:center; transition:all 0.4s ease; }
.stat-card:hover { border-color:rgba(0,212,170,0.2); transform:translateY(-4px); }
.stat-number { font-family:var(--font-display); font-size:36px; font-weight:800; background:var(--accent-gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; line-height:1.2; }
.stat-label { font-size:12px; color:var(--text-muted); text-transform:uppercase; letter-spacing:1px; margin-top:4px; }

/* TEAM */
.team-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:20px; margin-top:60px; }
.team-card { padding:32px 24px; background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:var(--radius-lg); backdrop-filter:blur(20px); text-align:center; transition:all 0.4s var(--transition-smooth); }
.team-card:hover { transform:translateY(-6px); border-color:var(--border-glass-hover); }
.team-avatar { width:80px; height:80px; border-radius:50%; background:var(--accent-gradient-subtle); border:2px solid var(--border-glass); margin:0 auto 16px; display:flex; align-items:center; justify-content:center; font-size:32px; }
.team-card h4 { font-family:var(--font-display); font-size:18px; font-weight:600; margin-bottom:4px; }
.team-card .team-role { font-size:12px; color:var(--accent-teal); text-transform:uppercase; letter-spacing:1px; font-weight:500; }
.team-card .team-desc { font-size:13px; color:var(--text-muted); margin-top:8px; }

/* CLIENTS */
.clients-marquee { margin-top:60px; overflow:hidden; position:relative; }
.clients-marquee::before, .clients-marquee::after { content:''; position:absolute; top:0; width:120px; height:100%; z-index:2; }
.clients-marquee::before { left:0; background:linear-gradient(to right,var(--bg-primary),transparent); }
.clients-marquee::after { right:0; background:linear-gradient(to left,var(--bg-primary),transparent); }
.clients-track { display:flex; gap:60px; animation:marquee 30s linear infinite; }
.client-logo { display:flex; align-items:center; justify-content:center; min-width:180px; height:80px; padding:20px 32px; background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:var(--radius-md); backdrop-filter:blur(20px); font-family:var(--font-display); font-size:14px; font-weight:600; color:var(--text-secondary); white-space:nowrap; }
@keyframes marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }

/* CONTACT */
.contact-section { background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:var(--radius-xl); backdrop-filter:blur(var(--glass-blur)); padding:80px 60px; text-align:center; position:relative; overflow:hidden; }
.contact-section::before { content:''; position:absolute; bottom:-150px; left:50%; transform:translateX(-50%); width:400px; height:400px; background:var(--accent-teal); border-radius:50%; filter:blur(150px); opacity:0.08; }
.contact-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:40px; margin-top:48px; text-align:left; }
.contact-item h4 { font-size:12px; text-transform:uppercase; letter-spacing:2px; color:var(--text-muted); margin-bottom:12px; }
.contact-item a, .contact-item p { font-size:15px; color:var(--text-primary); text-decoration:none; line-height:1.7; transition:color 0.3s ease; }
.contact-item a:hover { color:var(--accent-teal); }
.contact-socials { display:flex; gap:12px; margin-top:8px; }
.social-link { width:42px; height:42px; display:flex; align-items:center; justify-content:center; background:var(--bg-glass); border:1px solid var(--border-glass); border-radius:50%; color:var(--text-secondary); text-decoration:none; font-size:16px; transition:all 0.3s ease; }
.social-link:hover { background:var(--accent-teal); color:var(--bg-primary); border-color:var(--accent-teal); transform:translateY(-2px); }

/* CONTACT FORM */
.contact-form { max-width:600px; margin:48px auto 0; text-align:left; }
.form-group { margin-bottom:20px; }
.form-group label { display:block; font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:1px; color:var(--text-muted); margin-bottom:8px; }
.form-group input, .form-group textarea, .form-group select { width:100%; padding:14px 20px; background:rgba(255,255,255,0.04); border:1px solid var(--border-glass); border-radius:var(--radius-md); color:var(--text-primary); font-family:var(--font-body); font-size:15px; transition:all 0.3s ease; outline:none; }
.form-group input:focus, .form-group textarea:focus, .form-group select:focus { border-color:var(--accent-teal); box-shadow:0 0 20px rgba(0,212,170,0.1); }
.form-group textarea { min-height:140px; resize:vertical; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; }

/* FOOTER */
.footer { position:relative; z-index:2; padding:40px; text-align:center; }
.footer-inner { max-width:1200px; margin:0 auto; padding-top:32px; border-top:1px solid var(--border-glass); display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; }
.footer-copy { font-size:13px; color:var(--text-muted); }
.footer-links { display:flex; gap:24px; }
.footer-links a { font-size:13px; color:var(--text-muted); text-decoration:none; transition:color 0.3s ease; }
.footer-links a:hover { color:var(--accent-teal); }

/* REVEAL ANIMATIONS */
.reveal { opacity:0; transform:translateY(40px); transition:all 0.8s var(--transition-smooth); }
.reveal.visible { opacity:1; transform:translateY(0); }
.reveal-delay-1 { transition-delay:0.1s; }
.reveal-delay-2 { transition-delay:0.2s; }
.reveal-delay-3 { transition-delay:0.3s; }
.reveal-delay-4 { transition-delay:0.4s; }
.reveal-delay-5 { transition-delay:0.5s; }

/* RESPONSIVE */
@media(max-width:1024px) {
    .services-grid { grid-template-columns:1fr 1fr; }
    .service-card--featured { grid-column:span 2; grid-row:span 1; }
    .prestations-list, .pricing-grid { grid-template-columns:repeat(2,1fr); }
    .team-grid { grid-template-columns:repeat(3,1fr); }
    .contact-grid { grid-template-columns:repeat(2,1fr); }
    .steps-grid { grid-template-columns:repeat(2,1fr); }
    .feature-grid { grid-template-columns:1fr; }
}
@media(max-width:768px) {
    .nav { padding:10px 16px; }
    .nav.scrolled { padding:8px 16px; }
    .nav-logo img { height:42px!important; transition:height 0.3s ease; }
    .nav.scrolled .nav-logo img { height:36px!important; }
    .nav-links { display:none; }
    .nav-mobile-toggle { display:flex; }
    .hero { padding:100px 20px 80px; text-align:center; }
    .hero-content { text-align:center; }
    .hero-sub { text-align:center; margin-left:auto; margin-right:auto; }
    .hero-actions { justify-content:center; }
    .scroll-indicator { bottom:20px; }
    .page-hero { padding:120px 20px 50px; text-align:center; }
    .page-hero-content { text-align:center; }
    .hero h1, .page-hero h1 { letter-spacing:-1.5px; text-align:center; }
    .hero-badge { margin-left:auto; margin-right:auto; }
    .section { padding:60px 20px; }
    .section-inner { text-align:center; }
    .section-label { text-align:center; justify-content:center; }
    .section-title { text-align:center; }
    .section-subtitle { text-align:center; margin-left:auto; margin-right:auto; }
    .feature-grid { grid-template-columns:1fr; }
    .feature-card { text-align:left; }
    .services-grid, .prestations-list, .pricing-grid { grid-template-columns:1fr; }
    .service-card--featured { grid-column:span 1; }
    .about-grid { grid-template-columns:1fr; gap:40px; text-align:center; }
    .team-grid { grid-template-columns:1fr 1fr; }
    .product-highlight { grid-template-columns:1fr; padding:40px 24px; }
    .contact-section { padding:48px 24px; text-align:center; }
    .contact-section p { margin-left:auto; margin-right:auto; }
    .contact-grid { grid-template-columns:1fr; gap:24px; }
    .footer-inner { flex-direction:column; text-align:center; gap:16px; }
    .steps-grid { grid-template-columns:1fr; }
    .form-row { grid-template-columns:1fr; }
    .platforms-row { justify-content:center; flex-wrap:wrap; }
}
@media(max-width:480px) {
    .hero-actions { flex-direction:column; align-items:stretch; }
    .btn-primary, .btn-glass { justify-content:center; padding:14px 28px; }
    .team-grid { grid-template-columns:1fr; }
}
