:root{--grafito:#1a1815;--carbon:#100f0d;--oro:#c6a25c;--oro2:#a8905f;--marfil:#f6f2ea;--marfil2:#efe7d8;--tinta:#2a2620;--gris:#7c7264;--verde:#3f6b45;--rojo:#9c3d2f}
*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}
body{font-family:'Jost',sans-serif;color:var(--tinta);background:var(--marfil);font-weight:300;line-height:1.75;overflow-x:hidden}
.k{font-family:'Cinzel',serif;letter-spacing:.34em;text-transform:uppercase;font-size:11px;color:var(--oro2)}
.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;justify-content:space-between;align-items:center;padding:20px 40px;mix-blend-mode:difference;transition:padding .5s}
.nav.small{padding:12px 40px}
.nav .brand{font-family:'Cinzel',serif;letter-spacing:.22em;font-size:13px;color:#fff;text-decoration:none}
.nav .menu{display:flex;gap:20px}.nav .menu a{font-family:'Jost';font-size:11.5px;letter-spacing:.14em;color:#fff;text-transform:uppercase;opacity:.82;text-decoration:none;transition:opacity .4s}.nav .menu a:hover{opacity:1}.nav .menu a.active{opacity:1;font-weight:500}
/* HERO cinematic: layered parallax + slow kenburns + light drift */
.hero{height:100vh;min-height:600px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center}
.hero .bg{position:absolute;inset:-10% -14%;background-size:cover;background-position:center;animation:kbhero 34s ease-in-out infinite alternate;will-change:transform}
@keyframes kbhero{0%{transform:scale(1.1) translate(-3%,-1%)}100%{transform:scale(1.17) translate(3%,1%)}}
.hero .light{position:absolute;inset:0;background:radial-gradient(120% 80% at 30% 20%,rgba(255,247,230,.22),transparent 55%);mix-blend-mode:screen;animation:lightdrift 22s ease-in-out infinite alternate;pointer-events:none}
@keyframes lightdrift{0%{opacity:.35;transform:translate(-4%,-2%)}100%{opacity:.7;transform:translate(5%,3%)}}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,15,13,.5),rgba(16,15,13,.1) 42%,rgba(16,15,13,.62))}
.hero .in{position:relative;z-index:2;color:#fff;padding:0 24px}
.hero .k{color:var(--oro);opacity:0;transform:translateY(16px);animation:rise 1.3s .3s forwards}
.hero h1{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;font-size:clamp(52px,10vw,124px);line-height:.95;margin:12px 0 12px;opacity:0;transform:translateY(26px);animation:rise 1.5s .5s forwards}
.hero p{font-family:'Cormorant Garamond',serif;font-size:clamp(17px,2.2vw,24px);color:#e9e1d2;max-width:600px;margin:0 auto;opacity:0;transform:translateY(20px);animation:rise 1.5s .8s forwards}
@keyframes rise{to{opacity:1;transform:none}}
.cue{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:2;color:#fff;font-size:11px;letter-spacing:.2em;font-family:'Cinzel';opacity:.8;animation:bob 2.6s infinite}
@keyframes bob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,9px)}}
.intro{max-width:840px;margin:0 auto;padding:130px 30px 80px;text-align:center}
.intro .lead{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:300;font-size:clamp(25px,4.2vw,44px);line-height:1.32;color:var(--grafito)}
.intro .lead em{color:var(--oro2)}
.intro .sub{margin-top:24px;font-size:15px;color:var(--gris);max-width:560px;margin-inline:auto}
.seq{max-width:1240px;margin:0 auto;padding:20px 30px}
.block{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center;padding:56px 0}
.block:nth-child(even){grid-template-columns:.85fr 1.15fr}.block:nth-child(even) .txt{order:2}
.block .fig{overflow:hidden;border-radius:2px;box-shadow:0 34px 80px rgba(0,0,0,.17);position:relative}
.block .fig .im{width:100%;padding-bottom:66%;background-size:cover;background-position:center;position:relative;scale:1.02;transition:scale 1.2s;will-change:scale,translate}
/* ===== SISTEMA DE MOVIMIENTO EDITORIAL — deriva de luz natural (no filtro) ===== */
.fig .ld{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:.2;mix-blend-mode:soft-light;
 background:radial-gradient(72% 56% at 26% 20%,rgba(255,244,222,.18),transparent 62%)}
.block.in .fig .ld{animation:mdaylight 27s ease-in-out infinite alternate}
@keyframes mdaylight{0%{opacity:.12;transform:translate(-3%,-2%) scale(1.04)}100%{opacity:.5;transform:translate(4%,3%) scale(1.12)}}
/* 1 · RESPIRACIÓN — la calma (blackout, habitaciones): escala apenas perceptible */
.block.in .fig .mo-breathe{animation:mbreathe 24s ease-in-out infinite alternate}
@keyframes mbreathe{from{scale:1.012}to{scale:1.03}}
/* 2 · LUZ / ZOOM EDITORIAL — sheer, la luz que entra: Ken Burns 100→110% lentísimo */
.block.in .fig .mo-lumina{animation:mlumina 32s ease-in-out infinite alternate}
@keyframes mlumina{0%{scale:1.02}100%{scale:1.10}}
/* 3 · PASE DE LUZ SOBRE EL TEXTIL — la materia: barrido de luz suavísimo + respiración */
.block.in .fig .mo-sheen{animation:mbreathe 26s ease-in-out infinite alternate}
.fig .mo-sheen::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;opacity:0;
 background:linear-gradient(115deg,transparent 40%,rgba(255,249,238,.12) 49%,transparent 58%);background-size:260% 260%}
.block.in .fig .mo-sheen::after{animation:msheen 16s ease-in-out infinite;opacity:1}
@keyframes msheen{0%{background-position:130% 0}55%,100%{background-position:-50% 0}}
.block .lbl{font-family:'Cinzel';font-size:10px;letter-spacing:.3em;color:var(--oro2);text-transform:uppercase}
.block h3{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(30px,4vw,46px);color:var(--grafito);line-height:1.04;margin:10px 0 14px}
.block p{font-size:15.5px;color:var(--tinta);max-width:460px}
.reveal{opacity:0;transform:translateY(42px);transition:opacity 1.2s cubic-bezier(.2,.6,.2,1),transform 1.2s cubic-bezier(.2,.6,.2,1)}.reveal.in{opacity:1;transform:none}
.coll{padding:66px 30px 30px}
.coll-h{max-width:1240px;margin:0 auto 6px;text-align:center}.coll-h .k{display:block;margin-bottom:8px}
.coll-h h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(30px,5vw,54px);color:var(--grafito)}
.coll-h p{color:var(--gris);font-family:'Cormorant Garamond';font-style:italic;font-size:19px;margin-top:4px}
.gal{max-width:1240px;margin:34px auto 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:28px}
.card{background:var(--marfil);border-radius:3px;overflow:hidden;box-shadow:0 12px 34px rgba(0,0,0,.09);cursor:pointer;transition:transform .7s cubic-bezier(.2,.6,.2,1),box-shadow .7s;position:relative}
.card:hover{transform:translateY(-7px) scale(1.02);box-shadow:0 30px 60px rgba(0,0,0,.18)}
.card .ph{aspect-ratio:4/5;overflow:hidden;position:relative}
.card .ph .l1,.card .ph .l2{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 1.2s ease,opacity .8s ease}
.card .ph .l2{opacity:0}
.card:hover .ph .l1{transform:scale(1.08);opacity:0}
.card:hover .ph .l2{transform:scale(1.08);opacity:1}
.card .cnt{position:absolute;bottom:10px;right:10px;background:rgba(16,15,13,.72);color:#fff;font-size:10px;letter-spacing:.06em;padding:4px 9px;border-radius:20px;backdrop-filter:blur(4px);z-index:2;display:flex;gap:5px;align-items:center;transition:background .4s}
.card:hover .cnt{background:var(--oro);color:var(--carbon)}
.card .req{position:absolute;top:10px;left:10px;background:var(--rojo);color:#fff;font-size:8.5px;letter-spacing:.06em;padding:3px 8px;border-radius:20px;font-family:'Cinzel';z-index:2}
.card .cb{padding:22px 24px 26px}
.card .cm{font-family:'Cinzel';font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--oro2)}
.card h4{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:28px;color:var(--grafito);line-height:1;margin:5px 0 9px}
.card p{font-size:13.5px;color:var(--gris);min-height:56px}
.card .row{display:flex;justify-content:space-between;align-items:center;margin-top:12px}
.card .price{font-family:'Cormorant Garamond';font-size:18px;color:var(--grafito)}
.badges{display:flex;gap:5px}.badges span{font-size:9px;letter-spacing:.03em;padding:3px 8px;border-radius:20px;background:var(--marfil2);color:var(--oro2);border:1px solid #e6d9bf}
.strip{max-width:1200px;margin:40px auto 0;padding:90px 30px;display:grid;grid-template-columns:repeat(3,1fr);gap:44px;text-align:center}
.strip .it .n{font-family:'Cormorant Garamond';font-size:46px;color:var(--oro2);font-style:italic}
.strip .it h5{font-family:'Cinzel';font-size:11px;letter-spacing:.18em;text-transform:uppercase;margin:8px 0 6px;color:var(--grafito)}
.strip .it p{font-size:13.5px;color:var(--gris)}
.cta{position:relative;padding:140px 30px;text-align:center;color:#fff;background:var(--carbon)}
.cta h2{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;font-size:clamp(34px,6vw,68px);line-height:1.04}
.cta p{color:#cfc4b0;margin:18px auto 30px;max-width:520px;font-size:16px}
.btn{display:inline-block;font-family:'Cinzel';font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--carbon);background:var(--oro);padding:17px 36px;border-radius:2px;text-decoration:none;transition:.5s}
.btn:hover{background:#d8b673;letter-spacing:.26em}
.foot{background:#0d0c0b;color:#8a8071;text-align:center;padding:28px;font-size:11px;letter-spacing:.1em}.foot b{font-family:'Cinzel';color:#cfc4b0;letter-spacing:.24em}
.tag{display:none}
/* ===== barra de progreso de scroll ===== */
.progress{position:fixed;top:0;left:0;height:2px;width:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,var(--oro2),var(--oro));z-index:60;transition:transform .12s linear}
/* ===== FAB · Solicitar asesoría (siempre visible) ===== */
.fab{position:fixed;right:22px;bottom:22px;z-index:65;display:inline-flex;align-items:center;gap:9px;font-family:'Cinzel';font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--carbon);background:var(--oro);padding:14px 21px;border-radius:40px;text-decoration:none;box-shadow:0 14px 30px rgba(0,0,0,.24);transition:.4s;cursor:pointer;border:none}
.fab:hover{background:#d8b673;transform:translateY(-2px);box-shadow:0 20px 42px rgba(0,0,0,.3)}
.fab .dot{width:7px;height:7px;border-radius:50%;background:var(--verde);animation:fpulse 2.6s infinite}
@keyframes fpulse{0%{box-shadow:0 0 0 0 rgba(63,107,69,.5)}70%{box-shadow:0 0 0 10px rgba(63,107,69,0)}100%{box-shadow:0 0 0 0 rgba(63,107,69,0)}}
@media(max-width:560px){.fab span.lbl{display:none}.fab{padding:15px}}
/* ===== herramientas del visor + aviso ===== */
.lb-tools{position:absolute;top:18px;right:66px;z-index:5;display:flex;gap:8px;align-items:center}
.lb-tools button{font-family:'Jost';font-size:11px;letter-spacing:.06em;color:#e9e1d2;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);padding:8px 13px;border-radius:30px;cursor:pointer;transition:.3s}
.lb-tools button:hover{background:var(--oro);color:var(--carbon);border-color:var(--oro)}
.lb-tools button.zi{font-size:16px;padding:5px 12px;line-height:1}
.lb-flash{position:absolute;top:22px;left:50%;transform:translateX(-50%);z-index:6;background:rgba(20,18,16,.92);color:var(--oro);font-family:'Cinzel';font-size:10px;letter-spacing:.14em;padding:8px 16px;border-radius:30px;opacity:0;transition:opacity .4s;pointer-events:none}
.lb-flash.on{opacity:1}
.hint{position:absolute;bottom:74px;left:50%;transform:translateX(-50%);z-index:4;color:#b7ac9a;font-family:'Jost';font-size:10.5px;letter-spacing:.08em;opacity:.7}
@media(max-width:560px){.lb-tools{right:14px;top:14px}.lb-tools button:not(.zi){display:none}}
/* cursor contextual */
.card .ph{cursor:zoom-in}
/* ===== breadcrumbs ===== */
.crumbs{max-width:1240px;margin:0 auto;padding:26px 30px 0;font-family:'Cinzel';font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gris)}
.crumbs a{color:var(--oro2);text-decoration:none;transition:color .3s}.crumbs a:hover{color:var(--grafito)}
.crumbs span{margin:0 8px;opacity:.5}.crumbs b{color:var(--grafito);font-weight:500}
/* ===== filtros · navegación inteligente ===== */
.filters{max-width:1240px;margin:26px auto 0;padding:22px 30px;display:flex;flex-wrap:wrap;gap:22px 34px;align-items:center;border-top:1px solid #e7ddca;border-bottom:1px solid #e7ddca}
.fgroup{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fgroup .fl{font-family:'Cinzel';font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--oro2);margin-right:2px}
.chip{font-family:'Jost';font-size:12px;letter-spacing:.02em;color:var(--tinta);background:transparent;border:1px solid #ddd0b8;padding:6px 14px;border-radius:30px;cursor:pointer;transition:.35s}
.chip:hover{border-color:var(--oro2)}
.chip.on{background:var(--grafito);color:var(--marfil);border-color:var(--grafito)}
.fsel{font-family:'Jost';font-size:12px;color:var(--tinta);background:transparent;border:1px solid #ddd0b8;padding:7px 12px;border-radius:30px;cursor:pointer}
.fcount{margin-left:auto;font-family:'Cormorant Garamond';font-style:italic;font-size:17px;color:var(--gris)}
.card.hide{display:none}
.coll.hide{display:none}
/* ===== ficha button en visor ===== */
.lb-tools button.fic{background:rgba(198,162,92,.16);border-color:rgba(198,162,92,.5);color:#e8d9b6}
/* ===== relacionados en visor ===== */
.lb-rel{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;padding:6px 0 2px;align-items:center}
.lb-rel .rl{font-family:'Cinzel';font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#8a8071;margin-right:4px}
.lb-rel .rc{display:flex;align-items:center;gap:7px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:30px;padding:4px 12px 4px 4px;cursor:pointer;transition:.3s}
.lb-rel .rc:hover{background:var(--oro);color:var(--carbon)}
.lb-rel .rc .rt{width:30px;height:30px;border-radius:50%;background-size:cover;background-position:center}
.lb-rel .rc .rn{font-family:'Jost';font-size:11px;color:#e9e1d2}
.lb-rel .rc:hover .rn{color:var(--carbon)}
/* LIGHTBOX */
.lb{position:fixed;inset:0;z-index:100;background:rgba(12,11,10,.94);display:none;opacity:0;transition:opacity .5s;backdrop-filter:blur(6px)}
.lb.on{display:flex;opacity:1}
.lb-inner{margin:auto;width:100%;max-width:1200px;padding:60px 24px 24px;display:flex;flex-direction:column;height:100%}
.lb-stage{flex:1;position:relative;overflow:hidden;border-radius:3px;min-height:0}
.lb-stage .s{position:absolute;inset:0;background-size:contain;background-repeat:no-repeat;background-position:center;opacity:0;transition:opacity .7s ease;transform-origin:center center;will-change:transform;touch-action:none}
.lb-stage .s.on{opacity:1}
.lb-stage.zoomed{cursor:grab}
.lb-stage.zoomed.grab .s.on{cursor:grabbing}
.lb-stage:not(.zoomed) .s.on{cursor:zoom-in}
.lb-meta{color:#e9e1d2;text-align:center;padding:16px 0 10px}
.lb-meta .t{font-family:'Cormorant Garamond';font-style:italic;font-size:26px}
.lb-meta .m{font-family:'Cinzel';font-size:9px;letter-spacing:.16em;color:var(--oro);text-transform:uppercase;margin-top:4px}
.lb-meta .d{font-size:12.5px;color:#b7ac9a;max-width:640px;margin:8px auto 0}
.lb-thumbs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;padding:8px 0 4px}
.lb-thumbs .th{width:62px;height:46px;background-size:cover;background-position:center;border-radius:4px;cursor:pointer;opacity:.5;border:2px solid transparent;transition:opacity .4s,border-color .4s}
.lb-thumbs .th.on{opacity:1;border-color:var(--oro)}
.lb-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;color:#fff;font-size:30px;cursor:pointer;width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:rgba(16,15,13,.35);border-radius:50%;transition:background .3s;user-select:none}
.lb-arrow:hover{background:var(--oro);color:var(--carbon)}
.lb-prev{left:10px}.lb-next{right:10px}
.lb-x{position:absolute;top:20px;right:26px;color:#fff;font-size:30px;cursor:pointer;z-index:4;line-height:1}
.lb-count{position:absolute;top:24px;left:26px;color:#e9e1d2;font-family:'Cinzel';font-size:11px;letter-spacing:.12em;z-index:4}
@media(max-width:820px){.block,.block:nth-child(even){grid-template-columns:1fr;gap:24px;padding:40px 0}.block:nth-child(even) .txt{order:0}.strip{grid-template-columns:1fr;gap:30px;padding:60px 30px}.nav .menu{display:none}.lb-arrow{width:42px;height:42px;font-size:24px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.hero .bg{transform:scale(1.1)}.hero .light{opacity:.5}}
/* Astro: imágenes reales en tarjetas (accesibilidad + lazy) */
.card .ph img.l1,.card .ph img.l2{width:100%;height:100%;object-fit:cover;display:block}

/* ============ ARQUITECTURA UNIFICADA · añadidos ============ */
/* accesibilidad: saltar al contenido + foco visible */
.skip{position:fixed;left:-999px;top:0;z-index:200;background:var(--oro);color:var(--carbon);padding:10px 16px;font-family:'Cinzel';font-size:11px;letter-spacing:.1em;border-radius:0 0 6px 0}
.skip:focus{left:0}
a:focus-visible,button:focus-visible,select:focus-visible,.card:focus-visible{outline:2px solid var(--oro);outline-offset:3px}
/* alias de encabezados (jerarquía semántica h1>h2>h3) */
.block h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(30px,4vw,46px);color:var(--grafito);line-height:1.04;margin:10px 0 14px}
.card h3.cn{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:28px;color:var(--grafito);line-height:1;margin:5px 0 9px}
/* footer con navegación */
.foot{background:#0d0c0b;color:#8a8071;text-align:center;padding:40px 28px;font-size:11px;letter-spacing:.1em;line-height:2}
.foot .foot-nav{margin-bottom:14px}
.foot .foot-nav a{color:#b7ac9a;text-decoration:none;font-family:'Cinzel';font-size:10px;letter-spacing:.12em;transition:color .3s}
.foot .foot-nav a:hover{color:var(--oro)}
.foot .dir{color:#b7ac9a;font-family:'Cormorant Garamond';font-style:italic;font-size:15px;letter-spacing:.04em}
/* menú hamburguesa + panel móvil */
.burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px;z-index:56}
.burger span{display:block;width:26px;height:2px;background:#fff;transition:.3s}
body.menu-open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.menu-open .burger span:nth-child(2){opacity:0}
body.menu-open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{position:fixed;inset:0 0 0 auto;width:min(80vw,330px);background:var(--carbon);z-index:54;display:flex;flex-direction:column;justify-content:center;gap:22px;padding:48px 44px;transform:translateX(100%);transition:transform .45s cubic-bezier(.2,.6,.2,1);box-shadow:-20px 0 60px rgba(0,0,0,.4)}
.mobile-menu a{font-family:'Cormorant Garamond',serif;font-size:24px;color:#f6f2ea;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:10px;transition:color .3s}
.mobile-menu a:hover{color:var(--oro)}
body.menu-open .mobile-menu{transform:none}
body.menu-open{overflow:hidden}
@media(max-width:960px){.nav .menu{display:none}.burger{display:flex}}
/* ============ PORTADA · rejilla de categorías ============ */
.pgrid{max-width:1260px;margin:20px auto 0;padding:0 30px;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:30px}
.ptile{background:var(--marfil);border-radius:3px;overflow:hidden;box-shadow:0 12px 34px rgba(0,0,0,.09);text-decoration:none;color:inherit;transition:transform .7s cubic-bezier(.2,.6,.2,1),box-shadow .7s;display:block}
.ptile:hover{transform:translateY(-8px);box-shadow:0 34px 66px rgba(0,0,0,.2)}
.pph{aspect-ratio:4/5;overflow:hidden;position:relative}
.pph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform 1.8s ease}
.ptile:hover .pph img{transform:scale(1.1)}
.pph:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,15,13,0) 45%,rgba(16,15,13,.5))}
.pph .pn{position:absolute;top:14px;left:16px;z-index:2;font-family:'Cinzel';font-size:12px;letter-spacing:.14em;color:#fff;opacity:.85}
.pcb{padding:24px 26px 30px}
.pcb .pk{font-family:'Cinzel';font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--oro2)}
.pcb h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:30px;color:var(--grafito);line-height:1.02;margin:6px 0 10px}
.pcb p{font-size:14px;color:var(--gris);min-height:44px}
.pcb .pgo{display:inline-block;margin-top:14px;font-family:'Cinzel';font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--oro2);transition:letter-spacing .4s}
.ptile:hover .pcb .pgo{letter-spacing:.26em;color:var(--grafito)}
.hero .est{font-family:'Cinzel';font-size:clamp(10px,1.4vw,13px);letter-spacing:.26em;color:#e9e1d2;margin-top:14px;opacity:0;animation:rise 1.5s .8s forwards}
/* ============ NOSOTROS / CONTACTO ============ */
.doc{max-width:860px;margin:0 auto;padding:150px 30px 40px}
.doc .k{display:block;text-align:center;margin-bottom:12px}
.doc h1{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;font-size:clamp(38px,7vw,72px);text-align:center;color:var(--grafito);line-height:1;margin-bottom:10px}
.doc .sub{text-align:center;color:var(--gris);font-family:'Cormorant Garamond';font-style:italic;font-size:20px;margin-bottom:40px}
.doc h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:30px;color:var(--grafito);margin:34px 0 10px}
.doc p{font-size:16px;color:var(--tinta);margin:10px 0}
.doc .lead{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(22px,3.4vw,32px);line-height:1.4;color:var(--grafito);text-align:center;margin:0 auto 30px;max-width:720px}
.cgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px;margin:26px 0}
.ccardx{background:#fff;border:1px solid #ece2ce;border-radius:8px;padding:26px}
.ccardx .cl{font-family:'Cinzel';font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--oro2)}
.ccardx a{color:var(--grafito);text-decoration:none;font-family:'Cormorant Garamond';font-size:22px;display:block;margin-top:8px}
.ccardx a:hover{color:var(--oro2)}
.form{display:grid;gap:14px;max-width:560px;margin:24px auto 0}
.form input,.form textarea{font-family:'Jost';font-size:15px;padding:13px 15px;border:1px solid #ddd0b8;border-radius:6px;background:#fff;color:var(--tinta)}
.form textarea{min-height:120px;resize:vertical}
.form button{font-family:'Cinzel';font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--carbon);background:var(--oro);border:none;padding:15px;border-radius:6px;cursor:pointer;transition:.4s}
.form button:hover{background:#d8b673;letter-spacing:.24em}
/* ===== EMBLEMA de marca en nav y footer ===== */
.nav{mix-blend-mode:normal;background:linear-gradient(180deg,rgba(16,15,13,.5),rgba(16,15,13,0));transition:background .4s,padding .5s}
.nav.small{background:rgba(16,15,13,.94);backdrop-filter:blur(8px);box-shadow:0 8px 24px rgba(0,0,0,.18)}
.nav .brand{display:inline-flex;align-items:center;gap:11px;color:#fff}
.brand-emb{height:30px;width:auto;display:block}
.nav .menu a{color:#fff}
.foot-emb{height:56px;width:auto;display:block;margin:0 auto 18px;opacity:.92}

/* === Identidad de marca · Cortinas y más (override) === */
.nav .brand{font-family:'Cormorant Garamond',serif!important;font-weight:600;letter-spacing:.07em;font-size:19px;text-transform:none}
.foot b{font-family:'Cormorant Garamond',serif!important;font-weight:600;letter-spacing:.05em;text-transform:none;font-size:15.5px}
/* Fix desborde de texto: correos/enlaces largos no deben salirse de su tarjeta */
.ccardx{overflow:hidden}
.ccardx a{overflow-wrap:anywhere;word-break:break-word;line-height:1.3}
.doc,.doc p,.doc .lead{overflow-wrap:break-word}
