
:root{--navy:#151b2d;--navy2:#202f50;--teal:#82cdd0;--teal-strong:#42b9c4;--ink:#14223a;--muted:#64748b;--line:#dce3ed;--bg:#f3f5f8;--white:#fff;--green:#279b58;--red:#d94a55}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a.btn{cursor:pointer}.wrap{width:min(1270px,calc(100% - 40px));margin:0 auto}
.utility{background:#fff;border-bottom:1px solid var(--line);font-size:11px;color:#293851}.utility .wrap{min-height:35px;display:flex;align-items:center;justify-content:space-between}.utility-links{display:flex;gap:24px}.utility-right{color:#53627a}
.header{background:#fff}.header-main{min-height:96px;display:flex;align-items:center;gap:28px}.brand{min-width:212px}.brand-name{font-size:30px;font-weight:900;letter-spacing:-1.4px;color:var(--ink);line-height:1.05}.brand-name .plus{color:var(--teal-strong)}.brand-tag{font-size:9px;font-weight:800;letter-spacing:2px;margin-top:5px;color:#607086}.search{height:44px;display:flex;flex:1;border:1px solid #d7deea;border-radius:10px;overflow:hidden;background:#f0f3f7}.search select{border:0;border-right:1px solid #d7deea;background:transparent;color:#40516b;padding:0 12px;max-width:145px}.search input{border:0;outline:0;background:transparent;flex:1;min-width:50px;padding:0 15px}.search button{width:48px;border:0;background:var(--navy);color:#fff;font-size:18px}.head-actions{display:flex;gap:18px;align-items:center}.head-action{min-width:40px;text-align:center;font-size:11px;color:#40516b}.head-action .symbol{display:block;font-size:21px;line-height:1.2;color:var(--navy);font-weight:700}.nav{background:var(--navy);color:#fff}.nav .wrap{min-height:46px;display:flex;align-items:center;flex-wrap:wrap;gap:4px 3px;padding:4px 0}.nav a{padding:10px 13px;font-size:11px;font-weight:800;white-space:nowrap;border-radius:4px;display:inline-flex;align-items:center}.nav a:hover{background:rgba(255,255,255,0.08)}.nav a:first-child{background:#263650}.nav .support{margin-left:auto;background:var(--teal);color:#10243a;padding-left:16px;padding-right:16px}
.breadcrumb{padding:20px 0 18px;font-size:12px;color:#68778d}.breadcrumb span{margin:0 9px;color:#a4afbd}.breadcrumb strong{color:#263750}
.btn{border:0;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 18px;font-size:12px;font-weight:800;min-height:43px}.btn-primary{background:var(--teal);color:#10243a}.btn-primary:hover{background:var(--teal-strong)}.btn-dark{background:var(--navy2);color:#fff}.btn-light{background:#fff;border:1px solid var(--line);color:var(--navy)}.muted{color:var(--muted)}
.footer{background:var(--navy);color:#e4ebf5;margin-top:36px;padding:28px 0}.footer .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer strong{font-size:19px}.footer small{color:#bac6d8}
.panel{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 5px 16px #1a29450a}.section-title{font-size:23px;letter-spacing:-.4px;margin:0;color:var(--navy)}.section-subtitle{margin:5px 0 18px;color:#718097;font-size:12px}
.form-control{width:100%;border:1px solid #ccd6e3;border-radius:7px;padding:12px 13px;background:#fff;outline-color:var(--teal-strong)}
@media(max-width:900px){.header-main{padding:17px 0;flex-wrap:wrap;gap:15px}.brand{min-width:0}.search{order:3;flex-basis:100%}.head-actions{margin-left:auto}.nav .wrap{overflow-x:auto}.nav .support{margin-left:0}.nav a{padding:14px 12px}.wrap{width:calc(100% - 30px)}}
@media(max-width:540px){.utility-links{gap:12px}.utility-right{display:none}.brand-name{font-size:27px}.head-actions{gap:8px}.head-action{font-size:10px}.nav .wrap{width:100%}.nav a{font-size:10px}.breadcrumb{padding:15px 0}.footer .wrap{align-items:flex-start;flex-direction:column}}

.brand-lockup{display:flex;align-items:center;gap:9px}.brand-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:var(--navy);color:#fff;font-weight:900;font-size:22px;letter-spacing:-1px;box-shadow:inset -5px 0 0 var(--teal-strong)}.brand-mark span{color:var(--teal)}.brand-lockup>span:last-child{display:flex;flex-direction:column}.brand-name{font-size:28px}.brand-tag{display:block;font-size:8px;letter-spacing:1.7px;margin-top:5px}.footer{padding:36px 0 18px}.footer-grid{display:grid!important;grid-template-columns:1.2fr .7fr .9fr 1.3fr;align-items:start!important;gap:28px!important}.footer-grid h3{font-size:13px;margin:0 0 12px;color:#fff}.footer-grid a{display:block;font-size:12px;color:#d5deeb;margin:9px 0}.footer-grid p{font-size:12px;line-height:1.7;color:#c0ccdc;margin:8px 0}.footer-brand strong{font-size:24px}.footer-brand strong span{color:var(--teal)}.footer-brand .footer-trust{display:inline-block;color:var(--teal);font-weight:700;margin-top:10px}.footer-bottom{border-top:1px solid #ffffff22;margin-top:26px;padding-top:15px;font-size:11px;color:#b9c6d8;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media(max-width:800px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:500px){.footer-grid{grid-template-columns:1fr!important}.brand-name{font-size:24px}}


/* Targeted stability patch: preserve the approved storefront design. */
.hero-copy{max-width:600px}
.trustpilot-panel{width:min(1270px,calc(100% - 40px));margin:0 auto 30px!important}
.footer{margin-top:0;background:#151b2d;color:#e4ebf5}
.footer-grid{width:min(1270px,calc(100% - 40px));margin:0 auto;display:grid!important;grid-template-columns:1.15fr .65fr .9fr 1.3fr;align-items:start!important;gap:30px!important}
.footer-grid>div{min-width:0}
.footer-grid a{line-height:1.55}
.footer-bottom{width:min(1270px,calc(100% - 40px));margin-left:auto!important;margin-right:auto!important}
@media(max-width:800px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important}}
@media(max-width:540px){.trustpilot-panel{width:calc(100% - 30px);padding:18px!important}.footer-grid{grid-template-columns:1fr!important;width:calc(100% - 30px)}.footer-bottom{width:calc(100% - 30px)}}

/* Footer alignment correction: use the shared site container, avoid nested narrow-width clipping. */
.footer>.wrap{display:block;width:min(1270px,calc(100% - 40px));margin:0 auto}
.footer .footer-grid{width:100%;margin:0;display:grid;grid-template-columns:minmax(220px,1.15fr) minmax(100px,.65fr) minmax(150px,.9fr) minmax(220px,1.3fr);gap:30px;align-items:start}
.footer .footer-bottom{width:100%;margin:26px 0 0}
@media(max-width:800px){.footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.footer>.wrap{width:calc(100% - 30px)}.footer .footer-grid{grid-template-columns:1fr}}

/* Header logo lockup stability */
.header-main{min-width:0}
.brand{display:block;flex:0 0 auto}
.brand-lockup{white-space:nowrap}
.brand-name{display:block;white-space:nowrap}
.brand-tag{white-space:nowrap}
@media(max-width:1100px){.header-main{gap:16px}.brand-name{font-size:25px}.brand-tag{letter-spacing:1.1px;font-size:7px}}
@media(max-width:540px){.brand-name{font-size:23px}.brand-tag{white-space:normal;max-width:180px}}


/* Homepage appearance aligned to the supplied index.html reference.
   Scoped to .home-page so cart, checkout, product and admin pages keep their existing styling. */
.home-page .home-hero{margin:24px 0 27px;min-height:327px;border-radius:19px;overflow:hidden;background:linear-gradient(105deg,#131a2a 0%,#19263b 57%,#284752 100%);position:relative;color:#fff;display:flex;align-items:center;padding:38px 42px}
.home-page .home-hero:before{content:"";position:absolute;width:470px;height:470px;border-radius:50%;border:40px solid #65c9d11b;right:11%;top:-142px;box-shadow:0 0 0 35px #65c9d111,0 0 0 75px #65c9d10b}
.home-page .home-hero:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:#65c9d10b;right:11%;top:-97px}
.home-page .home-hero-copy{max-width:600px;position:relative;z-index:1}
.home-page .home-eyebrow{font-size:11px;letter-spacing:3px;font-weight:900;color:#79d9df;margin-bottom:17px}
.home-page .home-hero h1{font-size:clamp(34px,3.5vw,46px);line-height:1.14;letter-spacing:-1.7px;margin:0 0 13px;font-weight:900;color:#fff}
.home-page .home-hero h1 span{color:var(--teal)}
.home-page .home-hero p{font-size:14px;line-height:1.75;margin:0;max-width:550px;color:#f1f4fa}
.home-page .home-buttons{display:flex;gap:9px;flex-wrap:wrap;margin-top:21px}
.home-page .home-buttons .btn-outline{border:1px solid #7b8798;color:#fff;background:#ffffff08}
.home-page .home-easy-order{position:absolute;z-index:2;right:8%;bottom:26px;border:1px solid #a6bdc54d;background:#ffffff0b;border-radius:13px;padding:15px 17px;font-size:11px;line-height:1.7;color:#fff}
.home-page .home-easy-order strong{font-size:15px;color:var(--teal)}
.home-page .home-features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:27px 0 36px}
.home-page .home-feature{background:#fff;border:1px solid var(--line);border-radius:13px;min-height:75px;padding:14px 16px;display:flex;align-items:center;gap:13px}
.home-page .home-feature-icon{width:40px;height:40px;flex-shrink:0;border-radius:11px;background:#e9f9fa;display:grid;place-items:center;font-size:20px;color:#2daeb7}
.home-page .home-feature strong{display:block;font-size:12px;margin-bottom:5px}
.home-page .home-feature small{display:block;color:#475569;font-size:11px}
.home-page .home-section{margin:0 0 36px;scroll-margin-top:20px}
.home-page .home-section-head{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:16px}
.home-page .home-section-head h2{font-size:21px;letter-spacing:-.5px;margin:0 0 7px;color:var(--ink)}
.home-page .home-section-head p{font-size:12px;color:#475569;margin:0}
.home-page .home-count{font-size:11px;font-weight:900;color:#0f766e;white-space:nowrap}
.home-page .home-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.home-page .home-product-card{background:#fff;border:1px solid #dfe3e9;border-radius:14px;overflow:hidden;min-width:0;box-shadow:0 2px 4px #10182805;transition:transform .18s,box-shadow .18s}
.home-page .home-product-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #10182812}
.home-page .home-product-art{height:205px;background:var(--product-art,#3d73cc);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;padding:18px;overflow:hidden}
.home-page .home-product-art:before{content:"";position:absolute;width:190px;height:190px;border:1px solid currentColor;opacity:.09;border-radius:50%;right:-75px;top:-85px}
.home-page .home-product-art:after{content:"";position:absolute;width:130px;height:130px;border:1px solid currentColor;opacity:.09;border-radius:50%;left:-65px;bottom:-75px}
.home-page .home-art-label{font-size:10px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase;position:relative;z-index:1}
.home-page .home-product-art strong{font-size:17px;font-weight:900;line-height:1.25;margin-top:10px;position:relative;z-index:1;max-width:100%;overflow-wrap:anywhere}
.home-page .home-art-icon{margin-top:13px;background:#fff;color:var(--product-art,#3d73cc);border-radius:17px;height:60px;width:60px;display:grid;place-items:center;font-size:29px;font-weight:900;position:relative;z-index:1;box-shadow:0 7px 20px #00000012;padding:6px;box-sizing:border-box;overflow:hidden;}
.home-page .home-product-body{padding:13px 13px 12px}
.home-page .home-product-name{display:block;font-size:13px;line-height:1.4;font-weight:800;min-height:36px;color:var(--ink)}
.home-page .home-product-body p{font-size:11px;color:#475569;line-height:1.5;min-height:31px;margin:8px 0}
.home-page .home-product-price{font-size:17px;font-weight:900;margin:12px 0 13px;color:var(--navy)}
.home-page .home-card-actions{display:flex;gap:7px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.home-page .home-card-actions form{margin:0}
.home-page .home-card-actions .btn{padding:10px 11px;min-height:38px;font-size:10px}
.home-page .home-details-link{font-size:11px;color:#334155;white-space:nowrap}
.home-page .home-empty{padding:24px}
.home-page .home-trustpilot{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;margin:0 0 30px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.home-page .home-trust-label{font-size:11px;font-weight:900;letter-spacing:1.5px;color:#0d6e46}
.home-page .home-trustpilot h2{margin:6px 0;color:var(--navy);font-size:22px}
.home-page .home-trustpilot p{font-size:12px;color:#475569;margin:0 0 10px}
.home-page .home-trust-text-link{font-size:12px;color:#0f766e;text-decoration:underline;font-weight:700}
.home-page .home-trust-button{display:inline-flex;align-items:center;justify-content:center;background:var(--teal);color:#092035;padding:13px 17px;border-radius:8px;font-size:12px;font-weight:900;white-space:nowrap}
/* Header/footer corrections: retain their existing PHP links and cart/admin behavior. */
.header-main{gap:24px}
.brand-lockup{display:flex;align-items:center;gap:10px}
.brand-mark{width:48px;height:49px;flex:0 0 48px;border-radius:14px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900;font-size:23px;box-shadow:5px 0 0 var(--teal)}
.brand-mark span{color:var(--teal)}
.brand-name{display:block;font-size:25px;letter-spacing:-1px;white-space:nowrap}
.brand-tag{display:block;font-size:9px;letter-spacing:1.7px;margin-top:4px;white-space:nowrap}
.footer{display:block;margin-top:0;padding:32px 0 20px}
.footer .wrap{display:block;width:min(1270px,calc(100% - 40px));margin:0 auto}
.footer-grid{display:grid;grid-template-columns:1.5fr .8fr 1fr 1.25fr;align-items:start;gap:30px}
.footer-grid>div{min-width:0}
.footer-grid h3{font-size:13px;margin:0 0 10px;color:#fff}
.footer-grid a{display:block;font-size:12px;line-height:1.9;color:#aeb8c8}
.footer-grid p{font-size:12px;line-height:1.8;color:#aeb8c8;margin:8px 0}
.footer-brand strong{font-size:24px}
.footer-brand strong span{color:var(--teal)}
.footer .footer-trust{display:inline-block;margin-top:8px;color:#d5dbe6}
.footer-bottom{border-top:1px solid #ffffff20;margin-top:24px;padding-top:17px;font-size:11px;color:#8d99ab;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media(max-width:1050px){.home-page .home-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-page .home-easy-order{right:4%}}
@media(max-width:900px){.home-page .home-features{grid-template-columns:repeat(2,minmax(0,1fr))}.home-page .home-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-page .home-hero{padding:30px 25px;min-height:340px}.home-page .home-hero h1{font-size:36px}.home-page .home-easy-order{position:relative;right:auto;bottom:auto;margin:22px 0 0;display:inline-block}.home-page .home-hero{display:block}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.home-page .home-hero{padding:25px 20px;min-height:0}.home-page .home-hero h1{font-size:32px}.home-page .home-features{gap:9px}.home-page .home-feature{padding:10px;gap:8px}.home-page .home-feature-icon{width:32px;height:34px}.home-page .home-feature strong{font-size:11px}.home-page .home-feature small{font-size:10px}.home-page .home-product-grid{gap:9px}.home-page .home-product-art{height:145px;padding:10px}.home-page .home-product-art strong{font-size:13px}.home-page .home-art-icon{height:45px;width:45px;font-size:22px}.home-page .home-product-body{padding:10px}.home-page .home-product-name{font-size:12px}.home-page .home-product-body p{font-size:10px;min-height:30px}.home-page .home-product-price{font-size:15px}.home-page .home-card-actions{align-items:stretch}.home-page .home-card-actions .btn{font-size:9px;padding:9px 8px}.home-page .home-details-link{font-size:10px}.home-page .home-trustpilot{padding:18px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:5px}.brand-name{font-size:22px}.brand-tag{font-size:7px;letter-spacing:1px}}


/* Reference-preview styling for database-backed homepage cards only */
.home-page .home-section { margin: 0 0 36px; scroll-margin-top: 20px; }
.home-page .home-section-head { display:flex; align-items:end; justify-content:space-between; gap:16px; margin-bottom:16px; }
.home-page .home-section-head h2 { font-size:21px; letter-spacing:-.5px; margin:0 0 7px; color:var(--navy); }
.home-page .home-section-head p { font-size:12px; color:#718096; margin:0; }
.home-page .home-category-viewall { font-size:12px; font-weight:900; color:#248e99; white-space:nowrap; }
.home-page .home-count { font-size:11px; font-weight:800; color:#248e99; white-space:nowrap; }
.home-page .home-product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.home-page .reference-product-card { min-width:0; background:#fff; border:1px solid #dfe3e9; border-radius:14px; overflow:hidden; box-shadow:0 2px 4px #10182805; transition:transform .18s,box-shadow .18s; }
.home-page .reference-product-card:hover { transform:translateY(-3px); box-shadow:0 10px 25px #10182812; }
.home-page .home-product-art { height:205px; background:var(--product-art,#3b73c9); color:#fff; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; position:relative; padding:18px; overflow:hidden; }
.home-page .home-product-art:before { content:"";position:absolute;width:190px;height:190px;border:1px solid currentColor;opacity:.09;border-radius:50%;right:-75px;top:-85px; }
.home-page .home-product-art:after { content:"";position:absolute;width:130px;height:130px;border:1px solid currentColor;opacity:.09;border-radius:50%;left:-65px;bottom:-75px; }
.home-page .home-product-art strong.reference-art-brand { position:relative;z-index:1;font-size:clamp(16px,1.4vw,27px);font-weight:900;line-height:1.15;letter-spacing:-.5px;max-width:100%; }
.home-page .home-art-icon { margin-top:13px;background:#fff;color:var(--product-art,#3b73c9);border-radius:19px;height:76px;width:76px;display:grid;place-items:center;font-size:34px;font-weight:900;position:relative;z-index:1;box-shadow:0 7px 20px #00000012;padding:7px;box-sizing:border-box;overflow:hidden; }
.home-page .home-art-icon img { max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block;border-radius:10px; }
.home-page .home-art-label { position:absolute;top:9px;right:9px;z-index:2;padding:5px 8px;border:0;border-radius:4px;background:#ffdf37;color:#111827;font-size:10px;font-weight:900;line-height:1.2; }
/* Use the database-selected artwork colour for every brand card. */
.home-page .home-product-art { background:var(--product-art,#3d73c9); }
.home-page .home-product-art .home-art-logo { background:#fff; padding:8px; }
.home-page .home-product-art .home-art-logo img { display:block; width:100%; height:100%; object-fit:contain; border-radius:10px; }
.home-page .home-product-body { padding:13px 13px 11px; }
.home-page .home-product-name { display:block;font-size:13px;line-height:1.4;font-weight:800;color:#14223a;min-height:36px; }
.home-page .home-product-body p { font-size:11px;color:#7a8496;line-height:1.5;min-height:31px;margin:7px 0 10px; }
.home-page .home-product-price { font-size:17px;font-weight:900;margin:12px 0 13px;color:#101a2c; }
.home-page .home-card-actions { display:flex;align-items:center;gap:8px; }
.home-page .home-card-actions form { margin:0;flex:1;min-width:0; }
.home-page .home-card-actions .btn { width:100%;min-height:38px;padding:10px 8px;font-size:10px; }
.home-page .home-details-link { font-size:10px;color:#526174;white-space:nowrap; }
.home-page .home-product-art.art-windows .home-art-icon { border-radius:50%; }
@media(max-width:1050px){.home-page .home-product-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:780px){.home-page .home-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-page .home-product-art{height:170px}.home-page .home-art-icon{width:62px;height:62px;font-size:28px}}
@media(max-width:420px){.home-page .home-product-grid{gap:9px}.home-page .home-product-art{height:145px;padding:10px}.home-page .home-art-icon{width:53px;height:53px}.home-page .home-product-body{padding:11px}.home-page .home-product-name{font-size:12px}.home-page .home-product-price{font-size:15px}.home-page .home-card-actions{align-items:stretch}.home-page .home-details-link{display:none}}


/* Product card status badges matching the supplied reference */
.home-page .home-art-label{background:#ffdf37;color:#111827;border:0;box-shadow:none}
.home-page .home-stock-badge{position:absolute;top:9px;right:9px;z-index:3;background:#c93645;color:#fff;border-radius:4px;padding:5px 8px;font-size:10px;font-weight:900;line-height:1.2}
.home-page .home-card-actions button:disabled{background:#d7dce4;color:#5c6677;cursor:not-allowed;opacity:1}
/* Product card layout: match the supplied reference screenshot */

/* Exact card layout correction based on the user's reference screenshot */
.home-page .home-product-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
  gap:18px;
}
.home-page .reference-product-card {
  display:flex;
  flex-direction:column;
  min-width:0;
  height:100%;
  overflow:hidden;
  border:1px solid #dce2ea;
  border-radius:14px;
  background:#fff;
  box-shadow:0 2px 5px rgba(16,24,40,.04);
}
.home-page .reference-product-card .home-product-art {
  flex:0 0 205px;
  height:205px;
  min-height:205px;
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:24px 18px 18px;
}
.home-page .reference-product-card .home-art-label,
.home-page .reference-product-card .home-stock-badge {
  position:absolute;
  top:9px;
  right:9px;
  z-index:4;
}
.home-page .reference-product-card .home-product-body {
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:13px 13px 11px;
}
.home-page .reference-product-card .home-product-name {
  display:block;
  min-height:36px;
  margin:0;
  font-size:13px;
  line-height:1.4;
  font-weight:800;
}
.home-page .reference-product-card .home-product-body p {
  min-height:31px;
  margin:7px 0 10px;
  font-size:11px;
  line-height:1.5;
}
.home-page .reference-product-card .home-product-price {
  margin:12px 0 13px;
  font-size:17px;
  line-height:1.25;
  font-weight:900;
}
.home-page .reference-product-card .home-card-actions {
  display:flex;
  align-items:center;
  gap:9px;
  width:100%;
  margin-top:auto;
}
.home-page .reference-product-card .home-card-actions form {
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  align-items:center;
  gap:8px;
  flex:1 1 auto;
  width:100%;
  min-width:0;
  margin:0;
}
.home-page .reference-product-card .home-card-actions .home-quantity {
  display:block;
  box-sizing:border-box;
  width:42px;
  min-width:42px;
  height:35px;
  margin:0;
  padding:0 7px;
  border:1px solid #cbd2dc;
  border-radius:5px;
  background:#34363b;
  color:#fff;
  font:12px/1.2 inherit;
  outline:none;
}
.home-page .reference-product-card .home-card-actions .btn {
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:100%;
  min-width:0;
  height:35px;
  min-height:35px;
  margin:0;
  padding:0 8px;
  border:0;
  border-radius:7px;
  background:#83cdd0;
  color:#0e2436;
  font-size:10px;
  line-height:1;
  font-weight:900;
  white-space:nowrap;
}
.home-page .reference-product-card .home-card-actions .btn:disabled {
  background:#d9dfe7;
  color:#596577;
  cursor:not-allowed;
}
.home-page .reference-product-card .home-wishlist {
  flex:0 0 20px;
  display:grid;
  place-items:center;
  width:20px;
  height:35px;
  padding:0;
  color:#8999ad;
  font-size:20px;
  line-height:1;
  text-decoration:none;
}
.home-page .reference-product-card .home-card-footer {
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:36px;
  box-sizing:border-box;
  padding:0 12px;
  border-top:1px solid #e4e8ef;
  background:#f8fafc;
  font-size:10px;
  line-height:1.2;
}
.home-page .reference-product-card .home-card-footer a {
  display:block;
  min-width:0;
  color:#718096;
  text-decoration:none;
  white-space:nowrap;
}
.home-page .reference-product-card .home-card-footer a:hover { color:#238e99; }
.home-page .reference-product-card .home-stock-badge {
  background:#c93645;
  color:#fff;
  border-radius:4px;
  padding:5px 8px;
  font-size:10px;
  font-weight:900;
}
@media(max-width:1050px) {
  .home-page .home-product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:780px) {
  .home-page .home-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .home-page .reference-product-card .home-product-art { flex-basis:170px; height:170px; min-height:170px; }
}
@media(max-width:420px) {
  .home-page .home-product-grid { gap:9px; }
  .home-page .reference-product-card .home-product-art { flex-basis:145px; height:145px; min-height:145px; }
  .home-page .reference-product-card .home-product-body { padding:11px; }
  .home-page .reference-product-card .home-card-actions { gap:5px; }
  .home-page .reference-product-card .home-card-actions form { grid-template-columns:36px minmax(0,1fr); gap:5px; }
  .home-page .reference-product-card .home-card-actions .home-quantity { width:36px; min-width:36px; }
  .home-page .reference-product-card .home-card-footer { padding:0 8px; font-size:9px; }
}


/* Trustpilot summary and review cards: keeps the supplied white feedback panel style */
.home-page .home-trustpilot {
  display:grid;
  grid-template-columns:minmax(240px,1fr) minmax(320px,1.25fr) auto;
  align-items:center;
  gap:24px;
  padding:24px;
  margin:0 0 30px;
  background:#fff;
  border:1px solid #d9e1eb;
  border-radius:12px;
}
.home-page .trustpilot-score-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:12px 0}
.home-page .trustpilot-stars,.home-page .trustpilot-mini-stars{color:#00a879;letter-spacing:2px;font-size:18px;font-weight:900}
.home-page .trustpilot-score-row strong{font-size:17px;color:#172033}
.home-page .trustpilot-score-label{font-size:12px;color:#66748a}
.home-page .trustpilot-review-snippets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.home-page .trustpilot-mini-review{padding:13px 14px;border:1px solid #e1e7ee;border-radius:9px;background:#fbfcfd;min-width:0}
.home-page .trustpilot-mini-stars{font-size:13px;letter-spacing:1px;margin-bottom:7px}
.home-page .trustpilot-mini-review strong{display:block;color:#172033;font-size:12px;line-height:1.4}
.home-page .trustpilot-mini-review p{margin:5px 0 8px;color:#59677d;font-size:11px;line-height:1.5}
.home-page .trustpilot-mini-review span{font-size:10px;color:#8490a2}
.home-page .home-trust-button{white-space:nowrap;align-self:center}
.footer{background:#101725;color:#d5dbe6;margin-top:0;padding:36px 0 18px}
.footer>.wrap{display:block;width:min(1276px,calc(100% - 40px));margin:0 auto}
.footer .footer-grid{display:grid;grid-template-columns:minmax(260px,1.6fr) minmax(120px,.8fr) minmax(150px,.9fr) minmax(220px,1.2fr);gap:34px;align-items:start;width:100%;margin:0}
.footer .footer-grid>div{min-width:0}
.footer-brand-lockup{display:inline-flex;align-items:center;gap:9px;color:#fff;text-decoration:none;margin:0}
.footer-brand-mark{width:48px;height:48px;border-radius:15px;background:#121827;box-shadow:inset -5px 0 0 #79cfd2;display:grid;place-items:center;font-size:22px;font-weight:900;color:white;flex-shrink:0}
.footer-brand-copy{display:flex;flex-direction:column}
.footer-brand-copy strong{font-size:24px;letter-spacing:-1px;line-height:1.1;color:#fff}
.footer-brand-copy strong span{color:#55bdc5}
.footer-brand-copy small{font-size:8px;letter-spacing:1.7px;color:#b5c1d2;margin-top:5px;font-weight:800}
.footer .footer-brand p,.footer .footer-ordering p{font-size:12px;line-height:1.8;color:#aeb8c8;margin:12px 0}
.footer .footer-grid h3{font-size:13px;margin:0 0 10px;color:#fff}
.footer .footer-grid a:not(.footer-brand-lockup){display:block;font-size:12px;line-height:1.9;color:#aeb8c8;text-decoration:none}
.footer .footer-grid a:hover{color:#79cfd2}
.footer .footer-bottom{width:100%;border-top:1px solid #ffffff20;margin:26px 0 0;padding-top:17px;font-size:11px;color:#8d99ab;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media(max-width:1000px){
 .home-page .home-trustpilot{grid-template-columns:1fr;align-items:start}
 .home-page .home-trust-button{justify-self:start}
 .footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
 .home-page .home-trustpilot{width:calc(100% - 30px);padding:18px;gap:16px}
 .home-page .trustpilot-review-snippets{grid-template-columns:1fr}
 .footer>.wrap{width:calc(100% - 30px)}
 .footer .footer-grid{grid-template-columns:1fr;gap:20px}
 .footer .footer-bottom{flex-direction:column}
}


/* Full product card is clickable; interactive links and cart controls keep their own actions. */
.home-page .home-product-card { cursor: pointer; }
.home-page .home-product-card:focus-visible { outline: 3px solid #2398a4; outline-offset: 3px; }

/* Customer account pages */
.account-page{max-width:720px;margin:36px auto 56px;padding:0 16px}
.account-panel{background:#fff;border:1px solid #e0e6ef;border-radius:16px;padding:28px;box-shadow:0 8px 24px rgba(17,27,48,.06)}
.account-panel h1{margin:0 0 8px;color:#151b2d;font-size:28px}
.account-panel .account-intro{margin:0 0 22px;color:#69758b}
.account-form{display:grid;gap:15px}
.account-form label{display:grid;gap:7px;font-weight:700;color:#253047;font-size:14px}
.account-form input{box-sizing:border-box;width:100%;padding:12px 13px;border:1px solid #cfd7e3;border-radius:8px;font:inherit;background:#fff;color:#182235}
.account-form input:focus{outline:2px solid #8bd0d3;border-color:#2a9ca5}
.account-form button,.account-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border:0;border-radius:8px;background:#8bcdd0;color:#071b2b;font-weight:800;text-decoration:none;cursor:pointer}
.account-note{padding:12px 14px;border-radius:8px;background:#eef8f8;color:#165d62;margin:0 0 16px}
.account-error{padding:12px 14px;border-radius:8px;background:#fff0f0;color:#9d2525;margin:0 0 16px}
.account-links{margin-top:18px;color:#667085;font-size:14px}
.account-links a{color:#087e89;font-weight:700}
.account-summary{display:grid;gap:12px;margin:20px 0}
.account-summary div{padding:13px 15px;background:#f5f7fa;border-radius:9px}
@media(max-width:600px){.account-panel{padding:20px}.account-panel h1{font-size:24px}}


/* My orders: additions only; preserve the existing ValityPlus account design */
.account-actions{display:flex;flex-wrap:wrap;gap:10px}
.account-orders{margin-top:22px}
.account-orders h2{margin:0 0 8px;color:#151b2d;font-size:23px}
.account-empty{padding:22px;border:1px dashed #cfd8e5;border-radius:10px;background:#f8fafc;text-align:center;color:#344054}
.account-empty p{color:#69758b;margin:8px 0 18px}
.account-order-list{display:grid;gap:14px}
.account-order{border:1px solid #e0e6ef;border-radius:12px;padding:17px;background:#fff}
.account-order-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #edf0f5}
.account-order-head>div:first-child{display:grid;gap:4px}
.account-order-label,.account-order-date{font-size:12px;color:#778399}
.account-order-head strong{color:#17233b;font-size:15px}
.account-order-total{font-weight:900;color:#14223a;white-space:nowrap}
.account-order-status{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.account-order-status span{background:#eef4f8;border-radius:20px;padding:5px 9px;font-size:11px;color:#40516a}
.account-order-items{list-style:none;padding:0;margin:0}
.account-order-items li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #f0f2f6;font-size:13px;color:#354258}
.account-order-items li strong{white-space:nowrap;color:#17233b}
.account-order-items-muted{font-size:12px;color:#778399}
@media(max-width:560px){.account-order{padding:13px}.account-order-head{flex-direction:column}.account-order-items li{font-size:12px}}


/* ValityPlus homepage CTA visibility + WhatsApp brand colours */
.home-page .home-buttons .btn-primary,
.home-page .home-buttons a.btn-primary {
  background: #FFFFFF !important;
  color: #075E54 !important;
  border: 2px solid #FFFFFF !important;
  font-weight: 900 !important;
  box-shadow: 0 3px 12px #004f4f20;
}
.home-page .home-buttons .btn-primary:hover,
.home-page .home-buttons a.btn-primary:hover {
  background: #E8FFF0 !important;
  color: #064E3B !important;
}
.home-page .home-buttons .btn-outline,
.home-page .home-buttons a.btn-outline {
  background: #25D366 !important;
  border: 2px solid #25D366 !important;
  color: #063B2B !important;
  font-weight: 900 !important;
  box-shadow: 0 3px 12px #004f4f20;
}
.home-page .home-buttons .btn-outline:hover,
.home-page .home-buttons a.btn-outline:hover {
  background: #128C7E !important;
  border-color: #128C7E !important;
  color: #FFFFFF !important;
}
/* Make the easy-ordering message a clear, readable panel */
.home-page .home-easy-order {
  background: #FFFFFF !important;
  color: #142033 !important;
  border: 2px solid #25D366 !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 24px #003b3020 !important;
  opacity: 1 !important;
}
.home-page .home-easy-order strong {
  color: #075E54 !important;
}
.home-page .home-easy-order,
.home-page .home-easy-order * {
  text-shadow: none !important;
}
.home-page .home-easy-order strong {
  display: block;
  font-size: 16px !important;
  margin-bottom: 3px;
}
/* WhatsApp support navigation CTA */
.nav .support {
  background: #25D366 !important;
  color: #063B2B !important;
  font-weight: 900 !important;
}
.nav .support:hover {
  background: #128C7E !important;
  color: #FFFFFF !important;
}
/* Make CTA text readable if the hero is turquoise */
.home-page .home-buttons .btn,
.home-page .home-buttons a.btn {
  min-height: 46px;
  text-shadow: none !important;
}

/* Accessibility helpers & WCAG compliance */
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Clear keyboard focus indicator */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 2px solid #0f766e !important;
  outline-offset: 2px !important;
}

/* Mobile tap target sizing */
@media (max-width: 768px) {
  .utility-links a {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
  }
  .home-wishlist {
    min-width: 44px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .home-card-actions .btn {
    min-height: 44px;
  }
  .nav a {
    min-height: 44px;
  }
}
