:root{--paper:#f7f5ef;--white:#fffefa;--ink:#272e2b;--muted:#606861;--line:#dcded4;--brand:#343d3b;--brand-ink:#343d3b;--on-brand:#fff;--brand-rgb:52,61,59;--sand:#e7e4da;--radius:12px;--font:'Poppins','Avenir Next','Trebuchet MS',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}p{margin:0 0 1.2em}h1,h2,h3,h4{margin:0;font-weight:500;line-height:1.2;letter-spacing:-.045em}h1{font-size:clamp(40px,4.4vw,70px)}h2{font-size:clamp(30px,3.15vw,48px)}h3{font-size:25px}em{font-style:normal;color:var(--brand-ink)}strong{font-weight:600}ul{padding-left:1.3em}button{border:0}::selection{background:rgba(var(--brand-rgb),.18)}:focus-visible{outline:3px solid var(--brand-ink);outline-offset:5px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;top:-80px;left:20px;z-index:2000;padding:12px 20px;background:white}.skip:focus{top:10px}.wrap{width:min(1320px,calc(100% - 96px));margin-inline:auto}.section{padding-block:100px}.eyebrow{display:block;font-size:11px;font-weight:600;letter-spacing:.16em;line-height:1.7;margin-bottom:20px;text-transform:uppercase}.small-dot{width:7px;height:7px;background:var(--brand);border-radius:50%;display:inline-block;margin-right:9px}.lead{font-size:19px;line-height:1.8;max-width:690px;color:var(--muted);margin-top:25px}.small-note,.legal-small{font-size:12px;line-height:1.8;color:var(--muted)}.small-note{margin:20px 0 0}.btn{display:inline-flex;gap:28px;align-items:center;justify-content:space-between;min-height:52px;padding:14px 26px;border:1px solid transparent;border-radius:40px;font-size:13px;font-weight:500;line-height:1.5;text-decoration:none;transition:transform .2s,background .2s;white-space:normal}.btn>span{font-size:20px;line-height:1}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--brand);color:var(--on-brand)}.btn.outline{border-color:var(--ink);background:transparent;color:var(--ink)}.btn.text{padding-inline:4px;border-radius:0;background:transparent}.btn.light{background:var(--paper);color:var(--ink)}.btn:disabled{opacity:.55;cursor:wait;transform:none}.text-link{display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid currentColor;padding:7px 0;font-size:14px;line-height:1.6}.text-link:hover{color:var(--brand-ink)}.button-row{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.topline{background:var(--ink);color:var(--paper);font-size:10px;letter-spacing:.12em}.topline .wrap{display:flex;justify-content:space-between;gap:15px;padding-block:9px}.topline a{letter-spacing:0;font-size:11px}.topline strong{margin-left:12px}.header{background:rgba(247,245,239,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100;backdrop-filter:blur(18px)}.header-inner{display:flex;align-items:center;gap:23px;min-height:96px}.brand{width:148px;flex-shrink:0;display:block}.brand img{width:148px;height:58px;object-fit:contain}.brand-fallback{font-size:15px;line-height:1.15;letter-spacing:.055em;font-weight:600}.brand-division{font-size:15px;line-height:1.1;border-left:1px solid var(--line);padding-left:22px;letter-spacing:-.04em}.brand-division strong{font-size:18px}.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:24px;font-size:12px;font-weight:500}.desktop-nav>a{padding:20px 0;white-space:nowrap}.nav-group{position:relative}.nav-group summary{list-style:none;cursor:pointer;padding:20px 0;display:flex;gap:8px;align-items:center}.nav-group summary::-webkit-details-marker{display:none}.nav-panel{position:absolute;top:65px;left:-24px;width:270px;padding:18px 23px;background:var(--white);border:1px solid var(--line);border-radius:10px;box-shadow:0 16px 35px #20262015;display:flex;flex-direction:column;z-index:101}.nav-panel a{padding:9px 0;line-height:1.5}.nav-panel a:hover{color:var(--brand-ink);text-decoration:underline}.nav-all{border-bottom:1px solid var(--line);margin-bottom:6px;font-weight:600}.header-cta{font-size:12px;padding:12px 22px;min-height:45px}.menu-toggle{display:none;width:46px;height:46px;background:transparent;padding:10px}.menu-toggle span{display:block;height:2px;background:var(--ink);margin:6px 0;width:24px}.mobile-menu{max-height:75vh;overflow:auto;background:var(--paper);border-top:1px solid var(--line)}.mobile-menu .wrap{padding-block:18px;display:grid}.mobile-menu a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:15px 0}.hero{display:grid;grid-template-columns:1fr 1.12fr;gap:65px;align-items:center;padding-top:55px;padding-bottom:65px;min-height:700px}.hero-copy h1{font-size:clamp(46px,4.55vw,73px);letter-spacing:-.065em;line-height:1.1}.hero-copy>p{max-width:430px;font-size:17px;line-height:1.8;margin-top:26px;color:var(--muted)}.hero-buttons{display:flex;gap:20px;align-items:center;margin-top:30px;flex-wrap:wrap}.hero-signature{display:flex;gap:18px;align-items:center;margin-top:42px;font-size:11px;line-height:1.8}.signature-line{width:42px;height:1px;background:var(--ink)}.hero-visual{position:relative;padding-right:20px}.photo{margin:0;position:relative;overflow:hidden;background:var(--sand);border-radius:var(--radius)}.photo img{width:100%;height:100%;object-fit:cover;aspect-ratio:1.3;transition:transform .6s}.photo figcaption{position:absolute;left:14px;bottom:10px;right:14px;font-size:9px;line-height:1.5;color:#fff;background:#272e2bb5;width:fit-content;max-width:calc(100% - 28px);padding:5px 8px;border-radius:4px}.hero-photo{border-radius:100px 8px 8px 8px}.hero-photo img{aspect-ratio:.98;min-height:520px}.hero-caption{position:absolute;bottom:32px;left:-35px;background:var(--white);box-shadow:0 12px 25px #252b2410;padding:24px 28px;border-radius:7px;max-width:80%;display:flex;flex-direction:column;gap:8px}.hero-caption>span{font-size:9px;letter-spacing:.12em;color:var(--muted)}.hero-caption a{font-size:13px;display:flex;gap:28px;align-items:center}.hero-side{position:absolute;right:-15px;top:50%;writing-mode:vertical-rl;letter-spacing:.24em;font-size:9px}.photo-fallback{min-height:290px;height:100%;display:flex;justify-content:center;flex-direction:column;align-items:center;padding:45px;text-align:center;background:linear-gradient(130deg,#ece9df,#dce0d8);color:var(--ink)}.photo-fallback>span{font-size:11px;letter-spacing:.16em}.photo-fallback>p{font-size:22px;margin:25px 0}.photo-fallback>a{font-size:12px;border-bottom:1px solid}.photo.failed img{display:none}.photo.failed figcaption{display:none}.hero-photo.failed .photo-fallback{min-height:550px}.benefit-line{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.benefit-line .wrap{display:flex;justify-content:space-between;gap:24px;padding-block:23px;font-size:11px;letter-spacing:.02em}.benefit-line span{display:flex;align-items:center;gap:12px}.benefit-line span:before{content:'+';font-size:18px;font-weight:400}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.intro-grid h2{max-width:570px}.intro-grid p{color:var(--muted)}.intro-grid .large-copy{font-size:23px;line-height:1.6;letter-spacing:-.02em;color:var(--ink)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:48px}.section-heading .eyebrow{margin-bottom:15px}.section-heading p{font-size:14px;color:var(--muted);margin-bottom:5px;max-width:390px}.spaces-section{background:#eeeee6}.spaces-editorial{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px}.space-feature{min-height:570px;border-radius:10px 85px 10px 10px}.space-feature img{height:100%;min-height:570px;object-position:65% center}.space-list>a{display:grid;grid-template-columns:24px 1fr 40px;gap:22px;padding:23px 0;border-bottom:1px solid #ced2c7;align-items:center}.space-list>a:first-child{padding-top:0}.row-number{font-size:10px;align-self:start;padding-top:7px;color:var(--muted)}.space-list strong{display:block;font-size:21px;font-weight:500;letter-spacing:-.04em}.space-list small{display:block;font-size:12px;line-height:1.65;color:var(--muted);margin-top:4px;max-width:360px}.circle-arrow{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;width:39px;height:39px;font-size:18px;flex-shrink:0}.space-list a:hover .circle-arrow{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}.grid3,.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.editorial-card{min-width:0}.card-photo{border-radius:8px;background:#eeece5}.card-photo img{object-fit:contain;aspect-ratio:1.12;padding:28px;background:#fff}.card-photo figcaption{font-size:8px;opacity:0;transition:opacity .2s}.card-photo:hover figcaption{opacity:1}.card-body{padding:24px 0 12px}.card-body .eyebrow{font-size:9px;margin-bottom:10px;color:var(--muted)}.card-body h3{font-size:27px;margin-bottom:14px}.card-body p{font-size:13px;line-height:1.8;color:var(--muted)}.card-body .text-link{font-size:12px}.material-section{padding-block:85px;background:var(--ink);color:var(--paper)}.material-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:center}.material-grid em{color:#c8d1be}.material-grid h2{font-size:44px}.material-grid p{max-width:510px;font-size:14px;margin-top:24px;opacity:.8}.material-grid .small-note{color:#ddd;font-size:11px;min-height:40px}.material-grid .text-link{color:var(--paper)}.swatches{display:flex;gap:12px;margin-top:27px}.swatch{height:34px;width:34px;border-radius:50%;border:4px solid var(--ink);outline:1px solid transparent;transition:transform .2s}.swatch[aria-pressed=true]{outline-color:var(--paper)}.swatch:hover{transform:scale(1.12)}.swatch.natural{background:#ccc9b7}.swatch.mineral{background:#a7b3b1}.swatch.tierra{background:#b58c72}.material-board{height:420px;position:relative;isolation:isolate}.sample{position:absolute;display:flex;align-items:start;justify-content:end;font-size:12px;padding:20px;box-shadow:0 20px 35px #0003;transition:background .5s;color:#272e2b70}.sample.one{width:58%;height:70%;top:3%;left:5%;background:repeating-linear-gradient(85deg,#d1c2a8 0 3px,#cab99a 3px 5px);transform:rotate(-11deg);border-radius:2px}.sample.two{width:53%;height:66%;left:28%;top:18%;background:#c3c7b9;transform:rotate(10deg);border-radius:4px}.sample.three{width:42%;height:51%;top:34%;left:9%;background:repeating-linear-gradient(0deg,#e4e1d7 0 1px,#e9e7e0 1px 3px);transform:rotate(-3deg);border-radius:50% 4px 4px 4px}.material-board[data-palette=mineral] .sample.two{background:#a7b3b1}.material-board[data-palette=mineral] .sample.three{background:#d1d4ce}.material-board[data-palette=tierra] .sample.two{background:#b58c72}.material-board[data-palette=tierra] .sample.three{background:#dfc9ac}.material-label{position:absolute;bottom:0;right:0;display:grid;text-align:right;font-size:13px;line-height:1.7}.material-label span{font-size:10px;opacity:.65}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps article{border-top:1px solid var(--line);padding-top:27px}.steps article>span{font-size:13px;display:block;color:var(--muted);margin-bottom:35px}.steps h3{font-size:25px;margin-bottom:17px}.steps p{font-size:14px;color:var(--muted);max-width:320px}.inspiration-section{background:#eeeee6}.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.case-grid:has(>.case-card:only-child){grid-template-columns:minmax(300px,720px)}.case-card{border-top:2px solid var(--brand);background:var(--white);padding:34px;border-radius:0 0 8px 8px;display:flex;flex-direction:column;min-height:280px}.case-card .eyebrow{font-size:9px;color:var(--muted);letter-spacing:.08em}.case-card h3{font-size:26px;margin-bottom:20px}.case-card p{font-size:14px;color:var(--muted)}.case-card>div{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:14px}.case-card>div>span{font-size:11px;color:var(--muted)}.company-split{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.company-word{border:1px solid var(--line);border-radius:50% 50% 8px 8px;aspect-ratio:1.1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#ecece3;letter-spacing:.12em;line-height:1.7}.company-word>span{font-size:27px}.company-word>strong{font-size:32px;font-weight:500}.company-word>small{font-size:9px;margin-top:24px;letter-spacing:.06em}.company-split h2{margin-bottom:25px}.company-split p{color:var(--muted);font-size:14px}.company-split .btn{font-size:12px}.contact-section{padding-block:90px;background:#eaece3}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;align-items:start}.contact-layout>div>h2{font-size:48px;margin-bottom:26px}.contact-layout>div>p{font-size:15px;color:var(--muted)}.contact-big{display:block;font-size:32px;font-weight:500;letter-spacing:-.04em;margin:26px 0}.contact-form{background:var(--white);padding:38px;border-radius:12px;border:1px solid var(--line)}.form-heading h2{font-size:28px;margin-bottom:13px}.form-heading p{font-size:11px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px;margin-top:26px}.form-grid label,.locality-box label,.search-field,.municipality-search label{font-size:12px;display:block;font-weight:500}.form-grid .full{grid-column:1/-1}input,select,textarea{width:100%;min-width:0;border:1px solid #cdd2c5;border-radius:6px;background:#fffefa;padding:13px 14px;color:var(--ink);line-height:1.6;font-size:13px;margin-top:7px}select{padding-right:28px}textarea{resize:vertical;min-height:120px}input::placeholder,textarea::placeholder{color:#7b817a;opacity:1}.check{display:flex;gap:12px;align-items:flex-start;margin-top:24px;font-size:11px;line-height:1.8}.check input{width:17px;height:17px;margin:4px 0 0;flex-shrink:0;accent-color:var(--brand)}.check a{text-decoration:underline}.legal-small{font-size:10px;margin-top:16px}.contact-form>.btn{width:100%;margin-top:10px;font-size:13px}.form-status{font-size:13px;line-height:1.7;margin-top:15px;color:var(--brand-ink)}.form-status.error{color:#923a2a}.form-status.success{color:#25503d}.contact-form>.text-link{font-size:11px;margin-top:10px}.field-error{display:block;color:#923a2a;font-size:11px;margin-top:4px}input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border-color:#923a2a}.honey{position:absolute;left:-10000px;height:1px;overflow:hidden}.footer{background:#232b28;color:#ecefe7;padding:70px 0 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:65px;border-bottom:1px solid #ffffff25;gap:30px}.footer-statement{font-size:clamp(30px,3.1vw,47px);letter-spacing:-.045em;line-height:1.2}.footer-phone{display:block;text-align:right;font-size:18px;margin-top:16px}.footer-grid{display:grid;grid-template-columns:1.65fr 1fr 1.2fr 1fr;gap:38px;padding:50px 0}.footer-grid p{font-size:12px;opacity:.7}.footer-label{font-size:10px!important;letter-spacing:.1em;opacity:1!important;margin-bottom:22px}.footer-grid a{font-size:12px;display:block;padding:5px 0;opacity:.85;line-height:1.7}.footer-grid a:hover{opacity:1;text-decoration:underline}.email{overflow-wrap:anywhere;font-size:13px}.footer-regions{border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25;font-size:11px}.footer-regions summary{padding:20px 0;display:flex;justify-content:space-between;cursor:pointer;list-style:none}.footer-regions>div{display:flex;flex-wrap:wrap;gap:12px 25px;padding:0 0 25px;font-size:11px}.footer-regions a{opacity:.7}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:27px;font-size:10px;opacity:.65}.footer-bottom>div{display:flex;gap:20px;flex-wrap:wrap}.mobile-actions{display:none}.back-top{position:fixed;bottom:25px;right:22px;width:42px;height:42px;border-radius:50%;background:var(--brand);color:var(--on-brand);z-index:80;font-size:19px;box-shadow:0 3px 20px #0002}.breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;font-size:10px;line-height:1.8;color:var(--muted);margin-bottom:43px}.breadcrumbs a:hover{text-decoration:underline}.inner-hero,.listing-hero{padding-block:35px 70px}.inner-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.inner-hero-grid h1{font-size:clamp(36px,3.5vw,55px)}.inner-hero-grid .lead{font-size:16px;margin-bottom:30px}.inner-photo{border-radius:10px 90px 10px 10px}.inner-photo img{height:430px;object-fit:contain;background:#fff}.inner-photo:has(img[src$="ambiente"]) img{object-fit:cover}.listing-hero h1{max-width:1000px}.listing-hero{padding-bottom:30px}.listing-hero .lead{max-width:800px}.reading-layout{display:grid;grid-template-columns:minmax(0,1fr) 305px;gap:80px;padding-bottom:45px;align-items:start}.prose{min-width:0;font-size:16px;line-height:1.9}.prose section{margin-bottom:44px}.prose h2{font-size:31px;margin-bottom:22px;line-height:1.3}.prose h3{font-size:24px;margin-bottom:15px}.prose p{color:#505b53}.prose p>a{text-decoration:underline;text-underline-offset:3px}.prose>.photo{margin-bottom:45px}.section-number{font-size:11px;letter-spacing:.05em;display:block;color:var(--muted);margin-bottom:14px}.sidebar{align-self:start}.consult-card{background:#e9ece2;padding:28px;border-radius:10px;margin-bottom:32px}.consult-card h2{font-size:27px;margin-bottom:20px}.consult-card .eyebrow{font-size:9px}.consult-card p{font-size:13px;color:var(--muted)}.consult-card .btn{width:100%;font-size:12px;padding:13px 19px;gap:12px}.aside-phone{display:block;margin-top:18px;font-size:19px;text-align:center;letter-spacing:-.03em}.side-provinces{border:1px solid var(--line);padding:25px;border-radius:10px}.side-provinces h3{font-size:20px}.side-provinces>p{font-size:11px;margin-top:12px;color:var(--muted)}.side-provinces details{border-top:1px solid var(--line)}.side-provinces summary{padding:10px 0;font-size:11px;cursor:pointer}.side-provinces details div{display:grid;padding:2px 0 14px}.side-provinces a{font-size:11px;padding:4px 0;color:var(--muted)}.side-provinces a:hover,.side-provinces a[aria-current=page]{color:var(--brand-ink);text-decoration:underline}.note{background:#eeeee6;border-left:3px solid var(--brand);padding:24px 28px;margin:30px 0;border-radius:0 8px 8px 0;font-size:14px}.note p{margin:10px 0 0}.note>a{display:block;margin-top:15px;text-decoration:underline}.faq{margin-top:50px}.faq h2{margin-bottom:25px}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{display:flex;justify-content:space-between;gap:22px;cursor:pointer;list-style:none;font-size:16px;font-weight:500;padding:21px 0;line-height:1.55}.faq summary span{font-weight:400;font-size:22px}.faq details p{font-size:14px;padding-bottom:10px;margin-top:0}.related{border-top:1px solid var(--line)}.related .grid3{margin-top:35px}.project-cta{padding:50px 55px;margin-bottom:85px;border:1px solid var(--line);border-radius:10px;display:flex;justify-content:space-between;align-items:center;gap:45px;background:#edeee5}.project-cta h2{font-size:36px;margin-bottom:17px}.project-cta p{font-size:14px;max-width:600px;color:var(--muted);margin:0}.project-cta .eyebrow{font-size:10px;margin-bottom:15px}.project-cta .btn{flex-shrink:0}.case-facts{display:grid;grid-template-columns:1fr 1fr;background:#eeeee6;padding:25px;gap:20px;border-radius:8px;margin-bottom:42px;font-size:12px;line-height:1.8}.case-facts span,.case-facts strong{display:block}.case-facts span{color:var(--muted);font-size:10px}.locality-box{margin-top:26px;max-width:520px}.locality-box select{margin-bottom:16px;background:var(--white);font-size:14px}.locality-box .btn{font-size:12px}.town-tags{list-style:none;padding:0;display:flex;gap:8px;flex-wrap:wrap}.town-tags li{border:1px solid var(--line);border-radius:25px;padding:6px 12px;font-size:11px;background:var(--white)}.town-tags strong{font-weight:500}.municipality-details{border:1px solid var(--line);border-radius:8px;padding:20px;margin-top:24px}.municipality-details>summary{display:flex;justify-content:space-between;list-style:none;cursor:pointer;font-size:14px;font-weight:500;gap:15px}.municipality-search{margin-top:15px}.all-towns{list-style:none;padding:0;columns:3;column-gap:24px;font-size:11px;line-height:2.2;margin-top:22px}.all-towns li{break-inside:avoid}.search-field{max-width:520px;margin-top:35px}.search-field input{padding:17px;font-size:15px;background:var(--white)}#territory-count,#glossary-count{font-size:12px;margin-top:12px;color:var(--muted)}.territory-groups{padding-top:20px;padding-bottom:80px}.territory-groups>section{display:grid;grid-template-columns:280px 1fr;gap:40px;border-top:1px solid var(--line);padding:35px 0}.territory-groups h2{font-size:26px}.territory-groups>section>div{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.territory-item{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px 0;font-size:14px;gap:14px}.territory-item:hover{color:var(--brand-ink)}.contact-details .text-link,.contact-details .email{display:block;margin:20px 0}.contact-details .email{font-size:13px}.orientator{max-width:1000px;padding-top:25px}.orientator form,#orientation-result{padding:45px;background:var(--white);border:1px solid var(--line);border-radius:12px}.step-progress{display:flex;gap:30px;align-items:center;margin-bottom:35px;font-size:12px}.step-progress progress{flex:1;max-width:250px;height:5px;border:0;accent-color:var(--brand)}.wizard-step{border:0;padding:0;margin:0}.wizard-step legend{font-size:29px;letter-spacing:-.03em;line-height:1.3;margin-bottom:28px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:15px}.choice{display:flex;gap:15px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:20px;cursor:pointer;position:relative;min-height:105px}.choice:has(input:checked){border-color:var(--brand);background:rgba(var(--brand-rgb),.05)}.choice input{position:absolute;opacity:0;width:1px;height:1px}.choice:focus-within{outline:2px solid var(--brand);outline-offset:2px}.choice>span:first-of-type{flex:1}.choice strong{display:block;font-size:14px;font-weight:500}.choice small{display:block;font-size:11px;color:var(--muted);margin-top:4px;line-height:1.65}.choice-dot{width:17px;height:17px;border:1px solid var(--line);border-radius:50%;flex-shrink:0}.choice:has(input:checked) .choice-dot{background:var(--brand);border:4px solid var(--white);outline:1px solid var(--brand)}.wizard-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:35px}.wizard-controls p{font-size:12px;color:#923a2a;margin:0}#orientation-copy{margin:25px 0;font-size:16px;line-height:1.8}#orientation-copy p{max-width:700px}#orientation-copy ul{padding-left:20px;color:var(--muted)}#orientation-result .small-note{margin-top:26px}.glossary{display:grid;grid-template-columns:repeat(2,1fr);gap:0 60px;padding-top:15px}.glossary article{border-top:1px solid var(--line);padding:30px 0}.glossary h2{font-size:28px;margin-bottom:16px}.glossary p{font-size:15px;color:var(--muted)}.legal-prose{max-width:900px;padding-bottom:70px;padding-top:25px}.legal-prose h2{font-size:28px}.legal-prose p{font-size:15px}.map-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding-top:25px}.map-grid>div{display:flex;flex-direction:column;gap:8px;font-size:14px}.map-grid h2{font-size:27px;margin-bottom:20px}.map-grid a:hover{text-decoration:underline}.map-provinces{grid-column:1/-1;display:grid!important;grid-template-columns:repeat(4,1fr);gap:12px!important}.map-provinces h2{grid-column:1/-1}.error-page{padding-block:100px 140px}.error-page h1{font-size:80px}.error-page p{margin:25px 0 35px;color:var(--muted)}.mobile-only{display:none}.preview-banner{padding:10px;background:#ecece3;text-align:center;font-size:12px}
@media(min-width:1600px){.hero{padding-top:65px}.hero-photo img{min-height:580px}.hero-copy h1{font-size:76px}}
@media(max-width:1200px){.wrap{width:calc(100% - 64px)}.desktop-nav{gap:16px}.header-inner{gap:18px}.brand{width:125px}.brand img{width:125px}.brand-division{padding-left:15px}.desktop-nav{font-size:11px}.header-cta{gap:16px;padding-inline:18px}.hero{gap:40px}.hero-copy h1{font-size:58px}.hero-photo img{min-height:500px}.hero-caption{left:-20px}.hero-buttons{gap:10px}.intro-grid,.company-split{gap:65px}.spaces-editorial{gap:40px}.material-grid{gap:50px}.reading-layout{gap:45px}.contact-layout{gap:50px}.footer-grid{gap:24px}}
@media(max-width:1040px){.desktop-nav{display:none}.header-cta{margin-left:auto}.menu-toggle{display:block}.header-inner{min-height:85px}.brand{width:145px}.brand img{width:145px}.hero{gap:34px;min-height:0}.hero-copy h1{font-size:50px}.hero-copy>p{font-size:15px}.hero-photo img{min-height:460px}.hero-caption{padding:20px;max-width:92%}.hero-caption a{font-size:12px}.intro-grid{gap:45px}.section{padding-block:75px}.spaces-editorial{grid-template-columns:.8fr 1.2fr;gap:35px}.space-list strong{font-size:18px}.space-list a{gap:15px}.space-list small{font-size:11px}.material-grid h2{font-size:36px}.material-board{height:350px}.steps{gap:25px}.steps h3{font-size:22px}.contact-layout{grid-template-columns:1fr 1.4fr;gap:35px}.contact-form{padding:28px}.contact-layout>div>h2{font-size:38px}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{display:none}.inner-hero-grid{gap:35px}.inner-photo img{height:380px}.reading-layout{grid-template-columns:1fr 270px;gap:35px}.consult-card{padding:23px}.consult-card h2{font-size:24px}.side-provinces{padding:20px}.prose h2{font-size:27px}.project-cta{padding:36px}.project-cta h2{font-size:32px}.territory-groups>section{grid-template-columns:220px 1fr;gap:25px}.territory-groups>section>div{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.wrap{width:calc(100% - 40px)}.topline .wrap{justify-content:center;font-size:9px;padding-block:8px}.topline a{display:none}.header-inner{gap:14px;min-height:77px}.brand{width:112px}.brand img{width:112px;height:44px}.brand-fallback{font-size:12px}.brand-division{font-size:12px;padding-left:14px}.brand-division strong{font-size:15px}.header-cta{padding:10px 16px;font-size:10px;min-height:40px;gap:15px}.menu-toggle{width:35px;padding:5px}.hero{grid-template-columns:1fr;gap:30px;padding-top:38px;padding-bottom:38px}.hero-copy h1{font-size:clamp(43px,9vw,65px);line-height:1.1;letter-spacing:-.06em}.hero-copy>p{max-width:470px;font-size:16px;margin-top:20px}.hero .eyebrow{font-size:9px;margin-bottom:18px}.hero-buttons{gap:16px;margin-top:24px}.hero-buttons .btn{font-size:12px}.hero-signature{margin-top:23px}.hero-visual{padding-right:10px}.hero-photo{border-radius:65px 8px 8px 8px}.hero-photo img{min-height:0;aspect-ratio:1.18;object-fit:cover}.hero-photo.failed .photo-fallback{min-height:330px}.hero-caption{left:12px;bottom:23px;padding:18px;max-width:90%}.hero-caption a{font-size:12px}.hero-caption>span{font-size:8px}.hero-side{right:-8px;font-size:8px}.benefit-line .wrap{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;font-size:10px;padding-block:20px}.benefit-line span:before{font-size:15px}.benefit-line a{text-align:left;align-self:center}.section{padding-block:62px}.eyebrow{font-size:9px;margin-bottom:16px}h2{font-size:34px}.intro-grid,.company-split{grid-template-columns:1fr;gap:30px}.intro-grid .large-copy{font-size:21px}.intro-grid p{font-size:15px}.section-heading{display:block;margin-bottom:30px}.section-heading p,.section-heading>.text-link,.section-heading>.btn{margin-top:20px}.spaces-editorial{display:flex;flex-direction:column;gap:27px}.space-feature{min-height:0;height:300px;border-radius:8px 55px 8px 8px}.space-feature img{min-height:0;height:300px;object-position:center}.space-list a{padding:20px 0;grid-template-columns:22px 1fr 36px;gap:15px}.space-list a:first-child{padding-top:0}.space-list strong{font-size:22px}.space-list small{font-size:12px}.grid3,.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 17px}.product-grid>.editorial-card:last-child{grid-column:1/-1;max-width:60%;margin-inline:auto}.card-photo img{padding:12px}.card-body{padding-top:20px}.card-body h3{font-size:23px}.card-body .eyebrow{font-size:8px}.card-body p{font-size:12px;line-height:1.7}.card-photo figcaption{display:none}.material-section{padding-block:60px}.material-grid{grid-template-columns:1fr;gap:25px}.material-grid h2{font-size:34px}.material-grid p{font-size:14px}.material-board{height:360px;max-width:450px;width:100%;margin-inline:auto}.material-label{font-size:12px}.steps{grid-template-columns:1fr;gap:28px}.steps article{padding-top:20px;display:grid;grid-template-columns:30px 1fr;gap:10px 20px}.steps article>span{grid-row:1/3;margin:4px 0}.steps h3{font-size:24px}.steps p{grid-column:2;max-width:100%;margin-bottom:0}.case-grid,.case-grid:has(>.case-card:only-child){grid-template-columns:1fr}.case-card{padding:27px;min-height:0}.case-card h3{font-size:27px}.case-card p{font-size:14px}.company-word{max-width:430px;width:100%;margin:auto;aspect-ratio:1.5;border-radius:100px 100px 8px 8px}.company-word>span{font-size:23px}.company-word>strong{font-size:29px}.company-split h2{font-size:40px}.contact-section{padding-block:60px}.contact-layout{grid-template-columns:1fr;gap:30px}.contact-layout>div>h2{font-size:40px}.contact-layout>div>p{font-size:15px}.contact-form{padding:28px 23px}.form-heading h2{font-size:27px}.form-heading p{font-size:11px}.form-grid{gap:18px 15px}.form-grid label{font-size:11px}input,select,textarea{font-size:16px;padding:12px;min-height:46px}.check{font-size:12px}.legal-small{font-size:11px}.form-status{font-size:14px}.contact-form>.text-link{font-size:12px}.footer{padding-top:55px;padding-bottom:85px}.footer-top{display:block;padding-bottom:35px}.footer-top>div:last-child{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:25px}.footer-statement{font-size:36px}.footer-phone{font-size:17px;margin:0;text-align:left}.footer-grid{grid-template-columns:1fr 1fr;gap:28px;padding:35px 0}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{display:block}.footer-grid a,.footer-grid p{font-size:12px}.footer-label{margin-bottom:13px}.footer-bottom{display:block;font-size:10px}.footer-bottom>div{margin-top:15px;gap:18px}.mobile-actions{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:.9fr 1fr 1.25fr;background:var(--paper);border-top:1px solid var(--line);padding:9px 14px max(9px,env(safe-area-inset-bottom));gap:9px;z-index:120;box-shadow:0 -5px 20px #272e2b08}.mobile-actions a{font-size:11px;padding:11px 5px;text-align:center;border:1px solid var(--line);border-radius:25px;line-height:1.5;min-height:40px}.mobile-actions a:last-child{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}.back-top{bottom:82px;right:15px;width:38px;height:38px;font-size:17px}.breadcrumbs{font-size:9px;margin-bottom:27px;gap:8px}.inner-hero,.listing-hero{padding-top:25px;padding-bottom:35px}.inner-hero-grid{grid-template-columns:1fr;gap:30px}.inner-hero-grid h1{font-size:40px}.inner-hero-grid .lead{font-size:16px;margin-top:20px}.inner-photo{border-radius:8px 60px 8px 8px}.inner-photo img{height:300px}.listing-hero h1{font-size:42px}.listing-hero .lead{font-size:16px;line-height:1.8}.reading-layout{grid-template-columns:1fr;gap:35px}.prose{font-size:16px}.prose h2{font-size:29px;letter-spacing:-.035em}.prose section{margin-bottom:34px}.sidebar{display:grid;grid-template-columns:1fr;gap:25px}.consult-card{margin:0;padding:30px}.consult-card h2{font-size:30px}.consult-card .btn{max-width:300px}.aside-phone{text-align:left}.side-provinces{padding:25px}.side-provinces details>div{grid-template-columns:repeat(2,1fr);gap:4px 15px}.side-provinces summary,.side-provinces a{font-size:13px}.side-provinces h3{font-size:24px}.side-provinces>p{font-size:12px}.project-cta{padding:30px;display:block;margin-bottom:55px}.project-cta h2{font-size:33px}.project-cta .btn{margin-top:25px}.related .grid3{grid-template-columns:1fr;gap:15px}.related .editorial-card{border-top:1px solid var(--line)}.case-facts{font-size:11px;gap:15px}.all-towns{columns:2;font-size:12px}.town-tags li{font-size:11px}.municipality-details{padding:18px}.territory-groups>section{grid-template-columns:1fr;gap:22px;padding:28px 0}.territory-groups>section>div{grid-template-columns:1fr 1fr;gap:10px 24px}.territory-groups h2{font-size:25px}.territory-item{font-size:13px}.search-field input{font-size:16px}.orientator form,#orientation-result{padding:27px 23px}.wizard-step legend{font-size:26px}.choices{grid-template-columns:1fr}.choice{min-height:85px;padding:18px}.choice strong{font-size:14px}.choice small{font-size:12px}.wizard-controls{flex-wrap:wrap;gap:15px}.wizard-controls p{order:3;width:100%}.wizard-controls .btn{font-size:12px;padding:13px 20px}.glossary{grid-template-columns:1fr;padding-top:10px}.glossary h2{font-size:27px}.map-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.map-grid>div{font-size:13px}.map-grid h2{font-size:25px}.map-provinces{grid-template-columns:1fr 1fr}.legal-prose p{font-size:15px}.error-page{padding-block:75px 100px}.error-page h1{font-size:55px}}
@media(max-width:400px){.wrap{width:calc(100% - 32px)}.header-inner{gap:10px}.brand{width:100px}.brand img{width:100px}.brand-division{padding-left:10px;font-size:10px}.brand-division strong{font-size:13px}.header-cta{padding:10px 13px;gap:10px;font-size:9px}.menu-toggle{width:28px;padding:3px}.hero-copy h1{font-size:44px}.hero-buttons{gap:10px}.hero-buttons .btn{font-size:11px;padding:13px 18px;gap:15px}.hero-buttons .btn.text{padding-inline:0}.hero-caption{padding:16px;left:8px}.hero-caption a{font-size:11px;gap:12px}.form-grid{grid-template-columns:1fr}.card-body h3{font-size:21px}.product-grid{grid-template-columns:1fr}.product-grid>.editorial-card:last-child{grid-column:auto;max-width:100%}.card-photo img{aspect-ratio:1.3}.card-body p{font-size:14px}.grid3{grid-template-columns:1fr}.hero-side{display:none}.hero-visual{padding-right:0}.contact-form{padding:25px 20px}.photo-fallback{padding:28px}.footer-phone{font-size:16px}.inner-hero-grid h1{font-size:37px}.listing-hero h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.header,.topline,.footer,.sidebar,.mobile-actions,.btn,.back-top{display:none!important}.wrap{width:100%}body{background:white}.reading-layout,.inner-hero-grid{display:block}.photo{max-height:280px}.prose{font-size:12pt}.prose h2{font-size:18pt}}
/* Ajuste de cabecera para teléfonos de 320–360 px, sin ocultar el menú. */
@media(max-width:360px){.brand{width:86px}.brand img{width:86px}.brand-fallback{font-size:10px}.header-inner{gap:8px}.brand-division{padding-left:8px;font-size:9px}.brand-division strong{font-size:12px}.header-cta{gap:5px;padding:9px 10px}.menu-toggle{flex-shrink:0}}

/* Ajuste cromático: fondos claros y acentos rojo, azul, verde y amarillo. */
:root{
  --paper:#ffffff;
  --white:#ffffff;
  --ink:#273238;
  --muted:#667078;
  --line:#e7e1d8;
  --sand:#f8f8f6;
  --brand:#2b6cb0;
  --brand-ink:#1f4f83;
  --on-brand:#ffffff;
  --brand-rgb:43,108,176;
  --accent-red:#d65452;
  --accent-red-soft:#fbefed;
  --accent-red-rgb:214,84,82;
  --accent-blue:#2b6cb0;
  --accent-blue-soft:#eef5fc;
  --accent-blue-rgb:43,108,176;
  --accent-green:#6a9c3d;
  --accent-green-soft:#f3f8eb;
  --accent-green-rgb:106,156,61;
  --accent-yellow:#d7ad3b;
  --accent-yellow-soft:#fff8e7;
  --accent-yellow-rgb:215,173,59;
}
body{background:var(--paper)}
.topline{background:var(--white);color:var(--ink);border-bottom:1px solid var(--line)}
.topline strong,.topline a:hover{color:var(--accent-blue)}
.header{background:rgba(255,255,255,.96)}
.mobile-menu{background:var(--white)}
.hero-caption,.contact-form,.orientator form,#orientation-result,.nav-panel,.town-tags li,.locality-box select,.municipality-details,.project-cta,.consult-card,.side-provinces,.choice,.case-card,.editorial-card .card-photo img,.card-photo,.photo,.note{box-shadow:0 8px 30px rgba(39,50,56,.04)}
.btn.primary,.header-cta,.mobile-actions a:last-child,.back-top{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}
.btn.primary:hover,.header-cta:hover,.mobile-actions a:last-child:hover,.back-top:hover{background:var(--brand-ink)}
.btn.light{background:var(--accent-yellow-soft);color:var(--ink);border-color:rgba(var(--accent-yellow-rgb),.35)}
.btn.outline{border-color:var(--accent-blue);color:var(--accent-blue)}
.btn.outline:hover,.text-link:hover,.nav-panel a:hover,.side-provinces a:hover,.side-provinces a[aria-current=page]{color:var(--accent-red)}
.small-dot,.circle-arrow:hover{background:var(--accent-red)}
.hero-signature strong,.brand-division strong{color:var(--accent-blue)}
.spaces-section{background:linear-gradient(180deg,var(--white) 0%,var(--accent-blue-soft) 100%)}
.space-list>a{border-bottom:1px solid rgba(var(--accent-blue-rgb),.18)}
.space-list a:hover .circle-arrow{background:var(--accent-red);border-color:var(--accent-red);color:#fff}
.card-photo{background:var(--accent-yellow-soft)}
.card-body .eyebrow,.eyebrow{color:var(--accent-blue)}
.material-section{background:linear-gradient(180deg,var(--white) 0%,var(--accent-green-soft) 100%);color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.material-grid em{color:var(--accent-green)}
.material-grid .small-note,.material-grid p{color:var(--muted);opacity:1}
.material-grid .text-link{color:var(--accent-green)}
.swatch{border-color:var(--white)}
.swatch[aria-pressed=true]{outline-color:var(--accent-green)}
.steps article{background:var(--white);padding:26px;border-radius:12px;border:1px solid var(--line)}
.steps article:nth-child(4n+1){border-top:4px solid var(--accent-red)}
.steps article:nth-child(4n+2){border-top:4px solid var(--accent-blue)}
.steps article:nth-child(4n+3){border-top:4px solid var(--accent-green)}
.steps article:nth-child(4n+4){border-top:4px solid var(--accent-yellow)}
.steps article>span{background:var(--accent-blue-soft);color:var(--accent-blue);border-radius:50%}
.case-grid .case-card:nth-child(4n+1){background:var(--accent-red-soft)}
.case-grid .case-card:nth-child(4n+2){background:var(--accent-blue-soft)}
.case-grid .case-card:nth-child(4n+3){background:var(--accent-green-soft)}
.case-grid .case-card:nth-child(4n+4){background:var(--accent-yellow-soft)}
.company-split,.intro-grid,.contact-section,.listing-hero,.inner-hero,.territory-groups,.legal-prose,.map-grid,.glossary{background:transparent}
.contact-section{background:#ffffff}
.contact-form{background:var(--white);border:1px solid var(--line)}
.form-status.error,.field-error{color:var(--accent-red)}
.form-status.success{color:var(--accent-green)}
.consult-card{background:var(--accent-yellow-soft);border:1px solid rgba(var(--accent-yellow-rgb),.35)}
.side-provinces{background:var(--white)}
.note{background:var(--accent-blue-soft);border-left:4px solid var(--accent-blue)}
.project-cta{background:#ffffff}
.case-facts{background:var(--accent-green-soft)}
.locality-box select,.search-field input,input,select,textarea{background:var(--white)}
.town-tags li:nth-child(4n+1){background:var(--accent-red-soft)}
.town-tags li:nth-child(4n+2){background:var(--accent-blue-soft)}
.town-tags li:nth-child(4n+3){background:var(--accent-green-soft)}
.town-tags li:nth-child(4n+4){background:var(--accent-yellow-soft)}
.territory-item:hover{color:var(--accent-blue)}
.choice:has(input:checked){border-color:var(--accent-blue);background:rgba(var(--accent-blue-rgb),.06)}
.choice:focus-within{outline-color:var(--accent-blue)}
.choice:has(input:checked) .choice-dot{background:var(--accent-blue);outline-color:var(--accent-blue)}
.step-progress progress{accent-color:var(--accent-blue)}
.footer{background:var(--white);color:var(--ink);border-top:1px solid var(--line)}
.footer-top,.footer-regions,.footer-grid{border-color:var(--line)}
.footer-grid p,.footer-grid a,.footer-bottom{opacity:1;color:var(--muted)}
.footer-grid a:hover,.footer-bottom a:hover,.footer-phone,.footer-label{color:var(--accent-blue)}
.footer-bottom{border-top:1px solid var(--line);padding-top:22px}
.preview-banner{background:var(--accent-yellow-soft);color:var(--ink)}
::selection{background:rgba(var(--accent-blue-rgb),.18)}
@media(max-width:780px){
  .mobile-actions{background:var(--white)}
  .benefit-line .wrap{background:transparent}
}

/* Ajuste fino: botones variados, footer azul y barra superior roja. */
.topline{background:var(--accent-red);color:#ffffff;border-bottom:0}
.topline strong,.topline a,.topline a:hover{color:#ffffff}
.footer{background:var(--accent-blue);color:#ffffff;border-top:0}
.footer-top,.footer-regions,.footer-grid,.footer-bottom{border-color:rgba(255,255,255,.2)}
.footer-grid p,.footer-grid a,.footer-bottom,.footer-phone,.footer-label,.footer-statement{color:#ffffff}
.footer-grid a:hover,.footer-bottom a:hover{color:var(--accent-yellow)}
.btn.primary{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}
.header-cta,.mobile-actions a:last-child,.back-top,.wizard-controls .btn.primary,.step-progress progress{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff;accent-color:var(--accent-blue)}
.hero-buttons .btn.primary,.project-cta .btn,.case-card .btn,.button-row .btn.primary{background:var(--accent-red);border-color:var(--accent-red);color:#fff}
.contact-form .btn.primary,.consult-card .btn,.orientator .btn.primary,#orientation-result .btn.primary{background:var(--accent-green);border-color:var(--accent-green);color:#fff}
.btn.light,.material-grid .btn,.section-heading .btn,.intro-grid .btn{background:var(--accent-yellow);border-color:var(--accent-yellow);color:var(--ink)}
.btn.outline{border-color:var(--accent-blue);color:var(--accent-blue);background:#fff}
.hero-buttons .btn.text,.text-link{color:var(--accent-green)}
.btn.primary:hover,.header-cta:hover,.mobile-actions a:last-child:hover,.back-top:hover{filter:brightness(.94)}
.btn.light:hover{filter:brightness(.97)}
.consult-card .btn:hover,.contact-form .btn.primary:hover,.orientator .btn.primary:hover{filter:brightness(.94)}
.hero-buttons .btn.primary:hover,.project-cta .btn:hover,.case-card .btn:hover{filter:brightness(.94)}
