*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--color-primary:#2d1b69;--color-secondary:#3c2a78;--color-accent:#ff6b6b;--color-accent-hover:#ff5252;--color-white:#ffffff;--color-light:#f8f9fa;--color-gray-100:#f1f3f5;--color-gray-200:#e9ecef;--color-gray-300:#dee2e6;--color-gray-400:#ced4da;--color-gray-500:#adb5bd;--color-gray-600:#868e96;--color-gray-700:#495057;--color-gray-800:#343a40;--color-gray-900:#212529;--color-dark:#1a1a2e;--color-success:#51cf66;--color-warning:#fcc419;--color-error:#ff6b6b;--font-primary:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-size-6xl:3.75rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--spacing-4xl:6rem;--spacing-5xl:8rem;--border-radius-sm:0.25rem;--border-radius-md:0.5rem;--border-radius-lg:1rem;--border-radius-xl:1.5rem;--border-radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 4px 6px rgba(0,0,0,0.1);--shadow-lg:0 10px 15px rgba(0,0,0,0.1);--shadow-xl:0 20px 25px rgba(0,0,0,0.15);--shadow-2xl:0 25px 50px rgba(0,0,0,0.25);--shadow-glow:0 0 40px rgba(255,107,107,0.3);--transition-fast:150ms ease;--transition-base:300ms ease;--transition-slow:500ms ease;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal:400;--z-tooltip:500}
html{scroll-behavior:smooth;font-size:16px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}}
body{font-family:var(--font-primary);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-gray-800);background-color:var(--color-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
body.menu-open{overflow:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}
button{font-family:inherit;cursor:pointer;border:none;background:none}
ul,ol{list-style:none}
address{font-style:normal}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}
@media(min-width:768px){.container{padding:0 var(--spacing-xl)}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);line-height:1;border-radius:var(--border-radius-full);transition:all var(--transition-base);white-space:nowrap}
.btn-primary{background:linear-gradient(135deg,var(--color-accent),#ff8e8e);color:var(--color-white);box-shadow:0 4px 15px rgba(255,107,107,0.4)}
.btn-primary:hover,.btn-primary:focus{background:linear-gradient(135deg,var(--color-accent-hover),var(--color-accent));transform:translateY(-2px);box-shadow:0 6px 20px rgba(255,107,107,0.5)}
.btn-primary:active{transform:translateY(0)}
.btn-secondary{background:transparent;color:var(--color-white);border:2px solid rgba(255,255,255,0.3)}
.btn-secondary:hover,.btn-secondary:focus{background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.5)}
.btn-accent{background:var(--color-accent);color:var(--color-white)}
.btn-accent:hover,.btn-accent:focus{background:var(--color-accent-hover)}
.btn-full{width:100%}
.header{position:fixed;top:0;left:0;right:0;z-index:var(--z-fixed);background:transparent;transition:background var(--transition-base),box-shadow var(--transition-base)}
.header.scrolled{background:rgba(45,27,105,0.95);backdrop-filter:blur(10px);box-shadow:var(--shadow-lg)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-md);max-width:1200px;margin:0 auto}
@media(min-width:768px){.nav{padding:var(--spacing-lg) var(--spacing-xl)}}
.logo{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-white);font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);transition:opacity var(--transition-fast)}
.logo:hover{opacity:0.9}
.logo-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--color-accent),#ff8e8e);border-radius:var(--border-radius-md);position:relative}
.logo-icon::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;background:var(--color-white);border-radius:var(--border-radius-sm);opacity:0.9}
.logo-text{display:block}
.nav-toggle{display:flex;flex-direction:column;gap:5px;padding:var(--spacing-sm);z-index:calc(var(--z-fixed) + 1)}
@media(min-width:768px){.nav-toggle{display:none}}
.nav-toggle-bar{width:24px;height:2px;background:var(--color-white);border-radius:var(--border-radius-full);transition:all var(--transition-base)}
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
.nav-menu{position:fixed;top:0;right:-100%;width:80%;max-width:300px;height:100vh;background:var(--color-primary);padding:var(--spacing-5xl) var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-lg);transition:right var(--transition-base);z-index:var(--z-fixed)}
.nav-menu.active{right:0}
@media(min-width:768px){.nav-menu{position:static;width:auto;max-width:none;height:auto;background:transparent;padding:0;flex-direction:row;gap:var(--spacing-xl)}}
.nav-link{color:var(--color-white);font-weight:var(--font-weight-medium);font-size:var(--font-size-lg);opacity:0.8;transition:opacity var(--transition-fast);position:relative}
@media(min-width:768px){.nav-link{font-size:var(--font-size-base)}}
.nav-link:hover,.nav-link:focus{opacity:1}
.nav-link::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--color-accent);transition:width var(--transition-base)}
.nav-link:hover::after,.nav-link:focus::after{width:100%}
.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 50%,#4a3a8a 100%)}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-particles{position:absolute;inset:0;background-image:radial-gradient(circle at 20% 80%,rgba(255,107,107,0.3) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,0.1) 0%,transparent 40%),radial-gradient(circle at 40% 40%,rgba(255,107,107,0.2) 0%,transparent 30%);animation:particles 20s ease-in-out infinite}
@keyframes particles{0%,100%{transform:scale(1) rotate(0deg)}50%{transform:scale(1.1) rotate(5deg)}}
.hero-gradient{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(45,27,105,0.3) 100%)}
.hero-content{position:relative;z-index:1;text-align:center;padding:var(--spacing-5xl) var(--spacing-md);max-width:900px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center}
.hero-badge{display:inline-block;padding:var(--spacing-sm) var(--spacing-lg);background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);border-radius:var(--border-radius-full);color:var(--color-white);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-xl);backdrop-filter:blur(10px);animation:fadeInDown 0.8s ease forwards;opacity:0}
@keyframes fadeInDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}
.hero-title{color:var(--color-white);font-size:clamp(2.5rem,8vw,5rem);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin-bottom:var(--spacing-lg)}
.hero-title-line{display:block;animation:fadeInUp 0.8s ease forwards;opacity:0}
.hero-title-line:nth-child(1){animation-delay:0.2s}
.hero-title-line:nth-child(2){animation-delay:0.4s}
@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
.hero-title-accent{background:linear-gradient(135deg,var(--color-accent),#ffb3b3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero-subtitle{color:rgba(255,255,255,0.9);font-size:var(--font-size-lg);max-width:600px;margin:0 auto var(--spacing-2xl);animation:fadeInUp 0.8s ease 0.6s forwards;opacity:0}
@media(min-width:768px){.hero-subtitle{font-size:var(--font-size-xl)}}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl);animation:fadeInUp 0.8s ease 0.8s forwards;opacity:0}
.stat-item{text-align:center}
.stat-number{display:block;color:var(--color-white);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold)}
@media(min-width:768px){.stat-number{font-size:var(--font-size-4xl)}}
.stat-label{color:rgba(255,255,255,0.7);font-size:var(--font-size-sm)}
.hero-actions{display:flex;flex-direction:column;gap:var(--spacing-md);justify-content:center;animation:fadeInUp 0.8s ease 1s forwards;opacity:0}
@media(min-width:480px){.hero-actions{flex-direction:row}}
.hero-scroll{position:absolute;bottom:var(--spacing-2xl);left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);color:rgba(255,255,255,0.6);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:0.1em;animation:fadeIn 1s ease 1.5s forwards;opacity:0}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.hero-scroll-line{width:1px;height:40px;background:linear-gradient(180deg,rgba(255,255,255,0.6),transparent);animation:scrollLine 2s ease-in-out infinite}
@keyframes scrollLine{0%,100%{transform:scaleY(1);transform-origin:top}50%{transform:scaleY(0.5);transform-origin:top}}
.section-header{text-align:center;max-width:700px;margin:0 auto var(--spacing-3xl)}
.section-header-left{text-align:left;margin:0 0 var(--spacing-2xl)}
.section-tag{display:inline-block;padding:var(--spacing-xs) var(--spacing-md);background:linear-gradient(135deg,rgba(45,27,105,0.1),rgba(60,42,120,0.1));color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border-radius:var(--border-radius-full);margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:0.05em}
.section-title{font-size:clamp(1.75rem,5vw,2.75rem);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-md);line-height:var(--line-height-tight)}
.section-desc{color:var(--color-gray-600);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed)}
.about{padding:var(--spacing-5xl) 0;background:var(--color-light)}
.about-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg)}
@media(min-width:640px){.about-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.about-grid{grid-template-columns:repeat(4,1fr)}}
.about-card{background:var(--color-white);padding:var(--spacing-2xl);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);transition:transform var(--transition-base),box-shadow var(--transition-base)}
.about-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl)}
.about-card-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-sm)}
.about-card-text{color:var(--color-gray-600);line-height:var(--line-height-relaxed)}
.features{padding:var(--spacing-5xl) 0;background:var(--color-white)}
.features-showcase{display:flex;flex-direction:column;gap:var(--spacing-3xl)}
.feature-main{display:grid;grid-template-columns:1fr;gap:var(--spacing-2xl);align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-radius:var(--border-radius-xl);padding:var(--spacing-2xl);color:var(--color-white)}
@media(min-width:768px){.feature-main{grid-template-columns:1fr 1fr;padding:var(--spacing-3xl)}}
.feature-main-content{position:relative;z-index:1}
.feature-number{display:block;font-size:var(--font-size-6xl);font-weight:var(--font-weight-bold);opacity:0.2;line-height:1;margin-bottom:var(--spacing-md)}
.feature-main-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-md)}
.feature-main-text{opacity:0.9;margin-bottom:var(--spacing-lg);line-height:var(--line-height-relaxed)}
.feature-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}
.feature-list li{display:flex;align-items:center;gap:var(--spacing-sm)}
.feature-list li::before{content:'';width:8px;height:8px;background:var(--color-accent);border-radius:var(--border-radius-full);flex-shrink:0}
.feature-main-visual{display:none;position:relative;height:300px}
@media(min-width:768px){.feature-main-visual{display:block}}
.feature-visual-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:200px;height:200px;border:3px solid rgba(255,255,255,0.2);border-radius:var(--border-radius-full);animation:pulse 3s ease-in-out infinite}
@keyframes pulse{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.2);opacity:0.5}}
.feature-visual-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:150px;height:150px;background:radial-gradient(circle,var(--color-accent) 0%,transparent 70%);border-radius:var(--border-radius-full);opacity:0.5;animation:glow 4s ease-in-out infinite}
@keyframes glow{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.3)}}
.features-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg)}
@media(min-width:640px){.features-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.features-grid{grid-template-columns:repeat(3,1fr)}}
.feature-card{background:var(--color-light);padding:var(--spacing-2xl);border-radius:var(--border-radius-lg);transition:all var(--transition-base);position:relative;overflow:hidden}
.feature-card::before{content:'';position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--color-accent),var(--color-primary));transform:scaleY(0);transform-origin:bottom;transition:transform var(--transition-base)}
.feature-card:hover{background:var(--color-white);box-shadow:var(--shadow-lg)}
.feature-card:hover::before{transform:scaleY(1)}
.feature-card-number{display:block;font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-gray-200);margin-bottom:var(--spacing-md)}
.feature-card-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-sm)}
.feature-card-text{color:var(--color-gray-600);line-height:var(--line-height-relaxed)}
.social-proof{padding:var(--spacing-3xl) 0;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary))}
.social-proof-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl)}
@media(min-width:768px){.social-proof-grid{grid-template-columns:repeat(4,1fr)}}
.proof-item{text-align:center;color:var(--color-white)}
.proof-number{display:block;font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-xs)}
@media(min-width:768px){.proof-number{font-size:var(--font-size-4xl)}}
.proof-label{font-size:var(--font-size-sm);opacity:0.8}
.testimonials{padding:var(--spacing-5xl) 0;background:var(--color-light);overflow:hidden}
.testimonials-slider{position:relative}
.testimonials-track{display:flex;gap:var(--spacing-lg);transition:transform var(--transition-slow)}
.testimonial-card{flex:0 0 100%;min-width:0;background:var(--color-white);padding:var(--spacing-2xl);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md)}
@media(min-width:640px){.testimonial-card{flex:0 0 calc(50% - var(--spacing-md))}}
@media(min-width:1024px){.testimonial-card{flex:0 0 calc(33.333% - var(--spacing-lg))}}
.testimonial-text{font-size:var(--font-size-lg);color:var(--color-gray-700);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-lg);font-style:italic}
.testimonial-author{display:flex;align-items:center;gap:var(--spacing-md)}
.testimonial-avatar{width:48px;height:48px;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:var(--color-white);border-radius:var(--border-radius-full);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-bold);font-size:var(--font-size-lg)}
.testimonial-name{display:block;font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}
.testimonial-location{font-size:var(--font-size-sm);color:var(--color-gray-500)}
.testimonials-nav{display:flex;align-items:center;justify-content:center;gap:var(--spacing-lg);margin-top:var(--spacing-2xl)}
.testimonial-btn{width:48px;height:48px;border-radius:var(--border-radius-full);background:var(--color-white);box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:center;color:var(--color-primary);transition:all var(--transition-fast)}
.testimonial-btn:hover{background:var(--color-primary);color:var(--color-white)}
.testimonials-dots{display:flex;gap:var(--spacing-sm)}
.testimonial-dot{width:12px;height:12px;border-radius:var(--border-radius-full);background:var(--color-gray-300);border:none;cursor:pointer;transition:all var(--transition-fast)}
.testimonial-dot.active,.testimonial-dot:hover{background:var(--color-primary);transform:scale(1.2)}
.trust{padding:var(--spacing-5xl) 0;background:var(--color-white)}
.trust-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-3xl)}
@media(min-width:640px){.trust-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.trust-grid{grid-template-columns:repeat(4,1fr)}}
.trust-card{text-align:center;padding:var(--spacing-2xl);border:2px solid var(--color-gray-200);border-radius:var(--border-radius-lg);transition:all var(--transition-base)}
.trust-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg)}
.trust-card-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-sm)}
.trust-card-text{color:var(--color-gray-600);line-height:var(--line-height-relaxed)}
.trust-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-md)}
.trust-badge{padding:var(--spacing-sm) var(--spacing-lg);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:var(--color-white);border-radius:var(--border-radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}
.faq{padding:var(--spacing-5xl) 0;background:var(--color-light)}
.faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-md)}
.faq-item{background:var(--color-white);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base)}
.faq-item:hover,.faq-item[open]{box-shadow:var(--shadow-md)}
.faq-question{padding:var(--spacing-lg) var(--spacing-xl);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);cursor:pointer;list-style:none}
.faq-question::-webkit-details-marker{display:none}
.faq-question-text{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}
.faq-icon{width:24px;height:24px;flex-shrink:0;position:relative}
.faq-icon::before,.faq-icon::after{content:'';position:absolute;top:50%;left:50%;background:var(--color-primary);transition:transform var(--transition-base)}
.faq-icon::before{width:14px;height:2px;transform:translate(-50%,-50%)}
.faq-icon::after{width:2px;height:14px;transform:translate(-50%,-50%)}
.faq-item[open] .faq-icon::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq-answer{padding:0 var(--spacing-xl) var(--spacing-lg);color:var(--color-gray-600);line-height:var(--line-height-relaxed)}
.contact{padding:var(--spacing-5xl) 0;background:var(--color-white)}
.contact-wrapper{display:grid;grid-template-columns:1fr;gap:var(--spacing-3xl)}
@media(min-width:1024px){.contact-wrapper{grid-template-columns:1fr 1fr}}
.contact-details{display:flex;flex-direction:column;gap:var(--spacing-lg)}
.contact-item{display:flex;align-items:flex-start;gap:var(--spacing-md)}
.contact-item-label{display:block;font-size:var(--font-size-sm);color:var(--color-gray-500);margin-bottom:var(--spacing-xs)}
.contact-item-value{color:var(--color-gray-900);font-weight:var(--font-weight-medium);transition:color var(--transition-fast)}
a.contact-item-value:hover{color:var(--color-primary)}
.contact-form-wrapper{background:var(--color-light);padding:var(--spacing-2xl);border-radius:var(--border-radius-lg)}
.contact-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}
.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}
.form-label{font-weight:var(--font-weight-medium);color:var(--color-gray-700)}
.form-input{padding:var(--spacing-md);border:2px solid var(--color-gray-200);border-radius:var(--border-radius-md);font-size:var(--font-size-base);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);background:var(--color-white)}
.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(45,27,105,0.1)}
.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23495057' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-md) center;background-size:20px;padding-right:var(--spacing-3xl)}
.form-textarea{resize:vertical;min-height:120px}
.form-group-checkbox{flex-direction:row;align-items:flex-start;gap:var(--spacing-sm)}
.form-checkbox{width:20px;height:20px;flex-shrink:0;accent-color:var(--color-primary)}
.form-label-checkbox{font-size:var(--font-size-sm);color:var(--color-gray-600);line-height:var(--line-height-normal)}
.form-link{color:var(--color-primary);text-decoration:underline}
.form-link:hover{color:var(--color-accent)}
.newsletter{padding:var(--spacing-3xl) 0;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary))}
.newsletter-content{display:grid;grid-template-columns:1fr;gap:var(--spacing-2xl);align-items:center}
@media(min-width:768px){.newsletter-content{grid-template-columns:1fr 1fr}}
.newsletter-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-white);margin-bottom:var(--spacing-sm)}
.newsletter-desc{color:rgba(255,255,255,0.9)}
.newsletter-form{width:100%}
.newsletter-input-wrapper{display:flex;flex-direction:column;gap:var(--spacing-sm)}
@media(min-width:480px){.newsletter-input-wrapper{flex-direction:row}}
.newsletter-input{flex:1;padding:var(--spacing-md) var(--spacing-lg);border:2px solid rgba(255,255,255,0.2);border-radius:var(--border-radius-full);background:rgba(255,255,255,0.1);color:var(--color-white);font-size:var(--font-size-base)}
.newsletter-input::placeholder{color:rgba(255,255,255,0.6)}
.newsletter-input:focus{outline:none;border-color:rgba(255,255,255,0.5);background:rgba(255,255,255,0.15)}
.newsletter-btn{white-space:nowrap}
.newsletter-note{font-size:var(--font-size-xs);color:rgba(255,255,255,0.7);margin-top:var(--spacing-sm)}
.footer{background:var(--color-dark);color:var(--color-white);padding:var(--spacing-4xl) 0 var(--spacing-xl)}
.footer-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-2xl);margin-bottom:var(--spacing-3xl)}
@media(min-width:640px){.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr}}
.footer-logo{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}
.footer-brand-text{color:var(--color-gray-400);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}
.footer-nav-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-lg)}
.footer-nav-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}
.footer-link{color:var(--color-gray-400);transition:color var(--transition-fast)}
.footer-link:hover{color:var(--color-white)}
.footer-address{color:var(--color-gray-400);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}
.footer-address p{margin-bottom:var(--spacing-xs)}
.footer-bottom{display:flex;flex-direction:column;gap:var(--spacing-md);align-items:center;padding-top:var(--spacing-xl);border-top:1px solid rgba(255,255,255,0.1)}
@media(min-width:640px){.footer-bottom{flex-direction:row;justify-content:space-between}}
.footer-copyright{color:var(--color-gray-500);font-size:var(--font-size-sm)}
.footer-badges{display:flex;gap:var(--spacing-sm)}
.footer-badge{padding:var(--spacing-xs) var(--spacing-sm);background:rgba(255,255,255,0.1);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);color:var(--color-gray-400)}
.cookie-consent{position:fixed;bottom:0;left:0;right:0;background:var(--color-white);box-shadow:0 -4px 20px rgba(0,0,0,0.15);z-index:var(--z-modal);padding:var(--spacing-lg)}
.cookie-consent[hidden]{display:none}
.cookie-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-md)}
@media(min-width:768px){.cookie-content{flex-direction:row;align-items:center;justify-content:space-between}}
.cookie-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-xs)}
.cookie-text{color:var(--color-gray-600);font-size:var(--font-size-sm);max-width:600px}
.cookie-link{color:var(--color-primary);text-decoration:underline}
.cookie-actions{display:flex;gap:var(--spacing-sm);flex-shrink:0}
.cookie-btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm)}
.cookie-settings-panel{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-gray-200)}
.cookie-settings-panel[hidden]{display:none}
.cookie-settings-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-md)}
.cookie-option{margin-bottom:var(--spacing-md)}
.cookie-option-label{display:flex;align-items:flex-start;gap:var(--spacing-sm);cursor:pointer}
.cookie-checkbox{width:20px;height:20px;accent-color:var(--color-primary);flex-shrink:0;margin-top:2px}
.cookie-option-text strong{display:block;color:var(--color-gray-900)}
.cookie-option-text small{color:var(--color-gray-500);font-size:var(--font-size-xs)}
.legal-content{background:var(--color-white);padding:var(--spacing-5xl) 0}
.legal-content .container{max-width:900px}
.legal-header{margin-bottom:var(--spacing-3xl);padding-bottom:var(--spacing-2xl);border-bottom:2px solid var(--color-gray-200)}
.legal-title{font-size:clamp(1.75rem,5vw,2.5rem);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-md)}
.legal-meta{color:var(--color-gray-500);font-size:var(--font-size-sm)}
.legal-section{margin-bottom:var(--spacing-2xl)}
.legal-section h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-gray-200)}
.legal-section h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-800);margin:var(--spacing-lg) 0 var(--spacing-sm)}
.legal-section p{color:var(--color-gray-700);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-md)}
.legal-section ul,.legal-section ol{margin:var(--spacing-md) 0;padding-left:var(--spacing-xl);color:var(--color-gray-700)}
.legal-section li{margin-bottom:var(--spacing-sm);line-height:var(--line-height-relaxed)}
.legal-section ul li{list-style-type:disc}
.legal-section ol li{list-style-type:decimal}
.legal-section a{color:var(--color-primary);text-decoration:underline}
.legal-section a:hover{color:var(--color-accent)}
.legal-highlight{background:var(--color-light);padding:var(--spacing-lg);border-radius:var(--border-radius-md);border-left:4px solid var(--color-primary);margin:var(--spacing-lg) 0}
.legal-highlight p{margin-bottom:0}
.legal-table{width:100%;border-collapse:collapse;margin:var(--spacing-lg) 0}
.legal-table th,.legal-table td{padding:var(--spacing-md);text-align:left;border:1px solid var(--color-gray-200)}
.legal-table th{background:var(--color-light);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}
.legal-table td{color:var(--color-gray-700)}
@media(max-width:640px){.legal-table{display:block;overflow-x:auto}}