/* Great Choice product discovery and readability polish */
html,body{max-width:100%;overflow-x:hidden}
.store-footer.enhanced-footer{left:auto!important;margin-left:0!important;width:100%!important;max-width:100%!important}
.store-footer.enhanced-footer>div{grid-template-columns:minmax(280px,1.35fr) minmax(180px,.75fr) minmax(210px,.9fr) minmax(220px,1fr)!important;column-gap:46px!important;row-gap:34px!important;align-items:start!important}
.store-footer.enhanced-footer>div>div{min-width:0;text-align:left}
.store-footer.enhanced-footer h4{margin:0 0 17px!important;font-style:normal!important;font-weight:800!important}
.store-footer.enhanced-footer>div>div>a{margin:0 0 11px!important;line-height:1.45!important}
html[dir="rtl"] .store-footer.enhanced-footer>div>div{text-align:right}
.trust-strip-inner{grid-template-columns:repeat(4,1fr)!important}
.product-orbit{padding:54px 24px 60px;background:linear-gradient(180deg,#fff 0%,#f7fbff 100%);border-bottom:1px solid var(--line)}
.product-orbit-head{max-width:1280px;margin:0 auto 28px;text-align:center}
.product-orbit-head h2{margin:6px 0 0;font:600 clamp(28px,3vw,40px) "Fraunces";color:var(--ink)}
.product-orbit-grid{max-width:1280px;margin:auto;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:26px;align-items:start}
.product-orbit-item{display:flex;flex-direction:column;align-items:center;gap:14px;color:var(--ink);text-align:center;font-size:14px;font-weight:700;transition:color .25s ease,transform .35s ease}
.product-orbit-item>span{width:clamp(120px,11vw,168px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 35% 28%,#fff 0%,#eef7ff 54%,#dceeff 100%);border:1px solid #d7e9f8;box-shadow:0 16px 32px -24px rgba(6,42,77,.55);transition:transform .4s ease,box-shadow .4s ease,border-color .3s ease}
.product-orbit-item img{width:86%;height:86%;object-fit:contain;padding:12px;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.product-orbit-item:hover{color:var(--blue);transform:translateY(-4px)}
.product-orbit-item:hover>span{border-color:#8bc8f4;box-shadow:0 22px 42px -24px rgba(8,119,223,.7)}
.product-orbit-item:hover img{transform:scale(1.09)}

/* Product descriptions: clearer on every catalogue card. */
.card-desc{height:42px!important;font-size:13.5px!important;line-height:1.52!important;margin-bottom:10px!important}

/* Footer typography: larger while preserving the existing layout. */
.store-footer h4{font-size:15px!important;line-height:1.35}
.store-footer p,.store-footer a{font-size:13.5px!important;line-height:1.55}
.store-footer .footer-copy{font-size:12.5px!important;line-height:1.5}
.store-footer .footer-contact-details strong,.store-footer .footer-map-panel h4{font-size:14px!important}
.store-footer .footer-contact-details small,.store-footer .footer-hours small,.store-footer .footer-map-panel p,.store-footer .footer-map-panel a{font-size:12.5px!important;line-height:1.5}

@media(max-width:1024px){.store-footer.enhanced-footer>div{grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:38px!important}.trust-strip-inner{grid-template-columns:repeat(2,1fr)!important}.product-orbit-grid{grid-template-columns:repeat(3,1fr);row-gap:34px}.product-orbit-item>span{width:min(170px,38vw)}}
@media(max-width:620px){.store-footer.enhanced-footer>div{grid-template-columns:1fr!important;row-gap:30px!important}.trust-strip-inner{grid-template-columns:1fr!important}.product-orbit{padding:42px 16px 48px}.product-orbit-grid{grid-template-columns:repeat(2,1fr);gap:28px 14px}.product-orbit-item{font-size:13px;line-height:1.3}.product-orbit-item>span{width:min(145px,40vw)}.card-desc{font-size:13px!important;height:40px!important}.store-footer p,.store-footer a{font-size:13px!important}}

/* V22: clearer site-wide typography, excluding the homepage/banner artwork. */
main p,main li,main label,main input,main textarea,main select,.sample-content p,.sample-content li,.product-card p,.cart-summary span,.cart-summary a{font-size:16px!important;line-height:1.7!important}
main h1,.sample-page-hero h1,.sample-service-page h1{font-size:clamp(36px,4.5vw,62px)!important;line-height:1.08!important}
main h2,.sample-content h2,.sample-service-page h2{font-size:clamp(27px,3vw,40px)!important;line-height:1.18!important}
main h3,.sample-content h3{font-size:clamp(21px,2.2vw,29px)!important;line-height:1.25!important}
.card-desc{font-size:15px!important;line-height:1.58!important;height:auto!important;min-height:48px}
.store-footer h4{font-size:18px!important}.store-footer p,.store-footer a{font-size:15px!important}.store-footer .footer-copy{font-size:13.5px!important}
.store-footer .footer-contact-details strong{font-size:15px!important}.store-footer .footer-contact-details small,.store-footer .footer-hours small,.store-footer .footer-map-panel p,.store-footer .footer-map-panel a{font-size:14px!important}

/* Brand-accurate social icon colours. */
.store-footer .footer-social a{background:#fff!important;border-color:rgba(255,255,255,.25)!important}
.store-footer .footer-social a[aria-label="Facebook"]{color:#1877f2!important}
.store-footer .footer-social a[aria-label="Instagram"]{color:#e4405f!important}
.store-footer .footer-social a[aria-label="YouTube"]{color:#ff0000!important}
.store-footer .footer-social a[aria-label="TikTok"]{color:#111!important}
.store-footer .footer-social a[aria-label="LinkedIn"]{color:#0a66c2!important}
.store-footer .footer-social a[aria-label="WhatsApp"]{color:#25d366!important}
.store-footer .footer-social svg{stroke:currentColor!important}.store-footer .footer-social svg path:not(.cut),.store-footer .footer-social svg rect,.store-footer .footer-social svg circle:not(.fill){stroke:currentColor}

/* Google Pay mark and visible contact actions. */
.footer-payments .payment-logo.gpay{display:inline-flex!important;align-items:center;gap:3px;background:#fff!important;color:#3c4043!important;border:1px solid #dadce0!important;padding:5px 10px!important;border-radius:6px!important;font-family:Arial,sans-serif!important}
.footer-payments .payment-logo.gpay i{font-style:normal;font-weight:800;color:#4285f4!important;font-size:18px}.footer-payments .payment-logo.gpay b{font-weight:600;color:#3c4043!important}
#contactInfo{background:#fff!important;color:#071e34!important;border:1px solid #dbe5ee!important;box-shadow:0 18px 48px rgba(8,40,72,.1)!important}#contactInfo>div{border-color:#e4ebf1!important}#contactInfo span{color:#526272!important;opacity:1!important}#contactInfo a{color:#0877df!important;font-weight:800!important;text-decoration:none}#contactInfo .eyebrow{color:#9b7419!important}#contactInfo .ghost-btn{display:inline-flex!important;background:#071e34!important;color:#fff!important;border-color:#071e34!important;margin-top:18px!important}
.sample-service-page .sample-cta .ghost-btn{display:inline-flex!important;background:#fff!important;color:#071e34!important;border:2px solid #fff!important;font-weight:900!important;opacity:1!important}
.sample-content>.sample-cta .primary-btn{display:inline-flex!important;background:#f4bf24!important;color:#312303!important;border:2px solid #f4bf24!important}.sample-content>.sample-cta .ghost-btn{display:inline-flex!important;background:#fff!important;color:#071e34!important;border:2px solid #071e34!important;font-weight:900!important;opacity:1!important}

/* Screenshot-style login/register dropdown. */
.account-menu-wrap{position:relative;display:flex;align-items:center;align-self:stretch}.account-dropdown{position:absolute;z-index:1200;top:calc(100% + 10px);right:0;width:min(390px,92vw);padding:0 24px 22px;background:#fff;border:1px solid #dde5eb;box-shadow:0 24px 55px rgba(4,27,49,.22);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.22s ease;color:#172433}.account-menu-wrap:hover .account-dropdown,.account-dropdown.open,.account-menu-wrap:focus-within .account-dropdown{opacity:1;visibility:visible;transform:none}.account-tabs{display:grid;grid-template-columns:1fr 1fr;margin:0 -24px 20px;border-bottom:1px solid #e2e8ed}.account-tabs button{height:60px;border:0;background:#fff;color:#398f82;font-size:16px;font-weight:700;border-bottom:3px solid transparent}.account-tabs button.active{color:#172433;border-bottom-color:#24b990}.quick-account-form{display:grid;gap:15px}.quick-account-form>label{display:grid;gap:7px;color:#3d4b59;font-size:14px!important;font-weight:600}.quick-account-form label b{color:#d04848}.quick-account-form input[type="email"],.quick-account-form input[type="password"],.quick-account-form input[type="text"]{width:100%;height:47px;border:1px solid #cfd9e1;background:#fff;padding:0 13px;font-size:15px!important;color:#172433;outline:0}.quick-account-form input:focus{border-color:#23b78f;box-shadow:0 0 0 3px rgba(35,183,143,.12)}.password-field{display:grid;grid-template-columns:1fr 42px}.password-field input{grid-column:1/-1;grid-row:1}.password-toggle{grid-column:2;grid-row:1;border:0;background:transparent;color:#5263b3;font-size:16px;z-index:2}.quick-account-submit{height:48px;border:0;background:linear-gradient(90deg,#20b58c,#3bc7a5);color:#fff;font-weight:900;letter-spacing:.03em}.quick-account-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px}.quick-account-meta label{display:flex;align-items:center;gap:6px}.quick-account-meta a{color:#218f7a}.quick-account-message{display:none;margin:0!important;padding:10px;background:#eafaf4;color:#13795b;font-size:12px!important}.quick-account-message.success{display:block}
html[dir="rtl"] .account-dropdown{right:auto;left:0;text-align:right}
@media(max-width:900px){.account-menu-wrap{position:static}.account-menu-wrap:hover .account-dropdown{opacity:0;visibility:hidden;transform:translateY(-8px)}.account-menu-wrap .account-dropdown.open,.account-menu-wrap:focus-within .account-dropdown{position:fixed;top:84px;left:50%;right:auto;transform:translateX(-50%);opacity:1;visibility:visible;width:min(390px,calc(100vw - 24px));max-height:calc(100vh - 100px);overflow:auto}.quick-account-meta{align-items:flex-start;flex-direction:column}}

/* V24 account page and consistent contact/CTA contrast. */
#contactInfo span,#contactInfo a,#contactInfo .eyebrow{color:#17324b!important}
#contactInfo .ghost-btn{color:#fff!important}
.sample-content .sample-cta .primary-btn{display:inline-flex!important;background:#f4bf24!important;color:#312303!important;border:2px solid #f4bf24!important;opacity:1!important}
.sample-content .sample-cta .ghost-btn{display:inline-flex!important;background:#fff!important;color:#071e34!important;border:2px solid #071e34!important;font-weight:900!important;opacity:1!important}
.account-password-row{display:grid;grid-template-columns:1fr auto;margin-bottom:18px}.account-password-row input{grid-column:1/-1;grid-row:1;margin-bottom:0!important;padding-right:70px!important}.account-password-row button{grid-column:2;grid-row:1;border:0;background:transparent;color:#0877df;font-weight:800;padding:0 14px;z-index:2}.account-success.error{background:#fff0f0;color:#a52a2a}
.account-panel>div:not(.account-password-row){margin-bottom:0}


/* V29: wider, shorter account card while keeping the original heading scale. */
.account-shell{max-width:980px!important;margin:32px auto 58px!important;padding:0 20px!important}
.account-intro{padding:24px 32px 14px!important}.account-intro h1{margin:4px 0 8px!important}.account-intro p{margin:0!important;line-height:1.55!important}
.account-tabs button{padding:11px 14px!important}.account-panel{padding:20px 32px 24px!important}.account-panel label{margin-bottom:5px!important}.account-panel input{padding:10px 12px!important;margin-bottom:11px!important;min-height:42px!important}.account-password-row{margin-bottom:11px!important}.account-panel .primary-btn{min-height:44px!important}.account-note{margin-top:11px!important}.account-success{margin-bottom:20px!important}
@media(max-width:760px){.account-shell{max-width:none!important;margin:20px auto 45px!important;padding:0 12px!important}.account-intro{padding:22px 20px 13px!important}.account-panel{padding:18px 20px 22px!important}}

@media(max-width:620px){main p,main li,main label,.sample-content p,.sample-content li,.cart-summary span,.cart-summary a{font-size:15px!important}.store-footer p,.store-footer a{font-size:14.5px!important}}

/* Consistent readable content across home and inner pages; hero/banner stays unchanged. */
body section:not(.hero) p,body section:not(.hero) li,body main p,body main li{font-size:16px!important;line-height:1.7!important}
body section:not(.hero) h2{font-size:clamp(28px,3.2vw,42px)!important;line-height:1.18!important}
body section:not(.hero) h3{font-size:clamp(21px,2.2vw,30px)!important;line-height:1.25!important}
@media(max-width:620px){body section:not(.hero) p,body section:not(.hero) li,body main p,body main li{font-size:15px!important}}

/* V30: compact account page and smaller, consistent headings site-wide. */
.account-shell{max-width:760px!important;margin:22px auto 44px!important;padding:0 16px!important}
.account-intro{padding:18px 26px 10px!important}
.account-intro h1{margin:2px 0 6px!important}
.account-tabs button{padding:9px 12px!important;min-height:42px!important}
.account-panel{padding:15px 26px 18px!important}
.account-panel input{min-height:38px!important;padding:8px 11px!important;margin-bottom:8px!important}
.account-password-row{margin-bottom:8px!important}
.account-panel .primary-btn{min-height:40px!important}
.account-note{margin-top:8px!important;font-size:14px!important;line-height:1.5!important}
.account-success{margin-bottom:14px!important}

body h1,main h1,.sample-page-hero h1,.sample-service-page h1{font-size:clamp(30px,3.4vw,46px)!important;line-height:1.12!important}
body h2,main h2,.sample-content h2,.sample-service-page h2,body section:not(.hero) h2{font-size:clamp(24px,2.5vw,32px)!important;line-height:1.2!important}
body h3,main h3,.sample-content h3,body section:not(.hero) h3{font-size:clamp(19px,1.8vw,24px)!important;line-height:1.28!important}
body section:not(.hero) .product-card h3,body section:not(.hero) .product-card .card-title,body section:not(.hero) .product-card .product-title,body section:not(.hero) .service-card h3,body section:not(.hero) .feature-card h3,body section:not(.hero) .category-card h3,body section:not(.hero) .shop-card h3{font-size:18px!important;line-height:1.3!important}
.store-footer h4{font-size:16px!important}

@media(max-width:620px){
  .account-shell{margin:16px auto 34px!important;padding:0 10px!important}
  .account-intro{padding:16px 18px 9px!important}
  .account-panel{padding:14px 18px 17px!important}
  body h1,main h1,.sample-page-hero h1,.sample-service-page h1{font-size:30px!important}
  body h2,main h2,.sample-content h2,.sample-service-page h2,body section:not(.hero) h2{font-size:24px!important}
  body h3,main h3,.sample-content h3,body section:not(.hero) h3{font-size:19px!important}
  body section:not(.hero) .product-card h3,body section:not(.hero) .product-card .card-title,body section:not(.hero) .product-card .product-title,body section:not(.hero) .service-card h3,body section:not(.hero) .feature-card h3,body section:not(.hero) .category-card h3,body section:not(.hero) .shop-card h3{font-size:17px!important}
}

/* V33: smaller headings on About Us and all service-detail pages. */
.sample-service-page h1,.sample-page-hero h1{font-size:clamp(27px,2.5vw,34px)!important;line-height:1.16!important}
.sample-service-page h2,.sample-content h2{font-size:clamp(21px,2vw,25px)!important;line-height:1.24!important}
.sample-service-page h3,.sample-content h3{font-size:clamp(17px,1.4vw,19px)!important;line-height:1.3!important}
@media(max-width:620px){
  .sample-service-page h1,.sample-page-hero h1{font-size:26px!important}
  .sample-service-page h2,.sample-content h2{font-size:21px!important}
  .sample-service-page h3,.sample-content h3{font-size:17px!important}
}

/* V32: reduced heading scale requested for all pages and cards. */
body h1,main h1,.sample-page-hero h1,.sample-service-page h1{font-size:clamp(28px,3vw,40px)!important;line-height:1.14!important}
body h2,main h2,.sample-content h2,.sample-service-page h2,body section:not(.hero) h2{font-size:clamp(22px,2.2vw,28px)!important;line-height:1.22!important}
body h3,main h3,.sample-content h3,body section:not(.hero) h3{font-size:clamp(18px,1.55vw,21px)!important;line-height:1.3!important}
body section:not(.hero) .product-card h3,body section:not(.hero) .product-card .card-title,body section:not(.hero) .product-card .product-title,body section:not(.hero) .service-card h3,body section:not(.hero) .feature-card h3,body section:not(.hero) .category-card h3,body section:not(.hero) .shop-card h3{font-size:16px!important;line-height:1.32!important}
.store-footer h4{font-size:15px!important}
@media(max-width:620px){
  body h1,main h1,.sample-page-hero h1,.sample-service-page h1{font-size:27px!important}
  body h2,main h2,.sample-content h2,.sample-service-page h2,body section:not(.hero) h2{font-size:22px!important}
  body h3,main h3,.sample-content h3,body section:not(.hero) h3{font-size:18px!important}
  body section:not(.hero) .product-card h3,body section:not(.hero) .product-card .card-title,body section:not(.hero) .product-card .product-title,body section:not(.hero) .service-card h3,body section:not(.hero) .feature-card h3,body section:not(.hero) .category-card h3,body section:not(.hero) .shop-card h3{font-size:16px!important}
}
