/* Estilos locales, sin frameworks ni fuentes de terceros. */
:root{color-scheme:light;--bg:#f4f5f0;--surface:#fff;--ink:#202c24;--muted:#586257;--line:#d8dfd4;--green:#214d35;--accent:#c6edaa;--soft:#e9eee4;--radius:16px}html[data-theme=dark]{color-scheme:dark;--bg:#141b17;--surface:#1d2720;--ink:#eef2e9;--muted:#b0bdb0;--line:#3b483d;--green:#c6edaa;--accent:#c6edaa;--soft:#222e25}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:hover{text-decoration:underline;text-underline-offset:5px}button{cursor:pointer}button:disabled{cursor:default}img,svg,video{max-width:100%;display:block}img{height:auto}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--green);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(3.4rem,6.3vw,6.1rem);font-weight:600}h2{font-size:clamp(2rem,3.3vw,3.35rem);font-weight:500}h3{font-size:1.4rem;letter-spacing:-.025em}p{color:var(--muted)}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--green)}.wrap{width:min(1216px,calc(100% - 80px));margin-inline:auto}.section{padding-block:96px}.eyebrow{font:11px/1.5 'Courier New',monospace;letter-spacing:.13em;font-weight:700;color:var(--green);margin-bottom:22px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:7px}.site-header{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line);background:var(--bg)}.nav-row{height:88px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:inline-flex;gap:9px;align-items:center;font-size:24px;letter-spacing:-1px;font-weight:800;line-height:1}.brand:hover{text-decoration:none}.brand-icon{font-size:45px;color:var(--green);line-height:.8}.brand-light{font-weight:400}.brand small{display:block;font:8px/1.3 'Courier New',monospace;letter-spacing:.29em;margin-top:7px}.site-header nav{display:flex;gap:25px;font-size:13px;font-weight:500}.nav-actions{display:flex;align-items:center;gap:14px}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:52px;padding:14px 23px;background:var(--green);color:var(--bg);border:1px solid transparent;border-radius:7px;font-size:14px;font-weight:700;text-decoration:none;transition:transform .18s,filter .18s}.button:hover{filter:brightness(1.13);transform:translateY(-2px);text-decoration:none}.button.small{min-height:42px;padding:9px 16px;font-size:12px}.icon-button,.menu-toggle{border:1px solid var(--line);background:transparent;color:var(--ink);min-width:44px;min-height:44px;border-radius:7px}.icon-button{font-size:22px}.menu-toggle{display:none;font-size:12px;padding:8px}.skip{position:fixed;top:-90px;left:20px;z-index:50;background:var(--surface);padding:10px 20px}.skip:focus{top:10px}.hero{display:grid;grid-template-columns:1.04fr 1fr;gap:46px;padding-block:72px 76px;align-items:center}.hero h1{line-height:1.01}.hero-description{font-size:16px;max-width:440px;margin-top:25px}.hero-description strong{font-weight:500;color:var(--ink)}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:30px;flex-wrap:wrap}.text-link{font-size:13px;font-weight:700;display:inline-flex;align-items:center;gap:24px;color:var(--ink);min-height:40px}.micro{font-size:11px;margin-top:21px}.micro a{text-decoration:underline;text-underline-offset:3px}.hero-art{background:#213c2e;color:#d9eacb;border-radius:var(--radius);overflow:hidden;box-shadow:0 24px 45px -30px #14351d55}.hero-art svg{width:100%;margin-block:7px}.art-top,.art-bottom{display:flex;justify-content:space-between;gap:12px;padding:24px;font:9px/1.7 'Courier New',monospace;letter-spacing:.07em}.art-top{border-bottom:1px solid #ffffff20}.art-bottom{border-top:1px solid #ffffff20;align-items:center}.art-bottom strong{font-weight:400;color:#f0f8e8}.art-tag{padding:7px 9px;border:1px solid #c6edaa55;border-radius:4px;font-size:8px}.capabilities{border-block:1px solid var(--line)}.capabilities .wrap{display:flex;justify-content:space-between;gap:20px;padding-block:23px;font-size:12px;color:var(--muted)}.capabilities span::before{content:'+';margin-right:16px;color:var(--green)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:40px}.section-heading>p{font-size:14px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:29px;display:flex;flex-direction:column;align-items:start}.card-number{font:12px 'Courier New',monospace;color:var(--green);margin-bottom:45px}.service-card h3{margin-bottom:15px}.service-card p{font-size:14px;margin-bottom:25px}.service-card a{margin-top:auto;border-top:1px solid var(--line);width:100%;padding-top:20px;justify-content:space-between}.portfolio{background:var(--soft)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 22px}.project-image{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:10px;background:var(--surface)}.project-image img{position:relative;width:100%;height:100%;object-fit:cover;transition:transform .3s}.project-image:hover img{transform:scale(1.03)}.image-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:30px 30px;color:var(--green)}.image-fallback span{font:10px 'Courier New',monospace;letter-spacing:.1em}.image-fallback b{font-size:100px;font-weight:400;line-height:1.5}.gallery figcaption{display:flex;justify-content:space-between;gap:12px;margin-top:17px}.gallery h3{font-size:16px;font-weight:500}.gallery p{font-size:11px;margin-top:5px}.video-details{margin-top:35px}.video-details video{width:100%;max-height:600px;background:#15231a;border-radius:8px;margin-top:20px}.video-error{padding-block:20px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;list-style:none;padding:0;margin:48px 0 0}.process-grid li{border-top:1px solid var(--line);padding-top:20px}.process-grid span{font:12px 'Courier New',monospace;color:var(--green)}.process-grid h3{font-size:18px;line-height:1.25;margin:24px 0 15px}.process-grid p{font-size:13px}.about{background:var(--green);padding-block:65px;color:var(--bg)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.about .eyebrow{color:inherit;opacity:.8}.about h2{font-size:clamp(2rem,3vw,2.8rem)}.about p{color:inherit;font-size:15px}.founder{display:flex;align-items:center;gap:15px;margin-top:25px}.initials{display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;width:48px;height:48px;font-size:13px}.founder strong{font-size:14px}.founder small{display:block;font-size:11px;margin-top:3px}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:start}.lead{font-size:17px;max-width:580px;margin-block:25px 30px}.check-list{padding:0;list-style:none;margin-block:25px}.check-list li{position:relative;padding-left:24px;margin-bottom:14px;font-size:14px;color:var(--muted)}.check-list li::before{content:'✓';position:absolute;left:0;color:var(--green)}.quote-note{border-left:2px solid var(--green);padding-left:20px;margin-top:40px;max-width:410px}.quote-note strong{font-size:13px}.quote-note p{font-size:12px;margin-top:8px}.quote-panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:32px;box-shadow:0 16px 40px -30px #14291860}.form-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:28px}.form-heading h3{font-size:20px}.form-heading span{font:10px 'Courier New',monospace;background:var(--soft);padding:4px 8px;border-radius:4px}label{display:block;font-size:12px;font-weight:700;margin:18px 0 8px}input,select,textarea{width:100%;border:1px solid var(--line);background:var(--bg);color:var(--ink);padding:12px;border-radius:6px;font-size:14px;min-height:46px}textarea{resize:vertical;max-height:400px}textarea::placeholder{color:var(--muted)}fieldset{padding:0;border:0;margin:0;min-width:0}legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.field-note{font-size:11px;margin-top:12px;line-height:1.65}.optional{font-size:10px;font-weight:400;color:var(--muted);float:right}.full{width:100%;margin-top:23px}.quote-panel .eyebrow{margin-bottom:6px}#result-box{border-top:1px solid var(--line);margin-top:25px;padding-top:25px}#result-price{font-size:38px;font-weight:600;letter-spacing:-.04em;color:var(--green);line-height:1.2}#result-detail{font-size:12px;margin-top:9px}.faq-section{background:var(--soft)}.faq-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.faq-grid>div>p:last-child{font-size:13px;margin-top:25px}details{border-bottom:1px solid var(--line)}summary{padding:21px 26px 21px 0;cursor:pointer;font-size:14px;font-weight:600;position:relative;list-style:none}summary::-webkit-details-marker{display:none}summary::after{content:'+';position:absolute;right:2px;font-size:19px;top:16px;color:var(--green)}details[open]>summary::after{content:'−'}details>p{font-size:14px;padding-bottom:23px;max-width:750px}.contact{text-align:center}.contact h2{font-size:clamp(2.8rem,5vw,4.8rem)}.contact .button{margin-top:32px}.contact>p:last-child{font-size:12px;margin-top:22px}footer{border-top:1px solid var(--line);padding-block:48px 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.footer-grid p{font-size:12px;margin-top:15px}.footer-grid h2{font-size:12px;letter-spacing:0;margin-bottom:15px;font-weight:700}.footer-grid>div>a:not(.brand){display:block;font-size:12px;margin-bottom:10px;padding-block:4px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:22px;margin-top:35px;font:10px 'Courier New',monospace;color:var(--muted)}.service-page{padding-block:45px 80px}.breadcrumbs{display:flex;gap:12px;font-size:12px;margin-bottom:60px;color:var(--muted)}.service-page h1{font-size:clamp(2.6rem,5vw,4.8rem);max-width:870px}.service-page>.lead{max-width:780px}.detail-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;margin-block:65px}.detail-grid h2,.related h2{font-size:25px;margin-block:30px 18px}.detail-grid p{font-size:15px}.detail-grid aside{padding:30px;background:var(--soft);border-radius:12px;align-self:start}.detail-grid aside h2{margin-top:15px}.detail-grid aside a{margin-top:20px}.related{margin-top:60px}.related a{margin-right:35px}
@media(min-width:901px){.site-header nav{display:flex!important}}@media(max-width:1100px){.site-header nav{gap:14px;font-size:12px}.nav-row{gap:15px}.hero{gap:28px}.quote-grid{gap:45px}.wrap{width:calc(100% - 48px)}}@media(max-width:900px){.site-header nav{position:absolute;top:88px;left:0;right:0;display:flex;flex-wrap:wrap;padding:10px 24px;background:var(--bg);border-bottom:1px solid var(--line)}.js .site-header nav{display:none}.js .site-header nav.is-open{display:flex}.site-header nav a{padding:12px 0;flex:1 1 40%}.js .menu-toggle{display:block}.hero{padding-top:75px}.hero h1{font-size:clamp(3.2rem,7vw,4.6rem)}.hero-art .art-top{font-size:7px}.art-top,.art-bottom{padding:18px}.service-card{padding:22px}.gallery{grid-template-columns:repeat(2,1fr)}.section{padding-block:70px}.process-grid{grid-template-columns:repeat(2,1fr)}.faq-grid{gap:35px}.about-grid{gap:35px}.section-heading>p br{display:none}.detail-grid{gap:35px}}
@media(max-width:640px){html{scroll-padding-top:90px}.wrap{width:calc(100% - 36px)}.nav-row{height:76px;gap:10px}.brand{font-size:20px}.brand-icon{font-size:35px}.brand small{font-size:7px}.nav-actions{gap:7px}.nav-actions .button{display:none}.site-header nav{top:76px}.hero{grid-template-columns:1fr;padding-block:55px 36px;gap:34px}.hero h1{font-size:clamp(3.3rem,14vw,4.8rem)}.hero-description{font-size:15px}.hero-actions{gap:18px}.hero-art{max-width:480px;width:100%;margin:auto}.hero-art svg{max-height:330px}.art-top,.art-bottom{padding:18px}.capabilities .wrap{flex-wrap:wrap;justify-content:center;gap:11px 20px;padding-block:20px;font-size:10px}.capabilities span::before{margin-right:8px}.section{padding-block:55px}.section-heading{display:block;margin-bottom:28px}.section-heading>p,.section-heading>a{margin-top:18px}.service-grid{grid-template-columns:1fr}.service-card{padding:25px}.card-number{margin-bottom:25px}.gallery{gap:25px 14px}.gallery h3{font-size:14px}.gallery p{font-size:10px}.gallery figcaption>span{display:none}.image-fallback b{font-size:70px}.process-grid{gap:20px}.process-grid h3{font-size:17px}.process-grid p{font-size:12px}.about{padding-block:45px}.about-grid,.quote-grid,.faq-grid,.detail-grid{grid-template-columns:1fr;gap:32px}.quote-panel{padding:24px}.quote-note{margin-top:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{font-size:9px;gap:20px}.lead{font-size:16px}.service-page{padding-top:35px}.breadcrumbs{margin-bottom:40px;flex-wrap:wrap}.detail-grid{margin-block:40px}input,select,textarea{font-size:16px}.related a{display:flex}h2{font-size:2.1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.button:hover,.project-image:hover img{transform:none}}
.original-logo{width:145px;height:72px;object-fit:contain}html[data-theme=dark] .original-logo{filter:invert(1)}.service-grid{grid-template-columns:repeat(4,1fr)}@media(max-width:1100px){.service-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.original-logo{width:125px;height:66px}.service-grid{grid-template-columns:1fr}}
.social-strip{background:var(--surface);border-top:1px solid var(--line);padding:24px 0}.social-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.social-row strong{font-size:16px}.social-row p{font-size:12px;margin-top:4px}.social-links{display:flex;gap:12px}.social-links a{display:flex;align-items:center;gap:25px;min-height:48px;border:1px solid var(--line);border-radius:8px;padding:10px 20px;font-size:14px;font-weight:bold}.social-links a:hover{border-color:var(--green)}@media(max-width:640px){.social-row{align-items:start;flex-direction:column}.social-links{width:100%}.social-links a{flex:1;justify-content:space-between;padding:12px}}
