:root{
  --ec-green:#2f5233;
  --ec-green-2:#3f6b45;
  --ec-earth:#6b4f2a;
}
body{font-family:'Inter',system-ui,sans-serif;color:#1f2429;}
h1,h2,h3,h4,h5,.ec-h1,.navbar-brand{font-family:'Roboto Slab',Georgia,serif;}

.ec-navbar{background:var(--ec-green)!important;}
.ec-navbar .navbar-brand{letter-spacing:.3px;}
.ec-footer{background:#20271f;}

a{color:var(--ec-green-2);}
a:hover{color:var(--ec-green);}
.btn-success{--bs-btn-bg:var(--ec-green);--bs-btn-border-color:var(--ec-green);--bs-btn-hover-bg:var(--ec-green-2);--bs-btn-hover-border-color:var(--ec-green-2);}
.border-success{border-color:var(--ec-green)!important;}
.text-success{color:var(--ec-green-2)!important;}

/* Skip link */
.ec-skip-link{position:absolute;left:-999px;top:0;background:#fff;padding:.5rem 1rem;z-index:2000;}
.ec-skip-link:focus{left:.5rem;top:.5rem;}

/* Hero */
.ec-hero{background:linear-gradient(135deg,var(--ec-green) 0%,var(--ec-green-2) 60%,var(--ec-earth) 140%);}

/* Cards */
.ec-cat-card{transition:transform .12s ease,box-shadow .12s ease;color:inherit;border-color:#e4e7e4;}
.ec-cat-card:hover{transform:translateY(-2px);box-shadow:0 .5rem 1rem rgba(0,0,0,.08);border-color:var(--ec-green-2);}
.ec-cat-card .card-title{color:var(--ec-green);}

.ec-cat-jump a:hover{background:var(--ec-green)!important;color:#fff!important;}

.ec-sidebar-sticky{position:sticky;top:5rem;}

/* Legacy content */
.legacy-content img{max-width:100%;height:auto;border-radius:.375rem;margin:.5rem 0;}
.legacy-content table{max-width:100%;}
.legacy-content h2,.legacy-content h3{font-size:1.15rem;margin-top:1.25rem;}

/* Honeypot */
.ec-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}

/* Card images (catalogue / search / home) */
.ec-card-img{aspect-ratio:16/9;overflow:hidden;border-top-left-radius:.375rem;border-top-right-radius:.375rem;background:#eef1ee;}
.ec-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .2s ease;}
.ec-cat-card:hover .ec-card-img img{transform:scale(1.04);}

/* Catalogue page hero image */
.ec-hero-img{width:100%;max-height:420px;object-fit:cover;box-shadow:0 .25rem .75rem rgba(0,0,0,.08);}
/* Generated banner: native 3:1, never cropped/upscaled into blur */
.ec-hero-banner{width:100%;height:auto;display:block;box-shadow:0 .25rem .75rem rgba(0,0,0,.08);}

/* Amazon pick card thumbnail — contain so small photos aren't stretched */
.ec-pick-thumb{height:140px;background:#fff;border-bottom:1px solid #ffe7a3;border-top-left-radius:.375rem;border-top-right-radius:.375rem;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.ec-pick-thumb img{max-width:100%;max-height:140px;object-fit:contain;}
/* Icon tile when no per-item image */
.ec-pick-icon{height:84px;background:linear-gradient(135deg,#fff7e0,#ffe7a3);border-top-left-radius:.375rem;border-top-right-radius:.375rem;display:flex;align-items:center;justify-content:center;}
.ec-pick-icon i{font-size:2.4rem;color:#b8860b;}

/* Amazon affiliate box */
.ec-amazon{background:#fffdf6;}
.ec-amazon .btn-warning,.ec-amazon-pick .btn-warning{--bs-btn-bg:#ffb300;--bs-btn-border-color:#ffb300;--bs-btn-hover-bg:#ffa000;--bs-btn-hover-border-color:#ffa000;}

/* Amazon curated picks */
.ec-amazon-pick{background:#fffdf6;border-color:#ffe7a3;color:inherit;transition:transform .12s ease,box-shadow .12s ease;}
.ec-amazon-pick:hover{transform:translateY(-2px);box-shadow:0 .5rem 1rem rgba(0,0,0,.08);border-color:#ffb300;}

/* Ads — collapse unfilled units so empty slots don't leave gaps */
.ec-ad{margin:1.25rem 0;text-align:center;}
.ec-ad-placeholder{min-height:0;}
.ec-ad ins[data-ad-status="unfilled"]{display:none!important;}
