@font-face{font-family:Open Sans;src:url(../fonts/open-sans-400.woff) format("woff");font-weight:400;font-display:swap}
@font-face{font-family:Open Sans;src:url(../fonts/open-sans-600.woff) format("woff");font-weight:600;font-display:swap}
@font-face{font-family:Open Sans;src:url(../fonts/open-sans-700.woff) format("woff");font-weight:700;font-display:swap}
:root{color-scheme:light;--bg:#f6f6f0;--surface:#fff;--surface-soft:#f0f2ea;--text:#192921;--muted:#52645a;--border:#dfe4db;--strong-border:#adb9ad;--accent:#255643;--accent-hover:#173c2e;--button-text:#fff;--mark-ink:#ffefd0;--hero:#193a2f;--hero-border:#325347;--hero-text:#fff7e6;--hero-muted:#d2e0d2;--gold:#e1b579;--focus:#886129;--error:#932f30;--error-bg:#fdf0eb;--success:#265841;--mint:#e3efe5;--mint-ink:#315f4a;--sand:#f4ead8;--sand-ink:#735431;--blue:#e5edef;--blue-ink:#325765;--rose:#f2e7e3;--rose-ink:#754d48;--shadow:0 14px 40px #11271c1d;--max:1200px}
html[data-theme=dark]{color-scheme:dark;--bg:#141e1a;--surface:#1e2d26;--surface-soft:#25382e;--text:#f0f3ea;--muted:#bdccbf;--border:#3a4c42;--strong-border:#698071;--accent:#9bc9ab;--accent-hover:#b6d9c2;--button-text:#15291e;--mark-ink:#203a2d;--hero:#1a392f;--hero-border:#4a6b58;--focus:#e9bc80;--error:#ffbbb1;--error-bg:#402d29;--success:#abd7b5;--mint:#2c4838;--mint-ink:#bfdec7;--sand:#4b4131;--sand-ink:#f0d4a5;--blue:#2b4149;--blue-ink:#b6dae5;--rose:#493735;--rose-ink:#efc6be;--shadow:0 14px 40px #0005}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:400 15px/1.62 "Open Sans",system-ui,sans-serif}
a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--accent-hover)}
button,input,textarea,select{font:inherit;color:inherit}
button{cursor:pointer}
img{max-width:100%;height:auto}
svg{flex:none;vertical-align:middle}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3,h4{line-height:1.22;letter-spacing:-.025em}
h1{font-size:clamp(2.15rem,5.3vw,3.5rem);letter-spacing:-.055em}
h2{font-size:clamp(1.42rem,3vw,1.85rem)}
h3{font-size:1.05rem}
p,li,td,th,dd,summary,strong{overflow-wrap:anywhere}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
#main:focus{outline:none}
.wrap{width:min(calc(100% - 36px),var(--max));margin-inline:auto}
.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip:focus{position:fixed;z-index:99;top:10px;left:10px;background:var(--surface);padding:10px 16px;border-radius:6px}
.site-header{position:relative;z-index:5;background:var(--bg);border-bottom:1px solid var(--border)}
.head-inner{min-height:70px;display:flex;align-items:center;gap:clamp(14px,4vw,52px);position:relative}
.brand{display:inline-flex;align-items:center;gap:10px;flex:none;text-decoration:none;color:var(--text);font-weight:700;font-size:1.17rem;letter-spacing:-.045em}
.brand-mark{color:var(--accent)}
.logo-image{max-width:185px;max-height:48px;object-fit:contain}
.logo-dark,html[data-theme=dark] .logo-light{display:none}
html[data-theme=dark] .logo-dark{display:block}
.main-nav{display:flex;align-items:center;gap:21px}
.main-nav>a,.nav-disclosure>summary{min-height:44px;display:flex;align-items:center;gap:7px;text-decoration:none;color:var(--muted);font-weight:700;font-size:.89rem;border-radius:7px;padding:0 10px}
.main-nav>a:hover,.main-nav>a[aria-current],.nav-disclosure[open]>summary,.nav-disclosure>summary:hover{color:var(--accent);background:var(--surface-soft)}
summary{cursor:pointer}
summary::marker{content:""}
summary::-webkit-details-marker{display:none}
.nav-disclosure[open]>summary>svg:last-child,.menu-group[open]>summary>svg:last-child{transform:rotate(180deg)}
.mobile-label{display:none}
.head-actions{margin-left:auto}
.theme-switch{width:68px;height:36px;position:relative;display:flex;align-items:center;justify-content:space-around;border:1px solid var(--border);background:var(--surface-soft);color:var(--muted);border-radius:30px;padding:0 3px}
.theme-switch span:not(.theme-knob){position:relative}
.theme-knob{position:absolute;left:3px;top:3px;width:28px;height:28px;border-radius:50%;border:1px solid var(--border);background:var(--surface)}
.theme-switch[aria-checked=true] .theme-knob{transform:translateX(32px)}
.menu-panel{position:absolute;z-index:7;top:calc(100% - 3px);left:0;width:min(100%,900px);background:var(--surface);border:1px solid var(--border);border-radius:15px;padding:20px;box-shadow:var(--shadow);max-height:min(75vh,650px);overflow:auto;overscroll-behavior:contain}
.menu-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:13px}
.menu-title a,.menu-category,.menu-extra a{font-size:.82rem;font-weight:700;text-decoration:none}
.menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:15px}
.menu-group{border:1px solid var(--border);border-radius:9px;padding:7px;min-width:0}
.menu-group summary{display:flex;gap:6px;align-items:center;font-weight:700;line-height:1.25;font-size:.8rem;min-height:40px}
.menu-group summary>svg:last-child{margin-left:auto}
.menu-group .tile-icon{height:28px;width:28px;border-radius:6px}
.menu-links{display:grid;padding-top:3px}
.menu-links a{color:var(--text);text-decoration:none;padding:7px 6px;min-height:34px;border-radius:5px;font-size:.8rem}
.menu-links a:hover,.menu-links a[aria-current]{background:var(--surface-soft);color:var(--accent)}
.menu-links a.menu-category{color:var(--accent)}
.menu-extra{display:flex;flex-wrap:wrap;gap:12px;padding-top:16px}
.site-search{display:flex;position:relative;align-items:center;gap:9px;min-width:0;color:var(--text);background:var(--surface);border:1px solid var(--strong-border);border-radius:9px;padding:5px 5px 5px 12px;max-width:590px}
.site-search>svg{color:var(--muted)}
.site-search input{width:100%;min-width:0;height:38px;background:none;border:0;padding:0 2px;color:var(--text)}
.site-search input:focus{outline:none}
.site-search:focus-within{outline:2px solid var(--focus);outline-offset:2px}
.site-search button,.button{background:var(--accent);color:var(--button-text);border:1px solid transparent;border-radius:7px;font-weight:700;font-size:.87rem;padding:9px 14px;min-height:42px;display:inline-flex;gap:7px;align-items:center;justify-content:center;text-decoration:none;line-height:1.3}
.site-search button{min-height:38px;padding-inline:14px}
.site-search button:hover,.button:hover{color:var(--button-text);background:var(--accent-hover)}
.search-results{position:absolute;z-index:12;top:calc(100% + 6px);left:0;right:0;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:9px;box-shadow:var(--shadow)}
.search-results a{display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--text);text-decoration:none;border-radius:5px;padding:7px 9px;min-height:39px}
.search-results a:hover,.search-results a:focus{background:var(--surface-soft)}
.search-results a small{color:var(--muted);font-size:.74rem;text-align:right}
.search-results p{color:var(--muted);padding:8px 10px;font-size:.86rem}
.menu-panel .site-search{max-width:none}
.menu-panel .search-results{position:static;flex-basis:100%;box-shadow:none}
.menu-panel .site-search{flex-wrap:wrap}
.menu-panel .site-search input{flex:1}
.home{padding-block:32px 58px}
.hero{position:relative;display:grid;grid-template-columns:1.16fr .84fr;align-items:center;border:1px solid var(--hero-border);border-radius:19px;background:var(--hero);color:var(--hero-text);padding:clamp(26px,3.4vw,48px) clamp(26px,4.45vw,61px);min-height:365px;isolation:isolate}
.hero-copy{position:relative;z-index:2;min-width:0}
.hero h1{font-size:clamp(2.3rem,5.3vw,4.15rem);line-height:1.02}
.hero-period{color:var(--gold)}
.hero h1+p{margin:15px 0 23px;max-width:440px;color:var(--hero-muted);font-size:clamp(.95rem,1.6vw,1.07rem)}
.hero .site-search{border-color:var(--surface);max-width:500px}
.hero .site-search button{background:#295140;color:#fff}
.hero .site-search button:hover{background:#19382b}
.hero-art{position:absolute;inset:0 2.7% 0 auto;width:43%;display:grid;place-items:center;pointer-events:none}
.hero-art img{max-height:100%;object-fit:contain}
.hero-quick{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:9px}
.hero-quick a{display:inline-flex;align-items:center;gap:4px;min-height:34px;font-size:.79rem;font-weight:700;color:var(--hero-muted);text-decoration:none}
.hero-quick a:hover{color:var(--hero-text);text-decoration:underline}
.home-section{margin-top:clamp(35px,5.1vw,65px)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:17px}
.section-head p,.page-heading p{color:var(--muted);margin-top:6px}
.section-link{display:inline-flex;align-items:center;gap:7px;min-height:42px;flex:none;text-decoration:none;font-weight:700;font-size:.89rem}
.tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tool-grid>div .tool-card{height:100%}
.tool-card{display:flex;align-items:flex-start;gap:13px;min-height:108px;padding:17px;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--text);text-decoration:none}
.tool-card:hover,.category-card:hover{border-color:var(--strong-border);color:var(--text);background:var(--surface-soft)}
.tile-icon{width:41px;height:41px;display:inline-grid;place-items:center;flex:none;border-radius:9px;background:var(--mint);color:var(--mint-ink)}
.tile-icon.sand{background:var(--sand);color:var(--sand-ink)}.tile-icon.blue{background:var(--blue);color:var(--blue-ink)}.tile-icon.rose{background:var(--rose);color:var(--rose-ink)}
.card-copy{display:grid;gap:4px;min-width:0;line-height:1.38}
.card-copy strong{font-size:.95rem}
.card-copy>span,.category-card>span:not(.tile-icon){font-size:.83rem;color:var(--muted)}
.card-arrow{margin-left:auto;color:var(--accent);padding-top:2px}
.category-grid,.directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.category-card{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:start;background:var(--surface);color:var(--text);text-decoration:none;border:1px solid var(--border);border-radius:11px;padding:16px}
.category-card>strong,.category-card>span:nth-last-child(2){grid-column:1/-1}
.category-card>svg{grid-column:2;color:var(--accent);margin-top:3px}
.category-count{padding:3px 0}
.directory>section{border-top:1px solid var(--strong-border);min-width:0}
.directory h3{padding:12px 0 5px;color:var(--accent)}
.directory ul{margin:4px 0 0;padding:0;list-style:none}
.directory a{display:flex;justify-content:space-between;gap:6px;align-items:center;color:var(--text);min-height:43px;padding:5px 2px;text-decoration:none;border-bottom:1px solid var(--border);font-size:.86rem}
.directory a:hover{text-decoration:underline}
.privacy-strip{margin-top:45px;display:flex;align-items:center;gap:12px;background:var(--surface-soft);border:1px solid var(--border);border-radius:9px;padding:12px 15px;color:var(--muted);font-size:.85rem}
.privacy-strip>a{margin-left:auto;white-space:nowrap}
.site-footer{border-top:1px solid var(--border);padding:31px 0 38px}
.footer-inner{display:grid;grid-template-columns:1.2fr 1.3fr .7fr;gap:25px;font-size:.86rem}
.footer-inner p{color:var(--muted);margin-top:8px}
.footer-inner nav{display:flex;flex-wrap:wrap;align-content:start;gap:4px 14px}
.footer-inner nav a{display:inline-flex;gap:5px;align-items:center;min-height:33px;color:var(--muted);text-decoration:none}
.footer-inner nav a:hover{text-decoration:underline}
.internal{padding-block:21px 58px;min-height:55vh}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0 0 18px;padding:0;font-size:.79rem;color:var(--muted)}
.breadcrumbs li{display:flex;align-items:center;gap:6px}
.breadcrumbs a{color:var(--muted)}
.page-heading{margin-bottom:23px;padding:18px 0 3px}
.page-heading .tile-icon{margin-bottom:10px}
.page-heading .site-search{margin-top:16px}
.page-heading .button{margin-top:13px}
.eyebrow{font-weight:700;color:var(--accent)}
.category-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 17px}
.category-tabs a{display:inline-flex;min-height:39px;align-items:center;gap:6px;text-decoration:none;font-weight:700;font-size:.82rem;padding:6px 11px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--muted)}
.category-tabs a:hover,.category-tabs a.selected{background:var(--surface-soft);border-color:var(--strong-border);color:var(--accent)}
.filter-feedback{color:var(--muted);margin-bottom:10px}
.prose{max-width:820px}
.prose h2,.tool-guide h2{margin:20px 0 7px}
.prose p,.tool-guide p{margin:0 0 11px;color:var(--muted)}
.prose dd{margin:0 0 10px}
.prose dt{font-weight:700}
.ad-unit{margin:35px 0;min-height:106px;background:var(--surface-soft);border-radius:9px;overflow:hidden;text-align:center;padding:7px}
.ad-unit::before{content:"Publicidad";color:var(--muted);font-size:.68rem;display:block;margin:0 0 3px}
@media(min-width:701px){.ad-unit[data-desktop="0"]{display:none}}
@media(max-width:700px){.ad-unit[data-mobile="0"]{display:none}}
@media(max-width:960px){.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:1.35fr .65fr}.hero-art{width:37%;right:1%}}
@media(max-width:700px){
 .wrap{width:calc(100% - 28px)}.head-inner{min-height:62px;gap:8px}.brand{font-size:1.04rem;gap:7px}.brand-mark{width:30px;height:30px}.main-nav{margin-left:auto}.head-actions{margin-left:0}.main-nav .home-link,.desktop-label{display:none}.mobile-label{display:inline-flex;align-items:center;gap:5px}.nav-disclosure>summary{padding-inline:7px;font-size:.83rem}.theme-switch{width:63px}.theme-switch[aria-checked=true] .theme-knob{transform:translateX(27px)}
 .menu-panel{top:100%;padding:12px;max-height:75dvh}.menu-grid{grid-template-columns:1fr;gap:7px;margin-top:10px}.menu-group summary{font-size:.87rem;min-height:44px}.menu-links a{min-height:42px;padding:9px}.menu-title{font-size:.9rem}
 .home{padding-top:16px}.hero{display:block;min-height:0;padding:24px 19px;border-radius:13px}.hero-copy{width:100%}.hero-art{width:38%;opacity:.42;right:1%;height:58%;top:0}.hero h1{max-width:390px}.hero h1+p{max-width:400px;margin:13px 0 17px}.hero .site-search{max-width:none}.hero-quick{gap:2px 11px}.hero-quick a{font-size:.75rem}
 .section-head{align-items:start}.section-link{font-size:.8rem}.category-grid,.directory{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-inner{grid-template-columns:1fr;gap:16px}.privacy-strip{flex-wrap:wrap}.privacy-strip p{flex:1;min-width:200px}
 .internal{padding-block:15px 38px}.breadcrumbs ol{margin-bottom:8px}
}
@media(max-width:460px){.tool-grid{grid-template-columns:1fr}.tool-card{min-height:87px;padding:13px}.hero-art{display:none}.hero h1{font-size:2.28rem}.hero-break{display:none}.section-head{flex-wrap:wrap;gap:0}.section-link{min-height:33px}.category-card{padding:12px}.category-card>strong{font-size:.9rem}.category-card>span:not(.tile-icon){font-size:.75rem}.site-search input{font-size:1rem}.site-search button{padding-inline:9px}.search-results a{font-size:.83rem}.search-results a small{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.site-header,.site-footer,.breadcrumbs,.ad-unit{display:none!important}body{background:white;color:#111}}
