/* ABS & Asociados · absyasoc.com */
@font-face{font-family:'Playfair Display';src:url(../fonts/playfair-400.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Playfair Display';src:url(../fonts/playfair-400-italic.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Playfair Display';src:url(../fonts/playfair-500.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Inter';src:url(../fonts/inter-400.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Inter';src:url(../fonts/inter-500.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Inter';src:url(../fonts/inter-600.woff2) format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Inter';src:url(../fonts/inter-700.woff2) format('woff2');font-weight:700;font-display:swap}

:root{
  --pet:#0F4D5F; --pet-dark:#0A3644; --crema:#F3F0E7; --lino:#ECE7DC; --bor:#6B1E33; --cam:#C49A6C;
  --tinta:#33241E; --gris:#5E5049; --linea:#DDD3C2; --blanco:#FFFDF8;
  --serif:'Playfair Display',Georgia,'Times New Roman',serif; --sans:'Inter',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  --max:1320px; --pad:clamp(20px,5vw,64px);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--crema);color:var(--tinta);font-family:var(--sans);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip{position:absolute;left:-999px;top:0;background:var(--pet);color:var(--crema);padding:10px 16px;z-index:200}
.skip:focus{left:10px}
:focus-visible{outline:2px solid var(--cam);outline-offset:3px}

/* Tipografía */
h1,h2,h3,.serif{font-family:var(--serif);font-weight:400;line-height:1.12;color:var(--pet);letter-spacing:-.005em}
h1{font-size:clamp(38px,5.4vw,68px)}
h2{font-size:clamp(30px,3.6vw,46px)}
h3{font-size:clamp(22px,2vw,27px);line-height:1.25}
h1 em,h2 em,h3 em{font-style:italic;color:var(--cam)}
p+p{margin-top:1em}
.lead{font-size:clamp(18px,1.6vw,21px);line-height:1.6;color:var(--gris)}
.label{display:inline-flex;align-items:center;gap:14px;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--bor)}
.label:before{content:"";width:34px;height:1px;background:currentColor;opacity:.7}
.dark .label{color:var(--cam)}
.muted{color:var(--gris)}

/* Botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:14px 26px;font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;transition:background .2s,color .2s,border-color .2s;cursor:pointer}
.btn-main{background:var(--bor);color:var(--crema)}
.btn-main:hover{background:#561628}
.btn-line{border-color:currentColor;color:var(--pet)}
.btn-line:hover{background:var(--pet);color:var(--crema);border-color:var(--pet)}
.dark .btn-line{color:var(--crema)}
.dark .btn-line:hover{background:var(--crema);color:var(--pet)}
.btn-cam{background:var(--cam);color:var(--pet)}
.btn-cam:hover{background:#d4ad83}
.btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.arrow{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--pet);border-bottom:1px solid var(--cam);padding-bottom:4px;display:inline-block;margin-top:26px}
.arrow:hover{color:var(--bor)}
.dark .arrow{color:var(--crema)}

/* Encabezado */
.header{position:sticky;top:0;z-index:100;background:rgba(243,240,231,.97);backdrop-filter:saturate(1.2) blur(6px);border-bottom:1px solid var(--linea)}
.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;height:84px}
.brand{flex:none}.brand img{height:42px;width:auto}

.nav{display:flex;align-items:center;gap:18px;white-space:nowrap}
.nav a{font-size:13px;font-weight:500;color:var(--pet);text-decoration:none;padding:6px 0;border-bottom:1px solid transparent}
.nav a:hover,.nav a[aria-current=page]{border-bottom-color:var(--cam)}
.nav .lang{font-size:12px;letter-spacing:.14em;color:var(--gris)}
.nav .lang b{color:var(--pet)}
.nav .btn{min-height:44px;padding:10px 16px;color:var(--crema);border-bottom:none}
.menu-btn{display:none;background:none;border:1px solid var(--pet);color:var(--pet);width:48px;height:44px;cursor:pointer}
.menu-btn span{display:block;width:20px;height:1px;background:currentColor;margin:5px auto}
@media (max-width:1100px){
  .nav{position:fixed;inset:84px 0 auto 0;background:var(--crema);flex-direction:column;align-items:stretch;gap:0;padding:12px var(--pad) 28px;border-bottom:1px solid var(--linea);display:none;max-height:calc(100vh - 84px);overflow:auto}
  .nav.open{display:flex}
  .nav a{padding:15px 0;border-bottom:1px solid var(--linea);font-size:17px}
  .nav .btn{margin-top:18px}
  .menu-btn{display:block}
}


/* Secciones */
section{position:relative}
.sec{padding:clamp(72px,10vw,128px) 0}
.dark{background:var(--pet);color:#D9E4E7}
.dark h1,.dark h2,.dark h3{color:var(--crema)}
.dark .lead{color:#C7D7DC}
.lino{background:var(--lino)}
.bor{background:var(--bor);color:#F1DCE1}
.bor h2{color:var(--crema)}
.bg{background-size:cover;background-position:center}
.grid2{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px)}
.cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,48px)}
.gc{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
@media (max-width:860px){.grid2,.cols2,.cols3,.gc{grid-template-columns:1fr}}
.rule{height:1px;background:var(--cam);width:48px;margin-bottom:22px}
.frame{position:relative}
.frame:after{content:"";position:absolute;inset:12px;border:1px solid rgba(243,240,231,.35);pointer-events:none}

/* Portada (la firma) */
.hero{background:var(--pet) url(../img/fondo-portada.jpg) center/cover;color:#D9E4E7;min-height:calc(100vh - 84px);display:flex;flex-direction:column}
.hero .wrap{width:100%;flex:1;display:flex;flex-direction:column;justify-content:center;padding-top:clamp(56px,8vh,96px);padding-bottom:clamp(48px,7vh,80px)}
.hero .firma{width:min(380px,72vw);margin-bottom:clamp(36px,5vh,56px)}
.hero h1{color:var(--crema);max-width:16em;margin:18px 0 26px}
.hero .lead{color:#C7D7DC;max-width:44em}
.hero .label,.bor .label{color:var(--cam)}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(243,240,231,.18)}
.tile{display:flex;align-items:center;gap:22px;padding:30px clamp(20px,3vw,44px);text-decoration:none;color:var(--crema);border-right:1px solid rgba(243,240,231,.18);background:rgba(10,54,68,.55);transition:background .2s}
.tile:last-child{border-right:none}
.tile:hover{background:rgba(10,54,68,.85)}
.tile.main{background:var(--bor)}
.tile.main:hover{background:#561628}
.tile img{width:58px;height:58px;flex:none}
.tile small{display:block;font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--cam)}
.tile.main small{color:#E9C9A3}
.tile span{display:block;font-family:var(--serif);font-size:clamp(24px,2.4vw,32px);line-height:1.15;margin-top:4px}
@media (max-width:760px){.tiles{grid-template-columns:1fr}.tile{border-right:none;border-top:1px solid rgba(243,240,231,.14)}}

/* Encabezados de página */
.pagehead{padding:clamp(64px,9vw,120px) 0 clamp(48px,6vw,80px);background:var(--lino) url(../img/encabezado-lino.jpg) center/cover;border-bottom:1px solid var(--linea)}
.pagehead.dark{background:var(--pet) url(../img/encabezado-petroleo.jpg) center/cover;border-bottom:none}
.pagehead.bor{background:var(--bor) url(../img/banda-borravino.jpg) center/cover;border-bottom:none}
.pagehead.bor h1{color:var(--crema)}
.pagehead.bor .label{color:#E9C9A3}
.pagehead.bor .lead{color:#F1DCE1}
.pagehead h1{margin:18px 0 22px;max-width:18em}
.pagehead .lead{max-width:44em}

/* Listas de áreas */
.arealist{list-style:none;border-top:1px solid rgba(243,240,231,.2)}
.arealist li{border-bottom:1px solid rgba(243,240,231,.2)}
.arealist a{display:grid;grid-template-columns:1fr auto;gap:18px;padding:22px 0;text-decoration:none}
.arealist b{font-family:var(--serif);font-weight:400;font-size:clamp(21px,2vw,26px);color:var(--crema)}
.arealist em{display:block;font-style:normal;font-size:15px;color:#B9CCD2;margin-top:4px}
.arealist i{font-style:normal;color:var(--cam);font-size:22px;align-self:center;transition:transform .2s}
.arealist a:hover i{transform:translateX(6px)}

/* Acordeón */
.acc{border-top:1px solid var(--linea)}
.acc details{border-bottom:1px solid var(--linea)}
.acc summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:baseline;padding:28px 0}
.acc summary::-webkit-details-marker{display:none}
.acc .n{font-family:var(--serif);font-style:italic;color:var(--cam);font-size:18px}
.acc summary h3{margin:0}
.acc summary p{font-size:15px;color:var(--gris);margin-top:6px}
.acc summary:after{content:"+";font-size:28px;line-height:1;color:var(--bor);font-weight:300}
.acc details[open] summary:after{content:"–"}
.acc .body{padding:0 0 32px 0;margin-left:46px;max-width:46em}

/* Tarjetas */
.card{background:var(--blanco);border:1px solid var(--linea);padding:clamp(26px,3vw,40px);position:relative}
.card:after{content:"";position:absolute;inset:7px;border:1px solid #EFE8DA;pointer-events:none}
.card h3{margin-bottom:14px}
.card ul{padding-left:18px}
.card li{margin:6px 0}
.ticks{list-style:none;padding:0!important}
.ticks li{position:relative;padding-left:22px}
.ticks li:before{content:"";position:absolute;left:0;top:.75em;width:10px;height:1px;background:var(--cam)}
.principle{border-top:1px solid var(--linea);padding-top:20px}
.principle h3{font-size:22px;margin-bottom:8px}

/* Equipo */
.team{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,2.4vw,32px)}
@media (max-width:1000px){.team{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.team{grid-template-columns:1fr}}
.person .ph{aspect-ratio:4/5;background:var(--lino);position:relative;overflow:hidden}
.person .ph img{width:100%;height:100%;object-fit:cover}
.person .ph:after{content:"";position:absolute;inset:10px;border:1px solid rgba(255,255,255,.55);pointer-events:none}
.person .role{font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--bor);margin-top:22px}
.person h3{margin:8px 0 10px}
.person p{font-size:15px;color:var(--gris);line-height:1.55}
.person .links{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:16px}
.person .links a{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--pet);text-decoration:none;border-bottom:1px solid var(--cam);padding-bottom:2px}

/* Formularios */
form .f{display:grid;gap:18px}
label.l{display:block;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--pet);margin-bottom:8px}
input,select,textarea{width:100%;font:inherit;font-size:16px;color:var(--tinta);background:var(--blanco);border:1px solid #CFC4B1;padding:14px 16px;border-radius:0}
textarea{min-height:150px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--pet);box-shadow:0 0 0 3px rgba(15,77,95,.12)}
.check{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--gris)}
.check input{width:20px;height:20px;margin-top:3px;flex:none}
.note{font-size:13px;color:var(--gris);margin-top:14px}
.hp{display:none}

/* Datos de contacto */
.data dt{font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--bor);margin-top:26px}
.data dd{font-size:18px;color:var(--pet);margin-top:6px}
.data a{text-decoration:none;border-bottom:1px solid var(--cam)}
.big-phone{font-family:var(--serif);font-size:clamp(34px,5vw,58px);color:var(--pet);text-decoration:none;display:inline-block;margin-top:10px}

/* Agenda */
.booking{background:var(--blanco);border:1px solid var(--linea);min-height:640px}
.booking iframe{width:100%;height:760px;border:0;display:block}
.booking .empty{padding:48px;text-align:center}

/* Pie */
.footer{background:var(--pet-dark);color:#AFC3C9;padding:72px 0 36px;font-size:15px}
.footer .top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px}
@media (max-width:860px){.footer .top{grid-template-columns:1fr}}
.footer img{width:250px}
.footer h4{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--cam);margin-bottom:16px}
.footer a{color:#D9E4E7;text-decoration:none}
.footer a:hover{color:var(--crema);text-decoration:underline}
.footer li{list-style:none;margin:8px 0}
.footer .bottom{border-top:1px solid rgba(243,240,231,.14);margin-top:56px;padding-top:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px}

/* WhatsApp flotante */
.wa{position:fixed;right:18px;bottom:18px;z-index:90;background:var(--pet);color:var(--crema);font-size:13px;font-weight:600;letter-spacing:.08em;text-decoration:none;padding:14px 20px;border:1px solid var(--cam);box-shadow:0 8px 22px rgba(0,0,0,.18)}
.wa:hover{background:var(--bor)}
[data-hide-empty].is-empty{display:none!important}
.center{text-align:center}
.mt{margin-top:28px}

/* ===== Tema "manual del logo" (opción C) ===== */
:root{--negro:#181818;--gcl:#F4F4F4}
body{background:var(--gcl);color:var(--negro)}
h1 em,h2 em,h3 em{color:inherit}
.label{color:var(--negro);letter-spacing:.34em}
.label:before{background:var(--negro)}
.btn-main{background:var(--pet);color:var(--crema)}
.btn-main:hover{background:var(--pet-dark)}
.btn-line{color:var(--negro)}
.arrow{color:var(--negro);border-bottom-color:var(--negro)}
.arrow:hover{color:var(--pet)}
.muted{color:#4A4A4A}

/* Encabezado azul oscuro, fijo al bajar, botón bordó */
.header{background:var(--pet);border-bottom:none;backdrop-filter:none;box-shadow:0 1px 0 rgba(0,0,0,.08)}
.nav a{color:var(--crema)}
.nav a:hover,.nav a[aria-current=page]{border-bottom-color:var(--cam)}
.nav .lang{color:#A9C1C8}
.nav .lang b{color:var(--crema)}
.nav .btn{background:var(--bor);color:var(--crema)}
.nav .btn:hover{background:#561628}
.menu-btn{border-color:var(--crema);color:var(--crema)}
@media (max-width:1100px){.nav{background:var(--pet);border-bottom:1px solid rgba(243,240,231,.15)}.nav a{border-bottom-color:rgba(243,240,231,.15)}}

/* Portada: la firma centrada */
.hero{background:var(--crema);color:var(--negro);min-height:auto}
.hero .wrap{align-items:center;padding-top:clamp(56px,7vh,88px);padding-bottom:clamp(48px,6vh,72px)}
.hero .firma{width:min(440px,74vw);margin-bottom:clamp(36px,5vh,56px)}
.hero h1{color:var(--pet);font-size:clamp(36px,4.4vw,58px)}
.hero h1 em{color:var(--pet)}
.hero .lead{color:#3A3A3A}
.hero .label{color:var(--negro)}
.hero-text{width:100%}
/* versión centrada */
.hero.center .hero-text{text-align:center}
.hero.center .hero-text .label:before{display:none}
.hero.center h1{margin:18px auto 24px;max-width:16em}
.hero.center .lead{margin:0 auto;max-width:44em}
/* versión con el texto ordenado: título a la izquierda, bajada a la derecha */
.hero.split .hero-text{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:end;text-align:left;border-top:1px solid var(--negro);padding-top:clamp(28px,4vh,44px)}
.hero.split h1{margin:18px 0 0;max-width:none}
.hero.split .lead{margin:0;font-size:clamp(16px,1.25vw,18px);border-left:1px solid #CFCFCF;padding-left:clamp(20px,2.4vw,36px)}
@media (max-width:860px){.hero.split .hero-text{grid-template-columns:1fr}.hero.split .lead{border-left:none;padding-left:0}}

/* Tres accesos */
.tiles{border-top:1px solid var(--negro);background:var(--crema)}
.tile{background:transparent;color:var(--negro);border-right:1px solid var(--negro);justify-content:center}
.tile:hover{background:#ECE8DE}
.tile small{color:var(--pet)}
.tile.main{background:var(--bor);color:var(--crema)}
.tile.main:hover{background:#561628}
.tile.main small{color:#E9C9A3}
@media (max-width:760px){.tile{border-top:1px solid var(--negro);justify-content:flex-start}}

/* Áreas: franja negra */
.sec.dark.bg{background:var(--negro)!important;color:#D6D6D6}
.sec.dark h2,.sec.dark h2 em{color:var(--gcl)}
.sec.dark .label{color:var(--gcl)}
.sec.dark .label:before{background:var(--gcl)}
.sec.dark .lead{color:#BDBDBD}
.sec.dark .arrow{color:var(--gcl);border-bottom-color:var(--gcl)}
.arealist b{color:var(--gcl)}
.arealist em{color:#A8A8A8}
.arealist i{color:var(--gcl)}

.card{background:#FFFFFF;border-color:#D8D8D8}
.card:after{display:none}
.lino{background:var(--crema)}
.pagehead{background:var(--crema) url(../img/encabezado-lino.jpg) center/cover;border-bottom:1px solid #DCDCDC}
.dark .label,.pagehead.dark .label{color:var(--crema)}
.footer{background:var(--pet)}
.footer h4{color:var(--crema)}

/* Equipo: fotos que llevan al perfil */
.plink{display:block;text-decoration:none;color:inherit}
.plink .ph img{transition:transform .5s}
.plink:hover .ph img{transform:scale(1.03)}
.plink:hover h3{color:var(--bor)}
.person .role{color:var(--pet)}

/* Perfil */
.pgrid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,88px);align-items:start}
@media (max-width:860px){.pgrid{grid-template-columns:1fr}}
.pending{color:#8A6D5A;font-style:italic}
/* Todo lo que abre la agenda va en bordó */
a.btn-main[href*="calendar.app.google"]{background:var(--bor)}
a.btn-main[href*="calendar.app.google"]:hover{background:#561628}

/* Portada: logo grande y contacto (nov 2026) */
.hero .firma{width:min(760px,88vw);margin-bottom:clamp(20px,3vh,32px)}
.hero .donde{letter-spacing:.28em;text-transform:uppercase;font-size:clamp(13px,1.3vw,16px);color:var(--pet);text-align:center}
.contacto-t{font-size:clamp(48px,9vw,96px)}
.wa-big{display:inline-block;margin-top:28px;background:var(--pet);color:var(--crema);font-family:var(--serif);font-size:clamp(22px,4vw,40px);text-decoration:none;padding:20px clamp(24px,4vw,48px)}
.wa-big:hover{background:var(--bor,#6b1c31)}

.hero .firma{width:min(520px,80vw)}
.hero .apellidos{font-family:var(--serif);color:var(--pet);font-size:clamp(30px,5.2vw,64px);line-height:1.15;text-align:center;margin:8px 0 14px}
.hero .apellidos em{font-style:italic}
.crema-os{background:#E6DFCB;color:#2B3A3F}
.crema-os h2,.crema-os .arealist b{color:var(--pet)}
.crema-os .lead,.crema-os p,.crema-os .arealist em{color:#3A3A3A}
.crema-os .label{color:var(--negro)}
.crema-os .arrow,.crema-os .arealist i{color:var(--pet)}
.crema-os .arealist li,.crema-os .arealist{border-color:#B9B39C}
.hero .apellidos{font-style:normal}
.hero .apellidos .amp{font-family:var(--sans,Inter,Arial,sans-serif);font-weight:400;font-size:.82em;margin:0 .1em}
.hero .apellidos .amp{font-family:inherit}
@font-face{font-family:'ABS Amp';src:url(../fonts/amp.woff) format('woff');font-display:swap}
.hero .apellidos .amp{font-family:'ABS Amp','Playfair Display',Georgia,serif;font-weight:400;font-size:1em;margin:0}

/* Portada: fondo de fotos a pantalla completa */
.herof{position:relative;min-height:clamp(560px,86vh,760px);display:flex;align-items:flex-end;justify-content:center;text-align:center;color:#F3F0E7;overflow:hidden;background:#0F4D5F}
.herof .rot{position:absolute;inset:0}
.herof .rot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.8s ease}
.herof .rot img:nth-child(1){object-position:50% 45%}
.herof .rot img:nth-child(2){object-position:50% 25%}
.herof .rot img.on{opacity:1}
.herof:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,52,64,.10) 0%,rgba(10,52,64,.18) 40%,rgba(10,52,64,.86) 100%)}
.herof-in{position:relative;z-index:2;padding:0 24px clamp(36px,6vh,64px);width:100%}
.herof .firma-c{display:block;margin:0 auto;width:min(210px,50vw)}
.herof .apellidos{font-family:var(--serif);font-weight:400;color:#F3F0E7;font-size:clamp(28px,4.6vw,58px);line-height:1.14;margin:16px 0 0}
.herof .apellidos>span{white-space:nowrap}
.herof .apellidos .amp{font-family:'ABS Amp','Playfair Display',Georgia,serif}
.herof .donde{letter-spacing:.28em;text-transform:uppercase;font-size:clamp(12px,1.3vw,15px);color:#E6DFCB;margin:12px 0 0}
@media(max-width:620px){.herof .apellidos>span{white-space:normal;display:block}}

.herof .rot picture{display:contents}
@media(max-width:700px){.herof .rot img:nth-child(2),.herof .rot picture img{object-position:50% 20%}}

/* Portada: logo grande centrado sobre las fotos (como la primera versión) */
.herof{align-items:center;min-height:clamp(620px,90vh,800px)}
.herof:after{background:linear-gradient(180deg,rgba(10,52,64,.50),rgba(10,52,64,.70))}
.herof-in{padding:clamp(40px,7vh,72px) 24px}
.herof .firma-c{width:min(400px,68vw);filter:brightness(0) invert(.96) drop-shadow(0 2px 14px rgba(5,30,38,.45))}
.herof .apellidos{margin-top:clamp(14px,2.5vh,26px)}
@media(max-width:700px){.herof .firma-c{width:min(300px,72vw)}}
.herof:after{background:linear-gradient(180deg,rgba(10,52,64,.64),rgba(10,52,64,.84))}

/* Equipo: mail visible bajo cada integrante */
.person .plink p{margin-top:0}
.person .mail{margin:12px 0 0}
.person .mail a{font-size:15px;color:var(--pet);text-decoration:none;border-bottom:1px solid var(--cam);padding-bottom:2px;word-break:break-all}
.person .mail a:hover{color:var(--bor)}
.team .person{display:flex;flex-direction:column}
.team .person .mail{margin-top:auto;padding-top:14px}

/* El estudio: título y textos en una sola pantalla */
.texto-estudio{max-width:56em;margin-top:clamp(22px,3.5vh,36px)}
.texto-estudio p{color:var(--tinta,#2B2B2B);margin:0 0 1em}
.texto-estudio p:last-child{margin-bottom:0}

/* Marca de agua: el monograma siempre entero, nunca recortado ni deformado */
.pagehead,.pagehead.dark,.pagehead.bor{background-image:none;position:relative;overflow:hidden}
.pagehead{background-color:var(--crema)}
.pagehead.dark{background-color:var(--pet)}
.pagehead.bor{background-color:var(--bor)}
.pagehead:before{content:"";position:absolute;right:4%;top:50%;height:78%;max-width:46%;aspect-ratio:1000/675;transform:translateY(-50%);background:url(../img/marca-agua-clara.png) center/contain no-repeat;pointer-events:none}
.pagehead.dark:before,.pagehead.bor:before{background-image:url(../img/marca-agua-oscura.png)}
.pagehead>.wrap{position:relative;z-index:1}

/* Servicios: materias desplegables */
.acc-simple summary{grid-template-columns:1fr auto;padding:26px 0}
.acc-simple summary h3{font-size:clamp(20px,2vw,26px)}
.acc-simple .body{margin-left:0;padding-bottom:28px}
.bul{list-style:none;margin:0;padding:0;max-width:46em}
.bul li{position:relative;padding:8px 0 8px 22px;line-height:1.55}
.bul li:before{content:"";position:absolute;left:0;top:19px;width:8px;height:1px;background:var(--bor)}
.acc-simple summary:hover h3{color:var(--bor)}
.svc{display:block;text-decoration:none;color:inherit}
.svc .mat{list-style:none;margin:22px 0 0;padding:0;border-top:1px solid var(--linea)}
.svc .mat li{padding:9px 0;border-bottom:1px solid var(--linea);font-family:var(--serif);font-size:18px;color:var(--pet)}
.svc:hover .arrow{color:var(--bor)}

.honorarios{max-width:44em;margin:48px 0 0}

/* Pie: botones de redes */
.footer [data-href="linkedin"],.footer [data-href="instagram"]{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border:1px solid rgba(243,240,231,.45);color:#F3F0E7;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}
.footer [data-href="linkedin"]:hover,.footer [data-href="instagram"]:hover{background:#F3F0E7;color:var(--pet);text-decoration:none}
.footer [data-href="linkedin"]:before,.footer [data-href="instagram"]:before{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:var(--ic) center/contain no-repeat;mask:var(--ic) center/contain no-repeat}
.footer [data-href="linkedin"]{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.45 20.45h-3.56v-5.57c0-1.33-.03-3.04-1.85-3.04-1.86 0-2.14 1.45-2.14 2.94v5.67H9.35V9h3.41v1.56h.05c.48-.9 1.64-1.85 3.37-1.85 3.6 0 4.27 2.37 4.27 5.45v6.29zM5.34 7.43a2.06 2.06 0 1 1 0-4.12 2.06 2.06 0 0 1 0 4.12zM7.12 20.45H3.56V9h3.56v11.45z'/%3E%3C/svg%3E")}
.footer [data-href="instagram"]{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.3' cy='6.7' r='1' fill='black' stroke='none'/%3E%3C/svg%3E")}
.footer [data-hide-wrap] ul{display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0}
.footer [data-hide-wrap] ul li{margin:0}
.plink-off{display:block;color:inherit}
