:root{--forest:#233e34;--ink:#263c33;--cream:#f4f1e9;--stone:#b8aa95;--soft:#e9e7df;--line:#c9cdc3;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.75}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}em{font-weight:400}a:focus-visible{outline:3px solid #a37b42;outline-offset:6px}.skip-link{position:absolute;left:20px;top:-100px;z-index:5;background:var(--cream);padding:12px 20px}.skip-link:focus{top:15px}.site-header{max-width:1600px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 5%}.logo-link{width:210px;flex-shrink:0}.site-header nav{display:flex;align-items:center;gap:30px;font-size:14px}.site-header nav>a:not(.button){padding:10px 0;border-bottom:1px solid transparent}.site-header nav>a:hover{border-bottom-color:var(--forest)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;background:var(--forest);color:var(--cream);border:1px solid var(--forest);font-size:14px;line-height:1.5;transition:background .2s,color .2s}.button:hover{background:#36584a}.button.light{background:var(--cream);color:var(--forest);border-color:var(--cream)}.button.light:hover{background:#dedbce;border-color:#dedbce}.hero{display:grid;grid-template-columns:51% 49%;max-width:1600px;margin:0 auto;min-height:630px}.hero-copy{background:var(--forest);color:var(--cream);padding:64px 10% 30px;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{display:block;font-size:12px;line-height:1.8;letter-spacing:1.8px;font-weight:500}.hero h1{font-size:clamp(44px,4.4vw,70px);letter-spacing:-2px;margin:35px 0 25px;line-height:1.13}.hero h1 em{color:#d5d5bd}.hero-copy>p{max-width:430px;font-size:17px;line-height:1.8}.hero-copy>.button{margin-top:30px}.hero-bottom{align-self:stretch;margin-top:auto;padding-top:52px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:12px;letter-spacing:1.2px}.hero-bottom a{font-size:14px;letter-spacing:0;border-bottom:1px solid #a8b0a3}.hero-image{position:relative;min-height:630px}.hero-image img{position:absolute;width:100%;height:100%;object-fit:cover}.image-caption{position:absolute;right:24px;bottom:24px;color:#fff;background:#233e34dc;padding:8px 13px;font-size:12px;letter-spacing:1px}.section{padding:96px max(6%,calc((100vw - 1400px)/2))}.section h2{font-size:clamp(36px,3.6vw,54px);letter-spacing:-1.5px;margin-top:23px}.boutique,.properties{display:grid;grid-template-columns:1fr 1fr;gap:9%}.boutique-copy{padding-top:4px}p+p{margin-top:20px}.lead{font-size:23px;line-height:1.5;letter-spacing:-.3px}.criteria{background:var(--soft)}.section-heading{position:relative}.section-heading>p{max-width:370px;margin-top:24px}.criteria-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:56px}.criteria-grid article{border-top:1px solid #9ca99d;padding-top:23px}.number{font-size:12px;letter-spacing:1.1px}.criteria-grid h3{font-size:30px;line-height:1.2;margin:23px 0 18px}.criteria-grid p{line-height:1.8}.origin{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.origin-image{height:520px}.origin-image img{width:100%;height:100%;object-fit:cover;object-position:45% center}.origin-copy .lead{margin-top:30px;font-size:21px}.origin-copy>p:last-of-type{margin-top:22px}.signature{display:flex;align-items:center;gap:22px;border-top:1px solid var(--line);margin-top:32px;padding-top:23px;font-family:var(--serif);font-size:28px;letter-spacing:3px}.signature i{width:34px;height:1px;background:var(--stone)}.properties{border-top:1px solid var(--line)}.properties>div:last-child{padding-top:8px}.text-link{display:inline-block;margin-top:24px;border-bottom:1px solid var(--forest);padding:6px 0;font-size:15px}.text-link:hover{color:#596b54}.contact{background:var(--forest);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:9%}.contact h2{font-size:clamp(38px,4vw,60px)}.contact-details{display:flex;flex-direction:column;align-items:flex-start;padding-top:4px}.contact .button{margin-top:25px}.email{font-family:var(--serif);font-size:28px;line-height:1.3;margin-top:28px;border-bottom:1px solid #8f9e91}.phone{font-size:18px;margin-top:14px}footer{padding:38px 6%;display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-logo{width:185px;flex-shrink:0}footer p{font-size:14px}footer>span{font-size:12px;letter-spacing:1px}
@media(min-width:1150px){.criteria .section-heading>p{position:absolute;right:0;bottom:4px}}
@media(max-width:1000px){.site-header nav{gap:20px}.logo-link{width:180px}.hero-copy{padding:46px 9% 28px}.hero h1{font-size:49px;letter-spacing:-1.6px}.hero,.hero-image{min-height:610px}.hero-bottom{flex-direction:column;align-items:flex-start;gap:12px}.section{padding:72px 6%}.criteria-grid{gap:26px}.origin{gap:6%}.origin-image{height:560px}.section h2{font-size:40px}.lead{font-size:21px}.criteria-grid h3{font-size:27px}}
@media(max-width:700px){.site-header{padding:22px 6%;flex-wrap:wrap;gap:18px}.logo-link{width:172px}.site-header nav{width:100%;gap:12px;justify-content:space-between;flex-wrap:wrap;font-size:14px}.header-contact{padding:10px 16px}.hero{grid-template-columns:1fr}.hero-copy{padding:42px 7% 28px;min-height:550px}.hero h1{font-size:clamp(42px,10vw,60px);letter-spacing:-1.4px;margin-top:28px}.hero-copy>p{font-size:16px}.hero-bottom{flex-direction:row;align-items:center;gap:18px;padding-top:42px}.hero-bottom a{font-size:13px}.hero-image{min-height:370px}.image-caption{right:16px;bottom:16px;font-size:12px}.section{padding:60px 7%}.boutique,.origin,.properties,.contact{grid-template-columns:1fr;gap:30px}.section h2{font-size:39px;letter-spacing:-1px}.boutique-copy,.properties>div:last-child{padding:0}.criteria-grid{grid-template-columns:1fr;gap:34px;margin-top:40px}.criteria-grid h3{font-size:29px;margin-top:17px}.origin-image{height:350px}.origin-copy .lead{font-size:21px}.contact-details{padding:0}.email{font-size:27px}footer{flex-wrap:wrap;padding:32px 7%;gap:22px}footer p{width:100%;order:3}footer>span{font-size:12px}}
@media(max-width:370px){.site-header nav{gap:8px}.site-header nav>a{font-size:13px}.header-contact{padding:10px 12px}.hero h1{font-size:39px}.hero-bottom{align-items:flex-start;flex-direction:column}.image-caption{font-size:11px}.section h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.contact-details,.contact form{width:100%;min-width:0}.contact fieldset{border:0;padding:0;margin:24px 0 0;min-width:0}.contact label{display:block;font-size:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact input,.contact textarea{display:block;width:100%;margin:7px 0 18px;padding:12px;background:#f4f1e9;color:#263c33;border:1px solid #b8aa95;border-radius:0;font:inherit;font-size:16px;line-height:1.5}.contact textarea{resize:vertical;min-height:130px}.contact input:focus-visible,.contact textarea:focus-visible{outline:3px solid #cfc9a9;outline-offset:3px}.contact .form-privacy{font-size:13px;line-height:1.6;margin:0 0 18px}.form-privacy a{text-decoration:underline}.contact button{cursor:pointer;font-family:inherit}.contact button:disabled{opacity:.55;cursor:not-allowed}.contact fieldset:disabled{opacity:.65}.form-status{font-size:14px;line-height:1.6;margin:18px 0 0;min-height:24px}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact .phone{margin-top:22px}#human-check{min-height:0;max-width:100%}@media(max-width:900px){.form-row{grid-template-columns:1fr;gap:0}}

/* Contacto: teléfono principal y formulario secundario compacto. */
.section.contact{padding-top:58px;padding-bottom:58px;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:7%;align-items:start}.contact-primary h2{font-size:clamp(36px,3.6vw,52px);margin-top:16px}.phone-primary{display:inline-block;font-family:var(--serif);font-size:clamp(36px,4.6vw,66px);line-height:1.15;letter-spacing:-1.5px;margin:22px 0 20px;border-bottom:1px solid #82998a;padding-bottom:9px;white-space:nowrap}.phone-primary:hover{color:#d5d5bd}.contact-primary>p{font-size:16px;line-height:1.65}.contact .call-button{margin-top:24px}.contact-details{padding-top:0}.contact .form-heading{font-family:var(--serif);font-size:25px;line-height:1.3}.contact fieldset{margin-top:17px}.contact input,.contact textarea{padding:9px 11px;margin:5px 0 12px}.contact textarea{min-height:88px}.contact .form-privacy{font-size:12px;line-height:1.5;margin-bottom:12px}.contact form .button{margin-top:13px;min-height:44px;padding:10px 20px}.form-status{font-size:12px;line-height:1.5;margin-top:10px;min-height:0}.form-status:empty{display:none}.form-row{gap:12px}#human-check{max-width:300px}@media(min-width:701px) and (max-width:900px){.section.contact{grid-template-columns:minmax(0,1fr) minmax(0,330px);gap:5%}.phone-primary{font-size:38px}}@media(max-width:700px){.section.contact{grid-template-columns:1fr;gap:32px;padding-top:42px;padding-bottom:42px}.contact-primary{padding-bottom:30px;border-bottom:1px solid #617b6a}.phone-primary{font-size:clamp(36px,9.5vw,52px);margin-top:17px}.contact-details{max-width:420px}.contact .form-row{grid-template-columns:1fr 1fr;gap:12px}}@media(max-width:380px){.contact .form-row{grid-template-columns:1fr;gap:0}}

/* Cabecera: navegación de mayor presencia, sin CTA duplicado. */
.site-header nav{gap:32px;font-family:Arial,Helvetica,sans-serif;font-size:14px;font-weight:700;letter-spacing:.075em;text-transform:uppercase}.site-header nav>a:not(.button){display:flex;align-items:center;min-height:44px;padding:10px 0;border-bottom:2px solid transparent}.site-header nav>a:hover,.site-header nav>a:focus-visible{border-bottom-color:var(--forest)}
@media(max-width:700px){.site-header{padding:23px 6% 15px;gap:22px}.site-header nav{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:10px;width:100%;border-top:1px solid var(--line);padding-top:10px;font-size:12px;letter-spacing:.055em}.site-header nav>a:not(.button){justify-content:center;text-align:center;line-height:1.4;padding:9px 0;min-height:44px}.site-header nav>a:first-child{justify-content:flex-start;text-align:left}.site-header nav>a:last-child{justify-content:flex-end;text-align:right}}@media(max-width:370px){.site-header nav{gap:6px;letter-spacing:.025em}.site-header nav>a{font-size:11px}}
