:root{
  --verde:#005645;--verde-p:#003d31;--verde-h:#007a5e;
  --oro:#C9A86A;--oro-txt:#8A6C34;--oro-claro:#D9BC85;
  --crema:#FBFAF6;--crema-2:#F3F1EA;
  --tinta:#000;--cuerpo:#2E3330;--gris:#676D69;--linea:rgba(0,0,0,.13);
  --salvia:#B8BEAF;
  --serif:'Cormorant Garamond',Georgia,serif;--sans:'Inter',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{font-family:var(--sans);font-weight:300;color:var(--cuerpo);background:var(--crema);line-height:1.65;font-size:1rem}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:var(--serif);font-weight:500;color:var(--tinta);line-height:1.08;letter-spacing:-.005em}
.skip{position:absolute;left:-999px;top:0;background:var(--oro);color:var(--tinta);padding:.6rem 1rem;z-index:200}
.skip:focus{left:1rem;top:1rem}
:focus-visible{outline:2px solid var(--oro);outline-offset:3px}
.wrap{max-width:1280px;margin:0 auto;padding:0 clamp(20px,4.5vw,64px)}

/* ----- Barra superior ----- */
.topbar{position:fixed;top:0;left:0;right:0;z-index:101;height:36px;background:var(--verde-p);color:rgba(251,250,246,.78);font-size:.74rem;transition:transform .3s ease}
.topbar.hidden{transform:translateY(-100%)}
.topbar .wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.topbar span{white-space:nowrap}
.topbar b{font-weight:500;color:var(--oro-claro)}
.topbar .sep{display:inline-block;width:1px;height:11px;background:rgba(251,250,246,.3);margin:0 .9rem;vertical-align:-1px}
.topbar a:hover{color:var(--oro-claro)}
@media(max-width:860px){.topbar{display:none}}

/* ----- Navegación ----- */
nav{position:fixed;top:36px;left:0;right:0;z-index:100;height:84px;background:rgba(0,86,69,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:top .3s ease,height .3s ease}
nav.scrolled{top:0;height:70px}
@media(max-width:860px){nav{top:0}}
nav .wrap{height:100%;display:flex;align-items:center;justify-content:space-between}
.brand img{height:54px;width:auto}
nav.scrolled .brand img{height:46px}
.menu{display:flex;align-items:center;gap:2.1rem;list-style:none}
.menu a{font-size:.86rem;font-weight:400;color:rgba(251,250,246,.9);padding:.35rem 0;border-bottom:1px solid transparent;transition:border-color .2s ease,color .2s ease}
.menu a:hover,.menu a[aria-current="page"]{color:#fff;border-bottom-color:var(--oro)}
.cta{font-size:.82rem;font-weight:500;color:var(--oro-claro);border:1px solid var(--oro-claro);padding:.6rem 1.25rem;border-radius:2px;transition:background .2s ease,color .2s ease}
.cta:hover{background:var(--oro-claro);color:var(--verde-p)}
.toggle{display:none;cursor:pointer;background:none;border:1px solid var(--oro-claro);color:var(--oro-claro);font-family:var(--sans);font-size:.74rem;font-weight:500;letter-spacing:.08em;padding:.55rem .95rem}
.toggle .close{display:none}
.toggle.open .open{display:none}.toggle.open .close{display:inline}
.mobile{display:none;position:fixed;top:70px;left:0;right:0;bottom:0;background:var(--verde);z-index:99;padding:2rem clamp(20px,6vw,40px);flex-direction:column}
.mobile.open{display:flex}
.mobile a{font-family:var(--serif);font-size:1.7rem;color:var(--crema);padding:.9rem 0;border-bottom:1px solid rgba(251,250,246,.14)}
.mobile .cta{font-family:var(--sans);font-size:.9rem;margin-top:2rem;text-align:center;border-bottom:none}
@media(max-width:960px){.menu,nav .cta{display:none}.toggle{display:block}}

/* ----- Fotografía: tratamiento uniforme ----- */
.ph{position:relative;overflow:hidden;background:var(--verde-p)}
.ph img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.06) brightness(.92)}
.ph::after{content:"";position:absolute;inset:0;background:var(--verde);mix-blend-mode:multiply;opacity:.72}

/* ----- Portada ----- */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:var(--crema)}
.hero .ph{position:absolute;inset:0}
.hero .ph::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,61,49,.15) 0%,rgba(0,61,49,.35) 45%,rgba(0,61,49,.86) 100%)}
.hero .wrap{position:relative;z-index:2;width:100%;padding-top:160px;padding-bottom:clamp(56px,8vw,96px)}
.hero h1{color:var(--crema);font-size:clamp(2.5rem,5.4vw,5.1rem);max-width:19ch;font-weight:500;opacity:0;transform:translateY(10px);animation:in .9s ease .15s forwards}
.hero p{max-width:58ch;font-size:clamp(1rem,1.25vw,1.12rem);color:rgba(251,250,246,.86);margin:1.8rem 0 2.4rem;opacity:0;animation:in .9s ease .45s forwards}
.hero .acts{display:flex;gap:2rem;align-items:center;flex-wrap:wrap;opacity:0;animation:in .9s ease .7s forwards}
.hero .cta{font-size:.86rem;padding:.8rem 1.5rem}
.hero .quiet{font-size:.9rem;color:var(--crema);border-bottom:1px solid var(--oro);padding-bottom:2px}
@keyframes in{to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.hero h1,.hero p,.hero .acts{animation:none;opacity:1;transform:none}html{scroll-behavior:auto}}

/* ----- Secciones tipo expediente ----- */
.sec{padding:clamp(64px,9vw,128px) 0}
.sec .wrap{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:clamp(28px,5vw,96px)}
.sec h2{font-size:clamp(1.9rem,2.6vw,2.5rem);position:relative;padding-left:1.1rem;align-self:start;position:sticky;top:110px}
.sec h2::before{content:"";position:absolute;left:0;top:.3em;bottom:.2em;width:2px;background:var(--oro)}
.sec h2 small{display:block;font-family:var(--sans);font-size:.84rem;font-weight:300;color:var(--gris);line-height:1.6;margin-top:.9rem;max-width:26ch}
@media(max-width:860px){.sec .wrap{grid-template-columns:1fr;gap:1.8rem}.sec h2{position:static}}

/* Lo más reciente */
.notes{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.6vw,40px)}
.note .ph{aspect-ratio:4/3;margin-bottom:1.1rem}
.note .ph::after{opacity:.6}
.note .meta{font-size:.8rem;color:var(--gris);margin-bottom:.45rem}
.note h3{font-size:1.5rem;line-height:1.15;margin-bottom:.55rem;text-decoration:underline transparent;text-underline-offset:4px;text-decoration-thickness:1px;transition:text-decoration-color .2s ease}
.note:hover h3{text-decoration-color:var(--oro)}
.note p{font-size:.93rem;color:var(--cuerpo)}
.more{display:inline-block;margin-top:2.4rem;font-size:.9rem;font-weight:400;color:var(--verde);border-bottom:1px solid var(--oro);padding-bottom:2px}
@media(max-width:860px){.notes{grid-template-columns:1fr;gap:2.2rem}}

/* Servicios */
.svc{list-style:none;border-top:1px solid var(--linea)}
.svc li{border-bottom:1px solid var(--linea)}
.svc a{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(16px,3vw,48px);padding:1.9rem 0}
.svc h3{font-size:clamp(1.55rem,2.1vw,2rem);transition:color .2s ease}
.svc a:hover h3{color:var(--verde)}
.svc p{font-size:.95rem}
.svc p + p{margin-top:.6rem;font-size:.84rem;color:var(--gris)}
@media(max-width:700px){.svc a{grid-template-columns:1fr;gap:.6rem}}

/* Sectores */
.sect{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.6vw,22px)}
.sect a{position:relative;aspect-ratio:4/3;display:block}
.sect .ph{position:absolute;inset:0}
.sect .ph::after{opacity:.8}
.sect span{position:absolute;left:1.2rem;right:1.2rem;bottom:1.1rem;z-index:2;font-family:var(--serif);font-size:1.4rem;color:var(--crema);line-height:1.15}
.sect a:hover .ph::after{opacity:.62}
@media(max-width:860px){.sect{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.sect{grid-template-columns:1fr}.sect a{aspect-ratio:16/10}}

/* Caso */
.case{background:var(--verde-p);color:var(--crema)}
.case .wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,88px);align-items:center;padding-top:clamp(56px,7vw,96px);padding-bottom:clamp(56px,7vw,96px)}
.case .ph{aspect-ratio:4/5}
.case .ph::after{opacity:.55}
.case .lab{font-size:.8rem;color:var(--oro-claro);margin-bottom:1rem}
.case h2{color:var(--crema);font-size:clamp(1.9rem,3vw,2.8rem);max-width:18ch;margin-bottom:1.6rem}
.case dl{display:grid;grid-template-columns:max-content 1fr;gap:.75rem 1.6rem;font-size:.95rem;border-top:1px solid rgba(251,250,246,.16);padding-top:1.2rem}
.case dt{color:var(--salvia);font-weight:400}
.case dd{color:rgba(251,250,246,.9)}
@media(max-width:860px){.case .wrap{grid-template-columns:1fr}.case .ph{aspect-ratio:16/10}}

/* Valuador responsable */
.who{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,4vw,64px);align-items:start}
.who .ph{aspect-ratio:3/4;max-width:360px}
.who .ph::after{display:none}
.who .ph img{filter:none}
.who h3{font-size:clamp(1.8rem,2.6vw,2.4rem);line-height:1.1}
.who .role{font-size:.88rem;color:var(--oro-txt);font-weight:500;margin:.5rem 0 1.4rem}
.who p{font-size:.98rem;max-width:62ch}
.who p + p{margin-top:1rem}
.cred{margin-top:1.8rem;border-top:1px solid var(--linea);display:grid;grid-template-columns:1fr 1fr;gap:0 2rem}
.cred div{padding:.8rem 0;border-bottom:1px solid var(--linea);font-size:.9rem}
.cred b{display:block;font-weight:500;color:var(--tinta)}
.cred i{font-style:normal;color:var(--gris);font-size:.84rem}
.who .mail{display:inline-block;margin-top:1.6rem;font-size:.92rem;font-weight:400;color:var(--verde);border-bottom:1px solid var(--oro);padding-bottom:2px}
@media(max-width:860px){.who{grid-template-columns:1fr}.who .ph{max-width:300px}}
@media(max-width:560px){.cred{grid-template-columns:1fr}}

/* Referencias */
.refs{background:var(--crema-2)}
.ind{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--linea)}
.ind div{padding:1.4rem 1.4rem 1.4rem 0;border-bottom:1px solid var(--linea)}
.ind strong{display:block;font-family:var(--serif);font-weight:500;font-size:clamp(2rem,3vw,2.8rem);color:var(--tinta);line-height:1}
.ind span{display:block;font-size:.9rem;color:var(--cuerpo);margin-top:.5rem}
.ind i{display:block;font-style:normal;font-size:.78rem;color:var(--gris);margin-top:.15rem}
.src{font-size:.8rem;color:var(--gris);margin-top:1.1rem}
@media(max-width:860px){.ind{grid-template-columns:1fr 1fr}}

/* Contacto */
.contact{background:var(--verde);color:var(--crema)}
.contact .wrap{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(24px,4vw,72px);padding-top:clamp(56px,7vw,88px);padding-bottom:clamp(56px,7vw,88px);align-items:start}
.contact h2{color:var(--crema);font-size:clamp(2rem,3.2vw,3rem);max-width:14ch}
.contact p{max-width:46ch;color:rgba(251,250,246,.85);margin-top:1rem;font-size:.98rem}
.ways{list-style:none;border-top:1px solid rgba(251,250,246,.18)}
.ways li{border-bottom:1px solid rgba(251,250,246,.18);padding:1.05rem 0;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.98rem}
.ways li span{color:var(--salvia);font-size:.86rem}
.ways a{color:var(--crema);border-bottom:1px solid var(--oro);padding-bottom:1px}
@media(max-width:860px){.contact .wrap{grid-template-columns:1fr}}

/* Pie */
footer{background:var(--verde-p);color:rgba(251,250,246,.72);font-size:.86rem}
footer .top{display:grid;grid-template-columns:minmax(0,4fr) repeat(3,minmax(0,2.5fr));gap:2rem;padding:clamp(48px,6vw,72px) 0 2.6rem;border-bottom:1px solid rgba(251,250,246,.14)}
footer .top img{height:64px;width:auto;margin-bottom:1.2rem}
footer h4{font-family:var(--sans);font-size:.78rem;font-weight:500;color:var(--crema);margin-bottom:.9rem}
footer ul{list-style:none}
footer li{margin-bottom:.5rem}
footer li a:hover{color:var(--oro-claro)}
footer .legal{padding:1.6rem 0 2.2rem;display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;font-size:.78rem;color:rgba(251,250,246,.55)}
footer .legal p{max-width:70ch}
@media(max-width:860px){footer .top{grid-template-columns:1fr 1fr}}
@media(max-width:520px){footer .top{grid-template-columns:1fr}}

/* WhatsApp */
.wa{position:fixed;right:22px;bottom:22px;width:54px;height:54px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;z-index:90;box-shadow:0 6px 20px rgba(0,0,0,.22)}
.wa svg{width:28px;height:28px;fill:#fff}

/* ----- Páginas interiores ----- */
.phead{position:relative;min-height:62svh;display:flex;align-items:flex-end;color:var(--crema);padding-top:120px}
.phead .ph{position:absolute;inset:0}
.phead .ph::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,61,49,.25) 0%,rgba(0,61,49,.55) 50%,rgba(0,61,49,.9) 100%)}
.phead .wrap{position:relative;z-index:2;width:100%;padding-bottom:clamp(40px,6vw,72px)}
.phead .crumb{font-size:.82rem;color:var(--oro-claro);margin-bottom:1rem}
.phead .crumb a{color:var(--oro-claro)}
.phead h1{color:var(--crema);font-size:clamp(2.3rem,4.6vw,4.2rem);max-width:18ch}
.phead p{max-width:60ch;color:rgba(251,250,246,.86);margin-top:1.2rem;font-size:clamp(1rem,1.2vw,1.1rem)}
.phead.plain{min-height:auto;background:var(--verde);padding-top:150px}
.phead.plain .wrap{padding-bottom:clamp(36px,5vw,56px)}
.prose{max-width:66ch}
.prose p{font-size:1rem;margin-bottom:1.1rem}
.prose h3{font-size:1.45rem;margin:2.2rem 0 .8rem}
.prose ul{margin:0 0 1.2rem 1.2rem}
.prose li{margin-bottom:.45rem;font-size:.98rem}
.prose li::marker{color:var(--oro)}
.spec{border-top:1px solid var(--linea);max-width:72ch}
.spec div{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:1.2rem;padding:1rem 0;border-bottom:1px solid var(--linea);font-size:.95rem}
.spec b{font-weight:500;color:var(--tinta)}
@media(max-width:600px){.spec div{grid-template-columns:1fr;gap:.3rem}}
.band{background:var(--verde-p);color:var(--crema)}
.band .wrap{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,4vw,64px);align-items:center;padding-top:clamp(40px,5vw,64px);padding-bottom:clamp(40px,5vw,64px)}
.band .ph{aspect-ratio:1/1;max-width:220px}
.band .ph::after{display:none}
.band h3{color:var(--crema);font-size:1.7rem}
.band .role{color:var(--oro-claro);font-size:.86rem;margin:.3rem 0 .9rem}
.band p{color:rgba(251,250,246,.85);max-width:60ch;font-size:.95rem}
.band a.link{display:inline-block;margin-top:1rem;color:var(--crema);border-bottom:1px solid var(--oro);padding-bottom:1px;font-size:.92rem}
@media(max-width:700px){.band .wrap{grid-template-columns:1fr}}
.art{max-width:68ch}
.art .meta{font-size:.84rem;color:var(--gris);margin-bottom:2rem}
.art p{font-size:1.05rem;line-height:1.75;margin-bottom:1.3rem}
.art h2{font-size:1.75rem;margin:2.6rem 0 1rem;position:static;padding:0}
.art h2::before{display:none}
.art ul,.art ol{margin:0 0 1.4rem 1.3rem}
.art li{margin-bottom:.5rem;font-size:1.02rem}
.art li::marker{color:var(--oro)}
.art blockquote{border-left:2px solid var(--oro);padding:.2rem 0 .2rem 1.4rem;margin:2rem 0;font-family:var(--serif);font-size:1.45rem;line-height:1.3;color:var(--tinta)}
.art .note{font-size:.88rem;color:var(--gris);border-top:1px solid var(--linea);padding-top:1.2rem;margin-top:2.6rem}
.list{list-style:none;border-top:1px solid var(--linea)}
.list li{border-bottom:1px solid var(--linea)}
.list a{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:1.5rem;padding:1.6rem 0}
.list .meta{font-size:.82rem;color:var(--gris)}
.list h3{font-size:1.6rem;margin-bottom:.4rem;transition:color .2s ease}
.list a:hover h3{color:var(--verde)}
.list p{font-size:.95rem}
@media(max-width:700px){.list a{grid-template-columns:1fr;gap:.4rem}}
.form{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem 1.6rem;max-width:760px}
.form .full{grid-column:1/-1}
.form label{display:block;font-size:.8rem;color:var(--gris);margin-bottom:.4rem}
.form input,.form select,.form textarea{width:100%;font-family:var(--sans);font-size:.98rem;font-weight:300;color:var(--tinta);background:#fff;border:1px solid var(--linea);border-radius:2px;padding:.85rem 1rem}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--verde)}
.form textarea{min-height:150px;resize:vertical}
.form button{grid-column:1/-1;justify-self:start;font-family:var(--sans);font-size:.88rem;font-weight:500;color:var(--crema);background:var(--verde);border:1px solid var(--verde);border-radius:2px;padding:.95rem 1.8rem;cursor:pointer;transition:background .2s ease}
.form button:hover{background:var(--verde-p)}
.form button:disabled{opacity:.75;cursor:default}
.form .priv{grid-column:1/-1;font-size:.8rem;color:var(--gris)}
.form .priv a{color:var(--verde);border-bottom:1px solid var(--oro)}
@media(max-width:600px){.form{grid-template-columns:1fr}}
.legal-page{max-width:70ch}
.legal-page h3{font-size:1.3rem;margin:1.8rem 0 .6rem}
.legal-page p,.legal-page li{font-size:.96rem;margin-bottom:.8rem}
.legal-page ul{margin-left:1.2rem}

/* Destacado en portada */
.hero .feat{display:grid;grid-template-columns:auto 1fr auto;gap:.6rem 1.4rem;align-items:center;margin-top:clamp(28px,4vw,44px);padding-top:1.1rem;border-top:1px solid rgba(251,250,246,.28);max-width:860px;opacity:0;animation:in .9s ease .9s forwards}
.hero .feat-k{font-size:.78rem;font-weight:500;color:var(--oro-claro)}
.hero .feat-t{font-family:var(--serif);font-size:clamp(1.15rem,1.6vw,1.4rem);color:var(--crema);line-height:1.25;text-decoration:underline transparent;text-underline-offset:4px;text-decoration-thickness:1px;transition:text-decoration-color .2s ease}
.hero .feat:hover .feat-t{text-decoration-color:var(--oro)}
.hero .feat-m{font-size:.8rem;color:rgba(251,250,246,.7);white-space:nowrap}
@media(prefers-reduced-motion:reduce){.hero .feat{animation:none;opacity:1}}
@media(max-width:700px){.hero .feat{grid-template-columns:1fr}.hero .feat-m{white-space:normal}}
/* Etiquetas de formato */
.note .meta b,.list .meta b{display:block;font-weight:500;color:var(--oro-txt);margin-bottom:.1rem}
/* Filtros de Perspectivas */
.filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.6rem}
.filters button{font-family:var(--sans);font-size:.8rem;font-weight:400;color:var(--cuerpo);background:none;border:1px solid var(--linea);border-radius:2px;padding:.45rem .85rem;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}
.filters button:hover{border-color:var(--verde);color:var(--verde)}
.filters button.on{background:var(--verde);border-color:var(--verde);color:var(--crema)}
.art .refs-list li{font-size:.9rem;color:var(--gris)}
.art .refs-list li::marker{color:var(--oro)}

/* Revisión de diseño, octubre 2026 */
.topbar{font-size:.78rem}
.band .ph img{filter:none}
.toc{margin:0 0 2.2rem;padding:1.1rem 1.3rem;background:var(--crema-2);border-left:3px solid var(--oro)}
.toc b{display:block;font-family:var(--sans);font-size:.78rem;font-weight:500;color:var(--oro-txt);margin-bottom:.5rem}
.toc ol{margin:0;padding-left:1.2rem;font-size:.92rem;line-height:1.5}
.toc li{margin:.18rem 0}
.toc a{color:var(--verde);border-bottom:1px solid transparent}
.toc a:hover{border-bottom-color:var(--oro)}
.share{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.2rem;margin-top:2.4rem;padding-top:1.2rem;border-top:1px solid var(--linea);font-size:.88rem}
.share span{color:var(--gris, #5b5f58)}
.share a,.share button{font-family:var(--sans);font-size:.88rem;color:var(--verde);background:none;border:0;border-bottom:1px solid var(--oro);padding:.3rem 0 2px;cursor:pointer}
.share a:hover,.share button:hover{color:var(--verde-p)}
.wa{transition:transform .25s ease,opacity .25s ease}
.wa.off{opacity:0;transform:translateY(24px);pointer-events:none}
@media(max-width:480px){.sect{grid-template-columns:repeat(2,1fr)}.sect a{aspect-ratio:4/3}.sect span{font-size:1.05rem;left:.75rem;right:.75rem;bottom:.7rem}}
@media(max-width:860px){
footer li{margin-bottom:.15rem}
footer li a{display:inline-block;padding:.36rem 0}
.crumb a{display:inline-block;padding:.3rem 0}
.filters button{min-height:36px}
.ways a{display:inline-block;padding:.25rem 0}
}
.toggle{font-size:.8rem}
.legal-page p a{display:inline-block;padding:.3rem 0}
.art .share button{color:var(--verde);font-weight:400;line-height:1.4}

/* Microdetalles (nov-2026): sin bibliotecas, respetan "reducir movimiento" */
.sect .ph img{transition:transform .7s cubic-bezier(.2,.6,.2,1)}
.sect a:hover .ph img,.sect a:focus-visible .ph img{transform:scale(1.035)}
.sect span{transition:transform .45s ease}
.sect a:hover span,.sect a:focus-visible span{transform:translateY(-3px)}
.menu a{position:relative;border-bottom-color:transparent !important}
.menu a::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--oro);transform:scaleX(0);transform-origin:left;transition:transform .32s ease}
.menu a:hover::after,.menu a:focus-visible::after,.menu a[aria-current="page"]::after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){
.sect .ph img,.sect span,.menu a::after{transition:none}
.sect a:hover .ph img{transform:none}
}

/* Sector destacado a lo ancho (nov-2026) */
.sect a{min-width:0}
.sect a.wide{grid-column:1/-1;aspect-ratio:16/5}
@media(max-width:860px){.sect a.wide{aspect-ratio:16/7}}
@media(max-width:480px){.sect a.wide{aspect-ratio:16/8}}

/* Tablas en artículos y preguntas frecuentes (nov-2026) */
.art .tbl{overflow-x:auto;margin:1.6rem 0 2rem;-webkit-overflow-scrolling:touch}
.art table{border-collapse:collapse;width:100%;min-width:560px;font-size:.93rem;line-height:1.5}
.art th,.art td{padding:.65rem .75rem;border-bottom:1px solid var(--linea);text-align:left;vertical-align:top}
.art th{font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--gris);border-bottom:2px solid var(--oro)}
.art td:last-child{white-space:normal}
.faq{max-width:72ch;border-top:1px solid var(--linea)}
.faq details{border-bottom:1px solid var(--linea);padding:.2rem 0}
.faq summary{cursor:pointer;list-style:none;padding:.95rem 2.2rem .95rem 0;position:relative;font-family:var(--serif);font-size:1.18rem;color:var(--tinta)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:.2rem;top:.8rem;color:var(--oro);font-size:1.4rem;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq p{font-size:.98rem;margin:0 0 1.1rem;max-width:66ch}
.faq summary:focus-visible{outline:2px solid var(--oro);outline-offset:2px}
.art{min-width:0;max-width:100%}
.art .tbl{max-width:100%}
.prose a,.art p a,.art td a{color:var(--verde);text-decoration:underline;text-decoration-color:var(--oro);text-underline-offset:3px}
.prose a:hover,.art p a:hover,.art td a:hover{text-decoration-color:var(--verde)}

/* Revisión de forma (10-nov-2026): medida de lectura, contraste, áreas táctiles, tablas e impresión */
:root{--oro-txt:#86692F}
.art>*:not(.tbl){max-width:66ch}
footer h3.fh{font-family:var(--sans);font-size:.78rem;font-weight:500;color:var(--crema);margin-bottom:.9rem;line-height:1.65;letter-spacing:0}
.art .tbl{background:linear-gradient(to right,var(--crema) 30%,rgba(251,250,246,0)),linear-gradient(to right,rgba(251,250,246,0),var(--crema) 70%) 100% 0,radial-gradient(farthest-side at 0 50%,rgba(0,0,0,.16),rgba(0,0,0,0)),radial-gradient(farthest-side at 100% 50%,rgba(0,0,0,.16),rgba(0,0,0,0)) 100% 0;background-repeat:no-repeat;background-color:var(--crema);background-size:36px 100%,36px 100%,12px 100%,12px 100%;background-attachment:local,local,scroll,scroll}
.art .tbl.fit table{min-width:0}
.art .tbl.fit td:not(:first-child){white-space:nowrap}
.list p,.legal-page{max-width:66ch}
@media(max-width:860px){
.toc li{margin:0}
.toc a{display:block;padding:.4rem 0}
.share a,.share button{padding-top:.75rem}
.band a.link{padding-top:.7rem;margin-top:.3rem}
.more{padding-top:.7rem;margin-top:1.7rem}
.hero .quiet{padding-top:.7rem}
.who .mail{padding-top:.7rem;margin-top:.9rem}
}
@media print{
.skip,.topbar,nav,.mobile,.wa,.share,.contact,.band,.toc,.filters,footer .top,[data-print="no"],.hero .acts,.hero .feat{display:none!important}
html{scroll-behavior:auto}
body{background:#fff;color:#000;font-size:11pt;font-weight:400}
.wrap{max-width:none;padding:0}
.hero,.phead,.phead.plain{min-height:0;display:block;color:#000;background:none!important;padding:0 0 10pt;border-bottom:1pt solid #999}
.hero .ph,.phead .ph{display:none}
.hero h1,.phead h1,.hero p,.phead p,.phead .crumb,.phead .crumb a{color:#000;max-width:none}
.sec{padding:14pt 0}
.sec .wrap{display:block}
.sec h2{position:static;margin-bottom:8pt;padding-left:0}
.sec h2::before{display:none}
.art>*:not(.tbl){max-width:none}
.art .tbl{overflow:visible;background:none}
.art table{min-width:0}
.art p a[href^="http"]::after{content:" (" attr(href) ")";font-size:8.5pt;word-break:break-all}
h1,h2,h3{break-after:avoid}
tr,blockquote,li{break-inside:avoid}
footer{background:none;color:#000}
footer .legal p{color:#000}
@page{margin:16mm 18mm}
}
