/* Shared heading hierarchy. Loaded after page-specific styles. */
html body main h1,html body .sf-page-intro h1{font-family:Inter,Segoe UI,Arial,sans-serif!important;font-size:34px!important;line-height:1.22!important;letter-spacing:-.8px!important;text-align:center!important;overflow-wrap:break-word;text-wrap:balance;margin-top:0}
html body main h2,html body main h3{font-family:Inter,Segoe UI,Arial,sans-serif;text-align:left;text-wrap:balance;line-height:1.3}
html body .st-hero h1{font-size:36px!important;line-height:1.15!important}
.st-hero>div:first-child{text-align:center}.st-hero>div:first-child>p{margin-left:auto;margin-right:auto}.st-hero .st-hero-actions{justify-content:center}
.st-section-title,.st-about-contact-heading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center}
.st-section-title>div{width:100%}.st-section-title h2,.st-order-steps>h2,.st-about-contact-heading h2,.st-composition>div>h2,.st-product-about h2,.st-about-showcase h2,.st-about-details h2,.st-about-contact h2{font-size:28px;line-height:1.3;letter-spacing:-.5px}
.st-bundle-caption{text-align:center;max-width:720px;margin-left:auto;margin-right:auto}.st-heading p,.st-about-hero>p{max-width:720px;margin-left:auto;margin-right:auto;text-align:center}.st-about-hero{text-align:center}.st-about-hero .st-eyebrow{text-align:center}
.st-product-info>h1{font-size:34px!important}.st-product-info>.st-availability{align-self:center}.st-product-summary{text-align:center}.st-feature-chips{justify-content:center}
html body .sf-reviews-heading{justify-content:center;text-align:center}html body .sf-reviews-heading>div{width:100%}html body .sf-reviews-heading h2{font:700 28px/1.3 Inter,Segoe UI,Arial,sans-serif!important;letter-spacing:-.5px!important;text-align:center!important}
html body .sf-page-intro p{font-size:15px;line-height:1.65;max-width:760px;margin-left:auto!important;margin-right:auto!important;text-align:center!important}
html body .sf-content h2{font-family:Inter,Segoe UI,Arial,sans-serif!important;text-align:left!important;line-height:1.3!important}
html body .sf-content>.sf-cid-faq>h2,html body .sf-content>.sf-seo-help>h2{font-size:28px!important}
.st-catalog-heading{flex-direction:column;align-items:center;gap:12px}.st-catalog-heading>div{text-align:center;justify-content:center}.st-catalog-heading h1{margin-bottom:0}
.st-legal>h1{margin-bottom:28px}.st-legal h2{text-align:left}.sf-review-loading{min-height:56px;opacity:.5;background:linear-gradient(90deg,#edf1f7 0 55%,transparent 55%) left center/100% 12px no-repeat;border-radius:6px}
@media(max-width:650px){
 html body main h1,html body .sf-page-intro h1,html body .st-product-info>h1{font-size:28px!important;line-height:1.25!important;letter-spacing:-.5px!important}
 html body .st-hero h1{font-size:28px!important}
 .st-section-title h2,.st-order-steps>h2,.st-about-contact-heading h2,.st-composition>div>h2,.st-product-about h2,.st-about-showcase h2,.st-about-details h2,.st-about-contact h2,html body .sf-reviews-heading h2,html body .sf-content>.sf-cid-faq>h2,html body .sf-content>.sf-seo-help>h2{font-size:23px!important;line-height:1.3!important}
 html body .sf-page-intro p{font-size:14px!important;line-height:1.6!important}
 .st-section-title,.st-about-contact-heading{gap:10px}.st-hero .st-hero-actions{align-items:center}
 .st-product-info>.st-availability{align-self:center}
}
html body.sf-site.st-legacy .sf-page-intro h1{font-size:34px!important;line-height:1.22!important;letter-spacing:-.8px!important;text-align:center!important}
@media(max-width:650px){html body.sf-site.st-legacy .sf-page-intro h1{font-size:28px!important;line-height:1.25!important;letter-spacing:-.5px!important}}
/* Slightly quieter page titles; keep the home hero prominent. */
html body main h1,html body .sf-page-intro h1,html body .st-product-info>h1,html body.sf-site.st-legacy .sf-page-intro h1{font-size:30px!important;line-height:1.25!important}
html body .st-hero h1{font-size:36px!important;line-height:1.15!important}
@media(max-width:650px){html body main h1,html body .sf-page-intro h1,html body .st-product-info>h1,html body.sf-site.st-legacy .sf-page-intro h1{font-size:25px!important;line-height:1.28!important}html body .st-hero h1{font-size:28px!important;line-height:1.15!important}}
/* Bring page introductions closer to the shared back button. */
html body.sf-site a.st-back,html body a.st-back{margin-bottom:10px}
html body a.st-back+.st-heading{padding-top:0}
@media(max-width:650px){html body.sf-site a.st-back,html body a.st-back{margin-bottom:8px}}

/* Center section titles, while card copy follows natural left alignment. */
html body .st-section-title h2,html body .st-about-contact-heading h2,html body .st-product-promo h2{text-align:center}
html body .st-service-links h3,html body .st-service-links p,html body .st-card h3,html body .st-card p,html body .st-rich-card h3,html body .st-rich-card p{text-align:left}
/* Account access stays visible at the far right on every screen. */
html body .st-header .st-account-link{display:flex;align-items:center;justify-content:center;order:3;width:42px;height:42px;min-height:42px;flex:0 0 42px;padding:0;border:1px solid #dce4f0;border-radius:12px;background:#fff;color:#245bea}
html body .st-header .st-account-link svg{display:block;width:22px;height:22px;flex:0 0 22px;margin:0}
html body .st-header .st-account-link:hover{background:#eaf0ff;border-color:#adc4f8}
html body .st-header .st-account-link:focus-visible{outline:3px solid #9dbaff;outline-offset:2px}
@media(max-width:650px){
 html body .st-header{gap:8px}
 html body .st-header .st-actions{gap:4px;margin-left:auto;flex-shrink:0}
 html body .st-header .st-account-link{width:40px;height:40px;min-height:40px;flex-basis:40px;border-radius:11px}
 html body .st-header .st-mobile-cart{position:relative;justify-content:center;width:40px;height:40px;min-height:40px;padding:0;gap:0}
 html body .st-header .st-mobile-cart .st-cart-count{position:absolute;top:-2px;right:-1px;font-size:10px;min-width:16px;padding:1px 4px}
}
@media(max-width:360px){html body>.st-header .st-brand img{width:96px!important}html body .st-header{gap:6px}html body .st-header .st-actions{gap:2px}}
/* Readable delivery note below purchase actions. */
html body .st-buy-panel>small{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.6;margin-top:18px}
/* Keep the mobile purchase area compact; full copy remains in product details. */
@media(max-width:650px){html body .st-product-info>.st-product-summary{display:none}}

.st-mobile-summary{display:none}
@media(max-width:650px){.st-mobile-summary{display:block}}

/* Compact home promotion copy */
html body .st-home-promo h2{font-size:22px;line-height:1.25;margin-bottom:12px}html body .st-home-promo p{font-size:13px;line-height:1.55;margin-bottom:15px}html body .st-home-promo small{font-size:10px;line-height:1.5}
@media(max-width:650px){html body .st-home-promo h2{font-size:20px}html body .st-home-promo p{font-size:12px}}

/* Reviews accent and paired mobile navigation. */
.st-drawer>nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.st-drawer>nav>a{grid-column:1/-1;min-width:0}
.st-drawer>nav>a[href="/downloads/"],.st-drawer>nav>a.st-nav-contacts{grid-column:auto;justify-content:center;padding-inline:10px;font-size:13px}
.st-drawer>nav>a.st-nav-contacts{border:1px solid #dce5f5;background:#f1f5fc;border-radius:12px}
.st-drawer>nav>a[href="/downloads/"],.st-drawer>nav>a.st-nav-contacts{grid-column:1/-1;justify-content:flex-start;padding-inline:14px;font-size:14px}
