/* Shared storefront typography. Icon fonts, shirt lettering and image labels retain their own rendering. */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
:root { --site-font:"DM Sans",Arial,sans-serif; }
body { font-family:var(--site-font); }
body :is(h1,h2,h3,h4,h5,h6) { font-family:var(--site-font)!important; }
body :is(h1,h2) { font-weight:500; letter-spacing:-.025em; line-height:1.25; }
body :is(h3,h4) { font-weight:500; line-height:1.4; }
body :is(.orders-page,.checkout-page,.contact-page,.about-page,.journal,.corporate-landing,.customer-tools-page,.mz-choice-page,.password-recovery-card) { font-family:var(--site-font); }
body :is(.orders-page,.checkout-page,.contact-v2,.account-drawer,.checkout-account,.password-recovery-card) :is(input,select,textarea,button) { font-family:var(--site-font)!important; }
body :is(.orders-page .title,.mesures__title,.cart-summary__title,.header-account-intro strong,.about-quote,.history-year,.about-stat strong,.about-style blockquote,.review-story blockquote p,.review-story-mark,.fit-reassurance-heading strong) { font-family:var(--site-font)!important; }
body :is(.orders-page,.mz-choice-page,.contact-v2,.checkout-heading,.cart-page-heading,.password-recovery-card) h1 { font-size:clamp(26px,2.7vw,36px)!important; font-weight:500!important; line-height:1.25; }
body :is(.orders-page .orders-empty,.journal-empty) h1 { font-size:30px!important; }
body .block-profile h3 { font-size:22px; font-weight:500!important; }
body .block-profile .account-sidebar-label { font-size:13px; line-height:1.5; text-transform:none; }
body :is(.mz-choice-card h3,.checkout-measure-dialog h2,.contact-v2 .fieldset h3) { font-size:24px; font-weight:500; line-height:1.3; }
body :is(.mz-choice-text,.contact-v2__intro p,.journal-card p,.about-page p,.corporate-landing .corp-lead) { font-size:15px; line-height:1.75; }
body :is(.checkout-card h2,.orders-page h2) { font-weight:500; line-height:1.35; }
body :is(.about-page,.journal,.corporate-landing) h1 { font-size:clamp(30px,3.5vw,44px); font-weight:500; line-height:1.2; }
body :is(.about-page,.journal,.corporate-landing) h2 { font-weight:500; letter-spacing:-.02em; }
@media(max-width:600px) {
  body :is(.orders-page .orders-empty,.journal-empty) h1 { font-size:26px!important; }
  body :is(.mz-choice-card h3,.checkout-measure-dialog h2) { font-size:22px; }
}

/* Account sidebar: larger uppercase labels and one active item. */
body .block-profile h3 {
  font-family:var(--site-font)!important; font-size:22px!important;
  font-weight:500!important; line-height:1.35; letter-spacing:0; color:#29473d;
}
body .block-profile li a.account-sidebar-link {
  font-family:var(--site-font)!important; font-size:14px!important;
  font-weight:500; line-height:1.5; letter-spacing:.01em; text-transform:uppercase!important;
  color:#6b6560; gap:10px; min-height:52px;
}
body .block-profile .account-sidebar-label { display:block; font-size:14px; line-height:1.5; text-transform:uppercase!important; }
body .block-profile li.active a.account-sidebar-link { color:#252925; font-weight:700; background:#f8f9fc; }
body .block-profile li a.account-sidebar-link:hover { color:#29473d; background:#f8f9fc; }
@media(max-width:767px) {
  body .block-profile li a.account-sidebar-link { min-height:44px; }
}
