/*
Theme Name: BG Suiting
Author: BG Suiting
Description: A mobile-first editorial storefront for BG Suiting.
Version: 2.3.1
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: bg-suiting
*/

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');

:root {
	--bg-ink: #141513;
	--bg-ink-soft: #22241f;
	--bg-cream: #f5f0e8;
	--bg-paper: #fbf9f5;
	--bg-line: rgba(20, 21, 19, 0.14);
	--bg-gold: #d7aa52;
	--bg-gold-light: #f1d89c;
	--bg-red: #81383f;
	--bg-blue: #20324f;
	--bg-muted: #686b64;
	--bg-shadow: 0 24px 70px rgba(20, 21, 19, 0.14);
	--bg-radius: 2px;
}

/* Style Journal */
.bg-journal-hero { position: relative; overflow: hidden; background: var(--bg-blue); color: #fff; }
.bg-journal-hero::before { content: ''; position: absolute; width: min(58vw, 760px); height: min(58vw, 760px); right: -16vw; top: -44%; border: 1px solid rgba(241,216,156,.22); border-radius: 50%; box-shadow: 0 0 0 34px rgba(241,216,156,.035), 0 0 0 68px rgba(241,216,156,.025); }
.bg-journal-hero::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(112deg, transparent 0 64%, rgba(255,255,255,.035) 64% 64.2%, transparent 64.2%); }
.bg-journal-hero__inner { position: relative; z-index: 1; width: min(1280px, calc(100% - 40px)); min-height: 430px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr) 245px; align-items: end; gap: 70px; padding: clamp(72px, 9vw, 128px) 0 clamp(58px, 7vw, 88px); }
.bg-journal-hero__copy { max-width: 720px; }
.bg-journal-hero .bg-eyebrow { color: var(--bg-gold-light); }
.bg-journal-hero h1 { max-width: 650px; margin: 18px 0 24px; color: #fff; font: 600 clamp(70px, 10vw, 138px)/.78 'Cormorant Garamond', Georgia, serif; letter-spacing: -.055em; }
.bg-journal-hero h1 em { color: var(--bg-gold); font-style: normal; }
.bg-journal-hero__lead { max-width: 560px; margin: 0; color: rgba(255,255,255,.77); font-size: clamp(16px, 1.7vw, 20px); line-height: 1.6; }
.bg-journal-hero__rule { width: 100%; height: 1px; margin: 42px 0 18px; background: linear-gradient(90deg, var(--bg-gold), rgba(241,216,156,.16) 70%, transparent); }
.bg-journal-hero__signals { display: flex; flex-wrap: wrap; gap: 10px 28px; color: rgba(255,255,255,.55); text-transform: uppercase; letter-spacing: .12em; font-size: 10px; font-weight: 600; }
.bg-journal-hero__signals span { display: inline-flex; align-items: center; gap: 8px; }
.bg-journal-hero__signals strong { color: var(--bg-gold-light); font: 600 17px/1 'Cormorant Garamond', Georgia, serif; letter-spacing: 0; }
.bg-journal-hero__stamp { position: relative; width: 220px; min-height: 220px; display: flex; flex-direction: column; justify-content: center; border: 1px solid rgba(241,216,156,.55); padding: 30px; transform: rotate(3deg); color: var(--bg-gold-light); }
.bg-journal-hero__stamp::before { content: ''; position: absolute; inset: 9px; border: 1px solid rgba(241,216,156,.2); }
.bg-journal-hero__stamp span, .bg-journal-hero__stamp small { position: relative; text-transform: uppercase; letter-spacing: .2em; font-size: 10px; }
.bg-journal-hero__stamp strong { position: relative; margin: 12px 0; color: #fff; font: 600 37px/.82 'Cormorant Garamond', Georgia, serif; letter-spacing: -.03em; }
.bg-journal-hero__stamp small { color: rgba(255,255,255,.55); }
.bg-journal-list { max-width: 1280px; margin: 0 auto; padding: clamp(68px, 8vw, 112px) 20px; }
.bg-section-heading--journal { display: grid; grid-template-columns: minmax(0, 1fr) minmax(230px, .64fr) auto; align-items: end; gap: 42px; }
.bg-section-heading--journal .bg-journal-list__intro { max-width: 370px; margin: 0; color: var(--bg-muted); font-size: 14px; line-height: 1.7; }
.bg-section-heading--journal .bg-text-link { justify-self: end; }
.bg-journal-feature { display: grid; grid-template-columns: minmax(0, 1fr) minmax(245px, .38fr); gap: 28px; align-items: stretch; margin-top: 18px; }
.bg-journal-feature__article { min-width: 0; }
.bg-journal-feature__note { display: flex; flex-direction: column; justify-content: center; min-height: 100%; padding: clamp(30px, 4vw, 55px); background: var(--bg-cream); border-top: 4px solid var(--bg-red); }
.bg-journal-feature__note h3 { max-width: 300px; margin: 0 0 17px; font: 600 clamp(34px, 4vw, 48px)/.91 'Cormorant Garamond', Georgia, serif; letter-spacing: -.03em; }
.bg-journal-feature__note > p:not(.bg-section-kicker) { max-width: 300px; margin: 0 0 28px; color: var(--bg-muted); font-size: 13px; line-height: 1.7; }
.bg-journal-card { min-width: 0; overflow: hidden; background: #fff; border: 1px solid var(--bg-line); box-shadow: 0 18px 50px rgba(20,21,19,.07); }
.bg-journal-card__media { position: relative; display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 3; overflow: hidden; background: var(--bg-cream); }
.bg-journal-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s cubic-bezier(.2,.6,.2,1); }
.bg-journal-card__media:hover img, .bg-journal-card__media:focus-visible img { transform: scale(1.045); }
.bg-journal-card__media::after { content: ''; position: absolute; inset: auto 0 0; height: 35%; pointer-events: none; background: linear-gradient(transparent, rgba(20,21,19,.28)); }
.bg-journal-card__media-label { position: absolute; z-index: 1; left: 20px; bottom: 17px; color: rgba(255,255,255,.9); text-transform: uppercase; letter-spacing: .18em; font-size: 9px; font-weight: 700; }
.bg-journal-card__mark { color: var(--bg-red); font: 600 64px/.9 'Cormorant Garamond', Georgia, serif; letter-spacing: .08em; }
.bg-journal-card__body { padding: 25px 27px 29px; }
.bg-journal-card__meta { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; margin: 0 0 16px; color: var(--bg-red); text-transform: uppercase; letter-spacing: .12em; font-size: 9px; font-weight: 700; }
.bg-journal-card__meta span:nth-child(2), .bg-journal-card__meta span:nth-child(4) { color: rgba(20,21,19,.35); }
.bg-journal-card h2 { margin: 0 0 14px; font: 600 34px/.92 'Cormorant Garamond', Georgia, serif; letter-spacing: -.025em; }
.bg-journal-card h2 a { color: var(--bg-ink); }
.bg-journal-card h2 a:hover, .bg-journal-card h2 a:focus { color: var(--bg-red); }
.bg-journal-card__excerpt { min-height: 65px; margin: 0 0 22px; color: var(--bg-muted); font-size: 13px; line-height: 1.65; }
.bg-journal-card .bg-text-link { font-size: 10px; }
.bg-journal-card--featured { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(260px, .92fr); height: 100%; }
.bg-journal-card--featured .bg-journal-card__media { aspect-ratio: auto; min-height: 420px; }
.bg-journal-card--featured .bg-journal-card__body { display: flex; flex-direction: column; justify-content: center; padding: clamp(28px, 5vw, 72px); }
.bg-journal-card--featured h2 { max-width: 530px; font-size: clamp(40px, 5vw, 68px); }
.bg-journal-card--featured .bg-journal-card__excerpt { max-width: 430px; min-height: 0; font-size: 14px; }
.bg-journal-latest-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; margin: 86px 0 25px; padding-top: 21px; border-top: 1px solid var(--bg-line); }
.bg-journal-latest-heading .bg-section-kicker { margin: 0; }
.bg-journal-latest-heading > p:last-child { margin: 0; color: var(--bg-muted); font-size: 13px; }
.bg-journal-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.bg-journal-page .bg-pagination { margin-top: 45px; }

/* Journal article */
.bg-journal-single { background: var(--bg-paper); }
.bg-journal-single__crumbs { width: min(1040px, calc(100% - 40px)); margin: 0 auto; padding: 34px 0 0; color: var(--bg-muted); text-transform: uppercase; letter-spacing: .13em; font-size: 10px; font-weight: 700; }
.bg-journal-single__crumbs a { color: var(--bg-red); }
.bg-journal-single__crumbs span { margin-left: 10px; }
.bg-journal-single__article { width: min(1240px, calc(100% - 40px)); margin: 0 auto; }
.bg-journal-single__header { max-width: 900px; margin: 0 auto; padding: clamp(56px, 8vw, 104px) 0 clamp(42px, 5vw, 68px); text-align: center; }
.bg-journal-single__header .bg-section-kicker { justify-content: center; }
.bg-journal-single__meta { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; margin: 0 0 20px; color: var(--bg-muted); text-transform: uppercase; letter-spacing: .12em; font-size: 10px; font-weight: 700; }
.bg-journal-single__meta span { color: var(--bg-red); }
.bg-journal-single__header h1 { margin: 0; font: 600 clamp(48px, 7vw, 92px)/.86 'Cormorant Garamond', Georgia, serif; letter-spacing: -.045em; }
.bg-journal-single__dek { max-width: 650px; margin: 25px auto 0; color: var(--bg-muted); font-size: clamp(16px, 1.5vw, 19px); line-height: 1.65; }
.bg-journal-single__hero-image { margin: 0; overflow: hidden; background: var(--bg-cream); }
.bg-journal-single__hero-image img { width: 100%; max-height: 680px; object-fit: cover; object-position: center 34%; }
.bg-journal-single__layout { display: grid; grid-template-columns: 190px minmax(0, 760px); justify-content: center; gap: clamp(38px, 8vw, 112px); padding: clamp(62px, 8vw, 108px) 0 30px; }
.bg-journal-single__aside { align-self: start; position: sticky; top: 112px; }
.bg-journal-single__aside-block { padding: 20px 0 25px; border-top: 1px solid var(--bg-line); }
.bg-journal-single__aside-block .bg-section-kicker { margin-bottom: 18px; }
.bg-journal-single__aside-block dl { margin: 0; }
.bg-journal-single__aside-block dl > div { display: grid; grid-template-columns: 1fr; gap: 3px; margin-bottom: 15px; }
.bg-journal-single__aside-block dt { color: var(--bg-muted); font-size: 10px; text-transform: uppercase; letter-spacing: .1em; }
.bg-journal-single__aside-block dd { margin: 0; color: var(--bg-ink); font: 600 20px/1 'Cormorant Garamond', Georgia, serif; }
.bg-journal-single__aside-block--cta { border-bottom: 1px solid var(--bg-line); }
.bg-journal-single__aside-block--cta p { margin: 0 0 19px; color: var(--bg-muted); font-size: 12px; line-height: 1.6; }
.bg-editorial-content { min-width: 0; color: #343730; font-size: 18px; line-height: 1.85; }
.bg-editorial-content > p:first-child { color: var(--bg-ink); font-size: clamp(20px, 2vw, 25px); line-height: 1.55; }
.bg-editorial-content p { margin: 0 0 24px; }
.bg-editorial-content h2 { margin: 57px 0 18px; color: var(--bg-ink); font: 600 clamp(34px, 4vw, 48px)/.92 'Cormorant Garamond', Georgia, serif; letter-spacing: -.03em; }
.bg-editorial-content h3 { margin: 38px 0 12px; color: var(--bg-ink); font: 600 29px/1 'Cormorant Garamond', Georgia, serif; }
.bg-editorial-content ul, .bg-editorial-content ol { margin: 0 0 28px; padding-left: 24px; }
.bg-editorial-content li { margin: 0 0 9px; padding-left: 7px; }
.bg-editorial-content li::marker { color: var(--bg-red); font-weight: 700; }
.bg-editorial-content a { color: var(--bg-red); text-decoration: underline; text-decoration-color: rgba(129,56,63,.4); text-underline-offset: 3px; }
.bg-editorial-content a:hover, .bg-editorial-content a:focus { text-decoration-color: currentColor; }
.bg-editorial-content strong { color: var(--bg-ink); font-weight: 700; }
.bg-editorial-content blockquote { margin: 40px 0; padding: 25px 30px; border-left: 3px solid var(--bg-gold); background: var(--bg-cream); color: var(--bg-ink); font: 600 27px/1.2 'Cormorant Garamond', Georgia, serif; }
.bg-editorial-content figure, .bg-editorial-content .wp-caption { max-width: 100%; margin: 40px 0; }
.bg-editorial-content figure img, .bg-editorial-content .wp-caption img { width: 100%; height: auto; }
.bg-editorial-content figcaption, .bg-editorial-content .wp-caption-text { margin-top: 10px; color: var(--bg-muted); font-size: 11px; line-height: 1.5; }
.bg-editorial-content table { width: 100%; margin: 35px 0; border-collapse: collapse; font-size: 14px; line-height: 1.45; }
.bg-editorial-content th, .bg-editorial-content td { padding: 12px 14px; border: 1px solid var(--bg-line); text-align: left; }
.bg-editorial-content th { background: var(--bg-cream); color: var(--bg-ink); font-weight: 700; }
.bg-editorial-content hr { margin: 50px 0; border: 0; border-top: 1px solid var(--bg-line); }
.bg-editorial-pages { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 42px; padding-top: 22px; border-top: 1px solid var(--bg-line); }
.bg-journal-related { padding-top: 76px; }
.bg-editorial-page { max-width: 900px; }
.bg-editorial-page__article > h1 { margin-bottom: 50px; font: 600 clamp(54px, 7vw, 88px)/.88 'Cormorant Garamond', Georgia, serif; }

@media (max-width: 980px) {
	.bg-journal-hero__inner { grid-template-columns: minmax(0, 1fr) 190px; gap: 38px; }
	.bg-section-heading--journal { grid-template-columns: minmax(0, 1fr) minmax(210px, .72fr); }
	.bg-section-heading--journal .bg-text-link { grid-column: 2; justify-self: start; }
	.bg-journal-feature { grid-template-columns: minmax(0, 1fr) minmax(215px, .43fr); }
	.bg-journal-card--featured { grid-template-columns: 1fr; }
	.bg-journal-card--featured .bg-journal-card__media { min-height: 360px; aspect-ratio: 16 / 10; }
	.bg-journal-card--featured .bg-journal-card__body { padding: 34px; }
	.bg-journal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.bg-journal-single__layout { grid-template-columns: 155px minmax(0, 760px); gap: 40px; }
}

@media (max-width: 700px) {
	.bg-journal-hero__inner { width: min(100% - 40px, 560px); min-height: 0; grid-template-columns: 1fr; gap: 42px; padding: 70px 0 58px; }
	.bg-journal-hero h1 { font-size: 82px; }
	.bg-journal-hero__stamp { width: 168px; min-height: 168px; padding: 23px; }
	.bg-journal-hero__stamp strong { font-size: 29px; }
	.bg-journal-list { padding: 62px 20px; }
	.bg-section-heading--journal { display: block; }
	.bg-section-heading--journal .bg-journal-list__intro { margin: 22px 0; }
	.bg-section-heading--journal .bg-text-link { display: inline-flex; }
	.bg-journal-feature { grid-template-columns: 1fr; }
	.bg-journal-feature__note { min-height: 0; }
	.bg-journal-card--featured .bg-journal-card__media { min-height: 0; aspect-ratio: 4 / 3; }
	.bg-journal-card--featured h2 { font-size: 48px; }
	.bg-journal-latest-heading { display: block; margin-top: 62px; }
	.bg-journal-latest-heading > p:last-child { margin-top: 8px; }
	.bg-journal-grid { grid-template-columns: 1fr; }
	.bg-journal-single__crumbs, .bg-journal-single__article { width: min(100% - 40px, 560px); }
	.bg-journal-single__header { padding-top: 60px; }
	.bg-journal-single__header h1 { font-size: 54px; }
	.bg-journal-single__hero-image img { min-height: 360px; object-fit: cover; }
	.bg-journal-single__layout { display: block; padding-top: 52px; }
	.bg-journal-single__aside { position: static; display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-bottom: 44px; }
	.bg-journal-single__aside-block { padding: 18px 0; }
	.bg-editorial-content { font-size: 17px; }
	.bg-editorial-content h2 { margin-top: 48px; }
	.bg-journal-related { width: min(100% - 40px, 560px); padding-left: 0; padding-right: 0; }
}

@media (max-width: 480px) {
	.bg-journal-hero__signals { display: grid; gap: 10px; }
	.bg-journal-card__body { padding: 22px 20px 25px; }
	.bg-journal-card h2 { font-size: 31px; }
	.bg-journal-card--featured .bg-journal-card__body { padding: 27px 22px 30px; }
	.bg-journal-card--featured h2 { font-size: 43px; }
	.bg-journal-single__aside { grid-template-columns: 1fr; }
	.bg-editorial-content blockquote { margin-left: 0; margin-right: 0; padding: 21px; font-size: 24px; }
}

@media (prefers-reduced-motion: reduce) {
	.bg-journal-card__media img { transition: none; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	background: var(--bg-paper);
	color: var(--bg-ink);
	font-family: 'DM Sans', sans-serif;
	font-size: 16px;
	line-height: 1.55;
}
body.bg-menu-open { overflow: hidden; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
button { cursor: pointer; }
:focus-visible { outline: 3px solid var(--bg-gold); outline-offset: 4px; }

/* Checkout Block: make individual line items removable without leaving checkout. */
.bg-checkout-remove-item { display: inline-flex; margin: 9px 0 0; padding: 0; border: 0; background: transparent; color: var(--bg-red); font: inherit; font-size: 10px; font-weight: 700; letter-spacing: .12em; line-height: 1.3; text-decoration: underline; text-underline-offset: 3px; text-transform: uppercase; }
.bg-checkout-remove-item:hover { color: var(--bg-ink); text-decoration-thickness: 2px; }
.bg-checkout-remove-item:disabled { cursor: wait; opacity: .6; }

.bg-site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: rgba(20, 21, 19, 0.97);
	color: #fff;
	border-bottom: 1px solid rgba(241, 216, 156, 0.18);
}
.bg-site-header__inner {
	width: min(1280px, calc(100% - 40px));
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 84px;
}
.bg-brand { display: inline-flex; align-items: center; gap: 12px; min-width: 170px; }
.bg-brand__logo { width: 82px; height: 70px; object-fit: contain; border-radius: 0; }
.bg-nav { display: flex; align-items: center; gap: clamp(18px, 3vw, 42px); margin-left: auto; }
.bg-nav a { color: rgba(255,255,255,.72); font-size: 12px; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; transition: color .2s ease; }
.bg-nav a:hover, .bg-nav a:focus { color: var(--bg-gold-light); }
.bg-header-actions { display: flex; align-items: center; gap: 14px; }
.bg-header-phone { color: rgba(255,255,255,.68); font-size: 12px; letter-spacing: .06em; }
.bg-cart-trigger { position: relative; display: inline-flex; align-items: center; gap: 7px; border: 0; background: transparent; color: #fff; padding: 8px 2px; text-transform: uppercase; letter-spacing: .13em; font-size: 11px; }
.bg-cart-trigger:hover, .bg-cart-trigger:focus { background: transparent; color: var(--bg-gold-light); }
.bg-cart-icon { width: 21px; height: 21px; flex: 0 0 21px; }
.bg-cart-label { line-height: 1; }
.bg-cart-count { min-width: 19px; height: 19px; display: inline-grid; place-items: center; border-radius: 50%; background: var(--bg-gold); color: var(--bg-ink); font-size: 10px; font-weight: 700; }
.bg-menu-toggle { display: none; border: 0; background: transparent; color: #fff; padding: 8px; }
.bg-menu-toggle svg { width: 24px; height: 24px; }

.bg-hero { position: relative; overflow: hidden; background: var(--bg-ink); color: #fff; }
.bg-hero::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 84% 18%, rgba(215,170,82,.2), transparent 30%), linear-gradient(115deg, transparent 0 52%, rgba(255,255,255,.035) 52% 52.4%, transparent 52.4%); pointer-events: none; }
.bg-hero__inner { position: relative; width: min(1280px, calc(100% - 40px)); min-height: 670px; margin: 0 auto; display: grid; grid-template-columns: 1.02fr .98fr; align-items: center; gap: 40px; }
.bg-hero__copy { padding: 80px 0 72px; max-width: 645px; animation: bg-rise .75s ease both; }
.bg-eyebrow { display: flex; align-items: center; gap: 13px; margin: 0 0 22px; color: var(--bg-gold-light); text-transform: uppercase; letter-spacing: .23em; font-size: 11px; font-weight: 700; }
.bg-eyebrow::before { content: ''; width: 34px; height: 1px; background: var(--bg-gold); }
.bg-hero h1 { max-width: 680px; margin: 0; font: 600 clamp(58px, 8vw, 112px)/.84 'Cormorant Garamond', Georgia, serif; letter-spacing: -.055em; }
.bg-hero h1 em { color: var(--bg-gold-light); font-style: normal; }
.bg-hero__lead { max-width: 500px; margin: 34px 0 32px; color: rgba(255,255,255,.67); font-size: 17px; }
.bg-hero__actions { display: flex; flex-wrap: wrap; gap: 14px; }
.bg-button { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; border: 1px solid var(--bg-gold); padding: 0 22px; background: var(--bg-gold); color: var(--bg-ink); font-size: 11px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; transition: transform .2s ease, background .2s ease, color .2s ease; }
.bg-button:hover { transform: translateY(-2px); background: var(--bg-gold-light); }
.bg-button--ghost { background: transparent; color: #fff; border-color: rgba(255,255,255,.36); }
.bg-button--ghost:hover { background: #fff; color: var(--bg-ink); }
.bg-hero__note { display: flex; gap: 20px; margin-top: 54px; color: rgba(255,255,255,.5); font-size: 11px; letter-spacing: .08em; }
.bg-hero__note span { display: inline-flex; align-items: center; gap: 7px; }
.bg-hero__note span::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: var(--bg-gold); }

.bg-hero__visual { align-self: stretch; display: grid; place-items: center; padding: 55px 0 35px; animation: bg-fade .9s .15s ease both; }
.bg-look { position: relative; width: min(100%, 540px); aspect-ratio: 4/5; overflow: hidden; background: linear-gradient(145deg, #171c25, #273247 58%, #9c7441); box-shadow: 20px 28px 0 rgba(215,170,82,.17); }
.bg-look::before { content: ''; position: absolute; inset: 0; background: linear-gradient(120deg, rgba(255,255,255,.15), transparent 35%), radial-gradient(ellipse at 56% 88%, rgba(0,0,0,.52), transparent 42%); }
.bg-look::after { content: 'BG'; position: absolute; top: 24px; right: 26px; color: rgba(255,255,255,.62); font: 600 54px/.8 'Cormorant Garamond', serif; letter-spacing: -.15em; }
.bg-suit-figure { position: absolute; inset: 9% 20% 0; filter: drop-shadow(16px 21px 18px rgba(0,0,0,.35)); }
.bg-suit-figure::before { content: ''; position: absolute; left: 25%; right: 25%; top: 0; height: 14%; border-radius: 48% 48% 40% 40%; background: #b57b53; }
.bg-suit-figure::after { content: ''; position: absolute; left: 5%; right: 5%; top: 12%; bottom: -5%; background: linear-gradient(90deg, #0c1220 0 43%, #111827 43% 57%, #0b1020 57% 100%); clip-path: polygon(14% 0, 35% 0, 50% 20%, 65% 0, 86% 0, 100% 26%, 79% 47%, 72% 100%, 28% 100%, 21% 47%, 0 26%); }
.bg-suit-figure__shirt { position: absolute; z-index: 1; left: 37%; top: 14%; width: 26%; height: 36%; background: #f8f7f2; clip-path: polygon(0 0, 50% 18%, 100% 0, 78% 100%, 22% 100%); }
.bg-suit-figure__tie { position: absolute; z-index: 2; left: 45%; top: 16%; width: 10%; height: 37%; background: var(--bg-gold); clip-path: polygon(50% 0, 100% 15%, 70% 100%, 50% 86%, 30% 100%, 0 15%); }
.bg-look__caption { position: absolute; left: 28px; bottom: 25px; z-index: 2; color: #fff; }
.bg-look__caption small { display: block; color: var(--bg-gold-light); text-transform: uppercase; letter-spacing: .18em; font-size: 10px; }
.bg-look__caption strong { display: block; margin-top: 6px; font: 600 31px/.9 'Cormorant Garamond', Georgia, serif; }

.bg-trust { background: var(--bg-gold); color: var(--bg-ink); }
.bg-trust__inner { width: min(1280px, calc(100% - 40px)); margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); }
.bg-trust__item { display: flex; align-items: center; justify-content: center; gap: 12px; min-height: 72px; padding: 11px 20px; border-right: 1px solid rgba(20,21,19,.2); text-align: center; text-transform: uppercase; letter-spacing: .13em; font-size: 10px; font-weight: 700; }
.bg-trust__item:last-child { border-right: 0; }
.bg-trust__item span { font: 600 25px/1 'Cormorant Garamond', Georgia, serif; }

.bg-section { width: min(1280px, calc(100% - 40px)); margin: 0 auto; padding: 112px 0; }
.bg-section--compact { padding-top: 72px; padding-bottom: 72px; }
.bg-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 44px; }
.bg-section-heading h2 { max-width: 600px; margin: 0; font: 600 clamp(44px, 6vw, 75px)/.86 'Cormorant Garamond', Georgia, serif; letter-spacing: -.045em; }
.bg-section-heading p { max-width: 360px; margin: 0; color: var(--bg-muted); font-size: 14px; }
.bg-section-kicker { margin: 0 0 15px; color: var(--bg-red); text-transform: uppercase; letter-spacing: .18em; font-size: 10px; font-weight: 700; }

.bg-product-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.bg-product-card { position: relative; background: var(--bg-cream); overflow: hidden; }
.bg-product-card__art { position: relative; min-height: 460px; overflow: hidden; background: #d8d0c3; }
.bg-product-card__art::before { content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(255,255,255,.25), transparent 36%), radial-gradient(ellipse at 55% 93%, rgba(0,0,0,.2), transparent 42%); }
.bg-product-card__art--classic { background: linear-gradient(140deg, #d3d6d2, #59636e 62%, #c9a463); }
.bg-product-card__art--velvet { background: linear-gradient(140deg, #d7d0c4, #674553 62%, #c3a066); }
.bg-card-suit { position: absolute; left: 31%; right: 31%; top: 8%; bottom: -10%; filter: drop-shadow(12px 16px 12px rgba(0,0,0,.22)); }
.bg-card-suit::before { content: ''; position: absolute; left: 26%; right: 26%; top: 0; height: 12%; border-radius: 50%; background: #b47651; }
.bg-card-suit::after { content: ''; position: absolute; inset: 11% 0 0; background: #1c2a43; clip-path: polygon(13% 0, 33% 0, 50% 18%, 67% 0, 87% 0, 100% 25%, 80% 46%, 72% 100%, 28% 100%, 20% 46%, 0 25%); }
.bg-card-suit--velvet::after { background: linear-gradient(90deg, #281a29, #6b3b4a 45%, #2d1d2c); }
.bg-card-suit__shirt { position: absolute; z-index: 1; left: 36%; top: 13%; width: 28%; height: 35%; background: #fff; clip-path: polygon(0 0, 50% 18%, 100% 0, 79% 100%, 21% 100%); }
.bg-card-suit__tie { position: absolute; z-index: 2; left: 44%; top: 16%; width: 12%; height: 29%; background: var(--bg-gold); clip-path: polygon(50% 0,100% 15%,70% 100%,50% 86%,30% 100%,0 15%); }
.bg-product-card__tag { position: absolute; top: 18px; left: 18px; z-index: 2; padding: 7px 9px; background: #fff; color: var(--bg-ink); text-transform: uppercase; letter-spacing: .14em; font-size: 9px; font-weight: 700; }
.bg-product-card__body { display: grid; grid-template-columns: 1fr auto; gap: 20px; padding: 26px 26px 29px; }
.bg-product-card__body h3 { margin: 0; font: 600 31px/.91 'Cormorant Garamond', Georgia, serif; letter-spacing: -.02em; }
.bg-product-card__body p { margin: 12px 0 0; color: var(--bg-muted); font-size: 12px; }
.bg-product-card__price { text-align: right; white-space: nowrap; }
.bg-product-card__price strong { display: block; color: var(--bg-red); font-size: 20px; }
.bg-product-card__price span { color: var(--bg-muted); font-size: 11px; text-decoration: line-through; }
.bg-product-card__footer { grid-column: 1/-1; display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 10px; padding-top: 19px; border-top: 1px solid var(--bg-line); }
.bg-text-link { display: inline-flex; align-items: center; gap: 9px; color: var(--bg-ink); text-transform: uppercase; letter-spacing: .15em; font-size: 10px; font-weight: 700; }
.bg-text-link::after { content: '↗'; color: var(--bg-red); font-size: 16px; transition: transform .2s ease; }
.bg-text-link:hover::after { transform: translate(3px,-3px); }

.bg-configure { position: relative; overflow: hidden; background: var(--bg-ink); color: #fff; }
.bg-configure::before { content: ''; position: absolute; width: 530px; height: 530px; border: 1px solid rgba(215,170,82,.24); border-radius: 50%; top: -250px; left: -120px; }
.bg-configure__inner { position: relative; width: min(1280px, calc(100% - 40px)); margin: 0 auto; padding: 112px 0; }
.bg-configure .bg-section-heading { margin-bottom: 50px; }
.bg-configure .bg-section-kicker { color: var(--bg-gold-light); }
.bg-configure .bg-section-heading h2 { color: #fff; }
.bg-configure .bg-section-heading p { color: rgba(255,255,255,.58); }
.bg-configurator { display: grid; grid-template-columns: minmax(0, .92fr) minmax(360px, 1.08fr); gap: 54px; align-items: start; }
.bg-configurator__visual { position: sticky; top: 115px; min-height: 550px; overflow: hidden; background: linear-gradient(140deg, #25374e, #111827 67%, #a87940); }
.bg-configurator__visual::before { content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(255,255,255,.13), transparent 32%), radial-gradient(ellipse at 53% 93%, rgba(0,0,0,.65), transparent 43%); }
.bg-configurator__visual .bg-card-suit { left: 24%; right: 24%; top: 8%; }
.bg-configurator__visual .bg-card-suit--velvet::after { background: linear-gradient(90deg, #271d29, #714151 45%, #2b202b); }
.bg-configurator__label { position: absolute; left: 28px; bottom: 26px; z-index: 3; }
.bg-configurator__label small { display: block; color: var(--bg-gold-light); text-transform: uppercase; letter-spacing: .16em; font-size: 10px; }
.bg-configurator__label strong { display: block; max-width: 300px; margin-top: 6px; font: 600 37px/.93 'Cormorant Garamond', Georgia, serif; }
.bg-configurator__badge { position: absolute; right: 24px; top: 24px; z-index: 3; width: 80px; height: 80px; display: grid; place-items: center; border: 1px solid rgba(241,216,156,.55); border-radius: 50%; color: var(--bg-gold-light); text-align: center; text-transform: uppercase; letter-spacing: .12em; font-size: 9px; }
.bg-configurator__badge::before { content: ''; position: absolute; inset: 5px; border: 1px solid rgba(241,216,156,.24); border-radius: 50%; }
.bg-selection { padding: 4px 0; }
.bg-selection__top { display: flex; justify-content: space-between; gap: 25px; padding-bottom: 25px; border-bottom: 1px solid rgba(255,255,255,.16); }
.bg-selection__top h3 { margin: 0; font: 600 37px/.9 'Cormorant Garamond', Georgia, serif; }
.bg-selection__top p { max-width: 210px; margin: 3px 0 0; color: rgba(255,255,255,.56); font-size: 12px; text-align: right; }
.bg-product-switcher { display: flex; flex-wrap: wrap; gap: 8px; margin: 24px 0 32px; }
.bg-product-switcher button { border: 1px solid rgba(255,255,255,.22); background: transparent; color: rgba(255,255,255,.66); padding: 11px 13px; text-transform: uppercase; letter-spacing: .12em; font-size: 10px; }
.bg-product-switcher button[aria-pressed="true"] { border-color: var(--bg-gold); background: rgba(215,170,82,.13); color: var(--bg-gold-light); }
.bg-field { margin-top: 28px; }
.bg-field__legend { display: flex; justify-content: space-between; margin-bottom: 13px; color: rgba(255,255,255,.76); text-transform: uppercase; letter-spacing: .13em; font-size: 10px; font-weight: 700; }
.bg-field__hint { color: rgba(255,255,255,.43); font-size: 10px; letter-spacing: 0; text-transform: none; font-weight: 400; }
.bg-color-options { display: flex; flex-wrap: wrap; gap: 10px; }
.bg-color-option { display: inline-flex; align-items: center; gap: 8px; border: 1px solid rgba(255,255,255,.17); background: transparent; color: rgba(255,255,255,.68); padding: 9px 10px; font-size: 11px; }
.bg-color-option[aria-pressed="true"] { border-color: var(--bg-gold); color: #fff; }
.bg-swatch { width: 18px; height: 18px; display: block; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; }
.bg-age-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.bg-age-option { min-height: 55px; border: 1px solid rgba(255,255,255,.17); background: transparent; color: rgba(255,255,255,.7); padding: 7px 9px; text-align: left; }
.bg-age-option span { display: block; font-size: 11px; font-weight: 600; }
.bg-age-option small { display: block; margin-top: 3px; color: rgba(255,255,255,.4); font-size: 10px; }
.bg-age-option[aria-pressed="true"] { border-color: var(--bg-gold); background: var(--bg-gold); color: var(--bg-ink); }
.bg-age-option[aria-pressed="true"] small { color: rgba(20,21,19,.62); }
.bg-size-note { display: flex; justify-content: space-between; align-items: center; gap: 15px; margin-top: 17px; padding: 14px; border-left: 2px solid var(--bg-gold); background: rgba(255,255,255,.06); color: rgba(255,255,255,.63); font-size: 12px; }
.bg-size-note strong { color: var(--bg-gold-light); font-size: 16px; white-space: nowrap; }
.bg-selection__bottom { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 33px; padding-top: 23px; border-top: 1px solid rgba(255,255,255,.16); }
.bg-selection__price small { display: block; color: rgba(255,255,255,.46); text-transform: uppercase; letter-spacing: .13em; font-size: 9px; }
.bg-selection__price strong { display: block; margin-top: 4px; color: var(--bg-gold-light); font: 600 36px/.9 'Cormorant Garamond', Georgia, serif; }
.bg-add-button { min-width: 210px; }
.bg-configure__fineprint { margin: 33px 0 0; color: rgba(255,255,255,.43); font-size: 11px; }

.bg-story { background: var(--bg-red); color: #fff; }
.bg-story__inner { width: min(1280px, calc(100% - 40px)); margin: 0 auto; padding: 84px 0; display: grid; grid-template-columns: 1.35fr .65fr; gap: 60px; align-items: end; }
.bg-story h2 { max-width: 760px; margin: 0; font: 600 clamp(43px, 6vw, 78px)/.86 'Cormorant Garamond', Georgia, serif; letter-spacing: -.045em; }
.bg-story p { max-width: 295px; margin: 0; color: rgba(255,255,255,.7); font-size: 13px; }
.bg-story p::before { content: '“'; display: block; margin-bottom: 12px; color: var(--bg-gold-light); font: 600 55px/.5 'Cormorant Garamond', Georgia, serif; }

.bg-guide { display: grid; grid-template-columns: .78fr 1.22fr; gap: 70px; align-items: start; }
.bg-guide h2 { margin: 0; font: 600 clamp(42px, 5vw, 64px)/.88 'Cormorant Garamond', Georgia, serif; }
.bg-guide__intro { margin: 22px 0 0; color: var(--bg-muted); font-size: 13px; }
.bg-guide__list { display: grid; gap: 0; border-top: 1px solid var(--bg-line); }
.bg-measure-row { display: grid; grid-template-columns: 1fr 1fr; padding: 13px 0; border-bottom: 1px solid var(--bg-line); font-size: 12px; }
.bg-measure-row strong { font-weight: 600; }
.bg-measure-row span { color: var(--bg-muted); text-align: right; }
.bg-guide__note { margin-top: 23px; padding: 16px; background: var(--bg-cream); color: var(--bg-muted); font-size: 12px; }

.bg-footer { padding: 58px 0 25px; background: var(--bg-ink); color: #fff; }
.bg-footer__inner { width: min(1280px, calc(100% - 40px)); margin: 0 auto; }
.bg-footer__top { display: flex; justify-content: space-between; gap: 30px; padding-bottom: 52px; }
.bg-footer__brand { display: flex; align-items: center; gap: 14px; }
.bg-footer__brand img { width: 94px; height: 88px; object-fit: contain; }
.bg-footer__brand strong { display: block; color: var(--bg-gold-light); font: 600 27px/.8 'Cormorant Garamond', Georgia, serif; letter-spacing: .07em; }
.bg-footer__brand span { display: block; margin-top: 8px; color: rgba(255,255,255,.44); text-transform: uppercase; letter-spacing: .17em; font-size: 9px; }
.bg-footer__details { max-width: 360px; color: rgba(255,255,255,.57); font-size: 12px; text-align: right; }
.bg-footer__details a { color: var(--bg-gold-light); }
.bg-footer__bottom { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.15); color: rgba(255,255,255,.38); font-size: 10px; letter-spacing: .04em; }

.bg-cart-drawer { position: fixed; z-index: 100; top: 0; right: 0; bottom: 0; width: min(440px, 100%); display: flex; flex-direction: column; background: var(--bg-paper); box-shadow: -22px 0 55px rgba(0,0,0,.25); transform: translateX(110%); transition: transform .3s ease; }
.bg-cart-drawer.is-open { transform: translateX(0); }
.bg-cart-drawer__head { display: flex; justify-content: space-between; align-items: center; padding: 24px 24px 20px; border-bottom: 1px solid var(--bg-line); }
.bg-cart-drawer__head h2 { margin: 0; font: 600 34px/.9 'Cormorant Garamond', Georgia, serif; }
.bg-cart-close { border: 0; background: transparent; font-size: 23px; line-height: 1; }
.bg-cart-drawer__body { flex: 1; overflow-y: auto; padding: 22px 24px; }
.bg-cart-empty { padding: 70px 10px; color: var(--bg-muted); text-align: center; }
.bg-cart-item { display: grid; grid-template-columns: 68px 1fr auto; gap: 13px; padding: 16px 0; border-bottom: 1px solid var(--bg-line); }
.bg-cart-item__art { width: 68px; height: 86px; background: linear-gradient(145deg, #25374e, #ad8248); }
.bg-cart-item h3 { margin: 0; font: 600 20px/.9 'Cormorant Garamond', Georgia, serif; }
.bg-cart-item p { margin: 7px 0 0; color: var(--bg-muted); font-size: 10px; }
.bg-cart-item strong { font-size: 13px; white-space: nowrap; }
.bg-cart-item__remove { margin-top: 9px; border: 0; background: transparent; color: var(--bg-red); padding: 0; text-transform: uppercase; letter-spacing: .1em; font-size: 9px; }
.bg-cart-drawer__footer { padding: 20px 24px 26px; border-top: 1px solid var(--bg-line); }
.bg-cart-total { display: flex; justify-content: space-between; margin-bottom: 16px; text-transform: uppercase; letter-spacing: .13em; font-size: 10px; font-weight: 700; }
.bg-cart-total strong { color: var(--bg-red); font-size: 16px; letter-spacing: 0; }
.bg-cart-drawer__footer .bg-button { width: 100%; }
.bg-cart-drawer__footer small { display: block; margin-top: 12px; color: var(--bg-muted); text-align: center; font-size: 10px; }
.bg-cart-scrim { position: fixed; z-index: 90; inset: 0; background: rgba(20,21,19,.55); opacity: 0; pointer-events: none; transition: opacity .3s ease; }
.bg-cart-scrim.is-visible { opacity: 1; pointer-events: auto; }
.bg-toast { position: fixed; z-index: 110; left: 50%; bottom: 26px; transform: translate(-50%, 20px); max-width: calc(100% - 32px); padding: 13px 18px; background: var(--bg-ink); color: #fff; box-shadow: var(--bg-shadow); opacity: 0; pointer-events: none; transition: opacity .25s ease, transform .25s ease; font-size: 12px; }
.bg-toast.is-visible { transform: translate(-50%, 0); opacity: 1; }
.bg-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.bg-page-content, .bg-wc-page { min-height: 45vh; }
.bg-page-content h1, .bg-wc-page h1 { margin: 0 0 30px; font: 600 clamp(44px, 6vw, 72px)/.88 'Cormorant Garamond', Georgia, serif; }
.bg-wc-page .woocommerce { color: var(--bg-ink); }
.bg-wc-page .woocommerce a { color: var(--bg-red); }
.bg-wc-page .woocommerce .button, .bg-wc-page .woocommerce button.button, .bg-wc-page .woocommerce input.button { border: 1px solid var(--bg-gold); border-radius: 0; background: var(--bg-gold); color: var(--bg-ink); text-transform: uppercase; letter-spacing: .12em; font-size: 10px; font-weight: 700; }
.bg-wc-page .woocommerce table.shop_table { border-collapse: collapse; border: 1px solid var(--bg-line); border-radius: 0; }
.bg-wc-page .woocommerce table.shop_table th, .bg-wc-page .woocommerce table.shop_table td { border-color: var(--bg-line); }
.bg-wc-page .woocommerce input.input-text, .bg-wc-page .woocommerce select, .bg-wc-page .woocommerce textarea { border: 1px solid var(--bg-line); border-radius: 0; background: #fff; padding: 12px; }

@keyframes bg-rise { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@keyframes bg-fade { from { opacity: 0; } to { opacity: 1; } }

@media (max-width: 900px) {
	.bg-header-phone { display: none; }
	.bg-nav { gap: 20px; }
	.bg-hero__inner { min-height: 600px; grid-template-columns: 1fr .8fr; }
	.bg-hero h1 { font-size: clamp(58px, 10vw, 88px); }
	.bg-configurator { gap: 35px; grid-template-columns: .88fr 1.12fr; }
	.bg-configurator__visual { min-height: 490px; }
}

@media (max-width: 700px) {
	.bg-site-header__inner, .bg-section, .bg-hero__inner, .bg-configure__inner, .bg-story__inner, .bg-footer__inner, .bg-trust__inner { width: min(100% - 32px, 1280px); }
	.bg-site-header__inner { min-height: 72px; }
	.bg-brand { min-width: 0; }
	.bg-brand__logo { width: 62px; height: 58px; }
	.bg-nav { position: fixed; inset: 72px 0 auto; display: grid; gap: 0; padding: 8px 16px 16px; background: var(--bg-ink); border-top: 1px solid rgba(255,255,255,.1); transform: translateY(-150%); transition: transform .25s ease; }
	.bg-nav.is-open { transform: translateY(0); }
	.bg-nav a { padding: 15px 0; border-bottom: 1px solid rgba(255,255,255,.1); }
	.bg-menu-toggle { display: inline-flex; }
	.bg-header-actions { margin-left: auto; }
	.bg-cart-trigger { width: 34px; height: 34px; justify-content: center; padding: 0; }
	.bg-cart-label { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
	.bg-hero__inner { min-height: unset; display: flex; flex-direction: column; gap: 0; align-items: stretch; }
	.bg-hero__copy { padding: 72px 0 40px; }
	.bg-hero h1 { font-size: clamp(61px, 17vw, 94px); }
	.bg-hero__lead { margin: 26px 0; font-size: 15px; }
	.bg-hero__note { flex-wrap: wrap; gap: 11px 17px; margin-top: 36px; }
	.bg-hero__visual { padding: 0 0 65px; }
	.bg-look { width: 84%; margin-left: 5%; }
	.bg-trust__inner { grid-template-columns: 1fr; }
	.bg-trust__item { min-height: 54px; border-right: 0; border-bottom: 1px solid rgba(20,21,19,.2); }
	.bg-trust__item:last-child { border-bottom: 0; }
	.bg-section, .bg-configure__inner { padding: 74px 0; }
	.bg-section-heading { display: block; margin-bottom: 31px; }
	.bg-section-heading h2 { font-size: 57px; }
	.bg-section-heading p { margin-top: 20px; }
	.bg-product-grid { grid-template-columns: 1fr; }
	.bg-product-card__art { min-height: 420px; }
	.bg-product-card__body { padding: 21px; }
	.bg-product-card__body h3 { font-size: 27px; }
	.bg-configurator { display: flex; flex-direction: column; gap: 38px; }
	.bg-configurator__visual { position: relative; top: auto; width: 100%; min-height: 420px; }
	.bg-selection { width: 100%; }
	.bg-selection__top { display: block; }
	.bg-selection__top p { max-width: unset; margin-top: 12px; text-align: left; }
	.bg-age-grid { grid-template-columns: repeat(2, 1fr); }
	.bg-selection__bottom { align-items: stretch; flex-direction: column; }
	.bg-add-button { width: 100%; }
	.bg-story__inner { display: block; padding: 68px 0; }
	.bg-story p { margin-top: 34px; }
	.bg-guide { display: block; }
	.bg-guide__table { margin-top: 36px; }
	.bg-footer__top, .bg-footer__bottom { display: block; }
	.bg-footer__details { margin-top: 27px; text-align: left; }
	.bg-footer__bottom span { display: block; margin-top: 8px; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* -------------------------------------------------------------------------
   Multi-page storefront layer
   ------------------------------------------------------------------------- */
:root {
	--bg-ink: #102c31;
	--bg-ink-soft: #1b4145;
	--bg-cream: #efe7db;
	--bg-paper: #fbf9f5;
	--bg-line: rgba(16, 44, 49, .16);
	--bg-gold: #c99d4d;
	--bg-gold-light: #efd79e;
	--bg-red: #9a4b3d;
	--bg-blue: #193c52;
	--bg-muted: #4d6665;
}

body { color: var(--bg-ink); background: var(--bg-paper); }
.bg-topbar { background: #087653; color: #f7f2e8; font-size: 9px; letter-spacing: .16em; text-transform: uppercase; }
.bg-topbar__inner { width: min(1320px, calc(100% - 40px)); min-height: 29px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.bg-topbar a { color: #fff; text-decoration: underline; text-decoration-color: rgba(255,255,255,.5); text-underline-offset: 3px; }
.bg-site-header { position: sticky; top: 0; background: rgba(251,249,245,.96); color: var(--bg-ink); border-bottom: 1px solid rgba(16,44,49,.12); box-shadow: 0 8px 25px rgba(16,44,49,.04); backdrop-filter: blur(15px); }
.bg-site-header__inner { width: min(1320px, calc(100% - 40px)); min-height: 86px; }
.bg-nav a { color: var(--bg-ink); letter-spacing: .11em; }
.bg-nav a:hover, .bg-nav a:focus { color: var(--bg-red); }
.bg-header-actions { gap: 11px; }
.bg-account-link { display: inline-flex; align-items: center; gap: 7px; color: var(--bg-ink); text-transform: uppercase; letter-spacing: .12em; font-size: 10px; font-weight: 700; }
.bg-account-link svg { width: 19px; height: 19px; }
.bg-cart-trigger { background: transparent; border-color: transparent; color: var(--bg-ink); }
.bg-cart-trigger:hover, .bg-cart-trigger:focus { background: transparent; border-color: transparent; color: var(--bg-red); }
.bg-menu-toggle { color: var(--bg-ink); }

.bg-home-hero { position: relative; overflow: hidden; background: linear-gradient(105deg, #09161d 0%, #0b1a22 49%, #172126 100%); color: #fff; }
.bg-home-hero::before { content: 'BG'; position: absolute; left: 22%; bottom: 3%; color: rgba(255,255,255,.018); font: 600 clamp(230px, 31vw, 490px)/.65 'Cormorant Garamond', Georgia, serif; letter-spacing: -.12em; pointer-events: none; transform: rotate(-8deg); }
.bg-home-hero::after { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 69% 24%, rgba(215,170,82,.14), transparent 27%), linear-gradient(90deg, transparent 0 56%, rgba(255,255,255,.025) 56% 56.1%, transparent 56.1%); pointer-events: none; }
.bg-home-hero__inner { position: relative; z-index: 2; width: min(1420px, calc(100% - 72px)); min-height: 700px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, .93fr) minmax(430px, 1.07fr); align-items: center; gap: clamp(28px, 4vw, 70px); }
.bg-home-hero__copy { position: relative; z-index: 5; padding: 78px 0 70px; }
.bg-home-hero .bg-eyebrow { display: flex; align-items: center; gap: 13px; margin-bottom: 28px; color: var(--bg-gold-light); letter-spacing: .23em; }
.bg-home-hero .bg-eyebrow::before { content: ''; width: 24px; height: 1px; background: var(--bg-gold); }
.bg-home-hero h1 { max-width: 660px; margin: 0; color: #fff; font: 500 clamp(70px, 7.2vw, 112px)/.82 'Cormorant Garamond', Georgia, serif; letter-spacing: -.055em; }
.bg-home-hero h1 span { display: block; }
.bg-home-hero h1 .bg-home-hero__title-accent { color: var(--bg-gold); }
.bg-home-hero__lead { max-width: 520px; margin: 35px 0 34px; color: rgba(255,255,255,.76); font-size: 17px; line-height: 1.7; }
.bg-home-hero__actions { display: flex; flex-wrap: wrap; gap: 16px; }
.bg-home-hero__actions .bg-button { min-width: 205px; justify-content: center; }
.bg-home-hero__proof { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); width: min(680px, 112%); margin-top: 44px; padding-top: 24px; border-top: 1px solid rgba(241,216,156,.23); color: rgba(255,255,255,.69); font-size: 10px; line-height: 1.45; text-transform: uppercase; letter-spacing: .09em; }
.bg-home-hero__proof span { min-height: 54px; padding: 0 15px; border-right: 1px solid rgba(255,255,255,.14); }
.bg-home-hero__proof span:first-child { padding-left: 0; }
.bg-home-hero__proof span:last-child { border-right: 0; }
.bg-home-hero__proof strong { display: block; margin-bottom: 10px; color: var(--bg-gold); font: 600 17px/1 'Cormorant Garamond', Georgia, serif; letter-spacing: .04em; }
.bg-home-hero__visual { align-self: stretch; display: grid; place-items: center; min-width: 0; padding: 42px 0 50px; }
.bg-home-look { position: relative; width: min(100%, 680px); aspect-ratio: .94; overflow: visible; background: transparent; }
.bg-home-look--photography::before { content: ''; position: absolute; z-index: 1; inset: 8% 0 5% 13%; border: 1px solid rgba(215,170,82,.78); border-radius: 38px 0 38px 0; }
.bg-home-look--photography::after { content: ''; position: absolute; z-index: 1; inset: 15% 4% 0 21%; background: linear-gradient(140deg, rgba(215,170,82,.24), transparent 63%); box-shadow: 24px 26px 0 rgba(215,170,82,.08); }
.bg-home-look__photo { position: absolute; z-index: 2; overflow: hidden; margin: 0; background: #eeece8; box-shadow: 0 25px 58px rgba(0,0,0,.3); transition: opacity .34s ease, transform .34s ease; }
.bg-home-look.is-changing .bg-home-look__photo { opacity: .68; transform: translateY(6px); }
.bg-home-look__photo--primary { top: 0; right: 0; width: 79%; height: 91%; border-radius: 34px 0 0 0; }
.bg-home-look__photo--secondary { bottom: 15%; left: 0; z-index: 4; width: 36%; background: var(--bg-paper); color: var(--bg-ink); }
.bg-home-look__photo-image { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center center; }
.bg-home-look__photo--secondary .bg-home-look__photo-image { height: auto; aspect-ratio: 1 / 1.15; object-fit: cover; }
.bg-home-look__photo--secondary figcaption { padding: 15px 17px 17px; }
.bg-home-look__photo--secondary figcaption small { display: block; margin-bottom: 7px; color: var(--bg-red); font-size: 8px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.bg-home-look__photo--secondary figcaption strong { display: -webkit-box; overflow: hidden; color: var(--bg-ink); font: 600 17px/1.06 'Cormorant Garamond', Georgia, serif; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.bg-home-look__photo--secondary figcaption span,
.bg-home-look__caption > span { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 13px; color: var(--bg-gold); font-size: 8px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.bg-home-look__photo--secondary figcaption b,
.bg-home-look__caption b { font-size: 17px; font-weight: 400; }
.bg-home-look__caption { position: absolute; right: -2%; bottom: 0; z-index: 5; width: 56%; padding: 24px 28px 22px; background: rgba(9,22,29,.96); border: 1px solid rgba(255,255,255,.08); box-shadow: 0 18px 45px rgba(0,0,0,.28); }
.bg-home-look__caption small { display: block; color: var(--bg-gold); font-size: 9px; letter-spacing: .2em; text-transform: uppercase; }
.bg-home-look__caption strong { display: block; margin-top: 11px; color: #fff; font: 500 clamp(35px, 3.1vw, 49px)/.84 'Cormorant Garamond', Georgia, serif; }
.bg-home-look__index { position: absolute; z-index: 5; top: 17%; left: 5%; display: flex; align-items: center; gap: 8px; color: var(--bg-gold-light); font: 600 12px/1 'Cormorant Garamond', Georgia, serif; letter-spacing: .08em; }
.bg-home-look__index i { display: block; width: 31px; height: 1px; background: currentColor; opacity: .8; }
.bg-home-look__seal { position: absolute; z-index: 5; top: 10%; right: -7%; width: 112px; height: 112px; display: grid; place-items: center; border: 1px solid rgba(239,215,158,.7); border-radius: 50%; background: rgba(17,25,28,.9); color: var(--bg-gold-light); text-align: center; text-transform: uppercase; letter-spacing: .16em; font-size: 9px; line-height: 1.5; box-shadow: 0 15px 35px rgba(0,0,0,.24); }
.bg-home-look__seal::before { content: ''; position: absolute; inset: 7px; border: 1px dotted rgba(239,215,158,.7); border-radius: 50%; }
.bg-home-hero__services { position: relative; z-index: 4; background: var(--bg-paper); color: var(--bg-ink); }
.bg-home-hero__services-inner { width: min(1180px, calc(100% - 72px)); min-height: 108px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); align-items: center; }
.bg-home-hero__services-inner > div { display: grid; grid-template-columns: 54px 1fr; align-items: center; gap: 18px; min-height: 55px; padding: 0 clamp(25px, 4vw, 64px); border-right: 1px solid var(--bg-line); }
.bg-home-hero__services-inner > div:first-child { padding-left: 0; }
.bg-home-hero__services-inner > div:last-child { padding-right: 0; border-right: 0; }
.bg-home-hero__services-inner > div > span { width: 54px; height: 54px; display: grid; place-items: center; border: 1px solid var(--bg-gold); border-radius: 50%; color: #9a722f; font: 600 17px/1 'Cormorant Garamond', Georgia, serif; }
.bg-home-hero__services p { margin: 0; }
.bg-home-hero__services strong,
.bg-home-hero__services small { display: block; }
.bg-home-hero__services strong { text-transform: uppercase; letter-spacing: .13em; font-size: 10px; }
.bg-home-hero__services small { margin-top: 5px; color: var(--bg-muted); font-size: 11px; }
.bg-home-intro { display: grid; grid-template-columns: 80px 1fr 1fr; gap: 30px; align-items: center; }
.bg-home-intro__mark { width: 67px; height: 67px; display: grid; place-items: center; border: 1px solid var(--bg-gold); border-radius: 50%; color: var(--bg-red); font: 600 26px/1 'Cormorant Garamond', Georgia, serif; }
.bg-home-intro h2 { max-width: 450px; margin: 0; font: 600 clamp(40px, 5vw, 63px)/.88 'Cormorant Garamond', Georgia, serif; letter-spacing: -.04em; }
.bg-home-intro > p:last-child { max-width: 380px; margin: 0; color: var(--bg-muted); font-size: 14px; }
.bg-home-featured { padding-top: 75px; }
.bg-home-featured .bg-section-heading { margin-bottom: 34px; }
.bg-product-grid--home { grid-template-columns: repeat(3, minmax(0,1fr)); }
.bg-content-note { margin: 18px 0 0; color: var(--bg-muted); font-size: 12px; }
.bg-home-guidance { background: var(--bg-cream); }
.bg-home-guidance__inner { width: min(1320px, calc(100% - 40px)); margin: 0 auto; padding: 88px 0; display: grid; grid-template-columns: .65fr 1.35fr; gap: 80px; }
.bg-home-guidance h2 { max-width: 370px; margin: 0; font: 600 clamp(42px, 5vw, 69px)/.85 'Cormorant Garamond', Georgia, serif; }
.bg-home-guidance__steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; align-items: start; }
.bg-home-guidance__steps > div { padding-top: 12px; border-top: 1px solid var(--bg-ink); }
.bg-home-guidance__steps span { color: var(--bg-red); font: 600 30px/1 'Cormorant Garamond', Georgia, serif; }
.bg-home-guidance__steps h3 { margin: 24px 0 8px; font: 600 27px/.9 'Cormorant Garamond', Georgia, serif; }
.bg-home-guidance__steps p { margin: 0; color: var(--bg-muted); font-size: 12px; }
.bg-home-cta { background: var(--bg-red); color: #fff; }
.bg-home-cta__inner { width: min(1320px, calc(100% - 40px)); margin: 0 auto; padding: 105px 0; }
.bg-home-cta h2 { margin: 0 0 33px; font: 600 clamp(52px, 7vw, 92px)/.83 'Cormorant Garamond', Georgia, serif; letter-spacing: -.055em; }
.bg-home-cta h2 em { color: var(--bg-gold-light); font-style: normal; }
.bg-button--light { margin-left: 8px; border-color: #fff; background: #fff; color: var(--bg-ink); }

.bg-product-card { background: transparent; overflow: visible; }
.bg-product-card__media { position: relative; display: block; overflow: hidden; aspect-ratio: 3 / 4; background: #f1eee8; }
.bg-product-card__media-link { display: block; width: 100%; height: 100%; }
.bg-product-card__media-link:hover .bg-product-card__image { transform: scale(1.035); }
.bg-product-card__media-link > img.bg-product-card__image { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center center; transition: transform .35s ease; }
.bg-product-placeholder { width: 100%; height: 100%; display: grid; place-items: center; align-content: center; gap: 10px; background: linear-gradient(145deg, #d4dcd7, #8aa3a4 58%, #d1af70); color: #fff; text-align: center; }
.bg-product-placeholder span { font: 600 80px/.8 'Cormorant Garamond', Georgia, serif; letter-spacing: -.12em; }
.bg-product-placeholder small { text-transform: uppercase; letter-spacing: .17em; font-size: 9px; }
.bg-product-card__badge { position: absolute; top: 14px; left: 14px; z-index: 2; padding: 7px 9px; background: var(--bg-red); color: #fff; text-transform: uppercase; letter-spacing: .15em; font-size: 9px; font-weight: 700; }
.bg-product-card__wish { position: absolute; top: 12px; right: 12px; z-index: 2; width: 34px; height: 34px; border: 0; border-radius: 50%; background: rgba(251,249,245,.91); color: var(--bg-ink); font-size: 21px; line-height: 1; }
.bg-product-card__wish[aria-pressed="true"] { background: var(--bg-red); color: #fff; }
.bg-product-card__body { display: block; padding: 22px 2px 0; }
.bg-product-card__category { margin: 0 0 7px; color: var(--bg-red); text-transform: uppercase; letter-spacing: .16em; font-size: 9px; font-weight: 700; }
.bg-product-card__body h3 { margin: 0; font: 600 28px/1.12 'Cormorant Garamond', Georgia, serif; letter-spacing: -.02em; }
.bg-product-card__body h3 a:hover { color: var(--bg-red); }
.bg-product-card__meta { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-top: 16px; color: var(--bg-muted); font-size: 12px; line-height: 1.45; }
.bg-product-card__meta .price { color: var(--bg-ink); font-weight: 700; }
.bg-product-card__meta del { color: var(--bg-muted); font-weight: 400; }
.bg-product-card__rating { color: var(--bg-red); font-size: 11px; }
.bg-placeholder-panel { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; background: linear-gradient(145deg, #172f35, #467078 58%, #d1aa60); color: #fff; }
.bg-placeholder-panel--2 { background: linear-gradient(145deg, #4d252f, #9d6255 58%, #e0be7d); }
.bg-placeholder-panel--3 { background: linear-gradient(145deg, #d9d1c5, #678085 58%, #213e4d); }
.bg-placeholder-panel--4 { background: linear-gradient(145deg, #c3aa91, #7c5b55 58%, #173a46); }
.bg-placeholder-panel--5 { background: linear-gradient(145deg, #203b47, #6f8d8c 58%, #bb914b); }
.bg-placeholder-panel--6 { background: linear-gradient(145deg, #1c2638, #697b97 58%, #c0a06c); }
.bg-placeholder-monogram { color: var(--bg-gold-light); font: 600 74px/.75 'Cormorant Garamond', Georgia, serif; letter-spacing: -.12em; }
.bg-placeholder-label { color: rgba(255,255,255,.75); text-transform: uppercase; letter-spacing: .16em; font-size: 9px; }

.bg-shop-page { background: var(--bg-paper); }
.bg-shop-hero { background: var(--bg-cream); }
.bg-shop-hero__inner { width: min(1320px, calc(100% - 40px)); min-height: 305px; margin: 0 auto; padding: 72px 0 66px; display: flex; align-items: end; justify-content: space-between; gap: 40px; }
.bg-shop-hero h1 { margin: 0; color: var(--bg-ink); font: 600 clamp(64px, 9vw, 118px)/.77 'Cormorant Garamond', Georgia, serif; letter-spacing: -.06em; }
.bg-shop-hero h1 em { color: var(--bg-red); font-style: normal; }
.bg-shop-hero__inner > p { max-width: 385px; margin: 0 0 3px; color: var(--bg-muted); font-size: 13px; }
.bg-shop-shell { padding-top: 58px; }
.bg-shop-layout { display: grid; grid-template-columns: 256px minmax(0,1fr); gap: 44px; align-items: start; }
.bg-shop-filters { position: sticky; top: 112px; border-top: 1px solid var(--bg-ink); }
.bg-shop-filters__head { display: flex; justify-content: space-between; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--bg-line); }
.bg-shop-filters__head h2 { margin: 0; font: 600 29px/.9 'Cormorant Garamond', Georgia, serif; }
.bg-shop-filters__head button { display: none; border: 0; background: transparent; font-size: 25px; }
.bg-shop-filters form { display: grid; gap: 0; }
.bg-shop-filter__search { padding: 21px 0 18px; border-bottom: 1px solid var(--bg-line); }
.bg-shop-filter__search label, .bg-shop-filter > label, .bg-shop-filter > .bg-shop-filter__label, .bg-shop-filter legend { display: block; margin-bottom: 10px; color: var(--bg-ink); text-transform: uppercase; letter-spacing: .13em; font-size: 9px; font-weight: 700; }
.bg-shop-filter__search > div { display: flex; border-bottom: 1px solid var(--bg-ink); }
.bg-shop-filter__search input { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; padding: 8px 0; color: var(--bg-ink); font-size: 12px; }
.bg-shop-filter__search button { border: 0; background: transparent; color: var(--bg-red); font-size: 20px; }
.bg-shop-filter { margin: 0; padding: 18px 0; border: 0; border-bottom: 1px solid var(--bg-line); }
.bg-shop-filter select { width: 100%; border: 1px solid var(--bg-line); border-radius: 0; background: transparent; color: var(--bg-ink); padding: 10px; font-size: 12px; }
.bg-filter-help { margin: 9px 0 0; color: var(--bg-muted); font-size: 11px; line-height: 1.45; }
.bg-filter-options { display: grid; gap: 8px; }
.bg-filter-options--swatches { display: grid; grid-template-columns: repeat(7, 22px); gap: 10px 9px; }
.bg-filter-option, .bg-stock-filter { display: flex; align-items: center; gap: 8px; color: var(--bg-muted); font-size: 12px; cursor: pointer; }
.bg-filter-option input, .bg-stock-filter input { accent-color: var(--bg-red); }
.bg-filter-option--swatch { position: relative; display: block; width: 22px; height: 22px; }
.bg-filter-option--swatch input { position: absolute; width: 1px; height: 1px; margin: -1px; opacity: 0; }
.bg-filter-swatch { display: block; width: 22px; height: 22px; border: 1px solid rgba(20, 21, 19, .24); border-radius: 50%; background: linear-gradient(135deg, var(--bg-swatch-a) 0 50%, var(--bg-swatch-b) 50% 100%); box-shadow: inset 0 0 0 2px rgba(255,255,255,.2); transition: transform .18s ease, box-shadow .18s ease; }
.bg-filter-option--swatch:hover .bg-filter-swatch { transform: scale(1.12); }
.bg-filter-option--swatch input:checked + .bg-filter-swatch { box-shadow: 0 0 0 2px var(--bg-paper), 0 0 0 4px var(--bg-red); transform: scale(1.08); }
.bg-filter-option--swatch input:focus-visible + .bg-filter-swatch { outline: 2px solid var(--bg-red); outline-offset: 3px; }
.bg-price-fields { display: flex; align-items: center; gap: 8px; }
.bg-price-fields input { width: 100%; min-width: 0; border: 1px solid var(--bg-line); border-radius: 0; background: transparent; padding: 10px; font-size: 11px; }
.bg-stock-filter { padding: 18px 0; border-bottom: 1px solid var(--bg-line); }
.bg-shop-filter__actions { display: grid; gap: 13px; padding-top: 20px; }
.bg-shop-filter__actions .bg-button { width: 100%; min-height: 43px; }
.bg-shop-filter__actions a { color: var(--bg-red); text-align: center; text-transform: uppercase; letter-spacing: .13em; font-size: 9px; font-weight: 700; }
.bg-shop-results__bar { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 24px; padding-bottom: 16px; border-bottom: 1px solid var(--bg-line); }
.bg-shop-results__bar p { margin: 0; color: var(--bg-muted); font-size: 12px; }
.bg-shop-results__bar strong { color: var(--bg-ink); }
.bg-shop-inline-filter, .bg-shop-mobile-bar { display: none; }
.bg-shop-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 38px 20px; }
.bg-shop-empty { grid-column: 1/-1; min-height: 360px; display: grid; place-items: center; align-content: center; gap: 15px; background: var(--bg-cream); text-align: center; }
.bg-shop-empty__mark { color: var(--bg-red); font: 600 70px/.8 'Cormorant Garamond', Georgia, serif; letter-spacing: -.14em; }
.bg-shop-empty h2 { margin: 0; font: 600 42px/.9 'Cormorant Garamond', Georgia, serif; }
.bg-shop-empty p { max-width: 320px; margin: 0; color: var(--bg-muted); font-size: 12px; }
.bg-pagination { margin-top: 50px; text-align: center; }
.bg-pagination ul { display: flex; justify-content: center; gap: 8px; padding: 0; list-style: none; }
.bg-pagination a, .bg-pagination span { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--bg-line); color: var(--bg-ink); font-size: 11px; }
.bg-pagination .current { background: var(--bg-ink); color: #fff; }

.bg-product-page { background: var(--bg-paper); }
.bg-pdp-layout { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(360px,.92fr); gap: clamp(34px,4vw,64px); padding: 38px 0 58px; align-items: start; }
.bg-pdp-gallery { display: grid; grid-template-columns: 82px minmax(0,1fr); grid-template-areas: "thumbs main" "fit fit"; gap: 14px; align-items: start; min-width: 0; }
.bg-pdp-gallery__main { grid-area: main; position: relative; min-width: 0; height: min(720px, calc(100vh - 150px)); min-height: 540px; margin: 0; overflow: hidden; border: 1px solid #e1ded6; background: #fff; box-shadow: 0 18px 46px rgba(17,34,38,.08); }
.bg-pdp-gallery__zoom { position: relative; display: block; width: 100%; height: 100%; padding: 22px; border: 0; background: #fff; cursor: zoom-in; }
.bg-pdp-gallery__zoom > img.bg-pdp-gallery__image { display: block; width: 100%; height: 100%; max-width: none; object-fit: contain; object-position: center center; transition: transform .28s ease, opacity .18s ease; }
.bg-pdp-gallery__zoom:hover > img.bg-pdp-gallery__image { transform: scale(1.018); }
.bg-pdp-gallery__zoom:focus-visible { outline: 2px solid var(--bg-red); outline-offset: -4px; }
.bg-pdp-gallery__zoom-hint { position: absolute; top: 14px; right: 14px; display: inline-flex; align-items: center; gap: 6px; padding: 8px 10px; border: 1px solid rgba(16,44,49,.16); background: rgba(255,255,255,.92); color: var(--bg-ink); text-transform: uppercase; letter-spacing: .1em; font-size: 8px; font-weight: 700; box-shadow: 0 6px 18px rgba(17,34,38,.08); }
.bg-pdp-gallery__zoom-hint > span { font-size: 15px; line-height: .8; }
.bg-pdp-gallery__caption { position: absolute; left: 18px; right: 18px; bottom: 15px; margin: 0; overflow: hidden; color: var(--bg-muted); text-align: center; text-overflow: ellipsis; white-space: nowrap; font-size: 10px; pointer-events: none; }
.bg-pdp-gallery__thumbs { grid-area: thumbs; display: flex; flex-direction: column; gap: 9px; max-height: min(720px, calc(100vh - 150px)); padding: 1px 5px 1px 1px; overflow-y: auto; scrollbar-width: thin; }
.bg-pdp-gallery__thumb { position: relative; flex: 0 0 auto; width: 76px; aspect-ratio: 4/5; padding: 5px; overflow: hidden; border: 1px solid var(--bg-line); background: #fff; cursor: pointer; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.bg-pdp-gallery__thumb img { display: block; width: 100%; height: 100%; object-fit: contain; transition: transform .2s ease; }
.bg-pdp-gallery__thumb:hover img { transform: scale(1.04); }
.bg-pdp-gallery__thumb:hover { border-color: var(--bg-ink); transform: translateX(2px); }
.bg-pdp-gallery__thumb.is-active { border-color: var(--bg-red); box-shadow: 0 0 0 1px var(--bg-red); }
.bg-pdp-gallery__thumb:focus-visible { outline: 2px solid var(--bg-red); outline-offset: 2px; }
.bg-pdp-gallery__arrow { position: absolute; z-index: 3; top: 50%; display: grid; place-items: center; width: 42px; height: 42px; padding: 0; border: 1px solid rgba(16,44,49,.16); border-radius: 50%; background: rgba(255,255,255,.94); color: var(--bg-ink); cursor: pointer; box-shadow: 0 8px 24px rgba(17,34,38,.12); transform: translateY(-50%); transition: background .18s ease, color .18s ease, border-color .18s ease; }
.bg-pdp-gallery__arrow--prev { left: 14px; }
.bg-pdp-gallery__arrow--next { right: 14px; }
.bg-pdp-gallery__arrow:hover, .bg-pdp-gallery__arrow:focus-visible { border-color: var(--bg-ink); background: var(--bg-ink); color: #fff; }
.bg-pdp-gallery__placeholder { display: grid; place-items: center; align-content: center; gap: 12px; background: linear-gradient(145deg, #d2dad5, #7e9b9d 56%, #c59d55); text-align: center; }
.bg-pdp-gallery__placeholder figcaption { color: rgba(255,255,255,.75); text-transform: uppercase; letter-spacing: .15em; font-size: 9px; }
.bg-pdp-summary__sticky { position: sticky; top: 112px; }
.bg-breadcrumbs { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 28px; color: var(--bg-muted); font-size: 10px; }
.bg-breadcrumbs a:hover { color: var(--bg-red); }
.bg-pdp-summary__category { margin: 0 0 14px; color: var(--bg-red); text-transform: uppercase; letter-spacing: .18em; font-size: 9px; font-weight: 700; }
.bg-pdp-summary h1 { max-width: 18ch; margin: 0; font: 600 clamp(38px, 3.6vw, 54px)/.94 'Cormorant Garamond', Georgia, serif; letter-spacing: -.035em; overflow-wrap: normal; word-break: normal; hyphens: none; }
.bg-pdp-summary__review { display: flex; align-items: center; gap: 10px; margin-top: 17px; color: var(--bg-muted); font-size: 11px; }
.bg-pdp-summary__review span:first-child { color: var(--bg-red); letter-spacing: .12em; }
.bg-pdp-summary__price { margin-top: 25px; color: var(--bg-ink); font-size: 21px; font-weight: 700; }
.bg-pdp-summary__price del { color: var(--bg-muted); font-size: 14px; font-weight: 400; }
.bg-pdp-summary__price ins { text-decoration: none; }
.bg-pdp-summary__intro { margin-top: 19px; color: var(--bg-muted); font-size: 13px; }
.bg-pdp-promise { display: flex; gap: 12px; margin: 24px 0; padding: 14px; background: var(--bg-cream); }
.bg-pdp-promise__icon { color: var(--bg-red); font-size: 21px; }
.bg-pdp-promise p { margin: 0; color: var(--bg-muted); font-size: 11px; }
.bg-pdp-promise strong { color: var(--bg-ink); }
.bg-pdp-promise a { color: var(--bg-red); text-decoration: underline; text-underline-offset: 3px; }
.bg-pdp-purchase { padding: 22px 0 24px; border-top: 1px solid var(--bg-line); border-bottom: 1px solid var(--bg-line); }
.bg-pdp-purchase__label { margin: 0 0 15px; color: var(--bg-ink); text-transform: uppercase; letter-spacing: .15em; font-size: 10px; font-weight: 700; }
.bg-pdp-purchase .variations_form { margin: 0; }
.bg-pdp-purchase table.variations { width: 100%; border-collapse: collapse; }
.bg-pdp-purchase table.variations tr { display: block; padding: 12px 0; border-bottom: 1px solid var(--bg-line); }
.bg-pdp-purchase table.variations td { display: block; padding: 0; text-align: left; }
.bg-pdp-purchase table.variations td.label label { display: block; margin-bottom: 8px; color: var(--bg-ink); text-transform: uppercase; letter-spacing: .13em; font-size: 9px; font-weight: 700; }
.bg-pdp-purchase table.variations td.value select { width: 100%; border: 1px solid var(--bg-ink); border-radius: 0; background: var(--bg-paper); color: var(--bg-ink); padding: 12px; font-size: 12px; }
.bg-pdp-purchase table.variations td.value select.bg-colour-select--enhanced { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.bg-colour-swatches { display: flex; flex-wrap: wrap; gap: 8px; }
.bg-colour-swatch { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 7px 11px 7px 8px; border: 1px solid var(--bg-line); border-radius: 0; background: #fff; color: var(--bg-ink); cursor: pointer; font-size: 10px; font-weight: 700; letter-spacing: .055em; text-transform: uppercase; }
.bg-colour-swatch__chip { width: 20px; height: 20px; flex: 0 0 20px; border: 1px solid rgba(16,44,49,.2); border-radius: 50%; background: #d8d2c5; box-shadow: inset 0 0 0 2px #fff; }
.bg-colour-swatch[data-colour-value*="navy"] .bg-colour-swatch__chip { background: #142a46; }
.bg-colour-swatch[data-colour-value="blue"] .bg-colour-swatch__chip, .bg-colour-swatch[data-colour-value="sky-blue"] .bg-colour-swatch__chip { background: #6097d4; }
.bg-colour-swatch[data-colour-value*="turquoise"] .bg-colour-swatch__chip { background: #167f86; }
.bg-colour-swatch[data-colour-value*="green"] .bg-colour-swatch__chip { background: #789a72; }
.bg-colour-swatch[data-colour-value*="bordeaux"] .bg-colour-swatch__chip, .bg-colour-swatch[data-colour-value*="red"] .bg-colour-swatch__chip { background: #772d3d; }
.bg-colour-swatch[data-colour-value*="brown"] .bg-colour-swatch__chip { background: #76513d; }
.bg-colour-swatch[data-colour-value*="beige"] .bg-colour-swatch__chip { background: #c6ad83; }
.bg-colour-swatch[data-colour-value*="grey"] .bg-colour-swatch__chip, .bg-colour-swatch[data-colour-value*="silver"] .bg-colour-swatch__chip { background: #777d80; }
.bg-colour-swatch[data-colour-value*="black"] .bg-colour-swatch__chip { background: #17191a; }
.bg-colour-swatch[data-colour-value*="white"] .bg-colour-swatch__chip { background: #f7f5ef; }
.bg-colour-swatch:hover { border-color: var(--bg-ink); }
.bg-colour-swatch[aria-pressed="true"] { border-color: var(--bg-ink); background: var(--bg-ink); color: #fff; }
.bg-colour-swatch:disabled { cursor: not-allowed; opacity: .42; }
.bg-colour-swatch:focus-visible { outline: 2px solid var(--bg-red); outline-offset: 2px; }
.bg-pdp-purchase table.variations .reset_variations { display: inline-block; margin-top: 7px; color: var(--bg-red); font-size: 10px; }
.bg-pdp-purchase .single_variation_wrap { margin-top: 18px; }
.bg-pdp-purchase .woocommerce-variation-description { color: var(--bg-muted); font-size: 12px; }
.bg-pdp-purchase .woocommerce-variation-price { margin: 10px 0; color: var(--bg-red); font-size: 18px; font-weight: 700; }
.bg-pdp-purchase .woocommerce-variation-add-to-cart { display: grid; grid-template-columns: 86px 1fr 1fr; gap: 8px; align-items: stretch; }
.bg-pdp-purchase .quantity { display: flex; align-items: center; border: 1px solid var(--bg-line); }
.bg-pdp-purchase .quantity input { width: 100%; border: 0; background: transparent; color: var(--bg-ink); padding: 12px 7px; text-align: center; }
.bg-pdp-purchase .single_add_to_cart_button { min-height: 47px; border: 1px solid var(--bg-ink); border-radius: 0; background: var(--bg-ink); color: #fff; text-transform: uppercase; letter-spacing: .1em; font-size: 10px; font-weight: 700; }
.bg-pdp-purchase .single_add_to_cart_button:hover { background: var(--bg-red); border-color: var(--bg-red); }
.bg-pdp-purchase .bg-buy-now { width: 100%; min-height: 47px; border-color: var(--bg-gold); background: var(--bg-gold); color: var(--bg-ink); font-size: 10px; }
.bg-pdp-purchase .bg-buy-now:hover { background: var(--bg-gold-light); }
.bg-pdp-service { display: grid; gap: 0; border-bottom: 1px solid var(--bg-line); }
.bg-pdp-service > div { display: grid; grid-template-columns: 90px 1fr; gap: 15px; padding: 16px 0; border-bottom: 1px solid var(--bg-line); font-size: 11px; }
.bg-pdp-service > div:last-child { border-bottom: 0; }
.bg-pdp-service strong { color: var(--bg-ink); text-transform: uppercase; letter-spacing: .12em; font-size: 9px; }
.bg-pdp-service span { color: var(--bg-muted); }
.bg-pdp-fit-guide { width: min(1280px, calc(100% - 40px)); margin: 0 auto; border: 1px solid var(--bg-line); background: var(--bg-cream); }
.bg-pdp-gallery > .bg-pdp-fit-guide { grid-area: fit; width: 100%; margin: 8px 0 0; }
.bg-pdp-lightbox { width: min(94vw, 1120px); max-width: none; max-height: 94vh; margin: auto; padding: 0; border: 0; background: #111b20; color: #fff; }
.bg-pdp-lightbox::backdrop { background: rgba(8, 13, 16, .82); }
.bg-pdp-lightbox__inner { position: relative; display: grid; place-items: center; min-height: min(80vh, 760px); padding: 54px 22px 22px; }
.bg-pdp-lightbox__image { display: block; width: auto; max-width: 100%; max-height: min(76vh, 720px); object-fit: contain; }
.bg-pdp-lightbox__close { position: absolute; top: 12px; right: 12px; display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid rgba(255,255,255,.5); border-radius: 50%; background: rgba(17, 27, 32, .82); color: #fff; cursor: pointer; font-size: 27px; line-height: 1; }
.bg-pdp-lightbox__close:hover, .bg-pdp-lightbox__close:focus-visible { border-color: #fff; background: var(--bg-red); }
.bg-pdp-lightbox__arrow { position: absolute; z-index: 2; top: 50%; display: grid; place-items: center; width: 46px; height: 46px; padding: 0; border: 1px solid rgba(255,255,255,.5); border-radius: 50%; background: rgba(17,27,32,.78); color: #fff; cursor: pointer; transform: translateY(-50%); }
.bg-pdp-lightbox__arrow--prev { left: 14px; }
.bg-pdp-lightbox__arrow--next { right: 14px; }
.bg-pdp-lightbox__arrow:hover, .bg-pdp-lightbox__arrow:focus-visible { border-color: #fff; background: var(--bg-red); }
.bg-pdp-lightbox__caption { width: 100%; margin: 13px 0 0; color: rgba(255,255,255,.78); text-align: center; font-size: 11px; }
.bg-pdp-fit-guide > summary { display: flex; justify-content: space-between; gap: 20px; padding: 18px 20px; color: var(--bg-ink); cursor: pointer; list-style: none; text-transform: uppercase; letter-spacing: .12em; font-size: 10px; font-weight: 700; }
.bg-pdp-fit-guide > summary::-webkit-details-marker { display: none; }
.bg-pdp-fit-guide > summary span { color: var(--bg-red); font-size: 16px; }
.bg-pdp-fit-guide__body { padding: 0 20px 22px; }
.bg-pdp-fit-guide__intro { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(160px,.85fr); gap: 18px; align-items: center; padding-top: 5px; }
.bg-pdp-fit-guide__intro .bg-section-kicker { margin-bottom: 10px; }
.bg-pdp-fit-guide__intro h2 { margin: 0; font: 600 38px/.87 'Cormorant Garamond', Georgia, serif; letter-spacing: -.04em; }
.bg-pdp-fit-guide__intro h2 em { color: var(--bg-red); font-style: normal; }
.bg-pdp-fit-guide__intro p:not(.bg-section-kicker) { margin: 15px 0 14px; color: var(--bg-muted); font-size: 11px; }
.bg-pdp-fit-guide__diagram { min-width: 0; padding: 8px 0 0; }
.bg-pdp-fit-guide__diagram svg { display: block; width: 100%; height: auto; }
.bg-fit-guide__figure { fill: none; stroke: var(--bg-ink); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bg-fit-guide__measure { fill: none; stroke: var(--bg-red); stroke-width: 2; stroke-linecap: round; stroke-dasharray: 4 4; }
.bg-pdp-fit-guide__diagram text { fill: var(--bg-ink); font: 600 9px 'DM Sans', sans-serif; letter-spacing: .03em; }
.bg-pdp-fit-guide__steps { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; margin: 8px 0 0; padding: 15px 0 0; border-top: 1px solid var(--bg-line); list-style: none; }
.bg-pdp-fit-guide__steps li { display: grid; grid-template-columns: 27px 1fr; gap: 8px; }
.bg-pdp-fit-guide__steps li > span { color: var(--bg-red); font: 600 18px/1 'Cormorant Garamond', Georgia, serif; }
.bg-pdp-fit-guide__steps strong { color: var(--bg-ink); font-size: 11px; }
.bg-pdp-fit-guide__steps p { margin: 4px 0 0; color: var(--bg-muted); font-size: 10px; line-height: 1.45; }
.bg-pdp-fit-guide__checks { display: grid; grid-template-columns: .8fr 1.2fr; gap: 17px; margin-top: 19px; padding-top: 17px; border-top: 1px solid var(--bg-line); }
.bg-pdp-fit-guide__checks .bg-section-kicker { margin-bottom: 7px; }
.bg-pdp-fit-guide__checks h3 { margin: 0; color: var(--bg-ink); font: 600 24px/.9 'Cormorant Garamond', Georgia, serif; }
.bg-pdp-fit-guide__checks ul { display: grid; gap: 7px; margin: 0; padding: 0; color: var(--bg-muted); list-style: none; font-size: 10px; }
.bg-pdp-fit-guide__checks li { position: relative; padding-left: 15px; }
.bg-pdp-fit-guide__checks li::before { content: '✓'; position: absolute; left: 0; color: var(--bg-red); font-weight: 700; }
.bg-pdp-fit-guide__note { margin: 17px 0 0; padding: 12px; border-left: 2px solid var(--bg-gold); background: rgba(255,255,255,.55); color: var(--bg-muted); font-size: 10px; }
.bg-pdp-fit-guide__note strong { color: var(--bg-ink); }
.bg-pdp-accordions details { border-bottom: 1px solid var(--bg-line); }
.bg-pdp-accordions summary { display: flex; justify-content: space-between; gap: 20px; padding: 18px 0; color: var(--bg-ink); cursor: pointer; list-style: none; text-transform: uppercase; letter-spacing: .12em; font-size: 10px; font-weight: 700; }
.bg-pdp-accordions summary::-webkit-details-marker { display: none; }
.bg-pdp-accordions summary span { color: var(--bg-red); font-size: 16px; }
.bg-pdp-accordion__content { padding: 0 0 19px; color: var(--bg-muted); font-size: 12px; }
.bg-pdp-accordion__content p:last-child { margin-bottom: 0; }
.bg-pdp-attributes { display: grid; gap: 8px; margin: 0; }
.bg-pdp-attributes > div { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.bg-pdp-attributes dt { color: var(--bg-ink); font-weight: 700; }
.bg-pdp-attributes dd { margin: 0; }
.bg-pdp-related { padding-top: 80px; }
.bg-pdp-related .related.products > h2 { display: none; }
.bg-pdp-related .related.products ul.products { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; margin: 0; padding: 0; list-style: none; }
.bg-pdp-related .related.products ul.products li.product { width: auto; margin: 0; }
.bg-related-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.bg-pdp-related .bg-product-card__body h3 { font-size: 23px; }

.bg-account-page { background: var(--bg-paper); }
.bg-account-hero { background: var(--bg-ink); color: #fff; }
.bg-account-hero__inner { width: min(1320px, calc(100% - 40px)); min-height: 300px; margin: 0 auto; padding: 72px 0 66px; display: flex; align-items: end; justify-content: space-between; gap: 40px; }
.bg-account-hero h1 { margin: 0; color: #fff; font: 600 clamp(58px, 8vw, 105px)/.78 'Cormorant Garamond', Georgia, serif; letter-spacing: -.06em; }
.bg-account-hero h1 em { color: var(--bg-gold-light); font-style: normal; }
.bg-account-hero__inner > p { max-width: 355px; margin: 0 0 3px; color: rgba(255,255,255,.67); font-size: 13px; }
.bg-account-shell { padding-top: 58px; }
.bg-account-welcome { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 34px; padding-bottom: 27px; border-bottom: 1px solid var(--bg-line); }
.bg-account-welcome h2 { margin: 0; color: var(--bg-ink); font: 600 42px/.88 'Cormorant Garamond', Georgia, serif; }
.bg-account-welcome p:not(.bg-section-kicker) { max-width: 450px; margin: 10px 0 0; color: var(--bg-muted); font-size: 12px; }
.bg-account-layout { display: grid; grid-template-columns: 225px minmax(0,1fr); gap: 36px; align-items: start; }
.bg-account-sidebar { position: sticky; top: 112px; border-top: 1px solid var(--bg-ink); }
.bg-account-sidebar .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; }
.bg-account-sidebar .woocommerce-MyAccount-navigation li { margin: 0; border-bottom: 1px solid var(--bg-line); }
.bg-account-sidebar .woocommerce-MyAccount-navigation a { display: block; padding: 14px 0; color: var(--bg-muted); text-transform: uppercase; letter-spacing: .12em; font-size: 10px; font-weight: 700; }
.bg-account-sidebar .woocommerce-MyAccount-navigation a:hover, .bg-account-sidebar .woocommerce-MyAccount-navigation .is-active a { color: var(--bg-red); }
.bg-account-sidebar .woocommerce-MyAccount-navigation .is-active a { padding-left: 12px; border-left: 2px solid var(--bg-red); }
.bg-account-content { min-width: 0; padding: 30px; border: 1px solid var(--bg-line); background: #fff; }
.bg-account-content.is-loading { opacity: .58; transition: opacity .18s ease; }
.bg-account-content[aria-busy="true"] { cursor: progress; }
.bg-account-content .woocommerce-MyAccount-content { color: var(--bg-muted); font-size: 13px; }
.bg-account-content h2 { margin: 0 0 20px; color: var(--bg-ink); font: 600 38px/.9 'Cormorant Garamond', Georgia, serif; }
.bg-account-content h3 { color: var(--bg-ink); font-family: 'Cormorant Garamond', Georgia, serif; }
.bg-account-content a { color: var(--bg-red); }
.bg-account-content .woocommerce-Button, .bg-account-content .button, .bg-account-content button { border-radius: 0; background: var(--bg-ink); border-color: var(--bg-ink); color: #fff; text-transform: uppercase; letter-spacing: .11em; font-size: 10px; font-weight: 700; }
.bg-account-content .woocommerce-Button:hover, .bg-account-content .button:hover, .bg-account-content button:hover { background: var(--bg-red); border-color: var(--bg-red); color: #fff; }
.bg-account-content input.input-text, .bg-account-content select, .bg-account-content textarea { border: 1px solid var(--bg-line); border-radius: 0; background: #fff; padding: 12px; }
.bg-account-content .woocommerce table.shop_table { border-collapse: collapse; border: 1px solid var(--bg-line); border-radius: 0; }
.bg-account-content .woocommerce table.shop_table th, .bg-account-content .woocommerce table.shop_table td { border-color: var(--bg-line); }
.bg-account-auth { display: grid; grid-template-columns: minmax(230px,.72fr) minmax(0,1.28fr); gap: 34px; padding: 36px; background: var(--bg-cream); }
.bg-account-auth__intro h2 { margin: 0; color: var(--bg-ink); font: 600 42px/.87 'Cormorant Garamond', Georgia, serif; letter-spacing: -.04em; }
.bg-account-auth__intro p:not(.bg-section-kicker) { color: var(--bg-muted); font-size: 12px; }
.bg-account-auth .bg-account-content { padding: 28px; }
.bg-account-auth .woocommerce form.login, .bg-account-auth .woocommerce form.register { border: 0; padding: 0; margin: 0; }

.bg-wc-page { min-height: 55vh; }
.bg-wc-page .woocommerce h1, .bg-wc-page .woocommerce h2 { color: var(--bg-ink); font-family: 'Cormorant Garamond', Georgia, serif; }
.bg-wc-page .woocommerce a { color: var(--bg-red); }
.bg-wc-page .woocommerce .button, .bg-wc-page .woocommerce button.button, .bg-wc-page .woocommerce input.button { border-radius: 0; background: var(--bg-ink); border-color: var(--bg-ink); color: #fff; text-transform: uppercase; letter-spacing: .11em; font-size: 10px; font-weight: 700; }
.bg-wc-page .woocommerce .button:hover, .bg-wc-page .woocommerce button.button:hover, .bg-wc-page .woocommerce input.button:hover { background: var(--bg-red); border-color: var(--bg-red); color: #fff; }
.bg-wc-page .woocommerce table.shop_table { border-collapse: collapse; border: 1px solid var(--bg-line); border-radius: 0; }
.bg-wc-page .woocommerce table.shop_table th, .bg-wc-page .woocommerce table.shop_table td { border-color: var(--bg-line); }
.bg-wc-page .woocommerce input.input-text, .bg-wc-page .woocommerce select, .bg-wc-page .woocommerce textarea { border: 1px solid var(--bg-line); border-radius: 0; background: #fff; padding: 12px; }
.bg-wc-page .woocommerce form .form-row label { color: var(--bg-ink); font-size: 11px; }

.bg-footer { background: var(--bg-ink); }
.bg-footer__top { align-items: start; }
.bg-footer__links { display: flex; gap: 58px; }
.bg-footer__links > div { display: grid; gap: 8px; align-content: start; }
.bg-footer__links strong { color: var(--bg-gold-light); text-transform: uppercase; letter-spacing: .16em; font-size: 9px; }
.bg-footer__links a { color: rgba(255,255,255,.58); font-size: 11px; }
.bg-footer__links a:hover { color: #fff; }
.bg-footer__details { color: rgba(255,255,255,.57); }
.bg-footer__details a { color: var(--bg-gold-light); }
.bg-footer__powered-by { display: inline-flex; align-items: center; justify-content: flex-end; gap: 10px; color: rgba(255,255,255,.52); text-align: right; text-transform: uppercase; letter-spacing: .1em; font-size: 10px; }
.bg-footer__powered-by:hover { color: #fff; }
.bg-footer__powered-by span { max-width: 105px; line-height: 1.45; }
.bg-footer__powered-by strong { display: block; color: var(--bg-gold-light); font-size: 10px; }
.bg-footer__powered-by img { width: 52px; height: 52px; flex: 0 0 52px; border-radius: 8px; object-fit: cover; }

@media (max-width: 900px) {
	.bg-account-link span { display: none; }
	.bg-home-hero__inner { width: min(100% - 32px, 1320px); grid-template-columns: minmax(0,1fr) minmax(330px,.86fr); gap: 22px; }
	.bg-home-hero h1 { font-size: clamp(58px, 10vw, 91px); }
	.bg-home-hero__proof { width: 108%; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px 0; }
	.bg-home-hero__proof span:nth-child(2) { border-right: 0; }
	.bg-home-look--photography { aspect-ratio: .78; }
	.bg-home-look__seal { right: -3%; width: 88px; height: 88px; font-size: 7px; }
	.bg-home-look__photo--secondary { width: 42%; }
	.bg-home-look__caption { width: 63%; padding: 19px 20px; }
	.bg-home-guidance__inner { gap: 40px; }
	.bg-shop-layout { grid-template-columns: 220px minmax(0,1fr); gap: 25px; }
	.bg-shop-grid { gap: 30px 14px; }
	.bg-pdp-layout { grid-template-columns: minmax(0,1.1fr) minmax(310px,.9fr); gap: 30px; }
	.bg-pdp-purchase .woocommerce-variation-add-to-cart { grid-template-columns: 70px 1fr 1fr; }
}

@media (max-width: 700px) {
	.bg-topbar__inner, .bg-site-header__inner, .bg-home-hero__inner, .bg-home-guidance__inner, .bg-home-cta__inner, .bg-shop-hero__inner, .bg-section { width: min(100% - 32px, 1320px); }
	.bg-topbar__inner { min-height: 25px; font-size: 8px; }
	.bg-site-header__inner { min-height: 73px; }
	.bg-nav { position: absolute; inset: 100% 0 auto; background: var(--bg-paper); border-top: 1px solid var(--bg-line); }
	.bg-nav a { padding: 16px 0; border-color: var(--bg-line); }
	.bg-home-hero__inner { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
	.bg-home-hero__copy,
	.bg-home-hero__visual { width: 100%; min-width: 0; max-width: 100%; }
	.bg-home-hero__copy { overflow: hidden; padding: 62px 0 44px; }
	.bg-home-hero h1 { width: 100%; max-width: 100%; font-size: clamp(50px, 14vw, 64px); }
	.bg-home-hero h1 span { max-width: 100%; white-space: normal; }
	.bg-home-hero__lead { width: 100%; max-width: 100%; margin: 26px 0; font-size: 15px; }
	.bg-home-hero__actions { display: grid; grid-template-columns: 1fr; }
	.bg-home-hero__actions,
	.bg-home-hero__actions .bg-button { width: 100%; min-width: 0; max-width: 100%; }
	.bg-home-hero__proof { width: 100%; max-width: 100%; gap: 18px 0; margin-top: 38px; }
	.bg-home-hero__proof span { padding-left: 0; padding-right: 14px; }
	.bg-home-hero__proof span:nth-child(odd) { padding-right: 14px; }
	.bg-home-hero__proof span:nth-child(even) { padding-left: 14px; padding-right: 0; }
	.bg-home-hero__visual { padding: 0 4px 68px; }
	.bg-home-look { width: 100%; max-width: 100%; margin-left: 0; aspect-ratio: .68; }
	.bg-home-look__photo--primary { width: 83%; }
	.bg-home-look__photo--secondary { bottom: 13%; width: 43%; }
	.bg-home-look__photo--secondary figcaption { padding: 11px 12px 13px; }
	.bg-home-look__photo--secondary figcaption strong { font-size: 14px; }
	.bg-home-look__caption { right: -1%; bottom: 0; width: 65%; max-width: none; padding: 16px 17px; }
	.bg-home-look__caption strong { font-size: clamp(29px, 8vw, 38px); }
	.bg-home-look__index { top: 13%; left: 3%; }
	.bg-home-look__seal { top: 7%; right: -2%; width: 78px; height: 78px; }
	.bg-home-hero__services-inner { width: calc(100% - 32px); min-height: 0; grid-template-columns: 1fr; padding: 17px 0; }
	.bg-home-hero__services-inner > div { min-height: 76px; padding: 10px 0; border-right: 0; border-bottom: 1px solid var(--bg-line); }
	.bg-home-hero__services-inner > div:last-child { border-bottom: 0; }
	.bg-home-intro { display: block; padding-top: 65px; padding-bottom: 65px; }
	.bg-home-intro__mark { margin-bottom: 25px; }
	.bg-home-intro > p:last-child { margin-top: 23px; }
	.bg-product-grid--home, .bg-shop-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 29px 12px; }
	.bg-home-guidance__inner { display: block; padding: 70px 0; }
	.bg-home-guidance__steps { display: grid; grid-template-columns: 1fr; gap: 27px; margin-top: 38px; }
	.bg-home-cta__inner { padding: 76px 0; }
	.bg-home-cta h2 { font-size: 64px; }
	.bg-home-cta .bg-button { width: 100%; }
	.bg-home-cta .bg-button--light { margin: 10px 0 0; }
	.bg-shop-hero__inner { display: block; min-height: unset; padding: 63px 0 55px; }
	.bg-shop-hero__inner > p { margin-top: 25px; }
	.bg-shop-layout { display: block; }
	.bg-shop-mobile-bar { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; padding-bottom: 14px; border-bottom: 1px solid var(--bg-line); color: var(--bg-muted); font-size: 11px; }
	.bg-shop-mobile-bar strong { color: var(--bg-ink); }
	.bg-shop-mobile-bar button, .bg-shop-inline-filter { border: 0; background: transparent; color: var(--bg-red); text-transform: uppercase; letter-spacing: .13em; font-size: 9px; font-weight: 700; }
	.bg-shop-filters { position: fixed; z-index: 80; inset: 0; width: min(380px, calc(100% - 36px)); max-height: 100vh; overflow-y: auto; padding: 0 20px 24px; background: var(--bg-paper); box-shadow: 20px 0 50px rgba(16,44,49,.22); visibility: hidden; pointer-events: none; transform: translateX(-110%); transition: transform .28s ease, visibility .28s ease; }
	.bg-shop-filters.is-open { visibility: visible; pointer-events: auto; transform: translateX(0); }
	.bg-shop-filters__head { position: sticky; top: 0; z-index: 1; background: var(--bg-paper); }
	.bg-shop-filters__head button { display: block; }
	.bg-shop-results__bar { margin-bottom: 21px; }
	.bg-shop-inline-filter { display: inline-flex; }
	.bg-shop-grid .bg-product-card__body h3 { font-size: 23px; line-height: 1.12; }
	.bg-product-card__meta { display: block; }
	.bg-product-card__rating { display: block; margin-top: 4px; }
	.bg-account-hero__inner { display: block; min-height: unset; padding: 63px 0 55px; }
	.bg-account-hero__inner > p { margin-top: 25px; }
	.bg-account-shell { padding-top: 45px; }
	.bg-account-welcome { display: block; }
	.bg-account-welcome .bg-button { width: 100%; margin-top: 20px; }
	.bg-account-layout { display: block; }
	.bg-account-sidebar { position: static; margin-bottom: 22px; }
	.bg-account-sidebar .woocommerce-MyAccount-navigation ul { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 0 15px; }
	.bg-account-content { padding: 20px; }
	.bg-account-auth { display: block; padding: 20px; }
	.bg-account-auth__intro { margin-bottom: 25px; }
	.bg-account-auth .bg-account-content { padding: 20px; }
	.bg-pdp-layout { display: flex; flex-direction: column; gap: 32px; padding-top: 24px; }
	.bg-pdp-gallery { display: grid; grid-template-columns: 1fr; grid-template-areas: "main" "thumbs" "fit"; width: 100%; gap: 9px; }
	.bg-pdp-gallery__main { width: 100%; height: auto; min-height: 0; aspect-ratio: 4/5; }
	.bg-pdp-gallery__zoom { padding: 14px; }
	.bg-pdp-gallery__thumbs { flex-direction: row; max-height: none; padding: 2px 1px 5px; overflow-x: auto; overflow-y: hidden; }
	.bg-pdp-gallery__thumb { width: 68px; }
	.bg-pdp-gallery__arrow { width: 38px; height: 38px; }
	.bg-pdp-gallery__caption { display: none; }
	.bg-pdp-summary { width: 100%; }
	.bg-pdp-summary__sticky { position: static; }
	.bg-pdp-summary h1 { max-width: 20ch; font-size: clamp(38px, 12vw, 48px); line-height: .96; }
	.bg-pdp-purchase .woocommerce-variation-add-to-cart { grid-template-columns: 64px 1fr; }
	.bg-pdp-purchase .single_add_to_cart_button, .bg-pdp-purchase .bg-buy-now { grid-column: 2; }
	.bg-pdp-fit-guide__intro { display: block; }
	.bg-pdp-fit-guide { width: calc(100% - 32px); }
	.bg-pdp-fit-guide__diagram { max-width: 260px; margin: 14px auto 0; }
	.bg-pdp-fit-guide__steps { grid-template-columns: 1fr; }
	.bg-pdp-fit-guide__checks { display: block; }
	.bg-pdp-fit-guide__checks ul { margin-top: 15px; }
	.bg-pdp-related .related.products ul.products, .bg-related-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 12px; }
	.bg-footer__top { display: grid; gap: 35px; }
	.bg-footer__links { gap: 44px; }
	.bg-footer__details { text-align: left; }
	.bg-footer__powered-by { justify-content: flex-start; margin-top: 18px; text-align: left; }
}

/* -------------------------------------------------------------------------
   Responsive hardening
   ------------------------------------------------------------------------- */
.bg-site-header__inner > *,
.bg-nav,
.bg-header-actions,
.bg-product-card__body,
.bg-pdp-summary,
.bg-account-content,
.bg-wc-page .woocommerce {
	min-width: 0;
}

.bg-product-card__body h3,
.bg-account-content,
.bg-wc-page .woocommerce {
	overflow-wrap: anywhere;
}

.bg-pdp-summary h1 { overflow-wrap: normal; word-break: normal; }

.bg-filter-scrim {
	display: none;
}

/* Keep the tablet header usable before the full mobile layout begins. */
@media (max-width: 860px) {
	.bg-site-header__inner { min-height: 73px; }
	.bg-nav {
		position: absolute;
		inset: 100% 0 auto;
		display: grid;
		gap: 0;
		padding: 8px 16px 16px;
		background: var(--bg-paper);
		border-top: 1px solid var(--bg-line);
		transform: translateY(-150%);
		transition: transform .25s ease;
	}
	.bg-nav.is-open { transform: translateY(0); }
	.bg-nav a {
		padding: 16px 0;
		border-bottom: 1px solid var(--bg-line);
		color: var(--bg-ink);
	}
	.bg-nav a:hover,
	.bg-nav a:focus { color: var(--bg-red); }
	.bg-menu-toggle { display: inline-flex; }
	.bg-cart-label {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0,0,0,0);
		white-space: nowrap;
		border: 0;
	}
}

@media (max-width: 700px) {
	body.bg-filters-open { overflow: hidden; }
	.bg-filter-scrim:not([hidden]) {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 79;
		border: 0;
		background: rgba(16,44,49,.52);
	}
	.bg-shop-grid .bg-product-card__body h3,
	.bg-related-grid .bg-product-card__body h3 { font-size: clamp(19px, 6vw, 23px); line-height: 1.14; }
	.bg-product-card__meta { min-width: 0; flex-wrap: wrap; }
	.bg-pdp-purchase .single_add_to_cart_button,
	.bg-pdp-purchase .bg-buy-now { grid-column: 1 / -1; }
	.bg-pdp-service > div { grid-template-columns: 75px minmax(0,1fr); gap: 12px; }
	.bg-account-content .woocommerce form .form-row-first,
	.bg-account-content .woocommerce form .form-row-last,
	.bg-account-content .woocommerce form .form-row {
		float: none;
		width: 100%;
		margin-right: 0;
	}
	.bg-account-content .woocommerce .woocommerce-Addresses { grid-template-columns: 1fr; }
	.bg-wc-page .woocommerce-cart-form { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
	.bg-wc-page .woocommerce table.shop_table,
	.bg-account-content .woocommerce table.shop_table { max-width: 100%; }
}

@media (max-width: 360px) {
	.bg-topbar__inner { gap: 8px; letter-spacing: .1em; }
	.bg-site-header__inner { width: calc(100% - 24px); gap: 12px; }
	.bg-brand__logo { width: 56px; height: 54px; }
	.bg-header-actions { gap: 8px; }
	.bg-home-cta h2 { font-size: 55px; }
	.bg-pdp-summary h1 { font-size: 51px; }
	.bg-pdp-fit-guide > summary { padding-right: 14px; padding-left: 14px; }
	.bg-pdp-fit-guide__body { padding-right: 14px; padding-left: 14px; }
	.bg-pdp-related .related.products ul.products,
	.bg-related-grid { gap: 18px 10px; }
}

/* -------------------------------------------------------------------------
   Wishlist, enquiry and review modules
   ------------------------------------------------------------------------- */
.bg-wishlist-link { position: relative; display: inline-flex; align-items: center; gap: 7px; color: var(--bg-ink); text-transform: uppercase; letter-spacing: .12em; font-size: 10px; font-weight: 700; }
.bg-wishlist-link svg { width: 19px; height: 19px; }
.bg-wishlist-count { min-width: 17px; height: 17px; display: inline-grid; place-items: center; border-radius: 50%; background: var(--bg-gold); color: var(--bg-ink); font-size: 9px; letter-spacing: 0; }
.bg-wishlist-link:hover { color: var(--bg-red); }
.bg-wishlist-shell { min-height: 45vh; }
.bg-wishlist-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 38px 20px; }
.bg-wishlist-status { margin: 0 0 24px; color: var(--bg-muted); font-size: 12px; }
.bg-wishlist-empty { min-height: 360px; display: grid; place-items: center; align-content: center; gap: 15px; background: var(--bg-cream); text-align: center; }
.bg-wishlist-empty__mark { color: var(--bg-red); font-size: 55px; line-height: 1; }
.bg-wishlist-empty h2 { margin: 0; font: 600 42px/.9 'Cormorant Garamond', Georgia, serif; }
.bg-wishlist-empty p { max-width: 320px; margin: 0; color: var(--bg-muted); font-size: 12px; }
.bg-wishlist-error { margin: 0; padding: 18px; border-left: 2px solid var(--bg-red); background: var(--bg-cream); color: var(--bg-muted); font-size: 12px; }
.bg-pdp-enquiry { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin: -10px 0 23px; padding: 12px 14px; border: 1px solid var(--bg-line); color: var(--bg-red); text-transform: uppercase; letter-spacing: .1em; font-size: 9px; font-weight: 700; }
.bg-pdp-enquiry:hover { border-color: var(--bg-red); background: var(--bg-cream); }
.bg-pdp-enquiry span { font-size: 16px; }
.bg-pdp-reviews { padding-top: 66px; border-top: 1px solid var(--bg-line); }
.bg-pdp-reviews .bg-section-heading { margin-bottom: 30px; }
.bg-pdp-reviews .bg-section-heading > p { max-width: 300px; }
.bg-pdp-reviews #reviews { max-width: 900px; }
.bg-pdp-reviews #comments ol.commentlist { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.bg-pdp-reviews #comments ol.commentlist > li { margin: 0; padding: 20px; border: 1px solid var(--bg-line); background: #fff; }
.bg-pdp-reviews #comments .comment-text { margin: 0; padding: 0; border: 0; }
.bg-pdp-reviews #comments .star-rating { color: var(--bg-red); }
.bg-pdp-reviews #comments .meta { color: var(--bg-muted); font-size: 11px; }
.bg-pdp-reviews #review_form_wrapper { margin-top: 28px; padding-top: 28px; border-top: 1px solid var(--bg-line); }
.bg-pdp-reviews #review_form_wrapper h3 { margin: 0 0 16px; color: var(--bg-ink); font: 600 31px/.9 'Cormorant Garamond', Georgia, serif; }
.bg-pdp-reviews #review_form .comment-form-rating label,
.bg-pdp-reviews #review_form .comment-form-comment label { display: block; margin-bottom: 7px; color: var(--bg-ink); font-size: 11px; font-weight: 700; }
.bg-pdp-reviews #review_form input,
.bg-pdp-reviews #review_form select,
.bg-pdp-reviews #review_form textarea { width: 100%; max-width: 100%; border: 1px solid var(--bg-line); border-radius: 0; background: #fff; padding: 12px; }
.bg-pdp-reviews #review_form textarea { min-height: 130px; resize: vertical; }

@media (max-width: 900px) {
	.bg-wishlist-label { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
	.bg-wishlist-grid { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 30px 14px; }
}

@media (max-width: 700px) {
	.bg-wishlist-link { width: 34px; height: 34px; justify-content: center; }
	.bg-wishlist-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 24px 12px; }
	.bg-pdp-reviews .bg-section-heading { display: block; }
	.bg-pdp-reviews .bg-section-heading > p { margin-top: 18px; }
}

/* -------------------------------------------------------------------------
   Support and public order tracking modules
   ------------------------------------------------------------------------- */
.bg-track-shell,
.bg-contact-shell { min-height: 48vh; }
.bg-track-card { max-width: 650px; margin: 0 auto; padding: 42px; border: 1px solid var(--bg-line); background: var(--bg-cream); }
.bg-track-card h2 { margin: 0; color: var(--bg-ink); font: 600 48px/.87 'Cormorant Garamond', Georgia, serif; }
.bg-track-card__intro { max-width: 430px; margin: 15px 0 28px; color: var(--bg-muted); font-size: 13px; }
.bg-track-form { margin-bottom: 23px; }
.bg-track-form form { margin: 0; padding: 0; border: 0; }
.bg-track-form form p { color: var(--bg-muted); font-size: 12px; }
.bg-track-form form .form-row { float: none; width: 100%; margin: 0 0 15px; padding: 0; }
.bg-track-form form .form-row label { display: block; margin-bottom: 7px; color: var(--bg-ink); font-size: 10px; font-weight: 700; }
.bg-track-form form .input-text { width: 100%; border: 1px solid var(--bg-line); border-radius: 0; background: #fff; padding: 12px; }
.bg-track-form form button,
.bg-track-form form .button { min-height: 47px; border: 1px solid var(--bg-ink); border-radius: 0; background: var(--bg-ink); color: #fff; text-transform: uppercase; letter-spacing: .11em; font-size: 10px; font-weight: 700; }
.bg-track-form form button:hover,
.bg-track-form form .button:hover { border-color: var(--bg-red); background: var(--bg-red); }
.bg-contact-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,.9fr); gap: 72px; align-items: start; }
.bg-contact-grid h2 { max-width: 520px; margin: 0; font: 600 clamp(46px, 6vw, 74px)/.86 'Cormorant Garamond', Georgia, serif; letter-spacing: -.045em; }
.bg-contact-address { margin: 28px 0 0; color: var(--bg-muted); font-size: 13px; line-height: 1.8; }
.bg-contact-card { padding: 35px; background: var(--bg-cream); }
.bg-contact-card h3 { margin: 0; color: var(--bg-ink); font: 600 36px/.9 'Cormorant Garamond', Georgia, serif; }
.bg-contact-card > p:not(.bg-section-kicker) { margin: 15px 0 25px; color: var(--bg-muted); font-size: 13px; }
.bg-contact-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.bg-contact-actions .bg-button { flex: 1 1 180px; min-width: 0; }
.bg-contact-editorial { max-width: 760px; margin-top: 60px; padding-top: 35px; border-top: 1px solid var(--bg-line); color: var(--bg-muted); font-size: 13px; }

@media (max-width: 700px) {
	.bg-track-card { padding: 25px 20px; }
	.bg-track-card h2 { font-size: 43px; }
	.bg-contact-grid { display: block; }
	.bg-contact-card { margin-top: 35px; padding: 25px 20px; }
	.bg-contact-card h3 { font-size: 31px; }
	.bg-contact-actions { display: grid; }
	.bg-contact-actions .bg-button { width: 100%; }
}

/* -------------------------------------------------------------------------
   Business introduction and delivery content modules
   ------------------------------------------------------------------------- */
.bg-about-shell,
.bg-delivery-shell { min-height: 50vh; }
.bg-about-grid,
.bg-delivery-grid { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 80px; align-items: start; }
.bg-about-grid h2,
.bg-delivery-grid h2 { max-width: 500px; margin: 0; font: 600 clamp(46px, 6vw, 75px)/.86 'Cormorant Garamond', Georgia, serif; letter-spacing: -.045em; }
.bg-about-copy { max-width: 570px; color: var(--bg-muted); font-size: 14px; }
.bg-about-copy p:first-child { margin-top: 0; color: var(--bg-ink); font-size: 18px; line-height: 1.45; }
.bg-about-story { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 80px; margin-top: 105px; padding: 50px 0; border-top: 1px solid var(--bg-line); border-bottom: 1px solid var(--bg-line); }
.bg-about-story h2,
.bg-about-principles h2 { max-width: 500px; margin: 0; color: var(--bg-ink); font: 600 clamp(39px, 5vw, 65px)/.9 'Cormorant Garamond', Georgia, serif; letter-spacing: -.045em; }
.bg-about-story__copy { max-width: 600px; color: var(--bg-muted); font-size: 15px; line-height: 1.75; }
.bg-about-story__copy p:first-child { margin-top: 0; color: var(--bg-ink); font-size: 18px; line-height: 1.5; }
.bg-about-principles { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 80px; margin-top: 85px; }
.bg-about-principles__list { border-top: 1px solid var(--bg-line); }
.bg-about-principles__list > div { display: grid; grid-template-columns: 45px minmax(130px,.65fr) 1fr; gap: 18px; padding: 22px 0; border-bottom: 1px solid var(--bg-line); }
.bg-about-principles__list span { color: var(--bg-red); font: 600 20px/1 'Cormorant Garamond', Georgia, serif; }
.bg-about-principles__list h3 { margin: 0; color: var(--bg-ink); font: 600 21px/1 'Cormorant Garamond', Georgia, serif; }
.bg-about-principles__list p { margin: 0; color: var(--bg-muted); font-size: 13px; line-height: 1.65; }
.bg-about-links { max-width: 680px; margin: 65px 0 0; color: var(--bg-muted); font-size: 14px; line-height: 1.7; }
.bg-about-links a { color: var(--bg-red); text-decoration: underline; text-underline-offset: 3px; }
.bg-about-details { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: 70px; padding-top: 22px; border-top: 1px solid var(--bg-line); }
.bg-about-details div { display: grid; gap: 8px; }
.bg-about-details span { color: var(--bg-red); text-transform: uppercase; letter-spacing: .15em; font-size: 9px; font-weight: 700; }
.bg-about-details strong { color: var(--bg-ink); font-size: 13px; line-height: 1.65; }
.bg-about-details a,
.bg-delivery-returns a { color: var(--bg-red); text-decoration: underline; text-underline-offset: 3px; }
.bg-about-editorial,
.bg-delivery-editorial { max-width: 760px; margin-top: 55px; padding-top: 30px; border-top: 1px solid var(--bg-line); color: var(--bg-muted); font-size: 13px; }
.bg-legal-details { max-width: 900px; margin-top: 65px; padding-top: 28px; border-top: 1px solid var(--bg-line); }
.bg-legal-details > p { margin-bottom: 22px; }
.bg-legal-details__grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 24px; }
.bg-legal-details__grid div { display: grid; gap: 8px; }
.bg-legal-details__grid span,
.bg-contact-company { color: var(--bg-muted); font-size: 11px; line-height: 1.6; }
.bg-legal-details__grid span { color: var(--bg-red); text-transform: uppercase; letter-spacing: .14em; font-size: 9px; font-weight: 700; }
.bg-legal-details__grid strong { color: var(--bg-ink); font-size: 12px; line-height: 1.55; }
.bg-contact-company { margin-top: 18px; }
.bg-contact-company strong { color: var(--bg-ink); }
.bg-delivery-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 0 22px; border-top: 1px solid var(--bg-line); }
.bg-delivery-facts div { padding: 21px 0; border-bottom: 1px solid var(--bg-line); }
.bg-delivery-facts strong { color: var(--bg-ink); font-size: 13px; }
.bg-delivery-facts p { margin: 8px 0 0; color: var(--bg-muted); font-size: 12px; }
.bg-delivery-returns { max-width: 760px; margin-top: 75px; padding: 35px; background: var(--bg-cream); }
.bg-delivery-returns h2 { margin: 0; color: var(--bg-ink); font: 600 43px/.88 'Cormorant Garamond', Georgia, serif; }
.bg-delivery-returns p:not(.bg-section-kicker) { color: var(--bg-muted); font-size: 13px; }

@media (max-width: 700px) {
	.bg-about-grid,
	.bg-delivery-grid,
	.bg-about-story,
	.bg-about-principles { display: block; }
	.bg-about-copy { margin-top: 30px; }
	.bg-about-story { margin-top: 65px; padding: 35px 0; }
	.bg-about-story__copy { margin-top: 30px; }
	.bg-about-principles { margin-top: 55px; }
	.bg-about-principles__list { margin-top: 30px; }
	.bg-about-principles__list > div { grid-template-columns: 32px 1fr; gap: 10px 14px; }
	.bg-about-principles__list p { grid-column: 2; }
	.bg-about-links { margin-top: 45px; }
	.bg-about-details { grid-template-columns: 1fr; margin-top: 45px; }
	.bg-legal-details { margin-top: 45px; }
	.bg-legal-details__grid { grid-template-columns: 1fr 1fr; gap: 25px 16px; }
	.bg-delivery-facts { grid-template-columns: 1fr; margin-top: 32px; }
	.bg-delivery-returns { margin-top: 45px; padding: 25px 20px; }
	.bg-delivery-returns h2 { font-size: 37px; }
}

/* -------------------------------------------------------------------------
   Promotional offers
   ------------------------------------------------------------------------- */
.bg-offer-banner {
	position: relative;
	background: #0f3035;
	color: #fff;
	border-bottom: 1px solid rgba(215,170,82,.35);
	border-top: 1px solid rgba(215,170,82,.22);
}
.bg-offer-banner__inner {
	width: min(1280px, calc(100% - 40px));
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(200px, .62fr) minmax(0, 1.7fr);
	gap: 42px;
	align-items: center;
	padding: 34px 0;
}
.bg-offer-banner__intro { min-width: 0; }
.bg-offer-banner__eyebrow,
.bg-offer-card__eyebrow {
	margin: 0 0 11px;
	color: var(--bg-gold-light);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: .18em;
	line-height: 1.3;
	text-transform: uppercase;
}
.bg-offer-banner__intro h2 {
	margin: 0;
	color: #fff;
	font: 600 clamp(37px, 4vw, 59px)/.87 'Cormorant Garamond', Georgia, serif;
	letter-spacing: -.04em;
}
.bg-offer-banner__intro h2 em { color: var(--bg-gold-light); font-style: normal; }
.bg-offer-banner__intro > p:last-child {
	max-width: 280px;
	margin: 17px 0 0;
	color: rgba(255,255,255,.65);
	font-size: 12px;
	line-height: 1.5;
}
.bg-offer-banner__grid,
.bg-offer-popup__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	min-width: 0;
}
.bg-offer-card {
	min-width: 0;
	min-height: 205px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 21px 20px 19px;
	background: var(--bg-cream);
	color: var(--bg-ink);
	border: 1px solid rgba(255,255,255,.12);
}
.bg-offer-card--red { background: #f0e4dc; }
.bg-offer-card--dark { background: #173f44; color: #fff; }
.bg-offer-card--dark .bg-offer-card__eyebrow { color: var(--bg-gold-light); }
.bg-offer-card h3 {
	margin: 0;
	color: inherit;
	font: 600 clamp(24px, 2.1vw, 33px)/1.08 'Cormorant Garamond', Georgia, serif;
	letter-spacing: -.02em;
	overflow-wrap: anywhere;
}
.bg-offer-card__body {
	margin: 16px 0 0;
	color: var(--bg-muted);
	font-size: 11px;
	line-height: 1.6;
}
.bg-offer-card--dark .bg-offer-card__body { color: rgba(255,255,255,.7); }
.bg-offer-card__value {
	margin: 18px 0 0;
	color: var(--bg-red);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.55;
}
.bg-offer-card--dark .bg-offer-card__value { color: var(--bg-gold-light); }
.bg-offer-card__link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: auto;
	padding-top: 16px;
	color: var(--bg-ink);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: .12em;
	line-height: 1.2;
	text-transform: uppercase;
	text-decoration: underline;
	text-underline-offset: 4px;
}
.bg-offer-card--dark .bg-offer-card__link { color: #fff; }
.bg-offer-card__link:hover { color: var(--bg-red); }
.bg-offer-card--dark .bg-offer-card__link:hover { color: var(--bg-gold-light); }
.bg-offer-popup[hidden] { display: none !important; }
.bg-offer-popup {
	position: fixed;
	inset: 0;
	z-index: 200;
	display: grid;
	place-items: center;
	padding: 22px;
	overflow: hidden auto;
	overscroll-behavior: contain;
	box-sizing: border-box;
}
.bg-offer-popup__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(8, 24, 27, .76);
	backdrop-filter: blur(5px);
}
.bg-offer-popup__dialog {
	position: relative;
	isolation: isolate;
	width: min(980px, 100%);
	max-height: min(720px, calc(100vh - 44px));
	overflow-x: hidden;
	overflow-y: auto;
	padding: clamp(34px, 5vw, 58px);
	background:
		radial-gradient(circle at 92% 5%, rgba(209, 169, 86, .24), transparent 25%),
		linear-gradient(135deg, #0d2b32 0%, #123a40 64%, #0b252b 100%);
	border: 1px solid rgba(225, 190, 104, .52);
	border-radius: 28px;
	box-shadow: 0 28px 100px rgba(0,0,0,.48), 0 0 0 10px rgba(14,42,48,.22);
	box-sizing: border-box;
	min-width: 0;
	max-width: 100%;
	margin: 0 auto;
}
.bg-offer-popup__dialog::before {
	content: '';
	position: absolute;
	width: 420px;
	height: 420px;
	right: -182px;
	top: -222px;
	border: 1px solid rgba(225,190,104,.34);
	border-radius: 50%;
	box-shadow: 0 0 0 18px rgba(225,190,104,.04), 0 0 0 42px rgba(225,190,104,.035);
	pointer-events: none;
}
.bg-offer-popup__dialog::after {
	content: '';
	position: absolute;
	inset: 12px;
	border: 1px solid rgba(255,255,255,.13);
	border-radius: 19px;
	pointer-events: none;
}
.bg-offer-popup__dialog > * {
	position: relative;
	z-index: 1;
	min-width: 0;
	max-width: 100%;
}
.bg-offer-popup__seal {
	position: absolute !important;
	top: 30px;
	right: 78px;
	display: grid;
	place-items: center;
	width: 72px;
	height: 72px;
	border: 1px solid rgba(225,190,104,.8);
	border-radius: 50%;
	background: rgba(11,37,43,.62);
	color: var(--bg-gold-light);
	text-align: center;
	transform: rotate(8deg);
}
.bg-offer-popup__seal::before {
	content: '';
	position: absolute;
	inset: 5px;
	border: 1px solid rgba(225,190,104,.4);
	border-radius: 50%;
}
.bg-offer-popup__seal strong { display: block; font: 600 25px/.8 'Cormorant Garamond', Georgia, serif; }
.bg-offer-popup__seal small { display: block; margin-top: 5px; font-size: 6px; font-weight: 700; letter-spacing: .14em; line-height: 1.25; }
.bg-offer-popup__dialog .bg-offer-banner__eyebrow { color: var(--bg-gold-light); }
.bg-offer-popup__close {
	position: absolute;
	top: 25px;
	right: 26px;
	width: 38px;
	height: 38px;
	z-index: 2;
	border: 1px solid rgba(255,255,255,.3);
	border-radius: 50%;
	background: rgba(250,247,240,.95);
	color: var(--bg-ink);
	font-size: 25px;
	line-height: 1;
}
.bg-offer-popup__close:hover { background: var(--bg-cream); color: var(--bg-red); }
.bg-offer-popup__dialog h2 {
	max-width: 590px;
	margin: 0;
	color: #fffaf1;
	font: 600 clamp(43px, 6vw, 72px)/.92 'Cormorant Garamond', Georgia, serif;
	letter-spacing: -.045em;
}
.bg-offer-popup__intro {
	max-width: 570px;
	margin: 20px 0 34px;
	color: rgba(255,255,255,.72);
	font-size: 13px;
	line-height: 1.65;
}
.bg-offer-popup__grid {
	width: 100%;
	max-width: 100%;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
	gap: 16px;
}
.bg-offer-popup .bg-offer-card {
	position: relative;
	width: 100%;
	max-width: 100%;
	min-height: 235px;
	overflow: hidden;
	padding: 24px 22px 22px;
	border: 0;
	border-radius: 19px;
	box-shadow: 0 14px 30px rgba(0,0,0,.17);
}
.bg-offer-popup .bg-offer-card::before,
.bg-offer-popup .bg-offer-card::after {
	content: '';
	position: absolute;
	border: 1px solid rgba(16,44,49,.16);
	border-radius: 50%;
	pointer-events: none;
}
.bg-offer-popup .bg-offer-card::before { width: 140px; height: 140px; right: -60px; top: -54px; }
.bg-offer-popup .bg-offer-card::after { width: 190px; height: 190px; right: -104px; top: -79px; border-color: rgba(16,44,49,.1); }
.bg-offer-popup .bg-offer-card--dark { border: 1px solid rgba(225,190,104,.34); box-shadow: 0 14px 30px rgba(0,0,0,.24); }
.bg-offer-popup .bg-offer-card--dark::before,
.bg-offer-popup .bg-offer-card--dark::after { border-color: rgba(225,190,104,.28); }
.bg-offer-popup .bg-offer-card h3 { max-width: 88%; font-size: clamp(25px, 3vw, 35px); line-height: 1.08; }
.bg-offer-popup .bg-offer-card__body { max-width: 92%; }
.bg-offer-popup .bg-offer-card__link { position: relative; z-index: 1; }

body.bg-offer-popup-open { overflow: hidden; }

@media (max-width: 980px) {
	.bg-offer-banner__inner { grid-template-columns: 1fr; gap: 25px; }
	.bg-offer-banner__intro > p:last-child { max-width: 500px; }
	.bg-offer-banner__grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
}

@media (max-width: 700px) {
	.bg-offer-banner__inner { width: calc(100% - 32px); padding: 28px 0; }
	.bg-offer-banner__grid,
	.bg-offer-popup__grid { grid-template-columns: 1fr; }
	.bg-offer-card { min-height: 0; padding: 19px 18px 18px; }
	.bg-offer-card__link { margin-top: 14px; }
	.bg-offer-popup { padding: 12px; }
	.bg-offer-popup__dialog {
		width: 100%;
		max-width: 100%;
		max-height: calc(100vh - 24px);
		padding: 31px 20px 22px;
	}
	.bg-offer-popup__seal { top: 25px; right: 67px; width: 62px; height: 62px; }
	.bg-offer-popup__dialog h2 { font-size: 50px; }
	.bg-offer-popup__dialog h2,
	.bg-offer-popup__intro,
	.bg-offer-card h3 { max-width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	.bg-offer-popup__backdrop { backdrop-filter: none; }
}
