:root{--color-bg:#fff;--color-bg-alt:#f4f4f5;--color-bg-dark:#1a1e26;--color-bg-dark-alt:#21262f;--color-surface:#fff;--color-border:#e1e2e6;--color-border-dark:#ffffff1f;--color-text:#4b4e57;--color-text-muted:#71737c;--color-heading:#171a1f;--color-on-dark:#f4f5f7;--color-on-dark-muted:#b6b9c2;--color-primary:#1c212b;--color-primary-dark:#12151b;--color-accent:#ec8b1e;--color-accent-light:#f5a83f;--color-accent-dark:#c8730f;--color-accent-contrast:#1a1206;--color-success:#1f9d55;--color-success-bg:#e9f8ef;--color-danger:#d64545;--color-danger-bg:#fbeaea;--color-whatsapp:#25a35a;--color-whatsapp-dark:#1c8047;--shadow-sm:0 1px 2px #0f11140f, 0 1px 3px #0f111414;--shadow-md:0 6px 16px #0f11141a, 0 2px 6px #0f11140f;--shadow-lg:0 20px 40px #0f111429, 0 6px 12px #0f111414;--radius-sm:6px;--radius-md:10px;--radius-lg:18px;--container-width:1240px;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--space-6:48px;--space-7:64px;--space-8:96px;--space-9:128px;--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-heading:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:"Big Shoulders Display", "Inter", system-ui, sans-serif;--ease-premium:cubic-bezier(.22, 1, .36, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font:16px/1.65 var(--font-sans);color:var(--color-text);background:var(--color-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{min-height:100svh;margin:0}#root{flex-direction:column;min-height:100svh;display:flex}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--color-heading);margin:0 0 var(--space-3);font-weight:700;line-height:1.2}h1{font-family:var(--font-display);letter-spacing:.5px;text-transform:uppercase;font-size:clamp(38px,5.6vw,64px);font-weight:700;line-height:1.08}h2{letter-spacing:-.5px;font-size:clamp(28px,3.6vw,38px)}h3{font-size:21px;font-weight:600}p{margin:0 0 var(--space-3)}.container{width:100%;max-width:var(--container-width);padding-inline:var(--space-4);margin-inline:auto}.page{flex:1}.section{padding-block:var(--space-8);background-image:repeating-linear-gradient(0deg,#171a1f09 0 1px,#0000 1px 34px),repeating-linear-gradient(90deg,#171a1f09 0 1px,#0000 1px 34px);position:relative}.section-alt{background-color:var(--color-bg-alt);background-image:repeating-linear-gradient(0deg,#171a1f09 0 1px,#0000 1px 34px),repeating-linear-gradient(90deg,#171a1f09 0 1px,#0000 1px 34px)}.section-dark{background-color:var(--color-primary);color:var(--color-on-dark);background-image:repeating-linear-gradient(0deg,#f5a83f0d 0 1px,#0000 1px 34px),repeating-linear-gradient(90deg,#f5a83f0d 0 1px,#0000 1px 34px)}.section-dark h1,.section-dark h2,.section-dark h3{color:var(--color-on-dark)}.section-dark p{color:var(--color-on-dark-muted)}.eyebrow{letter-spacing:1.2px;text-transform:uppercase;color:var(--color-accent-dark);margin-bottom:var(--space-2);font-size:13px;font-weight:700;display:inline-block}.section-dark .eyebrow{color:var(--color-accent-light)}.btn{border-radius:var(--radius-md);cursor:pointer;transition:background-color .25s var(--ease-out), border-color .25s var(--ease-out), color .25s var(--ease-out), transform .2s var(--ease-out), box-shadow .25s var(--ease-out);white-space:nowrap;border:2px solid #0000;justify-content:center;align-items:center;gap:8px;padding:13px 26px;font-size:15px;font-weight:600;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn:active{transition-duration:.1s;transform:translateY(0)}.btn-primary{background:var(--color-accent);color:var(--color-accent-contrast);box-shadow:0 4px 14px #ec8b1e59}.btn-primary:hover{background:var(--color-accent-dark);box-shadow:0 10px 24px #ec8b1e66}.btn-secondary{color:var(--color-heading);border-color:var(--color-border);background:0 0}.btn-secondary:hover{border-color:var(--color-heading);background:var(--color-bg-alt);box-shadow:var(--shadow-sm)}.section-dark .btn-secondary{color:var(--color-on-dark);border-color:var(--color-border-dark)}.section-dark .btn-secondary:hover{border-color:var(--color-on-dark);background:#ffffff0f}.btn-ghost-light{color:var(--color-on-dark);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffff14;border-color:#ffffff40}.btn-ghost-light:hover{background:#ffffff29;border-color:#fff6}.btn-block{width:100%}.btn-lg{padding:16px 32px;font-size:16px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.reveal{opacity:0;transition:opacity .7s var(--ease-premium), transform .7s var(--ease-premium);transform:translateY(22px)}.reveal-visible{opacity:1;transform:translateY(0)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseRing{0%{box-shadow:0 0 #25a35a80}70%{box-shadow:0 0 0 14px #25a35a00}to{box-shadow:0 0 #25a35a00}}.page-transition{animation:pageFadeIn .45s var(--ease-out) both}.chip{border:1.5px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:border-color .2s var(--ease-out), background-color .2s var(--ease-out), color .2s var(--ease-out), transform .2s var(--ease-out), box-shadow .2s var(--ease-out);border-radius:999px;align-items:center;padding:8px 16px;font-size:14px;font-weight:600;display:inline-flex}.chip:hover{border-color:var(--color-accent);transform:translateY(-1px)}.chip-active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-dark);box-shadow:var(--shadow-sm)}.form-field{margin-bottom:var(--space-4)}.form-label{color:var(--color-heading);margin-bottom:6px;font-size:14px;font-weight:600;display:block}.form-optional{color:var(--color-text-muted);font-weight:400}.form-input,.form-textarea,.form-select{width:100%;font:inherit;color:var(--color-text);background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);transition:border-color .2s var(--ease-out), box-shadow .2s var(--ease-out);padding:12px 14px;font-size:15px}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 4px #ec8b1e26}.form-textarea{resize:vertical;min-height:120px}.form-row{gap:var(--space-4);grid-template-columns:1fr;display:grid}.form-error-text{color:var(--color-danger);animation:fadeInUp .25s var(--ease-out) both;margin-top:6px;font-size:13px;display:block}.form-input-error,.form-textarea-error,.form-select-error{border-color:var(--color-danger);animation:formShake .35s var(--ease-out)}@keyframes formShake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.form-radio-group{gap:var(--space-3);flex-wrap:wrap;display:flex}.form-radio-option{color:var(--color-text);cursor:pointer;align-items:center;gap:6px;font-size:14px;font-weight:500;display:flex}.form-radio-option input{accent-color:var(--color-accent);width:16px;height:16px}.form-success{background:var(--color-success-bg);color:#14622f;border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4);animation:fadeInUp .4s var(--ease-out) both;border:1px solid #1f9d554d;align-items:flex-start;gap:10px;display:flex}.form-success-icon{flex-shrink:0;width:20px;height:20px;margin-top:1px}.form-error-banner{background:var(--color-danger-bg);color:#7a2020;border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4);animation:fadeInUp .4s var(--ease-out) both;border:1px solid #d645454d;align-items:flex-start;gap:10px;display:flex}.form-error-banner-icon{flex-shrink:0;width:20px;height:20px;margin-top:1px}.form-honeypot{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.form-file-placeholder{border:1.5px dashed var(--color-border);border-radius:var(--radius-sm);padding:var(--space-4);text-align:center;color:var(--color-text-muted);background:var(--color-bg-alt);font-size:13.5px}@media (width>=640px){.form-row-2{grid-template-columns:1fr 1fr}}.navbar{animation:navbarEnter .5s var(--ease-out) both}@keyframes navbarEnter{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.navbar{animation:none}}.navbar-topbar{background:var(--color-primary-dark);color:var(--color-on-dark-muted);font-size:13px;display:none}.navbar-topbar-inner{justify-content:space-between;align-items:center;height:36px;display:flex}.navbar-topbar-phone{color:var(--color-on-dark);align-items:center;gap:6px;font-weight:600;transition:color .2s;display:flex}.navbar-topbar-phone:hover{color:var(--color-accent-light)}.navbar-topbar-icon{width:14px;height:14px}.navbar-sticky{z-index:50;position:sticky;top:0}.navbar-main{background:var(--color-primary);box-shadow:var(--shadow-sm);transition:box-shadow .3s var(--ease-out)}.navbar-scrolled .navbar-main{box-shadow:var(--shadow-md)}.navbar-inner{justify-content:space-between;align-items:center;height:72px;display:flex}.navbar-logo{transition:transform .2s var(--ease-out);align-items:center;gap:10px;display:flex}.navbar-logo:hover{transform:scale(1.02)}.navbar-logo-mark{border-radius:var(--radius-sm);background:var(--color-accent);width:38px;height:38px;color:var(--color-accent-contrast);letter-spacing:-.5px;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:800;display:flex}.navbar-logo-text{color:var(--color-on-dark);letter-spacing:-.2px;white-space:nowrap;font-size:18px;font-weight:500}.navbar-logo-strong{font-weight:700}.navbar-links{align-items:center;gap:var(--space-5);display:none}.navbar-link{color:var(--color-on-dark);opacity:.78;padding:8px 2px;font-weight:500;transition:opacity .2s;position:relative}.navbar-link:after{content:"";background:var(--color-accent);transform-origin:0;height:2px;transition:transform .25s var(--ease-out);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.navbar-link:hover{opacity:1}.navbar-link:hover:after{transform:scaleX(1)}.navbar-link-active{opacity:1}.navbar-link-active:after{transform:scaleX(1)}.navbar-cta{white-space:nowrap;padding:10px 20px}.navbar-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;padding:0;display:flex}.navbar-toggle-bar{background:var(--color-on-dark);width:24px;height:2px;transition:transform .3s var(--ease-premium), opacity .2s ease;border-radius:2px;display:block}.navbar-toggle-open .navbar-toggle-bar:first-child{transform:translateY(7px)rotate(45deg)}.navbar-toggle-open .navbar-toggle-bar:nth-child(2){opacity:0;transform:scaleX(0)}.navbar-toggle-open .navbar-toggle-bar:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.navbar-mobile{gap:var(--space-1);background:var(--color-primary-dark);max-height:0;transition:max-height .35s var(--ease-premium);flex-direction:column;display:flex;overflow:hidden}.navbar-mobile-open{max-height:560px}.navbar-mobile-link{color:var(--color-on-dark);opacity:0;padding:14px var(--space-4);transition:opacity .3s var(--ease-out), transform .3s var(--ease-out), background-color .2s ease, border-color .2s ease;border-left:3px solid #0000;font-weight:500;transform:translate(-8px)}.navbar-mobile-open .navbar-mobile-link{opacity:.85;transform:translate(0)}.navbar-mobile-link.navbar-link-active{opacity:1;border-left-color:var(--color-accent);background:#ffffff0a}.navbar-mobile-cta{margin:var(--space-3) var(--space-4) var(--space-2);opacity:0;transition:opacity .3s var(--ease-out), transform .3s var(--ease-out);transform:translateY(6px)}.navbar-mobile-open .navbar-mobile-cta{opacity:1;transform:translateY(0)}.navbar-mobile-phone{margin:0 var(--space-4) var(--space-4);color:var(--color-on-dark-muted);border-top:1px solid var(--color-border-dark);opacity:0;transition:opacity .3s var(--ease-out), transform .3s var(--ease-out), color .2s ease;align-items:center;gap:8px;padding:12px 0;font-weight:600;display:flex;transform:translateY(6px)}.navbar-mobile-open .navbar-mobile-phone{opacity:1;transform:translateY(0)}.navbar-mobile-phone:hover{color:var(--color-on-dark)}@media (width>=768px){.navbar-topbar{display:block}.navbar-links{display:flex}.navbar-toggle,.navbar-mobile{display:none}}@media (prefers-reduced-motion:reduce){.navbar-mobile-link,.navbar-mobile-cta,.navbar-mobile-phone{transform:none}}.footer{background:var(--color-primary-dark);color:var(--color-on-dark-muted)}.footer-grid{gap:var(--space-6);padding-block:var(--space-7);grid-template-columns:1fr;display:grid}.footer-brand{max-width:340px}.footer-logo{color:var(--color-on-dark);margin-bottom:var(--space-3);align-items:center;gap:10px;font-size:18px;font-weight:700;display:flex}.footer-logo-mark{border-radius:var(--radius-sm);background:var(--color-accent);width:34px;height:34px;color:var(--color-accent-contrast);flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:flex}.footer-tagline{color:var(--color-accent-light);margin-bottom:var(--space-3);font-weight:600}.footer-note{margin-bottom:0;font-size:14px;line-height:1.7}.footer-heading{color:var(--color-on-dark);margin-bottom:var(--space-3);font-size:15px;font-weight:700}.footer-links{gap:var(--space-2);flex-direction:column;display:flex}.footer-links a{transition:color .2s ease, transform .2s var(--ease-out);font-size:14px;display:inline-block}.footer-links a:hover{color:var(--color-on-dark);transform:translate(3px)}.footer-contact{gap:var(--space-3);flex-direction:column;display:flex}.footer-contact a,.footer-address{transition:color .2s ease, transform .2s var(--ease-out);align-items:flex-start;gap:10px;font-size:14px;display:flex}.footer-contact a:hover{color:var(--color-on-dark);transform:translate(3px)}.footer-contact-icon{width:17px;height:17px;color:var(--color-accent-light);flex-shrink:0;margin-top:1px}.footer-bottom{border-top:1px solid var(--color-border-dark)}.footer-bottom-inner{gap:var(--space-1);padding-block:var(--space-4);flex-direction:column;font-size:13px;display:flex}.footer-placeholder-note{opacity:.65;margin:0}@media (width>=640px){.footer-grid{grid-template-columns:1.3fr 1fr 1fr 1.2fr}.footer-bottom-inner{flex-direction:row;justify-content:space-between}}.floating-contact{right:var(--space-3);bottom:var(--space-3);z-index:40;flex-direction:column;gap:12px;display:flex;position:fixed}.floating-btn{width:52px;height:52px;box-shadow:var(--shadow-lg);transition:transform .25s var(--ease-out), box-shadow .25s var(--ease-out);animation:scaleIn .4s var(--ease-premium) both;border-radius:50%;justify-content:center;align-items:center;display:flex}.floating-btn-call{animation-delay:.1s}.floating-btn:hover{transform:scale(1.08)translateY(-2px);box-shadow:0 16px 32px #0f11143d}.floating-btn:active{transform:scale(.96)}.floating-btn-icon{color:#fff;width:24px;height:24px}.floating-btn-whatsapp{background:var(--color-whatsapp)}.floating-btn-whatsapp:hover{background:var(--color-whatsapp-dark)}.floating-btn-pulse-once{animation:scaleIn .4s var(--ease-premium) both, pulseRing 1.6s var(--ease-out) .4s}.floating-btn-call{background:var(--color-primary)}.floating-btn-call:hover{background:var(--color-primary-dark)}@media (width>=768px){.floating-contact{right:var(--space-5);bottom:var(--space-5)}}@media (prefers-reduced-motion:reduce){.floating-btn,.floating-btn-pulse-once{animation:none}}.section-heading{max-width:640px;margin-bottom:var(--space-6)}.section-heading-accent{width:48px;height:3px;margin-bottom:var(--space-3);background:linear-gradient(90deg, var(--color-accent), var(--color-accent-light));transform-origin:0;transition:transform .6s var(--ease-premium) .15s;border-radius:2px;display:block;transform:scaleX(0)}.reveal-visible .section-heading-accent{transform:scaleX(1)}.section-heading-center .section-heading-accent{transform-origin:50%}.section-heading h2{margin-bottom:var(--space-2)}.section-heading-subtitle{color:var(--color-text-muted);margin-bottom:0;font-size:16px}.section-dark .section-heading-subtitle{color:var(--color-on-dark-muted)}.section-heading-center{text-align:center;margin-inline:auto}.section-heading-center .section-heading-accent{margin-inline:auto}.image-fallback{justify-content:center;align-items:center;gap:var(--space-2);color:#9a9da5;text-align:center;width:100%;height:100%;min-height:160px;padding:var(--space-3);background:linear-gradient(135deg,#e8e9ec 0%,#d4d6db 100%);flex-direction:column;display:flex}.image-fallback-icon{opacity:.6;width:32px;height:32px}.image-fallback-label{letter-spacing:.3px;text-transform:uppercase;opacity:.75;max-width:220px;font-size:12px;font-weight:600}.image-loading{opacity:0}.image-loaded{opacity:1;transition:opacity .5s var(--ease-out)}.service-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:box-shadow .3s var(--ease-out), transform .3s var(--ease-out), border-color .3s var(--ease-out);flex-direction:column;height:100%;display:flex;overflow:hidden}.service-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-accent);transform:translateY(-6px)}.service-card-media{height:190px;position:relative;overflow:hidden}.service-card-image{object-fit:cover;width:100%;height:100%;transition:transform .5s var(--ease-out)}.service-card:hover .service-card-image{transform:scale(1.08)}.service-card-icon{border-radius:var(--radius-md);background:var(--color-primary);width:48px;height:48px;box-shadow:var(--shadow-md);transition:transform .3s var(--ease-premium), background-color .3s ease;justify-content:center;align-items:center;display:flex;position:absolute;bottom:-22px;left:20px}.service-card:hover .service-card-icon{background:var(--color-accent);transform:translateY(-4px)}.service-card-icon-svg{width:24px;height:24px;color:var(--color-accent-light);transition:color .3s}.service-card:hover .service-card-icon-svg{color:var(--color-accent-contrast)}.service-card-body{padding:var(--space-5) var(--space-4) var(--space-4);padding-top:var(--space-4);flex-direction:column;flex:1;display:flex}.service-card-body h3{margin-bottom:var(--space-2)}.service-card-body p{color:var(--color-text-muted);flex:1;font-size:14.5px}.service-card-link{color:var(--color-accent-dark);margin-top:var(--space-2);transition:gap .2s var(--ease-out);align-items:center;gap:6px;font-size:14px;font-weight:600;display:inline-flex}.service-card-link:hover{gap:10px}.service-card-link-icon{width:16px;height:16px;transition:transform .2s var(--ease-out)}.service-card-link:hover .service-card-link-icon{transform:translate(2px)}.project-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:box-shadow .3s var(--ease-out), transform .3s var(--ease-out), border-color .3s var(--ease-out);flex-direction:column;height:100%;display:flex;overflow:hidden}.project-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-accent);transform:translateY(-6px)}.project-card-interactive{cursor:pointer}.project-card-interactive:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.project-card-media{height:230px;position:relative;overflow:hidden}.project-card-image{object-fit:cover;width:100%;height:100%;transition:transform .5s var(--ease-out)}.project-card:hover .project-card-image{transform:scale(1.08)}.project-card-category{color:#fff;letter-spacing:.4px;text-transform:uppercase;transition:transform .3s var(--ease-out);background:#1a1e26d9;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;position:absolute;top:14px;left:14px}.project-card:hover .project-card-category{transform:translateY(-2px)}.project-card-overlay{opacity:0;transition:opacity .3s var(--ease-out);background:linear-gradient(#12151b00 40%,#12151bbf 100%);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.project-card:hover .project-card-overlay,.project-card-interactive:focus-visible .project-card-overlay{opacity:1}.project-card-overlay-text{color:#fff;letter-spacing:.3px;transition:transform .3s var(--ease-out);border:1.5px solid #fff9;border-radius:999px;padding:10px 20px;font-size:14px;font-weight:700;transform:translateY(10px)}.project-card:hover .project-card-overlay-text,.project-card-interactive:focus-visible .project-card-overlay-text{transform:translateY(0)}.project-card-body{padding:var(--space-4);flex:1}.project-card-body h3{margin-bottom:var(--space-1);font-size:18px}.project-card-body p{color:var(--color-text-muted);margin-bottom:0;font-size:14px}.lightbox-backdrop{z-index:100;padding:var(--space-4);animation:fadeIn .25s var(--ease-out) both;background:#12151bd1;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-panel{background:var(--color-surface);border-radius:var(--radius-lg);width:100%;max-width:720px;max-height:90vh;box-shadow:var(--shadow-lg);animation:scaleIn .3s var(--ease-premium) both;flex-direction:column;display:flex;position:relative;overflow:hidden}.lightbox-close{z-index:2;cursor:pointer;background:#12151ba6;border:none;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;transition:background-color .2s,transform .2s;display:flex;position:absolute;top:12px;right:12px}.lightbox-close:hover{background:#12151bd9;transform:scale(1.06)}.lightbox-close-icon{color:#fff;width:18px;height:18px}.lightbox-media{flex-shrink:0;height:320px}.lightbox-image{object-fit:cover;width:100%;height:100%}.lightbox-body{padding:var(--space-5);overflow-y:auto}.lightbox-category{letter-spacing:.4px;text-transform:uppercase;color:var(--color-accent-dark);margin-bottom:var(--space-2);font-size:12px;font-weight:700;display:inline-block}.lightbox-body h3{margin-bottom:var(--space-2)}.lightbox-body p{color:var(--color-text-muted);margin-bottom:0}@media (width>=640px){.lightbox-media{height:400px}}@media (prefers-reduced-motion:reduce){.lightbox-backdrop,.lightbox-panel{animation:none}}.hero-visual{filter:drop-shadow(0 20px 40px #00000059);width:100%;max-width:480px;height:auto;animation:scaleIn .8s var(--ease-premium) .2s both;transition:transform .4s var(--ease-out);display:block}.hero-visual:hover{transform:translateY(-4px)}.hero-weld-core{transform-origin:213px 170px;animation:1.6s ease-in-out infinite weldCorePulse}@keyframes weldCorePulse{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.18)}}.hero-weld-halo{transform-origin:213px 170px;animation:2.4s ease-in-out infinite weldHaloPulse}@keyframes weldHaloPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.85;transform:scale(1.12)}}.hero-spark{transform-origin:213px 170px;animation:1.1s ease-in-out infinite sparkFlicker}@keyframes sparkFlicker{0%,to{opacity:.15}15%{opacity:1}40%{opacity:.35}60%{opacity:.9}85%{opacity:.2}}@media (prefers-reduced-motion:reduce){.hero-visual{animation:none}.hero-weld-core,.hero-weld-halo,.hero-spark{opacity:.85;animation:none}}.hero{background-color:var(--color-primary);background-image:repeating-linear-gradient(0deg, #f5a83f0d 0, #f5a83f0d 1px, transparent 1px, transparent 34px), repeating-linear-gradient(90deg, #f5a83f0d 0, #f5a83f0d 1px, transparent 1px, transparent 34px), linear-gradient(160deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);color:var(--color-on-dark);padding-block:var(--space-8) calc(var(--space-8) + 22px);clip-path:polygon(0 0,100% 0,100% 97%,0 100%);position:relative;overflow:hidden}.hero-inner{gap:var(--space-7);grid-template-columns:1fr;align-items:center;display:grid}.hero-content h1{color:var(--color-on-dark);margin-bottom:var(--space-3)}.hero-eyebrow-anim{animation:fadeInUp .6s var(--ease-out) both}.hero-headline-anim{animation:fadeInUp .7s var(--ease-out) .1s both}.hero-subtext-anim{animation:fadeInUp .7s var(--ease-out) .2s both}.hero-actions-anim{animation:fadeInUp .7s var(--ease-out) .32s both}.hero-whatsapp-anim{animation:fadeIn .7s var(--ease-out) .44s both}.hero-subtext{color:var(--color-on-dark-muted);max-width:500px;margin-bottom:var(--space-5);font-size:17px}.hero-actions{gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.hero-whatsapp-link{color:var(--color-on-dark-muted);align-items:center;gap:8px;font-size:14px;font-weight:600;transition:color .2s;display:inline-flex}.hero-whatsapp-link:hover{color:var(--color-on-dark)}.hero-whatsapp-icon{width:18px;height:18px;color:var(--color-whatsapp)}.hero-visual-wrap{justify-content:center;display:flex}.trust-strip{background:var(--color-bg-alt);border-bottom:1px solid var(--color-border)}.trust-strip-inner{gap:var(--space-4);padding-block:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}.trust-strip-item{color:var(--color-text);border-radius:var(--radius-sm);transition:transform .25s var(--ease-out), color .25s ease;align-items:center;gap:10px;padding:6px;font-size:13.5px;font-weight:600;display:flex}.trust-strip-item:hover{transform:translateY(-2px)}.trust-strip-item:hover .trust-strip-icon{color:var(--color-accent);transform:scale(1.1)}.trust-strip-icon{width:22px;height:22px;color:var(--color-accent-dark);transition:transform .25s var(--ease-out), color .25s ease;flex-shrink:0}.services-grid,.projects-grid{gap:var(--space-5);grid-template-columns:1fr;display:grid}.section-cta{margin-top:var(--space-6);justify-content:center;display:flex}.section-cta-icon{width:18px;height:18px}.why-grid{gap:var(--space-5);grid-template-columns:1fr;display:grid}.why-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5)}.why-card-icon{border-radius:var(--radius-md);background:var(--color-primary);width:52px;height:52px;margin-bottom:var(--space-3);justify-content:center;align-items:center;display:inline-flex}.why-card-icon-svg{width:26px;height:26px;color:var(--color-accent-light)}.why-card p{color:var(--color-text-muted);margin-bottom:0;font-size:14.5px}.about-preview{gap:var(--space-6);grid-template-columns:1fr;align-items:center;display:grid}.about-preview-media{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:box-shadow .35s var(--ease-out);overflow:hidden}.about-preview-media:hover{box-shadow:var(--shadow-lg)}.about-preview-image{object-fit:cover;width:100%;height:320px;transition:transform .5s var(--ease-out)}.about-preview-media:hover .about-preview-image{transform:scale(1.05)}.about-preview-content p{color:var(--color-text-muted)}.process-grid{gap:var(--space-5);grid-template-columns:1fr;display:grid}.process-step{text-align:center;padding:var(--space-4)}.process-step-number{border:2px solid var(--color-accent);width:56px;height:56px;color:var(--color-accent-dark);margin-bottom:var(--space-3);border-radius:50%;justify-content:center;align-items:center;font-size:17px;font-weight:800;display:inline-flex}.process-step p{color:var(--color-text-muted);margin-bottom:0;font-size:14.5px}.cta-banner{padding-block:var(--space-8);text-align:center}.cta-banner-inner h2{max-width:620px;margin-inline:auto}.cta-banner-inner>.reveal>p{max-width:560px;margin-inline:auto;margin-bottom:var(--space-5)}.cta-banner-actions{justify-content:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.contact-strip-grid{gap:var(--space-4);grid-template-columns:1fr;display:grid}.contact-strip-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);text-align:center;transition:box-shadow .2s,transform .2s,border-color .2s}.contact-strip-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-accent);transform:translateY(-3px)}.contact-strip-icon{width:28px;height:28px;color:var(--color-accent-dark);margin-bottom:var(--space-2)}.contact-strip-card h3{margin-bottom:4px;font-size:16px}.contact-strip-card p{color:var(--color-text-muted);word-break:break-word;margin-bottom:0;font-size:13.5px}@media (width>=640px){.services-grid,.projects-grid,.why-grid,.process-grid,.contact-strip-grid{grid-template-columns:repeat(2,1fr)}.trust-strip-inner{grid-template-columns:repeat(4,1fr)}}@media (width>=900px){.hero-inner{grid-template-columns:1.1fr .9fr}.about-preview{grid-template-columns:1fr 1fr}}@media (width>=1024px){.services-grid,.projects-grid{grid-template-columns:repeat(3,1fr)}.why-grid,.process-grid,.contact-strip-grid{grid-template-columns:repeat(4,1fr)}}.page-header{background-color:var(--color-primary);background-image:repeating-linear-gradient(0deg, #f5a83f0d 0, #f5a83f0d 1px, transparent 1px, transparent 34px), repeating-linear-gradient(90deg, #f5a83f0d 0, #f5a83f0d 1px, transparent 1px, transparent 34px), linear-gradient(160deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);color:var(--color-on-dark);padding-block:var(--space-7) var(--space-6)}.page-header .eyebrow{animation:fadeInUp .55s var(--ease-out) both}.page-header-accent{width:48px;height:3px;margin:var(--space-2) 0 var(--space-3);background:linear-gradient(90deg, var(--color-accent), var(--color-accent-light));transform-origin:0;animation:accentGrow .6s var(--ease-premium) .15s both;border-radius:2px;display:block;transform:scaleX(0)}@keyframes accentGrow{to{transform:scaleX(1)}}.page-header h1{color:var(--color-on-dark);margin-bottom:var(--space-2);animation:fadeInUp .65s var(--ease-out) .1s both}.page-header-subtext{color:var(--color-on-dark-muted);max-width:560px;animation:fadeInUp .7s var(--ease-out) .2s both;margin-bottom:0;font-size:16px}.about-intro{gap:var(--space-6);grid-template-columns:1fr;align-items:center;display:grid}.about-intro-content p{color:var(--color-text-muted)}.about-intro-media{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:box-shadow .35s var(--ease-out);overflow:hidden}.about-intro-media:hover{box-shadow:var(--shadow-lg)}.about-intro-image{object-fit:cover;width:100%;height:340px;transition:transform .5s var(--ease-out)}.about-intro-media:hover .about-intro-image{transform:scale(1.05)}.mission-block{text-align:center}.mission-block p{margin-inline:auto;max-width:620px;margin-bottom:0;font-size:17px}.values-grid{gap:var(--space-5);grid-template-columns:1fr;display:grid}.value-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);transition:transform .3s var(--ease-out), box-shadow .3s var(--ease-out), border-color .3s var(--ease-out)}.value-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-accent);transform:translateY(-5px)}.value-card-icon{border-radius:var(--radius-md);background:var(--color-primary);width:52px;height:52px;margin-bottom:var(--space-3);transition:transform .3s var(--ease-premium);justify-content:center;align-items:center;display:inline-flex}.value-card:hover .value-card-icon{transform:translateY(-3px)rotate(-4deg)}.value-card-icon-svg{width:26px;height:26px;color:var(--color-accent-light)}.value-card p{color:var(--color-text-muted);margin-bottom:0;font-size:14.5px}.workshop-strip{gap:var(--space-4);grid-template-columns:1fr;display:grid}.workshop-strip-image-wrap{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow .3s var(--ease-out);overflow:hidden}.workshop-strip-image-wrap:hover{box-shadow:var(--shadow-md)}.workshop-strip-image{object-fit:cover;width:100%;height:220px;transition:transform .5s var(--ease-out)}.workshop-strip-image-wrap:hover .workshop-strip-image{transform:scale(1.06)}.about-cta-inner{text-align:center}.about-cta-inner p{color:var(--color-text-muted);margin-bottom:var(--space-5)}@media (width>=640px){.values-grid{grid-template-columns:repeat(2,1fr)}.workshop-strip{grid-template-columns:repeat(3,1fr)}}@media (width>=900px){.about-intro{grid-template-columns:1fr 1fr}}@media (width>=1024px){.values-grid{grid-template-columns:repeat(4,1fr)}}.services-full-grid{gap:var(--space-5);grid-template-columns:1fr;display:grid}.services-cta{text-align:center}.services-cta-inner p{max-width:560px;margin-inline:auto;margin-bottom:var(--space-5)}@media (width>=640px){.services-full-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.services-full-grid{grid-template-columns:repeat(3,1fr)}}.filter-bar{gap:var(--space-2);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.projects-full-grid{gap:var(--space-5);animation:fadeIn .35s var(--ease-out) both;grid-template-columns:1fr;display:grid}.projects-empty{color:var(--color-text-muted);text-align:center;padding:var(--space-6) 0}.projects-cta{text-align:center}.projects-cta-inner p{margin-bottom:var(--space-5)}@media (width>=640px){.projects-full-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.projects-full-grid{grid-template-columns:repeat(3,1fr)}}.contact-layout{gap:var(--space-6);grid-template-columns:1fr;align-items:start;display:grid}.contact-details{gap:var(--space-3);flex-direction:column;display:flex}.contact-detail-card{gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);transition:transform .25s var(--ease-out), box-shadow .25s var(--ease-out), border-color .25s ease;border-left:3px solid #0000;align-items:flex-start;display:flex}.contact-detail-card:hover{box-shadow:var(--shadow-sm);border-left-color:var(--color-accent);transform:translate(4px)}.contact-detail-icon{width:24px;height:24px;color:var(--color-accent-dark);transition:transform .25s var(--ease-out);flex-shrink:0;margin-top:2px}.contact-detail-card:hover .contact-detail-icon{transform:scale(1.12)}.contact-detail-card h3{margin-bottom:4px;font-size:15px}.contact-detail-card a{color:var(--color-text);font-size:14px;font-weight:500;transition:color .2s}.contact-detail-card a:hover{color:var(--color-accent-dark)}.contact-detail-card p{color:var(--color-text-muted);margin-bottom:0;font-size:14px}.contact-hours-row{justify-content:space-between;gap:var(--space-3);font-size:13.5px;display:flex}.contact-form-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-5);transition:box-shadow .3s var(--ease-out)}.contact-form-card:focus-within{box-shadow:var(--shadow-lg)}.contact-form-card h2{margin-bottom:var(--space-4)}.form-fieldset{margin:0 0 var(--space-4);border:none;padding:0}.map-embed{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.map-embed iframe{border:0;width:100%;height:380px;display:block}.map-placeholder{justify-content:center;align-items:center;gap:var(--space-2);background:var(--color-bg-alt);border:1.5px dashed var(--color-border);text-align:center;height:320px;padding:var(--space-4);flex-direction:column;display:flex}.map-placeholder-icon{width:32px;height:32px;color:var(--color-text-muted)}.map-placeholder p{color:var(--color-text-muted);max-width:380px;margin-bottom:0;font-size:14px}@media (width>=900px){.contact-layout{grid-template-columns:.85fr 1.15fr}}.quote-layout{gap:var(--space-6);grid-template-columns:1fr;align-items:start;display:grid}.quote-form-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-5);transition:box-shadow .3s var(--ease-out)}.quote-form-card:focus-within{box-shadow:var(--shadow-lg)}.quote-side{gap:var(--space-4);flex-direction:column;display:flex}.quote-side-card{background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);transition:box-shadow .3s var(--ease-out), transform .3s var(--ease-out), border-color .3s ease}.quote-side-card:hover{box-shadow:var(--shadow-sm);border-color:var(--color-accent);transform:translateY(-3px)}.quote-side-card h3{margin-bottom:var(--space-2)}.quote-side-card p{color:var(--color-text-muted);margin-bottom:var(--space-3);font-size:14px}.quote-side-card .btn{margin-bottom:var(--space-2)}.quote-side-whatsapp{margin-bottom:0!important}.quote-side-steps{color:var(--color-text-muted);flex-direction:column;gap:6px;padding-left:20px;font-size:14px;list-style:decimal;display:flex}@media (width>=900px){.quote-layout{grid-template-columns:1.4fr 1fr}}.not-found{background:var(--color-bg-alt);align-items:center;min-height:60vh;display:flex}.not-found-inner{text-align:center;padding-block:var(--space-8)}.not-found-code{font-family:var(--font-display);color:var(--color-accent);margin-bottom:var(--space-2);font-size:96px;font-weight:800;line-height:1;display:block}.not-found-inner p{color:var(--color-text-muted);max-width:420px;margin-inline:auto;margin-bottom:var(--space-5)}.not-found-actions{justify-content:center;gap:var(--space-3);flex-wrap:wrap;display:flex}
