:root{--color-bg:#0A0A0A;--color-text:#FFFFFF;--color-accent:#e24c3a;--color-secondary:#5334a4;--color-gray:#1A1A1A;--color-white:#FFFFFF;--color-dark:#000000;--font-heading:'Poppins',-apple-system,BlinkMacSystemFont,sans-serif;--font-body:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:4rem;--spacing-xl:6rem;--spacing-2xl:8rem;--container-max:1440px;--container-padding:2rem;--transition-fast:0.2s ease;--transition-base:0.3s ease;--transition-slow:0.5s ease;--radius-sm:0.5rem;--radius-md:1rem;--radius-lg:1.5rem;--radius-full:9999px;--shadow-sm:0 2px 8px rgba(0, 0, 0, 0.08);--shadow-md:0 4px 16px rgba(0, 0, 0, 0.12);--shadow-lg:0 8px 32px rgba(0, 0, 0, 0.16)}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}}body{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--color-text);background-color:var(--color-bg);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.2;margin-bottom:1rem}h1{font-size:clamp(2.5rem, 5vw, 4rem)}h2{font-size:clamp(2rem, 4vw, 3rem)}h3{font-size:clamp(1.5rem, 3vw, 2rem)}h4{font-size:1.25rem}p{margin-bottom:1rem}a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent)}img{max-width:100%;height:auto;display:block}.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--container-padding)}.section{padding:var(--spacing-2xl) 0}.section--dark{background-color:var(--color-dark);color:var(--color-bg)}.section__header{text-align:center;margin-bottom:var(--spacing-lg)}.section__title{margin-bottom:var(--spacing-sm)}.section__subtitle{font-size:1.125rem;color:var(--color-accent);max-width:600px;margin:0 auto}.section__cta{text-align:center;margin-top:var(--spacing-lg)}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .9rem;font-family:var(--font-heading);font-size:.8rem;font-weight:500;border:1px solid transparent;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-base);text-decoration:none}.btn--primary{background-color:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}.btn--primary:hover{background-color:transparent;color:var(--color-accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn--outline{background-color:transparent;color:var(--color-text);border-color:var(--color-text)}.btn--outline:hover{background-color:var(--color-text);color:var(--color-bg)}.btn--large{padding:.6rem 1.1rem;font-size:.85rem}.btn--small{padding:.625rem 1.25rem;font-size:.875rem}.badge{display:inline-block;padding:.375rem .875rem;font-size:.875rem;font-weight:500;border-radius:var(--radius-full);background-color:var(--color-gray);color:var(--color-text)}.badge--accent{background-color:var(--color-accent);color:var(--color-white)}.badge--warning{background-color:#f59e0b;color:var(--color-white)}.nav{position:fixed;top:0;left:0;right:0;z-index:99999999;background-color:var(--color-bg);border-bottom:1px solid var(--color-gray);backdrop-filter:blur(10px);transition:transform var(--transition-base)}.nav.nav--hidden{transform:translateY(-100%)}.nav__wrapper{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}.nav__logo-text{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--color-accent)}.nav__menu{display:flex;align-items:center;gap:2rem}.nav__list{display:flex;gap:2rem;list-style:none}.nav__link{font-weight:500;position:relative}.nav__link::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background-color:var(--color-accent);transition:width var(--transition-base)}.nav__link.active::after,.nav__link:hover::after{width:100%}.nav__toggle{display:none;flex-direction:column;gap:4px;background:0 0;border:none;cursor:pointer;padding:.5rem}.nav__toggle span{width:24px;height:2px;background-color:var(--color-text);transition:all var(--transition-base)}.theme-toggle{background:0 0;border:none;cursor:pointer;padding:.5rem;color:var(--color-text);transition:transform var(--transition-fast)}.theme-toggle:hover{transform:rotate(20deg)}.theme-toggle__icon--dark{display:none}[data-theme=dark] .theme-toggle__icon--light{display:none}[data-theme=dark] .theme-toggle__icon--dark{display:block}.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding-top:80px;overflow:hidden}.hero__bg{position:absolute;inset:0;z-index:-1}.hero__bg-gradient{position:absolute;inset:0;background:linear-gradient(135deg,#e24c3a 0,#5334a4 25%,#e24c3a 50%,#5334a4 75%,#e24c3a 100%);background-size:400% 400%;animation:gradientShift 15s ease infinite;opacity:.15}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}}.hero__curve{width:100%;height:100%}.hero__content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);align-items:center}.hero__title{margin-bottom:var(--spacing-md)}.hero__title .accent{color:var(--color-accent)}.hero__subtitle{font-size:1.25rem;margin-bottom:var(--spacing-lg);color:var(--color-text);opacity:.8}.hero__cta{display:flex;gap:1rem;margin-bottom:var(--spacing-md)}.hero__social-proof{display:flex;align-items:center;gap:1rem}.rating{display:flex;align-items:center;gap:.5rem}.rating__stars{display:flex;gap:.25rem}.rating__text{font-size:.875rem;font-weight:500}.hero__image-wrapper{position:relative;border-radius:30px;overflow:hidden;background:linear-gradient(135deg,rgba(226,76,58,.1),rgba(83,52,164,.1));padding:8px;box-shadow:0 20px 60px rgba(226,76,58,.3),0 0 0 1px rgba(226,76,58,.1),inset 0 0 0 1px rgba(255,255,255,.1);transition:all .5s cubic-bezier(.4, 0, .2, 1)}.hero__image-wrapper::before{content:'';position:absolute;inset:0;border-radius:30px;padding:2px;background:linear-gradient(135deg,#e24c3a,#5334a4,#e24c3a);background-size:200% 200%;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:borderGlow 3s ease infinite;opacity:.6;pointer-events:none}@keyframes borderGlow{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}.hero__image-wrapper:hover{transform:translateY(-12px) scale(1.02);box-shadow:0 30px 80px rgba(226,76,58,.5),0 0 0 1px rgba(226,76,58,.2),inset 0 0 0 1px rgba(255,255,255,.2)}.hero__image-wrapper:hover::before{opacity:1}.hero__slider-container{position:relative;width:100%;height:100%;min-height:500px;background-color:#0a0a0a;background-image:linear-gradient(135deg,rgba(10,10,10,.8),rgba(26,26,26,.6)),url('../img/hero/slide-1.jpg');background-size:cover;background-position:center;border-radius:22px;overflow:hidden;aspect-ratio:16/9}.hero__slider-container::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 30% 50%,rgba(226,76,58,.15),transparent 60%),radial-gradient(circle at 70% 50%,rgba(83,52,164,.15),transparent 60%);pointer-events:none;z-index:1}.hero__slide{position:absolute;inset:0;opacity:0;transform:scale(1.1);transition:opacity .8s cubic-bezier(.4, 0, .2, 1),transform .8s cubic-bezier(.4, 0, .2, 1);will-change:opacity,transform;z-index:0}.hero__slide.active{opacity:1;transform:scale(1);z-index:1}.hero__slide img{width:100%;height:100%;min-height:500px;display:block;object-fit:cover;image-rendering:-webkit-optimize-contrast;filter:brightness(.95) contrast(1.05);transition:transform 5s ease-out}.hero__slide:first-child{opacity:1;z-index:1;transform:scale(1)}.hero__slider-img{width:100%;height:100%;min-height:500px;display:block;object-fit:cover;image-rendering:-webkit-optimize-contrast;filter:brightness(.95) contrast(1.05);transition:opacity .3s ease;opacity:0}.hero__slide.active img{animation:kenBurns 10s ease-out forwards}@keyframes kenBurns{0%{transform:scale(1)}100%{transform:scale(1.08)}}.hero__slider-dots{position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);display:flex;gap:1rem;z-index:10;background:rgba(10,10,10,.4);backdrop-filter:blur(10px);padding:.75rem 1.5rem;border-radius:50px;border:1px solid rgba(255,255,255,.1)}.hero__dot{position:relative;width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.3);border:none;cursor:pointer;transition:all .4s cubic-bezier(.4, 0, .2, 1);padding:0;overflow:hidden}.hero__dot::before{content:'';position:absolute;inset:0;border-radius:50%;background:linear-gradient(135deg,#e24c3a,#5334a4);opacity:0;transform:scale(0);transition:all .4s cubic-bezier(.4, 0, .2, 1)}.hero__dot:hover{background:rgba(255,255,255,.5);transform:scale(1.3)}.hero__dot.active{width:32px;border-radius:10px;background:0 0}.hero__dot.active::before{opacity:1;transform:scale(1)}.hero__dot.active::after{content:'';position:absolute;inset:0;border-radius:10px;background:linear-gradient(135deg,#e24c3a,#5334a4);animation:dotPulse 2s ease-in-out infinite}@keyframes dotPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.95)}}.hero__slider-arrow{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;border-radius:50%;background:rgba(10,10,10,.5);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);color:#fff;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4, 0, .2, 1);opacity:0}.hero__slider-container:hover .hero__slider-arrow{opacity:1}.hero__slider-arrow:hover{background:rgba(226,76,58,.9);border-color:#e24c3a;transform:translateY(-50%) scale(1.1)}.hero__slider-arrow--prev{left:1.5rem}.hero__slider-arrow--next{right:1.5rem}.hero__slider-arrow svg{width:24px;height:24px}.services__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--spacing-md)}.service-card{background-color:var(--color-white);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.service-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.service-card__image{aspect-ratio:4/3;overflow:hidden}.service-card__image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.service-card:hover .service-card__image img{transform:scale(1.05)}.service-card__content{padding:var(--spacing-md)}.service-card__title{margin-bottom:var(--spacing-sm)}.service-card__description{margin-bottom:var(--spacing-md);color:var(--color-text);opacity:.7}.service-card__meta{display:flex;justify-content:space-between;margin-bottom:var(--spacing-md);font-size:.875rem;color:var(--color-accent);font-weight:500}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.feature{text-align:center}.feature__icon{margin:0 auto var(--spacing-md);width:64px;height:64px;display:flex;align-items:center;justify-content:center}.feature__title{margin-bottom:var(--spacing-sm)}.feature__description{opacity:.8}.footer{background-color:var(--color-dark);color:var(--color-bg);padding:var(--spacing-xl) 0 var(--spacing-md)}.footer__content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.footer__title{color:var(--color-accent);margin-bottom:var(--spacing-sm)}.footer__text{margin-bottom:var(--spacing-md);opacity:.8}.footer__social{display:flex;gap:1rem}.footer__social-link{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background-color:var(--color-accent);color:var(--color-white);transition:all var(--transition-fast)}.footer__social-link:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.footer__heading{margin-bottom:var(--spacing-md);color:var(--color-accent)}.footer__links{list-style:none}.footer__links li{margin-bottom:.5rem}.footer__links a{opacity:.8;transition:opacity var(--transition-fast)}.footer__links a:hover{opacity:1;color:var(--color-accent)}.footer__address{font-style:normal;opacity:.8}.footer__bottom{text-align:center;padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1);opacity:.6}