/* Broviane v1.0.12 — information-page design system. */
:root {
  --bv112-paper: var(--bv-paper);
  --bv112-sand: var(--bv-sand);
  --bv112-sand-deep: var(--bv-deep);
  --bv112-line: var(--bv-line);
  --bv112-ink: var(--bv-ink);
  --bv112-copy: var(--bv-muted);
  --bv112-muted: var(--bv-muted);
  --bv112-faint: var(--bv-muted);
  --bv112-accent: var(--bv-accent);
  --bv112-serif: "Cormorant Garamond", Georgia, serif;
  --bv112-sans: Jost, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --bv112-mono: "IBM Plex Mono", ui-monospace, monospace;
}

body.bv-footer-info-page {
  background: var(--bv112-paper);
  color: var(--bv112-ink);
  font-family: var(--bv112-sans);
  font-variant-numeric: lining-nums tabular-nums;
  font-feature-settings: "lnum" 1, "tnum" 1, "onum" 0;
}
body.bv-footer-info-page main.bv-container { max-width: 1440px; padding: 0; width: 100%; }
body.bv-footer-info-page main.bv-section { padding-block: 0; }
body.bv-footer-info-page .bv-footer-page { background: var(--bv112-paper); }
body.bv-footer-info-page .bv-footer-page h1,
body.bv-footer-info-page .bv-footer-page h2,
body.bv-footer-info-page .bv-footer-page h3 { color: var(--bv112-ink); font-family: var(--bv112-serif); font-weight: 400; }
body.bv-footer-info-page .bv-footer-page p { font-family: var(--bv112-sans); }

body.bv-footer-info-page .bv-announcement {
  background: var(--bv112-ink); color: #f0e9df; font: 500 11.5px/1.4 var(--bv112-sans);
  letter-spacing: .06em; min-height: 0; padding: 9px 48px; text-align: center; text-transform: none;
}
body.bv-footer-info-page .bv-site-header { background: var(--bv112-paper); border-color: var(--bv112-line); }
body.bv-footer-info-page .bv-header-inner { min-height: 0; padding-block: 18px; width: min(1344px, calc(100% - 96px)); }
body.bv-footer-info-page .bv-logo { font: 500 22px/1 var(--bv112-sans); letter-spacing: .14em; }
body.bv-footer-info-page .bv-menu > li > a,
body.bv-footer-info-page .bv-header-tools > a { color: #4c4238; font: 400 13.5px/1 var(--bv112-sans); }

.bv112-page { background: var(--bv112-paper); color: var(--bv112-ink); }
.bv112-page *, .bv112-page *::before, .bv112-page *::after { box-sizing: border-box; }
.bv112-page h1, .bv112-page h2, .bv112-page h3, .bv112-page p { margin-top: 0; }
.bv112-breadcrumb { color: #786b5f; font: 400 11px/1.3 var(--bv112-mono) !important; letter-spacing: .18em; margin: 0 0 14px; }
.bv112-kicker { color: var(--bv112-accent); font: 700 11px/1.3 var(--bv112-sans) !important; letter-spacing: .18em; margin: 0 0 12px; text-transform: uppercase; }
.bv112-section-heading { align-items: flex-end; display: flex; gap: 40px; justify-content: space-between; margin-bottom: 30px; }
.bv112-section-heading h2 { font-size: 34px; line-height: 1.1; margin: 0; }
.bv112-section-heading > p { color: var(--bv112-muted); font: 400 13.5px/1.7 var(--bv112-sans) !important; margin: 0; max-width: 420px; }

.bv112-materials-hero { border-bottom: 1px solid var(--bv112-line); display: grid; grid-template-columns: 1.02fr .98fr; }
.bv112-materials-hero__copy { display: flex; flex-direction: column; justify-content: center; padding: 52px 48px; }
.bv112-materials-hero h1 { font-size: 46px; letter-spacing: -.015em; line-height: 1.08; margin: 0 0 16px; max-width: 560px; }
.bv112-materials-hero__copy > p:last-of-type { color: var(--bv112-copy); font: 400 15px/1.75 var(--bv112-sans) !important; margin: 0 0 26px; max-width: 540px; text-wrap: pretty; }
.bv112-text-links { display: flex; gap: 26px; }
.bv112-text-links a { border-bottom: 1px solid var(--bv112-ink); color: var(--bv112-ink); font: 600 12px/1.4 var(--bv112-sans); letter-spacing: .08em; padding-bottom: 4px; text-transform: uppercase; }
.bv112-text-links a + a { border-color: var(--bv112-accent); color: var(--bv112-accent); }
.bv112-materials-hero__image { background: var(--bv112-sand); border-left: 1px solid var(--bv112-line); height: 420px; margin: 0; }
.bv112-materials-hero__image img { display: block; height: 100%; object-fit: cover; width: 100%; }

.bv112-makeup { background: var(--bv112-line); border-bottom: 1px solid var(--bv112-line); display: grid; gap: 1px; grid-template-columns: repeat(3, 1fr); }
.bv112-makeup article { background: var(--bv112-paper); padding: 36px 40px 40px; }
.bv112-no { color: var(--bv112-accent); font: 400 11px/1.3 var(--bv112-mono) !important; letter-spacing: .14em; margin: 0 0 20px; }
.bv112-makeup h2 { font-size: 24px; font-weight: 500 !important; line-height: 1.15; margin: 0 0 6px; }
.bv112-spec { color: var(--bv112-accent); font: 700 10.5px/1.3 var(--bv112-sans) !important; letter-spacing: .14em; margin: 0 0 12px; text-transform: uppercase; }
.bv112-makeup article > p:last-child { color: var(--bv112-muted); font: 400 14px/1.75 var(--bv112-sans) !important; margin: 0; text-wrap: pretty; }

.bv112-size-section { border-bottom: 1px solid var(--bv112-line); padding: 52px 48px; }
.bv112-size-grid { background: var(--bv112-line); border: 1px solid var(--bv112-line); display: grid; gap: 1px; grid-template-columns: repeat(4, 1fr); }
.bv112-size-grid article { background: var(--bv112-paper); padding: 28px 26px 26px; }
.bv112-size-dot { align-items: center; display: flex; height: 56px; }
.bv112-size-dot span { background: radial-gradient(circle at 34% 30%, #f2ebe0, #cdbda9 62%, #a89680 100%); border-radius: 50%; display: block; height: var(--bv112-bead-size); width: var(--bv112-bead-size); }
.bv112-size-name { align-items: baseline; display: flex; gap: 5px; margin: 18px 0 4px; }
.bv112-size-name strong { font: 500 30px/1 var(--bv112-serif); }
.bv112-size-name span { color: var(--bv112-muted); font: 400 13px/1 var(--bv112-sans); }
.bv112-size-copy { color: var(--bv112-muted); font: 400 13.5px/1.7 var(--bv112-sans) !important; margin: 0 0 16px; min-height: 69px; text-wrap: pretty; }
.bv112-size-grid dl { border-top: 1px solid #ece4d8; margin: 0; }
.bv112-size-grid dl div { display: flex; gap: 12px; justify-content: space-between; padding: 8px 0; }
.bv112-size-grid dl div:not(:last-child) { border-bottom: 1px solid #ece4d8; }
.bv112-size-grid dt { color: var(--bv112-faint); font: 400 11px/1.4 var(--bv112-mono); letter-spacing: .08em; }
.bv112-size-grid dd { font: 500 13px/1.4 var(--bv112-sans); margin: 0; text-align: right; }

.bv112-material-reference { background: var(--bv112-sand); padding: 52px 48px; }
.bv112-material-reference .bv112-section-heading { margin-bottom: 24px; }
.bv112-material-reference .bv112-section-heading > p { max-width: 460px; }
.bv112-material-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 26px; }
.bv112-material-filters button { align-items: center; background: transparent; border: 1px solid #d8cebf; color: var(--bv112-copy); cursor: pointer; display: inline-flex; font: 500 12px/1 var(--bv112-sans); gap: 8px; letter-spacing: .04em; padding: 8px 13px; }
.bv112-material-filters button.is-active { background: var(--bv112-ink); border-color: var(--bv112-ink); color: var(--bv112-paper); }
.bv112-material-filters button b { font-weight: 400; opacity: .6; }
.bv112-dot { background: var(--bv112-dot); border-radius: 50%; display: block; height: 9px; width: 9px; }
.bv112-dot--all { background: linear-gradient(135deg, #7d6a94, #c9a24a); }
.bv112-stone-grid { display: grid; gap: 14px; grid-template-columns: repeat(6, 1fr); }
.bv112-stone-card { align-items: stretch; background: var(--bv112-paper); border: 1px solid var(--bv112-line); color: var(--bv112-ink); cursor: pointer; display: flex; flex-direction: column; padding: 12px 14px 14px; text-align: left; }
.bv112-stone-card[hidden] { display: none; }
.bv112-stone-card__image { aspect-ratio: 1; background: var(--bv112-paper); display: block; overflow: hidden; width: 100%; }
.bv112-stone-card__image img { display: block; height: 100%; object-fit: cover; width: 100%; }
.bv112-stone-card > strong { font: 500 16px/1.2 var(--bv112-serif); margin: 12px 0 2px; }
.bv112-stone-card > small { color: #786b5f; font: 400 10px/1.3 var(--bv112-mono); letter-spacing: .1em; margin: 0 0 8px; }
.bv112-stone-card__look { color: var(--bv112-muted); font: 400 12px/1.5 var(--bv112-sans); margin: 0 0 12px; min-height: 44px; text-wrap: pretty; }
.bv112-stone-card__meta { align-items: center; border-top: 1px solid #ece4d8; display: flex; gap: 8px; justify-content: space-between; margin-top: auto; padding-top: 9px; }
.bv112-stone-card__meta small { color: var(--bv112-faint); font: 400 10px/1 var(--bv112-mono); letter-spacing: .08em; white-space: nowrap; }
.bv112-stone-card__meta em { color: var(--bv112-tier); font: normal 700 9px/1 var(--bv112-sans); letter-spacing: .12em; white-space: nowrap; }
.bv112-note { border-left: 2px solid var(--bv112-accent); color: var(--bv112-copy); font: 400 14px/1.8 var(--bv112-sans) !important; margin: 26px 0 0; max-width: 900px; padding: 3px 0 3px 20px; text-wrap: pretty; }

.bv112-cta { align-items: center; background: var(--bv112-sand-deep); display: grid; gap: 40px; grid-template-columns: 1fr auto; padding: 40px 48px; }
.bv112-cta h2 { font-size: 28px; line-height: 1.15; margin: 0 0 6px; }
.bv112-cta p { color: var(--bv112-copy); font: 400 14px/1.75 var(--bv112-sans) !important; margin: 0; max-width: 720px; }
.bv112-button { align-items: center; background: var(--bv112-ink); border: 1px solid var(--bv112-ink); color: var(--bv112-paper) !important; display: inline-flex; font: 500 12px/1 var(--bv112-sans); letter-spacing: .14em; padding: 14px 26px; text-transform: uppercase; }
.bv112-button--outline { background: transparent; color: var(--bv112-ink) !important; }

/* Care & Fit */
.bv112-care-hero { background: var(--bv112-sand); border-bottom: 1px solid var(--bv112-line); display: grid; grid-template-columns: 1.02fr .98fr; }
.bv112-care-hero__copy { display: flex; flex-direction: column; justify-content: center; padding: 52px 48px 44px; }
.bv112-care-hero h1, .bv112-simple-hero h1 { font-size: 46px; letter-spacing: -.015em; line-height: 1.08; margin: 0 0 14px; max-width: 820px; }
.bv112-care-hero__copy > p:last-child, .bv112-simple-hero > p:last-child { color: var(--bv112-copy); font: 400 15px/1.8 var(--bv112-sans) !important; margin: 0; max-width: 760px; text-wrap: pretty; }
.bv112-care-hero figure { height: 420px; margin: 0; overflow: hidden; }
.bv112-care-hero figure img { display: block; height: 100%; object-fit: cover; object-position: center; width: 100%; }
.bv112-fit-pair, .bv112-care-pair { background: var(--bv112-line); border-bottom: 1px solid var(--bv112-line); display: grid; gap: 1px; grid-template-columns: 1fr 1fr; }
.bv112-fit-pair > div, .bv112-care-pair > div { background: var(--bv112-paper); padding: 48px; }
.bv112-fit-pair h2, .bv112-care-pair h2 { font-size: 32px; line-height: 1.12; margin: 0 0 22px; }
.bv112-measure ol { border-top: 1px solid #ece4d8; list-style: none; margin: 0; padding: 0; }
.bv112-measure li { border-bottom: 1px solid #ece4d8; display: grid; gap: 16px; grid-template-columns: 32px 1fr; padding: 16px 0; }
.bv112-measure li > span { color: var(--bv112-accent); font: 400 11px/1.7 var(--bv112-mono); letter-spacing: .1em; }
.bv112-measure li p { color: #4c4238; font: 400 14.5px/1.7 var(--bv112-sans) !important; margin: 0; text-wrap: pretty; }
.bv112-callout { background: var(--bv112-sand); border-left: 2px solid var(--bv112-accent); color: #4c4238; font: 400 14px/1.75 var(--bv112-sans) !important; margin: 20px 0 0; padding: 14px 18px; text-wrap: pretty; }
.bv112-callout strong { font-weight: 600; }
.bv112-wrist-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.bv112-wrist-tabs button { background: transparent; border: 1px solid #d8cebf; color: var(--bv112-copy); cursor: pointer; font: 500 12px/1 var(--bv112-sans); letter-spacing: .04em; padding: 8px 13px; }
.bv112-wrist-tabs button.is-active { background: var(--bv112-ink); border-color: var(--bv112-ink); color: var(--bv112-paper); }
.bv112-fit-table { border: 1px solid var(--bv112-line); }
.bv112-fit-head, .bv112-fit-row { display: grid; grid-template-columns: 1.6fr repeat(4, 1fr); }
.bv112-fit-head { background: #eee5d7; color: #4c4238; font: 400 11px/1.3 var(--bv112-mono); letter-spacing: .12em; }
.bv112-fit-head span, .bv112-fit-row span { padding: 12px 16px; }
.bv112-fit-row { background: var(--bv112-paper); border-top: 1px solid var(--bv112-line); }
.bv112-fit-row.is-active { background: var(--bv112-sand); }
.bv112-fit-row span { color: var(--bv112-copy); font: 400 14px/1.4 var(--bv112-sans); padding-block: 14px; }
.bv112-fit-row span:first-child { color: var(--bv112-ink); font-weight: 500; }
.bv112-fit-row small { color: var(--bv112-faint); font-weight: 400; }
.bv112-caption { color: var(--bv112-muted); font: 400 13px/1.7 var(--bv112-sans) !important; margin: 14px 0 0; }
.bv112-wearing { border-bottom: 1px solid var(--bv112-line); padding: 52px 48px; }
.bv112-wearing > h2 { font-size: 34px; line-height: 1.1; margin: 0 0 30px; }
.bv112-wearing > div { background: var(--bv112-line); border: 1px solid var(--bv112-line); display: grid; gap: 1px; grid-template-columns: repeat(3, 1fr); }
.bv112-wearing article { background: var(--bv112-paper); padding: 28px 30px 30px; }
.bv112-wearing article .bv112-no { margin-bottom: 16px; }
.bv112-wearing h3 { font-size: 22px; font-weight: 500 !important; line-height: 1.18; margin: 0 0 8px; }
.bv112-wearing article > p:last-child { color: var(--bv112-muted); font: 400 14px/1.75 var(--bv112-sans) !important; margin: 0; text-wrap: pretty; }
.bv112-care-media { align-items: stretch; background: var(--bv112-paper); border-bottom: 1px solid var(--bv112-line); display: grid; grid-template-columns: .72fr 1.28fr; }
.bv112-care-media figure { aspect-ratio: 1; margin: 0; max-height: 420px; overflow: hidden; }
.bv112-care-media img { display: block; height: 100%; object-fit: cover; width: 100%; }
.bv112-care-media > div { display: flex; flex-direction: column; justify-content: center; padding: 48px; }
.bv112-care-media h2 { font-size: 32px; line-height: 1.12; margin: 0 0 12px; }
.bv112-care-media div > p:last-child { color: var(--bv112-muted); font: 400 14px/1.75 var(--bv112-sans) !important; margin: 0; max-width: 620px; }
.bv112-habits { background: var(--bv112-sand) !important; }
.bv112-habits > div { background: #e0d6c7; border: 1px solid #e0d6c7; display: grid; gap: 1px; }
.bv112-habits > div p { background: var(--bv112-paper); color: #4c4238; display: grid; font: 400 14px/1.7 var(--bv112-sans) !important; gap: 13px; grid-template-columns: 18px 1fr; margin: 0; padding: 14px 16px; text-wrap: pretty; }
.bv112-habits > div p span { color: #4f6b4a; }
.bv112-habits aside { align-items: center; display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.bv112-habits aside strong { font: 600 14px/1 var(--bv112-sans); margin-right: 6px; }
.bv112-habits aside span { background: var(--bv112-paper); border: 1px solid #ccbca6; color: var(--bv112-copy); font: 400 13px/1 var(--bv112-sans); padding: 7px 12px; }
.bv112-durability__intro { color: var(--bv112-muted); font: 400 14px/1.75 var(--bv112-sans) !important; margin: -14px 0 24px; max-width: 620px; }
.bv112-durability > div { display: grid; gap: 14px; grid-template-columns: repeat(3, 1fr); }
.bv112-durability article { border: 1px solid var(--bv112-line); padding: 20px 20px 22px; }
.bv112-tier-range { align-items: center; color: #786b5f; display: flex; font: 400 10px/1 var(--bv112-mono) !important; gap: 8px; letter-spacing: .1em; margin: 0 0 14px; }
.bv112-tier-range i { background: var(--bv112-tier); border-radius: 50%; display: block; height: 9px; width: 9px; }
.bv112-durability h3 { font-size: 21px; font-weight: 500 !important; line-height: 1.18; margin: 0 0 4px; }
.bv112-durability article > small { color: var(--bv112-faint); display: block; font: 500 10.5px/1.3 var(--bv112-sans); letter-spacing: .1em; margin-bottom: 12px; text-transform: uppercase; }
.bv112-durability article > p:not(.bv112-tier-range) { color: var(--bv112-muted); font: 400 13.5px/1.7 var(--bv112-sans) !important; margin: 0 0 14px; text-wrap: pretty; }
.bv112-durability ul { border-top: 1px solid #ece4d8; display: grid; gap: 7px; list-style: none; margin: 0; padding: 13px 0 0; }
.bv112-durability li { color: var(--bv112-copy); font: 400 13px/1.6 var(--bv112-sans); padding-left: 21px; position: relative; text-wrap: pretty; }
.bv112-durability li::before { color: #b3a795; content: "·"; left: 0; position: absolute; }
.bv112-kit-cta { align-items: stretch; background: var(--bv112-sand-deep); display: grid; grid-template-columns: 1fr 360px; }
.bv112-kit-cta__copy { align-self: center; padding: 40px 48px; }
.bv112-kit-cta h2 { font-size: 28px; line-height: 1.15; margin: 0 0 6px; }
.bv112-kit-cta p { color: var(--bv112-copy); font: 400 14px/1.75 var(--bv112-sans) !important; margin: 0 0 20px; max-width: 780px; }
.bv112-kit-cta figure { margin: 0; min-height: 230px; overflow: hidden; }
.bv112-kit-cta img { display: block; height: 100%; object-fit: cover; width: 100%; }

/* FAQ */
.bv112-simple-hero { background: var(--bv112-sand); border-bottom: 1px solid var(--bv112-line); padding: 52px 48px 44px; }
.bv112-faq-layout { display: grid; grid-template-columns: 320px 1fr; }
.bv112-faq-layout > aside { border-right: 1px solid var(--bv112-line); padding: 48px; }
.bv112-faq-layout > aside nav { border-top: 1px solid #ece4d8; display: grid; margin-bottom: 28px; }
.bv112-faq-layout > aside nav a { border-bottom: 1px solid #ece4d8; color: var(--bv112-copy); font: 500 14px/1.4 var(--bv112-sans); padding: 14px 0; }
.bv112-faq-groups { padding: 48px; }
.bv112-faq-groups section { scroll-margin-top: 24px; }
.bv112-faq-groups section + section { margin-top: 52px; }
.bv112-faq-groups details { border-bottom: 1px solid var(--bv112-line); }
.bv112-faq-groups details:first-of-type { border-top: 1px solid var(--bv112-line); }
.bv112-faq-groups summary { align-items: center; color: var(--bv112-ink); cursor: pointer; display: flex; font: 500 20px/1.25 var(--bv112-serif); justify-content: space-between; list-style: none; padding: 18px 0; }
.bv112-faq-groups summary::-webkit-details-marker { display: none; }
.bv112-faq-groups summary span { font: 400 20px/1 var(--bv112-sans); transition: transform .2s ease; }
.bv112-faq-groups details[open] summary span { transform: rotate(45deg); }
.bv112-faq-groups details > p { color: var(--bv112-muted); font: 400 15px/1.75 var(--bv112-sans) !important; margin: 0; max-width: 800px; padding: 0 0 20px; }

/* Existing information pages use the same tokens and typography. */
.bv-footer-page:not(.bv-footer-page--materials-care):not(.bv-footer-page--care-fit):not(.bv-footer-page--faq) .bv-info-hero { background: var(--bv112-sand); border-color: var(--bv112-line); padding: 52px 48px 44px; }
.bv-footer-page:not(.bv-footer-page--materials-care):not(.bv-footer-page--care-fit):not(.bv-footer-page--faq) .bv-info-hero h1 { font: 400 46px/1.08 var(--bv112-serif); letter-spacing: -.015em; }
.bv-footer-page:not(.bv-footer-page--materials-care):not(.bv-footer-page--care-fit):not(.bv-footer-page--faq) .bv-info-hero > p:last-child,
.bv-footer-page:not(.bv-footer-page--materials-care):not(.bv-footer-page--care-fit):not(.bv-footer-page--faq) .bv-info-hero > div > p:last-child { color: var(--bv112-copy); font: 400 15px/1.8 var(--bv112-sans) !important; }
.bv-footer-page .bv-info-section p, .bv-footer-page .bv-story-sections p, .bv-footer-page .bv-promise-grid p, .bv-footer-page .bv-legal-copy p { font-family: var(--bv112-sans); }
.bv-footer-page .bv-info-section p,
.bv-footer-page .bv-story-sections p,
.bv-footer-page .bv-promise-grid p,
.bv-footer-page .bv-channel-grid p,
.bv-footer-page .bv-self-service p,
.bv-footer-page .bv-return-promise li,
.bv-footer-page .bv-eligibility p,
.bv-footer-page .bv-legal-copy p { font-size: 14px; line-height: 1.75; }
.bv-footer-page--privacy-policy .bv-legal-copy > article > p { font-size: 15px; }
.bv-footer-page .bv-track-box { background: var(--bv112-sand-deep); color: var(--bv112-ink); }
.bv-footer-page .bv-track-box h2, .bv-footer-page .bv-track-box p, .bv-footer-page .bv-track-box label { color: inherit; }
.bv-footer-page .bv-detail-grid { grid-template-columns: repeat(3, 1fr); }
.bv-footer-page .bv-contact-form-panel form > label,
.bv-footer-page .bv-contact-form-panel fieldset legend { font-size: 14px; }
.bv-footer-page .bv-company-details > summary { align-items: flex-end; cursor: pointer; display: flex; justify-content: space-between; list-style: none; padding: 32px 48px; }
.bv-footer-page .bv-company-details > summary::-webkit-details-marker { display: none; }
.bv-footer-page .bv-company-details > summary > div { display: grid; gap: 6px; }
.bv-footer-page .bv-company-details > summary h2 { margin: 0; }
.bv-footer-page .bv-company-details > summary span { color: var(--bv112-faint); font: 400 10px/1.3 var(--bv112-mono); letter-spacing: .1em; }
.bv-footer-page .bv-company-details > summary > p { color: var(--bv112-muted); font: 400 14px/1.6 var(--bv112-sans); margin: 0; }
.bv-footer-page .bv-legal-copy > article h2 { font-weight: 500; }
.bv-footer-page .bv-legal-summary, .bv-terms-summary { background: var(--bv112-sand); border-left: 2px solid var(--bv112-accent); color: var(--bv112-copy); }
.bv-footer-page .bv-legal-layout aside nav a.is-active { color: var(--bv112-ink); font-weight: 600; }
body.bv-footer-info-page .bv-service-footer { background: var(--bv112-paper); border-color: var(--bv112-line); color: var(--bv112-muted); }
body.bv-footer-info-page .bv-service-footer .bv-container { max-width: 1440px; padding: 24px 48px; width: 100%; }
body.bv-footer-info-page .bv-service-footer,
body.bv-footer-info-page .bv-service-footer a { font: 400 13px/1.4 var(--bv112-sans); }

@media (max-width: 1050px) {
  .bv112-stone-grid { grid-template-columns: repeat(4, 1fr); }
  .bv112-care-pair { grid-template-columns: 1fr; }
  .bv112-durability > div { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  body.bv-footer-info-page .bv-announcement { font-size: 10.5px; padding: 8px 18px; }
  body.bv-footer-info-page .bv-header-inner { padding-block: 15px; width: calc(100% - 36px); }
  .bv112-materials-hero, .bv112-care-hero { grid-template-columns: 1fr; }
  .bv112-materials-hero__copy, .bv112-care-hero__copy, .bv112-simple-hero { padding: 40px 24px 36px; }
  .bv112-materials-hero h1, .bv112-care-hero h1, .bv112-simple-hero h1 { font-size: 39px; }
  .bv112-materials-hero__image, .bv112-care-hero figure { border-left: 0; border-top: 1px solid var(--bv112-line); height: min(92vw, 420px); }
  .bv112-materials-hero__image img { object-position: center; }
  .bv112-care-hero figure img { object-position: 46% center; }
  .bv112-makeup, .bv112-size-grid, .bv112-wearing > div { grid-template-columns: 1fr; }
  .bv112-makeup article, .bv112-size-grid article, .bv112-wearing article { padding-inline: 24px; }
  .bv112-size-section, .bv112-material-reference, .bv112-wearing { padding: 40px 24px; }
  .bv112-section-heading { align-items: flex-start; flex-direction: column; gap: 14px; }
  .bv112-size-copy { min-height: 0; }
  .bv112-stone-grid { grid-template-columns: repeat(2, 1fr); }
  .bv112-stone-card { padding: 9px 10px 12px; }
  .bv112-cta { align-items: flex-start; grid-template-columns: 1fr; padding: 34px 24px; }
  .bv112-fit-pair { grid-template-columns: 1fr; }
  .bv112-fit-pair > div, .bv112-care-pair > div { padding: 40px 24px; }
  .bv112-fit-table { overflow-x: auto; }
  .bv112-fit-head, .bv112-fit-row { min-width: 620px; }
  .bv112-care-media { grid-template-columns: 1fr; }
  .bv112-care-media figure { max-height: none; }
  .bv112-care-media > div { padding: 36px 24px; }
  .bv112-durability > div { grid-template-columns: 1fr; }
  .bv112-kit-cta { grid-template-columns: 1fr; }
  .bv112-kit-cta__copy { padding: 36px 24px; }
  .bv112-kit-cta figure { aspect-ratio: 14 / 9; order: -1; }
  .bv112-faq-layout { grid-template-columns: 1fr; }
  .bv112-faq-layout > aside { border-bottom: 1px solid var(--bv112-line); border-right: 0; padding: 32px 24px; }
  .bv112-faq-groups { padding: 40px 24px; }
  .bv-footer-page .bv-company-details > summary { align-items: flex-start; flex-direction: column; gap: 12px; padding: 28px 24px; }
}

/* v1.3.2 — compact page rhythm without changing the information-page type system. */
@media (min-width: 901px) {
  .bv112-materials-hero__copy,
  .bv112-care-hero__copy { padding: 40px 48px; }
  .bv112-materials-hero__image,
  .bv112-care-hero figure { height: 360px; }
  .bv112-makeup article { padding: 28px 32px 30px; }
  .bv112-size-section,
  .bv112-material-reference,
  .bv112-wearing { padding: 40px 48px; }
  .bv112-fit-pair > div,
  .bv112-care-pair > div { padding: 38px 40px; }
  .bv112-care-media figure { max-height: 360px; }
  .bv112-care-media > div { padding: 38px 40px; }
  .bv112-kit-cta__copy { padding: 34px 40px; }
  .bv112-simple-hero { padding: 38px 48px 34px; }

  .bv112-faq-layout { grid-template-columns: 260px minmax(0, 1fr); }
  .bv112-faq-layout > aside { padding: 34px 36px; }
  .bv112-faq-groups {
    align-items: start;
    display: grid;
    gap: 32px 38px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 34px 40px;
  }
  .bv112-faq-groups section + section { margin-top: 0; }
  .bv112-faq-groups summary { padding: 15px 0; }

  .bv-footer-page:not(.bv-footer-page--materials-care):not(.bv-footer-page--care-fit):not(.bv-footer-page--faq) .bv-info-hero {
    padding: 38px 48px 34px;
  }
  .bv-footer-page--about .bv-info-hero--split { height: 360px; padding: 36px 48px; }
  .bv-footer-page--about .bv-info-hero--split > div { padding: 28px 32px; }
  .bv-footer-page--about .bv-about-story-layout { gap: 32px; padding: 40px 48px 0; }
  .bv-footer-page--about .bv-story-sections { gap: 18px; }
  .bv-footer-page--about .bv-stat-strip::before { height: 240px; }
  .bv-footer-page--about .bv-info-section:has(.bv-promise-grid) { padding: 38px 48px; }
  .bv-footer-page--about .bv-company-details { padding: 0; }
  .bv-footer-page--about .bv-company-details > summary { padding: 34px 48px 24px; }
  .bv-footer-page--about .bv-company-details dl { margin: 0 48px 38px; }

  .bv-footer-page--contact .bv-info-hero,
  .bv-footer-page--shipping-policy .bv-info-hero { padding: 36px 48px 6px; }
  .bv-footer-page--contact .bv-channel-grid { padding: 26px 48px 0; }
  .bv-footer-page--contact .bv-contact-layout {
    gap: 32px;
    grid-template-columns: .8fr 1.2fr;
    padding: 32px 48px 38px;
  }
  .bv-footer-page--contact .bv-contact-layout > div + div { padding: 26px 28px; }
  .bv-footer-page--contact .bv-contact-form-panel form { gap: 14px; margin-top: 20px; }

  .bv-footer-page--privacy-policy .bv-info-hero,
  .bv-footer-page--terms-conditions .bv-info-hero { padding: 34px 48px; }
  .bv-footer-page--privacy-policy .bv-legal-layout,
  .bv-footer-page--terms-conditions .bv-legal-layout { gap: 36px; padding: 34px 48px 40px; }
  .bv-footer-page--privacy-policy .bv-legal-copy,
  .bv-footer-page--terms-conditions .bv-legal-copy { gap: 24px; }

  .bv-footer-page--shipping-policy .bv-stat-strip { padding: 24px 48px 0; }
  .bv-footer-page--shipping-policy .bv-info-section:has(.bv-data-table--shipping) { padding: 32px 48px 0; }
  .bv-footer-page--shipping-policy .bv-info-section:has(.bv-detail-grid) { padding: 32px 48px; }
  .bv-footer-page--shipping-policy .bv-detail-grid { gap: 26px 34px; }
  .bv-footer-page--shipping-policy .bv-track-box { padding: 30px 48px; }

  .bv-footer-page--returns-refunds .bv-return-hero .bv-info-hero,
  .bv-footer-page--returns-refunds .bv-return-promise { padding: 36px 48px; }
  .bv-footer-page--returns-refunds .bv-info-section:has(.bv-number-grid--steps) { padding: 34px 48px 0; }
  .bv-footer-page--returns-refunds .bv-eligibility { padding: 32px 48px; }
  .bv-footer-page--returns-refunds .bv-info-section:has(.bv-data-table--refunds) { padding: 0 48px 38px; }
}

@media (max-width: 760px) {
  .bv112-materials-hero__copy,
  .bv112-care-hero__copy,
  .bv112-simple-hero { padding-bottom: 30px; padding-top: 32px; }
  .bv112-size-section,
  .bv112-material-reference,
  .bv112-wearing { padding-bottom: 34px; padding-top: 34px; }
  .bv112-fit-pair > div,
  .bv112-care-pair > div { padding-bottom: 34px; padding-top: 34px; }
  .bv112-faq-layout > aside { padding-bottom: 26px; padding-top: 26px; }
  .bv112-faq-groups { padding-bottom: 34px; padding-top: 34px; }
}
