@font-face {font-family:"Manrope";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/font-1.ttf") format("truetype");}
@font-face {font-family:"Manrope";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/font-2.ttf") format("truetype");}
@font-face {font-family:"Manrope";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/font-3.ttf") format("truetype");}
@font-face {font-family:"Manrope";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/font-4.ttf") format("truetype");}
@font-face {font-family:"Manrope";font-style:normal;font-weight:800;font-display:swap;src:url("../fonts/font-5.ttf") format("truetype");}
@font-face {font-family:"Montserrat";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/font-6.ttf") format("truetype");}
@font-face {font-family:"Montserrat";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/font-7.ttf") format("truetype");}
@font-face {font-family:"Montserrat";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/font-8.ttf") format("truetype");}
@font-face {font-family:"Montserrat";font-style:normal;font-weight:800;font-display:swap;src:url("../fonts/font-9.ttf") format("truetype");}
:root{--aivion-background:#f7f9fb;--aivion-foreground:#14222a;--aivion-card:#eff3f5;--aivion-card-foreground:#14222a;--aivion-popover:#ffffff;--aivion-popover-foreground:#14222a;--aivion-primary:#257f57;--aivion-primary-rgb:37,127,87;--aivion-primary-foreground:#ffffff;--aivion-secondary:#e8ecef;--aivion-secondary-foreground:#14222a;--aivion-muted:#e2e6eb;--aivion-muted-foreground:#68717d;--aivion-accent:#36a15f;--aivion-accent-foreground:#ffffff;--aivion-destructive:#ef4444;--aivion-destructive-foreground:#ffffff;--aivion-border:#dbe1e6;--aivion-input:#dbe1e6;--aivion-ring:#257f57;--aivion-radius:12px;--aivion-shadow-soft:0 8px 32px rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.8);--aivion-shadow-subtle:0 4px 24px rgba(0,0,0,.04), inset 0 1px 0 rgba(255,255,255,.6);--aivion-container:1240px;--aivion-tokens-bg:210 20% 98%;--aivion-tokens-fg:215 35% 12%;--aivion-tokens-border:215 15% 88%;--aivion-tokens-primary:152 55% 32%;--aivion-tokens-muted-fg:215 15% 48%;}
html{scroll-behavior:smooth}*,*:before,*:after{box-sizing:border-box}body.aivion-body{margin:0;font-family:"Manrope",sans-serif;background:var(--aivion-background);color:var(--aivion-foreground)}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}h1,h2,h3,h4,h5,h6{font-family:"Montserrat",sans-serif;letter-spacing:.04em;margin:0}p{margin:0}.aivion-site-shell{min-height:100vh;background:var(--aivion-background)}.aivion-container{width:min(calc(100% - 48px),var(--aivion-container));margin:0 auto;position:relative;z-index:2}.aivion-header{position:fixed;top:12px;left:50%;transform:translateX(-50%);z-index:50;width:min(calc(100% - 2.5rem),72rem);border:1px solid hsl(var(--aivion-tokens-border));border-radius:12px;background:hsl(var(--aivion-tokens-bg) / 0.5);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:var(--aivion-shadow-subtle);transition:background .5s ease,backdrop-filter .5s ease,box-shadow .5s ease,-webkit-backdrop-filter .5s ease}.aivion-header.is-solid,.aivion-header.is-open{background:hsl(var(--aivion-tokens-bg) / 0.8);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);box-shadow:var(--aivion-shadow-soft)}body.admin-bar .aivion-header{top:44px}@media screen and (max-width:782px){body.admin-bar .aivion-header{top:58px}}.aivion-header__inner{display:flex;align-items:center;justify-content:space-between;padding:12px 8px}@media (min-width:1024px){.aivion-header__inner{padding-left:12px;padding-right:12px}}.aivion-logo{height:32px;width:auto}.aivion-logo--footer{height:40px}.aivion-nav{display:flex;align-items:center;gap:24px}.aivion-nav--mobile{display:none;flex-direction:column;align-items:flex-start;padding:0 20px 20px;border-top:1px solid hsl(var(--aivion-tokens-border));gap:14px}.aivion-nav__link,.aivion-nav__mobile-link,.aivion-footer__nav a{position:relative;font-size:14px;font-weight:500;transition:color .3s ease,transform .3s ease}.aivion-nav__link,.aivion-nav__mobile-link{color:hsl(var(--aivion-tokens-fg) / 0.7);letter-spacing:.025em}.aivion-footer__nav a{color:rgba(20,34,42,.72)}.aivion-nav__link:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:hsl(var(--aivion-tokens-primary));transform:scaleX(0);transform-origin:right center;transition:transform .3s ease}.aivion-nav__link:hover:after{transform:scaleX(1);transform-origin:left center}.aivion-nav__link:hover,.aivion-nav__mobile-link:hover{color:hsl(var(--aivion-tokens-fg))}.aivion-footer__nav a:hover{color:var(--aivion-foreground)}.aivion-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:none;border-radius:8px;background:var(--aivion-primary);padding:14px 32px;font-size:14px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--aivion-primary-foreground);transition:transform .3s ease,box-shadow .3s ease}.aivion-button:hover{transform:translateY(-1px);box-shadow:0 12px 32px rgba(var(--aivion-primary-rgb),.24)}.aivion-button--header{padding:8px 20px;border-radius:calc(.5rem - 2px);background:hsl(var(--aivion-tokens-primary));color:#fff;font-size:.75rem;font-weight:600;line-height:1;letter-spacing:.1em;transition:box-shadow .3s ease,transform .3s ease,background .3s ease}.aivion-button--header:visited{color:#fff}.aivion-nav .aivion-button--header{color:#fff}.aivion-button--header:hover{color:#fff;transform:none;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1),0 12px 28px -8px hsl(var(--aivion-tokens-primary) / .35)}.aivion-button--mobile{width:100%}.aivion-menu-toggle{display:none;border:none;background:none;color:hsl(var(--aivion-tokens-fg) / 0.7);padding:4px;cursor:pointer;transition:color .5s ease}.aivion-menu-toggle:hover{color:hsl(var(--aivion-tokens-fg))}.aivion-menu-toggle__icon--close{display:none}.aivion-header.is-open .aivion-menu-toggle__icon--open{display:none}.aivion-header.is-open .aivion-menu-toggle__icon--close{display:block}.aivion-section{position:relative;padding:96px 0;overflow:hidden}.aivion-section--carded{background:var(--aivion-card)}.aivion-hero{position:relative;height:100vh;min-height:600px;overflow:hidden;background:var(--aivion-background)}.aivion-orb{position:absolute;inset:0;z-index:0;overflow:hidden}.aivion-particles{position:absolute;inset:0;z-index:0;overflow:hidden}.aivion-aurora{position:absolute;inset:0;z-index:0;overflow:hidden}.aivion-section--about{padding:4rem 0}@media (min-width:640px){.aivion-section--about{padding:6rem 0}}@media (min-width:1024px){.aivion-section--about{padding:8rem 0}}.aivion-about-overlay{position:absolute;inset:0;z-index:1;background:var(--aivion-background);opacity:.4;pointer-events:none}.aivion-orb canvas,.aivion-particles canvas,.aivion-aurora canvas,.aivion-electric-border canvas{display:block;width:100%!important;height:100%!important}.aivion-hero__overlay{position:absolute;inset:0;background:linear-gradient(to top,hsl(var(--aivion-tokens-bg) / .8),hsl(var(--aivion-tokens-bg) / 0) 50%,hsl(var(--aivion-tokens-bg) / .3));z-index:1;pointer-events:none}.aivion-hero__content{height:100%;display:flex;align-items:center;justify-content:center;text-align:center;pointer-events:none}.aivion-hero__content>div{max-width:48rem;display:flex;flex-direction:column;align-items:center}.aivion-hero__content .aivion-hero__cta{pointer-events:auto}.aivion-hero__title{font-size:clamp(1.5rem,4vw,3rem);line-height:1.15;font-weight:700;letter-spacing:-0.025em;color:hsl(var(--aivion-tokens-fg))}.aivion-hero__highlight{color:hsl(var(--aivion-tokens-primary))}.aivion-hero__subtitle{margin-top:16px;max-width:32rem;font-size:clamp(.75rem,1.5vw,1rem);line-height:1.625;letter-spacing:.025em;color:hsl(var(--aivion-tokens-fg) / 0.8)}@media (min-width:640px){.aivion-hero__subtitle{margin-top:20px}}@media (min-width:1024px){.aivion-hero__subtitle{font-size:1rem}}.aivion-hero__cta{margin-top:24px;display:inline-flex;align-items:center;gap:12px;font-size:.875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:hsl(var(--aivion-tokens-fg));transition:color .3s ease}@media (min-width:640px){.aivion-hero__cta{margin-top:32px;gap:16px}}.aivion-hero__cta:hover{color:hsl(var(--aivion-tokens-primary))}.aivion-hero__cta-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;background:hsl(var(--aivion-tokens-primary));color:#fff;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1),0 10px 30px -5px hsl(var(--aivion-tokens-primary) / .2);transition:transform .3s ease,box-shadow .3s ease}@media (min-width:640px){.aivion-hero__cta-icon{width:48px;height:48px}}.aivion-hero__cta:hover .aivion-hero__cta-icon{transform:scale(1.1);box-shadow:0 10px 30px -5px hsl(var(--aivion-tokens-primary) / .4)}.aivion-section-heading{max-width:740px;margin:0 auto 64px;text-align:center}.aivion-section-heading--left{text-align:left;width:fit-content}.aivion-section-heading h2{font-size:clamp(1.9rem,3vw,3rem);font-weight:700;line-height:1.15}.aivion-section-heading p{margin-top:18px;font-size:1rem;line-height:1.7;color:var(--aivion-muted-foreground)}.aivion-heading-bar{width:64px;height:4px;border-radius:999px;background:var(--aivion-primary);margin:24px auto 0}.aivion-services-grid{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.aivion-services-grid__spotlight{position:absolute;inset:0;pointer-events:none;background:radial-gradient(600px circle at var(--spot-x,50%) var(--spot-y,50%),rgba(var(--aivion-primary-rgb),.12),transparent 40%);z-index:0}.aivion-section--services .aivion-container{padding-left:1.5rem;padding-right:1.5rem}@media (min-width:1024px){.aivion-section--services .aivion-container{padding-left:3rem;padding-right:3rem}}.aivion-section--services .aivion-section-heading{max-width:none;width:100%;margin-bottom:4rem}.aivion-section--services .aivion-section-heading h2{font-size:clamp(1.875rem,4vw,2.25rem);font-weight:700;letter-spacing:-0.025em;line-height:1.15;color:hsl(var(--aivion-tokens-fg))}.aivion-section--services .aivion-section-heading p{margin-top:1rem;max-width:42rem;margin-left:auto;margin-right:auto;font-size:1rem;line-height:1.625;color:hsl(215 15% 48%)}.aivion-service-card__icon{display:flex;align-items:center;justify-content:flex-start;margin-bottom:1.25rem;color:hsl(var(--aivion-tokens-primary))}.aivion-service-card__icon .aivion-icon{width:1.75rem;height:1.75rem;stroke-width:1.5}.aivion-service-card h3{font-size:1.25rem;font-weight:600;letter-spacing:-0.025em;line-height:1.25;color:hsl(var(--aivion-tokens-fg))}.aivion-service-card .aivion-service-card__content>p{margin-top:.75rem;font-size:.875rem;line-height:1.625;color:hsl(215 15% 48%)}.aivion-service-card,.aivion-product-card__inner,.aivion-testimonial-card,.aivion-about-card{background:rgba(0,0,0,.03);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 32px rgba(0,0,0,.06),inset 0 1px 0 rgba(255,255,255,.6)}.aivion-about-card{background:rgba(255,255,255,.7);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border:1px solid rgba(0,0,0,.08);box-shadow:0 8px 32px rgba(0,0,0,.08),inset 0 1px 0 rgba(255,255,255,.8)}.aivion-service-card,.aivion-product-card,.aivion-testimonial-card,.aivion-case-card,.aivion-industry-card{transition:transform .3s ease,box-shadow .3s ease}.aivion-service-card:hover{transform:translateY(-4px)}.aivion-product-card:hover,.aivion-testimonial-card:hover,.aivion-industry-card:hover{transform:translateY(-6px)}.aivion-service-card{position:relative;overflow:hidden;border-radius:12px;z-index:1}.aivion-service-card:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:radial-gradient(circle at var(--mouse-x,50%) var(--mouse-y,50%),var(--service-border),transparent 60%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:2}.aivion-service-card:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at var(--mouse-x,50%) var(--mouse-y,50%),var(--service-border),transparent 60%);opacity:0;transition:opacity .3s ease;pointer-events:none;mix-blend-mode:overlay;z-index:1}.aivion-service-card:hover:before{opacity:1}.aivion-service-card:hover:after{opacity:.15}.aivion-service-card__image-wrap{aspect-ratio:16/9;overflow:hidden}.aivion-service-card__image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.aivion-service-card:hover .aivion-service-card__image{transform:scale(1.05)}.aivion-service-card__content{position:relative;z-index:2;padding:32px}.aivion-product-card h3,.aivion-case-card h3,.aivion-industry-card h3,.aivion-process-item h3,.aivion-case-cta h3,.aivion-contact-wrap h2{font-size:clamp(1.2rem,1.8vw,1.5rem);font-weight:700;line-height:1.2}.aivion-product-card p,.aivion-case-card p,.aivion-industry-card p,.aivion-process-item p,.aivion-contact-wrap p,.aivion-footer p,.aivion-footer a,.aivion-case-cta p,.aivion-testimonial-card p{color:var(--aivion-muted-foreground);line-height:1.75;font-size:.95rem}.aivion-about-wrap{max-width:80rem;margin:0 auto;padding:0 1rem}@media (min-width:640px){.aivion-about-wrap{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.aivion-about-wrap{padding-left:3rem;padding-right:3rem}}.aivion-about-card{max-width:48rem;margin:0 auto;border-radius:8px;padding:1.5rem}@media (min-width:640px){.aivion-about-card{padding:2.5rem}}@media (min-width:1024px){.aivion-about-card{padding:4rem}}.aivion-about__eyebrow,.aivion-process-item__step,.aivion-case-card__label,.aivion-product-card__tagline,.aivion-footer h4{font-size:.78rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--aivion-muted-foreground)}.aivion-about__eyebrow{font-size:.875rem;font-weight:600}.aivion-about__title{margin-top:2rem;font-size:1.5rem;font-weight:700;letter-spacing:-.025em;line-height:1.15;color:var(--aivion-foreground)}@media (min-width:640px){.aivion-about__title{font-size:2.25rem}}@media (min-width:1024px){.aivion-about__title{font-size:3rem}}.aivion-about__quote{margin:0;margin-bottom:30px;margin-top:2rem;border-left:4px solid hsl(var(--aivion-tokens-primary));padding-left:1rem;font-size:16px;font-weight:500;font-style:italic;line-height:1.625;letter-spacing:normal;color:hsl(var(--aivion-tokens-muted-fg))}@media (min-width:640px){.aivion-about__quote{padding-left:1.5rem;font-size:20px}}.aivion-about__badges{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:1rem}@media (min-width:640px){.aivion-about__badges{gap:2rem}}.aivion-about__badge{font-size:.875rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--aivion-foreground);transition:transform .3s ease;cursor:default}.aivion-about__badge:hover{transform:translateY(-4px)}.aivion-about__badge:after{content:"";display:block;width:0;height:2px;margin-top:8px;background:hsl(var(--aivion-tokens-primary));transition:width .6s ease-out}.aivion-reveal.is-visible .aivion-about__badge:nth-child(1):after{width:40px;transition-delay:.3s}.aivion-reveal.is-visible .aivion-about__badge:nth-child(2):after{width:40px;transition-delay:.4s}.aivion-reveal.is-visible .aivion-about__badge:nth-child(3):after{width:40px;transition-delay:.5s}.aivion-products-grid,.aivion-industries-grid,.aivion-testimonials-grid{display:grid;gap:24px}.aivion-products-grid,.aivion-industries-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.aivion-testimonials-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.aivion-product-card{position:relative;border-radius:12px}.aivion-product-card__inner{position:relative;z-index:2;border-radius:12px;padding:24px;height:100%}.aivion-product-card__icon,.aivion-industry-card__icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:rgba(var(--aivion-primary-rgb),0.1);background:color-mix(in srgb,var(--aivion-primary) 10%,transparent);color:var(--aivion-primary);margin-bottom:16px;transition:all .3s ease}.aivion-product-card__icon .aivion-icon,.aivion-industry-card__icon .aivion-icon{color:inherit;stroke:currentColor;stroke-width:2}.aivion-product-card:hover .aivion-product-card__icon,.aivion-industry-card:hover .aivion-industry-card__icon{transform:scale(1.1) rotate(5deg);box-shadow:0 0 24px rgba(var(--aivion-primary-rgb),.28)}.aivion-product-card__tagline{margin-top:6px;color:var(--aivion-primary);letter-spacing:.18em}.aivion-product-card p{margin-top:14px}.aivion-electric-border{position:absolute;inset:-60px;pointer-events:none;opacity:0;transition:opacity .3s ease}.aivion-product-card:hover .aivion-electric-border{opacity:1}.aivion-industry-card{text-align:center;padding:0 8px}.aivion-industry-card__icon{width:64px;height:64px;border-radius:999px;margin:0 auto 18px}.aivion-process-wrap{max-width:980px}.aivion-process-list{display:flex;flex-direction:column;gap:0;width:fit-content;margin:0 auto}.aivion-process-item{display:flex;gap:24px}.aivion-process-item__rail{position:relative;display:flex;flex-direction:column;align-items:center;padding-top:32px}.aivion-process-item__circle{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:999px;border:2px solid var(--aivion-border);background:rgba(var(--aivion-primary-rgb),.08);color:var(--aivion-muted-foreground);transition:all .5s ease}.aivion-process-item.is-active .aivion-process-item__circle{border-color:var(--aivion-primary);background:rgba(var(--aivion-primary-rgb),.18);color:var(--aivion-primary);box-shadow:0 0 24px rgba(var(--aivion-primary-rgb),.35)}.aivion-process-item__line{width:1px;background:var(--aivion-border);transition:background .5s ease}.aivion-process-item__line--top{position:absolute;bottom:calc(100% - 8px);height:32px}.aivion-process-item__line--bottom{flex:1;min-height:96px}.aivion-process-item.is-past .aivion-process-item__line,.aivion-process-item.is-active .aivion-process-item__line--top{background:var(--aivion-primary)}.aivion-process-item__content{padding:32px 0;max-width:560px;transition:opacity .5s ease}.aivion-process-item:not(.is-active):not(.is-past) .aivion-process-item__content{opacity:.3}.aivion-process-item.is-past .aivion-process-item__content{opacity:.6}.aivion-process-item__content p:last-child{margin-top:10px}.aivion-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.aivion-case-card{border:1px solid var(--aivion-border);background:var(--aivion-card);border-radius:16px;padding:32px}.aivion-case-card__industry{display:inline-block;border-radius:999px;background:rgba(var(--aivion-primary-rgb),.1);padding:6px 12px;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--aivion-primary)}.aivion-case-card__copy{margin-top:24px;display:grid;gap:16px}.aivion-case-card__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px;padding-top:18px;border-top:1px solid var(--aivion-border);text-align:center}.aivion-case-card__metrics strong{display:block;font-size:2rem;font-family:"Montserrat",sans-serif;color:var(--aivion-primary);line-height:1.1}.aivion-case-card__metrics span{display:block;margin-top:4px;font-size:.78rem;color:var(--aivion-muted-foreground)}.aivion-case-cta{margin-top:64px;text-align:center;border-radius:16px;background:rgba(var(--aivion-primary-rgb),.1);border:1px solid var(--aivion-border);padding:48px}.aivion-case-cta p{max-width:620px;margin:18px auto 0}.aivion-case-cta .aivion-button{margin-top:32px}.aivion-testimonial-card{position:relative;border-radius:16px;padding:32px}.aivion-testimonial-card__quote-icon{color:rgba(var(--aivion-primary-rgb),.3);margin-bottom:16px}.aivion-testimonial-card__quote{font-style:italic}.aivion-testimonial-card__meta{margin-top:24px;padding-top:18px;border-top:1px solid var(--aivion-border);display:flex;flex-direction:column;gap:2px}.aivion-testimonial-card__meta strong{font-size:.96rem;color:var(--aivion-foreground)}.aivion-testimonial-card__meta span{font-size:.82rem;color:var(--aivion-muted-foreground)}.aivion-contact-wrap{max-width:780px}.aivion-contact-wrap p{margin-top:12px;max-width:620px}.aivion-contact-form{margin-top:40px;display:grid;gap:28px}.aivion-contact-form input,.aivion-contact-form textarea{width:100%;border:none;border-bottom:1px solid var(--aivion-border);background:transparent;padding:12px 0;color:var(--aivion-foreground);outline:none;transition:border-color .3s ease}.aivion-contact-form input:focus,.aivion-contact-form textarea:focus{border-bottom-color:var(--aivion-primary)}.aivion-contact-form input::placeholder,.aivion-contact-form textarea::placeholder{color:var(--aivion-muted-foreground)}.aivion-contact-form .aivion-button{justify-self:start}.aivion-contact-meta{display:flex;flex-wrap:wrap;align-items:center;gap:28px;margin-top:40px;padding-top:30px;border-top:1px solid var(--aivion-border)}.aivion-contact-meta a,.aivion-contact-meta div{display:flex;align-items:center;gap:10px;font-size:1rem;color:var(--aivion-muted-foreground)}.aivion-footer{border-top:1px solid var(--aivion-border);background:var(--aivion-background);padding:40px 0 0}.aivion-footer__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding-bottom:24px}.aivion-footer__socials{display:flex;gap:16px;margin-top:18px}.aivion-footer__socials a{color:var(--aivion-muted-foreground);transition:all .3s ease}.aivion-footer__socials a:hover{transform:scale(1.15);color:var(--aivion-primary)}.aivion-footer h4{margin-bottom:16px;color:var(--aivion-foreground)}.aivion-footer__nav,.aivion-footer__contact{display:flex;flex-direction:column;gap:10px}.aivion-footer__contact div{display:flex;gap:10px;align-items:flex-start}.aivion-footer__bottom{margin-top:24px;padding:24px 0;border-top:1px solid var(--aivion-border);text-align:center;display:flex;flex-direction:column;gap:6px}.aivion-footer__bottom p{font-size:.75rem}.aivion-footer__bottom a{color:var(--aivion-primary)}.aivion-icon{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.aivion-reveal{opacity:0;transform:translateY(24px);filter:blur(8px);transition:opacity .8s ease,transform .8s ease,filter .8s ease}.aivion-reveal.is-visible{opacity:1;transform:none;filter:blur(0)}.aivion-is-empty{display:none!important}@media (max-width:1100px){.aivion-products-grid,.aivion-industries-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.aivion-testimonials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1023px){.aivion-nav--desktop{display:none}.aivion-menu-toggle{display:block}.aivion-header.is-open .aivion-nav--mobile{display:flex}.aivion-services-grid,.aivion-case-grid,.aivion-footer__grid,.aivion-testimonials-grid{grid-template-columns:1fr}.aivion-products-grid,.aivion-industries-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.aivion-header{width:min(calc(100% - 2.5rem),72rem)}}@media (max-width:680px){.aivion-container{width:min(calc(100% - 32px),var(--aivion-container))}.aivion-section{padding:80px 0}.aivion-hero{min-height:500px}.aivion-products-grid,.aivion-industries-grid,.aivion-testimonials-grid{grid-template-columns:1fr}.aivion-process-item{gap:16px}.aivion-contact-meta{flex-direction:column;align-items:flex-start}}

/* #products — alineado con Lovable ProductsShowcase (py-24, max-w-7xl, grid, glass-hover, tipografía) */
#products.aivion-section{padding:6rem 0}
#products .aivion-container{width:100%;max-width:80rem;padding-left:1.5rem;padding-right:1.5rem}
@media (min-width:1024px){#products .aivion-container{padding-left:3rem;padding-right:3rem}}
#products .aivion-section-heading{max-width:none;width:100%;margin:0 auto 4rem;text-align:center}
#products .aivion-section-heading h2{font-size:1.875rem;font-weight:700;letter-spacing:-0.025em;line-height:1.2;color:hsl(var(--aivion-tokens-fg));font-family:"Montserrat",sans-serif}
@media (min-width:640px){#products .aivion-section-heading h2{font-size:2.25rem}}
#products .aivion-section-heading p{margin-top:1rem;max-width:42rem;margin-left:auto;margin-right:auto;font-size:1rem;line-height:1.625;color:hsl(215 15% 48%)}
#products .aivion-products-grid{gap:1.5rem;grid-template-columns:1fr}
@media (min-width:640px){#products .aivion-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){#products .aivion-products-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
#products .aivion-product-card:hover{transform:translateY(-8px)}
#products .aivion-product-card__inner{border-radius:0.75rem;padding:1.5rem;transition:background .3s ease,border-color .3s ease,box-shadow .3s ease}
#products .aivion-product-card:hover .aivion-product-card__inner{background:rgba(0,0,0,.05);border-color:rgba(0,0,0,.1);box-shadow:0 12px 40px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.6),0 0 20px rgba(58,158,110,.1)}
#products .aivion-product-card__icon{width:48px;height:48px;min-width:48px;min-height:48px;max-width:48px;max-height:48px;padding:0;border-radius:8px;margin-bottom:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;flex-grow:0;box-sizing:border-box;background:#ced9d6;color:rgba(37,126,85,1);transition:transform .3s cubic-bezier(.34,1.56,.64,1)}
#products .aivion-product-card__icon .aivion-icon{width:24px;height:24px;min-width:24px;min-height:24px;flex-shrink:0;color:rgba(37,126,85,1);stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
#products .aivion-product-card:hover .aivion-product-card__icon{transform:scale(1.1) rotate(10deg)}
#products .aivion-product-card h3{font-size:1.125rem;font-weight:700;letter-spacing:-0.025em;line-height:1.25;color:hsl(var(--aivion-tokens-fg));font-family:"Montserrat",sans-serif}
#products .aivion-product-card__tagline{margin-top:0.25rem;font-size:0.75rem;font-weight:500;line-height:1rem;text-transform:uppercase;letter-spacing:0.05em;color:rgba(37,126,85,1)}
#products .aivion-product-card__desc{margin-top:0.75rem;font-size:0.875rem;line-height:1.625;color:hsl(215 15% 48%)}

/* #industries — alineado con Lovable IndustriesStrip (bg-card py-24, max-w-7xl, grid gap-8, icon circle, tipografía) */
#industries.aivion-section{padding:6rem 0}
#industries .aivion-container{width:100%;max-width:80rem;padding-left:1.5rem;padding-right:1.5rem}
@media (min-width:1024px){#industries .aivion-container{padding-left:3rem;padding-right:3rem}}
#industries .aivion-section-heading{max-width:none;width:100%;margin:0 auto 4rem;text-align:center}
#industries .aivion-section-heading h2{font-size:1.875rem;font-weight:700;letter-spacing:-0.025em;line-height:1.2;color:hsl(var(--aivion-tokens-fg));font-family:"Montserrat",sans-serif}
@media (min-width:640px){#industries .aivion-section-heading h2{font-size:2.25rem}}
#industries .aivion-section-heading p{margin-top:1rem;max-width:42rem;margin-left:auto;margin-right:auto;font-size:1rem;line-height:1.625;color:hsl(var(--aivion-tokens-muted-fg))}
#industries .aivion-industries-grid{gap:2rem;grid-template-columns:1fr}
@media (min-width:640px){#industries .aivion-industries-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){#industries .aivion-industries-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
#industries .aivion-industry-card{text-align:center;padding:0;cursor:default;background:transparent;border:none;box-shadow:none;backdrop-filter:none}
#industries .aivion-industry-card:hover{transform:translateY(-6px)}
#industries .aivion-industry-card__icon{width:64px;height:64px;min-width:64px;min-height:64px;margin:0 auto 1rem;border-radius:999px;background:hsl(var(--aivion-tokens-primary) / 0.1);color:hsl(var(--aivion-tokens-primary));display:flex;align-items:center;justify-content:center;transition:background .3s ease,transform .3s ease,box-shadow .3s ease}
#industries .aivion-industry-card:hover .aivion-industry-card__icon{background:hsl(var(--aivion-tokens-primary) / 0.2);transform:scale(1.15);box-shadow:0 0 24px 6px hsl(152 55% 32% / 0.4)}
#industries .aivion-industry-card__icon .aivion-icon{width:1.75rem;height:1.75rem;color:inherit;stroke:currentColor}
#industries .aivion-industry-card h3{font-size:1.125rem;font-weight:600;letter-spacing:-0.025em;line-height:1.25;color:hsl(var(--aivion-tokens-fg));font-family:"Montserrat",sans-serif}
#industries .aivion-industry-card p{margin-top:0.5rem;font-size:0.875rem;line-height:1.5;color:hsl(var(--aivion-tokens-muted-fg))}

/* #process — alineado con Lovable ProcessSteps (bg-background py-24 lg:py-32, max-w-5xl, timeline, step opacity) */
#process.aivion-section{padding:6rem 0;overflow:visible}
@media (min-width:1024px){#process.aivion-section{padding:8rem 0}}
#process .aivion-container.aivion-process-wrap{width:100%;max-width:64rem;padding-left:1.5rem;padding-right:1.5rem}
@media (min-width:1024px){#process .aivion-container.aivion-process-wrap{padding-left:3rem;padding-right:3rem}}
#process .aivion-section-heading{margin-bottom:4rem;margin-left:0;margin-right:auto;width:fit-content}
#process .aivion-section-heading h2{font-size:1.875rem;font-weight:700;letter-spacing:-0.025em;line-height:1.2;color:hsl(var(--aivion-tokens-fg));font-family:"Montserrat",sans-serif}
@media (min-width:640px){#process .aivion-section-heading h2{font-size:2.25rem}}
#process .aivion-section-heading p{margin-top:1rem;max-width:42rem;font-size:1rem;line-height:1.625;color:hsl(var(--aivion-tokens-muted-fg))}
#process .aivion-process-list{position:relative;margin-left:0;margin-right:auto;width:100%;padding-left:0.5rem}
@media (min-width:640px){#process .aivion-process-list{width:fit-content;padding-left:0}}
#process .aivion-process-item{gap:1rem}
@media (min-width:640px){#process .aivion-process-item{gap:1.5rem}}
@media (min-width:1024px){#process .aivion-process-item{gap:2.5rem}}
#process .aivion-process-item__rail{padding-top:2rem;position:relative;display:flex;flex-direction:column;align-items:center}
#process .aivion-process-item__line{width:1px;min-width:1px;flex-shrink:0;background:hsl(var(--aivion-tokens-border));transition:background .5s ease}
#process .aivion-process-item.is-past .aivion-process-item__line,#process .aivion-process-item.is-active .aivion-process-item__line--top{background:hsl(var(--aivion-tokens-primary))}
#process .aivion-process-item__line--top{position:absolute;left:50%;transform:translateX(-50%);bottom:calc(100% - 8px);height:2rem}
#process .aivion-process-item__line--bottom{flex:1 1 auto;min-height:6rem;align-self:center}
#process .aivion-process-item:not(.aivion-is-empty):not(:has(~ .aivion-process-item:not(.aivion-is-empty))) .aivion-process-item__line--bottom{display:none!important}
#process .aivion-process-item__circle{width:2.5rem;height:2.5rem;min-width:2.5rem;min-height:2.5rem;background:hsl(var(--aivion-tokens-border) / 0.5);border-color:var(--aivion-border);color:hsl(var(--aivion-tokens-muted-fg));transition:background .5s ease,border-color .5s ease,color .5s ease,box-shadow .5s ease}
@media (min-width:640px){#process .aivion-process-item__circle{width:3rem;height:3rem;min-width:3rem;min-height:3rem}}
#process .aivion-process-item__circle .aivion-icon{width:1.25rem;height:1.25rem}
#process .aivion-process-item.is-past .aivion-process-item__circle{background:hsl(var(--aivion-tokens-primary) / 0.1);border-color:var(--aivion-primary);color:hsl(var(--aivion-tokens-primary))}
#process .aivion-process-item.is-active .aivion-process-item__circle{background:hsl(var(--aivion-tokens-primary) / 0.2);border-color:var(--aivion-primary);color:hsl(var(--aivion-tokens-primary));box-shadow:0 0 24px 6px hsl(152 55% 42% / 0.35)}
#process .aivion-process-item__content{padding-top:2rem;padding-bottom:2rem;max-width:28rem;transition:opacity .5s ease}
#process .aivion-process-item:not(.is-active):not(.is-past) .aivion-process-item__content{opacity:.3}
#process .aivion-process-item.is-past .aivion-process-item__content{opacity:.6}
#process .aivion-process-item.is-active .aivion-process-item__content{opacity:1}
#process .aivion-process-item__step{font-size:0.75rem;font-weight:700;letter-spacing:0.3em;text-transform:uppercase;color:hsl(var(--aivion-tokens-muted-fg));transition:color .5s ease}
#process .aivion-process-item.is-past .aivion-process-item__step,#process .aivion-process-item.is-active .aivion-process-item__step{color:hsl(var(--aivion-tokens-primary))}
#process .aivion-process-item__content h3{font-size:1.25rem;font-weight:700;letter-spacing:-0.025em;line-height:1.2;color:hsl(var(--aivion-tokens-fg) / 0.7);transition:color .5s ease}
@media (min-width:640px){#process .aivion-process-item__content h3{font-size:1.5rem}}
#process .aivion-process-item.is-active .aivion-process-item__content h3{color:hsl(var(--aivion-tokens-fg))}
#process .aivion-process-item__content p:last-child{margin-top:0.75rem;font-size:0.875rem;line-height:1.625;color:hsl(var(--aivion-tokens-muted-fg))}

/* Utilidades glass (Lovable) */
.aivion-glass{background:rgba(0,0,0,.03);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 32px rgba(0,0,0,.06),inset 0 1px 0 rgba(255,255,255,.6)}
.aivion-glass-hover{transition:background .3s ease,border-color .3s ease,box-shadow .3s ease}
.aivion-glass-hover:hover{background:rgba(0,0,0,.05);border-color:rgba(0,0,0,.1);box-shadow:0 12px 40px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.6),0 0 20px rgba(var(--aivion-primary-rgb),.1)}

/* #case-studies — alineado con Lovable CaseStudiesSection (py-16 lg:py-24 bg-background, max-w-7xl, grid 2 cols, cards rounded-xl border p-8, CTA box) */
#case-studies.aivion-section{padding:4rem 0;background:var(--aivion-background)}
@media (min-width:1024px){#case-studies.aivion-section{padding:6rem 0}}
#case-studies .aivion-container--case-studies{width:100%;max-width:80rem;padding-left:1.5rem;padding-right:1.5rem}
@media (min-width:1024px){#case-studies .aivion-container--case-studies{padding-left:3rem;padding-right:3rem}}
/* Encabezado: como Lovable — h2 a ancho completo del contenedor, subtítulo max-w-2xl centrado */
#case-studies .aivion-section-heading--case-studies{max-width:none;width:100%;margin:0 auto 3rem;text-align:center}
#case-studies .aivion-section-heading--case-studies h2{font-size:1.875rem;font-weight:700;letter-spacing:-0.025em;line-height:1.15;color:hsl(var(--aivion-tokens-fg));font-family:"Montserrat",sans-serif}
@media (min-width:640px){#case-studies .aivion-section-heading--case-studies h2{font-size:2.25rem}}
@media (min-width:1024px){#case-studies .aivion-section-heading--case-studies h2{font-size:3rem}}
#case-studies .aivion-section-heading__subtitle{max-width:42rem;margin:1rem auto 0;font-size:1rem;line-height:1.625;color:hsl(var(--aivion-tokens-muted-fg))}
#case-studies .aivion-heading-bar--case-studies{width:4rem;height:0.25rem;border-radius:999px;background:var(--aivion-primary);margin:1.5rem auto 0}
#case-studies .aivion-case-grid{display:grid;gap:2rem;grid-template-columns:1fr}
@media (min-width:768px){#case-studies .aivion-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
#case-studies .aivion-case-card{border:1px solid var(--aivion-border);background:var(--aivion-card);border-radius:0.75rem;padding:2rem;transition:box-shadow .3s ease}
#case-studies .aivion-case-card:hover{box-shadow:0 10px 40px rgba(0,0,0,.08)}
/* Pill industria = Lovable: inline-block rounded-full bg-primary/10 px-3 py-1 text-xs font-semibold uppercase tracking-wider text-primary */
#case-studies .aivion-case-card__industry{display:inline-block;vertical-align:middle;border-radius:9999px;background:hsl(var(--aivion-tokens-primary) / 0.1);padding:0.25rem 0.75rem;font-size:0.75rem;line-height:1rem;font-weight:600;letter-spacing:0.05em;text-transform:uppercase;color:hsl(var(--aivion-tokens-primary));font-family:"Manrope",sans-serif}
#case-studies .aivion-case-card h3{margin-top:1rem;font-size:1.25rem;font-weight:700;letter-spacing:-0.025em;line-height:1.25;color:hsl(var(--aivion-tokens-fg))}
#case-studies .aivion-case-card__copy{margin-top:1.5rem;display:grid;gap:1rem}
#case-studies .aivion-case-card__copy .aivion-case-card__label{font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:hsl(var(--aivion-tokens-muted-fg));margin-bottom:0.25rem}
#case-studies .aivion-case-card__copy p{font-size:.875rem;line-height:1.625;color:hsl(var(--aivion-tokens-fg) / .8)}
#case-studies .aivion-case-card__metrics{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--aivion-border);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;text-align:center}
#case-studies .aivion-case-card .aivion-case-card__metrics strong{display:block;font-size:1.5rem;font-family:"Montserrat",sans-serif;font-weight:700;color:hsl(var(--aivion-tokens-primary));line-height:1.1}
#case-studies .aivion-case-card__metrics span{display:block;margin-top:0.25rem;font-size:.75rem;color:hsl(var(--aivion-tokens-muted-fg))}
/* CTA caja = Lovable: mt-16 rounded-xl bg-primary/10 border border-border p-12 text-center */
#case-studies .aivion-case-cta{margin-top:4rem;width:100%;box-sizing:border-box;text-align:center;border-radius:0.75rem;border:1px solid hsl(var(--aivion-tokens-border));background:hsl(var(--aivion-tokens-primary) / 0.1);padding:3rem}
#case-studies .aivion-case-cta h3{margin:0;font-size:1.5rem;font-weight:700;font-family:"Montserrat",sans-serif;letter-spacing:-0.025em;line-height:1.25;color:hsl(var(--aivion-tokens-fg))}
@media (min-width:640px){#case-studies .aivion-case-cta h3{font-size:1.875rem}}
#case-studies .aivion-case-cta p{max-width:36rem;margin:1rem auto 0;font-size:1rem;line-height:1.625;color:hsl(var(--aivion-tokens-muted-fg));font-family:"Manrope",sans-serif}
/* Botón = Lovable: mt-8 inline-flex gap-3 rounded-md px-8 py-3.5 text-sm font-semibold uppercase tracking-widest */
#case-studies .aivion-case-cta .aivion-button--case-cta{margin-top:2rem;display:inline-flex;align-items:center;justify-content:center;gap:0.75rem;border-radius:0.375rem;padding:0.875rem 2rem;font-size:0.875rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;background:hsl(var(--aivion-tokens-primary));color:#fff;border:none;transition:box-shadow .15s ease,transform .15s ease}
#case-studies .aivion-case-cta .aivion-button--case-cta:visited{color:#fff}
#case-studies .aivion-case-cta .aivion-button--case-cta:hover{color:#fff;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1),0 12px 28px -8px rgba(var(--aivion-primary-rgb),.35);transform:translateY(-1px)}
#case-studies .aivion-case-cta .aivion-button--case-cta span{color:#fff}
#case-studies .aivion-case-cta .aivion-button--case-cta .aivion-icon{width:1rem;height:1rem;flex-shrink:0;color:#fff;stroke:#fff}

/* #testimonials = Lovable TestimonialsSection: bg-card py-24, max-w-7xl px-6 lg:px-12, heading text-center mb-16, grid gap-8 md:cols-3, rounded-xl glass glass-hover p-8 */
#testimonials.aivion-section--testimonials{overflow:visible;background:#f0f2f4;padding:6rem 0}
#testimonials .aivion-container--testimonials{width:100%;max-width:80rem;margin-left:auto;margin-right:auto;padding-left:1.5rem;padding-right:1.5rem}
@media (min-width:1024px){#testimonials .aivion-container--testimonials{padding-left:3rem;padding-right:3rem}}
#testimonials .aivion-section-heading--testimonials{max-width:none;width:100%;margin:0 auto 4rem;text-align:center}
#testimonials .aivion-section-heading--testimonials h2{margin:0;font-size:1.875rem;font-weight:700;font-family:"Montserrat",sans-serif;letter-spacing:-0.025em;line-height:1.25;color:hsl(var(--aivion-tokens-fg))}
@media (min-width:640px){#testimonials .aivion-section-heading--testimonials h2{font-size:2.25rem}}
#testimonials .aivion-testimonials-grid{display:grid;gap:2rem;grid-template-columns:1fr}
@media (min-width:768px){#testimonials .aivion-testimonials-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
#testimonials .aivion-testimonial-card--glass{position:relative;background:rgba(0,0,0,.03);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 32px rgba(0,0,0,.06),inset 0 1px 0 rgba(255,255,255,.6);border-radius:0.75rem;padding:2rem;transition:all .3s ease}
#testimonials .aivion-testimonial-card--glass:hover{transform:translateY(-6px);background:rgba(0,0,0,.05);border-color:rgba(0,0,0,.1);box-shadow:0 12px 40px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.6),0 0 20px rgba(var(--aivion-primary-rgb),.1)}
#testimonials .aivion-testimonial-card__quote-icon{color:hsl(var(--aivion-tokens-primary) / 0.3);margin-bottom:1rem;line-height:0}
#testimonials .aivion-testimonial-card__quote-icon .aivion-icon{width:2rem;height:2rem;color:inherit;stroke:currentColor}
#testimonials .aivion-testimonial-card__quote{margin:0;font-size:0.875rem;line-height:1.625;font-style:italic;font-family:"Manrope",sans-serif;color:hsl(var(--aivion-tokens-muted-fg))}
#testimonials .aivion-testimonial-card__meta{display:block;margin-top:1.5rem;padding-top:1rem;border-top:1px solid hsl(var(--aivion-tokens-border))}
#testimonials .aivion-testimonial-card__meta strong{display:block;margin:0;font-size:0.875rem;font-weight:600;font-family:"Manrope",sans-serif;color:hsl(var(--aivion-tokens-fg))}
#testimonials .aivion-testimonial-card__meta span{display:block;margin:0.25rem 0 0;font-size:0.75rem;font-family:"Manrope",sans-serif;color:hsl(var(--aivion-tokens-muted-fg))}

/* #contact = Lovable ContactForm: bg-background py-24; columna mx-auto max-w-2xl px-6 lg:px-12 */
#contact.aivion-section--contact-lovable{overflow:visible;background:var(--aivion-background);padding:6rem 0}
#contact .aivion-contact-shell{width:100%;max-width:42rem;margin-left:auto;margin-right:auto;padding-left:1.5rem;padding-right:1.5rem;box-sizing:border-box}
@media (min-width:1024px){#contact .aivion-contact-shell{padding-left:3rem;padding-right:3rem}}
#contact .aivion-contact-shell > .aivion-reveal{width:100%}
#contact .aivion-contact-shell h2{margin:0;font-size:1.875rem;font-weight:700;font-family:"Montserrat",sans-serif;letter-spacing:-0.025em;line-height:1.25;color:hsl(var(--aivion-tokens-fg))}
@media (min-width:640px){#contact .aivion-contact-shell h2{font-size:2.25rem}}
#contact .aivion-contact-shell > .aivion-reveal > p{margin:0.75rem 0 0;font-size:0.875rem;line-height:1.625;font-family:"Manrope",sans-serif;letter-spacing:0.025em;color:hsl(var(--aivion-tokens-muted-fg))}
#contact .aivion-contact-form{margin-top:2.5rem;display:grid;gap:2rem}
#contact .aivion-contact-form input:not([type="hidden"]),#contact .aivion-contact-form textarea{width:100%;border:none;border-bottom:1px solid hsl(var(--aivion-tokens-border));background:transparent;padding:0.75rem 0;font-size:0.875rem;line-height:1.5;font-family:"Manrope",sans-serif;color:hsl(var(--aivion-tokens-fg));outline:none;transition:border-color .15s ease,border-bottom-color .15s ease;border-radius:0}
#contact .aivion-contact-form textarea{resize:none;min-height:0}
#contact .aivion-contact-form input:not([type="hidden"]):focus,#contact .aivion-contact-form textarea:focus{border-bottom-color:hsl(var(--aivion-tokens-primary))}
#contact .aivion-contact-form input::placeholder,#contact .aivion-contact-form textarea::placeholder{color:hsl(var(--aivion-tokens-muted-fg))}
/* Submit = Lovable: rounded-md bg-primary px-8 py-3.5 text-sm font-semibold uppercase tracking-widest text-primary-foreground transition-shadow hover:shadow-lg hover:shadow-primary/30 */
#contact .aivion-contact-form .aivion-button{display:inline-flex;align-items:center;justify-content:center;justify-self:start;margin:0;border:none;border-radius:0.375rem;padding:0.875rem 2rem;font-size:0.875rem;font-weight:600;font-family:"Manrope",sans-serif;letter-spacing:0.1em;text-transform:uppercase;background:hsl(var(--aivion-tokens-primary));color:#fff;cursor:pointer;transition:box-shadow .15s ease}
#contact .aivion-contact-form .aivion-button:hover{transform:none;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1),0 12px 28px -8px rgba(var(--aivion-primary-rgb),.35)}
#contact .aivion-contact-form .aivion-button:focus-visible{outline:2px solid hsl(var(--aivion-tokens-primary));outline-offset:2px}
#contact .aivion-contact-meta{margin-top:2.5rem;padding-top:2rem;border-top:1px solid hsl(var(--aivion-tokens-border));display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem}
@media (min-width:640px){#contact .aivion-contact-meta{flex-direction:row;flex-wrap:wrap;align-items:center;gap:1.5rem}}
#contact .aivion-contact-meta__rule{display:none;width:1px;height:1.25rem;background:hsl(var(--aivion-tokens-border));flex-shrink:0;align-self:center}
@media (min-width:640px){#contact .aivion-contact-meta__rule{display:block}}
#contact .aivion-contact-meta a,#contact .aivion-contact-meta div{display:flex;align-items:center;gap:0.5rem;font-size:1rem;line-height:1.5;font-family:"Manrope",sans-serif;color:hsl(var(--aivion-tokens-muted-fg));transition:color .15s ease}
#contact .aivion-contact-meta a:hover{color:hsl(var(--aivion-tokens-fg))}
#contact .aivion-contact-meta .aivion-icon{width:1.125rem;height:1.125rem;flex-shrink:0}

/* Footer = Lovable Footer.tsx: border-t border-border bg-background; max-w-7xl px-6 py-10 lg:px-12; grid gap-8 sm:grid-cols-3 */
.aivion-footer--lovable{border-top:1px solid hsl(var(--aivion-tokens-border));background:var(--aivion-background);padding:0}
.aivion-footer--lovable .aivion-footer__inner{width:100%;max-width:80rem;margin-left:auto;margin-right:auto;padding:2.5rem 1.5rem;box-sizing:border-box}
@media (min-width:1024px){.aivion-footer--lovable .aivion-footer__inner{padding-left:3rem;padding-right:3rem}}
.aivion-footer--lovable .aivion-footer__grid{display:grid;gap:2rem;grid-template-columns:1fr}
@media (min-width:640px){.aivion-footer--lovable .aivion-footer__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.aivion-footer--lovable .aivion-footer__brand{display:flex;flex-direction:column;gap:1rem}
.aivion-footer--lovable .aivion-logo--footer{height:2.5rem;width:auto}
.aivion-footer--lovable .aivion-footer__tagline{margin:0;font-size:0.875rem;line-height:1.625;font-family:"Manrope",sans-serif;color:hsl(var(--aivion-tokens-muted-fg))}
.aivion-footer--lovable .aivion-footer__socials{display:flex;gap:1rem;align-items:center}
.aivion-footer--lovable .aivion-footer__socials a{display:inline-flex;color:hsl(var(--aivion-tokens-muted-fg));transition:color .15s ease}
.aivion-footer--lovable .aivion-footer__socials a:hover{color:hsl(var(--aivion-tokens-primary))}
.aivion-footer--lovable .aivion-footer__socials .aivion-icon{width:1.25rem;height:1.25rem}
.aivion-footer--lovable .aivion-footer__quick h4,.aivion-footer--lovable .aivion-footer__contact-col h4{margin:0 0 1rem;font-size:0.875rem;font-weight:600;font-family:"Montserrat",sans-serif;letter-spacing:0.05em;text-transform:uppercase;color:hsl(var(--aivion-tokens-fg))}
.aivion-footer--lovable .aivion-footer__nav{display:flex;flex-direction:column;gap:0.5rem}
.aivion-footer--lovable .aivion-footer__nav a{font-size:0.875rem;font-family:"Manrope",sans-serif;color:hsl(var(--aivion-tokens-muted-fg));transition:color .2s ease,transform .2s ease}
.aivion-footer--lovable .aivion-footer__nav a:hover{color:hsl(var(--aivion-tokens-fg));transform:translateX(4px)}
.aivion-footer--lovable .aivion-footer__contact{display:flex;flex-direction:column;gap:0.75rem;font-size:0.875rem;line-height:1.5;font-family:"Manrope",sans-serif;color:hsl(var(--aivion-tokens-muted-fg))}
.aivion-footer--lovable .aivion-footer__contact-row{display:flex;align-items:flex-start;gap:0.5rem}
.aivion-footer--lovable .aivion-footer__contact-row:not(.aivion-footer__contact-row--address){align-items:center}
.aivion-footer--lovable .aivion-footer__contact-icon{display:inline-flex;flex-shrink:0;margin-top:0.125rem}
.aivion-footer--lovable .aivion-footer__contact-row:not(.aivion-footer__contact-row--address) .aivion-footer__contact-icon{margin-top:0}
.aivion-footer--lovable .aivion-footer__contact-row .aivion-icon{width:1rem;height:1rem}
.aivion-footer--lovable .aivion-footer__contact-row a{color:inherit;transition:color .15s ease}
.aivion-footer--lovable .aivion-footer__contact-row a:hover{color:hsl(var(--aivion-tokens-fg))}
.aivion-footer--lovable .aivion-footer__legal{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid hsl(var(--aivion-tokens-border));text-align:center;display:flex;flex-direction:column;gap:0.5rem}
.aivion-footer--lovable .aivion-footer__legal p{margin:0;font-size:0.75rem;line-height:1.5;font-family:"Manrope",sans-serif;color:hsl(var(--aivion-tokens-muted-fg))}
.aivion-footer--lovable .aivion-footer__legal a{color:hsl(var(--aivion-tokens-primary));transition:color .15s ease}
.aivion-footer--lovable .aivion-footer__legal a:hover{color:hsl(var(--aivion-tokens-fg))}
.aivion-card-link{text-decoration:none;color:inherit;display:block}
.aivion-service-card.aivion-card-link,.aivion-product-card.aivion-card-link,.aivion-industry-card.aivion-card-link{cursor:pointer}
.aivion-case-card__link{display:block;text-decoration:none;color:inherit;height:100%}
#partners.aivion-section{padding:5rem 0;background:var(--aivion-background)}
.aivion-section-heading--center{text-align:center}
.aivion-section-heading--center p{max-width:42rem;margin:1rem auto 0}
#partners .aivion-section-heading--center{margin-bottom:3rem}
.aivion-partners-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:3rem 5rem}
.aivion-partners-logos__item{height:2.5rem;display:flex;align-items:center}
@media (min-width:640px){.aivion-partners-logos__item{height:3rem}}
.aivion-partners-logos__item>a{height:100%;display:flex;align-items:center}
.aivion-partners-logos__svg{height:100%;display:flex;align-items:center;color:hsl(var(--aivion-tokens-fg) / .7)}
.aivion-partners-logos__svg svg{height:100%;width:auto;max-width:220px;display:block}
.aivion-partners-logos a:hover .aivion-partners-logos__svg{color:hsl(var(--aivion-tokens-fg))}
.aivion-case-carousel{position:relative;margin-top:1rem}
.aivion-case-carousel__viewport{overflow:hidden}
.aivion-case-carousel__track{display:flex;gap:1rem;transition:transform .45s ease}
.aivion-case-carousel__slide{flex:0 0 100%;min-width:0}
@media (min-width:640px){.aivion-case-carousel__slide{flex-basis:calc(50% - .5rem)}}
@media (min-width:1024px){.aivion-case-carousel__slide{flex-basis:calc(33.333% - .667rem)}}
.aivion-case-carousel__btn{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:2.5rem;height:2.5rem;border-radius:999px;border:1px solid var(--aivion-border);background:var(--aivion-background);display:flex;align-items:center;justify-content:center;cursor:pointer}
.aivion-case-carousel__btn--prev{left:-.5rem}
.aivion-case-carousel__btn--prev .aivion-icon{transform:rotate(180deg)}
.aivion-case-carousel__btn--next{right:-.5rem}
@media (max-width:767px){.aivion-case-carousel__btn{display:none}}
