/* Inner pages: listings, single pages, shop wrapper. Uses the homepage design tokens. */
.ec-wrap{max-width:var(--wrap);margin:0 auto;padding:clamp(48px,7vw,96px) var(--gutter)}
.ec-single{max-width:900px}
.ec-head{margin-bottom:clamp(28px,4vw,48px)}
.ec-head h1{font-size:clamp(36px,5.5vw,64px);margin:14px 0 12px;letter-spacing:-.01em}
.ec-intro{max-width:720px;color:var(--muted)}
.ec-lead{font-size:clamp(19px,2.4vw,24px);color:var(--muted);margin-bottom:24px}
.ec-hero-img{margin:0 0 32px;border-radius:var(--radius);overflow:hidden}
.ec-hero-img img{width:100%;height:auto}
.ec-single .entry>*+*{margin-top:1em}
.ec-facts{display:flex;gap:32px;list-style:none;margin:0 0 28px}
.ec-facts small{display:block;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.ec-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:clamp(18px,2.4vw,32px)}
.ec-card{background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.ec-card-img{display:block;aspect-ratio:4/3;background:var(--sand);overflow:hidden}
.ec-card-img img{width:100%;height:100%;object-fit:cover}
.ec-card-body{padding:22px 24px 26px}
.ec-card-tag{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.ec-card-title{font-size:26px;margin:8px 0 10px;line-height:1.15}
.ec-card-price{font-family:var(--serif);font-size:24px;color:var(--gold)}
.ec-card-price s{color:var(--muted);font-size:18px;margin-left:8px}
.ec-card-ex{color:var(--muted);font-size:15px}
.ec-pager{margin-top:48px;text-align:center}
.ec-pager .page-numbers{display:inline-block;min-width:40px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;margin:0 3px}
.ec-pager .current{background:var(--espresso);color:var(--ivory);border-color:var(--espresso)}
.ec-block{margin-top:clamp(36px,5vw,64px)}
.ec-block h2{font-size:clamp(28px,3.4vw,40px);margin:0 0 18px}
.ec-points,.ec-steps{list-style:none;display:grid;gap:16px;counter-reset:s}
.ec-points li,.ec-steps li{background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius-sm);padding:18px 22px}
.ec-points b,.ec-steps b{display:block;font-family:var(--serif);font-size:22px}
.ec-points span,.ec-steps span{color:var(--muted)}
.ec-steps li{counter-increment:s}
.ec-steps b::before{content:counter(s) ". ";color:var(--gold)}
.ec-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.ec-results figure>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.ec-results img,.ec-gallery img{border-radius:var(--radius-sm);width:100%;height:100%;object-fit:cover}
.ec-results figcaption{font-size:14px;color:var(--muted);margin-top:8px}
.ec-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.ec-video{aspect-ratio:16/9}.ec-video iframe,.ec-video video{width:100%;height:100%;border:0;border-radius:var(--radius)}
.ec-cta{display:flex;gap:12px;flex-wrap:wrap}
.ec-related{list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.ec-related a{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:8px 18px}
.faq details{border-bottom:1px solid var(--line);padding:14px 0}.faq summary{cursor:pointer;font-weight:500}.faq p{margin-top:8px;color:var(--muted)}
/* shop (WooCommerce) – base styling until the shop designs are applied */
.ec-shop .woocommerce-products-header__title,.ec-shop .product_title{font-size:clamp(34px,5vw,56px)}
.ec-shop ul.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px;list-style:none}
.ec-shop .button,.ec-shop button.button,.ec-shop .single_add_to_cart_button{background:var(--espresso);color:var(--ivory);border-radius:999px;padding:14px 26px;border:0;text-transform:uppercase;letter-spacing:.12em;font-size:13px}
.ec-shop .price{color:var(--gold);font-family:var(--serif);font-size:22px}
.ec-shop-closed{background:var(--sand);border-radius:var(--radius-sm);padding:14px 18px;margin-top:18px}
/* header: account + cart icons, mega-menu column headings as links */
.hicon{position:relative;display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;color:#fff}
.hicon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.ec-cart-count{position:absolute;top:2px;right:0;min-width:16px;height:16px;border-radius:8px;background:var(--espresso);color:#fff;font-size:10px;line-height:16px;text-align:center}
.mg-h a{color:inherit;text-decoration:none}
.news p a{color:inherit;text-decoration:none}
.news-all{margin-top:24px;text-align:center}
