/* Silver Eggs v6.4.39 - frontend typography, spacing and navigation polish. */
/* Deliberately scoped to public-facing components; no admin/checkout business logic. */
:root { --se639-focus: #e6b800; }
.navlinks a.se639-current { color:#151b25; font-weight:850; }
.navlinks a.se639-current::after { width:100%; background:#e3b800; height:3px; }
.bottom-nav a.se639-current { color:#ffe34b; font-weight:800; }
.bottom-nav a.se639-current b { color:#ffe34b; }
.footer { padding-top:56px; padding-bottom:70px; }
.footer-grid { column-gap:clamp(20px,3vw,48px); row-gap:27px; align-items:start; }
.footer .brand img { max-height:62px; object-fit:contain; }
.footer p { font-size:14px; line-height:1.7; color:#bdc7d3; max-width:410px; }
.footer p strong { color:#f2f5f9; font-weight:700; }
.footer p a { color:#f2f5f9; text-decoration:none; }
.footer p a:hover { text-decoration:underline; }
.footer h4 { font-size:12px; letter-spacing:1px; margin:4px 0 12px; }
.footer-grid>div:not(:first-child) a { font-size:13px; line-height:1.45; color:#d7e0eb; padding:7px 0; }
.footer-grid>div:not(:first-child) a:hover, .footer-grid>div:not(:first-child) a.se639-current { color:#ffdc36; text-decoration:underline; text-underline-offset:4px; }
.footer-consumer-links { display:flex; flex-wrap:wrap; gap:9px 15px; margin:18px 0; font-size:13px; }
.footer-consumer-links a { font-size:13px; color:#eef3fa!important; font-weight:650; white-space:normal; }
.footer-consumer-links a:hover,.footer-consumer-links a.se639-current { color:#ffe047!important; text-decoration:underline; text-underline-offset:4px; }
.footer-consumer-links span { display:none; }
.copyright { margin-top:34px; padding-top:19px; font-size:12px; color:#acb8c6; line-height:1.6; }
.copyright a { color:#d9e3ef; text-decoration:underline; text-underline-offset:3px; }
.footer-install { min-height:40px; font-size:13px; }
.storefront-pause .container { padding-top:10px; padding-bottom:10px; }
.storefront-pause { font-size:13px; line-height:1.6; }
.storefront-pause span { display:block; }
.storefront-pause .ui-icon { display:inline-block; vertical-align:middle; margin-right:7px; }
.storefront-pause strong { margin-right:5px; }
.consumer-hero-copy > p { max-width:630px; line-height:1.7; }
.consumer-hero h1 { font-size:clamp(42px,5.1vw,75px); line-height:1.03; letter-spacing:-.052em; }
.hero-shop-chip strong { font-size:13px; }
/* Space around the locator and reseller journey, without changing form structure. */
.store-hero { padding:54px 0 64px; }
.store-hero + .section { padding-top:58px; }
.store-search { margin-top:25px; }
.outlet-card { gap:14px; padding:20px; }
.outlet-card p { line-height:1.6; }
.outlet-products { line-height:1.5; }
.outlet-actions { gap:9px!important; margin-top:auto!important; padding-top:12px; }
.outlet-actions a { min-height:40px!important; font-size:12px!important; padding:0 13px!important; }
.reseller-hero { padding:56px 0 72px; }
.reseller-hero .reseller-form { padding:clamp(20px,3vw,34px); }
.reseller-hero .reseller-form .form-grid { row-gap:18px; column-gap:18px; }
.reseller-hero .reseller-form .field label { margin-bottom:7px; }
.reseller-hero .reseller-form button.full-btn { margin-top:20px; }
/* Keep image captions legible and visually attached to each image. */
.gallery figure { border:1px solid #e4e7eb; box-shadow:0 12px 25px rgba(17,24,39,.06); min-height:0; display:flex; flex-direction:column; }
.gallery img { height:210px; flex:1 0 210px; object-fit:cover; }
.gallery figcaption { position:static; border-radius:0; min-height:56px; background:#fff; color:#17202c; font-size:13px; font-weight:750; padding:14px 16px; line-height:1.4; }
/* Eliminate excessive blank space on shorter editorial/static pages. */
.article-section { padding-bottom:38px; }
.article-related { margin-top:28px; }
.page-hero + .section { padding-top:48px; padding-bottom:56px; }
/* Friendly standalone not-found card. */
.se639-notfound { width:min(620px,100%); margin:8px auto 38px; padding:clamp(25px,5vw,54px); border:1px solid #e4e7eb; border-radius:24px; background:#fff; box-shadow:0 16px 45px rgba(17,24,39,.05); text-align:center; }
.se639-notfound-icon { display:inline-grid; place-items:center; width:68px; height:68px; margin-bottom:14px; border-radius:18px; background:#fff6cf; color:#6d5600; }
.se639-notfound-icon svg { width:30px; height:30px; }
.se639-notfound h2 { font-size:clamp(27px,4vw,39px); letter-spacing:-.035em; line-height:1.12; margin:12px 0; }
.se639-notfound p { color:#5a6472; font-size:15px; max-width:420px; margin:0 auto 23px; line-height:1.6; }
.se639-notfound-actions { display:flex; justify-content:center; flex-wrap:wrap; gap:10px; }
/* Referral tools */
.se639-copy-actions { display:flex; flex-wrap:wrap; gap:10px; margin:8px 0; }
.se639-copy-btn { background:#152032; color:#fff; border:1px solid #152032; border-radius:9px; padding:11px 15px; min-height:42px; cursor:pointer; font:inherit; font-size:13px; font-weight:750; }
.se639-copy-btn:hover,.se639-copy-btn:focus-visible { background:#26374c; outline-offset:3px; }
.se639-copy-status { display:block; min-height:21px; font-size:12px; color:#286536; }
/* Main public links must have visible keyboard focus */
.navlinks a:focus-visible, .footer a:focus-visible, .se639-copy-btn:focus-visible { outline:3px solid #f3cc22; outline-offset:4px; border-radius:3px; }
@media(max-width:1050px) { .footer-grid { gap:26px; } }
@media(max-width:760px) {
  .consumer-hero h1 { font-size:clamp(38px,9vw,54px); letter-spacing:-.04em; line-height:1.06; }
  .footer { padding-top:39px; padding-bottom:calc(125px + env(safe-area-inset-bottom)); }
  .footer p { font-size:14px!important; }
  .footer-grid>div:not(:first-child) a { font-size:13px!important; }
  .footer-consumer-links a { font-size:13px; }
  .store-hero { padding:38px 0 52px; }
  .store-hero + .section { padding-top:45px; }
  .reseller-hero { padding:38px 0 52px; }
  .gallery img { height:200px; flex-basis:200px; }
}
@media(max-width:470px) {
  .footer-grid { column-gap:18px; row-gap:24px; }
  .footer-consumer-links { column-gap:12px; row-gap:11px; }
  .storefront-pause .container { align-items:flex-start; }
  .se639-notfound-actions .btn { width:100%; }
  .se639-copy-btn { flex:1; }
}
