:root {
    --ink: #18212b;
    --ink-soft: #425064;
    --muted: #718096;
    --line: #e5e9ee;
    --paper: #ffffff;
    --warm: #f7f8f6;
    --soft: #eef3f7;
    --accent: #1d4ed8;
    --navy: #10233f;
    --accent-soft: #e8efff;
    --radius-sm: .4375rem;
    --radius-md: .75rem;
    --container: 73.75rem;
    --font-size-1: .7rem;
    --font-size-2: .82rem;
    --font-size-3: 1rem;
    --font-size-4: 1.35rem;
    --font-size-5: clamp(2rem, 4vw, 3.6rem);
}
* { box-sizing: border-box; word-break: keep-all; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: Arial, "Noto Sans KR", sans-serif; font-size: var(--font-size-3); line-height: 1.6; overflow-wrap: anywhere; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; }
.container { width: min(var(--container), calc(100% - 3rem)); margin: 0 auto; }
.sr-only { position: absolute; width: .0625rem; height: .0625rem; padding: 0; margin: -.0625rem; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.site-utility { background: var(--navy); color: #b9c7da; font-size: var(--font-size-1); letter-spacing: .03em; }
.utility-row { display: flex; justify-content: space-between; gap: 1.25rem; padding: .5rem 0; }
.utility-language-switcher { margin-left: auto; }
.site-utility .utility-language-switcher summary { display: inline-flex; align-items: center; color: #fff; }
.site-utility .utility-language-switcher .language-chevron { margin-left: .4375rem; color: #fff; font-size: var(--font-size-1); }
.utility-language-switcher .language-menu { top: calc(100% + .5rem); }
.site-header { position: relative; z-index: 5; border-bottom: .0625rem solid var(--line); background: rgba(255,255,255,.97); }
.header-main { display: grid; grid-template-columns: 13.125rem 1fr minmax(11.875rem, 15.625rem) auto; align-items: center; gap: 1.875rem; min-height: 5.5rem; }
.brand { display: inline-flex; flex-wrap: wrap; align-items: baseline; column-gap: .25rem; line-height: 1; }
.brand-wordmark { color: var(--accent); font-size: var(--font-size-3); font-weight: 900; letter-spacing: .09em; }
.brand-wordmark-dark { color: var(--navy); }
.brand-subtitle { display: block; width: 100%; margin-top: .4375rem; color: var(--muted); font-size: var(--font-size-1); letter-spacing: .14em; text-transform: uppercase; }
.primary-nav, .header-actions { display: flex; align-items: center; gap: 1.375rem; font-size: var(--font-size-2); white-space: nowrap; }
.primary-nav a { position: relative; padding: 2.0625rem 0 1.9375rem; }
.primary-nav a:hover, .primary-nav .nav-active { color: var(--accent); }
.primary-nav .nav-active::after { position: absolute; right: 0; bottom: 1.4375rem; left: 0; height: .125rem; background: var(--accent); content: ""; }
.header-actions { justify-content: flex-end; gap: .9375rem; color: var(--ink-soft); }
.header-actions a, .header-actions button { display: inline-flex; align-items: center; border: 0; background: transparent; color: inherit; padding: 0; font-size: var(--font-size-2); }
.header-actions a:hover, .header-actions button:hover { color: var(--accent); }
.cart-link { display: inline-flex; align-items: center; gap: .375rem; font-weight: 700; line-height: 1.2; }
.cart-count { display: inline-grid; place-items: center; min-width: 1.1875rem; height: 1.1875rem; padding: 0 .25rem; border-radius: 50%; background: var(--accent); color: #fff; font-size: var(--font-size-1); }
.search-form { display: flex; min-width: 0; border-bottom: .0625rem solid var(--ink); }
.search-form input { min-width: 0; width: 100%; border: 0; outline: 0; background: transparent; padding: .5625rem 0; color: var(--ink); font-size: var(--font-size-2); }
.search-form button { width: 1.875rem; border: 0; background: transparent; color: var(--navy); font-size: var(--font-size-4); line-height: 1; }
.language-switcher { position: relative; }
.language-switcher summary { list-style: none; cursor: pointer; color: var(--ink-soft); font-size: var(--font-size-1); font-weight: 700; letter-spacing: .06em; }
.language-switcher summary::-webkit-details-marker { display: none; }
.language-menu { position: absolute; top: 1.5rem; right: 0; z-index: 10; min-width: 8.125rem; padding: .375rem; border: .0625rem solid var(--line); border-radius: var(--radius-sm); background: #fff; box-shadow: 0 .75rem 1.875rem rgba(16,35,63,.12); }
.language-menu form { margin: 0; }
.language-menu button { display: block; width: 100%; border: 0; border-radius: .3125rem; background: #fff; padding: .5rem .625rem; text-align: left; color: var(--ink); }
.language-menu button:hover, .language-menu button.active { background: var(--soft); color: var(--accent); font-weight: 700; }
.category-nav { display: flex; gap: 1.5625rem; overflow-x: auto; padding: 0 0 .875rem; color: var(--muted); font-size: var(--font-size-2); white-space: nowrap; scrollbar-width: none; }
.category-nav::-webkit-scrollbar { display: none; }
.category-nav a:hover { color: var(--accent); }
.hero { overflow: hidden; background: var(--navy); color: #fff; }
.hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(17.5rem, 26.25rem); gap: 3.75rem; align-items: center; min-height: 36.875rem; padding: 4.5rem 0 5.25rem; }
.hero-copy { max-width: 43.125rem; }
.eyebrow { margin: 0 0 .875rem; color: var(--accent); font-size: var(--font-size-1); font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.hero .eyebrow, .bridge-panel-dark .eyebrow { color: #91b4ff; }
.hero h1 { max-width: 45rem; margin: 0; font-size: var(--font-size-5); line-height: 1.07; letter-spacing: -.07em; }
.hero-description { max-width: 30.625rem; margin: 1.5rem 0 0; color: #c4d0df; font-size: var(--font-size-3); }
.hero-actions { display: flex; align-items: center; gap: 1.5rem; margin-top: 2.125rem; }
.hero-visual { position: relative; min-height: 22.5rem; border: .0625rem solid rgba(255,255,255,.2); background: #163357; }
.hero-orbit { position: absolute; top: 50%; left: 50%; width: 16.25rem; height: 16.25rem; border: .0625rem solid rgba(145,180,255,.55); border-radius: 50%; transform: translate(-50%, -50%); }
.hero-orbit::before, .hero-orbit::after { position: absolute; top: 50%; left: 50%; width: 21.25rem; height: 6.25rem; border: .0625rem solid rgba(145,180,255,.26); border-radius: 50%; content: ""; transform: translate(-50%, -50%) rotate(45deg); }
.hero-orbit::after { transform: translate(-50%, -50%) rotate(-45deg); }
.hero-monogram { position: absolute; top: 50%; left: 50%; color: #fff; font-size: var(--font-size-5); font-weight: 800; letter-spacing: -.12em; transform: translate(-50%, -50%); }
.hero-visual-caption { position: absolute; right: 1.125rem; bottom: 1.0625rem; left: 1.125rem; display: flex; justify-content: space-between; color: #91b4ff; font-size: var(--font-size-1); letter-spacing: .15em; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: .75rem; min-height: 2.875rem; border: .0625rem solid var(--accent); border-radius: var(--radius-sm); background: var(--accent); color: #fff; padding: .6875rem 1.25rem; font-weight: 700; text-align: center; transition: background .15s, color .15s, border-color .15s; }
.button:hover { background: #1740b4; }
.button.light { border-color: #fff; background: #fff; color: var(--navy); }
.button.light:hover { background: transparent; color: #fff; }
.button.secondary { border-color: var(--navy); background: var(--navy); }
.button.full { width: 100%; }
.text-link { display: inline-flex; align-items: center; gap: .625rem; color: var(--accent); font-size: var(--font-size-2); font-weight: 700; }
.text-link:hover { text-decoration: underline; text-underline-offset: .25rem; }
.text-link-light { color: #fff; }
.page-space { padding-top: 5.5rem; padding-bottom: 8rem; }
.brand-statement { max-width: 47.5rem; padding: .3125rem 0 5.75rem; }
.brand-statement h2 { max-width: 44.375rem; margin: 0 0 1.125rem; font-size: var(--font-size-5); line-height: 1.13; letter-spacing: -.07em; }
.brand-statement > p:last-child { max-width: 35.625rem; margin: 0; color: var(--muted); font-size: var(--font-size-3); }
.brand-bridge { display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 6.75rem; }
.bridge-panel { min-height: 19.0625rem; padding: 2.625rem 2.75rem; }
.bridge-panel h2 { max-width: 22.5rem; margin: 0 0 .875rem; font-size: var(--font-size-4); line-height: 1.15; letter-spacing: -.06em; }
.bridge-panel p:not(.eyebrow) { max-width: 24.375rem; margin: 0 0 1.75rem; color: var(--muted); }
.bridge-panel-dark { background: var(--navy); color: #fff; }
.bridge-panel-dark p:not(.eyebrow) { color: #c4d0df; }
.bridge-panel-soft { background: var(--warm); }
.home-section { margin-top: 6.5rem; }
.section-heading, .catalog-intro { display: flex; align-items: end; justify-content: space-between; gap: 1.75rem; margin-bottom: 1.8125rem; }
.section-heading h1, .section-heading h2, .catalog-intro h1, .page-space > h1 { margin: 0; letter-spacing: -.06em; line-height: 1.15; }
.section-heading h2, .catalog-intro h1 { font-size: var(--font-size-5); }
.section-heading p:not(.eyebrow), .catalog-intro p:not(.eyebrow) { max-width: 32.5rem; margin: .625rem 0 0; color: var(--muted); font-size: var(--font-size-2); }
.auth-page > h1 { margin-bottom: 1.875rem; font-size: var(--font-size-5); }
.auth-page .form-card { gap: 1.25rem; padding: 2.125rem; }
.auth-page > p { margin: 1.5rem 0 0; color: var(--ink-soft); }
.auth-page > p a { color: var(--accent); font-weight: 700; }
.info-hero { padding-bottom: 4.75rem; }
.info-hero h1 { margin: 0 0 1.375rem; font-size: var(--font-size-5); line-height: 1.3; letter-spacing: -.07em; }
.info-lead { max-width: 37.5rem; margin: 0; color: var(--muted); font-size: var(--font-size-3); }
.info-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.info-card { min-height: 15.3125rem; padding: 1.75rem; border: .0625rem solid var(--line); background: var(--warm); }
.info-number { color: var(--accent); font-size: var(--font-size-1); font-weight: 800; letter-spacing: .14em; }
.info-card h2 { margin: 2.625rem 0 .75rem; font-size: var(--font-size-4); letter-spacing: -.04em; }
.info-card p { margin: 0; color: var(--muted); font-size: var(--font-size-2); }
.info-callout { display: flex; justify-content: space-between; gap: 2.5rem; align-items: end; margin-top: 7rem; padding: 3rem; background: var(--navy); color: #fff; }
.info-callout .eyebrow { color: #91b4ff; }
.info-callout h2 { max-width: 31.875rem; margin: 0 0 .75rem; font-size: var(--font-size-5); line-height: 1.12; letter-spacing: -.06em; }
.info-callout p:not(.eyebrow) { max-width: 32.5rem; margin: 0; color: #c4d0df; }
.info-callout .button-row { flex-shrink: 0; }
.product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; }
.product-card { min-width: 0; background: #fff; }
.product-card-media { overflow: hidden; background: var(--warm); }
.product-card img { display: block; width: 100%; aspect-ratio: 1 / 1.06; object-fit: cover; transition: transform .35s ease; }
.product-card:hover img { transform: scale(1.035); }
.product-card-body { padding: 1rem .125rem 0; }
.product-card-meta { display: flex; justify-content: space-between; gap: .625rem; color: var(--muted); font-size: var(--font-size-1); letter-spacing: .08em; text-transform: uppercase; }
.product-card h3 { overflow: hidden; margin: .5rem 0 .4375rem; font-size: var(--font-size-3); font-weight: 700; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.product-price strong { font-size: var(--font-size-3); }
.stock-label { color: #b45309; letter-spacing: 0; text-transform: none; }
.image-placeholder { display: grid; place-items: center; aspect-ratio: 1 / 1.06; background: var(--warm); color: var(--muted); font-size: var(--font-size-2); }
.collection-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: .0625rem; border-top: .0625rem solid var(--line); border-bottom: .0625rem solid var(--line); }
.collection-tile { display: grid; grid-template-columns: 1.75rem 1fr auto; gap: .75rem; align-items: center; min-height: 7rem; border-right: .0625rem solid var(--line); padding: 1.25rem 1.125rem; font-size: var(--font-size-3); font-weight: 700; }
.collection-tile:last-child { border-right: 0; }
.collection-tile:hover { background: var(--warm); color: var(--accent); }
.collection-index { color: var(--muted); font-size: var(--font-size-1); font-weight: 400; }
.collection-arrow { font-size: var(--font-size-3); font-weight: 400; }
.feature-story { display: grid; grid-template-columns: 1.08fr .92fr; align-items: stretch; margin-top: 7rem; background: var(--warm); }
.feature-story-media { overflow: hidden; min-height: 26.25rem; background: var(--soft); }
.feature-story-media img { display: block; width: 100%; height: 100%; min-height: 26.25rem; object-fit: cover; }
.feature-story-copy { align-self: center; padding: 3.4375rem 3.625rem; }
.feature-story-copy h2 { max-width: 25rem; margin: 0 0 1.125rem; font-size: var(--font-size-5); line-height: 1.1; letter-spacing: -.07em; }
.feature-story-copy > p:not(.eyebrow):not(.story-product-name) { max-width: 23.125rem; margin: 0 0 1.125rem; color: var(--muted); }
.story-product-name { margin: 1.75rem 0 1.5rem; font-weight: 700; }
.product-grid-compact .product-card-body { padding-top: .75rem; }
.trust-section { display: grid; grid-template-columns: 1fr 1fr; gap: 3.125rem; align-items: center; margin-top: 7rem; padding: 3.375rem 0 0; border-top: .0625rem solid var(--line); }
.trust-section h2 { max-width: 27.5rem; margin: 0 0 .75rem; font-size: var(--font-size-5); line-height: 1.15; letter-spacing: -.06em; }
.trust-section p:not(.eyebrow) { max-width: 30.625rem; margin: 0; color: var(--muted); }
.trust-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0; border-top: .0625rem solid var(--line); }
.trust-list span { padding: 1.125rem 0; border-bottom: .0625rem solid var(--line); color: var(--ink-soft); font-size: var(--font-size-2); font-weight: 700; }
.trust-list span::before { margin-right: .625rem; color: var(--accent); content: "—"; }
.catalog-page { min-height: 31.25rem; }
.catalog-intro { align-items: end; padding-bottom: 1.8125rem; border-bottom: .0625rem solid var(--line); }
.catalog-count { color: var(--muted); font-size: var(--font-size-2); }
.product-detail { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(2.5rem, 7vw, 6.25rem); align-items: start; }
.main-product-image { display: block; width: 100%; aspect-ratio: 1 / 1.08; object-fit: cover; background: var(--warm); }
.thumbnail-row { display: flex; gap: .625rem; margin-top: .75rem; overflow-x: auto; }
.thumbnail-row img { width: 4.5rem; height: 4.5rem; border-radius: var(--radius-sm); object-fit: cover; }
.product-summary { padding-top: .8125rem; }
.product-summary h1 { margin: 0; font-size: var(--font-size-5); line-height: 1.08; letter-spacing: -.07em; }
.detail-price { margin: 1.5rem 0 .5rem; font-size: var(--font-size-4); font-weight: 800; }
.sku { color: var(--muted); font-size: var(--font-size-2); }
.description { min-height: 3.75rem; margin: 1.875rem 0; color: var(--ink-soft); white-space: pre-line; }
.purchase-form, .form-card { display: grid; gap: 1rem; }
.purchase-form { margin-top: 1.75rem; padding-top: 1.5625rem; border-top: .0625rem solid var(--line); }
.purchase-form label, .form-card label, .cancel-form label { display: grid; gap: .4375rem; color: var(--ink-soft); font-size: var(--font-size-2); font-weight: 700; }
.purchase-form input, .purchase-form select, .form-card input, .form-card select, .form-card textarea, .cancel-form input { border: .0625rem solid var(--line); border-radius: var(--radius-sm); background: #fff; color: var(--ink); padding: .6875rem .75rem; outline-color: var(--accent); }
.form-card textarea { min-height: 5.875rem; resize: vertical; }
.button-row { display: flex; gap: .625rem; }
.button-row .button { flex: 1; }
.product-benefits { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 2.1875rem; padding-top: 1.6875rem; border-top: .0625rem solid var(--line); }
.product-benefit { display: flex; align-items: center; gap: .75rem; min-width: 0; padding: 0 1.0625rem; border-right: .0625rem solid var(--line); }
.product-benefit:first-child { padding-left: 0; }
.product-benefit:last-child { border-right: 0; }
.product-benefit-icon { flex: 0 0 auto; color: #a36d32; font-size: var(--font-size-4); }
.product-benefit strong, .product-benefit span { display: block; }
.product-benefit strong { color: var(--ink); font-size: var(--font-size-1); }
.product-benefit span { margin-top: .1875rem; color: var(--muted); font-size: var(--font-size-1); line-height: 1.35; }
.product-brand-story { position: relative; min-height: 19.375rem; margin-top: 4.5rem; overflow: hidden; background: #f7eee4; }
.product-brand-story-backdrop { position: absolute; inset: 0; }
.product-brand-story-backdrop::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(255,249,241,.98) 0%, rgba(255,249,241,.84) 32%, rgba(255,249,241,.15) 67%, rgba(255,249,241,.02) 100%); content: ""; }
.product-brand-story-backdrop img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.product-brand-story-inner { position: relative; min-height: 19.375rem; }
.product-brand-story-content { position: relative; z-index: 1; max-width: 36.875rem; padding: 2.6875rem 0 2.9375rem; }
.product-brand-story-content .eyebrow { margin-bottom: .8125rem; color: #a36d32; }
.product-brand-story-content h2 { max-width: 31.875rem; margin: 0 0 1.125rem; color: var(--navy); font-size: var(--font-size-5); line-height: 1.15; letter-spacing: -.08em; }
.product-brand-story-content > p:not(.eyebrow) { max-width: 29.375rem; margin: 0; color: #425a70; font-size: var(--font-size-2); line-height: 1.8; }
.product-brand-story-button { display: inline-flex; align-items: center; gap: 1.0625rem; margin-top: 1.5625rem; border: .0625rem solid #c99b6b; background: rgba(255,250,243,.72); padding: .625rem 1rem; color: var(--navy); font-size: var(--font-size-1); font-weight: 800; }
.product-brand-story-button i { color: #a36d32; }
.product-brand-story-button:hover { background: #fff; }
.product-brand-story-badge { position: absolute; top: 3rem; right: 2.1875rem; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: .1875rem; color: #98683b; font-size: var(--font-size-1); letter-spacing: .18em; line-height: 1.7; }
.product-brand-story-badge i { width: .0625rem; height: 3.8125rem; margin-top: .625rem; background: #b9916b; }
.narrow { max-width: 32.5rem; }
.form-card { padding: 1.75rem; border: .0625rem solid var(--line); background: #fff; }
.form-card h2 { margin: 0 0 .25rem; font-size: var(--font-size-4); letter-spacing: -.04em; }
.checkbox { display: flex!important; align-items: center; gap: .5rem!important; font-weight: 400!important; }
.checkbox input { width: auto; }
.flash { margin-top: 1.125rem; padding: .75rem 1rem; border-radius: var(--radius-sm); font-size: var(--font-size-2); }
.flash.success { background: #ecfdf5; color: #166534; }
.flash.error { background: #fef2f2; color: #991b1b; }
.empty-state { padding: 3.4375rem 1.375rem; border: .0625rem dashed var(--line); color: var(--muted); text-align: center; }
.pagination { display: flex; justify-content: center; align-items: center; gap: 1.375rem; margin-top: 2.625rem; font-size: var(--font-size-2); }
.pagination a { color: var(--accent); font-weight: 700; }
.cart-layout, .checkout-layout { display: grid; grid-template-columns: minmax(0, 1fr) 20.625rem; gap: 2.125rem; align-items: start; margin-top: 1.75rem; }
.cart-lines { border-top: .0625rem solid var(--line); }
.cart-line { display: grid; grid-template-columns: 6rem minmax(0, 1fr) auto auto; align-items: center; gap: 1.1875rem; padding: 1.1875rem 0; border-bottom: .0625rem solid var(--line); }
.cart-line-image img, .cart-line-image .image-placeholder { display: block; width: 6rem; height: 6rem; aspect-ratio: auto; object-fit: cover; }
.cart-line-info h2 { margin: 0 0 .25rem; font-size: var(--font-size-3); }
.cart-line-info p { margin: 0; color: var(--muted); font-size: var(--font-size-2); }
.cart-line-info strong { display: block; margin-top: .5625rem; font-size: var(--font-size-2); }
.quantity-form { display: flex; gap: .375rem; }
.quantity-form input { width: 3.625rem; border: .0625rem solid var(--line); border-radius: var(--radius-sm); padding: .5rem; }
.quantity-form button { border: .0625rem solid var(--line); border-radius: var(--radius-sm); background: #fff; padding: .4375rem .5625rem; color: var(--ink-soft); font-size: var(--font-size-2); }
.inline-form { display: inline; }
.link-button { border: 0; background: transparent; color: var(--muted); padding: 0; font-size: var(--font-size-2); }
.link-button:hover { color: var(--accent); }
.summary-card { position: sticky; top: 1.5rem; border-top: .125rem solid var(--navy); background: var(--warm); padding: 1.5rem; }
.summary-card h2 { margin: 0 0 1.125rem; font-size: var(--font-size-3); }
.summary-card p { display: flex; justify-content: space-between; gap: .9375rem; margin: .6875rem 0; font-size: var(--font-size-2); }
.summary-total { margin-top: 1.3125rem!important; padding-top: 1rem; border-top: .0625rem solid var(--line); font-size: var(--font-size-3)!important; }
.summary-card .button { margin-top: 1rem; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
.notice { background: var(--accent-soft); color: #234a9a; padding: .875rem; font-size: var(--font-size-2); }
.complete-card { max-width: 42.5rem; margin: 0 auto; border-top: .125rem solid var(--accent); padding: 3.125rem 0; text-align: center; }
.complete-card h1 { margin: 0 0 .75rem; font-size: var(--font-size-5); letter-spacing: -.06em; }
.complete-card p { color: var(--muted); }
.complete-card .notice { margin: 1.75rem 0; text-align: left; }
.deposit-details { margin: 0 0 1.5rem; padding: 0 1.125rem; border: .0625rem solid #d9e3f5; background: #fff; text-align: left; }
.deposit-details p { display: flex; justify-content: space-between; gap: .9375rem; margin: 0; padding: .8125rem 0; border-bottom: .0625rem solid var(--line); }
.deposit-details p:last-child { border-bottom: 0; }
.order-list { border-top: .0625rem solid var(--line); }
.order-row { display: grid; grid-template-columns: 1fr 1fr auto; gap: 1rem; padding: 1.125rem .75rem; border-bottom: .0625rem solid var(--line); font-size: var(--font-size-2); }
.order-row:hover { background: var(--warm); }
.status { display: inline-block; border-radius: 1.875rem; background: var(--soft); padding: .3125rem .625rem; font-size: var(--font-size-2); }
.account-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.375rem; }
.order-line, .address-row { display: flex; justify-content: space-between; gap: 1rem; padding: .8125rem 0; border-bottom: .0625rem solid var(--line); font-size: var(--font-size-2); }
.address-row p { color: var(--muted); font-size: var(--font-size-2); }
.cancel-form { display: flex; align-items: end; gap: .75rem; margin-top: 1.5rem; }
.cancel-form label { flex: 1; }
.site-footer { border-top: .0625rem solid var(--line); background: var(--warm); color: var(--ink-soft); }
.footer-grid { display: grid; grid-template-columns: 1.4fr .8fr .8fr; gap: 3.75rem; padding: 3.625rem 0 3.125rem; }
.footer-grid > div:not(.footer-brand) { display: flex; flex-direction: column; align-items: flex-start; gap: .5rem; }
.footer-brand { max-width: 18.75rem; }
.footer-brand p { margin: 1.125rem 0 0; color: var(--muted); font-size: var(--font-size-2); }
.footer-label { margin: 0 0 .5rem; color: var(--muted); font-size: var(--font-size-1); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.footer-grid a { font-size: var(--font-size-2); }
.footer-grid a:hover { color: var(--accent); }
.footer-caption { margin: .9375rem 0 0; color: var(--muted); font-size: var(--font-size-2); line-height: 1.5; }
.footer-bottom { display: flex; justify-content: space-between; gap: 1.25rem; padding: 1.125rem 0; border-top: .0625rem solid var(--line); color: var(--muted); font-size: var(--font-size-1); }
@media (max-width: 64rem) {
    .header-main { grid-template-columns: 1fr auto; grid-template-areas: "brand actions" "search search" "nav nav"; gap: 0 1.375rem; min-height: 0; padding-top: 1.125rem; }
    .brand { grid-area: brand; align-self: start; }
    .primary-nav { grid-area: nav; grid-column: auto; grid-row: auto; order: initial; gap: 1.5rem; margin-top: 1.0625rem; border-top: .0625rem solid var(--line); }
    .primary-nav a { padding: .8125rem 0 .9375rem; }
    .primary-nav .nav-active::after { bottom: .5rem; }
    .search-form { grid-area: search; grid-column: auto; grid-row: auto; margin-top: .875rem; }
    .header-actions { grid-area: actions; grid-column: auto; grid-row: auto; align-self: start; }
    .hero-grid { min-height: 31.875rem; gap: 2.1875rem; }
    .product-grid { gap: 1.125rem; }
}
@media (max-width: 40rem) {
    .container { width: min(var(--container), calc(100% - 2rem)); }
    .utility-row { font-size: var(--font-size-1); }
    .header-main { grid-template-columns: 1fr auto; gap: 0 .9375rem; padding-top: .875rem; }
    .brand-wordmark { font-size: var(--font-size-2); }
    .brand-subtitle { margin-top: .3125rem; }
    .search-form { grid-column: 1 / -1; grid-row: 2; margin-bottom: 0; }
    .header-actions { grid-column: 2; grid-row: 1; gap: .75rem; }
    .header-actions .inline-form { display: none; }
    .header-actions .header-register { display: none; }
    .primary-nav { grid-column: 1 / -1; grid-row: 3; overflow-x: auto; }
    .category-nav { padding-bottom: .6875rem; }
    .hero-grid { grid-template-columns: 1fr; min-height: 0; padding: 4.125rem 0 4.5rem; }
    .hero h1 { font-size: var(--font-size-5); }
    .hero-visual { min-height: 14.375rem; }
    .hero-orbit { width: 10.9375rem; height: 10.9375rem; }
    .hero-orbit::before, .hero-orbit::after { width: 14.6875rem; height: 4.375rem; }
    .hero-monogram { font-size: var(--font-size-5); }
    .page-space { padding-top: 4rem; padding-bottom: 5.5rem; }
    .brand-statement { padding-bottom: 4.0625rem; }
    .brand-statement h2 { font-size: var(--font-size-4); }
    .brand-bridge, .feature-story, .trust-section { grid-template-columns: 1fr; }
    .brand-bridge { margin-bottom: 4.75rem; }
    .bridge-panel { min-height: 16.875rem; padding: 2.1875rem 1.75rem; }
    .home-section { margin-top: 4.6875rem; }
    .section-heading, .catalog-intro { align-items: start; flex-direction: column; gap: .9375rem; }
    .collection-grid { grid-template-columns: 1fr 1fr; }
    .collection-tile { min-height: 5.75rem; padding: .9375rem .75rem; font-size: var(--font-size-2); }
    .collection-tile:nth-child(2n) { border-right: 0; }
    .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem .8125rem; }
    .product-card h3 { font-size: var(--font-size-2); }
    .feature-story { margin-top: 4.875rem; }
    .feature-story-media, .feature-story-media img { min-height: 18.75rem; }
    .feature-story-copy { padding: 2.25rem 1.75rem 2.625rem; }
    .feature-story-copy h2 { font-size: var(--font-size-4); }
    .trust-section { margin-top: 4.875rem; gap: 1.75rem; }
    .trust-list { grid-template-columns: 1fr; }
    .product-detail, .cart-layout, .checkout-layout, .account-detail-grid { grid-template-columns: 1fr; gap: 1.875rem; }
    .product-summary { padding-top: 0; }
    .auth-page .form-card { padding: 1.5rem; }
    .info-hero { padding-bottom: 3.25rem; }
    .info-grid { grid-template-columns: 1fr; }
    .info-callout { align-items: stretch; flex-direction: column; margin-top: 4.875rem; padding: 2.125rem 1.75rem; }
    .info-callout .button-row { flex-direction: column; }
    .summary-card { position: static; order: 0; }
    .cart-line { grid-template-columns: 4rem minmax(0, 1fr) auto; gap: .75rem; }
    .cart-line-image img, .cart-line-image .image-placeholder { width: 4rem; height: 4rem; }
    .quantity-form { grid-column: 2; }
    .cart-line > form:last-child { grid-column: 3; grid-row: 2; }
    .form-grid { grid-template-columns: 1fr; }
    .cancel-form { align-items: stretch; flex-direction: column; }
    .cancel-form .button { align-self: flex-start; }
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 2.1875rem 1.25rem; padding: 2.8125rem 0 2.1875rem; }
    .footer-brand { grid-column: 1 / -1; }
    .footer-bottom { flex-direction: column; gap: .3125rem; }
}
@media (max-width: 26.25rem) {
    .container { width: calc(100% - 1.5rem); }
    .primary-nav, .category-nav { gap: 1.125rem; }
    .hero-actions { align-items: flex-start; flex-direction: column; gap: 1.25rem; }
    .product-grid { gap: 1.375rem .625rem; }
    .product-card-body { padding-top: .6875rem; }
    .collection-grid { grid-template-columns: 1fr; }
    .collection-tile, .collection-tile:nth-child(2n) { border-right: 0; }
    .button-row { flex-direction: column; }
}

/* Home and shared storefront refinement */
:root {
    --ink: #152333;
    --ink-soft: #4b5b6f;
    --muted: #788696;
    --line: #dce3e9;
    --warm: #f4f6f5;
    --soft: #eaf0f4;
    --accent: #285fc4;
    --navy: #0d2747;
    --accent-soft: #e8effb;
    --container: 76.25rem;
}
body { background: #fff; color: var(--ink); }
.container { width: min(var(--container), calc(100% - 4rem)); }
.site-utility { background: #091d36; color: #aebdce; }
.utility-row { padding: .5625rem 0; }
.site-header { border-bottom-color: var(--line); background: rgba(255,255,255,.98); }
.header-main { grid-template-columns: 14.375rem minmax(14.375rem, 1fr) minmax(13.75rem, 17.5rem) auto; gap: 2.125rem; min-height: 5.875rem; }
.brand { position: relative; padding-left: 1.125rem; }
.brand::before { position: absolute; top: .0625rem; bottom: .0625rem; left: 0; width: .1875rem; background: var(--accent); content: ""; }
.brand-wordmark { letter-spacing: .1em; }
.brand-subtitle { letter-spacing: .18em; }
.primary-nav { gap: 1.75rem; }
.primary-nav a { padding: 2.1875rem 0 2.0625rem; }
.primary-nav .nav-active::after { bottom: 1.5rem; height: .1875rem; }
.header-actions { gap: 1.0625rem; }
.header-actions a, .header-actions button { font-size: var(--font-size-2); }
.search-form { border-bottom-color: #8b98a7; }
.search-form:focus-within { border-bottom-color: var(--accent); }
.search-form input { padding: .625rem .125rem; }
.search-form button { color: var(--accent); }
.category-nav { gap: 1.75rem; padding-bottom: 1rem; }
.category-nav a { position: relative; }
.category-nav a::after { position: absolute; right: 0; bottom: -.3125rem; left: 0; height: .0625rem; background: var(--accent); content: ""; opacity: 0; transform: scaleX(.3); transition: opacity .15s, transform .15s; }
.category-nav a:hover::after { opacity: 1; transform: scaleX(1); }
.offline-hero-visual { position: relative; min-height: 26.875rem; margin: -1.5625rem 0 4.875rem; overflow: hidden; background: var(--soft); }
.offline-hero-visual::after { position: absolute; inset: 1.25rem; border: .0625rem solid rgba(255,255,255,.7); content: ""; pointer-events: none; }
.offline-hero-visual img { display: block; width: 100%; height: 26.875rem; object-fit: cover; }
.offline-hero-visual span { position: absolute; right: 1.9375rem; bottom: 1.75rem; z-index: 1; color: #fff; font-size: var(--font-size-1); font-weight: 800; letter-spacing: .15em; text-shadow: 0 .0625rem .75rem rgba(13,39,71,.65); }

.hero { position: relative; background: radial-gradient(circle at 87% 15%, rgba(69,111,164,.25), transparent 31%), linear-gradient(112deg, #081b34 0%, #0d2747 48%, #173b63 100%); }
.hero::after { position: absolute; right: 0; bottom: 0; left: 0; height: .0625rem; background: rgba(255,255,255,.25); content: ""; }
.hero-grid { grid-template-columns: minmax(0, 1fr) minmax(22.5rem, 31.25rem); gap: clamp(3.125rem, 8vw, 7.5rem); min-height: 40rem; padding: 5.625rem 0 6.25rem; }
.hero-copy { position: relative; z-index: 1; }
.hero .eyebrow { margin-bottom: 1.3125rem; color: #9ebeff; }
.hero h1 { max-width: 43.75rem; font-size: var(--font-size-5); line-height: 1.02; letter-spacing: -.085em; }
.hero-description { max-width: 28.125rem; margin-top: 1.8125rem; color: #c3d0df; font-size: var(--font-size-3); line-height: 1.75; }
.hero-actions { gap: 1.8125rem; margin-top: 2.625rem; }
.button { min-height: 3.125rem; padding: .75rem 1.375rem; border-radius: .1875rem; }
.button.light { border-color: #fff; }
.button.light i { color: var(--accent); transition: transform .15s; }
.button.light:hover i, .button.secondary:hover i { transform: translateX(.1875rem); }
.text-link { gap: .6875rem; }
.text-link i { font-size: var(--font-size-1); }
.hero-visual { isolation: isolate; min-height: 26.875rem; border: .0625rem solid rgba(190,213,244,.38); background: #17385e; }
.hero-visual-image { position: absolute; inset: 0; z-index: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
.hero-visual::before { position: absolute; inset: 1rem; z-index: 2; border: .0625rem solid rgba(190,213,244,.25); content: ""; }
.hero-visual::after { position: absolute; top: 1rem; right: 1rem; z-index: 3; width: 3.25rem; height: 3.25rem; border-top: .0625rem solid #a1c3fa; border-right: .0625rem solid #a1c3fa; content: ""; }
.hero-visual-grid { position: absolute; inset: 0; z-index: 1; opacity: .28; background-image: linear-gradient(rgba(167,197,237,.22) .0625rem, transparent .0625rem), linear-gradient(90deg, rgba(167,197,237,.22) .0625rem, transparent .0625rem); background-size: 2.875rem 2.875rem; mask-image: linear-gradient(135deg, transparent 18%, #000 70%); }
.hero-visual-index { position: absolute; top: 2.125rem; left: 2.125rem; z-index: 4; color: #a3c1ed; font-size: var(--font-size-1); font-weight: 700; letter-spacing: .17em; }
.hero-orbit { width: 18.75rem; height: 18.75rem; border-color: rgba(163,193,237,.55); }
.hero-orbit::before, .hero-orbit::after { width: 25.625rem; height: 7.5rem; border-color: rgba(163,193,237,.25); }
.hero-package { position: absolute; top: 50%; left: 50%; display: flex; flex-direction: column; justify-content: space-between; width: 9.625rem; height: 13rem; padding: 1.375rem 1.0625rem; border: .0625rem solid rgba(255,255,255,.78); background: #f4f7f7; color: var(--navy); transform: translate(-50%, -50%) rotate(-7deg); box-shadow: .9375rem 1.0625rem 0 rgba(6,24,46,.25); }
.hero-package span { font-size: var(--font-size-4); font-weight: 900; letter-spacing: -.08em; }
.hero-package small { align-self: flex-end; font-size: var(--font-size-1); font-weight: 800; letter-spacing: .15em; line-height: 1.4; text-align: right; }
.hero-product-image { position: absolute; top: 50%; left: 50%; display: grid; place-items: center; width: min(58%, 18.125rem); height: 69%; padding: 1.25rem; background: #eff3f3; transform: translate(-50%, -50%) rotate(-4deg); box-shadow: .9375rem 1.0625rem 0 rgba(6,24,46,.25); }
.hero-product-image img { display: block; width: 100%; height: 100%; object-fit: contain; }
.hero-monogram { z-index: 4; top: auto; right: 1.875rem; bottom: 2.4375rem; left: auto; color: rgba(255,255,255,.78); font-size: var(--font-size-3); letter-spacing: .08em; }
.hero-visual-caption { right: 2.125rem; bottom: 1.875rem; left: 2.125rem; z-index: 4; color: #a3c1ed; font-size: var(--font-size-1); }

.page-space { padding-top: 7.25rem; padding-bottom: 9.375rem; }
.product-page { padding-bottom: 0; }
.brand-story { position: relative; }
.brand-statement { display: grid; grid-template-columns: 7.25rem minmax(0, 1fr) minmax(14.375rem, .72fr); gap: 2.1875rem; max-width: 100%; padding: 0 0 5.9375rem; }
.brand-statement-mark { position: relative; display: flex; flex-direction: column; align-items: center; padding-top: .3125rem; color: var(--accent); font-size: var(--font-size-1); font-weight: 900; letter-spacing: .1em; }
.brand-statement-mark::before { width: .0625rem; height: 5.3125rem; margin-bottom: 1.1875rem; background: var(--accent); content: ""; }
.brand-statement-mark i { display: block; width: .4375rem; height: .4375rem; margin-top: 1.0625rem; border-radius: 50%; background: var(--accent); }
.brand-statement h2 { max-width: 51.25rem; margin-bottom: 1.4375rem; font-size: var(--font-size-5); line-height: 1.08; letter-spacing: -.08em; }
.brand-statement > div:nth-child(2) > p:last-child { max-width: 37.5rem; margin: 0; color: var(--muted); line-height: 1.8; }
.brand-statement-visual { position: relative; min-height: 15.625rem; overflow: hidden; background: #e5ebee; }
.brand-statement-visual::after { position: absolute; right: .9375rem; bottom: .9375rem; width: 2.625rem; height: 2.625rem; border-right: .0625rem solid var(--accent); border-bottom: .0625rem solid var(--accent); content: ""; opacity: .65; }
.brand-statement-visual img { display: block; width: 100%; height: 100%; min-height: 15.625rem; object-fit: contain; padding: 1.5625rem; }
.brand-statement-visual span { color: var(--accent); font-size: var(--font-size-1); font-weight: 800; letter-spacing: .15em; }
.brand-statement-visual strong { font-size: var(--font-size-5); letter-spacing: -.09em; }
.brand-statement-visual small { font-size: var(--font-size-1); font-weight: 800; letter-spacing: .14em; }
.brand-statement-visual-image { position: absolute; inset: 0; z-index: 0; width: 100%!important; height: 100%!important; min-height: 0!important; padding: 0!important; object-fit: cover!important; }
.brand-statement-visual-overlay { position: relative; z-index: 1; display: flex; height: 100%; flex-direction: column; justify-content: space-between; min-height: 15.625rem; padding: 1.5rem; color: var(--navy); }
.brand-bridge { grid-template-columns: 1.12fr .88fr; margin-bottom: 8.25rem; }
.bridge-panel { position: relative; display: flex; min-height: 23.125rem; flex-direction: column; justify-content: space-between; overflow: hidden; padding: 1.8125rem 2.625rem 2.1875rem; }
.bridge-panel::after { position: absolute; right: -1.9375rem; bottom: -2.9375rem; width: 11.25rem; height: 11.25rem; border: .0625rem solid currentColor; border-radius: 50%; content: ""; opacity: .18; }
.bridge-panel-dark::before { position: absolute; right: 1.875rem; bottom: 1.75rem; width: 5.9375rem; height: 5.9375rem; border: .0625rem solid #93b8f4; border-radius: 50%; content: ""; opacity: .4; }
.bridge-panel-soft { margin-top: 2rem; background: #eef2f1; }
.bridge-panel-head { position: relative; z-index: 1; display: flex; justify-content: space-between; color: #8d9aaa; font-size: var(--font-size-1); font-weight: 800; letter-spacing: .16em; }
.bridge-panel-dark .bridge-panel-head { color: #9ebeff; }
.bridge-panel-content { position: relative; z-index: 1; }
.bridge-panel h2 { max-width: 24.375rem; margin-bottom: 1.0625rem; font-size: var(--font-size-4); line-height: 1.1; }
.bridge-panel p:not(.eyebrow) { max-width: 26.875rem; margin-bottom: 1.875rem; line-height: 1.75; }
.bridge-panel-word { position: relative; z-index: 1; align-self: flex-end; color: rgba(13,39,71,.25); font-size: var(--font-size-1); font-weight: 800; letter-spacing: .16em; }
.bridge-panel-dark .bridge-panel-word { color: #7ea3dd; }

.home-section { margin-top: 7.8125rem; }
.section-heading { margin-bottom: 2.1875rem; }
.section-heading h2 { font-size: var(--font-size-5); line-height: 1.05; }
.section-heading p:not(.eyebrow) { margin-top: .875rem; line-height: 1.7; }
.section-heading > .text-link { margin-bottom: .3125rem; }
.collections-section { padding-top: 4.375rem; border-top: .0625rem solid var(--line); }
.collection-grid { gap: .0625rem; border: .0625rem solid var(--line); background: var(--line); }
.collection-tile { min-height: 8.875rem; border-right: 0; background: #fff; padding: 1.5rem 1.375rem; transition: background .15s, color .15s; }
.collection-tile:hover { background: #edf3fc; }
.collection-index { align-self: start; padding-top: .1875rem; color: var(--accent); }
.collection-arrow { align-self: start; color: var(--accent); font-size: var(--font-size-1); }

.featured-product { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(18.75rem, .8fr); min-height: 30.625rem; background: var(--warm); }
.featured-product-media { position: relative; display: grid; min-height: 30.625rem; place-items: center; overflow: hidden; background: #e9eff1; }
.featured-product-media::before { position: absolute; inset: 2.125rem; border: .0625rem solid rgba(40,95,196,.2); content: ""; }
.featured-product-media img { position: relative; z-index: 1; display: block; width: 76%; height: 82%; object-fit: contain; transition: transform .35s ease; }
.featured-product-media:hover img { transform: scale(1.035); }
.featured-product-media .image-placeholder { position: relative; z-index: 1; width: 76%; height: 82%; aspect-ratio: auto; background: #e1e9ed; }
.featured-product-stamp { position: absolute; right: 2.125rem; bottom: 1.9375rem; z-index: 2; color: var(--accent); font-size: var(--font-size-1); font-weight: 800; letter-spacing: .15em; }
.featured-product-copy { display: flex; flex-direction: column; justify-content: center; padding: 3.5rem clamp(2rem, 5vw, 4.5rem); }
.featured-product-copy h3 { max-width: 28.125rem; margin: 1.0625rem 0 1.0625rem; font-size: var(--font-size-5); line-height: 1.06; letter-spacing: -.07em; }
.featured-product-copy > p { max-width: 23.75rem; margin: 0; color: var(--muted); line-height: 1.8; }
.featured-product-footer { display: flex; align-items: center; justify-content: space-between; gap: 1.375rem; margin-top: 2.625rem; padding-top: 1.3125rem; border-top: .0625rem solid var(--line); }
.featured-product-footer .product-price strong { font-size: var(--font-size-4); }
.featured-product-footer .button { flex-shrink: 0; }
.product-rail { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5625rem; margin-top: 2.125rem; }
.product-rail .product-card-media { background: var(--warm); }
.product-rail .product-card h3 { font-size: var(--font-size-3); }
.product-rail .product-card-body { padding-top: .9375rem; }

.feature-story { position: relative; grid-template-columns: 1.08fr .92fr; margin-top: 8.25rem; background: #edf2f4; }
.feature-story-media { position: relative; min-height: 29.6875rem; background: #e2eaee; }
.feature-story-media img { min-height: 29.6875rem; object-fit: cover; padding: 0; }
.feature-story-media .image-placeholder { height: 100%; aspect-ratio: auto; background: #e2eaee; }
.feature-story-caption { position: absolute; right: 1.5rem; bottom: 1.375rem; color: var(--accent); font-size: var(--font-size-1); font-weight: 800; letter-spacing: .15em; }
.feature-story-copy { padding: 4.0625rem clamp(2.1875rem, 6vw, 5.375rem); }
.feature-story-copy h2 { max-width: 26.875rem; font-size: var(--font-size-5); }
.feature-story-copy > p:not(.eyebrow):not(.story-product-name) { line-height: 1.8; }
.story-product-name { margin-top: 2.3125rem; padding-top: 1.0625rem; border-top: .0625rem solid var(--line); }
.more-products-section { padding-top: 5.125rem; border-top: .0625rem solid var(--line); }

.presence-section { grid-template-columns: .85fr 1.15fr; gap: 4.375rem; margin-top: 8.25rem; padding: 4.0625rem clamp(1.75rem, 5vw, 4.375rem); border: 0; background: var(--navy); color: #fff; }
.presence-section .eyebrow { color: #9ebeff; }
.presence-section h2 { max-width: 29.375rem; font-size: var(--font-size-5); }
.presence-section p:not(.eyebrow) { color: #c2cfdf; line-height: 1.8; }
.presence-links { display: flex; flex-wrap: wrap; gap: 1.25rem 1.75rem; margin-top: 2.125rem; }
.presence-links a { color: #fff; font-size: var(--font-size-2); font-weight: 700; }
.presence-links a:hover { color: #a9c6fb; }
.presence-links i { margin-left: .375rem; color: #9ebeff; font-size: var(--font-size-1); }
.presence-visual { align-self: center; padding: .5rem 0 0; }
.presence-node { display: flex; min-height: 4.875rem; align-items: center; justify-content: center; gap: .75rem; border: .0625rem solid rgba(185,211,250,.5); color: #d8e6fb; font-size: var(--font-size-1); font-weight: 800; letter-spacing: .14em; text-align: center; }
.presence-node i { color: #9ebeff; font-size: var(--font-size-3); }
.presence-node-main { min-height: 4.5rem; border-color: #9ebeff; background: rgba(255,255,255,.04); color: #fff; }
.presence-node-main i { color: #fff; }
.presence-line { width: .0625rem; height: 1.6875rem; margin: 0 auto; background: #9ebeff; }
.presence-node-row { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
.presence-node-row .presence-node:first-child { border-color: rgba(185,211,250,.3); }
.presence-node-row .presence-node:last-child { border-color: #4779d3; background: #17385e; }
.presence-section .trust-list { grid-template-columns: repeat(3, 1fr); gap: .625rem; margin-top: 2.25rem; border-top: 0; }
.presence-section .trust-list span { display: flex; min-height: 7rem; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: .9375rem; padding: 1.0625rem .9375rem; border: .0625rem solid rgba(185,211,250,.28); background: rgba(255,255,255,.045); color: #c2cfdf; font-size: var(--font-size-1); line-height: 1.45; }
.presence-section .trust-list span::before { display: none; }
.presence-section .trust-list i { color: #9ebeff; font-size: var(--font-size-3); }
.presence-section .trust-list strong { font-size: var(--font-size-1); font-weight: 700; }
.site-footer { border-top: 0; background: #f2f4f3; }
.footer-grid { gap: 5rem; padding: 4.25rem 0 3.625rem; }
.footer-brand { max-width: 22.5rem; }
.footer-brand p { max-width: 18.125rem; line-height: 1.7; }
.footer-grid > div:not(.footer-brand) { gap: .625rem; }
.footer-label { color: var(--accent); }
.footer-bottom { padding: 1.25rem 0; }
.footer-shell { padding-top: 2.625rem; }
.footer-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 2.5rem; padding-bottom: 2.125rem; border-bottom: .0625rem solid var(--line); }
.footer-brand { max-width: 22.5rem; }
.footer-brand p { margin: 1.0625rem 0 0; }
.footer-legal-nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .625rem 1.75rem; padding-bottom: .125rem; }
.footer-legal-nav a, .footer-legal-nav button { border: 0; background: transparent; color: var(--ink); padding: 0; font-size: var(--font-size-2); }
.footer-legal-nav a:hover, .footer-legal-nav button:hover { color: var(--accent); }
.footer-info-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(18.75rem, .8fr); gap: clamp(1.875rem, 5vw, 4.875rem); padding: 2.25rem 0 2.9375rem; }
.footer-info-block { min-width: 0; }
.footer-info-block .footer-label { margin-bottom: 1.0625rem; color: var(--ink); font-size: var(--font-size-1); letter-spacing: -.01em; text-transform: none; }
.footer-definition-list { display: grid; margin: 0; }
.footer-definition-list div { min-width: 0; }
.footer-definition-list dt, .footer-definition-list dd { display: inline; margin: 0; font-size: var(--font-size-1); line-height: 1.55; }
.footer-definition-list dt { margin-right: .75rem; color: var(--ink); font-weight: 800; }
.footer-definition-list dd { color: var(--ink-soft); overflow-wrap: anywhere; }
.modal-open { overflow: hidden; }
.legal-modal { position: fixed; inset: 0; z-index: 30; display: grid; place-items: center; padding: 1.5rem; background: rgba(16,35,63,.62); }
.legal-modal[hidden] { display: none; }
.legal-modal-card { display: flex; width: min(47.5rem, 100%); max-height: min(88vh, 48.75rem); flex-direction: column; border: .0625rem solid var(--line); border-radius: var(--radius-md); background: var(--paper); box-shadow: 0 1.5rem 4.375rem rgba(16,35,63,.25); }
.legal-modal-header { display: flex; align-items: center; justify-content: space-between; gap: 1.25rem; flex: 0 0 auto; padding: 1.375rem 1.625rem; border-bottom: .0625rem solid var(--line); }
.legal-modal-header h2 { margin: 0; font-size: var(--font-size-4); letter-spacing: -.04em; }
.legal-modal-close { display: inline-grid; width: 2.25rem; height: 2.25rem; flex: 0 0 auto; place-items: center; border: .0625rem solid var(--line); border-radius: 50%; background: #fff; color: var(--ink-soft); }
.legal-modal-close:hover { border-color: var(--accent); color: var(--accent); }
.legal-modal-body { max-height: min(68vh, 38.75rem); overflow: auto; padding: 1.625rem; color: var(--ink-soft); font-size: var(--font-size-2); line-height: 1.75; }
.legal-modal-body h3 { margin: 0 0 1.75rem; color: var(--ink); font-size: var(--font-size-3); }
.legal-modal-body h4 { margin: 1.5625rem 0 .5rem; color: var(--ink); font-size: var(--font-size-2); }
.legal-modal-body p { margin: 0 0 .75rem; }
.legal-modal-body ol, .legal-modal-body ul { margin: 0 0 .75rem; padding-left: 1.5rem; }
.legal-modal-body li + li { margin-top: .4375rem; }
.legal-modal-body ol ol, .legal-modal-body ol ul { margin-top: .4375rem; }
.legal-modal-body table { width: 100%; margin: 1rem 0 1.25rem; border-collapse: collapse; font-size: var(--font-size-2); }
.legal-modal-body th, .legal-modal-body td { padding: .625rem .75rem; border: .0625rem solid var(--line); text-align: left; vertical-align: top; }
.legal-modal-body th { background: var(--warm); color: var(--ink); font-weight: 800; }

@media (max-width: 64rem) {
    .container { width: min(var(--container), calc(100% - 3rem)); }
    .header-main { grid-template-columns: 1fr auto; min-height: 0; padding-top: 1.25rem; }
    .primary-nav { gap: 1.5625rem; margin-top: 1.125rem; }
    .primary-nav a { padding: .8125rem 0 1rem; }
    .primary-nav .nav-active::after { bottom: .5rem; }
    .hero-grid { grid-template-columns: minmax(0, 1fr) minmax(18.75rem, 25rem); min-height: 35rem; gap: 2.8125rem; padding: 4.625rem 0 5.125rem; }
    .hero h1 { font-size: var(--font-size-5); }
    .hero-visual { min-height: 23.125rem; }
    .brand-statement { grid-template-columns: 5rem minmax(0, 1fr); }
    .brand-statement-visual { grid-column: 2; }
    .brand-bridge { grid-template-columns: 1fr 1fr; }
    .presence-section { gap: 2.5rem; }
    .footer-info-grid { gap: 1.75rem; }
}

/* Tablet layout: keep content readable before the compact mobile layout. */
@media (max-width: 52rem) {
    .container { width: min(var(--container), calc(100% - 3rem)); }
    .header-main { grid-template-columns: minmax(0, 1fr) auto; gap: 0 1rem; padding-bottom: 1.25rem; }
    .header-actions { gap: .75rem; }
    .primary-nav { gap: 1.25rem; overflow-x: auto; }

    .hero-grid { grid-template-columns: 1fr; min-height: 0; gap: 2.5rem; padding: 4.5rem 0 5rem; }
    .hero-copy { max-width: 46rem; }
    .hero-visual { min-height: 24rem; }
    .offline-hero-visual { min-height: 24rem; margin: 0 0 5rem; }
    .offline-hero-visual img { height: 24rem; }

    .page-space { padding-top: 5rem; padding-bottom: 2.5rem; }
    .brand-statement { grid-template-columns: 1fr; gap: 1.75rem; padding-bottom: 5rem; }
    .brand-statement-mark { display: block; padding: 0; }
    .brand-statement-mark::before { display: inline-block; width: 2.875rem; height: .0625rem; margin: 0 .9375rem .1875rem 0; }
    .brand-statement-mark i { display: inline-block; width: .375rem; height: .375rem; margin: 0 0 .0625rem .4375rem; }
    .brand-statement-visual { grid-column: auto; }
    .brand-bridge, .feature-story, .trust-section { grid-template-columns: 1fr; }
    .brand-bridge { margin-bottom: 6rem; }
    .bridge-panel { min-height: 20rem; padding: 2.5rem 2.25rem; }
    .bridge-panel-soft { margin-top: .0625rem; }
    .home-section { margin-top: 6rem; }
    .section-heading, .catalog-intro { align-items: flex-start; flex-direction: column; gap: 1rem; }

    .info-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .info-callout { align-items: stretch; flex-direction: column; margin-top: 6rem; padding: 3rem 2.25rem; }
    .info-callout .button-row { flex-direction: column; }
    .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem 1rem; }
    .collection-grid { grid-template-columns: 1fr 1fr; }
    .featured-product { grid-template-columns: 1fr; }
    .featured-product-media { min-height: 28rem; }
    .featured-product-copy { padding: 3.5rem 2.25rem; }
    .feature-story { margin-top: 6rem; }
    .feature-story-media, .feature-story-media img { min-height: 24rem; }
    .feature-story-copy { padding: 3.5rem 2.25rem; }

    .product-detail, .cart-layout, .checkout-layout, .account-detail-grid { grid-template-columns: 1fr; gap: 2.5rem; }
    .product-summary { padding-top: 0; }
    .product-benefits { margin-top: 2.5rem; }
    .product-brand-story { margin-top: 4rem; }
    .product-brand-story-inner { width: min(var(--container), calc(100% - 3rem)); }
    .product-brand-story-badge { display: none; }

    .cart-line { grid-template-columns: 6rem minmax(0, 1fr) auto; gap: 1rem; }
    .cart-line-image img, .cart-line-image .image-placeholder { width: 6rem; height: 6rem; }
    .quantity-form { grid-column: 2; }
    .cart-line > form:last-child { grid-column: 3; grid-row: 2; }
    .summary-card { position: static; }
    .form-grid { grid-template-columns: 1fr; }
    .cancel-form { align-items: stretch; flex-direction: column; }
    .cancel-form .button { align-self: flex-start; }

    .presence-section { grid-template-columns: 1fr; gap: 3rem; margin-top: 6rem; padding: 3.5rem 2.25rem; }
    .presence-section .trust-list { grid-template-columns: repeat(3, 1fr); }
    .footer-heading { align-items: flex-start; flex-direction: column; gap: 1.75rem; }
    .footer-legal-nav { justify-content: flex-start; }
    .footer-info-grid { grid-template-columns: 1fr; gap: 2rem; }
    .footer-grid { gap: 3rem 1.5rem; padding: 4rem 0 3rem; }
}

@media (max-width: 40rem) {
    .container { width: min(var(--container), calc(100% - 2rem)); }
    .header-main { padding-top: .9375rem; padding-bottom: 0; }
    .brand { padding-left: .875rem; }
    .primary-nav { margin-top: .9375rem; }
    .hero-grid { grid-template-columns: 1fr; gap: 3.0625rem; padding: 4.125rem 0 4.375rem; }
    .hero h1 { max-width: 37.5rem; font-size: var(--font-size-5); }
    .hero-description { font-size: var(--font-size-2); }
    .hero-visual { min-height: 17.5rem; }
    .hero-visual::before { inset: .8125rem; }
    .hero-visual::after { top: .8125rem; right: .8125rem; }
    .hero-visual-index { top: 1.6875rem; left: 1.6875rem; }
    .hero-orbit { width: 13.125rem; height: 13.125rem; }
    .hero-orbit::before, .hero-orbit::after { width: 18.125rem; height: 5.3125rem; }
    .hero-package { width: 7.5rem; height: 10.125rem; padding: 1.0625rem .8125rem; }
    .hero-package span { font-size: var(--font-size-4); }
    .hero-product-image { width: 48%; height: 70%; }
    .hero-visual-caption { right: 1.6875rem; bottom: 1.5625rem; left: 1.6875rem; font-size: var(--font-size-1); }
    .page-space { padding-top: 4.875rem; padding-bottom: 6.125rem; }
    .product-page { padding-bottom: 0; }
    .brand-statement { grid-template-columns: 1fr; gap: 1.375rem; padding-bottom: 4rem; }
    .brand-statement-visual { grid-column: auto; min-height: 13.75rem; }
    .brand-statement-visual img { min-height: 13.75rem; }
    .brand-statement-visual-overlay { min-height: 13.75rem; }
    .offline-hero-visual { min-height: 17.5rem; margin: -.25rem 0 3.5625rem; }
    .offline-hero-visual img { height: 17.5rem; }
    .offline-hero-visual::after { inset: .8125rem; }
    .offline-hero-visual span { right: 1.25rem; bottom: 1.25rem; font-size: var(--font-size-1); }
    .brand-statement-mark { display: block; padding: 0; }
    .brand-statement-mark::before { display: inline-block; width: 2.875rem; height: .0625rem; margin: 0 .9375rem .1875rem 0; }
    .brand-statement-mark i { display: inline-block; width: .375rem; height: .375rem; margin: 0 0 .0625rem .4375rem; }
    .brand-statement h2 { font-size: var(--font-size-5); }
    .brand-bridge { grid-template-columns: 1fr; margin-bottom: 4.8125rem; }
    .bridge-panel { min-height: 20rem; padding: 1.5625rem 1.6875rem 1.8125rem; }
    .bridge-panel-soft { margin-top: .0625rem; }
    .home-section { margin-top: 5rem; }
    .collections-section, .more-products-section { padding-top: 3.25rem; }
    .section-heading { align-items: flex-start; gap: 1.125rem; margin-bottom: 1.6875rem; }
    .section-heading h2 { font-size: var(--font-size-5); }
    .collection-grid { grid-template-columns: 1fr 1fr; }
    .collection-tile { min-height: 6.875rem; padding: 1.0625rem .8125rem; }
    .featured-product { grid-template-columns: 1fr; }
    .featured-product-media { min-height: 20.9375rem; }
    .featured-product-copy { padding: 2.1875rem 1.6875rem 2.375rem; }
    .featured-product-copy h3 { font-size: var(--font-size-5); }
    .featured-product-footer { align-items: flex-start; flex-direction: column; margin-top: 2rem; }
    .featured-product-footer .button { width: 100%; }
    .product-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5625rem .8125rem; margin-top: 1.625rem; }
    .product-rail > :nth-child(3) { display: none; }
    .catalog-page .product-grid > :nth-child(3) { display: none; }
    .feature-story { grid-template-columns: 1fr; margin-top: 5rem; }
    .feature-story-media, .feature-story-media img { min-height: 18.75rem; }
    .feature-story-media img { padding: 0; }
    .feature-story-copy { padding: 2.375rem 1.6875rem 2.6875rem; }
    .feature-story-copy h2 { font-size: var(--font-size-5); }
    .product-brand-story { grid-template-columns: 1fr; margin-top: 3.5rem; }
    .product-benefits { margin-top: 1.8125rem; padding-top: 1.375rem; }
    .product-benefit { flex-direction: column; align-items: flex-start; gap: .4375rem; padding: 0 .5625rem; }
    .product-benefit:first-child { padding-left: 0; }
    .product-brand-story { min-height: 22.5rem; }
    .product-brand-story-inner { width: calc(100% - 2.75rem); }
    .product-brand-story-content { max-width: 26.875rem; padding: 2.3125rem 0 2.625rem; }
    .product-brand-story-content h2 { font-size: var(--font-size-5); }
    .product-brand-story-content > p:not(.eyebrow) { font-size: var(--font-size-1); }
    .product-brand-story-badge { top: 1.75rem; right: 1.1875rem; width: 3.25rem; font-size: var(--font-size-1); }
    .product-brand-story-badge i { height: 2.8125rem; margin-top: .375rem; }
    .presence-section { grid-template-columns: 1fr; gap: 2.625rem; margin-top: 5rem; padding: 2.5625rem 1.6875rem 2.125rem; }
    .presence-section h2 { font-size: var(--font-size-5); }
    .presence-section .trust-list { grid-template-columns: 1fr; margin-top: 1.75rem; }
    .presence-section .trust-list span { min-height: 4.75rem; padding: .8125rem .9375rem; }
    .footer-shell { padding-top: 2.125rem; }
    .footer-heading { align-items: flex-start; flex-direction: column; gap: 1.6875rem; padding-bottom: 1.75rem; }
    .footer-legal-nav { justify-content: flex-start; gap: .5625rem 1.125rem; }
    .footer-info-grid { grid-template-columns: 1fr; gap: 1.8125rem; padding: 1.9375rem 0 2.1875rem; }
    .footer-info-block .footer-label { margin-bottom: .8125rem; }
    .footer-definition-list { gap: .5rem; }
    .footer-grid { gap: 2.1875rem 1.25rem; padding: 3rem 0 2.375rem; }
    .legal-modal { padding: .875rem; }
    .legal-modal-header { padding: 1.125rem 1.1875rem; }
    .legal-modal-body { max-height: 72vh; padding: 1.3125rem 1.1875rem 1.5625rem; font-size: var(--font-size-2); }
}

@media (max-width: 26.25rem) {
    .container { width: calc(100% - 1.5rem); }
    .hero-actions { align-items: flex-start; flex-direction: column; gap: 1.3125rem; }
    .hero-visual { min-height: 15.3125rem; }
    .hero-visual-caption { gap: .625rem; font-size: var(--font-size-1); }
    .hero-product-image { width: 52%; }
    .collection-grid { grid-template-columns: 1fr; }
    .collection-tile, .collection-tile:nth-child(2n) { border-right: 0; }
    .product-rail { grid-template-columns: 1fr 1fr; }
    .featured-product-media { min-height: 18.125rem; }
    .featured-product-media::before { inset: 1.25rem; }
    .feature-story-caption { right: .875rem; bottom: .9375rem; font-size: var(--font-size-1); }
    .presence-node-row { grid-template-columns: 1fr; }
}
