/* Notaría Beatriz Milla – web pública · Propuesta E "Bento" (colores del logo) */
:root{
  --ink:#2B2E31; --muted:#5C6064; --brand:#4A4E52; --dark:#2B2E31;
  --bg:#EFEFEC; --card:#FFFFFF; --chip:#EFEFEC; --line:#E2E2DF;
  --r-xl:28px; --r-lg:22px; --r-md:16px; --pill:999px; --max:1360px; --gap:16px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body.nt{margin:0;font-family:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);background:var(--bg);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;padding:var(--gap)}
.nt img{max-width:100%;height:auto}
.nt a{color:var(--ink)}
.nt a:hover{color:var(--brand)}
.nt h1,.nt h2,.nt h3{color:inherit;letter-spacing:-0.02em}
.nt :focus-visible{outline:3px solid var(--brand);outline-offset:3px;border-radius:8px}
.nt-wrap{max-width:var(--max);margin:0 auto}
.nt-skip{position:absolute;left:-9999px;top:0;background:var(--dark);color:#fff;padding:12px 18px;z-index:10;border-radius:12px}
.nt-skip:focus{left:12px;top:12px;color:#fff}
.nt-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nt-main{max-width:var(--max);margin:0 auto;display:flex;flex-direction:column;gap:var(--gap)}

/* Botones y etiquetas */
.nt-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:700;padding:16px 24px;border-radius:var(--r-md);border:1px solid transparent;line-height:1.2;text-align:center}
.nt-btn--primary,.nt-btn--dark{background:var(--dark);color:#fff!important}
.nt-btn--primary:hover,.nt-btn--dark:hover{background:#1C1E20}
.nt-btn--soft{background:var(--chip);color:var(--ink)!important}
.nt-btn--soft:hover{background:#E3E3DF}
.nt-btn--light{background:#fff;color:var(--ink)!important}
.nt-btn--outline-light{border-color:#7C8084;color:#fff!important}
.nt-btn--outline-light:hover{background:rgba(255,255,255,.08)}
.nt-btn--block{display:flex;width:100%}
.nt-btn--sm{padding:11px 18px;border-radius:14px}
.nt-tag{align-self:flex-start;display:inline-flex;background:var(--chip);color:var(--ink);font-weight:700;font-size:13px;padding:6px 14px;border-radius:var(--pill);margin:0}
.nt-eyebrow{margin:0 0 10px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}

/* Tarjetas base */
.nt-box{background:var(--card);border-radius:var(--r-xl);padding:28px}
.nt-box--dark{background:var(--dark);color:#fff}
.nt-box--dark a{color:#fff}
.nt-box--dark .nt-eyebrow{color:#B9BCBF}
.nt-bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}
.nt-s2{grid-column:span 2}.nt-s3{grid-column:span 3}.nt-s4{grid-column:1/-1}.nt-r2{grid-row:span 2}
.nt-tile{transition:transform .2s,box-shadow .2s}
.nt-tile:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(43,46,49,.10)}

/* Cabecera */
.nt-header{max-width:var(--max);margin:0 auto var(--gap);background:#fff;border-radius:var(--r-lg);padding:10px 12px 10px 20px}
.nt-header__in{display:flex;flex-wrap:wrap;gap:10px 16px;justify-content:space-between;align-items:center}
.nt-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)!important}
.nt-brand img{height:36px;width:auto;display:block}
.nt-brand__text{display:flex;flex-direction:column;line-height:1.15}
.nt-brand__name{font-weight:800;font-size:17px;letter-spacing:-0.01em}
.nt-brand__role{font-size:12px;font-weight:600;color:var(--muted)}
.nt-nav{display:flex;flex-wrap:wrap;gap:4px;align-items:center;font-weight:600;font-size:15px}
.nt-nav > a:not(.nt-btn){color:var(--ink);text-decoration:none;padding:10px 14px;border-radius:12px}
.nt-nav > a:not(.nt-btn):hover{background:var(--chip)}
.nt-nav > a[aria-current]{background:var(--chip)}
.nt-lang{list-style:none;margin:0 4px;padding:3px;display:flex;gap:2px;font-size:13px;font-weight:700;background:var(--chip);border-radius:12px}
.nt-lang a{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:36px;padding:0 8px;border-radius:9px;text-decoration:none;color:var(--muted)!important}
.nt-lang a:hover{color:var(--ink)!important}
.nt-lang a[aria-current]{background:#fff;color:var(--ink)!important;box-shadow:0 1px 2px rgba(0,0,0,.06)}

/* Portada */
.nt-hero{grid-auto-rows:minmax(190px,auto)}
.nt-hero__main{padding:44px;display:flex;flex-direction:column;justify-content:space-between;gap:32px}
.nt-hero__name{margin:0;font-size:clamp(44px,5.4vw,76px);line-height:.98;letter-spacing:-0.04em;font-weight:800}
.nt-hero__role{display:block;margin-top:14px;font-size:15px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.nt-lead{margin:22px 0 0;font-size:19px;color:var(--brand);max-width:28em}
.nt-actions{display:flex;flex-wrap:wrap;gap:10px}
.nt-hero__img{border-radius:var(--r-xl);overflow:hidden;min-height:260px}
.nt-hero__img img{width:100%;height:100%;object-fit:cover;display:block}
.nt-status{display:flex;flex-direction:column;justify-content:space-between;gap:16px}
.nt-status__now{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:15px}
.nt-status__dot{width:10px;height:10px;border-radius:50%;background:#9A9EA2}
.nt-status__dot--on{background:#5BD08D}
.nt-status__hours{font-size:15px;color:#D5D7D9;line-height:1.7}
.nt-status__hours strong{color:#fff}
.nt-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-content:center;padding:20px}
.nt-quick a{text-decoration:none;background:var(--chip);border-radius:18px;padding:16px 6px;display:flex;flex-direction:column;align-items:center;gap:8px;font-weight:700;font-size:13px;text-align:center}
.nt-quick a:hover{background:#E3E3DF}

.nt-sechead{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:flex-end;margin:24px 8px 2px}
.nt-sechead h2{margin:0;font-size:clamp(32px,3.4vw,44px);font-weight:800;letter-spacing:-0.03em}
.nt-sechead p{margin:0;color:var(--muted)}
.nt-areas{grid-auto-rows:minmax(170px,auto)}
.nt-area{text-decoration:none;border-radius:var(--r-xl);padding:26px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;background:#fff;color:var(--ink)!important}
.nt-area--dark{background:var(--brand);color:#fff!important}
.nt-area__top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.nt-area__name{font-weight:800;font-size:21px;line-height:1.15;letter-spacing:-0.02em}
.nt-s2 .nt-area__name,.nt-area.nt-s2 .nt-area__name{font-size:30px}
.nt-area__go{flex:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--chip)}
.nt-area--dark .nt-area__go{background:rgba(255,255,255,.14)}
.nt-chiplist{display:flex;flex-wrap:wrap;gap:6px}
.nt-chiplist span{font-size:13px;font-weight:600;padding:5px 10px;border-radius:var(--pill);background:var(--chip)}
.nt-area--dark .nt-chiplist span{background:rgba(255,255,255,.14)}

.nt-talk{padding:40px;display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.nt-talk h2{margin:0;font-size:clamp(30px,3vw,40px);font-weight:800;line-height:1.05;color:#fff}
.nt-talk h2 span{color:#B9BCBF}
.nt-info{display:flex;flex-direction:column;justify-content:space-between;gap:12px}
.nt-info address,.nt-info p{margin:0;font-style:normal;font-size:18px;font-weight:600}
.nt-info small{font-size:14px;color:var(--muted)}
.nt-map{border-radius:var(--r-xl);overflow:hidden;background:#fff;min-height:300px}
.nt-map iframe{display:block;width:100%;height:100%;min-height:300px;border:0}

/* Páginas interiores */
.nt-crumbs{font-size:14px;color:var(--muted);padding:2px 8px}
.nt-crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.nt-crumbs li+li::before{content:"/";margin-right:6px}
.nt-crumbs a{color:var(--muted)}
.nt-crumbs [aria-current]{color:var(--ink);font-weight:600}
.nt-pagehead{padding:40px 44px;display:flex;flex-direction:column;justify-content:space-between;gap:20px}
.nt-pagehead h1{margin:0;font-weight:800;font-size:clamp(34px,4.4vw,60px);line-height:1.02;letter-spacing:-0.035em}
.nt-pagehead__meta{margin:0;font-size:14px;color:var(--muted)}
.nt-cover{border-radius:var(--r-xl);overflow:hidden;min-height:240px}
.nt-cover img{width:100%;height:100%;object-fit:cover;object-position:60% 40%;display:block}
.nt-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:var(--gap);align-items:start}
.nt-layout--left{grid-template-columns:340px minmax(0,1fr)}
.nt-layout__side{display:flex;flex-direction:column;gap:var(--gap)}
.nt-sidenav ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}
.nt-sidenav a{display:block;padding:10px 12px;border-radius:12px;text-decoration:none;color:var(--ink);font-weight:600}
.nt-sidenav a:hover{background:var(--chip)}
.nt-sidenav a[aria-current]{background:var(--dark);color:#fff}
.nt-nolink{display:block;padding:10px 12px;color:var(--muted);font-weight:600}
.nt-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--gap)}
.nt-card{text-decoration:none;background:#fff;border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;justify-content:space-between;gap:18px;min-height:150px;color:var(--ink)!important}
.nt-card__title{font-weight:800;font-size:19px;line-height:1.25}
.nt-card__text{color:var(--muted);font-size:14px}
.nt-card__more{font-weight:700;font-size:14px;color:var(--brand)}
.nt-help p{margin:0 0 14px;color:var(--muted);font-size:15px}
.nt-help h2,.nt-cta-card h2{margin:0 0 8px;font-size:20px;font-weight:800}
.nt-cta-card{display:flex;flex-direction:column;gap:10px}
.nt-cta-card p{margin:0 0 6px;color:#D5D7D9;font-size:15px}
.nt-cta-card .nt-btn{padding:14px 12px;font-size:15px;white-space:nowrap}
.nt-contact__phone{font-weight:800;font-size:22px;text-decoration:none}
.nt-notice{margin:0 0 24px;padding:16px 20px;border-radius:var(--r-md);background:var(--chip);color:var(--ink);font-size:15px}

/* Contenido editorial del gestor (HTML) */
.nt-prose{font-size:17px;line-height:1.7;max-width:820px}
.nt-prose h2{font-size:30px;font-weight:800;margin:40px 0 12px;letter-spacing:-0.02em}
.nt-prose h3{font-size:22px;font-weight:800;margin:32px 0 10px}
.nt-prose h4{font-size:19px;font-weight:700;margin:28px 0 8px}
.nt-prose p{margin:0 0 16px}
.nt-prose ul,.nt-prose ol{margin:0 0 20px;padding-left:1.3em}
.nt-prose li{margin-bottom:8px}
.nt-prose > :first-child{margin-top:0}
.nt-prose img{border-radius:16px}
.nt-prose table{border-collapse:collapse;width:100%;margin:0 0 20px;font-size:15px}
.nt-prose th,.nt-prose td{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left;vertical-align:top}
.nt-prose--box{padding:40px 44px;max-width:none}

.nt-chips{display:flex;flex-wrap:wrap;gap:8px}
.nt-chips a{background:#fff;color:var(--ink);text-decoration:none;padding:10px 16px;border-radius:var(--pill);font-weight:600;font-size:15px}
.nt-chips a:hover{background:var(--dark);color:#fff}

/* Pie */
.nt-footer{max-width:var(--max);margin:var(--gap) auto 0}
.nt-footer__in{display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:space-between;align-items:center;padding:18px 8px;font-size:14px;color:var(--muted)}
.nt-footer__brand{display:flex;align-items:center;gap:12px}
.nt-footer__brand img{height:34px;width:auto}
.nt-footer a{color:var(--muted)}

@media (max-width:1000px){
  .nt-bento{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nt-s3,.nt-s4{grid-column:1/-1}
  .nt-layout,.nt-layout--left{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:620px){
  body.nt{padding:10px;--gap:10px}
  .nt-bento{grid-template-columns:minmax(0,1fr)}
  .nt-s2,.nt-s3{grid-column:auto}.nt-r2{grid-row:auto}
  .nt-hero__main,.nt-pagehead,.nt-talk,.nt-prose--box{padding:26px}
  .nt-brand__role{display:none}
  .nt-hero__img{min-height:200px}
  .nt-areas{grid-auto-rows:auto}
  .nt-area{min-height:0}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nt-tile{transition:none}.nt-tile:hover{transform:none}}

/* ===== Documento: fichas y servicios (formato editorial) ===== */
.nt-dochead{grid-auto-rows:auto}
.nt-pagehead__foot{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between}
.nt-pagehead .nt-notice{margin:0}
.nt-summary{display:flex;flex-direction:column;gap:14px}
.nt-summary dl{margin:0;display:flex;flex-direction:column}
.nt-summary dl > div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:16px;padding:12px 0;border-top:1px solid var(--line)}
.nt-summary dl > div:first-child{border-top:0;padding-top:0}
.nt-summary dt{font-weight:700;font-size:14px}
.nt-summary dd{margin:0;font-size:14px;color:var(--brand)}
.nt-doc{padding:48px 56px}
.nt-sticky{position:sticky;top:16px}
.nt-toc ol{list-style:none;margin:0;padding:0;counter-reset:toc;display:flex;flex-direction:column;gap:2px}
.nt-toc li{counter-increment:toc}
.nt-toc a{display:grid;grid-template-columns:28px 1fr;gap:6px;padding:8px 10px;border-radius:10px;text-decoration:none;font-size:14px;font-weight:600;color:var(--ink);line-height:1.35}
.nt-toc a::before{content:counter(toc,decimal-leading-zero);color:var(--muted);font-variant-numeric:tabular-nums;font-weight:700}
.nt-toc a:hover{background:var(--chip)}

.nt-prose2{counter-reset:sec;font-size:17px;line-height:1.75;color:#33373A;max-width:760px}
.nt-prose2 > :first-child{margin-top:0}
.nt-prose2 p{margin:0 0 18px}
.nt-prose2 .nt-lead-p{font-size:21px;line-height:1.55;color:var(--ink);font-weight:500;letter-spacing:-0.01em;margin-bottom:8px}
.nt-prose2 h2.nt-sec{counter-increment:sec;position:relative;margin:52px 0 18px;padding-top:24px;border-top:1px solid var(--line);font-size:26px;line-height:1.25;font-weight:800;letter-spacing:-0.02em;color:var(--ink);scroll-margin-top:24px}
.nt-prose2 h2.nt-sec::before{content:counter(sec,decimal-leading-zero);display:block;font-size:13px;font-weight:700;letter-spacing:.12em;color:var(--muted);margin-bottom:6px}
.nt-prose2 h3{font-size:20px;font-weight:800;margin:32px 0 10px}
.nt-prose2 strong{color:var(--ink);font-weight:700}
.nt-prose2 em{font-style:normal;font-weight:600;color:var(--ink)}
/* Listas simples */
.nt-prose2 ul.nt-list{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:10px}
.nt-prose2 ul.nt-list > li{position:relative;padding-left:22px}
.nt-prose2 ul.nt-list > li::before{content:"";position:absolute;left:2px;top:.72em;width:8px;height:8px;border-radius:2px;background:var(--brand)}
/* Concepto / definición */
.nt-prose2 ul.nt-defs{list-style:none;margin:0 0 28px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.nt-prose2 ul.nt-defs > li{background:var(--bg);border-radius:var(--r-md);padding:18px 20px;font-size:15.5px;line-height:1.6}
.nt-prose2 .nt-term{display:block;font-size:16px;font-weight:800;margin-bottom:4px;letter-spacing:-0.01em}
/* Pasos */
.nt-prose2 ol.nt-steps{list-style:none;margin:0 0 28px;padding:0;counter-reset:step;display:flex;flex-direction:column}
.nt-prose2 ol.nt-steps > li{counter-increment:step;position:relative;padding:0 0 22px 56px;min-height:40px}
.nt-prose2 ol.nt-steps > li::before{content:counter(step);position:absolute;left:0;top:-2px;width:36px;height:36px;border-radius:50%;background:var(--dark);color:#fff;font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center}
.nt-prose2 ol.nt-steps > li:not(:last-child)::after{content:"";position:absolute;left:17px;top:38px;bottom:4px;width:2px;background:var(--line)}
/* Tablas */
.nt-prose2 .nt-table{overflow-x:auto;margin:0 0 28px;border:1px solid var(--line);border-radius:var(--r-md)}
.nt-prose2 table{border-collapse:collapse;width:100%;font-size:15px;margin:0}
.nt-prose2 th{background:var(--bg);text-align:left;font-weight:700;padding:12px 16px}
.nt-prose2 td{padding:12px 16px;border-top:1px solid var(--line);vertical-align:top}
@media (max-width:1000px){.nt-sticky{position:static}}
@media (max-width:620px){.nt-doc{padding:26px}.nt-prose2 .nt-lead-p{font-size:19px}.nt-summary dl > div{grid-template-columns:minmax(0,1fr)}}

/* Silueta de Menorca detrás del nombre (portada) */
.nt-hero__main{position:relative;overflow:hidden;isolation:isolate}
.nt-hero__main::before{content:"";position:absolute;z-index:-1;right:1.5%;top:61%;width:68%;aspect-ratio:1040/721;transform:translateY(-50%) rotate(-3deg);background:url("../images/menorca-silueta.svg") no-repeat center/contain;pointer-events:none}
@media (max-width:620px){.nt-hero__main::before{right:4%;width:92%;top:48%}}
