:root{
  color-scheme:light;
  --bg:#f8fafc;
  --bg-warm:#f6f8fb;
  --surface:#ffffff;
  --surface-soft:#f1f5f9;
  --surface-tint:#eef8f6;
  --text:#1f2937;
  --strong:#0f172a;
  --muted:#475569;
  --muted-2:#64748b;
  --line:#dbe3ec;
  --line-strong:#cbd5e1;
  --accent:#0b5d56;
  --accent-strong:#073f3b;
  --accent-deep:#052e2b;
  --accent-soft:#dff4f1;
  --accent-soft-2:#f0fbf9;
  --warm:#9a4a0b;
  --warm-strong:#78350f;
  --warm-soft:#fff7ed;
  --danger-focus:#b45309;
  --shadow-xs:0 1px 2px rgba(15,23,42,.06);
  --shadow-sm:0 10px 30px rgba(15,23,42,.08);
  --shadow:0 24px 68px rgba(15,23,42,.11);
  --shadow-lg:0 34px 100px rgba(15,23,42,.15);
  --radius:18px;
  --radius-lg:26px;
  --radius-xl:34px;
  --max:1160px;
  --read:790px;
  --header-h:76px;
  --font:Inter,"Plus Jakarta Sans",Manrope,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{
  margin:0;
  min-width:320px;
  font-family:var(--font);
  color:var(--text);
  background:
    radial-gradient(circle at 8% -6%,rgba(11,93,86,.12),transparent 30rem),
    radial-gradient(circle at 94% 0,rgba(154,74,11,.08),transparent 27rem),
    linear-gradient(180deg,#fff 0,var(--bg) 40rem,#fff 100%);
  font-size:17px;
  line-height:1.72;
  font-weight:430;
  letter-spacing:-.006em;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
body::selection{background:rgba(11,93,86,.22)}
a{color:var(--accent);text-decoration-thickness:.075em;text-underline-offset:.22em;transition:color .18s,background .18s,border-color .18s,box-shadow .18s,transform .18s}
a:hover{color:var(--accent-strong);text-decoration-thickness:.12em}
img,svg{max-width:100%;height:auto;display:block}
[hidden]{display:none!important}
.wrap{width:min(100%,var(--max));margin-inline:auto;padding-inline:clamp(20px,4vw,34px)}
.section{padding-block:clamp(50px,7vw,82px)}
.section-narrow{width:min(100%,var(--read));margin-inline:auto;padding-inline:clamp(20px,4vw,34px)}
.skip-link{position:absolute;left:-999px;top:12px;z-index:100;padding:11px 15px;border-radius:999px;background:var(--strong);color:#fff;text-decoration:none}
.skip-link:focus{left:14px}
:focus-visible{outline:3px solid rgba(180,83,9,.82);outline-offset:4px;border-radius:10px}

.site-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.91);border-bottom:1px solid rgba(15,23,42,.09);backdrop-filter:saturate(1.18) blur(18px);box-shadow:0 1px 0 rgba(255,255,255,.9) inset}
.header-inner{min-height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:inline-flex;align-items:center;gap:12px;min-width:0;color:var(--strong);font-weight:880;letter-spacing:-.034em;text-decoration:none}
.brand img{width:40px;height:40px;flex:0 0 auto;border-radius:14px;box-shadow:0 12px 26px rgba(11,93,86,.22)}
.brand span{font-size:1.035rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.main-nav{display:flex;align-items:center;gap:6px}
.main-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:999px;color:#334155;font-size:.96rem;font-weight:760;text-decoration:none}
.main-nav a:hover,.main-nav a[aria-current="page"]{background:var(--accent-soft);color:var(--accent-strong)}
.menu-toggle{display:none;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid rgba(15,23,42,.14);border-radius:16px;background:#fff;color:var(--strong);font:850 1.34rem/1 var(--font);cursor:pointer;box-shadow:var(--shadow-xs)}
body.nav-lock{overflow:hidden}
main{min-height:58vh}

h1,h2,h3{margin:0;color:var(--strong);letter-spacing:-.045em;line-height:1.1;text-wrap:balance}
h1{max-width:900px;margin:14px 0 20px;font-size:clamp(2.12rem,5vw,4.15rem);line-height:1.03;letter-spacing:-.056em}
h2{font-size:clamp(1.46rem,2.55vw,2.08rem)}
h3{font-size:1.12rem;line-height:1.25}
p{margin:0 0 18px}
ul{margin-top:0}
.lead{max-width:var(--read);color:var(--muted);font-size:clamp(1.045rem,1.5vw,1.16rem);line-height:1.72}
.eyebrow,.badge{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;padding:7px 12px;border:1px solid rgba(11,93,86,.26);border-radius:999px;background:var(--accent-soft-2);color:var(--accent-strong);font-size:.77rem;font-weight:880;letter-spacing:.048em;text-transform:uppercase}
.badge{background:#fff;border-color:rgba(11,93,86,.22)}

.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:26px 0 22px;color:var(--muted-2);font-size:.94rem;line-height:1.4}
.breadcrumb a{color:var(--muted);text-decoration:none}
.breadcrumb a:hover{color:var(--accent)}

.panel,.answer-box,.search-card,.data-card,.note-box{background:rgba(255,255,255,.97);border:1px solid rgba(15,23,42,.10);border-radius:var(--radius-lg);box-shadow:0 1px 0 rgba(255,255,255,.86) inset}
.panel{padding:clamp(26px,4vw,48px);box-shadow:var(--shadow-sm)}
.word-panel{position:relative;overflow:hidden}
.word-panel::before{content:"";position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(90deg,var(--accent),#2563eb,var(--warm));opacity:.9}
.page-section{padding-block:clamp(28px,4.4vw,48px);border-bottom:1px solid rgba(15,23,42,.09)}
.page-section:first-child{padding-top:10px}
.page-section:last-child{border-bottom:0;padding-bottom:0}
.page-section h2{margin-bottom:16px}
.natural-copy p,.article-copy p,.home-copy p,.note-box{color:#334155;line-height:1.82}
.article-copy h2{margin-top:34px;margin-bottom:12px}
.article-copy ul{margin:0 0 20px;padding-left:22px}
.article-copy li{margin:8px 0}

.answer-box{position:relative;margin:24px 0 8px;padding:clamp(26px,4vw,40px);overflow:hidden;background:linear-gradient(135deg,#fff,var(--accent-soft-2));box-shadow:var(--shadow)}
.answer-box::after{content:"";position:absolute;right:-80px;top:-96px;width:238px;height:238px;border-radius:50%;background:radial-gradient(circle,rgba(11,93,86,.15),transparent 66%)}
.answer-box p{position:relative;margin:0 0 10px;color:var(--accent-strong);font-size:.80rem;font-weight:880;letter-spacing:.07em;text-transform:uppercase}
.answer-box strong{position:relative;display:block;max-width:760px;color:var(--strong);font-size:clamp(1.38rem,2.42vw,1.98rem);line-height:1.24;letter-spacing:-.04em}
.answer-context{position:relative;display:block;margin-top:12px;color:var(--muted);font-weight:650;line-height:1.55}

.content-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,326px);gap:clamp(26px,4vw,44px);align-items:start}
.data-card{position:sticky;top:calc(var(--header-h) + 22px);padding:26px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:var(--shadow-sm)}
.data-card h2{font-size:1.15rem;margin-bottom:18px}
.data-list{display:grid;margin:0}
.data-list div{display:grid;gap:4px;padding:14px 0;border-bottom:1px solid rgba(15,23,42,.09)}
.data-list div:last-child{border-bottom:0}
.data-list dt{color:var(--muted-2);font-size:.75rem;font-weight:860;text-transform:uppercase;letter-spacing:.075em}
.data-list dd{margin:0;color:var(--strong);font-weight:770;line-height:1.38;overflow-wrap:anywhere}

.grid{display:grid;gap:16px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.link-card{position:relative;display:block;min-height:100%;padding:22px;border:1px solid rgba(15,23,42,.10);border-radius:22px;background:linear-gradient(180deg,#fff,#f8fafc);color:var(--text);text-decoration:none;box-shadow:var(--shadow-xs);overflow:hidden}
.link-card::after{content:"";position:absolute;left:22px;right:22px;bottom:0;height:3px;border-radius:999px 999px 0 0;background:linear-gradient(90deg,var(--accent),#2563eb);opacity:0;transform:scaleX(.55);transform-origin:left;transition:opacity .18s,transform .18s}
.link-card strong{display:block;color:var(--strong);font-weight:850;letter-spacing:-.025em;line-height:1.26;overflow-wrap:anywhere}
.link-card span{display:block;margin-top:8px;color:var(--muted);font-size:.965rem;line-height:1.6}
.link-card:hover{border-color:rgba(11,93,86,.36);background:#fff;box-shadow:var(--shadow-sm);transform:translateY(-2px);color:var(--text)}
.link-card:hover::after{opacity:1;transform:scaleX(1)}

.chips{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 0}
.context-card .chips{margin:18px 0 14px}
.chips + p{margin-top:10px}
.chip{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border:1px solid rgba(15,23,42,.13);border-radius:999px;background:#fff;color:#1e293b;font-size:.95rem;font-weight:780;line-height:1.25;box-shadow:var(--shadow-xs);overflow-wrap:anywhere}
.context-grid{display:grid;gap:14px}
.context-card{padding:20px;border:1px solid rgba(15,23,42,.10);border-radius:22px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:var(--shadow-xs)}
.context-card h3{margin-bottom:8px;letter-spacing:-.025em}
.context-card p{font-size:.98rem;line-height:1.68}
.context-card p:last-child{margin-bottom:0}

.table-scroll{width:100%;overflow:auto;border:1px solid rgba(15,23,42,.105);border-radius:20px;background:#fff;box-shadow:var(--shadow-xs);-webkit-overflow-scrolling:touch}
.forms-table{width:100%;border-collapse:separate;border-spacing:0;min-width:560px}
.forms-table th,.forms-table td{padding:16px 18px;text-align:left;border-bottom:1px solid rgba(15,23,42,.095);vertical-align:top}
.forms-table tr:last-child th,.forms-table tr:last-child td{border-bottom:0}
.forms-table th{color:#334155;background:#f1f5f9;font-size:.84rem;font-weight:860;text-transform:uppercase;letter-spacing:.04em}
.forms-table td{color:var(--strong);font-weight:650}
.examples{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.examples li{position:relative;padding:16px 18px 16px 46px;border:1px solid rgba(15,23,42,.10);border-radius:18px;background:rgba(255,255,255,.82);line-height:1.66}
.examples li::before{content:"“";position:absolute;left:18px;top:10px;color:var(--accent);font-size:2rem;font-weight:900;line-height:1}
.examples li strong{color:var(--strong)}

.faq{display:grid;gap:12px}
.faq details{border:1px solid rgba(15,23,42,.10);border-radius:18px;background:#fff;box-shadow:var(--shadow-xs);overflow:hidden;margin:0;padding:0 16px}
.faq summary{cursor:pointer;padding:16px 0;color:var(--strong);font-weight:820;line-height:1.45}
.faq details p{padding:0 0 16px;margin:0;color:var(--muted);line-height:1.68}

.search-card{padding:clamp(24px,4vw,34px);box-shadow:var(--shadow-sm)}
.search-form label,.search-card > label{display:block;margin-bottom:10px;color:var(--strong);font-size:.98rem;font-weight:820}
.search-row{display:flex;gap:12px;align-items:stretch;width:100%}
.search-row input[type="search"],.search-input,.home-search input{width:100%;min-width:0;min-height:58px;border:1px solid rgba(15,23,42,.16);border-radius:17px;background:#fff;color:var(--strong);padding:0 16px;font:520 1rem/1.2 var(--font);box-shadow:0 1px 0 rgba(255,255,255,.9) inset}
.search-row input[type="search"]:focus,.search-input:focus,.home-search input:focus{outline:0;border-color:rgba(11,93,86,.62);box-shadow:0 0 0 4px rgba(11,93,86,.14)}
.search-row button,.btn,.home-search button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:58px;padding:0 22px;border:1px solid var(--accent);border-radius:17px;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff;font:820 1rem/1 var(--font);text-decoration:none;cursor:pointer;box-shadow:0 14px 30px rgba(11,93,86,.23);white-space:nowrap}
.search-row button:hover,.btn:hover,.home-search button:hover{color:#fff;transform:translateY(-1px);box-shadow:0 18px 34px rgba(11,93,86,.27)}
.results{display:grid;gap:12px;margin-top:18px}
.result-item{padding:17px 18px;border:1px solid rgba(15,23,42,.105);border-radius:18px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:var(--shadow-xs)}
.result-item a{display:block;color:var(--strong);font-weight:830;text-decoration:none}
.result-item p{margin:6px 0 0;color:var(--muted);font-size:.96rem;line-height:1.55}
.empty-result{margin:0;padding:16px 18px;border-radius:18px;background:var(--surface-soft);color:var(--muted)}
.quick-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.quick-links a{display:inline-flex;align-items:center;min-height:42px;padding:0 14px;border:1px solid rgba(15,23,42,.12);border-radius:999px;background:rgba(255,255,255,.86);color:#1e293b;text-decoration:none;font-size:.94rem;font-weight:780}
.quick-links a:hover{border-color:rgba(11,93,86,.35);background:#fff;color:var(--accent-strong)}

.home-landing{position:relative;overflow:hidden;padding:clamp(58px,8vw,108px) 0 clamp(44px,7vw,78px);border-bottom:1px solid rgba(15,23,42,.075)}
.home-landing::before{content:"";position:absolute;inset:-24rem -10vw auto;height:760px;background:radial-gradient(circle at 16% 44%,rgba(11,93,86,.15),transparent 27rem),radial-gradient(circle at 88% 24%,rgba(154,74,11,.09),transparent 25rem);pointer-events:none}
.home-landing-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(315px,.72fr);gap:clamp(34px,6vw,76px);align-items:center}
.home-landing h1{max-width:800px;margin:18px 0 22px;font-size:clamp(2.38rem,5.9vw,4.75rem);line-height:1}
.home-search{max-width:730px;padding:11px;border:1px solid rgba(11,93,86,.23);border-radius:26px;background:rgba(255,255,255,.9);box-shadow:0 22px 54px rgba(15,23,42,.10);backdrop-filter:blur(16px)}
.home-search label{display:block;padding:5px 9px 10px;color:#334155;font-size:.94rem;font-weight:850}
.home-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
.preview-card{position:relative;padding:28px;border:1px solid rgba(11,93,86,.20);border-radius:32px;background:linear-gradient(145deg,#fff,var(--accent-soft-2));box-shadow:var(--shadow-lg);overflow:hidden}
.preview-card::before{content:"";position:absolute;right:-78px;top:-78px;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,rgba(11,93,86,.15),transparent 66%)}
.preview-card h2{position:relative;margin:14px 0 16px}
.preview-answer{position:relative;padding:22px;border-radius:24px;background:linear-gradient(135deg,var(--accent-deep),var(--accent));color:#fff;box-shadow:0 18px 38px rgba(11,93,86,.26)}
.preview-answer strong{display:block;color:#fff;font-size:clamp(1.28rem,2.4vw,1.72rem);line-height:1.14}
.preview-answer span{display:block;margin-top:8px;color:rgba(255,255,255,.86);font-size:.96rem;line-height:1.5}
.home-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:clamp(22px,3vw,34px)}
.home-section{padding-block:clamp(52px,6.7vw,86px)}
.home-split{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1fr);gap:clamp(30px,5vw,66px);align-items:start}
.home-split h2,.home-section-head h2{margin:14px 0 14px;font-size:clamp(1.62rem,3.45vw,2.66rem);line-height:1.07}
.home-popular-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.note-box{padding:22px;border-color:#fed7aa;background:var(--warm-soft);color:#334155}
.note-box strong{display:block;margin-bottom:6px;color:var(--strong);font-weight:850}
.article-copy .note-box{margin-top:28px}

.letter-grid{grid-template-columns:repeat(auto-fit,minmax(112px,1fr))}
.letter-card{text-align:center}
.letter-card strong{font-size:1.45rem}
.word-count{color:var(--muted-2);font-size:.94rem;margin-top:4px}

.site-footer{margin-top:clamp(40px,6vw,78px);padding:42px 0;background:#0f172a;color:#cbd5e1}
.footer-shell{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:start}
.footer-brand{display:block;color:#fff;font-weight:860;font-size:1.06rem;letter-spacing:-.03em}
.footer-brand-block p{max-width:540px;margin:10px 0 0;color:#cbd5e1;line-height:1.65}
.footer-links{display:flex;gap:34px}
.footer-links div{display:grid;gap:8px}
.footer-links strong{color:#fff}
.footer-links a{color:#dbeafe;text-decoration:none;font-weight:650}
.footer-links a:hover{color:#fff}

@media (max-width:1020px){
  .content-layout{grid-template-columns:minmax(0,1fr) 292px;gap:28px}
  .data-card{padding:22px}
}

@media (max-width:900px){
  :root{--header-h:72px}
  .content-layout,.hero-grid,.home-landing-grid,.home-split,.footer-shell{grid-template-columns:1fr}
  .data-card{position:static}
  .home-directory{grid-template-columns:1fr;margin-top:18px}
  .grid-3{grid-template-columns:1fr 1fr}
  .main-nav{position:fixed;left:16px;right:16px;top:calc(var(--header-h) + 10px);display:none;grid-template-columns:1fr;gap:8px;padding:12px;border:1px solid rgba(15,23,42,.12);border-radius:22px;background:rgba(255,255,255,.97);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
  body.nav-lock .main-nav{display:grid}
  .main-nav a{justify-content:flex-start;min-height:48px;padding-inline:14px}
  .menu-toggle{display:inline-flex}
  .footer-links{justify-content:space-between}
  .home-popular-list{grid-template-columns:1fr}
  .preview-card{max-width:640px}
}

@media (max-width:620px){
  body{font-size:16.25px;line-height:1.68}
  .wrap,.section-narrow{padding-inline:18px}
  .header-inner{gap:12px}
  .brand img{width:38px;height:38px;border-radius:13px}
  .brand span{max-width:205px;font-size:1rem}
  .section{padding-block:42px}
  h1{font-size:clamp(2rem,10.4vw,3.2rem);line-height:1.04;margin-bottom:18px}
  h2{font-size:clamp(1.36rem,6vw,1.84rem);line-height:1.12}
  .lead{font-size:1.02rem;line-height:1.66}
  .breadcrumb{margin:20px 0 18px;font-size:.91rem}
  .panel{padding:22px;border-radius:22px}
  .page-section{padding-block:30px}
  .answer-box{padding:24px;border-radius:23px}
  .answer-box strong{font-size:clamp(1.28rem,6vw,1.64rem)}
  .search-row,.home-search-row{grid-template-columns:1fr}
  .search-row{display:grid}
  .search-row button,.btn,.home-search button{width:100%}
  .grid-2,.grid-3{grid-template-columns:1fr}
  .context-card,.link-card{padding:18px;border-radius:20px}
  .chips{gap:8px}
  .chip{min-height:38px;padding-inline:12px;font-size:.91rem}
  .examples li{padding:15px 16px 15px 42px}
  .forms-table{min-width:520px}
  .home-landing{padding-top:44px}
  .home-landing h1{font-size:clamp(2.08rem,11.5vw,3.42rem)}
  .home-search{padding:9px;border-radius:22px}
  .preview-card{padding:22px;border-radius:26px}
  .preview-answer{padding:20px;border-radius:21px}
  .footer-links{display:grid;grid-template-columns:1fr 1fr;gap:18px}
}

@media (max-width:390px){
  .wrap,.section-narrow{padding-inline:16px}
  .brand span{max-width:172px}
  .menu-toggle{width:44px;height:44px;border-radius:14px}
  .search-row input[type="search"],.home-search input,.search-input{min-height:54px}
  .search-row button,.btn,.home-search button{min-height:54px}
  .footer-links{grid-template-columns:1fr}
}


/* Adsense: placeholders are present in HTML and are reserved only shortly before entering the viewport.
   This avoids injecting layout blocks after render and reduces CLS while keeping ads lazy. */
.ad-placement{
  width:min(100%,970px);
  min-height:0;
  margin:clamp(34px,5vw,58px) auto;
  padding:0;
  border:0;
  background:transparent;
  display:block;
  text-align:center;
  overflow:hidden;
  clear:both;
  transition:min-height .18s ease;
}
.ad-placement.ad-reserved{min-height:280px}
.ad-placement .adsbygoogle{display:block!important;width:100%;max-width:100%;margin:0 auto}
.word-panel>.ad-placement{width:100%;margin-block:clamp(34px,4.8vw,54px)}
.home-premium main>.ad-placement{margin-block:clamp(36px,5vw,58px)}
@media (max-width:680px){
  .ad-placement{width:300px;max-width:calc(100vw - 36px);margin-block:32px}
  .ad-placement.ad-reserved{min-height:250px}
  .ad-placement .adsbygoogle{width:300px!important;max-width:100%!important;margin-inline:auto}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
}


/* Ajustes finales de pulido UX: desktop y móvil */
html,body{overflow-x:hidden}
main{overflow-x:clip}
.natural-copy,.article-copy,.link-card,.context-card,.answer-box,.data-card{overflow-wrap:anywhere}
.panel,.answer-box,.search-card,.data-card,.note-box,.context-card,.link-card{border-color:rgba(15,23,42,.11)}
.context-grid{display:grid;gap:clamp(16px,2.6vw,22px)}
.context-card{box-shadow:0 1px 0 rgba(255,255,255,.75) inset}
.context-card p:last-child,.page-section p:last-child{margin-bottom:0}
.examples{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.examples li{position:relative;border:1px solid rgba(15,23,42,.10);border-radius:18px;background:#fff;padding:16px 18px 16px 44px;line-height:1.66;box-shadow:var(--shadow-xs)}
.examples li::before{content:"•";position:absolute;left:20px;top:15px;color:var(--accent);font-weight:900}
.faq-list{display:grid;gap:12px}
.faq-list details{border:1px solid rgba(15,23,42,.10);border-radius:18px;background:#fff;padding:16px 18px;box-shadow:var(--shadow-xs)}
.faq-list summary{cursor:pointer;color:var(--strong);font-weight:820;line-height:1.35}
.faq-list details[open]{border-color:rgba(11,93,86,.28);box-shadow:var(--shadow-sm)}
.faq-list p{margin:12px 0 0;color:var(--muted);line-height:1.68}
.table-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:20px}
.forms-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid rgba(15,23,42,.10);border-radius:20px;overflow:hidden}
.forms-table th,.forms-table td{padding:14px 16px;border-bottom:1px solid rgba(15,23,42,.08);vertical-align:top;text-align:left;line-height:1.5}
.forms-table tr:last-child th,.forms-table tr:last-child td{border-bottom:0}
.forms-table thead th{background:var(--surface-soft);color:var(--strong);font-size:.86rem;text-transform:uppercase;letter-spacing:.045em}
.forms-table tbody th{color:var(--accent-strong);font-weight:850}
@media (max-width:900px){
  .content-layout{grid-template-columns:1fr;gap:28px}
  .data-card{position:static;top:auto;order:-1}
  .main-nav{max-height:calc(100vh - var(--header-h) - 24px);overflow:auto}
  .letter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:620px){
  .wrap,.section-narrow{padding-inline:18px}
  .site-header{box-shadow:0 8px 24px rgba(15,23,42,.06)}
  .header-inner{min-height:68px}
  .main-nav{left:14px;right:14px;top:76px;padding:12px;border-radius:22px}
  .panel,.answer-box,.data-card,.search-card,.note-box{border-radius:22px}
  .page-section{padding-block:28px}
  .context-grid{gap:14px}
  .context-card,.link-card{padding:18px;border-radius:20px}
  .examples li{padding:15px 16px 15px 40px;border-radius:17px}
  .faq-list details{padding:15px 16px;border-radius:17px}
  .letter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .data-list div{padding:12px 0}
}
@media (max-width:420px){
  .wrap,.section-narrow{padding-inline:16px}
  .brand span{max-width:175px}
  h1{letter-spacing:-.045em}
  .letter-grid{grid-template-columns:1fr 1fr}
  .chip{max-width:100%;white-space:normal;text-align:center}
  .footer-links{grid-template-columns:1fr}
}


/* Corrección puntual de accesibilidad, color y tablas móviles */
:root{
  --bg:#f7f9fc;
  --bg-warm:#f5f7fb;
  --surface-soft:#eef3f8;
  --surface-tint:#e9f7f4;
  --text:#182334;
  --strong:#0b1424;
  --muted:#3f5065;
  --muted-2:#56687d;
  --line:#cfd9e6;
  --line-strong:#b8c6d6;
  --accent:#0a675f;
  --accent-strong:#064a44;
  --accent-deep:#033733;
  --accent-soft:#d9f1ed;
  --accent-soft-2:#eefaf8;
  --warm:#8a4308;
  --warm-strong:#6f320d;
}
a{color:var(--accent-strong)}
a:hover{color:var(--accent-deep)}
.main-nav a,.quick-links a{color:#26364a}
.lead,.result-item p,.faq details p,.faq-list p,.link-card span{color:var(--muted)}
.chip{color:#172235;border-color:rgba(15,23,42,.16)}
.forms-table th{color:#243247}
.forms-table td{color:#172235}
.search-row input[type="search"],.search-input,.home-search input{border-color:rgba(15,23,42,.22)}

@media (max-width:680px){
  .table-scroll{
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }
  .forms-table{
    display:block;
    min-width:0!important;
    width:100%;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    overflow:visible;
  }
  .forms-table thead{
    position:absolute;
    width:1px;
    height:1px;
    margin:-1px;
    padding:0;
    overflow:hidden;
    clip:rect(0 0 0 0);
    clip-path:inset(50%);
    white-space:nowrap;
    border:0;
  }
  .forms-table tbody{
    display:grid;
    gap:12px;
  }
  .forms-table tr{
    display:block;
    padding:14px 16px;
    border:1px solid rgba(15,23,42,.12);
    border-radius:18px;
    background:#fff;
    box-shadow:var(--shadow-xs);
  }
  .forms-table th,
  .forms-table td{
    display:block;
    padding:0;
    border:0;
    background:transparent;
  }
  .forms-table tbody th[scope="row"]{
    margin:0 0 10px;
    padding-bottom:10px;
    border-bottom:1px solid rgba(15,23,42,.10);
    color:var(--accent-strong);
    font-size:1rem;
    line-height:1.35;
    letter-spacing:-.01em;
    text-transform:none;
  }
  .forms-table td{
    display:grid;
    grid-template-columns:minmax(94px,34%) minmax(0,1fr);
    gap:10px;
    align-items:start;
    padding:8px 0;
    color:var(--text);
    font-size:.96rem;
    line-height:1.55;
    overflow-wrap:anywhere;
  }
  .forms-table td::before{
    content:attr(data-label);
    color:var(--muted-2);
    font-size:.74rem;
    font-weight:880;
    letter-spacing:.045em;
    line-height:1.35;
    text-transform:uppercase;
  }
}
@media (max-width:420px){
  .forms-table td{
    grid-template-columns:1fr;
    gap:4px;
  }
}

/* Corrección visual: tablas editoriales dentro de fichas de palabras */
.table-wrap{
  width:100%;
  max-width:100%;
  margin:18px 0 4px;
  overflow:hidden;
  border:1px solid rgba(15,23,42,.11);
  border-radius:20px;
  background:#fff;
  box-shadow:var(--shadow-xs);
}
.table-wrap table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  table-layout:fixed;
}
.table-wrap th,
.table-wrap td{
  padding:14px 16px;
  border-bottom:1px solid rgba(15,23,42,.08);
  text-align:left;
  vertical-align:top;
  color:#334155;
  line-height:1.55;
  overflow-wrap:break-word;
  word-break:normal;
}
.table-wrap thead th{
  background:var(--surface-soft);
  color:var(--strong);
  font-size:.82rem;
  font-weight:860;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.table-wrap tbody td:first-child,
.table-wrap tbody th:first-child{
  color:var(--accent-strong);
  font-weight:850;
}
.table-wrap tr:last-child th,
.table-wrap tr:last-child td{
  border-bottom:0;
}
@media (max-width:620px){
  .table-wrap{
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    margin-top:14px;
  }
  .table-wrap table,
  .table-wrap thead,
  .table-wrap tbody,
  .table-wrap tr,
  .table-wrap th,
  .table-wrap td{
    display:block;
    width:100%;
  }
  .table-wrap thead{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    white-space:nowrap;
  }
  .table-wrap tbody{
    display:grid;
    gap:10px;
  }
  .table-wrap tbody tr{
    padding:15px 16px;
    border:1px solid rgba(15,23,42,.10);
    border-radius:17px;
    background:#fff;
    box-shadow:var(--shadow-xs);
  }
  .table-wrap th,
  .table-wrap td{
    padding:0;
    border:0;
    font-size:.96rem;
    line-height:1.55;
  }
  .table-wrap tbody td:first-child,
  .table-wrap tbody th:first-child{
    display:block;
    margin-bottom:5px;
    color:var(--accent-strong);
    font-weight:860;
    letter-spacing:-.02em;
  }
  .table-wrap tbody td + td,
  .table-wrap tbody th + td{
    color:#334155;
  }
}

/* Ritmo vertical y componentes editoriales */
main > .section-narrow{
  padding-top:clamp(20px,3.2vw,36px);
}
main > .section-narrow .breadcrumb{
  margin-top:0;
}
.section{
  padding-block:clamp(44px,5.5vw,68px);
}
.panel{
  padding:clamp(28px,3.7vw,44px);
}
.page-section{
  padding-block:clamp(32px,3.8vw,44px);
}
.page-section:first-child{
  padding-top:clamp(18px,2.2vw,26px);
}
.page-section:last-child{
  padding-bottom:clamp(14px,1.8vw,22px);
}
.page-section h2{
  margin-bottom:clamp(16px,1.8vw,20px);
}
.page-section > p{
  margin-bottom:0;
}
.page-section > p + p{
  margin-top:14px;
}
.page-section > h3{
  margin:24px 0 9px;
}
.page-section > h2 + h3{
  margin-top:0;
}
.page-section > ul:not(.examples),
.page-section > ol:not(.steps){
  margin:0;
  padding-left:1.4em;
}
.page-section > ul:not(.examples) li + li,
.page-section > ol:not(.steps) li + li{
  margin-top:8px;
}

.context-list{
  display:grid;
  gap:clamp(16px,2.6vw,22px);
  margin:0;
}
.link-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin:0;
}
.related-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0;
}
.related-links a{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  padding:0 14px;
  border:1px solid rgba(15,23,42,.13);
  border-radius:999px;
  background:#fff;
  color:#172235;
  font-size:.94rem;
  font-weight:780;
  line-height:1.25;
  text-decoration:none;
  box-shadow:var(--shadow-xs);
}
.related-links a:hover{
  border-color:rgba(11,93,86,.36);
  color:var(--accent-strong);
  box-shadow:var(--shadow-sm);
  transform:translateY(-1px);
}
.steps{
  counter-reset:editorial-step;
  display:grid;
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
}
.steps li{
  counter-increment:editorial-step;
  position:relative;
  min-height:54px;
  padding:15px 18px 15px 54px;
  border:1px solid rgba(15,23,42,.10);
  border-radius:18px;
  background:#fff;
  line-height:1.62;
  box-shadow:var(--shadow-xs);
}
.steps li::before{
  content:counter(editorial-step);
  position:absolute;
  left:16px;
  top:14px;
  display:grid;
  place-items:center;
  width:27px;
  height:27px;
  border-radius:50%;
  background:var(--accent-soft);
  color:var(--accent-strong);
  font-size:.82rem;
  font-weight:880;
  line-height:1;
}
.word-grid{
  align-items:stretch;
}

.faq-list details,
.faq details,
.faq-item{
  margin:0;
  padding:0 18px;
  border:1px solid rgba(15,23,42,.10);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--shadow-xs);
  overflow:hidden;
}
.faq-item + .faq-item{
  margin-top:12px;
}
.faq-list summary,
.faq summary,
.faq-item summary{
  cursor:pointer;
  padding:16px 0;
  color:var(--strong);
  font-weight:820;
  line-height:1.42;
}
.faq-list p,
.faq details p,
.faq-item p{
  margin:0;
  padding:0 0 16px;
  color:var(--muted);
  line-height:1.68;
}
.faq-list details[open],
.faq details[open],
.faq-item[open]{
  border-color:rgba(11,93,86,.28);
  box-shadow:var(--shadow-sm);
}

.page-section > :where(.context-grid,.context-list,.table-wrap,.table-scroll,.examples,.faq,.faq-list,.link-grid,.related-links,.grid,.note-box,.steps,.chips){
  margin-top:0;
  margin-bottom:0;
}
.page-section > p + :where(.context-grid,.context-list,.table-wrap,.table-scroll,.examples,.faq,.faq-list,.link-grid,.related-links,.grid,.note-box,.steps,.chips){
  margin-top:20px;
}
.page-section > :where(.context-grid,.context-list,.table-wrap,.table-scroll,.examples,.faq,.faq-list,.link-grid,.related-links,.grid,.note-box,.steps,.chips) + p{
  margin-top:18px;
}
.answer-box{
  margin-bottom:0;
}

@media (max-width:620px){
  main > .section-narrow{
    padding-top:18px;
  }
  .section{
    padding-block:38px;
  }
  .page-section{
    padding-block:30px;
  }
  .page-section:first-child{
    padding-top:16px;
  }
  .page-section:last-child{
    padding-bottom:16px;
  }
  .link-grid{
    grid-template-columns:1fr;
    gap:12px;
  }
  .context-list{
    gap:14px;
  }
  .related-links{
    gap:8px;
  }
  .related-links a{
    min-height:38px;
    padding-inline:12px;
    font-size:.91rem;
  }
  .faq-list details,
  .faq details,
  .faq-item{
    padding-inline:16px;
    border-radius:17px;
  }
  .faq-list summary,
  .faq summary,
  .faq-item summary{
    padding-block:15px;
  }
  .faq-list p,
  .faq details p,
  .faq-item p{
    padding-bottom:15px;
  }
  .steps li{
    padding:14px 16px 14px 50px;
    border-radius:17px;
  }
  .steps li::before{
    left:14px;
    top:13px;
  }
}

.content-layout > .word-panel:only-child{
  grid-column:1 / -1;
  width:100%;
  max-width:920px;
  margin-inline:auto;
  justify-self:center;
}


/* SEO/UX: direct semantic navigation and editorial transparency */
.synonym-chips{position:relative;display:flex;flex-wrap:wrap;gap:9px;margin:2px 0 18px;z-index:1}
.synonym-chip{display:inline-flex;align-items:center;min-height:38px;padding:7px 13px;border:1px solid rgba(11,93,86,.22);border-radius:999px;background:#fff;color:var(--accent-strong);font-size:.94rem;font-weight:790;line-height:1.25;text-decoration:none;box-shadow:var(--shadow-xs)}
a.synonym-chip:hover{border-color:rgba(11,93,86,.42);background:var(--accent-soft);color:var(--accent-deep)}
.editorial-note{margin:14px 0 0;color:var(--muted-2);font-size:.91rem;line-height:1.55}
.editorial-note a{font-weight:720}
.alphabet{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 28px}
.alphabet a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px;border:1px solid #b8d5d0;border-radius:10px;text-decoration:none;font-weight:800;background:#fff}
.alphabet a[aria-current="page"]{background:var(--accent-strong);color:#fff}
.crossword-fields{display:grid;grid-template-columns:2fr 1fr 2fr;gap:16px;margin-bottom:20px}
.crossword-fields label{display:block;margin-bottom:8px;font-weight:700}
.crossword-fields input{width:100%;min-width:0;min-height:48px;padding:10px;border:1px solid #8ba9a4;border-radius:10px;font:inherit}
.quick-context caption{padding:12px;text-align:left;font-weight:700}
.quick-context{padding-top:12px}
.analytics-consent{position:fixed;bottom:16px;left:16px;right:16px;max-width:650px;margin:auto;padding:20px;border:1px solid #8ba9a4;border-radius:16px;background:#fff;box-shadow:var(--shadow);z-index:1000}
.analytics-consent p{margin:0 0 14px;font-size:.95rem;line-height:1.5}
/* Reserve space before the observer or ad loader runs. */
.ad-placement{min-height:280px;transition:none}
@media(max-width:680px){.ad-placement{min-height:250px}.crossword-fields{grid-template-columns:1fr}}
@media(min-width:901px){.main-nav a{padding-inline:10px;font-size:.91rem}}
@media (max-width:620px){.synonym-chips{gap:7px}.synonym-chip{min-height:36px;padding:6px 11px;font-size:.89rem}.editorial-note{font-size:.88rem}}
