:root {
--rose: #E5007E;
--rose-light: #FF2D9B;
--rose-gradient: linear-gradient(135deg, #E5007E, #FF6BB3);
--rose-glow: rgba(229, 0, 126, 0.25);
--rose-pale: #FFF0F7;
--dark: #0F172A;
--dark-light: #1E293B;
--vert: #95C11F;
--vert-pale: #F4FADF;
--violet: #8B5CF6;
--violet-pale: #F5F3FF;
--blue: #3B82F6;
--white: #FFFFFF;
--off-white: #F8FAFC;
--gray-100: #F1F5F9;
--gray-200: #E2E8F0;
--gray-300: #CBD5E1;
--gray-400: #94A3B8;
--gray-500: #64748B;
--gray-600: #475569;
--font-heading: 'Plus Jakarta Sans', sans-serif;
--font-body: 'Inter', sans-serif;
--font-accent: 'Space Grotesk', sans-serif;
--radius-sm: 8px;
--radius-md: 12px;
--radius-lg: 16px;
--radius-xl: 24px;
--radius-full: 9999px;
--shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
--shadow-md: 0 4px 6px -1px rgba(0,0,0,0.07), 0 2px 4px -2px rgba(0,0,0,0.05);
--shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.08), 0 4px 6px -4px rgba(0,0,0,0.04);
--shadow-xl: 0 20px 25px -5px rgba(0,0,0,0.08), 0 8px 10px -6px rgba(0,0,0,0.04);
} *, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior: smooth; }
body { font-family: var(--font-body); color: var(--gray-600); line-height: 1.6; background: var(--white); overflow-x: hidden; }
img { max-width:100%; height:auto; }
a { text-decoration:none; color:inherit; transition: all 0.2s ease; }
.container-2026 { max-width:1200px; margin:0 auto; padding:0 24px; } .header-2026 { position:fixed; top:0; left:0; right:0; z-index:1000; padding:26px 0 0; transition: all 0.3s ease; }
.header-2026.scrolled { background:rgba(255,255,255,0.92); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); border-bottom:1px solid var(--gray-200); box-shadow:var(--shadow-sm); padding:0; }
.header-2026.header-solid { background:rgba(255,255,255,0.92); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); border-bottom:1px solid var(--gray-200); box-shadow:var(--shadow-sm); padding:0; }
.header-inner-2026 { display:grid; grid-template-columns:260px minmax(0,1fr); align-items:center; max-width:1440px; margin:0 auto; padding:0 56px; gap:28px; min-height:72px; }
.logo { display:flex; align-items:center; justify-content:flex-start; width:260px; overflow:visible; }
.logo-img-2026 { height:148px; transition: all 0.3s ease; }
.header-2026:not(.scrolled):not(.header-solid) .logo { margin-left:8px; }
.header-2026:not(.scrolled):not(.header-solid) .nav-cta-2026 { margin-right:8px; }
.header-2026.scrolled .logo-img-2026,
.header-2026.header-solid .logo-img-2026 { height:120px; } .nav-2026 { display:flex; align-items:center; justify-content:space-between; min-width:0; gap:24px; padding-left:12px; }
.nav-links-2026 { display:flex; list-style:none; gap:12px; flex-wrap:nowrap; margin:0; padding:0 8px 0 0; justify-content:flex-start; flex:1; min-width:0; }
.nav-links-2026 > li { position:relative; white-space:nowrap; }
.nav-links-2026 > li > a { font-family:var(--font-body); font-size:14px; font-weight:500; color:var(--gray-600); position:relative; padding:8px 0; display:flex; align-items:center; gap:4px; white-space:nowrap; }
.nav-links-2026 > li > a:hover { color:var(--dark); }
.nav-links-2026 > li > a::after { content:''; position:absolute; bottom:0; left:0; width:0; height:2px; background:var(--rose-gradient); border-radius:2px; transition:width 0.3s ease; }
.nav-links-2026 > li > a:hover::after { width:100%; }
.nav-links-2026 > li > a.active { color:var(--rose); }
.nav-links-2026 > li > a.active::after { width:100%; }
.nav-links-2026 > li > a .nav-arrow { font-size:10px; transition:transform 0.2s ease; }
.nav-links-2026 > li:hover > a .nav-arrow { transform:rotate(180deg); } .dropdown-2026 { position:absolute; top:100%; left:-12px; min-width:260px; background:var(--white); border:1px solid var(--gray-200); border-radius:var(--radius-md); box-shadow:var(--shadow-lg); padding:8px 0; list-style:none; opacity:0; visibility:hidden; transform:translateY(8px); transition:all 0.2s ease; z-index:100; }
.nav-links-2026 > li:hover .dropdown-2026 { opacity:1; visibility:visible; transform:translateY(0); }
.dropdown-2026 li a { display:block; padding:10px 20px; font-size:14px; font-weight:500; color:var(--gray-600); transition:all 0.15s ease; }
.dropdown-2026 li a:hover { background:var(--rose-pale); color:var(--rose); padding-left:24px; } .nav-links-2026 .menu-item-has-children > a .nav-arrow { display:inline; }
.nav-links-2026 .sub-menu { position:absolute; top:100%; left:-12px; min-width:260px; background:var(--white); border:1px solid var(--gray-200); border-radius:var(--radius-md); box-shadow:var(--shadow-lg); padding:8px 0; list-style:none; opacity:0; visibility:hidden; transform:translateY(8px); transition:all 0.2s ease; z-index:100; }
.nav-links-2026 > li:hover > .sub-menu { opacity:1; visibility:visible; transform:translateY(0); }
.nav-links-2026 .sub-menu li a { display:block; padding:10px 20px; font-size:14px; font-weight:500; color:var(--gray-600); transition:all 0.15s ease; }
.nav-links-2026 .sub-menu li a:hover { background:var(--rose-pale); color:var(--rose); padding-left:24px; } .nav-cta-2026 { display:flex; gap:12px; flex-shrink:0; margin-left:auto; justify-content:flex-end; padding-left:18px; }
.nav-cta-2026 .btn-2026 { padding:12px 20px; } .btn-2026 { display:inline-flex; align-items:center; gap:8px; font-family:var(--font-heading); font-weight:600; font-size:14px; padding:12px 24px; border-radius:var(--radius-full); border:none; cursor:pointer; transition:all 0.3s ease; white-space:nowrap; }
.btn-primary-2026 { background:var(--rose-gradient); color:var(--white); box-shadow:0 4px 15px var(--rose-glow); }
.btn-primary-2026:hover { transform:translateY(-2px); box-shadow:0 8px 25px var(--rose-glow); color:var(--white); }
.btn-green-2026 { background:linear-gradient(135deg, #95C11F, #afd63a); color:var(--white); box-shadow:0 4px 15px rgba(149,193,31,0.3); }
.btn-green-2026:hover { transform:translateY(-2px); box-shadow:0 8px 25px rgba(149,193,31,0.4); color:var(--white); }
.btn-secondary-2026 { background:var(--white); color:var(--dark); border:1.5px solid var(--gray-200); }
.btn-secondary-2026:hover { border-color:var(--rose); color:var(--rose); background:var(--rose-pale); }
.btn-white-2026 { background:var(--white); color:var(--rose); font-weight:700; }
.btn-white-2026:hover { transform:translateY(-2px); box-shadow:0 8px 25px rgba(255,255,255,0.3); color:var(--rose); }
.btn-outline-white-2026 { background:transparent; color:var(--white); border:1.5px solid rgba(255,255,255,0.4); }
.btn-outline-white-2026:hover { background:rgba(255,255,255,0.1); border-color:var(--white); color:var(--white); }
.btn-lg-2026 { padding:16px 32px; font-size:16px; }
.btn-arrow-2026 { transition:transform 0.2s ease; }
.btn-2026:hover .btn-arrow-2026 { transform:translateX(3px); } .menu-toggle-2026 { display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none; padding:8px; }
.menu-toggle-2026 span { width:24px; height:2px; background:var(--dark); border-radius:2px; transition:all 0.3s ease; } .hero-2026 { padding-top:240px; padding-bottom:80px; background:var(--off-white); position:relative; overflow:hidden; }
.hero-2026::before { content:''; position:absolute; top:-200px; right:-200px; width:600px; height:600px; background:radial-gradient(circle, rgba(229,0,126,0.06) 0%, transparent 70%); border-radius:50%; }
.hero-grid-2026 { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.hero-badge-2026 { display:inline-flex; align-items:center; gap:8px; background:var(--rose-pale); color:var(--rose); font-family:var(--font-heading); font-weight:600; font-size:14px; padding:8px 16px; border-radius:var(--radius-full); margin-bottom:24px; }
.hero-badge-dot { width:6px; height:6px; background:var(--rose); border-radius:50%; animation:pulse-2026 2s infinite; }
@keyframes pulse-2026 { 0%,100%{opacity:1;} 50%{opacity:0.4;} }
.hero-2026 h1 { font-family:var(--font-heading); font-size:56px; font-weight:800; line-height:1.1; color:var(--dark); letter-spacing:-1.5px; margin-bottom:24px; }
.hero-2026 h1 .highlight,
.highlight { background:var(--rose-gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.hero-subtitle-2026 { font-size:17px; color:var(--gray-500); line-height:1.8; margin-bottom:32px; max-width:500px; }
.hero-subtitle-2026 strong { color:var(--dark); font-weight:600; }
.hero-buttons-2026 { display:flex; gap:12px; margin-bottom:64px; flex-wrap:wrap; }
.hero-visual-2026 { position:relative; }
.hero-illustration-2026 { width:100%; border-radius:var(--radius-xl); box-shadow:var(--shadow-xl); overflow:hidden; position:relative; border:1px solid var(--gray-200); }
.hero-illustration-2026 img { width:100%; height:100%; object-fit:cover; display:block; aspect-ratio:4/3; }
.float-card-2026 { position:absolute; background:var(--white); border-radius:var(--radius-md); padding:12px 18px; box-shadow:var(--shadow-lg); display:flex; align-items:center; gap:10px; font-size:13px; font-weight:600; color:var(--dark); z-index:3; border:1px solid var(--gray-100); animation:float-2026 3s ease-in-out infinite; }
.float-card-2026:nth-child(2) { animation-delay:-1s; }
.float-card-2026:nth-child(3) { animation-delay:-2s; }
@keyframes float-2026 { 0%,100%{transform:translateY(0);} 50%{transform:translateY(-8px);} }
.fc-icon-2026 { width:32px; height:32px; border-radius:var(--radius-sm); display:flex; align-items:center; justify-content:center; font-size:14px; }
.fc-icon-2026.rose { background:var(--rose-pale); color:var(--rose); }
.fc-icon-2026.green { background:var(--vert-pale); color:var(--vert); }
.fc-icon-2026.violet { background:var(--violet-pale); color:var(--violet); }
.fc-top-2026 { top:8%; right:-25px; }
.fc-mid-2026 { top:45%; left:-35px; }
.fc-bot-2026 { bottom:12%; right:-15px; } .clients-bar-2026 { display:flex; align-items:center; gap:32px; }
.clients-bar-label-2026 { font-size:13px; color:var(--gray-400); font-weight:500; white-space:nowrap; }
.clients-logos-2026 { display:flex; gap:24px; align-items:center; flex-wrap:wrap; }
.clients-logos-2026 img { width:100px; height:40px; opacity:0.85; transition:all 0.3s ease; object-fit:contain; mix-blend-mode:multiply; }
.clients-logos-2026 img:hover { opacity:1; }
.clients-logos-2026 img:hover { transform:scale(1.1); } .hero-page-2026 { padding-top:130px; padding-bottom:64px; background:var(--dark); position:relative; overflow:hidden; }
.hero-page-2026::before { content:''; position:absolute; top:-150px; right:-150px; width:500px; height:500px; background:radial-gradient(circle, rgba(229,0,126,0.12) 0%, transparent 70%); border-radius:50%; }
.hero-page-2026::after { content:''; position:absolute; bottom:-100px; left:-100px; width:400px; height:400px; background:radial-gradient(circle, rgba(139,92,246,0.08) 0%, transparent 70%); border-radius:50%; }
.hero-page-2026 .container-2026 { position:relative; z-index:2; }
.breadcrumb-2026 { display:flex; align-items:center; gap:8px; font-size:14px; color:var(--gray-400); margin-bottom:24px; }
.breadcrumb-2026 a { color:var(--gray-400); }
.breadcrumb-2026 a:hover { color:var(--white); }
.breadcrumb-2026 .sep { color:var(--gray-500); }
.breadcrumb-2026 .current { color:var(--rose-light); }
.hero-page-2026 h1 { font-family:var(--font-heading); font-size:44px; font-weight:800; color:var(--white); letter-spacing:-1px; line-height:1.2; max-width:700px; }
.hero-page-2026 p.hero-desc { font-size:17px; color:var(--gray-400); margin-top:16px; max-width:600px; line-height:1.7; } .rse-hero-2026 { padding-bottom:96px; } .stats-2026 { background:var(--dark); padding:96px 0; position:relative; overflow:hidden; }
.stats-2026::before { content:''; position:absolute; inset:0; background:radial-gradient(circle at 20% 50%, rgba(229,0,126,0.08) 0%, transparent 50%), radial-gradient(circle at 80% 50%, rgba(139,92,246,0.06) 0%, transparent 50%); }
.stats-grid-2026 { display:grid; grid-template-columns:repeat(5,1fr); gap:20px; position:relative; z-index:2; }
.stats-grid-4-2026 { grid-template-columns:repeat(4,1fr); }
.stat-card-2026 { text-align:center; padding:28px 12px; background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.08); border-radius:var(--radius-lg); backdrop-filter:blur(10px); transition:all 0.3s ease; }
.stat-card-2026:hover { background:rgba(255,255,255,0.08); transform:translateY(-4px); }
.stat-number-2026 { font-family:var(--font-accent); font-size:42px; font-weight:700; color:var(--white); line-height:1; margin-bottom:4px; }
.stat-suffix { font-size:28px; opacity:0.7; }
strong.brand-logisseo { color:var(--rose) !important; font-weight:700; }
.stat-bar-2026 { width:40px; height:3px; border-radius:3px; margin:12px auto; }
.stat-bar-2026.rose { background:var(--rose-gradient); }
.stat-bar-2026.vert { background:var(--vert); }
.stat-bar-2026.violet { background:var(--violet); }
.stat-bar-2026.blue { background:var(--blue); }
.stat-bar-2026.orange { background:linear-gradient(135deg, #F59E0B, #FBBF24); }
.stat-label-2026 { font-size:14px; color:var(--gray-400); font-weight:500; line-height:1.4; } .section-header-2026 { text-align:center; margin-bottom:64px; }
.section-tag-2026 { display:inline-flex; align-items:center; gap:6px; font-family:var(--font-heading); font-size:13px; font-weight:600; text-transform:uppercase; letter-spacing:1.5px; color:var(--rose); margin-bottom:12px; }
.section-tag-line-2026 { width:20px; height:2px; background:var(--rose-gradient); border-radius:2px; }
.section-title-2026 { font-family:var(--font-heading); font-size:42px; font-weight:800; color:var(--dark); letter-spacing:-1px; margin-bottom:12px; line-height:1.2; }
.section-subtitle-2026 { font-size:17px; color:var(--gray-500); max-width:560px; margin:0 auto; line-height:1.7; } .services-2026 { padding:96px 0; background:var(--off-white); }
.services-grid-2026 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.service-card-2026 { background:var(--white); border:1px solid var(--gray-200); border-radius:var(--radius-lg); padding:32px; transition:all 0.3s ease; position:relative; overflow:hidden; }
.service-card-2026::before { content:''; position:absolute; top:0; left:0; width:3px; height:0; background:var(--rose-gradient); transition:height 0.3s ease; border-radius:0 3px 3px 0; }
.service-card-2026:hover { border-color:rgba(229,0,126,0.15); box-shadow:var(--shadow-lg); transform:translateY(-4px); }
.service-card-2026:hover::before { height:100%; }
.service-icon-2026 { width:48px; height:48px; border-radius:var(--radius-md); display:flex; align-items:center; justify-content:center; font-size:20px; margin-bottom:20px; }
.service-icon-2026.rose { background:var(--rose-pale); color:var(--rose); }
.service-icon-2026.green { background:var(--vert-pale); color:var(--vert); }
.service-icon-2026.violet { background:var(--violet-pale); color:var(--violet); }
.service-icon-2026.blue { background:rgba(59,130,246,0.1); color:var(--blue); }
.service-card-2026 h3 { font-family:var(--font-heading); font-size:18px; font-weight:700; color:var(--dark); margin-bottom:8px; }
.service-card-2026 p { font-size:14px; color:var(--gray-500); line-height:1.6; margin-bottom:16px; }
.service-link-2026 { font-family:var(--font-heading); font-size:14px; font-weight:600; color:var(--rose); display:inline-flex; align-items:center; gap:6px; }
.service-link-2026:hover { gap:10px; color:var(--rose); } .process-2026 { padding:96px 0; background:var(--white); position:relative; }
.process-2026::before { content:''; position:absolute; inset:0; background:linear-gradient(180deg, var(--white) 0%, var(--rose-pale) 50%, var(--white) 100%); opacity:0.3; }
.process-steps-2026 { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; position:relative; z-index:2; }
.process-steps-2026::before { content:''; position:absolute; top:40px; left:calc(12.5% + 24px); right:calc(12.5% + 24px); height:2px; background:var(--gray-200); }
.step-2026 { text-align:center; position:relative; z-index:2; }
.step-number-2026 { width:80px; height:80px; border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 20px; font-family:var(--font-accent); font-size:28px; font-weight:700; color:var(--white); transition:all 0.3s ease; }
.step-2026:nth-child(1) .step-number-2026 { background:var(--rose-gradient); box-shadow:0 8px 25px var(--rose-glow); }
.step-2026:nth-child(2) .step-number-2026 { background:linear-gradient(135deg, var(--vert), #34D399); box-shadow:0 8px 25px rgba(16,185,129,0.3); }
.step-2026:nth-child(3) .step-number-2026 { background:linear-gradient(135deg, var(--violet), #A78BFA); box-shadow:0 8px 25px rgba(139,92,246,0.3); }
.step-2026:nth-child(4) .step-number-2026 { background:linear-gradient(135deg, var(--blue), #60A5FA); box-shadow:0 8px 25px rgba(59,130,246,0.3); }
.step-2026:hover .step-number-2026 { transform:scale(1.1); }
.step-2026 h3 { font-family:var(--font-heading); font-size:18px; font-weight:700; color:var(--dark); margin-bottom:8px; }
.step-2026 p { font-size:14px; color:var(--gray-500); line-height:1.6; max-width:220px; margin:0 auto; } .connectors-2026 { padding:96px 0; background:var(--dark); overflow:hidden; position:relative; }
.connectors-2026::before { content:''; position:absolute; inset:0; background:radial-gradient(circle at 50% 50%, rgba(229,0,126,0.06) 0%, transparent 60%); }
.connectors-2026 .section-title-2026 { color:var(--white); }
.connectors-2026 .section-subtitle-2026 { color:var(--gray-400); }
.connector-grid-2026 { display:flex; flex-wrap:wrap; justify-content:center; gap:24px; position:relative; z-index:2; max-width:1050px; margin:0 auto; }
.connector-item-2026 { background:rgba(255,255,255,0.95); border:1px solid rgba(255,255,255,0.3); border-radius:var(--radius-md); padding:28px 40px; display:flex; align-items:center; justify-content:center; min-width:190px; height:100px; transition:all 0.3s ease; }
.connector-item-2026:hover { background:var(--white); border-color:rgba(229,0,126,0.3); box-shadow:0 0 30px rgba(229,0,126,0.15); transform:translateY(-3px); }
.connector-item-2026 img { max-height:56px; max-width:170px; object-fit:contain; }
.connectors-more-2026 { text-align:center; margin-top:40px; position:relative; z-index:2; }
.connectors-more-2026 p { font-size:15px; color:var(--gray-400); margin-bottom:20px; }
.connectors-more-2026 strong { color:var(--rose-light); } .donut-2026 { padding:96px 0; background:var(--dark); overflow:hidden; position:relative; }
.donut-2026::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at 30% 50%, rgba(229,0,126,0.08) 0%, transparent 60%); }
.donut-2026 .detail-grid-2026, .donut-2026 .services-grid-2026, .donut-2026 .section-header-2026 { position:relative; z-index:2; }
.donut-2026 .section-title-2026 { color:var(--white); }
.donut-2026 .section-subtitle-2026 { color:var(--gray-400); }
.donut-2026 .service-card-2026 { background:rgba(255,255,255,0.04); border-color:rgba(255,255,255,0.08); }
.donut-2026 .service-card-2026:hover { border-color:rgba(229,0,126,0.3); box-shadow:0 0 30px rgba(229,0,126,0.1); }
.donut-2026 .service-card-2026 h3 { color:var(--white); }
.donut-2026 .service-card-2026 p { color:var(--gray-400); }
.donut-2026 .detail-image-2026 { border:2px solid rgba(229,0,126,0.3); box-shadow:0 0 40px rgba(229,0,126,0.15); border-radius:var(--radius-xl); overflow:hidden; cursor:pointer; transition:transform 0.3s ease; }
.donut-2026 .detail-image-2026:hover { transform:scale(1.02); }
.donut-2026 .detail-image-2026 img { width:100%; height:auto; object-fit:contain; }
.donut-2026 .detail-grid-2026 { grid-template-columns:1.3fr 1fr; align-items:start; }
.donut-2026 .donut-grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; position:relative; z-index:2; } .donut-lightbox { display:none; position:fixed; inset:0; background:rgba(0,0,0,0.9); z-index:9999; align-items:center; justify-content:center; cursor:pointer; }
.donut-lightbox.active { display:flex; }
.donut-lightbox img { max-width:92vw; max-height:92vh; object-fit:contain; border-radius:var(--radius-lg); box-shadow:0 0 60px rgba(229,0,126,0.3); }
.donut-lightbox-close { position:absolute; top:24px; right:32px; color:var(--white); font-size:36px; cursor:pointer; opacity:0.7; transition:opacity 0.2s; }
.donut-lightbox-close:hover { opacity:1; } .about-2026 { padding:96px 0; background:var(--off-white); }
.about-grid-2026 { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.about-images-2026 { display:grid; grid-template-columns:1fr 1fr; gap:12px; border-radius:var(--radius-xl); overflow:hidden; }
.about-images-2026 img { width:100%; height:220px; object-fit:cover; transition:transform 0.4s ease; }
.about-images-2026 img:hover { transform:scale(1.05); }
.about-stats-2026 { display:flex; gap:32px; margin-bottom:32px; }
.about-stat-val-2026 { font-family:var(--font-accent); font-size:32px; font-weight:700; }
.about-stat-label-2026 { font-size:13px; color:var(--gray-400); }
.about-stat-sep-2026 { width:1px; background:var(--gray-200); }
.about-text-2026 p { color:var(--gray-500); line-height:1.8; margin-bottom:16px; font-size:15px; }
.about-text-2026 p strong { color:var(--dark); }
.about-text-2026 .rose-text { color:var(--rose); font-weight:600; } .testimonials-2026 { padding:96px 0; background:var(--white); }
.testimonial-card-2026 { max-width:800px; margin:0 auto; text-align:center; }
.testimonial-stars-2026 { display:flex; gap:4px; justify-content:center; margin-bottom:28px; }
.star-2026 { color:#FBBF24; font-size:20px; }
.testimonial-quote-2026 { font-family:var(--font-heading); font-size:26px; font-weight:600; color:var(--dark); line-height:1.5; margin-bottom:32px; position:relative; }
.testimonial-quote-2026::before { content:'\201C'; font-size:80px; color:var(--rose); opacity:0.15; position:absolute; top:-30px; left:50%; transform:translateX(-50%); font-family:Georgia,serif; line-height:1; }
.testimonial-author-2026 { display:flex; align-items:center; justify-content:center; gap:16px; }
.testimonial-avatar-2026 { width:48px; height:48px; border-radius:50%; overflow:hidden; display:flex; align-items:center; justify-content:center; background:var(--rose-pale); }
.testimonial-avatar-2026 i { color:var(--rose); font-size:18px; }
.testimonial-avatar-2026 img { width:100%; height:100%; object-fit:cover; }
.testimonial-name-2026 { font-family:var(--font-heading); font-weight:700; color:var(--dark); font-size:15px; }
.testimonial-role-2026 { font-size:13px; color:var(--gray-400); }
.testimonial-dots-2026 { display:flex; gap:8px; justify-content:center; margin-top:40px; }
.dot-2026 { width:8px; height:8px; border-radius:50%; background:var(--gray-300); transition:all 0.3s ease; cursor:pointer; }
.dot-2026.active { width:24px; border-radius:4px; background:var(--rose-gradient); } .blog-2026 { padding:96px 0; background:var(--white); }
.blog-header-2026 { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:48px; }
.blog-header-2026 .section-header-2026 { text-align:left; margin-bottom:0; }
.blog-grid-2026 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.blog-card-2026 { background:var(--white); border-radius:var(--radius-lg); overflow:hidden; border:1px solid var(--gray-200); transition:all 0.3s ease; }
.blog-card-2026:hover { box-shadow:var(--shadow-lg); transform:translateY(-4px); }
.blog-card-image-2026 { aspect-ratio:16/9; overflow:hidden; }
.blog-card-image-2026 img { width:100%; height:100%; object-fit:cover; transition:transform 0.4s ease; }
.blog-card-2026:hover .blog-card-image-2026 img { transform:scale(1.05); }
.blog-card-body-2026 { padding:24px; }
.blog-tag-2026 { display:inline-block; font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:0.5px; padding:4px 10px; border-radius:var(--radius-full); margin-bottom:8px; }
.blog-tag-2026.rose { background:var(--rose-pale); color:var(--rose); }
.blog-tag-2026.green { background:var(--vert-pale); color:var(--vert); }
.blog-tag-2026.violet { background:var(--violet-pale); color:var(--violet); }
.blog-card-2026 h3 { font-family:var(--font-heading); font-size:17px; font-weight:700; color:var(--dark); margin-bottom:8px; line-height:1.4; }
.blog-card-meta-2026 { font-size:13px; color:var(--gray-400); display:flex; align-items:center; gap:8px; } .cta-section-2026 { padding:96px 0; background:var(--rose-gradient); position:relative; overflow:hidden; }
.cta-section-2026::before { content:''; position:absolute; top:-100px; right:-100px; width:400px; height:400px; background:rgba(255,255,255,0.08); border-radius:50%; }
.cta-section-2026::after { content:''; position:absolute; bottom:-150px; left:-50px; width:300px; height:300px; background:rgba(255,255,255,0.05); border-radius:50%; }
.cta-grid-2026 { display:grid; grid-template-columns:1fr auto; gap:48px; align-items:center; position:relative; z-index:2; }
.cta-content-2026 h2 { font-family:var(--font-heading); font-size:42px; font-weight:800; color:var(--white); letter-spacing:-1px; margin-bottom:12px; line-height:1.2; }
.cta-content-2026 p { font-size:17px; color:rgba(255,255,255,0.8); margin-bottom:32px; max-width:500px; }
.cta-buttons-2026 { display:flex; gap:12px; flex-wrap:wrap; }
.cta-florence-2026 { text-align:center; }
.cta-florence-2026 img { width:130px; height:130px; border-radius:50%; object-fit:cover; border:4px solid rgba(255,255,255,0.3); margin-bottom:12px; }
.cta-florence-name-2026 { color:var(--white); font-family:var(--font-heading); font-weight:700; font-size:15px; }
.cta-florence-role-2026 { color:rgba(255,255,255,0.7); font-size:13px; } .cta-content-centered-2026 { text-align:center; position:relative; z-index:2; }
.cta-content-centered-2026 h2 { font-family:var(--font-heading); font-size:40px; font-weight:800; color:var(--white); letter-spacing:-1px; margin-bottom:12px; }
.cta-content-centered-2026 p { font-size:17px; color:rgba(255,255,255,0.8); margin-bottom:32px; max-width:500px; margin-left:auto; margin-right:auto; }
.cta-content-centered-2026 .cta-buttons-2026 { justify-content:center; } .footer-2026 { background:var(--dark); padding:80px 0 0; }
.footer-grid-2026 { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:48px; padding-bottom:56px; }
.footer-logo-2026 { height:100px; margin-bottom:16px; }
.footer-brand-2026 p { color:var(--gray-400); font-size:14px; line-height:1.7; margin-bottom:20px; max-width:280px; }
.footer-social-2026 { display:flex; gap:8px; }
.social-icon-2026 { width:40px; height:40px; border-radius:var(--radius-sm); background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.08); display:flex; align-items:center; justify-content:center; color:var(--gray-400); font-size:16px; transition:all 0.3s ease; }
.social-icon-2026:hover { background:var(--rose); border-color:var(--rose); color:var(--white); }
.footer-column-2026 h4 { font-family:var(--font-heading); font-size:14px; font-weight:700; color:var(--white); text-transform:uppercase; letter-spacing:1px; margin-bottom:20px; }
.footer-links-2026 { list-style:none; display:flex; flex-direction:column; gap:8px; }
.footer-links-2026 a { color:var(--gray-400); font-size:14px; padding:4px 0; }
.footer-links-2026 a:hover { color:var(--white); padding-left:4px; }
.footer-contact-item-2026 { color:var(--gray-400); font-size:14px; display:flex; align-items:flex-start; gap:10px; margin-bottom:12px; }
.footer-contact-item-2026 i { color:var(--rose); width:16px; margin-top:3px; font-size:13px; }
.footer-certs-2026 { display:flex; align-items:center; gap:24px; padding:24px 0; border-top:1px solid rgba(255,255,255,0.06); border-bottom:1px solid rgba(255,255,255,0.06); }
.footer-certs-2026 span { font-size:13px; color:var(--gray-500); font-weight:500; }
.footer-certs-2026 img { height:45px; opacity:0.6; transition:opacity 0.3s; }
.footer-certs-2026 img:hover { opacity:1; }
.footer-bottom-2026 { padding:20px 0; display:flex; justify-content:space-between; align-items:center; }
.footer-bottom-2026 p { color:var(--gray-500); font-size:13px; }
.footer-bottom-links-2026 { display:flex; gap:24px; }
.footer-bottom-links-2026 a { color:var(--gray-500); font-size:13px; }
.footer-bottom-links-2026 a:hover { color:var(--white); } .footer-links-2026 .menu { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:8px; }
.footer-links-2026 .menu li a { color:var(--gray-400); font-size:14px; padding:4px 0; display:block; }
.footer-links-2026 .menu li a:hover { color:var(--white); padding-left:4px; } .values-2026 { padding:96px 0; background:var(--white); }
.values-grid-2026 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.value-card-2026 { background:var(--white); border:1px solid var(--gray-200); border-radius:var(--radius-lg); padding:32px; transition:all 0.3s ease; position:relative; overflow:hidden; text-align:center; }
.value-card-2026::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--rose-gradient); transform:scaleX(0); transition:transform 0.3s ease; }
.value-card-2026:hover { border-color:rgba(229,0,126,0.15); box-shadow:var(--shadow-lg); transform:translateY(-4px); }
.value-card-2026:hover::before { transform:scaleX(1); }
.value-icon-2026 { width:64px; height:64px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:24px; margin:0 auto 20px; }
.value-icon-2026.rose { background:var(--rose-pale); color:var(--rose); }
.value-icon-2026.green { background:var(--vert-pale); color:var(--vert); }
.value-icon-2026.violet { background:var(--violet-pale); color:var(--violet); }
.value-icon-2026.blue { background:rgba(59,130,246,0.1); color:var(--blue); }
.value-card-2026 h3 { font-family:var(--font-heading); font-size:18px; font-weight:700; color:var(--dark); margin-bottom:8px; }
.value-card-2026 p { font-size:14px; color:var(--gray-500); line-height:1.6; } .team-2026 { padding:96px 0; background:var(--off-white); } .dept-grid-2026 { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin-bottom:64px; }
.dept-card-2026 { background:var(--white); border-radius:var(--radius-lg); padding:28px; border:1px solid var(--gray-200); transition:all 0.3s ease; }
.dept-card-2026:hover { box-shadow:var(--shadow-lg); transform:translateY(-4px); }
.dept-card-icon-2026 { width:48px; height:48px; border-radius:var(--radius-md); display:flex; align-items:center; justify-content:center; font-size:20px; margin-bottom:16px; }
.dept-card-icon-2026.rose { background:rgba(229,0,126,0.1); color:var(--rose); }
.dept-card-icon-2026.blue { background:rgba(59,130,246,0.1); color:#3b82f6; }
.dept-card-icon-2026.green { background:rgba(16,185,129,0.1); color:#10b981; }
.dept-card-icon-2026.violet { background:rgba(139,92,246,0.1); color:#8b5cf6; }
.dept-card-2026 h3 { font-family:var(--font-heading); font-size:18px; font-weight:700; color:var(--dark); margin-bottom:8px; }
.dept-card-desc-2026 { font-size:13px; color:var(--gray-500); line-height:1.6; margin-bottom:16px; }
.dept-card-members-2026 { list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:6px; }
.dept-card-members-2026 li { font-size:12px; font-weight:600; color:var(--dark); background:var(--off-white); padding:4px 12px; border-radius:20px; } .team-subtitle-2026 { font-family:var(--font-heading); font-size:22px; font-weight:800; color:var(--dark); text-align:center; margin-bottom:40px; } .team-grid-2026 { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.team-card-2026 { background:var(--white); border-radius:var(--radius-lg); overflow:hidden; border:1px solid var(--gray-200); transition:all 0.3s ease; text-align:center; }
.team-card-2026:hover { box-shadow:var(--shadow-lg); transform:translateY(-4px); }
.team-card-image-2026 { aspect-ratio:1; overflow:hidden; }
.team-card-image-2026 img { width:100%; height:100%; object-fit:cover; transition:transform 0.4s ease; }
.team-card-2026:hover .team-card-image-2026 img { transform:scale(1.05); }
.team-card-body-2026 { padding:20px; }
.team-card-2026 h3 { font-family:var(--font-heading); font-size:16px; font-weight:700; color:var(--dark); margin-bottom:4px; }
.team-card-2026 p { font-size:13px; color:var(--gray-400); } .team-card-extended-2026 { text-align:left; }
.team-card-extended-2026 .team-card-body-2026 { padding:20px 24px 24px; }
.team-card-role-2026 { font-size:13px; color:var(--rose); font-weight:600; margin-bottom:10px; }
.team-card-desc-2026 { font-size:13px; color:var(--gray-500); line-height:1.6; margin-bottom:10px; }
.team-card-funfact-2026 { font-size:12px; color:var(--gray-400); font-style:italic; }
.team-card-funfact-2026 i { color:var(--rose); margin-right:4px; font-size:10px; } .timeline-section-2026 { padding:96px 0; background:var(--white); }
.timeline-2026 { position:relative; max-width:800px; margin:0 auto; }
.timeline-2026::before { content:''; position:absolute; left:50%; top:0; bottom:0; width:2px; background:var(--gray-200); transform:translateX(-50%); }
.timeline-item-2026 { display:flex; align-items:flex-start; margin-bottom:48px; position:relative; }
.timeline-item-2026:nth-child(odd) { flex-direction:row; }
.timeline-item-2026:nth-child(even) { flex-direction:row-reverse; }
.timeline-content-2026 { width:calc(50% - 40px); background:var(--white); border:1px solid var(--gray-200); border-radius:var(--radius-lg); padding:24px; transition:all 0.3s ease; }
.timeline-content-2026:hover { box-shadow:var(--shadow-lg); border-color:rgba(229,0,126,0.15); }
.timeline-dot-2026 { position:absolute; left:50%; top:24px; width:16px; height:16px; background:var(--rose-gradient); border-radius:50%; transform:translateX(-50%); border:3px solid var(--white); box-shadow:0 0 0 3px rgba(229,0,126,0.2); z-index:2; }
.timeline-year-2026 { font-family:var(--font-accent); font-size:24px; font-weight:700; color:var(--rose); margin-bottom:4px; }
.timeline-content-2026 h3 { font-family:var(--font-heading); font-size:16px; font-weight:700; color:var(--dark); margin-bottom:6px; }
.timeline-content-2026 p { font-size:14px; color:var(--gray-500); line-height:1.6; } .certifications-2026 { padding:80px 0; background:var(--off-white); }
.certs-grid-2026 { display:flex; justify-content:center; align-items:center; gap:48px; flex-wrap:wrap; }
.cert-item-2026 { display:flex; flex-direction:column; align-items:center; gap:12px; text-align:center; }
.cert-item-2026 img { height:80px; object-fit:contain; transition:transform 0.3s ease; }
.cert-item-2026 img:hover { transform:scale(1.1); }
.cert-item-2026 span { font-size:13px; color:var(--gray-500); font-weight:500; max-width:140px; } .partners-2026 { padding:96px 0; background:var(--off-white); }
.partners-intro-2026 { text-align:center; max-width:700px; margin:0 auto 64px; }
.partners-intro-2026 p { font-size:16px; color:var(--gray-500); line-height:1.7; }
.partners-category-2026 { margin-bottom:64px; }
.partners-category-2026 h3 { font-family:var(--font-heading); font-size:24px; font-weight:700; color:var(--dark); margin-bottom:8px; text-align:center; }
.partners-category-2026 > p { font-size:15px; color:var(--gray-500); text-align:center; margin-bottom:32px; }
.partners-logos-2026 { display:grid; grid-template-columns:repeat(4, 1fr); gap:24px; }
.partner-logo-2026 { background:var(--white); border:1px solid var(--gray-200); border-radius:var(--radius-md); padding:16px 20px; display:flex; align-items:center; justify-content:center; height:110px; transition:all 0.3s ease; text-decoration:none; }
.partner-logo-2026:hover { border-color:rgba(229,0,126,0.2); box-shadow:var(--shadow-md); transform:translateY(-2px); }
.partner-logo-2026 img { max-height:80px; max-width:100%; object-fit:contain; }
.partner-logo-2026 span { font-family:var(--font-heading); font-weight:600; font-size:15px; color:var(--dark); } .rse-pillars-2026 { padding:96px 0; background:var(--white); }
.rse-pillars-grid-2026 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.rse-pillar-2026 { background:var(--white); border:1px solid var(--gray-200); border-radius:var(--radius-lg); padding:40px 32px; text-align:center; transition:all 0.3s ease; }
.rse-pillar-2026:hover { box-shadow:var(--shadow-lg); transform:translateY(-4px); }
.rse-pillar-icon-2026 { width:72px; height:72px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:28px; margin:0 auto 20px; }
.rse-pillar-2026 h3 { font-family:var(--font-heading); font-size:20px; font-weight:700; color:var(--dark); margin-bottom:12px; }
.rse-pillar-2026 p { font-size:14px; color:var(--gray-500); line-height:1.7; margin-bottom:12px; }
.rse-pillar-2026 ul { list-style:none; text-align:left; }
.rse-pillar-2026 ul li { font-size:14px; color:var(--gray-500); padding:6px 0; padding-left:20px; position:relative; }
.rse-pillar-2026 ul li::before { content:'\f00c'; font-family:'Font Awesome 6 Free'; font-weight:900; position:absolute; left:0; color:var(--vert); font-size:12px; } .trust-section-2026 { padding:56px 0; background:var(--white); border-bottom:1px solid var(--gray-200); overflow:hidden; }
.trust-titre-2026 { font-family:var(--font-heading); font-size:22px; font-weight:700; color:var(--dark); text-align:center; margin-bottom:32px; }
.trust-carousel-2026 { overflow:hidden; position:relative; width:100%; }
.trust-carousel-2026::before,
.trust-carousel-2026::after { content:''; position:absolute; top:0; bottom:0; width:80px; z-index:2; pointer-events:none; }
.trust-carousel-2026::before { left:0; background:linear-gradient(to right, var(--white), transparent); }
.trust-carousel-2026::after { right:0; background:linear-gradient(to left, var(--white), transparent); }
.trust-track-2026 { display:flex; gap:48px; align-items:center; width:max-content; animation:trustScroll 40s linear infinite; }
.trust-track-2026:hover { animation-play-state:paused; }
.trust-logo-2026 { flex-shrink:0; display:flex; align-items:center; justify-content:center; padding:12px 24px; background:var(--off-white); border-radius:var(--radius-md); border:1px solid var(--gray-200); height:90px; min-width:160px; transition:all 0.3s ease; }
.trust-logo-2026:hover { border-color:rgba(229,0,126,0.3); box-shadow:var(--shadow-md); transform:scale(1.05); }
.trust-logo-2026 img { max-height:60px; max-width:140px; object-fit:contain; filter:grayscale(30%); transition:filter 0.3s ease; }
.trust-logo-2026:hover img { filter:none; }
@keyframes trustScroll { 0% { transform:translateX(0); } 100% { transform:translateX(-50%); } } .contact-2026 { padding:96px 0; background:var(--off-white); }
.contact-grid-2026 { display:grid; grid-template-columns:1fr 1fr; gap:64px; }
.contact-info-2026 h3 { font-family:var(--font-heading); font-size:20px; font-weight:700; color:var(--dark); margin-bottom:24px; }
.contact-info-item-2026 { display:flex; gap:12px; align-items:center; margin-bottom:0; }
.contact-info-icon-2026.blue { background:rgba(59,130,246,0.1); color:#3B82F6; }
.contact-info-icon-2026 { width:48px; height:48px; border-radius:var(--radius-md); display:flex; align-items:center; justify-content:center; font-size:18px; flex-shrink:0; }
.contact-info-icon-2026.rose { background:var(--rose-pale); color:var(--rose); }
.contact-info-icon-2026.green { background:var(--vert-pale); color:var(--vert); }
.contact-info-icon-2026.violet { background:var(--violet-pale); color:var(--violet); }
.contact-info-item-2026 h4 { font-family:var(--font-heading); font-size:15px; font-weight:700; color:var(--dark); margin-bottom:2px; }
.contact-info-item-2026 p { font-size:14px; color:var(--gray-500); }
.contact-form-2026 { background:var(--white); border:1px solid var(--gray-200); border-radius:var(--radius-xl); padding:40px; }
.contact-form-2026 h3 { font-family:var(--font-heading); font-size:20px; font-weight:700; color:var(--dark); margin-bottom:24px; }
.form-group-2026 { margin-bottom:20px; }
.form-group-2026 label { display:block; font-size:14px; font-weight:600; color:var(--dark); margin-bottom:6px; }
.form-group-2026 input,
.form-group-2026 select,
.form-group-2026 textarea { width:100%; padding:12px 16px; border:1px solid var(--gray-200); border-radius:var(--radius-md); font-family:var(--font-body); font-size:14px; color:var(--dark); transition:border-color 0.2s; background:var(--white); }
.form-group-2026 input:focus,
.form-group-2026 select:focus,
.form-group-2026 textarea:focus { outline:none; border-color:var(--rose); box-shadow:0 0 0 3px var(--rose-glow); }
.form-group-2026 textarea { min-height:120px; resize:vertical; }
.form-row-2026 { display:grid; grid-template-columns:1fr 1fr; gap:16px; } .contact-form-2026 .wp-block-leadin-hubspot-form-block { padding:0 !important; box-shadow:none !important; background:transparent !important; }
.contact-form-2026 .hs-form { font-family:var(--font-body) !important; }
.contact-form-2026 .hs-form-field { margin-bottom:20px !important; }
.contact-form-2026 .hs-form-field label { display:block; font-size:14px; font-weight:600; color:var(--dark); margin-bottom:6px; font-family:var(--font-body) !important; }
.contact-form-2026 .hs-input { width:100% !important; padding:12px 16px !important; border:1px solid var(--gray-200) !important; border-radius:var(--radius-md) !important; font-family:var(--font-body) !important; font-size:14px !important; color:var(--dark) !important; transition:border-color 0.2s !important; background:var(--white) !important; box-sizing:border-box !important; }
.contact-form-2026 .hs-input:focus { outline:none !important; border-color:var(--rose) !important; box-shadow:0 0 0 3px var(--rose-glow) !important; }
.contact-form-2026 textarea.hs-input { min-height:120px !important; resize:vertical !important; }
.contact-form-2026 .hs-form select.hs-input { appearance:auto !important; }
.contact-form-2026 .hs-submit { margin-top:24px; }
.contact-form-2026 .hs-button { display:inline-flex; align-items:center; justify-content:center; width:100%; padding:16px 32px; background:var(--rose) !important; color:var(--white) !important; border:none !important; border-radius:var(--radius-lg) !important; font-family:var(--font-heading) !important; font-weight:700 !important; font-size:16px !important; cursor:pointer; transition:all 0.3s !important; }
.contact-form-2026 .hs-button:hover { background:var(--rose-dark, #c8006e) !important; transform:translateY(-2px); box-shadow:0 8px 24px rgba(229,0,126,0.3) !important; }
.contact-form-2026 .hs-error-msgs { list-style:none; padding:0; margin:4px 0 0; }
.contact-form-2026 .hs-error-msgs li label { color:var(--rose) !important; font-size:12px !important; font-weight:500 !important; }
.contact-form-2026 .hs-form .hs-richtext { font-size:13px; color:var(--gray-500); line-height:1.5; }
.contact-form-2026 .hs-form fieldset { max-width:100% !important; }
.contact-form-2026 .hs-form fieldset.form-columns-2 .hs-form-field { width:calc(50% - 8px) !important; } .newsletter-2026 { padding:64px 0; background:var(--off-white); }
.newsletter-box-2026 { max-width:600px; margin:0 auto; text-align:center; }
.newsletter-box-2026 h3 { font-family:var(--font-heading); font-size:24px; font-weight:700; color:var(--dark); margin-bottom:8px; }
.newsletter-box-2026 p { font-size:15px; color:var(--gray-500); margin-bottom:24px; }
.newsletter-form-2026 { display:flex; gap:12px; }
.newsletter-form-2026 input { flex:1; padding:14px 20px; border:1px solid var(--gray-200); border-radius:var(--radius-full); font-size:15px; font-family:var(--font-body); }
.newsletter-form-2026 input:focus { outline:none; border-color:var(--rose); } .detail-section-2026 { padding:96px 0; }
.detail-section-2026:nth-child(even) { background:var(--off-white); }
.detail-grid-2026 { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.detail-grid-2026.reverse { direction:rtl; }
.detail-grid-2026.reverse > * { direction:ltr; }
.detail-image-2026 { border-radius:var(--radius-xl); overflow:hidden; }
.detail-image-2026 img { width:100%; height:400px; object-fit:cover; }
.detail-content-2026 h2 { font-family:var(--font-heading); font-size:32px; font-weight:800; color:var(--dark); margin-bottom:16px; line-height:1.2; }
.detail-content-2026 p { font-size:15px; color:var(--gray-500); line-height:1.8; margin-bottom:16px; }
.detail-list-2026 { list-style:none; margin-bottom:24px; }
.detail-list-2026 li { display:flex; align-items:flex-start; gap:12px; padding:8px 0; font-size:15px; color:var(--gray-600); }
.detail-list-2026 li i { color:var(--vert); margin-top:3px; } .reveal { opacity:0; transform:translateY(30px); transition:all 0.7s cubic-bezier(0.16,1,0.3,1); }
.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; } .mobile-nav-2026 { position:fixed; inset:0; background:rgba(15,23,42,0.5); z-index:1001; opacity:0; pointer-events:none; transition:opacity 0.3s; }
.mobile-nav-2026.open { opacity:1; pointer-events:auto; }
.mobile-nav-panel-2026 { position:fixed; top:0; right:0; bottom:0; width:320px; background:var(--white); padding:32px; transform:translateX(100%); transition:transform 0.3s ease; z-index:1002; box-shadow:-10px 0 30px rgba(0,0,0,0.1); overflow-y:auto; }
.mobile-nav-2026.open .mobile-nav-panel-2026 { transform:translateX(0); }
.mobile-nav-close-2026 { position:absolute; top:20px; right:20px; background:none; border:none; font-size:24px; cursor:pointer; color:var(--dark); }
.mobile-nav-links-2026 { list-style:none; margin-top:48px; display:flex; flex-direction:column; gap:8px; }
.mobile-nav-links-2026 a { display:block; font-family:var(--font-heading); font-size:18px; font-weight:600; color:var(--dark); padding:12px 0; border-bottom:1px solid var(--gray-100); }
.mobile-nav-links-2026 a:hover { color:var(--rose); }
.mobile-nav-links-2026 .sub-item a { font-size:15px; font-weight:500; padding-left:16px; }
.mobile-nav-btns-2026 { display:flex; flex-direction:column; gap:10px; margin-top:24px; } .mobile-nav-links-2026 .menu { list-style:none; padding:0; margin:0; }
.mobile-nav-links-2026 .menu li a { display:block; font-family:var(--font-heading); font-size:18px; font-weight:600; color:var(--dark); padding:12px 0; border-bottom:1px solid var(--gray-100); }
.mobile-nav-links-2026 .menu .sub-menu { list-style:none; padding:0; }
.mobile-nav-links-2026 .menu .sub-menu li a { font-size:15px; font-weight:500; padding-left:16px; } @media(max-width:1024px) {
.hero-2026 h1 { font-size:44px; }
.section-title-2026 { font-size:34px; }
.stat-number-2026 { font-size:38px; }
.stats-grid-2026 { grid-template-columns:repeat(3,1fr); }
.cta-content-2026 h2,
.cta-content-centered-2026 h2 { font-size:34px; }
.footer-grid-2026 { grid-template-columns:1fr 1fr; gap:40px; }
.hero-page-2026 h1 { font-size:36px; }
.about-grid-2026 { grid-template-columns:1fr; gap:40px; }
.dept-grid-2026 { grid-template-columns:repeat(2,1fr); }
.team-grid-2026 { grid-template-columns:repeat(2,1fr); }
.detail-grid-2026 { grid-template-columns:1fr; gap:40px; }
.detail-grid-2026.reverse { direction:ltr; }
.contact-grid-2026 { grid-template-columns:1fr; gap:40px; }
}
@media(max-width:768px) {
.nav-links-2026, .nav-cta-2026 { display:none; }
.menu-toggle-2026 { display:flex; }
.hero-grid-2026 { grid-template-columns:1fr; gap:40px; }
.hero-2026 { padding-top:100px; text-align:center; }
.hero-subtitle-2026 { margin:0 auto 32px; }
.hero-buttons-2026 { justify-content:center; }
.hero-visual-2026 { max-width:450px; margin:0 auto; }
.clients-bar-2026 { flex-direction:column; gap:12px; }
.stats-grid-2026 { grid-template-columns:repeat(2,1fr); }
.services-grid-2026 { grid-template-columns:1fr; }
.process-steps-2026 { grid-template-columns:repeat(2,1fr); gap:40px; }
.process-steps-2026::before { display:none; }
.connector-grid-2026 { gap:12px; }
.connector-item-2026 { min-width:150px; padding:20px 24px; }
.donut-2026 { padding:64px 0; }
.donut-2026 .donut-grid-4 { grid-template-columns:repeat(2,1fr); }
.blog-grid-2026 { grid-template-columns:1fr; }
.blog-header-2026 { flex-direction:column; align-items:flex-start; gap:16px; }
.cta-grid-2026 { grid-template-columns:1fr; text-align:center; }
.cta-content-2026 p { margin:0 auto 32px; }
.cta-buttons-2026 { justify-content:center; }
.cta-florence-2026 { order:-1; }
.footer-grid-2026 { grid-template-columns:1fr; }
.footer-bottom-2026 { flex-direction:column; gap:12px; text-align:center; }
.footer-certs-2026 { flex-wrap:wrap; justify-content:center; }
.hero-page-2026 h1 { font-size:30px; }
.values-grid-2026 { grid-template-columns:1fr; }
.dept-grid-2026 { grid-template-columns:1fr; }
.team-grid-2026 { grid-template-columns:1fr; }
.partners-logos-2026 { grid-template-columns:repeat(2, 1fr); }
.trust-logo-2026 { height:70px; min-width:120px; padding:8px 16px; }
.trust-logo-2026 img { max-height:45px; max-width:110px; }
.trust-track-2026 { gap:24px; }
.rse-pillars-grid-2026 { grid-template-columns:1fr; }
.timeline-2026::before { left:20px; }
.timeline-item-2026, .timeline-item-2026:nth-child(even) { flex-direction:row; }
.timeline-content-2026 { width:calc(100% - 60px); margin-left:auto; }
.timeline-dot-2026 { left:20px; }
.form-row-2026 { grid-template-columns:1fr; }
.newsletter-form-2026 { flex-direction:column; }
}
@media(max-width:480px) {
.hero-2026 h1 { font-size:34px; }
.section-title-2026 { font-size:28px; }
.stats-grid-2026 { grid-template-columns:1fr 1fr; gap:12px; }
.stat-card-2026 { padding:24px 12px; }
.stat-number-2026 { font-size:32px; }
.process-steps-2026 { grid-template-columns:1fr 1fr; }
.about-stats-2026 { flex-wrap:wrap; gap:20px; }
}  .donut-explorer-2026 {
padding:80px 0 96px;
background:var(--off-white);
} .donut-screenshot-wrapper {
position:relative;
width:calc(100% - 80px);
margin:40px auto 0;
border-radius:var(--radius-lg);
overflow:visible;
box-shadow:var(--shadow-xl);
border:1px solid var(--gray-200);
background:var(--white);
}
.donut-main-screenshot {
display:block;
width:100%;
height:auto;
border-radius:var(--radius-lg);
} .donut-hotspot {
position:absolute;
border:none;
background:none;
cursor:pointer;
z-index:10;
padding:0;
} .donut-hotspot-point {
width:32px;
height:32px;
transform:translate(-50%,-50%);
}
.donut-hotspot-ping {
position:absolute;
inset:-4px;
border-radius:50%;
background:rgba(229,0,126,0.25);
animation:donut-ping 2s cubic-bezier(0,0,0.2,1) infinite;
}
.donut-hotspot-dot {
position:relative;
display:flex;
align-items:center;
justify-content:center;
width:32px;
height:32px;
border-radius:50%;
background:var(--rose);
color:#fff;
font-size:13px;
font-weight:700;
font-family:var(--font-heading);
box-shadow:0 2px 8px rgba(229,0,126,0.4);
transition:transform 0.2s ease, background 0.2s ease;
}
.donut-hotspot-point:hover .donut-hotspot-dot,
.donut-hotspot-point.active .donut-hotspot-dot {
transform:scale(1.15);
background:var(--rose-light);
}
.donut-hotspot-point.active .donut-hotspot-ping {
animation:none;
background:rgba(229,0,126,0.35);
}
@keyframes donut-ping {
0% { transform:scale(1); opacity:1; }
75%,100% { transform:scale(2); opacity:0; }
} .donut-hotspot-encadre {
border-radius:4px;
transform:none;
}
.donut-encadre-border {
position:absolute;
inset:0;
border:2px solid var(--rose);
border-radius:4px;
background:rgba(229,0,126,0.06);
transition:all 0.25s ease;
animation:donut-encadre-pulse 2.5s ease-in-out infinite;
}
.donut-hotspot-encadre:hover .donut-encadre-border,
.donut-hotspot-encadre.active .donut-encadre-border {
background:rgba(229,0,126,0.18);
border-color:var(--rose-light);
box-shadow:0 0 16px rgba(229,0,126,0.2);
animation:none;
}
.donut-encadre-label {
position:absolute;
bottom:calc(100% + 6px);
left:50%;
transform:translateX(-50%);
white-space:nowrap;
background:var(--rose);
color:#fff;
font-size:11px;
font-weight:600;
font-family:var(--font-heading);
padding:4px 12px;
border-radius:var(--radius-full);
box-shadow:0 2px 8px rgba(229,0,126,0.3);
opacity:0;
pointer-events:none;
transition:opacity 0.2s ease;
}
.donut-hotspot-encadre:hover .donut-encadre-label,
.donut-hotspot-encadre.active .donut-encadre-label {
opacity:1;
}
@keyframes donut-encadre-pulse {
0%,100% { border-color:var(--rose); background:rgba(229,0,126,0.06); }
50% { border-color:rgba(229,0,126,0.35); background:rgba(229,0,126,0.02); }
} .donut-features-nav {
display:flex;
flex-wrap:wrap;
gap:10px;
justify-content:center;
margin-top:32px;
}
.donut-feature-btn {
display:inline-flex;
align-items:center;
gap:8px;
padding:10px 18px;
border:1px solid var(--gray-200);
border-radius:var(--radius-full);
background:var(--white);
color:var(--gray-600);
font-size:14px;
font-family:var(--font-body);
cursor:pointer;
transition:all 0.2s ease;
}
.donut-feature-btn i {
font-size:14px;
color:var(--rose);
}
.donut-feature-btn:hover {
border-color:var(--rose);
color:var(--dark);
box-shadow:var(--shadow-sm);
}
.donut-feature-btn.active {
background:var(--rose);
border-color:var(--rose);
color:#fff;
}
.donut-feature-btn.active i {
color:#fff;
} .donut-panel {
position:fixed;
inset:0;
z-index:10000;
display:flex;
visibility:hidden;
opacity:0;
transition:visibility 0.3s, opacity 0.3s;
}
.donut-panel.active {
visibility:visible;
opacity:1;
}
.donut-panel-overlay {
position:absolute;
inset:0;
background:rgba(0,0,0,0.75);
backdrop-filter:blur(4px);
cursor:pointer;
} .donut-panel-content {
position:relative;
margin:auto;
width:96vw;
max-width:1280px;
max-height:95vh;
background:var(--white);
border-radius:var(--radius-xl);
overflow:hidden;
display:flex;
flex-direction:column;
box-shadow:0 32px 80px rgba(0,0,0,0.35);
transform:scale(0.92) translateY(20px);
opacity:0;
transition:transform 0.35s cubic-bezier(0.16,1,0.3,1), opacity 0.3s ease;
}
.donut-panel.active .donut-panel-content {
transform:scale(1) translateY(0);
opacity:1;
} .donut-panel-screenshot {
width:100%;
background:var(--dark);
display:flex;
align-items:center;
justify-content:center;
flex-shrink:0;
max-height:72vh;
overflow:hidden;
}
.donut-panel-screenshot img {
width:100%;
height:auto;
max-height:72vh;
object-fit:contain;
display:block;
}
.donut-panel-no-img {
display:flex;
align-items:center;
justify-content:center;
width:100%;
height:240px;
color:rgba(255,255,255,0.2);
font-size:64px;
} .donut-panel-body {
padding:24px 32px 28px;
overflow-y:auto;
display:flex;
flex-direction:column;
gap:12px;
} .donut-panel-nav {
display:flex;
align-items:center;
justify-content:space-between;
flex-shrink:0;
}
.donut-panel-prev,
.donut-panel-next {
display:inline-flex;
align-items:center;
gap:6px;
padding:8px 18px;
border:1px solid var(--gray-200);
border-radius:var(--radius-full);
background:var(--white);
color:var(--gray-600);
font-size:13px;
font-family:var(--font-body);
cursor:pointer;
transition:all 0.2s ease;
}
.donut-panel-prev:hover,
.donut-panel-next:hover {
border-color:var(--rose);
color:var(--rose);
}
.donut-panel-counter {
font-size:13px;
color:var(--gray-400);
font-family:var(--font-heading);
font-weight:600;
} .donut-panel-close {
position:absolute;
top:14px;
right:16px;
width:38px;
height:38px;
border:none;
background:rgba(255,255,255,0.15);
backdrop-filter:blur(6px);
border-radius:50%;
font-size:22px;
color:#fff;
cursor:pointer;
display:flex;
align-items:center;
justify-content:center;
transition:background 0.2s;
z-index:5;
}
.donut-panel-close:hover {
background:var(--rose);
} #donut-panel-title {
font-family:var(--font-heading);
font-size:20px;
font-weight:700;
color:var(--dark);
margin:0;
}
.donut-panel-desc {
font-size:15px;
line-height:1.7;
color:var(--gray-600);
}
.donut-panel-desc p { margin-bottom:10px; }
.donut-panel-desc ul { padding-left:20px; }
.donut-panel-desc li { margin-bottom:5px; } @media(max-width:768px) {
.donut-explorer-2026 { padding:56px 0 64px; }
.donut-screenshot-wrapper { margin-top:24px; }
.donut-hotspot-point { width:26px; height:26px; }
.donut-hotspot-dot { width:26px; height:26px; font-size:11px; }
.donut-encadre-border { border-width:1.5px; }
.donut-encadre-label { font-size:10px; padding:3px 8px; }
.donut-features-nav { gap:8px; }
.donut-feature-btn { padding:8px 14px; font-size:12px; }
.donut-panel-content { max-height:95vh; }
.donut-panel-screenshot { max-height:45vh; }
.donut-panel-screenshot img { max-height:45vh; }
.donut-panel-body { padding:16px 18px 20px; }
#donut-panel-title { font-size:17px; }
}
@media(max-width:480px) {
.donut-features-nav { flex-direction:column; align-items:stretch; }
.donut-feature-btn { justify-content:center; }
.donut-panel-prev span, .donut-panel-next span { display:none; }
}