/* Páginas de servicio, sector y guías · Marfil & Oro (generadas con seo/generar.py) */
:root{
  --bg:#FBF6EE; --bg-2:#F5EFE4; --card:#FFFDF8; --line:#E8E1D3;
  --ink:#14110C; --text:#2E2921; --muted:#6E675C; --espresso:#241D14;
  --gold:#9E711F; --olive:#3A3F2F;
  --serif:"Newsreader",Georgia,serif;
  --sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --wrap:1180px; --pad:clamp(16px,4vw,40px);
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:400 17px/1.65 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,ul,ol,figure{margin:0}
h1,h2,h3{font-family:var(--serif);font-weight:500;color:var(--ink);letter-spacing:-.015em;text-wrap:balance;line-height:1.12}
h1{font-size:clamp(36px,5.2vw,56px)}
h2{font-size:clamp(28px,3.6vw,40px);margin-bottom:22px}
h3{font-size:22px}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}
.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:var(--pad)}
.estrecho{max-width:780px}
.saltar{position:absolute;left:-999px;top:8px;background:var(--card);padding:10px 16px;border-radius:999px;z-index:20}
.saltar:focus{left:16px}

.nav{position:sticky;top:0;z-index:10;background:rgba(251,246,238,.94);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:68px}
.logo{display:flex;align-items:center;gap:10px;font:500 21px/1 var(--serif);color:var(--ink);text-decoration:none}
.nav nav{display:flex;gap:24px}
.nav nav a{text-decoration:none;font-size:15.5px;font-weight:500;padding:8px 0}
.nav nav a:hover{color:var(--gold)}

.btn,.btn-nav,.btn-claro{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 24px;border-radius:999px;font:500 16px/1.2 var(--sans);text-decoration:none;transition:transform .2s}
.btn{background:linear-gradient(180deg,#D3A65C,#B3873B 55%,#9E731F);color:#14110C}
.btn:hover,.btn-claro:hover{transform:translateY(-1px)}
.btn .fl{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.btn.btn-nav{background:var(--espresso);color:#FBF6EE;min-height:44px;padding:0 20px;font-size:15px}
.btn-2{display:inline-flex;align-items:center;min-height:50px;padding:0 6px;font-weight:500;text-underline-offset:4px}
.btn-claro{border:1.5px solid #F5EFE4;color:#FBF6EE}
.ctas{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:28px}
.nota{margin-top:16px;font-size:14.5px;color:var(--muted);max-width:52ch}

.migas{display:flex;flex-wrap:wrap;gap:8px;padding-top:18px;font-size:14px;color:var(--muted)}
.migas a{color:var(--muted);text-underline-offset:3px;padding:2px 0}
.hero{padding:40px 0 72px}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,64px);align-items:center}
.hero.solo .wrap{grid-template-columns:minmax(0,820px)}
.sub{margin-top:20px;font-size:clamp(18px,2vw,20px);max-width:58ch}
.shot{border-radius:22px;overflow:hidden;border:1px solid var(--line);background:var(--card);box-shadow:0 24px 50px -28px rgba(72,50,20,.35)}
.shot figcaption{font-size:13px;color:var(--muted);padding:9px 14px;border-top:1px solid var(--line)}

.blk{padding:clamp(52px,7vw,84px) 0}
.fondo{background:var(--bg-2)}
.lead{font-size:18.5px}
.dolores{list-style:none;padding:0;display:grid;gap:12px}
.dolores li{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:15px 18px}
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.tile{border-radius:22px;padding:26px 24px;background:var(--tinte)}
.tile h3{margin:14px 0 8px}
.tile p{font-size:16px}
.badge{display:inline-flex;width:44px;height:44px;border-radius:50%;align-items:center;justify-content:center;background:var(--bd)}
.badge svg{width:22px;height:22px;fill:none;stroke:var(--ic);stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.t-sage{--tinte:#E6E4D5;--bd:#CFDBBC;--ic:#4F7A3A}
.t-sand{--tinte:#F5EAD7;--bd:#EBD5AE;--ic:#8A6424}
.t-mist{--tinte:#E8EAEC;--bd:#CDD6E3;--ic:#3E5A7E}
.t-blush{--tinte:#F2E1D9;--bd:#F2CDBD;--ic:#A5523A}
.t-moss{--tinte:#DFDDCC;--bd:#C9C9AE;--ic:#5F6638}
.t-lilac{--tinte:#E8E7EC;--bd:#D3D7E6;--ic:#2A496A}
.dia{list-style:none;padding:0;counter-reset:d;display:grid;gap:12px}
.dia li{counter-increment:d;position:relative;padding:18px 20px 18px 66px;background:var(--card);border:1px solid var(--line);border-radius:18px}
.dia li::before{content:counter(d);position:absolute;left:20px;top:18px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#F5EAD7;color:#14110C;font:500 17px/1 var(--serif)}
.dia h3{margin-bottom:5px;font-size:21px}
details{border-bottom:1px solid var(--line);padding:16px 0}
summary{cursor:pointer;font-weight:600;color:var(--ink);min-height:30px}
details p{margin-top:9px}
.rel{padding-top:8px}
.rel ul{padding-left:20px;display:grid;gap:8px}
.rel a{color:#7A5614;text-underline-offset:3px}
.trato{padding-top:0}

.cierre{background:var(--olive);border-radius:28px;padding:clamp(34px,6vw,64px);color:#F5EFE4}
.cierre h2{color:#FBF6EE;margin-bottom:12px}
.cierre p{max-width:56ch}
.tel-claro{color:#E8E1D3;font-size:15px;padding:12px 4px;margin:0;flex-basis:100%}.tel-claro a{color:inherit;text-underline-offset:4px;white-space:nowrap}

footer{border-top:1px solid var(--line);padding:46px 0 54px;font-size:15px}
footer .wrap{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:28px}
.pie-col{display:flex;flex-direction:column;gap:3px;align-items:flex-start}
.pie-col b{font-family:var(--serif);font-weight:500;font-size:19px;color:var(--ink);margin-bottom:6px}
.pie-col p{color:var(--muted);margin-bottom:6px}
.pie-col a{color:var(--text);text-underline-offset:3px;padding:4px 0}

@media (max-width:900px){
  .nav nav{display:none}
  .hero .wrap{grid-template-columns:1fr}
  .tiles,.guias{grid-template-columns:repeat(2,minmax(0,1fr))}
  footer .wrap{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .tiles,.guias,footer .wrap{grid-template-columns:1fr}
  .hero{padding:26px 0 52px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.btn-claro{transition:none}}
.guia table{width:100%;border-collapse:collapse;margin:18px 0 22px;font-size:15.5px}
.guia th,.guia td{text-align:left;vertical-align:top;padding:11px 12px;border-bottom:1px solid var(--line)}
.guia th{font-weight:600;color:var(--ink);background:#F5EAD7}
.guia .tabla{overflow-x:auto}
.guia td:first-child{font-weight:600;color:var(--ink)}
@media (max-width:560px){.guia table{font-size:14px}.guia td{hyphens:auto}.guia th,.guia td{padding:9px 6px}}

/* ---- Guías ---- */
.g-progreso{position:fixed;inset:0 0 auto;height:3px;z-index:12;pointer-events:none}
.g-progreso i{display:block;height:100%;background:linear-gradient(90deg,#D3A65C,#9E731F);transform:scaleX(0);transform-origin:0 50%}
.g-cab{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(28px,5vw,64px);align-items:center;padding-top:34px;padding-bottom:clamp(44px,6vw,72px)}
.g-cab.sin-portada{grid-template-columns:minmax(0,820px)}
.g-cab h1{font-size:clamp(38px,5vw,58px);line-height:1.06;letter-spacing:-.025em}
.g-entrada{margin:20px 0 28px;font-size:clamp(18px,2vw,20.5px);line-height:1.55;max-width:54ch}
.g-meta{display:flex;align-items:center;gap:13px;font-size:14.5px;color:var(--muted)}
.g-meta img{border-radius:12px;flex:none}
.g-meta a{display:block;font-weight:600;color:var(--ink);text-decoration:none;font-size:15.5px}
.g-meta a:hover{color:var(--gold)}
.g-portada{background:var(--tinte);border-radius:30px;padding:clamp(14px,2.6vw,26px);position:relative}
.g-portada img{border-radius:16px;border:1px solid rgba(20,17,12,.06);box-shadow:0 30px 60px -32px rgba(72,50,20,.45),0 2px 6px rgba(72,50,20,.06)}
.g-portada figcaption{margin-top:12px;font-size:13px;color:var(--muted);padding-inline:4px}

.g-cuerpo{display:grid;grid-template-columns:220px minmax(0,700px);gap:clamp(40px,6vw,80px);justify-content:center;padding-bottom:24px}
.g-indice{position:sticky;top:96px;align-self:start;font-size:14.5px}
.g-indice summary{font-weight:600;color:var(--ink);list-style:none;margin-bottom:10px;pointer-events:none}
.g-indice summary::-webkit-details-marker{display:none}
.g-indice ol{list-style:none;padding:0;margin:0;border-left:1.5px solid var(--line)}
.g-indice a{display:block;padding:7px 0 7px 16px;margin-left:-1.5px;border-left:1.5px solid transparent;color:var(--muted);text-decoration:none;line-height:1.4;transition:color .2s,border-color .2s}
.g-indice a:hover{color:var(--ink)}
.g-indice a.activo{color:var(--ink);border-left-color:var(--gold);font-weight:500}
.g-indice details{border:0;padding:0}

.g-texto{font-size:18px;line-height:1.72;min-width:0}
.g-texto>p,.g-texto>ul,.g-texto>ol{margin-bottom:18px}
.g-texto h2{font-size:clamp(28px,3.4vw,36px);margin:60px 0 18px;scroll-margin-top:96px}
.g-texto h3{font-size:23px;margin:34px 0 10px}
.g-texto a{color:#7A5614;text-underline-offset:3px;text-decoration-thickness:1px}
.g-texto strong{color:var(--ink);font-weight:600}
.g-texto ul,.g-texto ol{padding-left:24px}
.g-texto li{margin-bottom:9px;padding-left:4px}
.g-texto ul li::marker{color:#D0AB73;font-size:1.15em}
.g-texto ol li::marker{color:var(--gold);font:500 1.05em var(--serif)}

.g-esencial{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:26px 28px 12px;margin-bottom:12px;box-shadow:0 18px 40px -34px rgba(72,50,20,.4)}
.g-esencial-t{font:500 23px/1.2 var(--serif);color:var(--ink);margin-bottom:16px}
.chequeo{list-style:none;padding:0!important}
.chequeo li{position:relative;padding-left:38px!important;margin-bottom:14px;line-height:1.55}
.chequeo li::before{content:"";position:absolute;left:0;top:1px;width:26px;height:26px;border-radius:50%;background:#CFDBBC url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234F7A3A' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/14px no-repeat}
.g-texto .chequeo{margin:18px 0 22px}

.nota-g{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;align-items:start;background:var(--tinte);border-radius:22px;padding:22px 24px;margin:26px 0;font-size:16.5px;line-height:1.62}
.nota-g p{margin:0 0 6px}
.nota-g p:last-child{margin:0}
.nota-g b{display:block;font:500 20px/1.25 var(--serif);color:var(--ink);margin:6px 0 6px}

.g-texto blockquote{margin:24px 0 26px;max-width:540px;background:var(--card);border:1px solid var(--line);border-radius:22px 22px 22px 6px;padding:16px 20px;font-size:16.5px;line-height:1.6;color:var(--ink);box-shadow:0 16px 34px -28px rgba(72,50,20,.5)}

.g-texto .dia{margin:22px 0 26px;padding-left:0}
.g-texto .dia li{padding-left:66px;margin:0}
.g-texto .dia h3{margin:0 0 4px;font-size:21px}
.g-texto .dia p{font-size:16.5px;line-height:1.6;margin:0}

.g-demo{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:22px;margin:52px 0 8px;padding:26px 28px;border-radius:26px;background:var(--card);border:1px solid var(--line);box-shadow:0 22px 46px -36px rgba(72,50,20,.55);overflow:hidden}
.g-demo.con-img{grid-template-columns:minmax(0,1fr) 220px}
.g-demo p{margin:0;font-size:15.5px;color:var(--muted)}
.g-demo .g-demo-t{font:500 24px/1.2 var(--serif);color:var(--ink);margin-bottom:6px}
.g-demo-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;margin-top:18px}
.g-demo .btn{color:#14110C;text-decoration:none}
.g-demo-2{font-size:15px;font-weight:500;color:var(--ink)!important;text-underline-offset:4px}
.g-demo img{border-radius:12px;border:1px solid var(--line);transform:rotate(2deg);box-shadow:0 18px 30px -20px rgba(72,50,20,.5)}

.g-faq details{padding:0}
.g-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;font-size:17px}
.g-faq summary::-webkit-details-marker{display:none}
.g-faq summary::after{content:"+";flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#F5EAD7;color:var(--gold);font:400 20px/1 var(--sans);transition:transform .2s}
.g-faq details[open] summary::after{transform:rotate(45deg)}
.g-faq details p{margin:0 0 18px;max-width:62ch}

.g-fuentes{margin-top:56px;font-size:15px;color:var(--muted)}
.g-fuentes h2{font-size:24px;margin:0 0 10px}
.g-fuentes ol{padding-left:20px}
.g-fuentes li{margin-bottom:6px}
.g-autor{display:flex;gap:18px;align-items:flex-start;margin-top:40px;padding:24px 26px;border-radius:24px;background:var(--bg-2);font-size:15.5px;line-height:1.6}
.g-autor img{border-radius:14px;flex:none}
.g-autor p{margin:0}
.g-autor-n{font-weight:600;color:var(--ink);margin-bottom:4px!important}
.g-faq{margin-top:56px}
.g-faq h2{margin-top:0}

.g-rels{grid-template-columns:repeat(3,minmax(0,1fr))}
.g-rel{display:flex;flex-direction:column;gap:10px;min-height:168px;text-decoration:none;color:var(--ink);transition:transform .25s,box-shadow .25s}
.g-rel:hover{transform:translateY(-3px);box-shadow:0 20px 40px -30px rgba(72,50,20,.55)}
.g-rel-tipo{font-size:13.5px;color:var(--muted)}
.g-rel-t{font:500 23px/1.2 var(--serif);flex:1}
.g-rel .fl{width:22px;height:22px;fill:none;stroke:var(--gold);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* Índice de guías: lista editorial agrupada por tema */
.g-ind-hero{padding:40px 0 30px}
.g-ind-hero .wrap,.migas.g-ancho{max-width:1000px}
.g-ind-hero h1{max-width:16ch}
.g-saltos{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.g-saltos a{display:inline-flex;align-items:center;gap:10px;padding:7px 16px 7px 7px;border-radius:999px;background:var(--card);border:1px solid var(--line);text-decoration:none;font-size:15px;font-weight:500;color:var(--ink);transition:border-color .2s,transform .2s}
.g-saltos a:hover{border-color:#D0AB73;transform:translateY(-1px)}
.g-saltos .badge{width:32px;height:32px}
.g-saltos .badge svg{width:17px;height:17px}
.g-saltos b{font-weight:500;color:var(--muted);font-size:14px}
.g-tema{padding:34px 0 30px;scroll-margin-top:80px}
.g-tema .wrap{max-width:1000px;display:grid;grid-template-columns:270px minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start;border-top:1px solid var(--line);padding-top:38px}
.g-tema header{position:sticky;top:96px}
.g-tema header .badge{margin-bottom:16px}
.g-tema h2{font-size:clamp(26px,3vw,32px);margin-bottom:10px}
.g-tema header p{font-size:15.5px;color:var(--muted)}
.g-filas{list-style:none;padding:0;margin:0}
.g-filas li+li{border-top:1px solid var(--line)}
.g-fila{display:grid;grid-template-columns:minmax(0,1fr) auto 22px;grid-template-areas:"t m f" "d d d";gap:6px 18px;align-items:baseline;padding:22px 14px;margin:0 -14px;border-radius:18px;text-decoration:none;color:var(--text);transition:background .2s}
.g-fila:hover{background:var(--card)}
.g-fila-t{grid-area:t;font:500 clamp(21px,2.2vw,24px)/1.22 var(--serif);color:var(--ink);letter-spacing:-.01em}
.g-fila-d{grid-area:d;font-size:15.5px;line-height:1.55;color:var(--muted);max-width:62ch}
.g-fila-m{grid-area:m;font-size:13.5px;color:var(--muted);white-space:nowrap}
.g-fila .fl{grid-area:f;width:20px;height:20px;fill:none;stroke:var(--gold);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;align-self:center;transition:transform .2s}
.g-fila:hover .fl{transform:translateX(3px)}

@media (max-width:1000px){
  .g-cab{grid-template-columns:1fr}
  .g-cuerpo{grid-template-columns:minmax(0,700px)}
  .g-indice{position:static;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:4px 18px}
  .g-indice summary{pointer-events:auto;cursor:pointer;margin:0;padding:14px 0;display:flex;justify-content:space-between}
  .g-indice summary::after{content:"+";font:400 22px/1 var(--sans);color:var(--gold)}
  .g-indice details[open] summary::after{content:"−"}
  .g-indice ol{margin-bottom:14px}
  .g-rels{grid-template-columns:1fr 1fr}
  .g-tema .wrap{grid-template-columns:1fr;gap:10px}
  .g-tema header{position:static;display:grid;grid-template-columns:44px 1fr;column-gap:14px;align-items:center}
  .g-tema header .badge{margin:0}
  .g-tema h2{margin:0}
  .g-tema header p{grid-column:1/-1;margin-top:10px}
}
@media (max-width:560px){
  .g-cab{padding-top:22px}
  .g-texto{font-size:17px}
  .g-texto h2{margin-top:48px}
  .g-esencial{padding:22px 20px 8px}
  .nota-g{grid-template-columns:1fr;gap:10px;padding:20px}
  .g-demo,.g-demo.con-img{grid-template-columns:1fr;padding:22px 20px}
  .g-demo img{display:none}
  .g-demo .btn{width:100%}
  .g-autor{flex-direction:column}
  .g-rels{grid-template-columns:1fr}
  .g-rel{min-height:0}
  .g-texto .dia li{padding:16px 16px 16px 58px}
  .g-texto .dia li::before{left:14px;top:16px}
  .g-fila{grid-template-columns:minmax(0,1fr) 20px;grid-template-areas:"t f" "d d" "m m";padding:18px 10px;margin:0 -10px}
  .g-saltos a{font-size:14.5px}
}
@media (prefers-reduced-motion:reduce){.g-rel,.g-indice a,.g-faq summary::after,.g-fila,.g-fila .fl,.g-saltos a{transition:none}}
