:root{--papel:#F4EEE6;--lino:#E9DFD2;--blanco:#FBF8F4;--tinta:#2B2320;--tinta-2:#55483F;--gris:#7C6F66;--teja:#9A4630;--teja-osc:#7B3522;--borde:#D8CBBB;
--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;--sans:'Jost','Avenir Next','Segoe UI',system-ui,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--papel);color:var(--tinta);font-family:var(--sans);font-size:18px;line-height:1.7;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:var(--teja)}
.wrap{max-width:1160px;margin:0 auto;padding-inline:clamp(16px,4vw,40px)}
.hdr{border-bottom:1px solid var(--borde);background:var(--papel)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;min-height:74px;flex-wrap:wrap;padding-block:10px}
.logo{display:flex;flex-direction:column;text-decoration:none;color:var(--tinta);line-height:1}
.logo b{font-family:var(--serif);font-style:italic;font-weight:500;font-size:28px}
.logo span{font-size:10px;letter-spacing:.3em;text-transform:uppercase;margin-top:5px}
.nav{display:flex;gap:6px 22px;flex-wrap:wrap;align-items:center;font-size:14px}
.nav a{color:var(--tinta);text-decoration:none}.nav a[aria-current]{color:var(--teja);text-decoration:underline;text-underline-offset:5px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 26px;font-size:12.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;border:1px solid transparent}
.btn-teja{background:var(--teja);color:#fff}.btn-teja:hover{background:var(--teja-osc)}
.btn-line{border-color:var(--tinta);color:var(--tinta);background:transparent}
.crumbs{font-size:13.5px;color:var(--gris);padding-top:22px}.crumbs a{color:var(--gris)}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1;text-wrap:balance}
h1{font-size:clamp(38px,5.4vw,60px);margin:8px 0 14px}
h2{font-size:clamp(30px,4vw,42px);margin:0 0 14px}
h3{font-size:25px;margin:22px 0 6px}
.eyebrow{font-size:12.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--teja)}
.lead{font-size:19px;color:var(--tinta-2)}
.pd{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);padding-block:22px 50px;align-items:start}
@media(max-width:860px){.pd{grid-template-columns:1fr}}
.gal-main{aspect-ratio:4/3;width:100%;object-fit:cover;background:var(--lino)}
.thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}
.thumbs button{padding:0;border:2px solid transparent;background:none;cursor:pointer}
.thumbs button[aria-pressed=true]{border-color:var(--teja)}
.thumbs img{aspect-ratio:1;object-fit:cover;width:100%}
.price{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin:6px 0 4px}
.price b{font-family:var(--serif);font-weight:500;font-size:46px;color:var(--teja)}
.price span{font-size:15px;color:var(--tinta-2)}
.specs{list-style:none;padding:0;margin:18px 0;border-top:1px solid var(--borde)}
.specs li{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--borde);padding:10px 0;margin:0;font-size:16px}
.specs li span:first-child{color:var(--gris)}
.specs li span:last-child{text-align:right}
.ctas{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0 14px}
.trust{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;color:var(--tinta-2);padding:0;list-style:none;margin:0}
.trust li::before{content:"✓ ";color:var(--teja)}
.sec{padding-block:clamp(44px,6vw,72px);border-top:1px solid var(--borde)}
.sec.alt{background:var(--lino);border-top:0}
.narrow{max-width:780px}
.sw{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:14px;margin:22px 0 10px}
@media(max-width:700px){.sw{grid-template-columns:repeat(4,minmax(0,1fr))}}
.sw a{text-decoration:none;color:var(--tinta);text-align:center;font-family:var(--serif);font-style:italic;font-size:18px}
.sw img{aspect-ratio:1;border-radius:50%;object-fit:cover;width:100%;margin-bottom:6px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 18px;padding:0;list-style:none}
.chips li{background:var(--blanco);border:1px solid var(--borde);padding:6px 14px;font-size:15px;margin:0}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:22px}
@media(max-width:860px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.steps{grid-template-columns:1fr}}
.step{background:var(--blanco);padding:24px;border-top:2px solid var(--teja)}
.step small{font-size:12px;letter-spacing:.2em;color:var(--teja);font-weight:600}
.step h3{margin:8px 0 6px;font-size:24px}
.step p{margin:0;font-size:16px;color:var(--tinta-2)}
.tbl{overflow-x:auto;margin:18px 0}
table{border-collapse:collapse;width:100%;font-size:16px;background:var(--blanco)}
th,td{border-bottom:1px solid var(--borde);padding:12px 14px;text-align:left;vertical-align:top}
th{font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--gris)}
.quote{font-family:var(--serif);font-style:italic;font-size:25px;line-height:1.4;border-left:2px solid var(--teja);padding-left:20px;margin:18px 0}
.quote cite{display:block;font-family:var(--sans);font-style:normal;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--gris);margin-top:10px}
details{border-top:1px solid var(--borde);padding:16px 0}
details:last-of-type{border-bottom:1px solid var(--borde)}
summary{cursor:pointer;font-family:var(--serif);font-size:23px}
details p{margin:10px 0 0;color:var(--tinta-2)}
.rel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px}
@media(max-width:760px){.rel{grid-template-columns:1fr}}
.rel a{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--tinta);background:var(--blanco)}
.rel img{aspect-ratio:3/2;object-fit:cover;width:100%}
.rel span{font-family:var(--serif);font-size:23px;line-height:1.2;padding:0 16px}
.rel small{font-size:14px;color:var(--teja);padding:0 16px 16px}
article{max-width:780px;margin:0 auto;padding-block:16px 60px}
article h2{margin-top:44px}
figure{margin:28px 0}
figure img{width:100%;aspect-ratio:4/3;object-fit:cover}
figcaption{font-size:14px;color:var(--gris);margin-top:8px}
.meta{font-size:14px;color:var(--gris)}
.cta{background:var(--blanco);padding:clamp(24px,4vw,40px);margin:44px 0;display:flex;flex-direction:column;gap:12px}
.cta h2{margin:0}
.ftr{background:var(--tinta);color:#CDBFB2;padding-block:40px;font-size:14px}
.ftr a{color:#F4EEE6}
.ftr-in{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}