/* Editorial Hub base styles. Themes can override every colour through the --eh-* variables. */
:root{--eh-ink:#31544b;--eh-on-ink:#fff;--eh-line:#dce7df;--eh-line-strong:#a9c2b5;--eh-soft:#f1f6ef;--eh-card:#fffdf8}
.eh-card{border-radius:12px;overflow:hidden;box-shadow:0 8px 24px rgba(49,84,75,.06)}
.eh-badge{border-radius:999px;background:#edf5ee}
.eh-btn,.eh-copy,.eh-newsletter-form button,.eh-more{border-radius:8px}
.eh-coupon{border-radius:12px;background:#fffdf8}
.eh-grid{display:grid;gap:28px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.eh-card{position:relative;display:flex;flex-direction:column;background:var(--eh-card,#fff);border:1px solid var(--eh-line,#e4e4e2)}
.eh-card-media{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--eh-soft,#efefed)}
.eh-card-media img{width:100%;height:100%;object-fit:cover;display:block}
.eh-card-ph{display:block;width:100%;height:100%}
.eh-card-body{padding:16px 18px 20px}
.eh-card-title{margin:.2em 0 .4em;font-size:1.1rem;line-height:1.25}
.eh-card-title a{color:inherit;text-decoration:none}
.eh-badges{margin:0 0 8px;display:flex;gap:6px;flex-wrap:wrap}
.eh-badge{font-size:.72rem;font-weight:600;padding:3px 8px;border:1px solid currentColor}
.eh-badge--verified{color:#14673a}.eh-badge--unverified{color:#6b6b6b}.eh-badge--soon{color:#8a5a00}.eh-badge--expired{color:#a12626}
.eh-price-now{font-size:1.2rem}.eh-price-was{color:#767676;margin-left:6px}.eh-off{font-weight:600;color:#14673a;margin-left:6px}
.eh-coupon{border:1px dashed var(--eh-line-strong,#9a9a96);padding:18px;background:var(--eh-card,#fff)}
.eh-coupon.is-expired{opacity:.7}
.eh-coupon-code{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.eh-coupon-code code{font-size:1.25rem;letter-spacing:.08em;padding:6px 12px;background:var(--eh-soft,#f1f1ef)}
.eh-copy,.eh-btn,.eh-newsletter-form button,.eh-more{cursor:pointer;display:inline-block;padding:11px 20px;border:1px solid var(--eh-ink,#111);background:var(--eh-ink,#111);color:var(--eh-on-ink,#fff);font:inherit;text-decoration:none;line-height:1.2}
.eh-copy.is-done{background:#14673a;border-color:#14673a}
.eh-btn:hover,.eh-copy:hover{opacity:.88}
.eh-verify{margin:10px 0 0;font-size:.85rem}.eh-verify--yes{color:#14673a}.eh-verify--no{color:#6b6b6b}
.eh-disclosure{font-size:.78rem;color:#767676;margin:10px 0 0}
.eh-stars{color:#111;letter-spacing:2px}.eh-star.is-empty{color:#c9c9c5}.eh-star.is-half{opacity:.6}
.eh-share{list-style:none;display:flex;gap:14px;flex-wrap:wrap;margin:0;padding:0}
.eh-share a,.eh-share button{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}
.eh-save{cursor:pointer;background:none;border:1px solid currentColor;padding:6px 12px;font:inherit;color:inherit}
.eh-save.is-saved{background:var(--eh-ink,#111);color:var(--eh-on-ink,#fff)}
.eh-newsletter-form .eh-nl-row{display:flex;gap:8px;flex-wrap:wrap}
.eh-newsletter-form input[type=email]{flex:1 1 220px;padding:12px 14px;border:1px solid var(--eh-line-strong,#9a9a96);font:inherit;background:#fff;color:#111}
.eh-nl-consent{display:flex;gap:8px;align-items:flex-start;font-size:.85rem;margin-top:10px}
.eh-nl-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.eh-nl-message{min-height:1.4em;margin:8px 0 0;font-size:.9rem}.eh-nl-message.is-ok{color:#14673a}.eh-nl-message.is-error{color:#b32d2e}
.eh-empty{padding:24px;border:1px dashed var(--eh-line-strong,#9a9a96);text-align:center}
.eh-live{position:absolute;z-index:50;left:0;right:0;top:100%;background:#fff;color:#111;border:1px solid #d6d6d2;box-shadow:0 12px 30px rgba(0,0,0,.12)}
.eh-live ul{list-style:none;margin:0;padding:6px 0}.eh-live a{display:block;padding:10px 16px;color:inherit;text-decoration:none}.eh-live a:hover,.eh-live a:focus{background:#f3f3f1}
.eh-live-type{font-size:.72rem;color:#767676;margin-left:8px}.eh-live-empty{padding:12px 16px;margin:0}
.eh-reviews{list-style:none;padding:0;margin:0;display:grid;gap:18px}.eh-review{border-top:1px solid var(--eh-line,#e4e4e2);padding-top:14px}
.eh-rating-input{border:0;padding:0;display:flex;flex-direction:row-reverse;justify-content:flex-end}
.eh-rating-input legend{float:none;width:100%;padding:0;margin-bottom:6px}
.eh-rating-input input{position:absolute;opacity:0}.eh-rating-input label{font-size:1.8rem;color:#c9c9c5;cursor:pointer;padding:0 2px}
.eh-rating-input input:checked ~ label,.eh-rating-input label:hover,.eh-rating-input label:hover ~ label{color:#111}
.eh-rating-input input:focus-visible + label{outline:2px solid currentColor}
.eh-review-form label{display:block;font-size:.9rem}.eh-review-form input[type=text],.eh-review-form textarea{width:100%;padding:10px;border:1px solid var(--eh-line-strong,#9a9a96);font:inherit}
.eh-trending{padding-left:1.2em}.eh-trending li{margin:.4em 0}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}

/* v1.1 — coordinated soft editorial palette */
:root{--eh-ink:#65578e;--eh-on-ink:#fff;--eh-line:#e7e2f0;--eh-line-strong:#d3cbe5;--eh-soft:#f5f2fb;--eh-card:#fff}
.eh-card{box-shadow:0 8px 26px rgba(75,62,112,.055);border-radius:16px}
.eh-badge{background:#f1edfb}
.eh-coupon{background:#fff;border-radius:16px}
.eh-copy,.eh-btn,.eh-newsletter-form button,.eh-more{background:#7664a8;border-color:#7664a8;border-radius:10px}
.eh-copy:hover,.eh-btn:hover{background:#5f518d;border-color:#5f518d;opacity:1}
.eh-save.is-saved{background:#7664a8;color:#fff}
.eh-live{border-color:#e7e2f0;border-radius:12px;overflow:hidden}
