:root{--ink:#121417;--ink-soft:#1c2026;--paper:#f6f4ef;--line:#1214171a;--muted:#5b6168;--live:#d6a21a;--live-ink:#3d2d05;--focus:#1f6b4a;--card:#fff;--radius:12px;--shadow:0 10px 28px #12141712;--sans:"Source Sans 3", "Segoe UI", sans-serif;--display:"Barlow Condensed", "Arial Narrow", sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{color:var(--ink);background:var(--paper);font-family:var(--sans);-webkit-tap-highlight-color:transparent;margin:0;line-height:1.5;overflow-x:clip}body.nav-open{overflow:hidden}a{color:inherit;text-decoration:none}img{object-fit:cover;width:100%;height:auto;display:block}.job-card-media img{height:100%}button,input,textarea,select{font:inherit}h1,h2,h3{font-family:var(--display);letter-spacing:.03em;margin:0 0 .35em;line-height:1}h1{text-transform:uppercase;font-size:clamp(1.8rem,3vw,2.4rem)}h2{text-transform:uppercase;font-size:clamp(1.5rem,2.4vw,2rem)}h3{font-size:1.25rem}p{margin:0}.app-shell{flex-direction:column;min-height:100svh;display:flex}.app-shell main{flex:1}.container{width:min(1180px,100% - 32px);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);margin:0 auto}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--live-ink);letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:.72rem;font-weight:700}.lead{max-width:38rem;color:var(--muted);font-size:1.05rem}.section{padding:48px 0 64px}.section-head{margin-bottom:24px}.section-tight{padding-top:32px;padding-bottom:12px}.section-alt{background:#efece4}.home-hero{background:var(--ink);color:#f3efe6;padding:48px 0 40px}.home-hero-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:36px;display:grid}.home-hero .eyebrow{color:var(--live)}.home-hero h1{color:#fff;letter-spacing:.01em;gap:0;max-width:none;margin-bottom:.2em;font-size:clamp(2.8rem,5vw,4rem);line-height:.86;display:grid}@media (width>=961px){.home-hero h1{font-size:4.35rem}}.hero-title,.hero-accent{display:block}.hero-accent{color:var(--live)}.hero-rule{background:var(--live);width:56px;height:3px;margin:16px 0 18px;display:block}.hero-facts{flex-wrap:wrap;gap:8px 18px;margin:22px 0 0;padding:0;list-style:none;display:flex}.hero-facts li{color:#c9c4b8;font-size:.92rem}.hero-facts li:before{content:"";background:var(--live);border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block}.home-hero .lead{color:#c9c4b8;max-width:28rem}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.home-hero-photo{aspect-ratio:4/3;border-radius:var(--radius);margin:0;position:relative;overflow:hidden;box-shadow:0 18px 40px #00000047}.home-hero-photo img{opacity:0;width:100%;height:100%;transition:opacity .7s;position:absolute;inset:0}.home-hero-photo img.is-active{opacity:1}.hero-dots{z-index:1;gap:6px;display:flex;position:absolute;bottom:12px;right:12px}.hero-dots button{cursor:pointer;background:0 0;border:0;border-radius:50%;width:22px;height:22px;padding:0}.hero-dots button:after{content:"";background:#f3efe661;border-radius:50%;width:8px;height:8px;margin:7px auto;display:block}.hero-dots button.is-active:after{background:var(--live)}.hero-caption{z-index:1;color:#f3efe6;letter-spacing:.04em;background:#121417b8;border-radius:6px;max-width:calc(100% - 108px);margin:0;padding:6px 10px;font-size:.82rem;position:absolute;bottom:12px;left:12px}.quote-board{gap:28px;display:grid}.quote-flow{grid-template-columns:minmax(0,1fr) 46px minmax(0,1fr) 46px minmax(0,1fr) 46px minmax(0,1fr);align-items:center;gap:8px;display:grid}.quote-flow-arrow{border:2px solid var(--live);background:var(--ink);width:46px;height:46px;color:var(--live);border-radius:50%;place-items:center;display:grid}.quote-flow-arrow svg{width:24px;height:24px}.quote-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.quote-actions .button-live{min-width:15.5rem;padding-inline:22px}.quote-steps.is-board{grid-template-columns:repeat(3,minmax(0,1fr))}.quote-steps.is-board li{padding:22px 20px 24px;display:block}.quote-steps.is-board span{margin-bottom:10px;font-size:1.8rem;display:block}.quote-band{background:#efece4;padding:48px 0 56px}.quote-layout{grid-template-columns:.9fr 1.1fr;align-items:center;gap:40px;display:grid}.quote-steps{gap:14px;margin:0;padding:0;list-style:none;display:grid}.quote-steps li{border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);grid-template-columns:auto 1fr;align-items:start;gap:14px;padding:16px 18px;display:grid}.quote-steps span{color:var(--live);font-family:var(--display);letter-spacing:.1em;font-size:1.15rem;font-weight:700;line-height:1.2}.quote-steps strong{font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px;font-size:1.2rem;display:block}.quote-steps p{color:var(--muted)}.quote-steps.is-compact{margin-top:22px}.quote-steps.is-compact li{box-shadow:none;border:1px solid var(--line)}.timeline{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none;display:grid}.timeline li{padding:0 28px 0 0;position:relative}.timeline li:not(:last-child):after{content:"";background:var(--live);opacity:.35;height:2px;position:absolute;top:17px;left:40px;right:12px}.timeline-n{background:var(--ink);width:36px;height:36px;color:var(--live);font-family:var(--display);letter-spacing:.08em;border-radius:50%;justify-content:center;align-items:center;margin-bottom:14px;font-size:.95rem;font-weight:700;display:inline-flex}.timeline h2{font-size:1.45rem}.timeline p{color:var(--muted)}.process-split{grid-template-columns:1.1fr .9fr;align-items:start;gap:36px;display:grid}.prep-list,.zone-list{gap:10px;margin:16px 0 20px;padding:0;list-style:none;display:grid}.prep-list li{color:var(--muted);padding-left:18px;position:relative}.prep-list li:before{content:"";background:var(--live);border-radius:50%;width:7px;height:7px;position:absolute;top:.55em;left:0}.zone-list{flex-wrap:wrap;gap:8px;display:flex}.zone-list a{border:1px solid var(--line);background:var(--card);border-radius:999px;align-items:center;min-height:36px;padding:0 14px;font-weight:650;display:inline-flex}.zone-list a:hover{border-color:var(--ink)}.faq-list{gap:10px;display:grid}.process-split .faq-list{max-width:none}.faq-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);padding:4px 18px}.faq-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:12px 0;font-weight:650;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--live-ink);font-weight:700}.faq-item[open] summary:after{content:"–"}.faq-item p{color:var(--muted);padding:0 0 16px}.featured-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 18px;display:flex}.featured-head h2{margin-bottom:0}.home-cta{background:var(--ink);color:#f3efe6;padding:42px 0}.home-cta .eyebrow{color:var(--live)}.home-cta h2{color:#fff}.home-cta .lead{color:#c9c4b8}.home-cta-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 28px;display:flex}.catalog-heading{flex:240px;min-width:0}.catalog-lead{max-width:36rem;color:var(--muted);margin-top:6px}.catalog-detail{flex-wrap:wrap;align-items:center;gap:8px 10px;margin:4px 0 14px;display:flex}.catalog-detail .filter-label{flex:none}.catalog-count{color:var(--muted);margin:-4px 0 18px}.catalog-applied{flex-wrap:wrap;align-items:center;gap:8px;margin:-4px 0 16px;display:flex}.applied-chip{border:1px solid var(--ink);min-height:32px;color:var(--ink);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:0 10px 0 12px;font-size:.85rem;font-weight:650;display:inline-flex}.applied-chip span[aria-hidden]{color:var(--muted);font-size:1.1rem;line-height:1}.applied-chip:hover{border-color:var(--live)}main h1:focus{outline:none}.stack-lg{gap:28px;display:grid}.site-header{z-index:10;padding-top:env(safe-area-inset-top);background:var(--ink);color:#f3efe6;position:sticky;top:0}.header-bar{z-index:9;justify-content:space-between;align-items:center;gap:16px;min-height:72px;display:flex;position:relative}.brand{align-items:center;min-width:0;display:flex}.brand-logo{object-fit:contain;width:auto;max-width:min(240px,46vw);height:44px;display:block}.site-nav{gap:clamp(12px,1.4vw,22px);display:flex}#servicios{scroll-margin-top:calc(72px + env(safe-area-inset-top))}.site-nav a,.site-nav button{font:inherit;color:#d8d3c8;cursor:pointer;background:0 0;border:0;padding:0;font-weight:650;position:relative}.site-nav a.active,.site-nav button:hover{color:#fff}.site-nav a.active:after{content:"";background:var(--live);width:100%;height:2px;position:absolute;bottom:-10px;left:0}.text-link{color:var(--focus);font-weight:650}.nav-toggle{background:0 0;border:1px solid #ffffff2e;border-radius:10px;width:44px;height:44px;padding:0;display:none;position:relative}.nav-toggle span:not(.sr-only){background:#f3efe6;width:16px;height:2px;transition:transform .18s,opacity .18s;display:block;position:absolute;left:13px}.nav-toggle span:nth-of-type(2){top:15px}.nav-toggle span:nth-of-type(3){top:21px}.nav-toggle span:nth-of-type(4){top:27px}.nav-toggle.is-open span:nth-of-type(2){transform:translateY(6px)rotate(45deg)}.nav-toggle.is-open span:nth-of-type(3){opacity:0}.nav-toggle.is-open span:nth-of-type(4){transform:translateY(-6px)rotate(-45deg)}.nav-backdrop{display:none}.contact-modal{background:var(--card);width:min(24rem,100vw - 28px);max-height:min(92vh,40rem);color:var(--ink);border:0;border-radius:18px;margin:auto;padding:0;overflow:auto;box-shadow:0 28px 70px #08090b59}.contact-modal::backdrop{background:#08090bb8}.contact-modal-head{background:var(--ink);color:#f3efe6;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 18px 16px;display:flex}.contact-modal-kicker{color:var(--live);letter-spacing:.16em;text-transform:uppercase;margin:0 0 2px;font-size:.72rem;font-weight:700}.contact-modal-head h2{color:#fff;font-family:var(--display);letter-spacing:.03em;text-transform:uppercase;margin:0;font-size:2.15rem;line-height:.95}.contact-modal-close{color:#f3efe6;cursor:pointer;background:0 0;border:1px solid #f3efe62e;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;margin-top:2px;display:inline-flex}.contact-modal-close svg{width:16px;height:16px}.contact-modal-close:hover{background:#f3efe614}.contact-modal-body{gap:14px;padding:18px;display:grid}.contact-modal-phone{gap:10px;display:grid}.contact-modal-phone .contact-modal-kicker{color:var(--muted)}.contact-modal-number{font-family:var(--display);letter-spacing:.02em;margin:0;font-size:2.6rem;line-height:.95}.contact-modal-note{color:var(--muted);margin:-4px 0 0;font-size:.9rem}.contact-modal-actions{grid-template-columns:1.35fr .65fr;gap:8px;display:grid}.contact-modal-actions:has(.button:only-child){grid-template-columns:1fr}.contact-modal-actions .button{gap:8px;min-height:44px}.contact-modal-actions svg{flex:none;width:18px;height:18px}.contact-modal-line{border:1px solid var(--line);border-radius:var(--radius);color:inherit;background:#fbfaf6;gap:2px;padding:12px 14px;display:grid}.contact-modal-line span,.contact-modal-line em{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-style:normal;font-weight:700}.contact-modal-line em{color:var(--focus);letter-spacing:.04em;justify-self:start;margin-top:6px}.contact-modal-line strong{overflow-wrap:anywhere;font-weight:650}.contact-modal-line:hover{border-color:var(--ink);background:#fff}.contact-modal-quote{gap:10px;padding-top:4px;display:grid}.contact-modal-quote p{color:var(--muted);margin:0;font-size:.92rem}.contact-modal-quote .button{width:100%}.catalog{padding:22px 0 48px}.catalog-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 18px;margin-bottom:20px;display:flex;position:relative}.catalog-toolbar h1{margin:0}.catalog-tools{flex-wrap:nowrap;flex:280px;justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.catalog-search{flex:220px;align-items:center;min-width:0;max-width:360px;display:flex;position:relative}.catalog-search svg{fill:none;width:18px;height:18px;stroke:var(--muted);stroke-width:2px;stroke-linecap:round;pointer-events:none;position:absolute;left:12px}.catalog-search input{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);background:#fff;border-radius:999px;padding:0 36px 0 40px;font-size:1rem}.catalog-search input:focus{outline:2px solid var(--focus);outline-offset:2px}.catalog-search input::placeholder{color:#8a8f96}.catalog-search input[type=search]::-webkit-search-decoration{appearance:none}.catalog-search input[type=search]::-webkit-search-cancel-button{appearance:none}.search-clear{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:1.2rem;line-height:1;position:absolute;right:4px}.filter-trigger{border:1px solid var(--ink);background:var(--ink);min-height:44px;color:var(--paper);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:8px;padding:0 16px;display:inline-flex}.filter-trigger svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:18px;height:18px}.filter-trigger.is-active,.filter-trigger[aria-expanded=true]{background:var(--live);border-color:var(--live);color:var(--live-ink)}.filter-count{background:var(--paper);min-width:18px;height:18px;color:var(--ink);border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:.72rem;font-weight:700;display:inline-flex}.catalog-filter-wrap{position:relative}.filter-panel{z-index:8;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);width:min(420px,100vw - 32px);box-shadow:var(--shadow);gap:16px;padding:16px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.filter-panel-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.filter-panel-head p{margin:0;font-weight:650}.filter-group{gap:8px;display:grid}.filter-label{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:700}.filter-row{flex-wrap:wrap;gap:6px;display:flex}.filter-panel-foot{border-top:1px solid var(--line);background:var(--card);justify-content:flex-end;margin:4px -16px -16px;padding:12px 16px;display:flex;position:sticky;bottom:0}.filter-panel-foot .button{min-height:40px}@media (width<=720px){.filter-panel-foot .button{width:100%}}.catalog-empty{color:var(--muted);justify-items:start;gap:8px;padding:28px 4px 8px;display:grid}button.text-link{cursor:pointer;background:0 0;border:0;min-height:0;padding:0}.button,.chip{border:1px solid var(--ink);background:var(--ink);min-height:44px;color:var(--paper);cursor:pointer;touch-action:manipulation;border-radius:999px;justify-content:center;align-items:center;padding:0 16px;display:inline-flex}.button-ghost{color:var(--ink);background:0 0}.chip{border-color:var(--line);min-height:30px;color:var(--muted);background:0 0;padding:0 11px;font-size:.82rem}.chip.is-active{border-color:var(--ink);background:var(--ink);color:var(--paper)}.button:disabled{opacity:.55;cursor:not-allowed}.button.button-live{background:var(--live);border-color:var(--live);color:var(--live-ink)}.button.button-ghost-light{color:#f3efe6;background:0 0;border-color:#f3efe647}.service-card,.job-card,.report-block,.contact-form{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}.contact-grid,.contact-page,.report-grid,.footer-grid{gap:24px;display:grid}.contact-page{justify-items:center;gap:28px}.contact-intro .lead{max-width:40rem}.contact-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-channels{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.channel-link{border:1px solid var(--line);background:var(--card);min-height:44px;color:var(--ink);border-radius:999px;align-items:center;gap:8px;padding:0 16px 0 12px;font-weight:650;display:inline-flex}.channel-link svg{flex:none;width:22px;height:22px}.channel-link.is-whatsapp{color:#0d6b60;border-color:#128c7e}.channel-link.is-mail{border-color:var(--ink)}.card-grid,.jobs-grid,.gallery-grid{gap:18px;display:grid}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.jobs-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:22px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spec-grid{flex-wrap:wrap;gap:10px;display:flex}.spec-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);flex:calc(33.333% - 10px);min-width:min(100%,12rem);padding:14px 16px}.spec-item dt{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:700}.spec-item dd{margin:4px 0 0}.service-card,.report-block,.contact-form,.job-card-body{padding:18px}.service-card,.report-block{border-radius:var(--radius)}.service-card.is-poster{background:#121417;padding:0;line-height:0;overflow:hidden}.service-card.is-poster img{width:100%;height:auto;display:block}.service-card.is-link{color:inherit;flex-direction:column;transition:transform .18s,box-shadow .18s;display:flex}@media (hover:hover){.service-card.is-link:hover{transform:translateY(-2px);box-shadow:0 16px 32px #1214171a}}.service-card.is-link .text-link{margin-top:auto;padding-top:12px}.service-hero{background:var(--ink);color:#f3efe6;padding:28px 0 48px}.service-back{color:#f3efe6;align-items:center;min-height:44px;font-weight:650;display:inline-flex}.service-back:hover{color:var(--live)}.service-hero-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:36px;margin-top:22px;display:grid}.service-hero .eyebrow{color:var(--live);margin-top:0}.service-hero-poster{border-radius:var(--radius);margin:0;overflow:hidden;box-shadow:0 18px 40px #00000059}.service-hero-poster img{object-fit:contain;background:#0c0e11;width:100%;height:auto}.service-hero h1{color:#fff;max-width:16ch;font-size:clamp(2.4rem,5vw,3.6rem)}.service-hero .lead{color:#c9c4b8;max-width:38rem}.service-ejes{color:var(--live);font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;margin:16px 0 0;font-size:1.05rem;font-weight:700}.service-includes{grid-template-columns:1fr 1fr;gap:14px;margin:0;padding:0;list-style:none;display:grid}.service-includes li{border:1px solid var(--line);border-top:2px solid var(--live);border-radius:var(--radius);background:var(--card);grid-template-columns:auto 1fr;align-items:start;gap:14px;padding:18px 18px 20px;display:grid}.service-includes span{color:var(--ink);font-family:var(--display);letter-spacing:.04em;font-size:1.45rem;font-weight:700;line-height:1}.service-includes h3{letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px;font-size:1.15rem}.service-includes p{color:var(--muted);margin:0}.service-shot{color:inherit}.service-gallery{grid-template-columns:1fr 1fr}.service-others{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.service-others a{border:1px solid var(--line);border-radius:var(--radius);color:inherit;background:#121417;flex-direction:column;display:flex;overflow:hidden}.service-others img{object-fit:cover;object-position:center top;width:100%;height:132px}.service-others strong{color:#f3efe6;font-family:var(--display);letter-spacing:.03em;text-transform:uppercase;padding:10px 12px 12px;font-size:1rem;font-weight:700}.job-card{border-radius:var(--radius);color:inherit;flex-direction:column;min-width:0;transition:transform .18s,box-shadow .18s;display:flex;overflow:hidden}@media (hover:hover){.job-card:hover{transform:translateY(-2px);box-shadow:0 16px 32px #1214171a}}.job-card.is-upcoming{cursor:default;opacity:.78}.job-card.is-upcoming:hover{transform:none}.job-card-media{aspect-ratio:4/3;position:relative;overflow:hidden}.job-card-media img,.job-card-media .photo-placeholder{aspect-ratio:auto;object-position:center;opacity:0;width:100%;height:100%;transition:opacity .55s;position:absolute;inset:0}.job-card-media img.is-active,.job-card-media .photo-placeholder{opacity:1}.job-card-media.is-contain{background:#1a1c18}.job-card-media.is-contain img{object-fit:contain;object-position:center}.job-card-badges{z-index:1;flex-wrap:wrap;gap:6px;display:flex;position:absolute;bottom:12px;left:12px}.job-card-badges span{color:#f3efe6;letter-spacing:.12em;text-transform:uppercase;background:#121417e0;border-radius:999px;padding:6px 10px;font-size:.68rem;font-weight:700}.job-card-badges span:last-child{color:var(--live-ink);background:#d6a21af0}.job-card-body{flex-direction:column;flex:1;display:flex}.job-card-body h3{text-transform:uppercase;letter-spacing:.04em;font-size:1.45rem}.job-card-body p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 14px;display:-webkit-box;overflow:hidden}.job-card-body .text-link{margin-top:auto}.photo-frame{flex-direction:column;gap:8px;min-width:0;margin:0;display:flex}.photo-well{aspect-ratio:4/3;border:1px solid var(--line);border-radius:var(--radius);background:#ece8df;place-items:center;display:grid;position:relative;overflow:hidden}.photo-well img,.photo-placeholder{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.photo-frame.is-hero .photo-well{aspect-ratio:16/10}.photo-placeholder{color:#5d584e;letter-spacing:.12em;text-transform:uppercase;font-family:var(--display);place-items:center;font-size:1.2rem;display:grid}.photo-frame figcaption{z-index:1;color:var(--muted);padding:0 4px 2px;font-size:.92rem;line-height:1.35;position:relative}.detail-head .lead{max-width:42rem}.detail-bar{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;display:flex}.detail-bar .eyebrow{margin:0}.detail-bar .eyebrow a:hover{color:var(--ink)}.detail-cta{border-radius:var(--radius);background:var(--ink);color:#f3efe6;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;padding:22px 24px;display:flex}.detail-cta .eyebrow{color:var(--live)}.detail-cta h2{color:#fff;margin-bottom:6px}.detail-cta .lead{color:#c9c4b8}.detail-pager{grid-template-columns:1fr 1fr;gap:12px;display:grid}.detail-pager-link{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);align-content:center;gap:6px;min-width:0;min-height:92px;padding:16px 18px;display:grid}.detail-pager-link .eyebrow:before{content:"← "}.detail-pager-link.is-next{text-align:right;grid-column:2;justify-self:stretch}.detail-pager-link.is-next .eyebrow:before{content:none}.detail-pager-link.is-next .eyebrow:after{content:" →"}.detail-pager-link span:last-child{font-family:var(--display);letter-spacing:.03em;text-transform:uppercase;font-size:1.2rem;line-height:1.15}@media (hover:hover){.detail-pager-link:hover{border-color:var(--ink)}}.detail-report{gap:14px;display:grid}.detail-report .section-head{margin-bottom:0}.report-split{grid-template-columns:1fr 1fr;gap:14px;display:grid}.report-column{border:1px solid var(--line);border-top:2px solid var(--live);border-radius:var(--radius);background:#efece4;align-content:start;gap:10px;padding:14px;display:grid}.report-column h3{align-items:baseline;gap:10px;margin:0;padding:6px 6px 4px;font-size:1.25rem;display:flex}.report-column h3 span{color:var(--ink);letter-spacing:.08em;font-size:.95rem}.report-column section{border:1px solid var(--line);background:var(--card);border-radius:10px;gap:8px;padding:14px 16px 16px;display:grid}.report-column .eyebrow{margin:0}.report-column p:not(.eyebrow){color:var(--ink);line-height:1.6}.detail-more{flex-wrap:wrap;gap:8px 16px;display:flex}.report-block p{line-height:1.6}.tag-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tag-list li{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:8px 12px}.tag-list a{color:inherit}.contact-form{border-radius:var(--radius);gap:14px;padding:24px;display:grid}.form-head{gap:6px;margin-bottom:4px;display:grid}.form-head h1,.form-head h2{margin:0;scroll-margin-top:88px}.form-head p{color:var(--muted);font-weight:400}.contact-direct{flex-wrap:wrap;gap:10px;display:flex}.contact-direct .button{gap:8px}.contact-direct .button svg{width:18px;height:18px}.form-split{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:8px 0 2px;font-size:.82rem;font-weight:700}.form-block{border:0;border-top:1px solid var(--line);gap:14px;margin:0;padding:16px 0 0;display:grid}.form-block legend{color:var(--live-ink);letter-spacing:.14em;text-transform:uppercase;padding:0 0 2px;font-size:.72rem;font-weight:700}.contact-form.is-wide{border-top:2px solid var(--live);gap:18px;width:min(46rem,100%);margin-inline:auto;padding:28px 28px 24px}.contact-form .form-head .eyebrow{margin-bottom:0}.contact-form label{gap:6px;font-weight:650;display:grid}.form-hint{color:var(--muted);font-size:.88rem;font-weight:400}.form-guide-title{font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px;font-size:1.15rem}.adjuntos{gap:10px;padding-top:4px;display:grid}.adjuntos-head{gap:4px;font-weight:650;display:grid}.adjuntos-drop,.adjuntos-add{border:1px dashed var(--line);border-radius:var(--radius);width:100%;min-height:168px;color:var(--muted);text-align:center;cursor:pointer;background:#fbfaf6;align-content:center;justify-items:center;gap:6px;padding:22px 18px;display:grid}.adjuntos-drop strong{color:var(--ink);font-size:1.05rem}.adjuntos-drop span:last-child{max-width:28rem;font-size:.9rem}.adjuntos-plus,.adjuntos-add span{background:var(--ink);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.4rem;line-height:1;display:inline-flex}.adjuntos-drop.is-over,.adjuntos-add.is-over,.adjuntos-drop:hover,.adjuntos-add:hover{border-color:var(--live);background:#fff8e8}.adjuntos-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;margin:0;padding:0;list-style:none;display:grid}.adjuntos-grid>li{min-width:0}.adjuntos-item{aspect-ratio:1;background:#1c2026;border-radius:10px;position:relative;overflow:hidden}.adjuntos-item img,.adjuntos-item video{object-fit:cover;width:100%;height:100%}.adjuntos-nombre,.adjuntos-dato{text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0;overflow:hidden}.adjuntos-nombre{font-size:.82rem;font-weight:650}.adjuntos-dato{color:var(--muted);margin-top:2px;font-size:.78rem}.adjuntos-quitar{min-height:28px;color:var(--ink);cursor:pointer;background:#fffffff0;border:0;border-radius:999px;padding:0 10px;font-size:.78rem;font-weight:700;position:absolute;bottom:8px;right:8px}.adjuntos-add{aspect-ratio:1;width:100%;height:auto;min-height:0;color:var(--ink);gap:8px;padding:12px;font-weight:650}.adjuntos-toolbar{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.adjuntos-btn{min-height:38px;padding:0 14px}.adjuntos-meta,.adjuntos-ayuda{color:var(--muted);margin:0;font-size:.88rem}.adjuntos-reglas,.adjuntos-avisos{gap:4px;margin:0;padding:0;font-size:.86rem;list-style:none;display:grid}.adjuntos-reglas{color:var(--muted)}.adjuntos-avisos{color:#8a3b12}.adjuntos-paso{border-radius:var(--radius);background:#fff8e8;border:1px solid #d6a21a66;padding:16px 18px}.adjuntos-paso p:last-child{color:var(--ink);margin:0}.form-ok{color:var(--focus);font-size:.92rem;font-weight:650}.form-ok .text-link{text-underline-offset:2px;text-decoration:underline}@media (hover:hover) and (pointer:fine){.adjuntos-camara{display:none}}.contact-form input,.contact-form textarea,.contact-form select{border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;padding:8px 12px;font-size:1rem}.contact-form input,.contact-form select{height:46px}.field-with-action{display:block;position:relative}.field-with-action.has-action input{padding-right:52px}.field-action{width:40px;height:40px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.field-action svg{width:22px;height:22px}.field-action.is-whatsapp{color:#128c7e}.field-action:hover{background:#f6f4ef}.field-action:disabled{opacity:.45}.form-row{grid-template-columns:1fr 1fr;align-items:start;gap:14px;display:grid}.form-aviso{color:#8a3b12;font-size:.92rem}.contact-actions{flex-wrap:wrap;gap:10px;display:flex}.contact-actions .button{gap:8px}.contact-actions .button svg{width:18px;height:18px}.contact-actions .button-whatsapp{min-width:15.5rem}.button-whatsapp{color:#fff;background:#128c7e;border-color:#128c7e}.button-whatsapp:disabled{opacity:.55}.channel-link:hover{border-color:var(--ink)}.site-footer{padding:48px 0 calc(40px + env(safe-area-inset-bottom));border-top:2px solid var(--live);background:var(--ink);color:#f3efe6}.footer-logo{object-fit:contain;width:auto;max-width:240px;height:48px;margin-bottom:12px;display:block}.site-footer .footer-brand{margin:0 0 12px;display:inline-block}.site-footer .footer-brand .footer-logo{margin-bottom:0}.footer-grid{grid-template-columns:1.2fr .7fr 1fr 1fr;align-items:start}.footer-label{color:var(--live);letter-spacing:.12em;text-transform:uppercase;margin-bottom:2px;font-size:.68rem;font-weight:700;display:block}.site-footer .eyebrow,.site-footer a,.site-footer p{color:#c9c4b8}.footer-lead{color:#f3efe6;font-size:1.25rem;font-family:var(--display);text-transform:uppercase}.site-footer a{margin-top:14px;line-height:1.35;display:block}.site-footer .eyebrow+a,.site-footer .eyebrow+p{margin-top:8px}@media (width<=960px){.jobs-grid,.card-grid{grid-template-columns:1fr 1fr}.quote-layout{grid-template-columns:1fr}.timeline{grid-template-columns:1fr 1fr;gap:22px 28px}.timeline li:not(:last-child):after{display:none}.process-split{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:28px 24px}.home-hero-grid,.service-hero-grid{grid-template-columns:1fr;gap:24px}.service-hero-poster{order:-1}.service-others{grid-template-columns:1fr 1fr}.home-hero h1{max-width:none}.home-hero-photo{max-width:520px}.gallery-grid{grid-template-columns:1fr 1fr}.spec-item{flex-basis:calc(50% - 10px)}.quote-steps.is-board,.contact-steps{grid-template-columns:1fr}.adjuntos-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=860px){.quote-flow{grid-template-columns:1fr;justify-items:center;gap:10px;max-width:420px;margin-inline:auto}.quote-flow .service-card{width:100%}.quote-flow-arrow svg{transform:rotate(90deg)}.quote-actions{flex-direction:column;align-items:stretch;max-width:420px;margin-inline:auto}}@media (width<=720px){.container{width:min(1180px,100% - 24px)}.section{padding:36px 0 44px}.catalog-tools{flex-wrap:wrap;flex:100%}.catalog-search{flex:100%;max-width:none}.catalog-filter-wrap{flex:100%;position:static}.filter-trigger{justify-content:center;width:100%}.filter-panel{width:auto;max-height:min(70vh,28rem);left:0;right:0;overflow:auto}.chip,.applied-chip{min-height:36px}.contact-grid,.contact-steps,.form-row,.card-grid,.jobs-grid,.gallery-grid,.report-grid,.report-split,.footer-grid,.service-includes,.service-gallery,.service-others,.quote-layout,.timeline,.detail-pager,.contact-actions{grid-template-columns:1fr}.spec-item{flex-basis:100%}.contact-form.is-wide{padding:22px 18px 24px}.adjuntos-grid{grid-template-columns:1fr 1fr}.hero-actions,.contact-actions,.contact-direct,.home-cta-row,.detail-cta{gap:12px;display:grid}.hero-actions .button,.contact-actions .button,.contact-direct .button,.home-cta .button,.detail-cta .button{width:100%}.detail-pager-link.is-next{text-align:left;grid-column:auto;justify-self:stretch}.home-hero{padding:24px 0 28px}.home-hero h1{max-width:none;font-size:clamp(2.35rem,12vw,2.85rem)}.home-hero-photo{max-width:none}.featured-head{align-items:flex-start}.brand-logo{height:36px}.site-footer a{flex-direction:column;justify-content:center;align-items:flex-start;min-height:44px;display:flex}.quote-steps li,.timeline li{padding-right:0}.job-card-body h3{font-size:1.3rem}}@media (width<=860px){.nav-toggle{display:inline-block}.nav-backdrop{inset:0;top:calc(72px + env(safe-area-inset-top));z-index:8;background:#08090b8c;border:0;display:block;position:fixed}.site-nav{z-index:9;padding:8px 20px calc(20px + env(safe-area-inset-bottom));background:var(--ink);border-top:1px solid #f3efe614;flex-direction:column;gap:0;display:none;position:absolute;top:calc(100% - 1px);left:0;right:0}.site-nav.is-open{display:flex}.site-nav a,.site-nav button{text-align:left;border-bottom:1px solid #f3efe614;align-items:center;width:100%;min-height:48px;font-size:1.12rem;display:flex}.site-nav a.active{color:var(--live)}.site-nav a.active:after{display:none}}
