:root{--cream:#f7f0e3;--paper:#fffdf8;--petrol:#173f4f;--petrol-2:#24576a;--terracotta:#c65f3d;--ochre:#d7a43b;--green:#648267;--ink:#243238;--muted:#6b7477;--line:#ded4c4;--danger:#a5362c;--shadow:0 10px 28px rgba(36,50,56,.09);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream)}
*{box-sizing:border-box}
body{margin:0;background:var(--cream);line-height:1.5}
a{color:var(--petrol);text-decoration:none}
a:hover{text-decoration:underline}
button,input,select,textarea{font:inherit}
button,.button{border:0;border-radius:.75rem;background:var(--terracotta);color:white;font-weight:800;padding:.82rem 1rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:46px}
.button:hover,button:hover{text-decoration:none;filter:brightness(.96)}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:1rem;top:1rem;background:white;padding:.75rem;z-index:10}
.site-header{min-height:68px;padding:.65rem max(1rem,calc((100% - 1120px)/2));display:flex;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.brand{display:flex;align-items:center;gap:.6rem;font-weight:900;font-family:Georgia,serif;font-size:1.18rem;color:var(--petrol)}
.brand-board{display:grid;place-items:center;width:38px;height:32px;border:3px solid var(--terracotta);border-radius:4px;color:var(--ochre);background:#f5dca8}
.site-header nav{display:flex;gap:1rem;align-items:center;font-weight:700}
.nav-toggle{display:none;background:transparent;color:var(--petrol);padding:.5rem}
main{width:min(1120px,calc(100% - 2rem));margin:auto;padding-bottom:4rem}
.hero{text-align:center;padding:4.3rem 0 2.5rem}
.eyebrow{text-transform:uppercase;letter-spacing:.11em;color:var(--terracotta);font-size:.77rem;font-weight:900;margin:0 0 .35rem}
.hero h1{font:900 clamp(2.15rem,6vw,4.2rem)/1.03 Georgia,serif;color:var(--petrol);margin:.25rem auto .8rem;max-width:780px}
.hero>p:not(.eyebrow){font-size:1.15rem;color:var(--muted);margin:0 auto 1.5rem}
.location-search{max-width:760px;margin:1.5rem auto;background:var(--paper);padding:1rem;border:1px solid var(--line);border-radius:1rem;box-shadow:var(--shadow);text-align:left}
.location-search label{display:block;font-weight:850;margin:0 0 .45rem}
.search-row{display:flex;gap:.55rem}
.search-row input{flex:1;min-width:0;border:1px solid #b9b0a3;border-radius:.7rem;padding:.84rem}
.location-button{background:transparent;color:var(--petrol);padding:.45rem .2rem;min-height:auto;margin-top:.35rem}
.primary-actions{display:flex;gap:.75rem;justify-content:center;margin-top:1rem}
.primary-actions .button{min-width:210px}
.button.seek,.tag.seek{background:var(--petrol)}
.category-section,main>section:not(.hero){margin-top:2rem}
.section-heading{display:flex;justify-content:space-between;gap:1rem;align-items:end;margin-bottom:1rem}
.section-heading h2,.how h2{font:800 1.8rem/1.1 Georgia,serif;color:var(--petrol);margin:.15rem 0}
.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem}
.category-card{background:var(--paper);border:1px solid var(--line);border-radius:1rem;padding:1rem .65rem;min-height:118px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.6rem;box-shadow:0 4px 14px rgba(36,50,56,.05)}
.category-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);text-decoration:none}
.category-icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#f1d49b;color:var(--petrol);font-size:1.5rem}
.category-icon:after{content:'•'}
.icon-home:after{content:'⌂'}
.icon-tools:after{content:'⚒'}
.icon-sparkles:after{content:'✦'}
.icon-leaf:after{content:'♧'}
.icon-van:after{content:'▰'}
.icon-car:after{content:'●'}
.icon-heart:after{content:'♥'}
.icon-book:after{content:'▤'}
.icon-paw:after{content:'♣'}
.icon-wellness:after{content:'✿'}
.icon-device:after{content:'▣'}
.icon-party:after{content:'◆'}
.icon-briefcase:after{content:'▰'}
.icon-key:after{content:'⚿'}
.icon-more:after{content:'•••';font-size:1rem}
.ad-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.ad-card{background:var(--paper);border:1px solid var(--line);border-radius:1rem;overflow:hidden;box-shadow:0 4px 14px rgba(36,50,56,.05)}
.ad-image{display:block;aspect-ratio:4/3;background:#e8dcc9}
.ad-image img{width:100%;height:100%;object-fit:cover}
.auto-image{height:100%;display:grid;place-items:center;font:900 4rem Georgia,serif;color:var(--petrol);background:linear-gradient(135deg,#efd59e,#d8b675)}
.ad-body{padding:.9rem}
.tag{display:inline-flex;border-radius:999px;padding:.2rem .48rem;font-size:.7rem;font-weight:900;background:var(--terracotta);color:white}
.ad-card h3{margin:.55rem 0 .25rem;line-height:1.2}
.meta{font-size:.86rem;color:var(--muted);margin:.25rem 0}
.price{font-weight:900;margin:.4rem 0}
.empty{background:var(--paper);border:1px dashed #b9aa93;border-radius:1rem;padding:2rem;text-align:center}
.location-results{max-width:760px;margin:1rem auto;text-align:left}
.location-results ul{list-style:none;padding:0;display:grid;gap:.45rem}
.location-results a{display:flex;justify-content:space-between;background:var(--paper);border:1px solid var(--line);padding:.7rem;border-radius:.6rem}
.location-results span{color:var(--muted)}
.how{background:var(--petrol);color:white;border-radius:1.25rem;padding:2rem}
.how h2{color:white}
.how ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;counter-reset:steps}
.how li{counter-increment:steps;display:grid;grid-template-columns:auto 1fr;gap:.2rem .7rem}
.how li:before{content:counter(steps);grid-row:1/3;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ochre);color:var(--petrol);font-weight:900}
.how span{color:#dce7e9;font-size:.9rem}
footer{background:#102f3b;color:#dbe4e5;padding:2rem max(1rem,calc((100% - 1120px)/2))}
footer strong{font-family:Georgia,serif;font-size:1.15rem}
footer p{margin:.45rem 0}
footer nav{display:flex;gap:1rem;flex-wrap:wrap}
footer a{color:white}
.flash{width:min(1120px,calc(100% - 2rem));margin:1rem auto;padding:.8rem;border-radius:.7rem;background:#e2f0e3;color:#244d2a}
.flash.error{background:#f8dfda;color:var(--danger)}

@media(max-width:800px){.site-header nav{display:none;position:absolute;left:0;right:0;top:68px;background:var(--paper);padding:1rem;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}
.site-header nav.open{display:flex}
.nav-toggle{display:inline-flex}
.hero{padding-top:2.4rem}
.category-grid{grid-template-columns:repeat(3,1fr)}
.ad-grid{grid-template-columns:repeat(2,1fr)}
.how ol{grid-template-columns:1fr}
}

@media(max-width:520px){main{width:min(100% - 1rem,1120px)}
.search-row{flex-direction:column}
.primary-actions{flex-direction:column}
.primary-actions .button{width:100%}
.category-grid{grid-template-columns:repeat(2,1fr)}
.category-card{min-height:105px;padding:.75rem .45rem}
.ad-grid{gap:.6rem}
.ad-body{padding:.7rem}
.ad-card h3{font-size:.98rem}
.site-header{padding-inline:.75rem}
.brand{font-size:1.02rem}
}

.board-heading{padding:2.2rem 0 1rem}
.board-heading h1{font:900 clamp(2rem,5vw,3.3rem)/1.05 Georgia,serif;color:var(--petrol);margin:.2rem 0}
.service-search,.filters,.share-box{background:var(--paper);border:1px solid var(--line);border-radius:1rem;padding:1rem;box-shadow:0 4px 14px rgba(36,50,56,.05)}
.service-search label{display:block;font-weight:850;margin-bottom:.45rem}
.intent-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;margin:1rem 0}
.intent-tabs a{text-align:center;padding:.7rem;border:1px solid var(--petrol);border-radius:.7rem;font-weight:800}
.intent-tabs a.active{background:var(--petrol);color:white}
.board-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0}
.secondary{background:var(--paper);color:var(--petrol);border:1px solid var(--petrol)}
.primary-actions.compact{margin:0}
.primary-actions.compact .button{min-width:auto}
.filters{display:grid;grid-template-columns:2fr 1fr 1fr auto auto;gap:.6rem;margin-bottom:1rem}
.filters input,.filters select{border:1px solid #b9b0a3;border-radius:.65rem;padding:.7rem;min-width:0}
.compact-grid{grid-template-columns:repeat(8,1fr);margin:1rem 0}
.compact-grid .category-card{min-height:96px;font-size:.82rem;padding:.65rem .35rem}
.compact-grid .category-icon{width:36px;height:36px}
.board-grid{margin-top:1rem}
.board-grid h2{font-size:1.05rem;margin:.55rem 0 .25rem;line-height:1.2}
.rating{color:#9b6c00;font-weight:800;margin:.35rem 0}
.rating span{color:var(--muted);font-weight:500}
.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin:2rem}
.share-box{margin-top:2rem}
.whatsapp{background:#198754}
.category-strip{margin:0!important}
@media(max-width:900px){.compact-grid{grid-template-columns:repeat(5,1fr)}
.filters{grid-template-columns:1fr 1fr}
.filters input{grid-column:1/-1}
}
@media(max-width:600px){.intent-tabs{grid-template-columns:1fr}
.board-toolbar{align-items:stretch;flex-direction:column}
.primary-actions.compact{flex-direction:row}
.primary-actions.compact .button{width:auto;flex:1}
.compact-grid{grid-template-columns:repeat(3,1fr)}
}

/* Identidad visual definitiva */
:root{--cream:#fbf7ef;--paper:#fffefa;--petrol:#123f46;--petrol-2:#1d5962;--terracotta:#ed5a3a;--ochre:#e9ae3f;--green:#50765d;--ink:#203237;--muted:#667276;--line:#ddd7cc;--shadow:0 12px 30px rgba(18,63,70,.10)}
.brand-board{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;align-items:end;width:40px;height:34px;border:3px solid var(--terracotta);border-radius:5px;padding:5px;background:#ffe4a9;box-shadow:inset 0 0 0 2px rgba(255,255,255,.55)}
.brand-board i{display:block;background:var(--petrol);height:3px;border-radius:2px}.brand-board i:nth-child(1){grid-column:1/-1}.brand-board i:nth-child(2){grid-column:1/3}.brand-board i:nth-child(3){grid-column:1/-1}.category-icon{background:#ffd47d;box-shadow:inset 0 0 0 2px rgba(18,63,70,.08)}
.admin-link{color:var(--terracotta)!important}.filter-check{display:flex;align-items:center;gap:.45rem;font-weight:700;background:var(--paper);padding:.55rem;border-radius:.65rem}.filter-check input{width:auto}.optional-note,.privacy-help{color:var(--muted);font-size:.92rem}.forgot-link{margin:.15rem 0;text-align:right}.auth-register{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}.auth-register .button{padding:.6rem .8rem}.admin-title-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.admin-sections{display:flex;gap:.5rem;flex-wrap:wrap;position:sticky;top:72px;z-index:4;background:var(--cream);padding:.7rem 0}.admin-sections a{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:.5rem .8rem;font-weight:800}.admin-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.admin-tools article{background:var(--paper);border:1px solid var(--line);border-radius:1rem;padding:1rem}.admin-tools h3{margin-top:0;color:var(--petrol)}
@media(max-width:760px){.admin-title-row{align-items:flex-start;flex-direction:column}.admin-tools{grid-template-columns:1fr}.admin-sections{top:68px;overflow-x:auto;flex-wrap:nowrap}.admin-sections a{white-space:nowrap}.filters{grid-template-columns:1fr}.filters>*{grid-column:auto!important}}
