:root{--canopy: #17372a;--canopy-deep: #0e241b;--moss: #3f6b4c;--bark: #2e2a24;--sap: #f7f6f2;--sawn: #e6e2d7;--orange: #dd4f14;--orange-dark: #b93d0d;--text: #2e2a24;--text-soft: #5a554c;--rule: #d5d0c3;--measure: 66ch;--gutter: clamp(1.25rem, 4vw, 3rem);--stack: clamp(3.5rem, 8vw, 6.5rem);--head: "Archivo", ui-sans-serif, system-ui, sans-serif;--body: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}body{margin:0;background:#fff;color:var(--text);font-family:var(--body);font-size:clamp(1.02rem,.98rem + .25vw,1.14rem);line-height:1.65;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--head);font-weight:800;line-height:1.05;letter-spacing:-.022em;margin:0 0 .5em;text-wrap:balance}h1{font-size:clamp(2.4rem,1.6rem + 3.6vw,4.1rem)}h2{font-size:clamp(1.75rem,1.3rem + 1.9vw,2.6rem);margin-top:0}h3{font-size:clamp(1.2rem,1.06rem + .6vw,1.45rem);font-weight:700}p,ul,ol{margin:0 0 1.15em}ul,ol{padding-left:1.15em}li{margin-bottom:.45em}a{color:var(--canopy);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--orange-dark)}:focus-visible{outline:3px solid var(--orange);outline-offset:2px;border-radius:2px}img{max-width:100%;height:auto;display:block}.wrap{width:100%;max-width:72rem;margin-inline:auto;padding-inline:var(--gutter)}.narrow{max-width:var(--measure)}.skip{position:absolute;left:-9999px;top:0;background:var(--orange);color:#fff;padding:.75rem 1rem;z-index:100}.skip:focus{left:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--head);font-weight:700;font-size:1.05rem;letter-spacing:-.01em;padding:.95rem 1.6rem;border:2px solid transparent;border-radius:3px;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.btn-call{background:var(--orange);color:#fff}.btn-call:hover{background:var(--orange-dark);color:#fff}.btn-ghost{border-color:currentColor;background:transparent;color:inherit}.btn-ghost:hover{background:#ffffff1a;color:inherit}.masthead{background:var(--canopy);color:var(--sap);border-bottom:4px solid var(--orange)}.masthead a{color:inherit}.masthead-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;padding-block:1rem}.wordmark{font-family:var(--head);font-weight:800;font-size:1.15rem;line-height:1.1;letter-spacing:-.02em;text-decoration:none;max-width:13rem}.wordmark span{display:block;color:var(--orange)}.masthead nav ul{display:flex;flex-wrap:wrap;gap:1.25rem;list-style:none;margin:0;padding:0;font-size:.97rem}.masthead nav a{text-decoration:none}.masthead nav a:hover{text-decoration:underline;color:#fff}.head-phone{font-family:var(--head);font-weight:800;font-size:1.15rem;text-decoration:none;white-space:nowrap}.hero{background:var(--canopy);color:var(--sap);padding-block:clamp(3rem,7vw,5.5rem)}.hero h1{color:#fff;max-width:18ch}.hero p{max-width:54ch;font-size:1.15rem;color:#d9e2da}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:2rem}.hero-phone{display:block;font-family:var(--head);font-weight:800;font-size:clamp(2.2rem,1.2rem + 4vw,3.6rem);letter-spacing:-.03em;color:#fff;text-decoration:none;margin-top:1.5rem}.hero-phone:hover{color:var(--orange)}.strip{background:var(--sawn);border-bottom:1px solid var(--rule)}.strip ul{display:flex;flex-wrap:wrap;gap:.5rem 2.25rem;list-style:none;margin:0;padding:.9rem 0;font-family:var(--head);font-weight:600;font-size:.93rem;color:var(--bark)}.strip li{margin:0}.section{padding-block:var(--stack)}.section-tint{background:var(--sap)}.section-dark{background:var(--canopy-deep);color:var(--sap)}.section-dark h2,.section-dark h3,.section-dark a{color:#fff}.services{list-style:none;margin:0;padding:0;display:grid;gap:0}.services li{margin:0;border-top:1px solid var(--rule)}.services li:last-child{border-bottom:1px solid var(--rule)}.services a{display:grid;gap:.35rem 2rem;align-items:baseline;grid-template-columns:1fr;padding:1.5rem 0;text-decoration:none;color:inherit}@media(min-width:46rem){.services a{grid-template-columns:17rem 1fr}}.services h3{margin:0;color:var(--canopy)}.services a:hover h3{color:var(--orange-dark);text-decoration:underline}.services p{margin:0;color:var(--text-soft)}.cols{display:grid;gap:clamp(2rem,5vw,4rem)}@media(min-width:52rem){.cols{grid-template-columns:1.15fr 1fr}}.callout{border-left:5px solid var(--orange);padding:.25rem 0 .25rem 1.35rem;margin-block:2rem}.callout p:last-child{margin-bottom:0}.form-shell{background:#fff;border:1px solid var(--rule);border-top:5px solid var(--orange);padding:clamp(1.5rem,4vw,2.25rem);border-radius:3px}.form-shell h2{font-size:clamp(1.5rem,1.2rem + 1.2vw,2rem)}.form-shell>p{color:var(--text-soft)}.field{margin-bottom:1.05rem}.field label{display:block;font-family:var(--head);font-weight:600;font-size:.95rem;margin-bottom:.35rem}.field input,.field select,.field textarea{width:100%;font:inherit;color:inherit;padding:.7rem .8rem;border:1px solid #b9b3a5;border-radius:3px;background:#fff}.field textarea{min-height:6.5rem;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--canopy)}.form-shell button{width:100%;margin-top:.5rem}.fineprint{font-size:.85rem;color:var(--text-soft);margin:.9rem 0 0}.attribution{font-size:.72rem;color:#9a9488;text-align:right;margin:.5rem 0 0}.attribution a{color:inherit;text-decoration:none}.hp{position:absolute;left:-9999px}.footer{background:var(--bark);color:#ddd7c9;padding-block:3rem 2rem;font-size:.95rem}.footer a{color:#fff}.footer h3{color:#fff;font-size:1rem;margin-bottom:.6rem}.footer-grid{display:grid;gap:2rem}@media(min-width:48rem){.footer-grid{grid-template-columns:1.4fr 1fr 1fr}}.footer ul{list-style:none;margin:0;padding:0}.footer li{margin-bottom:.4rem}.nap-inline{font-style:normal;line-height:1.6;margin-bottom:1.15em}.nap{font-style:normal;margin-top:1rem}.nap span{display:block}.nap span:first-child{font-weight:600;color:#fff}.colophon{border-top:1px solid #4a443a;margin-top:2.5rem;padding-top:1.25rem;font-size:.85rem;color:#a49d8e}
