.about-section{background-color:var(--color-surface);border-bottom:1px solid var(--color-neutral-300);padding:0;position:relative;z-index:10;margin-top:80px}.hero-section{position:relative;height:60vh;min-height:400px;max-height:600px;overflow:hidden;display:flex;align-items:center;justify-content:flex-start}.hero-background{position:absolute;inset:0;z-index:1}.hero-image{width:100%;height:100%;object-fit:cover;object-position:center}.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#1a202cb3,#2c528299,#38b2ac80);z-index:2}.hero-content{position:relative;z-index:3;text-align:left;color:var(--color-text-inverse);padding:var(--space-xl)}.hero-title{font-family:var(--font-heading);font-size:clamp(3rem,8vw,6rem);font-weight:900;line-height:.9;text-transform:uppercase;letter-spacing:.02em;margin:0;text-shadow:2px 2px 8px rgba(0,0,0,.7);color:var(--color-text-inverse)}.hero-subtitle{display:block;font-size:.6em;font-weight:700;letter-spacing:.15em;margin-top:var(--space-xs);color:var(--color-accent-400);text-shadow:1px 1px 4px rgba(0,0,0,.8)}.about-info{background-color:var(--color-surface);padding:var(--space-4xl) var(--space-xl);text-align:center;position:relative;z-index:15}.about-info h2{color:var(--color-primary-700);margin-bottom:var(--space-2xl);position:relative;font-family:var(--font-heading);font-size:var(--font-size-3xl);font-weight:700}.about-info h2:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:60px;height:3px;background:linear-gradient(90deg,var(--color-primary-500),var(--color-accent-500));border-radius:var(--radius-sm)}.about-text{max-width:900px;margin:0 auto;font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);color:var(--color-text-secondary);text-align:justify;border-left:4px solid var(--color-primary-500);padding-left:var(--space-lg);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background-color:var(--color-surface-secondary);padding:var(--space-lg);transition:all var(--transition-normal)}.about-text:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--color-accent-500)}.small-gap{line-height:.5}@media (max-width: 992px){.about-section{margin-top:70px}.hero-section{height:50vh;min-height:350px}.hero-title{font-size:clamp(2.5rem,7vw,5rem)}.about-info{padding:var(--space-3xl) var(--space-lg)}}@media (max-width: 768px){.about-section{margin-top:60px}.hero-section{height:45vh;min-height:300px}.hero-content{padding:var(--space-lg)}.hero-title{font-size:clamp(2rem,6vw,4rem)}.about-info{padding:var(--space-2xl) var(--space-md)}.about-info h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-xl)}.about-text{font-size:var(--font-size-base);padding:var(--space-md);text-align:left;border-left-width:3px;padding-left:var(--space-md)}}@media (max-width: 480px){.about-section{margin-top:50px}.hero-section{height:40vh;min-height:280px}.hero-title{font-size:clamp(1.8rem,5vw,3rem)}.hero-subtitle{font-size:.65em;letter-spacing:.1em}.about-info{padding:var(--space-xl) var(--space-sm)}.about-text{padding:var(--space-sm);padding-left:var(--space-sm);border-left-width:2px}}@media (min-height: 900px){.hero-section{height:50vh;max-height:700px}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.hero-image{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}.projects-section{position:relative;min-height:80vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:6rem 2rem;background:var(--bg-section-light);color:var(--text-dark);padding-top:100px}.section-content{max-width:1200px;margin:0 auto;animation:fadeIn 1s ease-out forwards}.projects-section h2{font-size:clamp(2.5rem,6vw,4rem);font-weight:800;line-height:1.1;margin-bottom:2rem;color:var(--primary-dark-blue);text-shadow:var(--shadow-sm)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.project-card{background-color:var(--bg-card);border-radius:8px;box-shadow:var(--shadow-md);padding:2rem;transition:transform .3s ease-in-out;text-align:left}.project-card:hover{transform:translateY(-10px)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.projects-section{padding:8rem 1rem}.projects-section h2{font-size:clamp(2rem,8vw,3rem)}}.contact-section{background-color:var(--color-primary-900);color:var(--color-text-inverse);padding:var(--space-4xl) var(--space-xl);border-top:1px solid rgba(255,255,255,.1)}.contact-section h2{color:var(--color-text-inverse);margin-bottom:var(--space-2xl);position:relative}.contact-section h2:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:80px;height:3px;background:linear-gradient(90deg,var(--color-accent-500),var(--color-accent-400));border-radius:var(--radius-sm)}.contact-form{max-width:700px;margin:0 auto;background-color:var(--color-surface);padding:var(--space-2xl);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);display:grid;gap:var(--space-lg)}.form-label{font-family:var(--font-heading);font-weight:600;color:var(--color-text-primary);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:var(--space-sm)}.form-input{width:100%;padding:var(--space-sm) var(--space-md);border:2px solid var(--color-neutral-400);border-radius:var(--radius-md);font-family:var(--font-primary);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-surface-secondary);transition:all var(--transition-fast);outline:none}textarea.form-input{min-height:120px;resize:vertical}.error-message{color:#e53e3e;font-size:var(--font-size-sm);margin-top:var(--space-xs);display:block}.form-input.input-error{border-color:#e53e3e}.submit-button{width:auto;margin:var(--space-lg) auto 0;background-color:var(--color-primary-700);color:var(--color-text-inverse);padding:var(--space-sm) var(--space-xl);border-radius:var(--radius-md);font-weight:600;box-shadow:var(--shadow-md);border:none;cursor:pointer;transition:all var(--transition-normal)}.submit-button:hover{background-color:var(--color-primary-900);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.submit-button .send-icon{width:18px;height:18px;fill:var(--color-text-inverse);stroke:var(--color-text-inverse);transition:transform var(--transition-normal)}.submit-button:hover .send-icon{transform:translate(5px)}.trusted-section{margin-top:var(--space-3xl);text-align:center}.trusted-section h2{margin-bottom:var(--space-xl)}.logos-container{display:flex;justify-content:center;align-items:center;gap:var(--space-2xl);flex-wrap:wrap;padding:var(--space-xl) 0}.logo-item{display:flex;align-items:center;justify-content:center;background-color:#ffffff1a;padding:var(--space-lg);border-radius:var(--radius-lg);transition:all var(--transition-normal);min-width:150px;min-height:100px}.logo-item:hover{background-color:#ffffff26;transform:translateY(-5px);box-shadow:var(--shadow-lg)}.trust-logo{max-width:120px;max-height:80px;width:auto;height:auto;object-fit:contain;filter:brightness(1.1) contrast(1.1);transition:all var(--transition-normal)}.trust-logo:hover{filter:brightness(1.3) contrast(1.2);transform:scale(1.05)}@media (max-width: 768px){.contact-section{padding:var(--space-3xl) var(--space-md)}.contact-form{padding:var(--space-xl)}.trusted-section{margin-top:var(--space-2xl)}.logos-container{gap:var(--space-xl)}.logo-item{min-width:120px;min-height:80px;padding:var(--space-md)}.trust-logo{max-width:100px;max-height:60px}}@media (max-width: 480px){.contact-form{padding:var(--space-lg);gap:var(--space-md)}.form-label{font-size:var(--font-size-xs)}.form-input{padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-sm)}textarea.form-input{min-height:100px}.submit-button{font-size:var(--font-size-sm);padding:var(--space-xs) var(--space-lg)}.logos-container{flex-direction:column;gap:var(--space-lg)}.logo-item{min-width:100px;min-height:70px;padding:var(--space-sm)}.trust-logo{max-width:80px;max-height:50px}}.contact-info{display:flex;justify-content:center;align-items:center;margin-bottom:var(--space-2xl);padding:var(--space-xl) 0}.email-link{display:flex;align-items:center;gap:var(--space-md);text-decoration:none;color:var(--color-text-inverse);font-family:var(--font-primary);font-size:var(--font-size-lg);transition:all var(--transition-normal);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);background-color:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.email-link:hover{background-color:#ffffff26;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.email-link svg{flex-shrink:0;transition:transform var(--transition-normal)}.email-link:hover svg{transform:scale(1.1)}.footer-icon-image{height:30px;width:auto;object-fit:contain;transition:all var(--transition-normal)}.email-link:hover .footer-icon-image{transform:scale(1.05);filter:brightness(1.2)}@media (max-width: 768px){.contact-info{margin-bottom:var(--space-xl);padding:var(--space-lg) 0}.email-link{gap:var(--space-sm);padding:var(--space-sm) var(--space-md);font-size:var(--font-size-base)}.footer-icon-image{height:25px}}@media (max-width: 480px){.email-link{gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-sm)}.email-link svg{width:18px;height:18px}.footer-icon-image{height:20px}}.projects-section{padding:80px 0;background-color:#f9f9f9;text-align:center;overflow:hidden}.projects-section h2{font-size:2.5rem;margin-bottom:50px;color:#333}.carousel-wrapper{position:relative;width:100%;max-width:900px;margin:0 auto}.carousel-container{width:100%;margin:0 auto;padding:0 40px;box-sizing:border-box;display:flex;overflow-x:scroll;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scroll-padding:0 40px;scroll-behavior:smooth}.carousel-container::-webkit-scrollbar{display:none}.carousel-container{-ms-overflow-style:none;scrollbar-width:none}.project-slide{flex:0 0 100%;width:100%;scroll-snap-align:center;padding:0 10px;box-sizing:border-box;outline:none}.project-card-carousel{background-color:#fff;border-radius:8px;box-shadow:0 4px 8px #0000001a;overflow:hidden;display:flex;flex-direction:column;margin:0 auto;max-width:750px;min-height:550px}.project-image-wrapper{position:relative;width:100%;overflow:hidden;cursor:pointer;background-color:#f0f0f0;height:300px;flex-shrink:0}.project-image{width:100%;height:100%;object-fit:contain;display:block;transition:transform .3s ease}.project-image-wrapper:hover .project-image{transform:scale(1.05)}.image-overlay{position:absolute;inset:0;background-color:#0009;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;gap:10px}.project-image-wrapper:hover .image-overlay,.project-image-wrapper:focus .image-overlay{opacity:1}.zoom-icon{width:40px;height:40px;object-fit:contain;filter:brightness(0) invert(1);transition:transform .3s ease}.project-image-wrapper:hover .zoom-icon{transform:scale(1.1)}.zoom-text{color:#fff;font-size:1.1rem;font-weight:600;text-shadow:0 2px 4px rgba(0,0,0,.5)}.project-info{padding:25px;text-align:left;flex-grow:1;display:flex;flex-direction:column;justify-content:flex-start}.project-info h3{color:#333;margin-top:0;margin-bottom:15px;font-size:1.8rem}.project-info p{color:#666;line-height:1.6;margin-bottom:10px}.project-location{word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.project-location strong{color:#444;word-wrap:break-word;overflow-wrap:break-word}.project-description .description-mobile,.project-location .location-mobile{display:none}.project-description .description-full,.project-location .location-full{display:inline}.carousel-nav-button{position:absolute;top:50%;transform:translateY(-50%);background-color:#fffffff2;border:none;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .3s ease;box-shadow:0 4px 12px #00000026}.carousel-nav-button:hover{background-color:#fff;transform:translateY(-50%) scale(1.1);box-shadow:0 6px 16px #00000040}.carousel-nav-button:focus{outline:3px solid #4299e1;outline-offset:2px}.carousel-nav-button:disabled{opacity:.3;cursor:not-allowed}.carousel-nav-button:disabled:hover{transform:translateY(-50%) scale(1)}.carousel-nav-button.prev{left:10px}.carousel-nav-button.next{right:10px}.carousel-nav-button svg{width:24px;height:24px;color:#333}.slick-dots-container{margin-top:30px;display:flex;justify-content:center;align-items:center;gap:15px}.slick-dots-container ul{display:flex;justify-content:center;align-items:center;padding:0;margin:0;gap:8px;list-style:none}.slick-dots-container li{margin:0;padding:0}.slick-dots-container button{width:10px;height:10px;border-radius:50%;border:none;background-color:#d1d5db;padding:0;cursor:pointer;transition:all .3s ease;display:block}.slick-dots-container li.slick-active button{background-color:#333;width:28px;border-radius:5px}.slick-dots-container button:hover{background-color:#9ca3af}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.image-modal{position:fixed;inset:0;background-color:#000000e6;display:flex;align-items:center;justify-content:center;z-index:99999;padding:20px;cursor:default;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{position:relative;max-width:90vw;max-height:90vh;animation:zoomIn .3s ease;-webkit-user-select:none;user-select:none;overflow:hidden}.modal-content.zooming,.modal-content.zooming .modal-image{cursor:zoom-in}@keyframes zoomIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.modal-content img{max-width:100%;max-height:90vh;width:auto;height:auto;display:block;box-shadow:0 10px 40px #00000080;border-radius:4px;-webkit-user-select:none;user-select:none}.modal-hint{position:fixed;bottom:30px;left:50%;transform:translate(-50%);color:#fffc;font-size:.9rem;background-color:#0009;padding:10px 20px;border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeIn .5s ease;pointer-events:none;z-index:100000}.modal-close{position:fixed;top:80px;right:20px;width:50px;height:50px;background-color:#ffffffe6;border:none;border-radius:50%;font-size:2rem;color:#333;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:100002;transition:all .3s ease;box-shadow:0 4px 12px #0000004d}.modal-close:hover{background-color:#fff;transform:rotate(90deg) scale(1.1);box-shadow:0 6px 16px #0006}.modal-close:focus{outline:3px solid #4299e1;outline-offset:2px}@media (max-width: 768px){.projects-section{padding:60px 0}.projects-section h2{font-size:2rem;margin-bottom:30px;padding:0 20px}.carousel-container{padding:0 25px;scroll-padding:0 25px}.project-slide{padding:0 8px}.project-card-carousel{max-width:100%;margin:0;min-height:500px}.project-image-wrapper{height:220px}.project-info{padding:20px}.project-info h3{font-size:1.5rem;margin-bottom:12px}.project-info p{font-size:.95rem;margin-bottom:8px}.zoom-icon{width:35px;height:35px}.zoom-text{font-size:1rem}.carousel-nav-button{width:40px;height:40px}.carousel-nav-button.prev{left:5px}.carousel-nav-button.next{right:5px}.carousel-nav-button svg{width:20px;height:20px}.slick-dots-container{margin-top:20px}.modal-close{width:40px;height:40px;font-size:1.5rem;top:70px;right:10px}.modal-content{max-width:95vw;max-height:85vh}.modal-content img{max-height:85vh}}@media (max-width: 480px){.projects-section{padding:50px 0}.projects-section h2{font-size:1.75rem;margin-bottom:25px;padding:0 20px}.carousel-container{padding:0 15px;scroll-padding:0 15px}.project-slide{padding:0}.project-card-carousel{min-height:520px;margin:0 5px}.project-image-wrapper{height:200px}.project-info{padding:18px}.project-info h3{font-size:1.4rem;margin-bottom:10px;text-align:center}.project-info p{font-size:.9rem;line-height:1.5;text-align:center;word-wrap:break-word;overflow-wrap:break-word}.project-description{line-height:1.6}.project-description .description-full{display:none}.project-description .description-mobile{display:inline}.project-location .location-full{display:none}.project-location .location-mobile{display:inline}.project-location strong{display:block;word-wrap:break-word;overflow-wrap:break-word}.zoom-icon{width:30px;height:30px}.zoom-text{font-size:.9rem}.carousel-nav-button{width:36px;height:36px}.carousel-nav-button svg{width:18px;height:18px}.slick-dots-container button{width:8px;height:8px}.slick-dots-container li.slick-active button{width:24px}.modal-close{width:36px;height:36px;font-size:1.3rem;top:60px;right:8px}.modal-hint{font-size:.8rem;padding:8px 16px;bottom:20px}}@media (max-width: 375px){.carousel-container{padding:0 15px;scroll-padding:0 15px}.project-card-carousel{margin:0;min-height:540px}.project-info{padding:16px}.project-info h3{font-size:1.3rem}.project-info p{font-size:.85rem;line-height:1.6;word-wrap:break-word;overflow-wrap:break-word}.project-description,.project-location{line-height:1.65}}:root{--color-primary-900: #1a202c;--color-primary-700: #2c5282;--color-primary-500: #4299e1;--color-primary-300: #90cdf4;--color-primary-100: #ebf4ff;--color-accent-500: #38b2ac;--color-accent-400: #4fd1c7;--color-neutral-900: #1a202c;--color-neutral-800: #2d3748;--color-neutral-700: #4a5568;--color-neutral-600: #718096;--color-neutral-500: #a0aec0;--color-neutral-400: #cbd5e0;--color-neutral-300: #e2e8f0;--color-neutral-200: #edf2f7;--color-neutral-100: #f7fafc;--color-neutral-50: #ffffff;--color-surface: var(--color-neutral-50);--color-surface-secondary: var(--color-neutral-100);--color-background: var(--color-neutral-50);--color-background-gradient: linear-gradient(135deg, var(--color-neutral-200), var(--color-neutral-100));--color-text-primary: var(--color-neutral-800);--color-text-secondary: var(--color-neutral-700);--color-text-muted: var(--color-neutral-600);--color-text-inverse: var(--color-neutral-50);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--space-4xl: 6rem;--font-size-xs: .75rem;--font-size-sm: .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-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1536px}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:80px;-webkit-text-size-adjust:100%;tab-size:4}body{font-family:var(--font-primary);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background:var(--color-background-gradient);background-attachment:fixed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeSpeed;overflow-x:hidden}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit;color:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.heading-1,h1{font-family:var(--font-heading);font-size:clamp(var(--font-size-3xl),5vw,var(--font-size-5xl));font-weight:800;line-height:var(--line-height-tight);color:var(--color-primary-900);text-transform:uppercase;letter-spacing:.025em;margin-bottom:var(--space-lg);-webkit-hyphens:none;hyphens:none;word-break:normal}.heading-2,h2{font-family:var(--font-heading);font-size:clamp(var(--font-size-2xl),4vw,var(--font-size-4xl));font-weight:700;line-height:var(--line-height-tight);color:var(--color-primary-700);margin-bottom:var(--space-lg);text-align:center}.heading-3,h3{font-family:var(--font-heading);font-size:var(--font-size-xl);font-weight:600;line-height:var(--line-height-normal);color:var(--color-primary-700);margin-bottom:var(--space-md)}.body-text,p{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--color-text-secondary);margin-bottom:var(--space-md);-webkit-hyphens:none;hyphens:none}.text-large{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed)}.text-small{font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.container{width:100%;max-width:var(--container-xl);margin-inline:auto;padding-inline:var(--space-md)}.container-sm{max-width:var(--container-sm)}.container-md{max-width:var(--container-md)}.container-lg{max-width:var(--container-lg)}.container-2xl{max-width:var(--container-2xl)}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}.landing-page-container{display:flex;flex-direction:column;min-height:100vh;position:relative}.header{position:fixed;top:0;left:0;right:0;width:100%;background-color:var(--color-neutral-900);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-sm);z-index:var(--z-fixed);transition:all var(--transition-normal)}.header-content{display:flex;align-items:center;padding:var(--space-xl) 0;max-width:var(--container-2xl);margin-inline:auto;justify-content:space-between;position:relative}.logo-container{position:absolute;left:var(--space-lg);flex-shrink:0;z-index:10}.logo{height:50px;width:auto;transition:transform var(--transition-normal)}.logo:hover{transform:scale(1.05)}.logo:focus-visible{outline:2px solid var(--color-accent-500);outline-offset:4px;border-radius:var(--radius-sm)}.main-nav{display:flex;align-items:center;justify-content:center;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.nav-menu{display:flex;align-items:center;gap:var(--space-2xl);list-style:none}.nav-item a{font-family:var(--font-heading);font-weight:600;font-size:var(--font-size-lg);color:var(--color-text-inverse);text-decoration:none;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);position:relative;transition:all var(--transition-fast)}.nav-item a:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translate(-50%);width:0;height:2px;background:linear-gradient(90deg,var(--color-primary-500),var(--color-accent-500));border-radius:var(--radius-full);transition:width var(--transition-normal)}.nav-item a:hover,.nav-item a:focus-visible{color:var(--color-accent-400);outline:none}.nav-item a:hover:after,.nav-item a:focus-visible:after{width:100%}.nav-item.active a{color:var(--color-accent-400);font-weight:700}.nav-item.active a:after{width:100%}.header-right-controls{display:flex;align-items:center;gap:var(--space-md);flex-shrink:0;position:absolute;right:var(--space-lg);z-index:1052}.hamburger-menu-toggle{display:none;flex-direction:column;gap:4px;width:28px;height:20px;padding:var(--space-xs);background:none;border:none;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);position:relative;z-index:1052}.hamburger-menu-toggle:hover{background-color:#ffffff1a}.hamburger-menu-toggle:focus-visible{outline:2px solid var(--color-accent-500);outline-offset:2px}.hamburger-menu-toggle .bar{width:100%;height:2px;background-color:var(--color-text-inverse);border-radius:var(--radius-full);transition:all var(--transition-normal);transform-origin:center}.hamburger-menu-toggle.active .bar:nth-child(1){transform:translateY(6px) rotate(45deg)}.hamburger-menu-toggle.active .bar:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger-menu-toggle.active .bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.section{padding:var(--space-4xl) var(--space-lg);margin-bottom:var(--space-lg);background-color:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);container-type:inline-size}.hero-section{background:linear-gradient(135deg,var(--color-primary-100),var(--color-neutral-50));border:2px solid var(--color-primary-300);box-shadow:var(--shadow-lg);margin-bottom:var(--space-xl);padding:var(--space-3xl) var(--space-lg)}.section:first-of-type{margin-top:80px}.section-header{text-align:center;margin-bottom:var(--space-3xl)}.section-title{position:relative;display:inline-block}.section-title:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:60px;height:3px;background:linear-gradient(90deg,var(--color-primary-500),var(--color-accent-500));border-radius:var(--radius-full)}.services-section{background-color:var(--color-surface-secondary);border:1px solid var(--color-neutral-300)}.services-list{display:grid;gap:var(--space-md);max-width:800px;margin-inline:auto;list-style:none}.services-list li{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg);background-color:var(--color-surface);border:2px solid var(--color-neutral-400);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);font-size:var(--font-size-lg);color:var(--color-text-primary);font-weight:500;transition:all var(--transition-normal);cursor:default}.services-list li:hover{transform:translate(8px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-700);color:var(--color-primary-900);background-color:var(--color-primary-100)}.services-list li:before{content:"✓";display:flex;align-items:center;justify-content:center;width:28px;height:28px;background-color:var(--color-primary-700);color:var(--color-text-inverse);border-radius:var(--radius-full);font-weight:800;font-size:var(--font-size-base);flex-shrink:0;box-shadow:var(--shadow-sm)}.contact-section{background-color:var(--color-primary-900);color:var(--color-text-inverse);border:none;margin-bottom:var(--space-4xl)}.contact-section .section-header{text-align:center!important}.contact-section .section-title{color:var(--color-text-inverse);text-align:center!important;width:100%;display:block}.contact-section .section-title:after{background:linear-gradient(90deg,var(--color-accent-500),var(--color-accent-400))}.contact-form{max-width:600px;margin-inline:auto;background-color:var(--color-surface);padding:var(--space-3xl);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl)}.form-group{margin-bottom:var(--space-lg)}.form-label{display:block;font-family:var(--font-heading);font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-sm)}.required-field:after{content:" *";color:var(--color-accent-500)}.form-input{width:100%;padding:var(--space-md);border:2px solid var(--color-neutral-400);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-surface-secondary);transition:all var(--transition-fast);outline:none}.form-input:focus{border-color:var(--color-primary-500);box-shadow:0 0 0 3px #4299e133;background-color:var(--color-surface)}.form-input:invalid:not(:placeholder-shown){border-color:#e53e3e}.form-input:valid:not(:placeholder-shown){border-color:#38a169}textarea.form-input{min-height:120px;resize:none;font-family:inherit;max-length:500}.char-counter{display:block;font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:right;margin-top:var(--space-xs)}.char-counter.over-limit{color:#e53e3e;font-weight:600}.error-message{display:block;font-size:var(--font-size-sm);color:#e53e3e;margin-top:var(--space-xs)}.submit-button{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);background-color:var(--color-primary-700);color:var(--color-text-inverse);border:none;border-radius:var(--radius-md);font-weight:600;font-size:var(--font-size-base);cursor:pointer;box-shadow:var(--shadow-md);transition:all var(--transition-normal);margin-top:var(--space-lg)}.submit-button:hover:not(:disabled){background-color:var(--color-primary-900);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.submit-button:focus-visible{outline:2px solid var(--color-accent-500);outline-offset:2px}.submit-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.submit-button .send-icon{width:18px;height:18px;transition:transform var(--transition-normal)}.submit-button:hover:not(:disabled) .send-icon{transform:translate(4px)}.form-input[name=motivo],.form-input[name=consulta],.form-input[name=mensaje],textarea.form-input{border:2px solid var(--color-neutral-400)}.form-input:required:invalid{border-color:#e53e3e;background-color:#e53e3e0d}.form-input:required:valid{border-color:#38a169;background-color:#38a1690d}.required-error{display:none;font-size:var(--font-size-sm);color:#e53e3e;margin-top:var(--space-xs);font-weight:500}.form-input:required:invalid+.required-error{display:block}.form-label.required-field{position:relative}.form-label.required-field:after{content:" *";color:#e53e3e;font-weight:700;font-size:var(--font-size-base)}textarea.form-input:required:placeholder-shown{border-color:var(--color-neutral-400);background-color:var(--color-surface-secondary)}textarea.form-input:required:not(:placeholder-shown):invalid{border-color:#e53e3e;background-color:#e53e3e0d}textarea.form-input:required:not(:placeholder-shown):valid{border-color:#38a169;background-color:#38a1690d}.submit-button:invalid{opacity:.6;cursor:not-allowed;background-color:var(--color-neutral-500)}.field-help{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-xs);font-style:italic}.field-help.required{color:var(--color-primary-700);font-weight:500}.footer{background-color:var(--color-neutral-900);color:var(--color-text-inverse);padding:var(--space-2xl) var(--space-lg);text-align:center;margin-top:auto;border-top:1px solid rgba(255,255,255,.1)}.footer-contact{display:inline-flex;align-items:center;gap:var(--space-md);font-size:var(--font-size-base);color:var(--color-text-inverse);text-decoration:none;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);transition:all var(--transition-normal)}.footer-contact:hover,.footer-contact:focus-visible{color:var(--color-accent-400);transform:translateY(-2px);outline:none;background-color:#ffffff0d}.footer-contact svg{width:24px;height:24px;flex-shrink:0}.footer-icon-image{width:170px;height:auto;flex-shrink:0}.copy-right{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid rgba(255,255,255,.15);font-size:var(--font-size-sm);color:var(--color-neutral-500)}@container (max-width: 768px){.section{padding:var(--space-3xl) var(--space-md)}.services-list li{font-size:var(--font-size-base);padding:var(--space-md)}.contact-form{padding:var(--space-xl)}}@media (max-width: 992px){.header{position:fixed;width:100%;left:0;right:0}.header-content{padding:var(--space-xl) var(--space-xl);width:100%}.logo{height:50px}.logo-container{left:var(--space-md)}.main-nav{display:none;flex-direction:column;position:fixed;top:0;right:0;width:280px;max-width:85vw;height:100vh;background-color:var(--color-primary-900);box-shadow:var(--shadow-xl);padding:var(--space-3xl) var(--space-xl);padding-top:100px;transform:translate(100%);transition:transform var(--transition-normal);z-index:var(--z-modal);align-items:stretch;justify-content:flex-start;overflow-y:auto}.main-nav.active{display:flex;transform:translate(0)}.nav-menu{flex-direction:column;width:100%;gap:var(--space-lg)}.nav-item{width:100%;text-align:left;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:var(--space-md)}.nav-item:last-child{border-bottom:none;padding-bottom:0}.nav-item a{color:var(--color-text-inverse);font-size:var(--font-size-xl);padding:var(--space-md) 0;display:block}.nav-item a:after{background:var(--color-accent-400);left:0;transform:translate(0)}.nav-item a:hover:after,.nav-item a:focus-visible:after{width:60%}.hamburger-menu-toggle{display:flex;position:relative;z-index:1052}.header-right-controls{right:var(--space-md)}}@media (max-width: 768px){.header-content{padding:var(--space-lg) var(--space-md)}.section{margin-bottom:var(--space-lg)}.footer{padding:var(--space-xl) var(--space-md)}.footer-contact{font-size:var(--font-size-sm)}.footer-contact svg{width:20px;height:20px}.footer-icon-image{width:120px;height:auto}.main-nav{width:260px;padding:var(--space-2xl) var(--space-lg);padding-top:90px}}@media (max-width: 480px){.logo{height:40px}.logo-container{left:var(--space-sm)}.main-nav{width:240px;max-width:80vw;padding:var(--space-xl) var(--space-md);padding-top:80px}.section{padding:var(--space-2xl) var(--space-md)}.contact-form{padding:var(--space-lg)}.footer-icon-image{width:100px;height:auto}.footer-contact svg{width:18px;height:18px}.header-right-controls{right:var(--space-sm)}.hamburger-menu-toggle{width:24px;height:18px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.skip-link{position:absolute;top:-40px;left:6px;background:var(--color-primary-700);color:var(--color-text-inverse);padding:8px;text-decoration:none;border-radius:var(--radius-md);z-index:var(--z-tooltip);transition:top var(--transition-fast)}.skip-link:focus{top:6px}@media print{.header,.footer,.hamburger-menu-toggle{display:none!important}.section{box-shadow:none!important;border:1px solid #ccc!important;break-inside:avoid}*{background:transparent!important;color:#000!important}}
