
:root {
    --bg: #f3f6fb;
    --card: #ffffff;
    --card-soft: #f8fbff;
    --text: #102033;
    --muted: #627084;
    --line: #d8e3f0;
    --brand: #0b63ce;
    --brand-dark: #084b9c;
    --accent: #7c4dff;
    --success: #047857;
    --danger: #b42318;
    --shadow: 0 18px 50px rgba(11, 33, 61, 0.08);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    font-family: var(--font-body, Inter, Arial, Helvetica, sans-serif);
    font-size: var(--font-size-body, 16px);
    font-weight: var(--font-weight-body, 400);
    background:
        radial-gradient(circle at top left, rgba(124, 77, 255, 0.08), transparent 25%),
        radial-gradient(circle at top right, rgba(11, 99, 206, 0.08), transparent 24%),
        var(--bg);
    color: var(--text);
    overflow-x: hidden;
}
.site-topbar,
.site-topbar .topbar-link,
.site-topbar .topbar-locale-link {
    font-family: var(--font-topbar, Inter, Arial, Helvetica, sans-serif);
    font-size: var(--font-size-topbar, inherit);
    font-weight: var(--font-weight-topbar, inherit);
    text-transform: var(--font-transform-topbar, uppercase);
}
.site-header .brand,
.site-header .header-actions {
    font-family: var(--font-header, Inter, Arial, Helvetica, sans-serif);
    font-size: var(--font-size-header, inherit);
    font-weight: var(--font-weight-header, inherit);
    text-transform: var(--font-transform-header, none);
}
.nav-links,
.nav-links > a,
.nav-dropdown-toggle,
.nav-mega-menu,
.nav-mega-menu a,
.nav-mega-menu strong,
.nav-mega-menu small {
    font-family: var(--font-menu, Inter, Arial, Helvetica, sans-serif);
    font-size: var(--font-size-menu, inherit);
    font-weight: var(--font-weight-menu, inherit);
    text-transform: var(--font-transform-menu, uppercase);
}
.site-footer,
.site-footer h4,
.site-footer a,
.site-footer p,
.site-footer span,
.site-footer input,
.site-footer button {
    font-family: var(--font-footer, Inter, Arial, Helvetica, sans-serif);
    font-size: var(--font-size-footer, inherit);
    font-weight: var(--font-weight-footer, inherit);
    text-transform: var(--font-transform-footer, none);
}
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-headings, Inter, Arial, Helvetica, sans-serif);
    color: var(--heading, var(--text));
    font-weight: var(--font-weight-headings, inherit);
    text-transform: var(--font-transform-headings, none);
}
body,
p,
li,
input,
select,
textarea {
    text-transform: var(--font-transform-body, none);
}
.btn,
button,
input[type="submit"],
input[type="button"] {
    font-family: var(--font-buttons, Inter, Arial, Helvetica, sans-serif);
    font-size: var(--font-size-buttons, inherit);
    font-weight: var(--font-weight-buttons, inherit);
    text-transform: var(--font-transform-buttons, uppercase);
}
a { color: var(--brand); text-decoration: none; }
a:hover { text-decoration: none; }
.container { width: min(1200px, calc(100% - 32px)); margin: 0 auto; }
.site-header {
    background: var(--header-bg, rgba(255,255,255,.84));
    backdrop-filter: blur(14px);
    border-bottom: 1px solid rgba(216, 227, 240, 0.9);
    position: sticky;
    top: 0;
    z-index: 20;
}
.nav-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 0; }
.brand { display: inline-flex; align-items: center; gap: 14px; color: var(--header-text, var(--text)); font-weight: 700; }
.brand strong { display: block; font-size: 17px; }
.brand small { display: block; color: var(--muted); font-size: 12px; font-weight: 600; }

.brand-logo-media {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
    overflow: hidden;
    padding: 6px;
    flex: 0 0 auto;
}
.brand-logo-media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}
.brand-mark {
    width: 42px; height: 42px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, var(--brand), var(--accent)); color: #fff; font-weight: 800; box-shadow: var(--shadow);
}
.nav-links { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.nav-links > a { color: var(--menu-text, var(--text)); padding: 10px 12px; border-radius: 12px; font-weight: 600; }
.nav-links > a:hover { background: var(--menu-hover-bg, rgba(11,99,206,.08)); }
.user-pill { background: #eef5ff; color: var(--brand-dark); padding: 8px 12px; border-radius: 999px; font-size: 14px; font-weight: 700; }
.page-wrap { padding: 34px 0 56px; }
.hero-card, .auth-card, .card, .content-card, .info-banner, .shop-hero, .content-hero, .hero-panel, .showcase-card, .feature-card, .product-detail-card, .purchase-card {
    background: var(--card);
    border: 1px solid var(--line);
    border-radius: 24px;
    box-shadow: var(--shadow);
}
.card, .content-card, .info-banner, .shop-hero, .content-hero { padding: 28px; }
.hero-surface { display: grid; grid-template-columns: 1.65fr .8fr; gap: 18px; margin-bottom: 24px; }
.hero-panel { padding: 34px; position: relative; overflow: hidden; }
.hero-panel-main {
    background: linear-gradient(135deg, rgba(11,99,206,.96), rgba(124,77,255,.92));
    color: #fff;
    min-height: 340px;
}
.hero-panel-main .eyebrow,
.hero-panel-main .lead,
.hero-panel-main h1,
.hero-panel-main a { color: #fff; }
.hero-panel-main::after {
    content: ""; position: absolute; inset: auto -90px -90px auto; width: 220px; height: 220px; border-radius: 50%; background: rgba(255,255,255,.08);
}
.hero-panel-side { background: linear-gradient(180deg, #fff, var(--card-soft)); display: grid; gap: 14px; align-content: center; }
.mini-stat { padding: 18px; border: 1px solid #e4edf8; border-radius: 18px; background: #fff; }
.mini-stat strong { display: block; font-size: 28px; margin-bottom: 8px; }
.mini-stat span { color: var(--muted); }
.section-block { margin: 24px 0; }
.eyebrow, .meta { color: var(--muted); font-size: 12px; text-transform: uppercase; letter-spacing: .1em; font-weight: 700; }
h1, h2, h3, p { margin-top: 0; }
h1 { font-size: clamp(32px, 5vw, 56px); line-height: 1.02; margin-bottom: 16px; }
h2 { font-size: clamp(24px, 3.5vw, 34px); margin-bottom: 10px; }
h3 { font-size: 20px; margin-bottom: 10px; }
.lead { font-size: 18px; line-height: 1.7; color: #e9f0fb; max-width: 860px; }
.lead-small { color: var(--muted); max-width: 720px; }
.page-head { margin-bottom: 24px; }
.page-head.split, .section-head, .product-meta, .totals-card p, .cart-row, .content-hero, .shop-hero { display: flex; justify-content: space-between; gap: 16px; align-items: center; }
.section-head-rich { align-items: end; }
.action-row, .chip-row, .inline-form, .hero-actions, .showcase-actions { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.gap-sm { gap: 8px; }
.align-end { align-self: flex-end; }
.card-grid, .stats-grid, .feature-grid, .quick-link-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.feature-grid-categories { grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); }
.detail-grid { display: grid; grid-template-columns: 2fr 1fr; gap: 16px; align-items: start; }
.stack { display: grid; gap: 14px; }
.stack-lg > * + * { margin-top: 16px; }
.grid-form { display: grid; gap: 16px; }
.two-cols, .grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.full-width { grid-column: 1 / -1; }
label { display: grid; gap: 8px; font-weight: 600; }
input, select, textarea, button { font: inherit; }
input, select, textarea {
    width: 100%; border: 1px solid var(--line); border-radius: 14px; padding: 12px 14px; background: #fff; color: var(--text);
}
textarea { resize: vertical; }
.btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px; background: var(--button-bg, var(--brand)); color: var(--button-text, #fff);
    border: 0; border-radius: 14px; padding: 12px 18px; cursor: pointer; text-decoration: none; font-weight: 700;
    box-shadow: 0 10px 24px rgba(11, 99, 206, 0.18);
}
.btn:hover { background: var(--accent); }
.btn-light { background: #fff; color: var(--text); border: 1px solid var(--line); box-shadow: none; }
.btn-danger { background: var(--danger); color: #fff; }
.btn-sm { padding: 10px 14px; }
.alert { padding: 14px 16px; border-radius: 14px; margin-bottom: 16px; }
.alert-error { background: #fef3f2; color: var(--danger); border: 1px solid #fecdca; }
.alert-success { background: #ecfdf3; color: var(--success); border: 1px solid #abefc6; }
.site-toast-stack {
    position: fixed;
    bottom: 20px;
    right: 18px;
    z-index: 70;
    width: min(380px, calc(100vw - 30px));
    display: grid;
    gap: 12px;
    pointer-events: none;
}
.site-toast {
    pointer-events: auto;
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 12px;
    align-items: start;
    padding: 14px 14px 14px 12px;
    border-radius: 16px;
    border: 1px solid transparent;
    background: rgba(255,255,255,.94);
    box-shadow:
        0 14px 30px rgba(15, 23, 42, 0.14),
        0 2px 8px rgba(15, 23, 42, 0.08);
    backdrop-filter: blur(10px) saturate(120%);
    position: relative;
    overflow: hidden;
    animation: site-toast-in .3s cubic-bezier(.22,.75,.28,1) both;
}
.site-toast.is-leaving {
    animation: site-toast-out .24s ease-in both;
}
.site-toast::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 3px;
    transform-origin: left center;
    animation: site-toast-progress 5.1s linear forwards;
}
.site-toast-icon {
    width: 34px;
    height: 34px;
    border-radius: 11px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.28);
}
.site-toast-content strong {
    display: block;
    margin-bottom: 4px;
    font-size: 14px;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.site-toast-content p {
    margin: 0;
    font-size: 14px;
    line-height: 1.45;
    color: #334155;
}
.site-toast-close {
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 999px;
    background: rgba(16,32,51,.07);
    color: #304056;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
    transition: background-color .15s ease, transform .15s ease;
}
.site-toast-close:hover {
    background: rgba(16,32,51,.14);
    transform: scale(1.04);
}
.site-toast-success {
    border-color: rgba(4, 120, 87, 0.26);
    background: linear-gradient(180deg, rgba(236,253,243,.92), rgba(255,255,255,.97));
}
.site-toast-success .site-toast-icon {
    background: linear-gradient(180deg, rgba(4,120,87,.2), rgba(4,120,87,.1));
    color: #047857;
}
.site-toast-success::after {
    background: linear-gradient(90deg, #34d399, #10b981);
}
.site-toast-error {
    border-color: rgba(180, 35, 24, 0.24);
    background: linear-gradient(180deg, rgba(254,243,242,.93), rgba(255,255,255,.97));
}
.site-toast-error .site-toast-icon {
    background: linear-gradient(180deg, rgba(180,35,24,.2), rgba(180,35,24,.1));
    color: #b42318;
}
.site-toast-error::after {
    background: linear-gradient(90deg, #f87171, #ef4444);
}
body.toast-style-minimal .site-toast {
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
    backdrop-filter: none;
}
body.toast-style-minimal .site-toast::after {
    height: 2px;
}
body.toast-style-minimal .site-toast-icon {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    font-size: 16px;
}
body.toast-style-minimal .site-toast-content strong {
    letter-spacing: .02em;
}
body.toast-style-minimal .site-toast-close {
    width: 26px;
    height: 26px;
    font-size: 18px;
}
@keyframes site-toast-in {
    from { opacity: 0; transform: translate3d(24px, 10px, 0) scale(0.98); }
    to { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }
}
@keyframes site-toast-out {
    from { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }
    to { opacity: 0; transform: translate3d(14px, 8px, 0) scale(0.98); }
}
@keyframes site-toast-progress {
    from { transform: scaleX(1); opacity: .95; }
    to { transform: scaleX(0); opacity: .65; }
}
@media (max-width: 640px) {
    .site-toast-stack {
        bottom: 12px;
        left: 10px;
        right: 10px;
        width: auto;
    }
}
.table { width: 100%; border-collapse: collapse; }
.table th, .table td { padding: 12px 10px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.table th { color: var(--muted); font-size: 13px; text-transform: uppercase; }
.stat-card { padding: 26px; }
.stat-card span { color: var(--muted); display: block; margin-bottom: 8px; font-weight: 600; }
.stat-card strong { font-size: 32px; }
.chip-row-wide { margin-bottom: 18px; }
.chip { padding: 10px 14px; border: 1px solid var(--line); border-radius: 999px; background: #fff; color: var(--text); font-weight: 600; }
.chip-active { background: var(--brand); color: #fff; border-color: var(--brand); }
.qty-input { width: 86px; }
.checkbox-row { display: flex; align-items: center; gap: 10px; }
.checkbox-row input { width: auto; }
hr { border: 0; border-top: 1px solid var(--line); margin: 12px 0; }
.prose { line-height: 1.8; color: #334155; }
.prose h2,.prose h3 { margin-top: 24px; margin-bottom: 10px; }
.prose p { margin: 0 0 14px; }
.feature-card { display: block; padding: 24px; color: var(--text); background: linear-gradient(180deg, #fff, var(--card-soft)); }
.feature-card-category { min-height: 210px; }
.feature-icon {
    width: 42px; height: 42px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center;
    background: rgba(11,99,206,.1); color: var(--brand); font-size: 18px; margin-bottom: 18px;
}
.feature-link { display: inline-block; margin-top: 14px; color: var(--brand); font-weight: 700; }
.product-showcase-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 18px; }
.showcase-card { padding: 24px; }
.showcase-card h3 a { color: var(--text); }
.showcase-card-shop { min-height: 280px; }
.showcase-badge {
    display: inline-flex; padding: 8px 12px; border-radius: 999px; background: #eef5ff; color: var(--brand-dark); font-size: 12px; font-weight: 700; margin-bottom: 16px;
}
.showcase-footer, .showcase-metrics { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 18px; }
.showcase-footer strong, .showcase-metrics strong { font-size: 22px; }
.info-banner { display: flex; justify-content: space-between; gap: 20px; align-items: center; margin-top: 24px; }
.product-detail-shell { margin-top: 10px; }
.product-detail-card { display: grid; grid-template-columns: 1.7fr .8fr; gap: 18px; padding: 28px; }
.purchase-card { padding: 24px; align-self: start; position: static; top: auto; }
.price-xl { display: block; font-size: 42px; line-height: 1; margin: 10px 0 14px; }
.status-pill { display: inline-flex; padding: 10px 14px; border-radius: 999px; font-weight: 700; }
.status-pill-public { background: #e8fff5; color: #047857; }
.status-pill-private { background: #eef5ff; color: var(--brand-dark); }
.quick-links-card { margin-bottom: 16px; }
.mode-switch-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.mode-card {
    display: block; border: 1px solid var(--line); border-radius: 20px; padding: 18px; background: linear-gradient(180deg, #fff, var(--card-soft)); cursor: pointer;
}
.mode-card input { width: auto; margin-right: 10px; }
.mode-card-active { border-color: var(--brand); box-shadow: 0 0 0 3px rgba(11,99,206,.1); }
.mode-card-body { display: inline-grid; gap: 8px; vertical-align: middle; width: calc(100% - 32px); }
.mode-card-body strong { font-size: 18px; }
.mode-card-body small { color: var(--muted); line-height: 1.6; }
.table-wrap table { width: 100%; border-collapse: collapse; }
.table-wrap th, .table-wrap td { padding: 12px 10px; border-bottom: 1px solid var(--line); text-align: left; }
.customer-dashboard-hero h1 { margin-bottom: 10px; }
.customer-dashboard-stats .stat-card { min-height: 166px; display: grid; align-content: start; gap: 8px; }
.customer-dashboard-stats .stat-card strong { line-height: 1.1; }
.customer-dashboard-stats .stat-card .meta { margin-top: 2px; text-transform: none; letter-spacing: 0; font-size: 12px; }
.customer-orders-card .section-head { margin-bottom: 10px; }
.customer-orders-card h2 { margin-bottom: 0; }
.customer-orders-table table { border-collapse: separate; border-spacing: 0; width: 100%; }
.customer-orders-table th { font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.customer-orders-table tbody tr:hover td { background: rgba(11, 99, 206, 0.03); }
.customer-orders-table td:first-child,
.customer-orders-table th:first-child { padding-left: 14px; }
.customer-orders-table td:last-child,
.customer-orders-table th:last-child { padding-right: 14px; }
.customer-status-chip {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 700;
    border: 1px solid transparent;
    white-space: nowrap;
}
.customer-status-chip.status-ok { background: #ecfdf3; color: #047857; border-color: #abefc6; }
.customer-status-chip.status-info { background: #eef5ff; color: #0b63ce; border-color: #d6e6ff; }
.customer-status-chip.status-warn { background: #fffaeb; color: #b54708; border-color: #fedf89; }
.customer-status-chip.status-danger { background: #fef3f2; color: #b42318; border-color: #fecdca; }
@media (max-width: 960px) {
    .hero-surface, .detail-grid, .product-detail-card, .mode-switch-grid, .grid-2, .two-cols { grid-template-columns: 1fr; }
    .page-head.split, .section-head, .product-meta, .totals-card p, .cart-row, .content-hero, .shop-hero, .info-banner { flex-direction: column; align-items: flex-start; }
    .purchase-card { position: static; }
    .customer-orders-table { overflow-x: auto; }
    .customer-orders-table table { min-width: 760px; }
}
@media (max-width: 760px) {
    .nav-row { align-items: flex-start; }
    .nav-links { width: 100%; }
    h1 { font-size: 36px; }
    .hero-panel, .card, .content-card, .shop-hero, .content-hero, .showcase-card, .feature-card, .purchase-card { padding: 22px; }
}


.site-topbar { background: var(--topbar-bg); color: var(--topbar-text); font-size: 14px; }
.site-topbar a, .site-topbar span { color: var(--topbar-text); }
.topbar-row { display:grid; grid-template-columns: 1fr auto 1fr; gap: 16px; align-items:center; min-height: 42px; }
.topbar-col-center { text-align:center; }
.topbar-col-end { text-align:right; }
.header-solid .site-header { background: #fff; backdrop-filter: none; }
.layout-boxed .container { width: min(1120px, calc(100% - 32px)); }
.template-minimal .hero-panel,
.template-minimal .content-card,
.template-minimal .info-banner,
.template-minimal .shop-hero,
.template-minimal .content-hero,
.template-minimal .showcase-card,
.template-minimal .feature-card,
.template-minimal .product-detail-card,
.template-minimal .purchase-card { border-radius: 16px; box-shadow: 0 10px 28px rgba(11, 33, 61, 0.06); }
.template-showcase .hero-panel-main { min-height: 400px; }
.template-showcase .feature-card,
.template-showcase .showcase-card { transform: translateY(0); transition: transform .2s ease, box-shadow .2s ease; }
.template-showcase .feature-card:hover,
.template-showcase .showcase-card:hover { transform: translateY(-4px); box-shadow: 0 18px 40px rgba(11, 33, 61, 0.12); }
@media (max-width: 760px) { .topbar-row { grid-template-columns: 1fr; text-align: left; padding: 10px 0; } .topbar-col-center, .topbar-col-end { text-align:left; } }

.embedded-form-card{margin-top:2rem;padding:1.5rem;border-radius:16px;background:var(--surface,#fff);box-shadow:0 18px 40px rgba(16,32,51,.08)}
.embedded-form-head{margin-bottom:1rem}.embedded-form-head h3{margin:0;font-size:1.4rem}
.embedded-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.embedded-form-field{display:flex;flex-direction:column;gap:.5rem}.embedded-form-field label{font-weight:600}
.embedded-form-field input,.embedded-form-field textarea{width:100%;padding:.9rem 1rem;border:1px solid rgba(16,32,51,.12);border-radius:12px;background:#fff}
.embedded-form-field textarea{min-height:140px;resize:vertical}.embedded-form-actions{grid-column:1/-1}
.embedded-check{display:flex;align-items:center;gap:.65rem;min-height:48px}.embedded-check input{width:18px;height:18px}
@media (max-width: 720px){.embedded-form-grid{grid-template-columns:1fr}}

.builder-section {
    margin: 0 0 26px;
    position: relative;
}
.builder-section:last-child {margin-bottom:0;}
.builder-section-inner,
.builder-copy-card,
.builder-mini-card,
.builder-faq-item {
    background:
        radial-gradient(circle at top right, rgba(124, 77, 255, 0.08), transparent 26%),
        linear-gradient(180deg,#fff,var(--card-soft));
    border:1px solid var(--line);
    border-radius:28px;
    box-shadow:0 22px 52px rgba(12, 30, 56, 0.10);
}
.builder-section-inner,
.builder-copy-card {padding:42px 44px;display:flex;flex-direction:column;justify-content:center;gap:1.1rem;background:linear-gradient(180deg,#ffffff 0%,#fbfcff 100%);border:1px solid rgba(15,23,42,.08);box-shadow:0 16px 40px rgba(15,23,42,.08);}
.builder-copy-card h2 {margin:0;font-size:clamp(2rem,2.8vw,3.1rem);line-height:1.08;letter-spacing:-.03em;color:#123159;}
.builder-copy-card .eyebrow {margin-bottom:.15rem;color:#0f4d86;letter-spacing:.08em;font-size:.8rem;}
.builder-copy-card .lead {margin:0;color:#32506e;line-height:1.85;font-size:1rem;max-width:64ch;}
.builder-copy-card .btn {align-self:flex-start;margin-top:.35rem;}
.builder-media-grid {display:grid;grid-template-columns:minmax(0,1.22fr) minmax(320px,.88fr);gap:30px;align-items:center;}
.builder-section-image-text.image-left .builder-media-card {order:0;}
.builder-section-image-text.image-left .builder-copy-card {order:1;}
.builder-section-image-text.image-right .builder-copy-card {order:0;}
.builder-section-image-text.image-right .builder-media-card {order:1;}
.builder-section-image-text {padding:10px 0;}
.builder-section-spotlight {padding:18px 0;}
.builder-spotlight-grid {display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:42px;align-items:center;}
.builder-section-spotlight.image-left .builder-spotlight-copy {order:1;}
.builder-section-spotlight.image-left .builder-spotlight-media-wrap {order:0;}
.builder-section-spotlight.image-right .builder-spotlight-copy {order:0;}
.builder-section-spotlight.image-right .builder-spotlight-media-wrap {order:1;}
.builder-spotlight-copy {display:grid;gap:18px;max-width:640px;}
.builder-spotlight-copy h2 {font-size:clamp(34px,4vw,62px);line-height:.95;letter-spacing:-.04em;margin-bottom:0;}
.builder-spotlight-text {display:grid;gap:18px;color:var(--text);}
.builder-spotlight-text p {margin:0;color:var(--text);}
.builder-spotlight-btn {margin-top:8px;justify-self:start;background:#f0d800;color:#081b2f;box-shadow:none;}
.builder-spotlight-btn:hover {background:#dbc500;color:#081b2f;}
.builder-spotlight-media-wrap {position:relative;display:flex;justify-content:center;align-items:center;min-height:520px;}
.builder-spotlight-media {position:relative;z-index:1;width:min(460px,100%);aspect-ratio:1 / 1;border-radius:50%;overflow:hidden;background:linear-gradient(180deg,#fff,var(--card-soft));display:flex;align-items:center;justify-content:center;box-shadow:0 20px 50px rgba(16,32,51,.08);}
.builder-spotlight-media img {width:100%;height:100%;object-fit:cover;display:block;}
.builder-spotlight-media span {color:var(--muted);font-weight:700;}
.builder-spotlight-accent-shape {position:absolute;z-index:0;display:block;width:260px;height:180px;background:#f0d800;bottom:18px;right:14px;border-radius:0 0 180px 180px;transform:rotate(38deg);}
.builder-section-spotlight.image-left .builder-spotlight-accent-shape {right:auto;left:14px;transform:rotate(-38deg);}
.builder-spotlight-clean .builder-spotlight-media {width:min(500px,100%);}
.builder-spotlight-accent .builder-spotlight-media {width:min(430px,100%);}
.builder-media-card {border-radius:18px;overflow:hidden;min-height:420px;border:1px solid rgba(15,23,42,.08);box-shadow:0 18px 40px rgba(15,23,42,.10);background:#fff;}
.builder-media-card img {width:100%;height:100%;object-fit:cover;display:block;}
.builder-card-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;}
.builder-mini-card {padding:28px;}
.builder-mini-card p {color:var(--muted);line-height:1.7;margin-bottom:0;}
.builder-section-feature-shell {
    text-align: center;
    padding-top: 42px;
    padding-bottom: 42px;
}
.builder-section-feature-shell .builder-section-copy {
    margin-left: auto;
    margin-right: auto;
    max-width: 680px;
}
.builder-service-grid {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 22px;
    margin-top: 28px;
}
.builder-service-grid .builder-mini-card {
    text-align: left;
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 12px 20px 8px;
}
.builder-service-icon {
    width: 72px;
    height: 72px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
    background: #59c0bf;
    color: #fff;
    font-size: 20px;
    font-weight: 800;
    letter-spacing: .08em;
}
.builder-service-grid .builder-mini-card h3 {
    font-size: clamp(24px, 2vw, 28px);
    line-height: 1.08;
    letter-spacing: -.03em;
    margin-bottom: 12px;
}
.builder-section-serviceplus-shell {
    text-align: center;
    padding: 68px 72px;
    background: #f4f4f4;
    border: 0;
    box-shadow: none;
}
.builder-serviceplus-grid {
    margin-top: 54px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 54px 44px;
}
.builder-serviceplus-card {
    text-align: left;
}
.builder-serviceplus-icon {
    width: 72px;
    height: 72px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 26px;
    background: #5bc2c0;
    color: #ffffff;
    font-size: 20px;
    font-weight: 800;
    letter-spacing: .08em;
}
.builder-serviceplus-icon i {
    font-size: 31px;
    line-height: 1;
}
.builder-serviceplus-card h3 {
    font-size: clamp(28px, 2.1vw, 34px);
    line-height: 1.06;
    letter-spacing: -.04em;
    margin-bottom: 12px;
}
.builder-serviceplus-card p {
    margin: 0;
    color: var(--text);
    font-size: 18px;
    line-height: 1.55;
}
.builder-section-hosting-showcase {
    padding: 28px 0;
}
.builder-hosting-grid {
    display: grid;
    grid-template-columns: minmax(320px, 1fr) minmax(320px, .95fr);
    gap: 58px;
    align-items: center;
}
.builder-section-hosting-showcase.image-right .builder-hosting-media {
    order: 1;
}
.builder-section-hosting-showcase.image-right .builder-hosting-copy {
    order: 0;
}
.builder-hosting-media {
    border-radius: 10px;
    overflow: hidden;
    min-height: 540px;
    background: linear-gradient(180deg, #ffffff, var(--card-soft));
    box-shadow: 0 24px 56px rgba(13, 31, 56, 0.14);
}
.builder-hosting-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.builder-hosting-media span {
    min-height: 540px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--muted);
    font-weight: 700;
}
.builder-hosting-copy {
    display: grid;
    gap: 22px;
    max-width: 560px;
}
.builder-hosting-copy h2 {
    font-size: clamp(42px, 4vw, 64px);
    line-height: .96;
    letter-spacing: -.05em;
    margin-bottom: 0;
}
.builder-hosting-text,
.builder-advice-text {
    display: grid;
    gap: 18px;
    color: var(--text);
}
.builder-hosting-text p,
.builder-advice-text p {
    margin: 0;
}
.builder-section-advice-spotlight {
    padding: 34px 0;
}
.builder-advice-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 520px);
    gap: 64px;
    align-items: center;
}
.builder-section-advice-spotlight.image-left .builder-advice-copy {
    order: 1;
}
.builder-section-advice-spotlight.image-left .builder-advice-media-wrap {
    order: 0;
}
.builder-advice-copy {
    display: grid;
    gap: 20px;
    max-width: 620px;
}
.builder-advice-copy h2 {
    font-size: clamp(42px, 4vw, 66px);
    line-height: .95;
    letter-spacing: -.05em;
    margin-bottom: 0;
}
.builder-advice-btn {
    justify-self: start;
    background: #efd200;
    color: #07203a;
    box-shadow: none;
}
.builder-advice-btn:hover {
    background: #dcbc00;
    color: #07203a;
}
.builder-advice-media-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}
.builder-advice-media {
    width: min(460px, 100%);
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    overflow: hidden;
    box-shadow: 0 24px 56px rgba(13, 31, 56, 0.14);
    background: linear-gradient(180deg, #ffffff, var(--card-soft));
}
.builder-advice-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.builder-advice-media span {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--muted);
    font-weight: 700;
}
.builder-faq-list {display:grid;gap:12px;}
.builder-faq-item {padding:0 20px;}
.builder-faq-item summary {cursor:pointer;list-style:none;padding:18px 0;font-weight:700;}
.builder-faq-item summary::-webkit-details-marker {display:none;}
.builder-faq-item div {padding:0 0 18px;color:var(--muted);line-height:1.75;}
.builder-section-headline {margin-bottom:18px;}
.builder-card-grid-blog,
.builder-card-grid-product,
.builder-card-grid-category,
.builder-card-grid-manual {display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;}
.builder-preview-spotlight {display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:18px;align-items:center;}
.builder-preview-spotlight.media-left .builder-preview-copy {order:1;}
.builder-preview-spotlight.media-left .builder-preview-circle {order:0;}
.builder-preview-circle {position:relative;width:180px;height:180px;border-radius:50%;overflow:hidden;background:linear-gradient(180deg,#fff,var(--card-soft));display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--muted);}
.builder-preview-circle img {width:100%;height:100%;object-fit:cover;display:block;}
.builder-preview-circle i {position:absolute;display:block;width:110px;height:70px;background:#f0d800;bottom:-2px;right:-8px;border-radius:0 0 110px 110px;transform:rotate(36deg);}
.builder-preview-spotlight.media-left .builder-preview-circle i {right:auto;left:-8px;transform:rotate(-36deg);}
.builder-carousel-track {display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,32%);gap:18px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x proximity;}
.builder-carousel-track > * {scroll-snap-align:start;}
.builder-collection-card {
    min-height: 100%;
    border-radius: 28px;
    box-shadow: 0 22px 52px rgba(12, 30, 56, 0.10);
}
.builder-collection-media {display:block;position:relative;margin:-22px -22px 18px;border-radius:22px 22px 0 0;overflow:hidden;min-height:220px;background:var(--card-soft);}
.builder-collection-media img {width:100%;height:100%;min-height:220px;object-fit:cover;display:block;}
.builder-manual-card {background:linear-gradient(180deg,#fff,var(--card-soft));border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);}
.builder-manual-card {padding:22px;}
.builder-partner-card {text-align:left;}
.builder-partner-card .builder-collection-media {min-height:180px;background:#fff;}
.builder-category-card {background:linear-gradient(180deg,#fff,var(--card-soft));}
.builder-editorial-card {padding:0;overflow:hidden;border:1px solid rgba(15, 23, 42, 0.08);border-radius:16px;box-shadow:0 10px 28px rgba(15, 23, 42, 0.08);background:#fff;}
.builder-editorial-card .builder-collection-media {margin:0;border-radius:16px 16px 0 0;min-height:184px;}
.builder-editorial-card .builder-collection-media img {min-height:184px;}
.builder-card-chip {position:absolute;left:14px;top:14px;display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#dbf4dc;color:#227447;font-size:11px;font-weight:700;letter-spacing:.01em;box-shadow:0 8px 18px rgba(15, 23, 42, 0.12);}
.builder-card-chip-featured {background:#ffe2e2;color:#cc3348;}
.builder-card-body {display:grid;gap:12px;padding:14px 16px 16px;}
.builder-card-meta {display:flex;flex-wrap:wrap;gap:10px 14px;color:#7d8596;font-size:11px;font-weight:600;}
.builder-card-meta span {display:inline-flex;align-items:center;gap:6px;}
.builder-card-meta i {font-size:11px;color:#a0a8b8;}
.builder-editorial-card h3 {margin:0;font-size:1.1rem;line-height:1.35;color:#172033;}
.builder-editorial-card h3 a {color:inherit;text-decoration:none;}
.builder-editorial-card p {margin:0;color:#677084;line-height:1.7;font-size:.92rem;}
.builder-card-footer {margin-top:auto;padding-top:12px;border-top:1px solid rgba(15, 23, 42, 0.08);}
.builder-card-footer strong {font-size:.82rem;letter-spacing:.02em;color:#3e4758;}
.builder-card-footer a {display:inline-flex;align-items:center;gap:6px;color:#e34b5f;font-weight:700;text-decoration:none;}
.builder-card-footer a i {font-size:.8rem;}
.builder-blog-card .builder-card-body {gap:10px;}
@media (max-width: 960px) {.builder-media-grid {grid-template-columns:1fr;gap:22px;}.builder-copy-card{padding:28px;}.builder-media-card{min-height:320px;}.builder-spotlight-grid{grid-template-columns:1fr;gap:26px;}.builder-section-spotlight.image-left .builder-spotlight-copy,.builder-section-spotlight.image-left .builder-spotlight-media-wrap,.builder-section-spotlight.image-right .builder-spotlight-copy,.builder-section-spotlight.image-right .builder-spotlight-media-wrap,.builder-section-hosting-showcase.image-left .builder-hosting-media,.builder-section-hosting-showcase.image-left .builder-hosting-copy,.builder-section-hosting-showcase.image-right .builder-hosting-media,.builder-section-hosting-showcase.image-right .builder-hosting-copy,.builder-section-advice-spotlight.image-left .builder-advice-copy,.builder-section-advice-spotlight.image-left .builder-advice-media-wrap,.builder-section-advice-spotlight.image-right .builder-advice-copy,.builder-section-advice-spotlight.image-right .builder-advice-media-wrap{order:initial;}.builder-spotlight-copy,.builder-hosting-copy,.builder-advice-copy{max-width:none;}.builder-spotlight-media-wrap{min-height:0;}.builder-hosting-grid,.builder-advice-grid,.builder-serviceplus-grid{grid-template-columns:1fr;gap:26px;}.builder-hosting-media,.builder-hosting-media span{min-height:320px;}.builder-section-serviceplus-shell{padding:34px 24px;}}


.site-header .brand {
    min-width: 0;
    justify-self: start;
    margin-left: -16px;
}

.site-header .brand-logo-media {
    width: clamp(110px, 14vw, 220px);
    height: 50px;
    padding: 2px 0;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
    border: 0;
}

.site-header .brand-logo-media img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 98px;
    object-fit: contain;
}

@media (max-width: 760px) {
    .site-header .brand-logo-media {
        width: clamp(88px, 34vw, 160px);
        height: 42px;
        padding: 2px 0;
    }

    .site-header .brand-logo-media img {
        max-height: 30px;
    }
}

/* Bisum-inspired storefront refresh */
body {
    background:
        radial-gradient(circle at top left, rgba(218, 184, 137, 0.12), transparent 24%),
        radial-gradient(circle at top right, rgba(204, 214, 197, 0.16), transparent 28%),
        var(--bg);
    color: var(--text);
}

a { color: var(--brand); }
.container { width: min(1320px, calc(100% - 36px)); }
.site-topbar {
    background: var(--topbar-bg);
    color: var(--topbar-text);
    font-size: 12px;
    text-transform: var(--font-transform-topbar, uppercase);
    letter-spacing: .08em;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.site-topbar a, .site-topbar span { color: var(--topbar-text); }
.topbar-row {
    min-height: 44px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, auto) minmax(0, 1fr);
    gap: 18px;
    align-items: center;
}
.topbar-col {
    display: flex;
    align-items: center;
    min-width: 0;
}
.topbar-col-start {
    gap: 14px;
    flex-wrap: wrap;
}
.topbar-col-center {
    justify-content: center;
    text-align: center;
}
.topbar-col-end {
    justify-content: flex-end;
    gap: 14px;
    flex-wrap: wrap;
}
.topbar-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    color: var(--topbar-text);
    white-space: nowrap;
}
.topbar-link-button {
    background: transparent;
    border: 0;
    padding: 0;
    cursor: pointer;
}
.topbar-inline-form {
    margin: 0;
}
.topbar-link span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
}
.topbar-link-icon {
    width: 18px;
    height: 18px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.12);
    font-size: 10px;
    flex: 0 0 auto;
}
.topbar-link-promo {
    padding: 0 12px;
    justify-content: center;
}
.topbar-link-promo .topbar-link-icon {
    background: rgba(255, 255, 255, 0.18);
}
.topbar-locale-switch {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.topbar-locale-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 26px;
    padding: 0 9px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    background: transparent;
    color: var(--topbar-text);
    font-size: 11px;
    line-height: 1;
}
.topbar-locale-link.is-active,
.topbar-locale-link:hover {
    background: var(--topbar-text);
    color: var(--topbar-bg);
}
.site-header {
    background: var(--header-bg, rgba(255,255,255,.94));
    border-bottom: 1px solid rgba(116, 97, 77, 0.12);
    box-shadow: 0 14px 40px rgba(47, 42, 37, 0.05);
    position: relative;
    z-index: 120;
}
.nav-row {
    padding: 10px 0;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    position: relative;
}
.nav-links {
    gap: var(--menu-item-spacing, 6px);
}
.nav-links-centered {
    justify-content: center;
    position: static;
    min-width: 0;
}
.nav-links > a,
.nav-dropdown-toggle,
.header-actions > a {
    color: var(--menu-text, var(--text));
    font-size: 13px;
    text-transform: var(--font-transform-menu, uppercase);
    letter-spacing: .06em;
    font-weight: 700;
    padding: 10px 12px;
    border-radius: 999px;
    background: transparent;
    border: 0;
    cursor: pointer;
}
.nav-links > a:hover,
.nav-dropdown-toggle:hover,
.header-actions > a:hover { background: var(--menu-hover-bg, color-mix(in srgb, var(--brand) 10%, #ffffff 90%)); }
.nav-dropdown {
    position: relative;
}
.nav-dropdown-mega {
    position: static;
}
.nav-dropdown-mega .nav-mega-menu {
    left: 0;
    right: 0;
    width: auto;
    transform: translateY(10px);
}
.nav-mega-menu {
    position: absolute;
    top: calc(100% + 1px);
    left: 50%;
    transform: translateX(-50%) translateY(10px);
    width: min(1400px, calc(100vw - 40px));
    min-width: 0;
    padding: 0;
    border-radius: 0 0 12px 12px;
    background: #f6f7f9;
    border: 1px solid rgba(16, 32, 51, 0.10);
    border-top: 0;
    box-shadow: 0 20px 52px rgba(16, 32, 51, 0.10);
    overflow: hidden;
    isolation: isolate;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
    z-index: 60;
}
.nav-mega-menu-compact {
    min-width: 520px;
    padding: 18px;
    background: #ffffff;
}
.nav-dropdown:hover .nav-mega-menu,
.nav-dropdown:focus-within .nav-mega-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
}
.nav-dropdown-mega:hover .nav-mega-menu,
.nav-dropdown-mega:focus-within .nav-mega-menu {
    transform: translateY(0);
}
.nav-mega-grid {
    display: grid;
    grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
    gap: 0;
    align-items: stretch;
}
.nav-mega-grid-dropdown {
    grid-template-columns: minmax(260px, 1fr);
}
.nav-mega-menu-compact .nav-mega-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}
.nav-mega-column {
    display: grid;
    gap: 10px;
}
.nav-mega-column a,
.nav-mega-intro p,
.nav-mega-intro strong {
    text-transform: inherit;
    letter-spacing: 0;
}
.nav-mega-intro {
    min-height: 100%;
    padding: 28px 30px;
    border-right: 1px solid rgba(16, 32, 51, 0.08);
    background: #f6f7f9;
    font-family: var(--font-menu-mega-intro, var(--font-menu, Inter, Arial, Helvetica, sans-serif));
    font-size: var(--font-size-menu-mega-intro, var(--font-size-menu, 13px));
    text-transform: var(--font-transform-menu-mega-intro, var(--font-transform-menu, uppercase));
}
.nav-mega-intro-copy {
    display: grid;
    gap: 16px;
    align-content: start;
}
.nav-mega-intro-brand {
    display: flex;
    align-items: center;
    margin-bottom: 4px;
}
.nav-mega-intro-brand-mark {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    border: 1px solid rgba(16, 32, 51, 0.10);
    box-shadow: 0 10px 24px rgba(16, 32, 51, 0.06);
}
.nav-mega-intro-brand-mark {
    color: #102c56;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: .04em;
}
.nav-mega-intro strong {
    font-size: clamp(22px, 2vw, 30px);
    line-height: 1.05;
    color: #102033;
    letter-spacing: -.03em;
}
.nav-mega-intro p {
    margin: 0;
    color: #4f5d73;
    font-size: 16px;
    line-height: 1.75;
    max-width: 28ch;
}
.nav-mega-intro-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 4px;
    color: #3d63ff;
    font-size: 15px;
    font-weight: 700;
}
.nav-mega-intro-link::after {
    content: "›";
    font-size: 18px;
    line-height: 1;
}
.nav-mega-column-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 18px;
    padding: 24px 26px;
    background: #f6f7f9;
}
.nav-mega-column-links-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
.nav-mega-column-links-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.nav-mega-column-links-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.nav-mega-column-links-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.nav-mega-column-links-rows-1 {
    grid-template-rows: repeat(1, minmax(0, 1fr));
    grid-auto-flow: column;
}
.nav-mega-column-links-rows-2 {
    grid-template-rows: repeat(2, minmax(0, 1fr));
    grid-auto-flow: column;
}
.nav-mega-column-links-rows-3 {
    grid-template-rows: repeat(3, minmax(0, 1fr));
    grid-auto-flow: column;
}
.nav-mega-column-links-rows-4 {
    grid-template-rows: repeat(4, minmax(0, 1fr));
    grid-auto-flow: column;
}
.nav-mega-column a,
.nav-mega-card-link {
    color: var(--menu-text, var(--text));
    font-family: var(--font-menu-mega-items, var(--font-menu, Inter, Arial, Helvetica, sans-serif));
    font-size: var(--font-size-menu-mega-items, 15px);
    font-weight: var(--font-weight-menu-mega-items, 600);
    text-transform: var(--font-transform-menu-mega-items, var(--font-transform-menu, uppercase));
    padding: 18px 20px;
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 0;
    border-radius: 8px;
    border: 1px solid rgba(16, 32, 51, 0.12);
    background: #ffffff;
    transition: border-color .16s ease, transform .16s ease, box-shadow .16s ease;
}
.nav-mega-column-links-style-stacked .nav-mega-card-link,
.nav-mega-column-links-style-stacked .nav-mega-column a {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 112px;
    text-align: center;
}
.nav-mega-column-links-style-stacked .nav-mega-card-copy {
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
}
.nav-mega-column-links-style-stacked .nav-mega-card-copy strong {
    font-size: 14px;
    text-align: center;
}
.nav-mega-column a:hover,
.nav-mega-card-link:hover {
    color: var(--brand);
    border-color: rgba(61, 99, 255, 0.34);
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(16, 32, 51, 0.05);
}
.nav-mega-card-copy {
    display: flex;
    align-items: center;
    min-width: 0;
    flex: 1 1 auto;
}
.nav-mega-column a strong,
.nav-mega-card-copy strong {
    font-size: inherit;
    font-weight: inherit;
    color: #102c56;
    line-height: 1.25;
}
.nav-mega-column a small,
.nav-mega-card-copy small {
    color: #627084;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.55;
}
.nav-item-icon {
    width: 40px;
    height: 40px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(61, 99, 255, 0.08);
    color: #3d63ff;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    flex: 0 0 auto;
}
.nav-item-icon i {
    font-size: 16px;
    line-height: 1;
}
.nav-mega-eyebrow {
    color: #102c56;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .16em;
    font-weight: 700;
}
.header-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}
#google_translate_element {
    display: inline-block;
}
#google_translate_element .goog-te-gadget {
    color: var(--header-text, var(--text));
    font-size: 12px;
    line-height: 1;
}
#google_translate_element img {
    display: none !important;
}
.header-icon-link {
    position: relative;
    width: 46px;
    height: 46px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(122, 91, 62, 0.14);
    background: var(--card);
    color: var(--header-text, var(--text));
    box-shadow: 0 10px 28px rgba(47, 42, 37, 0.06);
}
.header-icon-link:hover {
    background: color-mix(in srgb, var(--brand) 10%, #ffffff 90%);
}
.header-icon-link-language i {
    font-size: 18px;
    line-height: 1;
}
.header-icon-glyph {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.header-icon-counter {
    position: absolute;
    top: -4px;
    right: -2px;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--brand);
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
}
.language-popup-overlay {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(2px);
    z-index: 80;
}
.language-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: min(720px, calc(100% - 28px));
    background: #fff;
    border: 1px solid rgba(122, 91, 62, 0.16);
    border-radius: 24px;
    box-shadow: 0 24px 72px rgba(15, 23, 42, 0.28);
    padding: 24px;
    z-index: 81;
}
.language-popup-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
}
.language-popup-head h3 {
    margin-bottom: 6px;
    font-size: 24px;
    line-height: 1.15;
}
.language-popup-head p {
    margin: 0;
    color: var(--muted);
    font-size: 14px;
}
.language-popup-note {
    margin-top: 6px !important;
    font-size: 12px !important;
    color: color-mix(in srgb, var(--muted) 82%, #ffffff 18%) !important;
}
.language-popup-close {
    width: 38px;
    height: 38px;
    border: 1px solid rgba(122, 91, 62, 0.2);
    border-radius: 999px;
    background: #fff;
    color: var(--text);
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
}
.language-popup-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}
.language-choice-btn {
    min-height: 48px;
    border-radius: 14px;
    border: 1px solid rgba(122, 91, 62, 0.18);
    background: #fff;
    color: var(--text);
    font-weight: 700;
    letter-spacing: .01em;
    cursor: pointer;
    transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
.language-choice-btn:hover {
    background: color-mix(in srgb, var(--brand) 8%, #ffffff 92%);
    border-color: color-mix(in srgb, var(--brand) 28%, #ffffff 72%);
    transform: translateY(-1px);
}
.language-popup-helper {
    position: absolute;
    left: -9999px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
body.language-popup-open {
    overflow: hidden;
}
.brand strong { font-size: 18px; letter-spacing: .03em; }
.brand small { text-transform: uppercase; letter-spacing: .08em; font-size: 11px; }
.brand-mark {
    background: linear-gradient(135deg, var(--brand), var(--accent));
    box-shadow: none;
}
.page-wrap { padding: 38px 0 72px; }
.auth-layout-main {
    min-height: 100vh;
    width: 100%;
    padding: 0;
}
.auth-shell-page {
    overflow-x: hidden;
}
.btn {
    background: var(--button-bg, var(--brand));
    color: var(--button-text, #fff);
    border-radius: 999px;
    padding: 13px 22px;
    box-shadow: none;
    text-transform: uppercase;
    letter-spacing: .06em;
    font-size: 12px;
}
.btn:hover { background: var(--accent); }
.btn-light {
    background: var(--card);
    color: var(--text);
    border: 1px solid rgba(47, 42, 37, 0.12);
}
.btn-dark {
    background: var(--text);
    color: #fff;
    border: 0;
}
.eyebrow, .meta {
    color: var(--brand);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .16em;
}
h1 {
    font-size: clamp(40px, 5.2vw, 76px);
    font-size: var(--font-size-headings, clamp(40px, 5.2vw, 76px));
    line-height: .98;
    letter-spacing: -.03em;
}
h2 {
    font-size: clamp(28px, 3.4vw, 42px);
    font-size: calc(var(--font-size-headings, 28px) * 0.78);
    letter-spacing: -.02em;
}
.lead {
    color: var(--muted);
    font-size: 18px;
    max-width: 640px;
}
.lead-small { color: var(--muted); }
.content-card, .hero-card, .shop-hero, .content-hero, .showcase-card, .feature-card, .info-banner, .builder-section-inner, .builder-copy-card, .builder-mini-card, .builder-faq-item {
    border-radius: 28px;
    border-color: rgba(122, 91, 62, 0.10);
    box-shadow: 0 18px 50px rgba(47, 42, 37, 0.06);
}
.page-hero-banner {
    position: relative;
    overflow: hidden;
    min-height: 520px;
    margin-bottom: 24px;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    border-radius: 0;
    background:
        var(--hero-background-image, linear-gradient(135deg, color-mix(in srgb, var(--brand) 28%, #ffffff 72%), color-mix(in srgb, var(--accent) 18%, var(--bg) 82%)));
    background-position: center;
    background-size: cover;
    color: #fff;
}
.page-wrap > .page-hero-banner:first-child {
    margin-top: -38px;
}
.page-hero-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(0deg, rgba(18, 27, 39, 0.66), rgba(18, 27, 39, 0.22)),
        linear-gradient(0deg, var(--hero-overlay, #5a96d6), var(--hero-overlay, #5a96d6));
    opacity: var(--hero-overlay-opacity, .82);
}
.page-hero-banner::after {
    display:none !important;
    content:none !important;
    background:transparent !important;
    clip-path:none !important;
}
.page-hero-banner-inner {
    position: relative;
    z-index: 1;
    min-height: 520px;
    display: flex;
    align-items: center;
    padding: 84px 0 120px;
}
.page-hero-banner-copy {
    max-width: min(760px, 100%);
    display: grid;
    gap: 18px;
}
.page-hero-banner .eyebrow,
.page-hero-banner h1,
.page-hero-banner .lead {
    color: #fff;
}
.page-hero-banner .eyebrow {
    opacity: .88;
}
.page-hero-banner h1 {
    max-width: 760px;
    font-size: var(--font-size-hero-title, clamp(2.5rem, 7vw, 5rem));
}
.page-hero-banner .lead {
    max-width: 720px;
    font-size: var(--font-size-hero-text, 18px);
    line-height: 1.7;
}
.page-hero-banner .btn-light {
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.22);
    color: #fff;
}
.page-hero-banner .btn-light:hover {
    background: rgba(255, 255, 255, 0.22);
}
.private-store-overlay {
    position: fixed;
    inset: 0;
    z-index: 45;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
    background:
        linear-gradient(0deg, rgba(15, 23, 42, 0.24), rgba(15, 23, 42, 0.24)),
        var(--private-overlay-background-image, linear-gradient(135deg, color-mix(in srgb, var(--brand) 18%, #ffffff 82%), color-mix(in srgb, var(--accent) 20%, #ffffff 80%)));
    background-position: center;
    background-size: cover;
}
.private-store-overlay::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(0deg, rgba(9, 14, 24, 0.72), rgba(9, 14, 24, 0.42)),
        linear-gradient(0deg, var(--private-overlay-color, #0f172a), var(--private-overlay-color, #0f172a));
    opacity: var(--private-overlay-opacity, .72);
}
.private-store-overlay-dialog {
    position: relative;
    z-index: 1;
    width: min(680px, 100%);
    padding: 42px;
    border-radius: 32px;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.24);
    box-shadow: 0 24px 80px rgba(15, 23, 42, 0.24);
    backdrop-filter: blur(20px);
    color: #fff;
    text-align: center;
}
.private-store-overlay-dialog .eyebrow,
.private-store-overlay-dialog h2,
.private-store-overlay-dialog p {
    color: #fff;
}
.private-store-overlay-dialog h2 {
    margin-bottom: 16px;
    font-size: clamp(34px, 5vw, 58px);
    line-height: .95;
}
.private-store-overlay-dialog p {
    margin: 0 auto;
    max-width: 560px;
    font-size: 18px;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.9);
}
.private-store-overlay-actions {
    display: flex;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 28px;
}
.private-store-overlay-actions .btn-light {
    background: rgba(255,255,255,.12);
    border-color: rgba(255,255,255,.24);
    color: #fff;
}
.private-store-overlay-actions .btn-light:hover {
    background: rgba(255,255,255,.2);
}
.auth-overlay-shell {
    position: relative;
    width: 100vw;
    min-height: 100vh;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-top: 0;
    padding: 52px 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background:
        linear-gradient(0deg, rgba(15, 23, 42, 0.22), rgba(15, 23, 42, 0.22)),
        var(--auth-overlay-image, linear-gradient(135deg, color-mix(in srgb, var(--brand) 16%, #ffffff 84%), color-mix(in srgb, var(--accent) 18%, #ffffff 82%)));
    background-position: center;
    background-size: cover;
}
.auth-overlay-shell::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(0deg, rgba(9, 14, 24, 0.72), rgba(9, 14, 24, 0.42)),
        linear-gradient(0deg, var(--auth-overlay-color, #102033), var(--auth-overlay-color, #102033));
    opacity: var(--auth-overlay-opacity, .72);
}
.auth-overlay-shell::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 14% 22%, rgba(255,255,255,.28), transparent 0 26%),
        radial-gradient(circle at 82% 18%, rgba(255,255,255,.16), transparent 0 22%),
        radial-gradient(circle at 72% 78%, rgba(255,255,255,.14), transparent 0 24%);
    opacity: .72;
    pointer-events: none;
}
.auth-overlay-panel {
    position: relative;
    z-index: 1;
    width: min(1400px, 100%);
    display: grid;
    grid-template-columns: minmax(360px, 1fr) minmax(420px, 560px);
    gap: 36px;
    align-items: center;
}
.auth-overlay-brand {
    color: #fff;
    display: grid;
    gap: 18px;
    align-content: center;
    padding: 26px 0;
}
.auth-overlay-brand::before {
    content: "";
    width: min(520px, 92%);
    height: 1px;
    background: linear-gradient(90deg, rgba(255,255,255,.34), rgba(255,255,255,0));
}
.auth-overlay-brand-link {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    color: #fff;
}
.auth-overlay-logo {
    width: clamp(110px, 16vw, 220px);
    min-height: 72px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    border-radius: 22px;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.18);
    backdrop-filter: blur(12px);
}
.auth-overlay-logo img {
    max-width: 100%;
    max-height: 56px;
    display: block;
    object-fit: contain;
}
.auth-overlay-brand-copy {
    display: grid;
    gap: 6px;
}
.auth-overlay-brand-copy strong {
    font-size: clamp(24px, 3vw, 40px);
    line-height: 1;
    letter-spacing: -.03em;
}
.auth-overlay-brand-copy small {
    color: rgba(255,255,255,.8);
    text-transform: uppercase;
    letter-spacing: .12em;
    font-size: 11px;
    font-weight: 700;
}
.auth-overlay-locale-switch {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.auth-overlay-locale-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.22);
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(10px);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .02em;
}
.auth-overlay-locale-link.is-active,
.auth-overlay-locale-link:hover {
    background: #fff;
    border-color: #fff;
    color: var(--text);
}
.auth-overlay-card {
    padding: 34px;
    border-radius: 30px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.94), rgba(255,255,255,.84));
    border: 1px solid rgba(255,255,255,.34);
    box-shadow:
        0 32px 90px rgba(15, 23, 42, 0.26),
        inset 0 1px 0 rgba(255,255,255,.72);
    backdrop-filter: blur(22px) saturate(120%);
}
.auth-overlay-card h1 {
    font-size: clamp(32px, 4vw, 52px);
    margin-bottom: 12px;
}
.auth-overlay-card .lead {
    max-width: none;
    margin-bottom: 24px;
}
.auth-overlay-card form {
    margin-top: 10px;
}
.auth-overlay-card .btn {
    width: 100%;
}
.auth-popup {
    position: fixed;
    inset: 0;
    z-index: 80;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 28px 18px;
    background: rgba(9, 14, 24, 0.22);
    backdrop-filter: blur(10px);
}
.auth-popup-dialog {
    position: relative;
    width: min(560px, 100%);
    padding: 26px 26px 22px;
    border-radius: 28px;
    background: rgba(255,255,255,.96);
    border: 1px solid rgba(255,255,255,.36);
    box-shadow: 0 26px 90px rgba(15, 23, 42, 0.22);
}
.auth-popup-dialog strong {
    display: block;
    margin-bottom: 10px;
    font-size: 18px;
}
.auth-popup-dialog p {
    margin: 0;
    color: var(--muted);
    line-height: 1.65;
}
.auth-popup-error .auth-popup-dialog {
    border-color: rgba(180, 35, 24, 0.16);
}
.auth-popup-success .auth-popup-dialog {
    border-color: rgba(4, 120, 87, 0.18);
}
.auth-popup-close {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 999px;
    background: rgba(16,32,51,.06);
    color: var(--text);
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}
.auth-overlay-switch {
    margin: 18px 0 0;
    color: var(--muted);
    font-size: 14px;
}
.auth-overlay-switch a {
    font-weight: 700;
}
.bisum-hero {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 20px;
    margin-bottom: 24px;
}
.bisum-hero-copy,
.bisum-hero-card {
    background: linear-gradient(180deg, color-mix(in srgb, var(--card) 96%, #ffffff 4%), color-mix(in srgb, var(--bg) 84%, #ffffff 16%));
    border: 1px solid rgba(122, 91, 62, 0.10);
    border-radius: 30px;
    padding: 40px;
    min-height: 520px;
    box-shadow: 0 22px 60px rgba(47, 42, 37, 0.08);
}
.bisum-hero-card {
    background:
        linear-gradient(180deg, rgba(255,255,255,.84), rgba(247,241,233,.96)),
        url('https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?auto=format&fit=crop&w=1200&q=80') center/cover;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.bisum-hero-card p { color: #4c433b; max-width: 460px; }
.service-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 16px;
    margin-bottom: 24px;
}
.home-story-stack {
    display: grid;
    gap: 26px;
}
.service-strip-spotlight {
    position: relative;
}
.service-tile {
    background: var(--card);
    border: 1px solid rgba(122, 91, 62, 0.10);
    border-radius: 24px;
    padding: 22px 24px;
    display: grid;
    gap: 10px;
    min-height: 100%;
    box-shadow: 0 22px 48px rgba(14, 32, 56, 0.08);
}
.service-tile strong {
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.service-tile span { color: var(--muted); }
.service-tile-icon {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    letter-spacing: .08em;
    font-size: 13px;
    color: #fff;
    background: linear-gradient(135deg, var(--brand), color-mix(in srgb, var(--accent) 72%, #ffcc6e 28%));
    box-shadow: 0 16px 32px rgba(11, 99, 206, 0.22);
}
.promo-band {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 16px;
}
.promo-band-card {
    background: linear-gradient(135deg, var(--brand), var(--accent));
    color: #fff;
    border-radius: 28px;
    padding: 26px 28px;
    display: grid;
    gap: 10px;
}
.promo-band-card .eyebrow,
.promo-band-card strong,
.promo-band-card span { color: #fff; }
.promo-band-card strong {
    font-size: 26px;
    letter-spacing: -.02em;
}
.home-editorial-band {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(320px, .9fr);
    gap: 18px;
}
.home-editorial-lead,
.home-editorial-mini,
.home-editorial-note,
.home-section-shell {
    position: relative;
    overflow: hidden;
    border-radius: 30px;
    border: 1px solid rgba(122, 91, 62, 0.10);
    box-shadow: 0 24px 60px rgba(13, 31, 56, 0.10);
}
.home-editorial-lead {
    min-height: 320px;
    padding: 34px 34px 30px;
    display: grid;
    align-content: end;
    gap: 12px;
    background:
        linear-gradient(145deg, rgba(6, 24, 44, 0.16), rgba(6, 24, 44, 0.74)),
        radial-gradient(circle at top right, rgba(255,255,255,.18), transparent 28%),
        linear-gradient(135deg, var(--brand), color-mix(in srgb, var(--accent) 60%, #ffbf69 40%));
    color: #fff;
}
.home-editorial-lead .eyebrow,
.home-editorial-lead strong,
.home-editorial-lead p,
.home-editorial-cta {
    color: #fff;
}
.home-editorial-lead strong {
    font-size: clamp(32px, 4vw, 48px);
    line-height: .98;
    letter-spacing: -.04em;
}
.home-editorial-lead p {
    max-width: 540px;
    font-size: 17px;
    line-height: 1.7;
    opacity: .92;
}
.home-editorial-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 700;
}
.home-editorial-cta::after {
    content: ">";
    font-size: 16px;
}
.home-editorial-side {
    display: grid;
    gap: 18px;
}
.home-editorial-mini,
.home-editorial-note {
    padding: 26px 28px;
    display: grid;
    gap: 10px;
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,241,233,.92));
}
.home-editorial-mini strong,
.home-editorial-note strong {
    font-size: 24px;
    line-height: 1.08;
    letter-spacing: -.03em;
}
.home-editorial-mini p,
.home-editorial-note p {
    margin: 0;
    color: var(--muted);
}
.home-section-shell {
    padding: 28px;
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,249,253,.95));
}
.home-section-shell-soft {
    background:
        radial-gradient(circle at top right, rgba(124, 77, 255, 0.10), transparent 26%),
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,248,252,.95));
}
.section-head { margin-bottom: 18px; }
.feature-grid, .product-showcase-grid { gap: 18px; }
.feature-card {
    border-radius: 26px;
    padding: 28px;
    min-height: 260px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,241,233,.94)),
        url('https://images.unsplash.com/photo-1484101403633-562f891dc89a?auto=format&fit=crop&w=900&q=80') center/cover;
    background-size: cover;
    position: relative;
    overflow: hidden;
}
.feature-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255,255,255,.60), rgba(255,255,255,.92));
}
.feature-card > * { position: relative; z-index: 1; }
.feature-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .12em;
    font-weight: 700;
    color: var(--brand-dark);
}
.feature-icon {
    background: color-mix(in srgb, var(--brand) 14%, #ffffff 86%);
    color: var(--brand);
    border-radius: 50%;
}
.showcase-card {
    padding: 22px;
    background: var(--card);
    min-height: 100%;
}
.showcase-card h3 a { color: var(--text); }
.showcase-card p { color: var(--muted); }
.showcase-overline {
    display: inline-flex;
    margin-bottom: 10px;
    color: color-mix(in srgb, var(--text) 58%, #ffffff 42%);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.showcase-badge {
    background: color-mix(in srgb, var(--brand) 10%, #ffffff 90%);
    color: var(--brand);
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: 11px;
}
.showcase-footer, .showcase-metrics {
    padding-top: 14px;
    border-top: 1px solid rgba(122, 91, 62, 0.10);
}
.chip {
    background: var(--card);
    border-color: rgba(122, 91, 62, 0.12);
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: .06em;
}
.chip-active {
    background: var(--brand);
    border-color: var(--brand);
}
.hero-card, .shop-hero, .content-hero, .info-banner {
    background: linear-gradient(180deg, color-mix(in srgb, var(--card) 96%, #ffffff 4%), color-mix(in srgb, var(--bg) 86%, #ffffff 14%));
}
.home-copy-card {
    padding: 34px;
    border-radius: 30px;
}
.site-footer {
    border-top: 1px solid rgba(122, 91, 62, 0.10);
    background: var(--footer-bg, color-mix(in srgb, var(--bg) 88%, #ffffff 12%));
    padding: 56px 0 26px;
    margin-top: 32px;
}
.footer-grid {
    display: grid;
    grid-template-columns: 1.4fr .8fr .8fr .8fr 1.2fr;
    gap: 24px;
    align-items: start;
}
.footer-brand-block p,
.footer-link-group a,
.footer-signup-block p,
.footer-contact-stack span {
    color: var(--footer-text, var(--muted));
}
.footer-link-group,
.footer-signup-block,
.footer-brand-block {
    display: grid;
    gap: 10px;
}
.footer-link-group h4,
.footer-signup-block h4 {
    margin: 0 0 6px;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.footer-link-group a {
    font-size: 14px;
    color: var(--footer-text, var(--text));
}
.footer-signup-row {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 10px;
}
.footer-signup-row input {
    border-radius: 999px;
    background: #fff;
}
.footer-bottom {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid rgba(122, 91, 62, 0.10);
    display: flex;
    justify-content: space-between;
    gap: 16px;
    color: var(--muted);
    font-size: 13px;
}
.footer-bottom-links {
    display: flex;
    gap: 16px;
}
.footer-bottom-links a { color: var(--footer-text, var(--muted)); }
.breadcrumb-shell {padding-bottom:0;}
.breadcrumb-card {
    background:var(--card);
    border:1px solid rgba(122, 91, 62, 0.10);
    border-radius:999px;
    padding:14px 20px;
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:center;
    box-shadow:0 12px 30px rgba(47,42,37,.04);
}
.breadcrumb-card a,
.breadcrumb-card span {
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--muted);
}
.breadcrumb-card span:last-child {color:var(--text);font-weight:700;}
.breadcrumb-separator {opacity:.5;}
.bisum-shop-hero {
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:20px;
    align-items:stretch;
}
.shop-hero-sidecard {
    background:var(--card);
    border:1px solid rgba(122,91,62,.10);
    border-radius:28px;
    padding:28px;
    box-shadow:0 18px 50px rgba(47,42,37,.05);
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.shop-hero-sidecard p {color:var(--muted);}
.bisum-product-card {
    position:relative;
    overflow:hidden;
}
.showcase-media {
    display:block;
    margin:-22px -22px 18px;
    min-height:220px;
    border-radius:26px 26px 0 0;
    background:
        linear-gradient(180deg, rgba(255,255,255,.04), rgba(47,42,37,.12)),
        url('https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?auto=format&fit=crop&w=1200&q=80') center/cover;
    position:relative;
}
.showcase-media-image {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
}
.showcase-media-overlay {
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(47,42,37,.14));
}
.showcase-media-label {
    position:absolute;
    left:18px;
    bottom:18px;
    z-index:1;
    display:inline-flex;
    padding:8px 12px;
    border-radius:999px;
    background:rgba(255,255,255,.92);
    color:#2f2a25;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:700;
}
.showcase-card-shop {
    padding: 0;
    overflow: hidden;
    border-radius: 30px;
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,241,233,.94));
}
.showcase-card-shop .showcase-media {
    margin: 0;
    border-radius: 30px 30px 0 0;
    min-height: 248px;
}
.shop-card-body {
    padding: 22px 22px 24px;
    display: grid;
    gap: 18px;
}
.shop-card-label-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
}
.shop-card-kicker {
    display: inline-flex;
    align-items: center;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(11, 99, 206, 0.08);
    color: var(--brand);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-weight: 800;
}
.shop-stock-pill {
    display: inline-flex;
    align-items: center;
    padding: 7px 11px;
    border-radius: 999px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-weight: 800;
}
.shop-stock-pill.is-in-stock {
    background: rgba(4, 120, 87, 0.10);
    color: #047857;
}
.shop-stock-pill.is-low-stock {
    background: rgba(180, 35, 24, 0.10);
    color: #b42318;
}
.shop-card-copy {
    display: grid;
    gap: 10px;
}
.shop-card-copy h3 {
    margin-bottom: 0;
    font-size: 18px;
    line-height: 1.15;
}
.shop-card-copy p {
    margin-bottom: 0;
    color: var(--muted);
    line-height: 1.45;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.shop-card-meta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    align-items: end;
    padding-top: 14px;
    border-top: 1px solid rgba(122,91,62,.10);
}
.shop-card-price,
.shop-card-stock {
    display: grid;
    gap: 6px;
}
.shop-card-price span,
.shop-card-stock span {
    color: #7a6a5b;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-weight: 700;
}
.shop-card-price strong {
    font-size: 28px;
    line-height: 1;
    letter-spacing: -.03em;
}
.shop-card-stock {
    justify-items: end;
}
.shop-card-stock strong {
    font-size: 18px;
    line-height: 1;
}
.shop-card-footer {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}
.shop-card-link {
    width: 100%;
    justify-content: center;
}
.shop-card-cart-form {
    display: block;
    width: 100%;
}
.shop-card-cart-form .btn {
    width: 100%;
}
.storefront-hero {
    --storefront-hero-bg-start: #3f628f;
    --storefront-hero-bg-end: #35557f;
    --storefront-hero-border: rgba(255,255,255,.14);
    --storefront-hero-divider: rgba(255,255,255,.18);
    --storefront-hero-pill-bg: rgba(255,255,255,.08);
    --storefront-hero-pill-border: rgba(255,255,255,.18);
    --storefront-hero-pill-hover: rgba(255,255,255,.14);
    --storefront-hero-overlay-color: #1f3859;
    --storefront-hero-overlay-opacity: .68;
    position: relative;
    overflow: hidden;
    margin-left: calc((100dvw - 100%) / -2);
    margin-right: calc((100dvw - 100%) / -2);
    margin-top: -38px;
    background: linear-gradient(135deg, var(--storefront-hero-bg-start) 0%, var(--storefront-hero-bg-end) 100%);
    color: #fff;
}
.storefront-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(0deg, rgba(0,0,0,0), rgba(0,0,0,0)),
        radial-gradient(circle at top right, rgba(255,255,255,.12), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0));
    pointer-events: none;
}
.storefront-hero.storefront-hero-has-media {
    background-image: var(--storefront-hero-image), linear-gradient(135deg, var(--storefront-hero-bg-start) 0%, var(--storefront-hero-bg-end) 100%);
    background-size: cover, cover;
    background-position: center center, center center;
}
.storefront-hero.storefront-hero-has-media::before {
    background:
        linear-gradient(135deg, var(--storefront-hero-overlay-color) 0%, var(--storefront-hero-overlay-color) 100%),
        radial-gradient(circle at top right, rgba(255,255,255,.12), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0));
    opacity: var(--storefront-hero-overlay-opacity);
}
.storefront-hero::after {
    content: "";
    position: absolute;
    left: -2%;
    right: -2%;
    bottom: -46px;
    height: 110px;
    background: var(--bg);
    transform: rotate(-1.4deg);
    transform-origin: right center;
    pointer-events: none;
}
.storefront-hero.storefront-hero-shape-straight::after {
    display: none;
}
.storefront-hero.storefront-hero-shape-shapes::after {
    left: auto;
    right: -74px;
    bottom: -74px;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    background: rgba(255,255,255,.11);
    transform: none;
}
.storefront-hero.storefront-hero-shape-shapes::before {
    background:
        linear-gradient(135deg, var(--storefront-hero-overlay-color) 0%, var(--storefront-hero-overlay-color) 100%),
        radial-gradient(circle at top right, rgba(255,255,255,.12), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0));
}
.storefront-hero.storefront-hero-shape-shapes .storefront-hero-shell::after {
    content: "";
    position: absolute;
    top: 22%;
    right: 10%;
    width: 160px;
    height: 160px;
    border-radius: 34px;
    border: 1px solid rgba(255,255,255,.16);
    background: rgba(255,255,255,.04);
    transform: rotate(18deg);
}
.storefront-hero-shell,
.storefront-hero-inner,
.storefront-hero-divider,
.storefront-hero-labels {
    width: min(1320px, calc(100% - 64px));
    margin-left: auto;
    margin-right: auto;
}
.storefront-hero-shell {
    position: relative;
    z-index: 2;
    padding: 46px 0 72px;
}
.storefront-hero.storefront-hero-height-sm .storefront-hero-shell {min-height: 250px;}
.storefront-hero.storefront-hero-height-md .storefront-hero-shell {min-height: 320px;}
.storefront-hero.storefront-hero-height-lg .storefront-hero-shell {min-height: 400px;}
.storefront-hero-inner {
    display: grid;
    gap: 16px;
    max-width: 820px;
}
.storefront-hero-kicker {
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: rgba(255,255,255,.84);
}
.storefront-hero h1 {
    margin: 0;
    max-width: 720px;
    font-size: var(--font-size-hero-title, clamp(3rem, 6.5vw, 5.4rem));
    line-height: .92;
    font-weight: 800;
    color: #fff;
}
.storefront-hero p {
    margin: 0;
    max-width: 760px;
    font-size: var(--font-size-hero-text, clamp(1rem, 1.55vw, 1.22rem));
    line-height: 1.75;
    color: rgba(255,255,255,.9);
}
.storefront-hero-divider {
    width: 100%;
    height: 1px;
    margin-top: 28px;
    margin-bottom: 18px;
    background: var(--storefront-hero-divider);
}
.storefront-hero-labels {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}
.storefront-hero-label {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    min-height: 44px;
    padding: 0 16px;
    border: 1px solid var(--storefront-hero-pill-border);
    border-radius: 999px;
    background: var(--storefront-hero-pill-bg);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
    transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}
.storefront-hero-label:hover,
.storefront-hero-label:focus-visible {
    color: #fff;
    text-decoration: none;
    background: var(--storefront-hero-pill-hover);
    border-color: rgba(255,255,255,.26);
    transform: translateY(-1px);
}
.storefront-hero-label small {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 26px;
    height: 26px;
    padding: 0 7px;
    border-radius: 999px;
    background: rgba(255,255,255,.12);
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .04em;
}
.storefront-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 6px;
}
.storefront-hero-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 18px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.18);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
    text-decoration: none;
    transition: transform .18s ease, background-color .18s ease, border-color .18s ease;
}
.storefront-hero-button:hover,
.storefront-hero-button:focus-visible {
    transform: translateY(-1px);
    text-decoration: none;
}
.storefront-hero-button-primary {
    background: rgba(255,255,255,.14);
    color: #fff;
}
.storefront-hero-button-primary:hover,
.storefront-hero-button-primary:focus-visible {
    background: rgba(255,255,255,.2);
    color: #fff;
}
.storefront-hero-button-secondary {
    background: transparent;
    color: rgba(255,255,255,.92);
}
.storefront-hero-button-secondary:hover,
.storefront-hero-button-secondary:focus-visible {
    border-color: rgba(255,255,255,.28);
    color: #fff;
}
.shop-landing-hero {
    --storefront-hero-bg-start: #41638f;
    --storefront-hero-bg-end: #36557d;
}
.shop-landing-hero-compact .storefront-hero-shell {
    min-height: 190px;
}
.shop-landing-hero-compact .storefront-hero-inner {
    justify-items: center;
    text-align: center;
    padding-block: 26px 34px;
}
.shop-landing-hero-compact .storefront-hero-inner h1 {
    font-size: clamp(1.8rem, 4vw, 2.45rem);
}
.checkout-onepage-hero {
    --storefront-hero-bg-start: #3b5a84;
    --storefront-hero-bg-end: #314d73;
}
.checkout-onepage-hero .storefront-hero-shell {
    min-height: 245px;
}
.checkout-onepage-hero .storefront-hero-inner {
    max-width: 760px;
    margin-inline: auto;
    justify-items: center;
    text-align: center;
    gap: .45rem;
}
.checkout-onepage-hero .storefront-hero-kicker {
    color: rgba(255,255,255,.88);
}
.checkout-onepage-hero .storefront-hero-inner p {
    position: relative;
    margin-top: .35rem;
    padding-top: 1rem;
    max-width: 720px;
}
.checkout-onepage-hero .storefront-hero-inner p::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: clamp(88px, 12vw, 132px);
    height: 1px;
    background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.82), rgba(255,255,255,0));
    transform: translateX(-50%);
    opacity: .9;
}
.checkout-onepage-hero .storefront-hero-divider,
.checkout-onepage-hero .storefront-hero-labels,
.checkout-onepage-hero .storefront-hero-actions {
    display: none;
}
.shop-reference-shell {display:grid;}
.shop-reference-layout {
    display:grid;
    grid-template-columns:minmax(220px, 300px) minmax(0,1fr);
    gap:30px;
    align-items:start;
}
.shop-category-chips {display:none;}
.shop-reference-sidebar {
    position:static;
    top:auto;
}
.shop-reference-sidebar-card {
    background:#fff;
    border:1px solid rgba(15,23,42,.08);
    border-radius:8px;
    box-shadow:none;
}
.shop-reference-results-card {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
.shop-reference-sidebar-card {
    display:grid;
    gap:22px;
    padding:22px 18px;
}
.shop-reference-filter-block {
    display:grid;
    gap:14px;
    padding-bottom:20px;
    border-bottom:1px solid rgba(15,23,42,.08);
}
.shop-reference-filter-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}
.shop-reference-filter-head h3 {
    margin:0;
    font-size:12px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:#0f172a;
}
.shop-reference-filter-head span {
    color:#94a3b8;
    font-size:11px;
    line-height:1;
    font-weight:700;
    letter-spacing:.12em;
}
.shop-reference-category-list {
    display:grid;
    gap:6px;
}
.shop-reference-category-link {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:5px 0;
    color:#334155;
    font-size:14px;
    font-weight:400;
    line-height:1.35;
    transition:color .18s ease, background-color .18s ease;
}
.shop-reference-category-link small {
    color:#94a3b8;
    font-size:12px;
    font-weight:500;
}
.shop-reference-category-item {
    display:grid;
    gap:6px;
}
.shop-reference-category-item.has-children {
    padding-bottom:4px;
}
.shop-reference-category-item.has-active-child > .shop-reference-category-link {
    color:#0f172a;
    font-weight:500;
}
.shop-reference-category-link.is-active,
.shop-reference-category-link:hover,
.shop-reference-category-link:focus-visible {
    color:#0f172a;
    text-decoration:none;
}
.shop-reference-category-link.is-active small,
.shop-reference-category-link:hover small,
.shop-reference-category-link:focus-visible small {
    color:#64748b;
}
.shop-reference-category-link.is-active {
    font-weight:600;
}
.shop-reference-subcategory-list {
    display:none;
    gap:6px;
    margin-left:10px;
    padding-left:14px;
    border-left:1px solid rgba(148,163,184,.22);
}
.shop-reference-category-item.is-expanded > .shop-reference-subcategory-list {
    display:grid;
}
.shop-reference-category-link.is-subcategory {
    font-size:13px;
    color:#64748b;
}
.shop-reference-sale-list {
    display:grid;
    gap:14px;
}
.shop-reference-sale-item {
    display:grid;
    grid-template-columns:92px minmax(0,1fr);
    gap:14px;
    align-items:start;
    color:#0f172a;
    padding:6px 0;
    margin:0;
    border-radius:8px;
    transition:opacity .18s ease;
}
.shop-reference-sale-item:hover {
    text-decoration:none;
    opacity:.76;
}
.shop-reference-sale-thumb {
    display:block;
    border-radius:8px;
    overflow:hidden;
    background:#f8fafc;
    aspect-ratio:1 / 1.2;
}
.shop-reference-sale-thumb img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.shop-reference-sale-copy {
    display:grid;
    gap:4px;
    padding-top:2px;
}
.shop-reference-sale-copy strong {
    font-size:13px;
    line-height:1.35;
    font-weight:600;
    color:#0f172a;
}
.shop-reference-sale-copy span {
    font-size:12px;
    font-weight:700;
    color:#475569;
}
.shop-range-shell-reference {
    position:relative;
    height:34px;
    display:flex;
    align-items:center;
}
.shop-range-track,
.shop-range-progress {
    position:absolute;
    left:0;
    right:0;
    height:4px;
    border-radius:999px;
    top:50%;
    transform:translateY(-50%);
}
.shop-range-track {background:#cbd5e1;}
.shop-range-progress {
    right:auto;
    background:#0f172a;
}
.shop-range-input {
    position:absolute;
    inset:0;
    width:100%;
    margin:0;
    background:transparent;
    pointer-events:none;
    appearance:none;
    -webkit-appearance:none;
}
.shop-range-input::-webkit-slider-runnable-track {height:4px; background:transparent;}
.shop-range-input::-moz-range-track {height:4px; background:transparent;}
.shop-range-input::-webkit-slider-thumb {
    -webkit-appearance:none;
    appearance:none;
    width:20px;
    height:20px;
    border-radius:50%;
    border:2px solid #0f172a;
    background:#fff;
    cursor:pointer;
    pointer-events:auto;
    margin-top:-8px;
}
.shop-range-input::-moz-range-thumb {
    width:20px;
    height:20px;
    border-radius:50%;
    border:2px solid #0f172a;
    background:#fff;
    cursor:pointer;
    pointer-events:auto;
}
.shop-reference-price-copy {
    display:grid;
    gap:4px;
    color:#64748b;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:700;
}
.shop-reference-price-copy strong {
    color:#0f172a;
    font-size:15px;
    letter-spacing:-.01em;
    text-transform:none;
}
.shop-reference-filter-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 24px;
    border-radius:8px;
    background:#0f172a;
    color:#fff;
    border:1px solid #0f172a;
    font-weight:700;
    text-decoration:none;
    cursor:pointer;
    transition:background-color .18s ease, color .18s ease;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-size:12px;
}
.shop-reference-filter-button:hover {
    background:#1e293b;
}
.shop-reference-reset {
    color:#64748b;
    font-weight:500;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.checkout-onepage-shell {
    display:grid;
    gap:24px;
}
.checkout-onepage-layout {
    display:grid;
    grid-template-columns:minmax(0, 1.5fr) minmax(320px, .78fr);
    gap:24px;
    align-items:start;
}
.checkout-onepage-main {
    display:grid;
    gap:20px;
}
.checkout-onepage-stack {
    display:grid;
    gap:20px;
}
.checkout-choice-layout {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:20px;
}
.checkout-onepage-sidebar {
    position:static;
    top:auto;
}
.checkout-panel {
    display:grid;
    gap:18px;
    padding:24px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:12px;
    background:#fff;
}
.checkout-panel-head {
    display:flex;
    align-items:flex-start;
    gap:14px;
}
.checkout-panel-head h2 {
    margin:0 0 6px;
    font-size:24px;
    color:#0f172a;
}
.checkout-panel-head p {
    margin:0;
    color:#64748b;
}
.checkout-panel-step {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:36px;
    height:36px;
    border-radius:999px;
    background:#e2e8f0;
    color:#0f172a;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
}
.checkout-cart-list {
    display:grid;
    gap:14px;
}
.checkout-cart-item {
    display:grid;
    grid-template-columns:minmax(0, 1fr) auto;
    gap:18px;
    padding:18px 0;
    border-top:1px solid rgba(15,23,42,.08);
}
.checkout-cart-item:first-child {
    padding-top:0;
    border-top:0;
}
.checkout-cart-item-kicker {
    font-size:11px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:#94a3b8;
}
.checkout-cart-item h3 {
    margin:6px 0;
    font-size:20px;
    color:#0f172a;
}
.checkout-cart-item-copy p {
    margin:0;
    color:#64748b;
    line-height:1.6;
}
.checkout-cart-item-actions {
    display:grid;
    gap:12px;
    align-content:space-between;
    min-width:220px;
}
.checkout-qty-form {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}
.checkout-qty-input {
    width:92px;
}
.checkout-cart-item-line {
    display:grid;
    justify-items:end;
    gap:6px;
}
.checkout-cart-item-line strong {
    font-size:18px;
    color:#0f172a;
}
.checkout-link-button {
    border:0;
    padding:0;
    background:transparent;
    color:#64748b;
    font:inherit;
    font-size:13px;
    font-weight:600;
    cursor:pointer;
}
.checkout-link-button:hover {
    color:#0f172a;
}
.checkout-form-grid {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:16px;
}
.checkout-choice-group {
    display:grid;
    gap:12px;
}
.checkout-choice-title {
    font-size:12px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:#64748b;
}
.checkout-choice-grid {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
}
.checkout-choice-card {
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:14px 16px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:10px;
    background:#f8fafc;
    cursor:pointer;
}
.checkout-choice-card input {
    width:auto;
    margin-top:3px;
}
.checkout-choice-card strong {
    display:block;
    margin-bottom:4px;
    color:#0f172a;
    font-size:14px;
}
.checkout-choice-card small {
    display:block;
    color:#64748b;
    font-size:12px;
    line-height:1.5;
}
.checkout-summary-panel {
    gap:16px;
}
.checkout-summary-lines,
.checkout-summary-totals {
    display:grid;
    gap:10px;
}
.checkout-summary-lines p,
.checkout-summary-totals p {
    display:flex;
    justify-content:space-between;
    gap:16px;
    margin:0;
}
.checkout-summary-lines span,
.checkout-summary-totals span {
    color:#475569;
}
.checkout-summary-lines strong,
.checkout-summary-totals strong {
    color:#0f172a;
}
.checkout-summary-grand {
    padding-top:12px;
    border-top:1px solid rgba(15,23,42,.08);
}
.checkout-summary-grand strong {
    font-size:20px;
}
.checkout-submit-button,
.checkout-back-link {
    width:100%;
    justify-content:center;
}
.checkout-empty-panel {
    max-width:760px;
}
.shop-reference-results {
    min-width:0;
}
.shop-reference-results-card {
    display:grid;
    gap:18px;
    padding:0;
}
.shop-reference-tools-card {
    background:linear-gradient(135deg, #ffffff 0%, #f6f9ff 100%);
    border:1px solid rgba(11, 99, 206, .18);
    border-radius:14px;
    padding:16px;
    box-shadow:0 14px 30px rgba(15, 23, 42, .08);
}
.shop-reference-results-card-product {
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0;
}
.bisum-product-shell .shop-reference-results-card.shop-reference-results-card-product {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
}
.shop-reference-results-head {
    display:grid;
    gap:4px;
}
.shop-reference-results-toolbar {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:14px;
    flex-wrap:wrap;
}
.shop-reference-results-meta {
    color:#7a7f89;
    font-size:12px;
}
.shop-reference-search-form {
    margin-left:auto;
    display:grid;
    grid-template-columns: minmax(180px, 1fr) minmax(170px, .9fr) minmax(220px, 1.2fr) auto;
    align-items:end;
    gap:12px;
    width:min(920px, 100%);
}
.shop-reference-filter-field {
    display:grid;
    gap:6px;
}
.shop-reference-filter-field > span {
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#44526b;
    padding-left:2px;
}
.shop-reference-search-form input[type="search"] {
    width:100%;
    height:42px;
    border:1px solid rgba(11,99,206,.22);
    border-radius:10px;
    padding:0 13px;
    background:#fff;
    color:#0f172a;
}
.shop-reference-search-form select {
    width:100%;
    height:42px;
    border:1px solid rgba(11,99,206,.22);
    border-radius:10px;
    padding:0 30px 0 10px;
    background:#fff;
    color:#0f172a;
    font-size:12px;
    font-weight:700;
    letter-spacing:.02em;
}
.shop-reference-filter-actions {
    display:flex;
    align-items:flex-end;
    gap:8px;
    min-height:42px;
}
.shop-reference-search-form button {
    height:42px;
    border:1px solid rgba(11,99,206,.22);
    border-radius:10px;
    padding:0 16px;
    background:#0b63ce;
    color:#fff;
    font-size:12px;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.shop-reference-search-reset {
    height:42px;
    display:inline-flex;
    align-items:center;
    border:1px solid rgba(15,23,42,.12);
    border-radius:10px;
    padding:0 12px;
    color:#374151;
    text-decoration:none;
    font-size:12px;
    font-weight:700;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.shop-reference-pagination {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    flex-wrap:wrap;
    padding-top:6px;
}
.shop-reference-pagination .page-link {
    min-width:36px;
    height:34px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(15,23,42,.14);
    border-radius:8px;
    padding:0 10px;
    color:#1f2937;
    text-decoration:none;
    font-size:12px;
    font-weight:700;
}
.shop-reference-pagination .page-link.is-active {
    background:#0b63ce;
    border-color:#0b63ce;
    color:#fff;
}
.shop-reference-pagination .page-link.is-disabled {
    pointer-events:none;
    opacity:.45;
}
.shop-reference-pagination .page-sep {
    color:#94a3b8;
    font-weight:700;
    font-size:12px;
}
.shop-reference-results-head p {
    margin:0;
    font-size:16px;
    color:#12100d;
}
.shop-reference-grid {
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:16px;
}
.shop-reference-card {
    display:grid;
    gap:10px;
    padding: 10px;
    border: 1px solid rgba(16, 24, 40, .08);
    border-radius: 12px;
    background: linear-gradient(180deg, #ffffff 0%, #fcfbf9 100%);
    box-shadow: 0 6px 16px rgba(15, 23, 42, .05);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.shop-reference-card:hover {
    transform: translateY(-2px);
    border-color: rgba(11, 99, 206, .22);
    box-shadow: 0 10px 24px rgba(15, 23, 42, .10);
}
.shop-reference-card-media {
    position:relative;
    display:block;
    border-radius:8px;
    overflow:hidden;
    height:260px;
    min-height:260px;
    background:transparent;
}
.shop-reference-card-media img {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    border-radius:8px;
    display:block;
    transition: transform .35s ease;
}
.shop-reference-card:hover .shop-reference-card-media img {
    transform: scale(1.03);
}
.shop-reference-badge {
    position:absolute;
    top:16px;
    left:16px;
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 12px;
    border-radius:4px;
    background:#a9c95c;
    color:#fff;
    font-size:12px;
    font-weight:700;
}
.shop-reference-badge-sale {
    left:auto;
    right:16px;
    background:#ff6d3f;
    border-radius:999px;
}
.shop-reference-badge-muted {
    background:rgba(170,166,159,.92);
}
.shop-reference-card-body {
    display:grid;
    gap:8px;
    padding: 2px 2px 6px;
    justify-items: center;
    text-align: center;
}
.shop-reference-card-labels {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
}
.shop-reference-card-label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 30px;
    padding: 0 11px;
    border-radius: 999px;
    border: 1px solid rgba(122, 91, 62, .18);
    background: #fff;
    color: #5f554d;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
}
.shop-reference-card-label i {
    font-size: 12px;
    color: #7a6a5b;
}
.shop-reference-card-label.is-ok {
    border-color: rgba(4, 120, 87, .25);
    background: rgba(4, 120, 87, .10);
    color: #047857;
}
.shop-reference-card-label.is-ok i {
    color: #047857;
}
.shop-reference-card-label.is-muted {
    border-color: rgba(180, 35, 24, .22);
    background: rgba(180, 35, 24, .08);
    color: #b42318;
}
.shop-reference-card-label.is-muted i {
    color: #b42318;
}
.shop-reference-card-body h3 {
    margin:0;
    font-size: clamp(18px, 1.2vw, 22px);
    font-weight:800;
    line-height:1.08;
    letter-spacing: -.02em;
    max-width: 18ch;
}
.shop-reference-card-body h3 a {color:#161411;}
.shop-reference-card-pricing {
    display:flex;
    align-items:center;
    justify-content: center;
    gap:10px;
    flex-wrap:wrap;
    margin-top: 2px;
}
.shop-reference-card-pricing strong {
    font-size: clamp(16px, 1.15vw, 20px);
    color: var(--brand-dark);
    letter-spacing: -.02em;
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 10px;
    border-radius: 14px;
    background: linear-gradient(180deg, color-mix(in srgb, var(--brand) 10%, #ffffff 90%) 0%, color-mix(in srgb, var(--brand) 18%, #ffffff 82%) 100%);
    border: 1px solid color-mix(in srgb, var(--brand) 32%, #ffffff 68%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .88), 0 8px 18px color-mix(in srgb, var(--brand) 18%, transparent 82%);
}
.shop-reference-card-pricing span {
    color:#b1a69a;
    text-decoration:line-through;
    font-size:14px;
}
.shop-reference-card-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    margin-top: 4px;
    border-radius: 999px;
    padding: 0 12px;
    border: 1px solid color-mix(in srgb, var(--brand) 32%, #ffffff 68%);
    background: color-mix(in srgb, var(--brand) 10%, #ffffff 90%);
    color: var(--brand-dark);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    min-width: 150px;
}
.shop-reference-card-cta:hover {
    background: var(--brand);
    border-color: var(--brand);
    color: #fff;
}
.shop-empty-state {
    grid-column: 1 / -1;
    padding: 38px 24px;
    border-radius: 32px;
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,241,233,.94));
    border: 1px solid rgba(122,91,62,.10);
    text-align: center;
    box-shadow: 0 18px 40px rgba(47,42,37,.05);
}
.shop-empty-state-icon {
    width:52px;
    height:52px;
    margin:0 auto 12px;
    border-radius:999px;
    display:grid;
    place-items:center;
    color:#0b63ce;
    font-size:20px;
    background:rgba(11,99,206,.10);
    border:1px solid rgba(11,99,206,.24);
}
.shop-empty-state h3 {
    margin:0 0 8px;
    font-size:32px;
    color:#102038;
}
.shop-empty-state p {
    margin: 0;
    color: var(--muted);
}
.shop-empty-state-cta {
    margin-top:16px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:0 16px;
    border-radius:999px;
    border:1px solid rgba(11,99,206,.24);
    background:rgba(11,99,206,.08);
    color:#0b63ce;
    font-size:12px;
    font-weight:800;
    letter-spacing:.08em;
    text-decoration:none;
    text-transform:uppercase;
}
.shop-empty-state-cta:hover {
    background:#0b63ce;
    border-color:#0b63ce;
    color:#fff;
}
.bisum-product-shell .product-detail-card {
    display:grid;
    grid-template-columns: 1.4fr .9fr;
    grid-template-areas:
        "visual purchase"
        "tabs tabs"
        "info info";
    gap:14px;
    padding:0;
    background:transparent;
    border:0;
    box-shadow:none;
    border-radius:0;
}
.bisum-product-shell .product-detail-main {
    display:contents;
}
.product-detail-visual {
    grid-area: visual;
    display:flex;
}
.product-detail-copy {
    grid-area: info;
}
.product-tabs-row {
    grid-area: tabs;
}
.product-detail-purchase-row {
    grid-area: purchase;
    width:100%;
    display:block;
}
.product-detail-purchase-row .bisum-purchase-card {
    width:100%;
    max-width:none;
    position:static;
    top:auto;
}
.product-visual-card {
    width:100%;
    background:#fff;
    border:1px solid rgba(122,91,62,.10);
    border-radius:8px;
    padding:22px;
    box-shadow:0 18px 50px rgba(47,42,37,.05);
}
.product-visual-title {
    margin: 0 0 10px;
    font-size: 20px;
    line-height: 1.15;
    color: #161310;
}
.product-visual-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-bottom:10px;
}
.product-visual-head .product-visual-title {
    margin:0;
}
.product-visual-head .showcase-badge {
    margin:0;
    white-space:nowrap;
}
.product-visual-placeholder {
    position:relative;
    min-height:420px;
    border-radius:22px;
    overflow:hidden;
    background:
        linear-gradient(180deg, rgba(255,255,255,.06), rgba(47,42,37,.08)),
        url('https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?auto=format&fit=crop&w=1200&q=80') center/cover;
    display:flex;
    align-items:flex-end;
    padding:22px;
}
.product-visual-placeholder span {
    display:inline-flex;
    padding:10px 14px;
    border-radius:999px;
    background:rgba(255,255,255,.94);
    color:#2f2a25;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:700;
}
.showcase-media-meta {
    position:absolute;
    right:18px;
    top:18px;
    z-index:1;
    display:inline-flex;
    align-items:center;
    padding:8px 12px;
    border-radius:999px;
    background:rgba(12, 95, 121, .88);
    color:#fff;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:700;
}
.product-gallery-stack {
    display:grid;
    gap:14px;
}
.product-gallery-main {
    position:relative;
    border-radius:8px;
    overflow:hidden;
    background:#f7f4ef;
    min-height:420px;
}
.product-gallery-main img {
    width:100%;
    height:420px;
    object-fit:cover;
    display:block;
}
.product-gallery-thumbs {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(78px,1fr));
    gap:10px;
}
.product-gallery-thumb {
    border:1px solid rgba(122,91,62,.16);
    background:#fff;
    border-radius:18px;
    overflow:hidden;
    padding:0;
    transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.product-gallery-thumb.is-active {
    border-color:#0d5f7a;
    box-shadow:0 10px 24px rgba(13,95,122,.12);
    transform:translateY(-1px);
}
.product-gallery-thumb img {
    width:100%;
    height:82px;
    object-fit:cover;
    display:block;
}
.product-gallery-caption {
    color:var(--muted);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.product-image-labels {
    position:absolute;
    left:12px;
    right:12px;
    bottom:12px;
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    z-index:2;
}
.product-label-chip {
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:0 11px;
    border-radius:999px;
    border:1px solid rgba(122,91,62,.16);
    background:rgba(255,255,255,.94);
    color:#2f2a25;
    font-size:11px;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.product-label-chip-category {
    background:rgba(230,240,255,.94);
    border-color:rgba(11,99,206,.22);
    color:#0b63ce;
}
.bisum-product-shell .product-detail-copy {
    background:#fff;
    border:1px solid rgba(122,91,62,.10);
    border-radius:8px;
    padding:32px;
    box-shadow:0 18px 50px rgba(47,42,37,.05);
}
.product-availability-chip,
.product-sku-chip {
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:8px 12px;
    font-size:11px;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.product-availability-chip.product-availability-ok {
    background:#ecfdf3;
    color:#047857;
    border:1px solid #abefc6;
}
.product-availability-chip.product-availability-warn {
    background:#fffaeb;
    color:#b54708;
    border:1px solid #fedf89;
}
.product-availability-chip.product-availability-danger {
    background:#fef3f2;
    color:#b42318;
    border:1px solid #fecdca;
}
.product-sku-chip {
    background:#f7f4ef;
    color:#5f554d;
    border:1px solid rgba(122,91,62,.16);
}
.product-sku-chip strong {
    margin-left:6px;
    color:#2f2a25;
}
.product-tabs {
    margin-top: 18px;
    display: grid;
    gap: 12px;
}
.product-tabs-content {
    margin-top: 6px;
}
.product-tab-nav {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    border-bottom: 1px solid rgba(122,91,62,.12);
    padding-bottom: 10px;
}
.product-tab-btn {
    border: 1px solid rgba(122,91,62,.16);
    background: #fff;
    color: #5f554d;
    border-radius: 999px;
    min-height: 34px;
    padding: 0 14px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    cursor: pointer;
}
.product-tab-btn.is-active {
    background: #0b63ce;
    border-color: #0b63ce;
    color: #fff;
}
.product-tab-nav-cards {
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 8px;
    background: #fff;
    padding: 10px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}
.product-tab-btn-card {
    min-height: 56px;
    border-radius: 8px;
    border: 1px solid rgba(241, 147, 53, 0.45);
    background: #fff;
    color: #172033;
    text-transform: uppercase;
    letter-spacing: .08em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 700;
}
.product-tab-btn-card i {
    font-size: 14px;
    color: #f19335;
}
.product-tab-btn-card.is-active {
    background: #fbefe2;
    border-color: #f0b16d;
    color: #172033;
}
.product-tab-panel {
    display: none;
}
.product-tab-panel.is-active {
    display: block;
}
.product-tab-empty {
    margin: 0;
    color: var(--muted);
}
.product-bulk-pricing-tab {
    background: #fff;
}
.product-attributes-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin:0 0 22px;
}
.product-attribute-card {
    border:1px solid rgba(122,91,62,.12);
    border-radius:18px;
    padding:14px 16px;
    background:var(--card-soft);
    display:grid;
    gap:6px;
}
.product-attribute-card span {
    color:var(--muted);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.product-bulk-pricing {
    display:grid;
    gap:10px;
    border:1px solid rgba(122,91,62,.12);
    border-radius:20px;
    padding:16px 18px;
    background:#fffaf2;
}
.product-bulk-pricing ul {
    margin:0;
    padding:0;
    list-style:none;
    display:grid;
    gap:8px;
}
.product-bulk-pricing li {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    font-size:14px;
}
.bisum-purchase-card {
    top:110px;
    background:#fff;
    border-radius:8px;
}
.purchase-card-meta-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-bottom:6px;
}
.purchase-meta-chips {
    display:inline-flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
}
.purchase-sku-chip {
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:7px 11px;
    background:#f7f4ef;
    color:#5f554d;
    border:1px solid rgba(122,91,62,.16);
    font-size:11px;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
    white-space:nowrap;
}
.purchase-sku-chip strong {
    margin-left:6px;
    color:#2f2a25;
}
.purchase-availability-chip {
    white-space:nowrap;
}
.purchase-inline-note {
    font-size:12px;
    color:#6f6258;
    background:#f8f4ed;
    border:1px solid rgba(122,91,62,.12);
    border-radius:14px;
    padding:10px 12px;
}
.product-mobile-bar {
    display:none;
}
.product-mobile-bar-btn.is-disabled,
.product-mobile-bar-btn:disabled {
    opacity:.55;
    cursor:not-allowed;
    pointer-events:none;
}
.purchase-meta-strip {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:18px;
    padding-top:18px;
    border-top:1px solid rgba(122,91,62,.10);
}
.purchase-meta-label {
    display:grid;
    grid-template-columns:auto 1fr;
    column-gap:8px;
    align-items:center;
    gap:4px;
    min-width:112px;
    padding:10px 12px;
    border-radius:14px;
    border:1px solid rgba(35,52,84,.10);
    background:linear-gradient(180deg,#ffffff 0%, #f8fbff 100%);
    box-shadow:0 8px 20px rgba(18, 35, 67, .06);
}
.purchase-meta-label i {
    grid-row:1 / span 2;
    font-size:14px;
    opacity:.88;
}
.purchase-meta-label small {
    margin:0;
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:.1em;
    color:#6d7e9f;
    font-weight:700;
}
.purchase-meta-label strong {
    margin:0;
    font-size:16px;
    line-height:1.1;
    letter-spacing:.01em;
    color:#12284c;
    text-transform:uppercase;
}
.purchase-meta-label-sku {border-color:#d8dcef; background:linear-gradient(180deg,#fff 0%,#f7f8fc 100%);}
.purchase-meta-label-status {border-color:#cfeadf; background:linear-gradient(180deg,#fff 0%,#f2fcf6 100%);}
.purchase-meta-label-stock {border-color:#d6e5ff; background:linear-gradient(180deg,#fff 0%,#eff5ff 100%);}
.purchase-meta-label-sku i {color:#4d6091;}
.purchase-meta-label-status i {color:#0f7a4d;}
.purchase-meta-label-stock i {color:#123e7a;}
.purchase-meta-label-status strong {color:#0f7a4d;}
.purchase-meta-label-stock strong {color:#123e7a;}

.product-reviews-list {
    display:grid;
    gap:12px;
}
.product-review-item {
    border:1px solid rgba(23,35,56,.10);
    border-radius:12px;
    background:#fff;
    padding:14px;
    display:grid;
    gap:6px;
}
.product-review-stars {
    font-size:13px;
    letter-spacing:.12em;
    color:#f59d2a;
    font-weight:700;
}
.product-review-item strong {
    margin:0;
    font-size:15px;
    color:#162742;
}
.product-review-item p {
    margin:0;
    color:#3f5270;
    line-height:1.5;
}
.product-review-item span {
    font-size:12px;
    color:#6f7f97;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:700;
}

@media (max-width: 1100px) {
    .storefront-hero {
        margin-top: -24px;
    }
    .storefront-hero-shell {
        width: min(1320px, calc(100% - 44px));
        padding: 34px 0 58px;
    }
    .storefront-hero-divider {
        margin-top: 22px;
        margin-bottom: 16px;
    }
    .page-hero-banner,
    .page-hero-banner-inner {
        min-height: 460px;
    }
    .bisum-hero,
    .footer-grid,
    .service-strip,
    .promo-band,
    .bisum-shop-hero,
    .bisum-product-shell .product-detail-card {
        grid-template-columns: 1fr;
        grid-template-areas:
            "visual"
            "purchase"
            "tabs"
            "info";
    }
    .bisum-hero-copy,
    .bisum-hero-card { min-height: auto; }
    .shop-reference-layout {
        grid-template-columns: 1fr;
    }
    .shop-reference-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .shop-reference-sidebar {
        position: static;
    }
    .checkout-onepage-layout {
        grid-template-columns:1fr;
    }
    .checkout-choice-layout {
        grid-template-columns:1fr;
    }
    .checkout-onepage-sidebar {
        position:static;
    }
    .product-mobile-bar {
        position:fixed;
        left:10px;
        right:10px;
        bottom:10px;
        z-index:79;
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        padding:12px;
        border-radius:18px;
        border:1px solid rgba(122,91,62,.16);
        background:rgba(255,255,255,.96);
        backdrop-filter:blur(6px);
        box-shadow:0 14px 36px rgba(15,23,42,.18);
    }
    .product-mobile-bar-copy {
        display:grid;
        gap:3px;
    }
    .product-mobile-bar-copy span {
        font-size:11px;
        text-transform:uppercase;
        letter-spacing:.08em;
        color:#6f6258;
        font-weight:700;
    }
    .product-mobile-bar-copy strong {
        font-size:18px;
        line-height:1.05;
        color:#161310;
    }
    .product-mobile-bar-btn {
        white-space:nowrap;
        min-height:46px;
        padding:12px 16px;
    }
    .product-tab-nav-cards {
        grid-template-columns: 1fr;
    }
    .product-visual-head {
        align-items:flex-start;
        flex-direction:column;
    }
    .product-mobile-qty {
        display:inline-flex;
        align-items:center;
        border:1px solid rgba(122,91,62,.2);
        border-radius:12px;
        overflow:hidden;
        background:#fff;
        flex:0 0 auto;
    }
    .product-mobile-qty-btn {
        width:34px;
        height:40px;
        border:0;
        background:#f8f4ed;
        color:#2f2a25;
        font-size:18px;
        line-height:1;
        cursor:pointer;
    }
    .product-mobile-qty-input {
        width:44px;
        border:0;
        text-align:center;
        font-weight:700;
        color:#161310;
        padding:0;
        height:40px;
        -moz-appearance:textfield;
    }
    .product-mobile-qty-input::-webkit-outer-spin-button,
    .product-mobile-qty-input::-webkit-inner-spin-button {
        -webkit-appearance:none;
        margin:0;
    }
    .product-detail-shell {
        padding-bottom:88px;
    }
}

@media (max-width: 760px) {
    .auth-overlay-shell {
        min-height: 100vh;
        padding: 28px 18px;
    }
    .auth-overlay-panel {
        grid-template-columns: 1fr;
        gap: 18px;
    }
    .auth-overlay-brand {
        justify-items: center;
        text-align: center;
        padding: 0;
    }
    .auth-overlay-locale-switch {
        justify-content: center;
    }
    .auth-overlay-brand-link {
        flex-direction: column;
    }
    .auth-overlay-card {
        padding: 26px 20px;
        border-radius: 24px;
    }
    .private-store-overlay {
        padding: 18px;
    }
    .private-store-overlay-dialog {
        padding: 28px 22px;
        border-radius: 24px;
    }
    .private-store-overlay-actions {
        flex-direction: column;
    }
    .shop-card-meta,
    .shop-card-footer {
        grid-template-columns: 1fr;
    }
    .shop-category-chips {
        display: flex;
    }
    .storefront-hero-shell,
    .storefront-hero-inner,
    .storefront-hero-divider,
    .storefront-hero-labels {
        width: min(1320px, calc(100% - 32px));
    }
    .storefront-hero h1 {
        font-size: var(--font-size-hero-title, clamp(2.45rem, 12vw, 4rem));
    }
    .storefront-hero p {
        font-size: var(--font-size-hero-text, 1rem);
        line-height: 1.65;
    }
    .storefront-hero-labels {
        gap: 10px;
    }
    .storefront-hero-label {
        min-height: 38px;
        padding: 0 12px;
    }
    .storefront-hero::after {
        bottom: -30px;
        height: 76px;
    }
    .shop-reference-sidebar-card,
    .shop-reference-results-card {
        border-radius:8px;
    }
    .shop-reference-results-card {
        padding:0;
    }
    .shop-reference-tools-card {
        padding:12px;
    }
    .shop-reference-results-toolbar {
        align-items:stretch;
    }
    .shop-reference-search-form {
        width:100%;
        margin-left:0;
        grid-template-columns:1fr;
        align-items:stretch;
        gap:10px;
    }
    .shop-reference-search-form input[type="search"] {
        width:100%;
    }
    .shop-reference-filter-actions {
        align-items:stretch;
        justify-content:flex-start;
        flex-wrap:wrap;
    }
    .shop-reference-search-form select {
        width:100%;
    }
    .shop-reference-search-form button,
    .shop-reference-search-reset {
        height:40px;
    }
    .shop-reference-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }
    .checkout-panel {
        padding:20px;
    }
    .checkout-choice-grid,
    .checkout-form-grid,
    .checkout-cart-item {
        grid-template-columns:1fr;
    }
    .checkout-cart-item-actions,
    .checkout-cart-item-line {
        min-width:0;
        justify-items:start;
    }
    .checkout-qty-form {
        justify-content:flex-start;
    }
    .shop-reference-card-media {
        height: 220px;
        min-height: 220px;
    }
    .shop-reference-card-body h3,
    .shop-reference-card-pricing strong {
        font-size: 20px;
    }
    .shop-reference-sale-item {
        grid-template-columns:72px minmax(0,1fr);
    }
    .product-attributes-grid {
        grid-template-columns: 1fr;
    }
    .product-gallery-main img {
        height: 320px;
    }
    .builder-carousel-track {grid-auto-columns:minmax(82vw,1fr);}
    .builder-preview-spotlight {
        grid-template-columns: 1fr;
    }
    .builder-preview-circle {
        width: 150px;
        height: 150px;
        margin: 0 auto;
    }
    .builder-spotlight-copy h2 {
        font-size: 38px;
    }
    .builder-spotlight-media {
        width: min(320px,100%);
    }
    .builder-spotlight-accent-shape {
        width: 180px;
        height: 120px;
        bottom: 6px;
    }
    .page-wrap > .page-hero-banner:first-child {
        margin-top: -38px;
    }
    .page-hero-banner {
        min-height: 420px;
        border-radius: 0;
    }
    .page-hero-banner-inner {
        min-height: 420px;
        padding: 64px 0 96px;
    }
    .footer-signup-row,
    .topbar-row { grid-template-columns: 1fr; }
    .footer-bottom { flex-direction: column; }
    .bisum-hero-copy,
    .bisum-hero-card { padding: 28px; }
    .nav-row {
        grid-template-columns: 1fr;
        justify-items: start;
    }
    .nav-links-centered,
    .header-actions {
        width: 100%;
        justify-content: flex-start;
    }
    .language-popup {
        width: calc(100% - 22px);
        padding: 20px;
        border-radius: 20px;
    }
    .language-popup-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .nav-mega-menu,
    .nav-mega-menu-compact {
        position: static;
        transform: none;
        min-width: 0;
        width: 100%;
        margin-top: 12px;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        display: none;
    }
    .nav-dropdown:hover .nav-mega-menu,
    .nav-dropdown:focus-within .nav-mega-menu {
        display: block;
        transform: none;
    }
    .nav-mega-grid,
    .nav-mega-menu-compact .nav-mega-grid {
        grid-template-columns: 1fr;
    }
    .nav-mega-intro {
        padding: 22px 22px 18px;
        border-right: 0;
        border-bottom: 1px solid rgba(16, 32, 51, 0.08);
    }
    .nav-mega-column-links {
        grid-template-columns: 1fr;
        padding: 18px 22px 22px;
        grid-template-rows: none;
        grid-auto-flow: row;
    }
    .topbar-col,
    .topbar-col-center,
    .topbar-col-end {
        justify-content: flex-start;
        text-align: left;
    }
    .topbar-col-end {
        gap: 10px;
    }
    .topbar-link-promo {
        padding: 0;
        justify-content: flex-start;
    }
}

@media (max-width: 560px) {
    .shop-reference-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 980px) {
    .home-editorial-band {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .service-strip {
        grid-template-columns: 1fr;
    }
    .home-section-shell,
    .home-copy-card,
    .home-editorial-lead,
    .home-editorial-mini,
    .home-editorial-note {
        padding: 22px;
        border-radius: 24px;
    }
}

/* Final typography overrides for admin-configured storefront fonts */
body {
    font-family: var(--font-body, Inter, Arial, Helvetica, sans-serif) !important;
    font-size: var(--font-size-body, 16px) !important;
    font-weight: var(--font-weight-body, 400) !important;
}
.site-topbar,
.site-topbar .topbar-link,
.site-topbar .topbar-locale-link,
.site-topbar a,
.site-topbar span {
    font-family: var(--font-topbar, Inter, Arial, Helvetica, sans-serif) !important;
    font-size: var(--font-size-topbar, 12px) !important;
    font-weight: var(--font-weight-topbar, 600) !important;
    text-transform: var(--font-transform-topbar, uppercase) !important;
}
.site-header .brand,
.site-header .brand strong,
.site-header .brand small,
.site-header .header-actions,
.site-header .header-actions > a,
.header-icon-glyph,
.header-icon-counter {
    font-family: var(--font-header, Inter, Arial, Helvetica, sans-serif) !important;
    font-size: var(--font-size-header, inherit) !important;
    font-weight: var(--font-weight-header, 700) !important;
    text-transform: var(--font-transform-header, none) !important;
}
.nav-links,
.nav-links > a,
.nav-dropdown-toggle,
.nav-mega-menu,
.nav-mega-menu a,
.nav-mega-menu strong,
.nav-mega-menu small,
.nav-item-icon,
.nav-mega-eyebrow {
    font-family: var(--font-menu, Inter, Arial, Helvetica, sans-serif) !important;
    font-size: var(--font-size-menu, 13px) !important;
    font-weight: var(--font-weight-menu, 700) !important;
    text-transform: var(--font-transform-menu, uppercase) !important;
}
.nav-mega-intro,
.nav-mega-intro a {
    font-family: var(--font-menu-mega-intro, var(--font-menu, Inter, Arial, Helvetica, sans-serif)) !important;
    font-size: var(--font-size-menu-mega-intro, var(--font-size-menu, 13px)) !important;
    text-transform: var(--font-transform-menu-mega-intro, var(--font-transform-menu, uppercase)) !important;
}
.nav-mega-intro strong,
.nav-mega-intro p {
    font-family: var(--font-menu-mega-intro, var(--font-menu, Inter, Arial, Helvetica, sans-serif)) !important;
    text-transform: var(--font-transform-menu-mega-intro, var(--font-transform-menu, uppercase)) !important;
}
.nav-mega-card-link,
.nav-mega-card-link strong,
.nav-mega-card-link small {
    font-family: var(--font-menu-mega-items, var(--font-menu, Inter, Arial, Helvetica, sans-serif)) !important;
    font-size: var(--font-size-menu-mega-items, 15px) !important;
    font-weight: var(--font-weight-menu-mega-items, 600) !important;
    text-transform: var(--font-transform-menu-mega-items, var(--font-transform-menu, uppercase)) !important;
}
.site-footer,
.site-footer h4,
.site-footer a,
.site-footer p,
.site-footer span,
.site-footer input,
.site-footer button,
.footer-bottom,
.footer-bottom-links a {
    font-family: var(--font-footer, Inter, Arial, Helvetica, sans-serif) !important;
    font-size: var(--font-size-footer, inherit) !important;
    font-weight: var(--font-weight-footer, inherit) !important;
    text-transform: var(--font-transform-footer, none) !important;
}
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-headings, Inter, Arial, Helvetica, sans-serif) !important;
    font-weight: var(--font-weight-headings, 700) !important;
    text-transform: var(--font-transform-headings, none) !important;
}
h1 {
    font-size: var(--font-size-headings, clamp(40px, 5.2vw, 76px)) !important;
}
h2 {
    font-size: var(--font-size-headings, clamp(28px, 3.4vw, 42px)) !important;
}
h3 {
    font-size: var(--font-size-headings, 20px) !important;
}
.btn,
button,
input[type="submit"],
input[type="button"],
.btn-light,
.btn-dark,
.btn-sm {
    font-family: var(--font-buttons, Inter, Arial, Helvetica, sans-serif) !important;
    font-size: var(--font-size-buttons, 12px) !important;
    font-weight: var(--font-weight-buttons, 700) !important;
    text-transform: var(--font-transform-buttons, uppercase) !important;
}
.page-composer {display:grid; gap:2rem;}
.page-composer-grid {display:grid; gap:1.5rem; align-items:start;}
.page-composer-row.layout-12 .page-composer-grid {grid-template-columns:minmax(0,1fr);}
.page-composer-row.layout-6-6 .page-composer-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
.page-composer-row.layout-8-4 .page-composer-grid {grid-template-columns:minmax(0,2fr) minmax(0,1fr);}
.page-composer-row.layout-4-8 .page-composer-grid {grid-template-columns:minmax(0,1fr) minmax(0,2fr);}
.page-composer-row.layout-4-4-4 .page-composer-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
.page-composer-column {display:grid; gap:1.25rem; align-content:start;}
.commerce-widget-product-gallery {display:flex;}
.commerce-widget-product-gallery .product-visual-card {box-shadow:none; min-height:100%;}
.commerce-widget-category-intro .commerce-intro-card {display:grid; gap:.75rem; padding:28px 32px;}
.commerce-widget-category-intro h2 {margin:0; font-size:clamp(1.75rem, 2vw, 2.4rem);}
.commerce-widget-category-intro .lead {margin:0; max-width:72ch;}
.commerce-widget-product-summary .product-detail-copy {
    background:#fff;
    border:1px solid rgba(122,91,62,.10);
    border-radius:28px;
    padding:32px;
    box-shadow:0 18px 50px rgba(47,42,37,.05);
}
.commerce-widget-product-purchase .purchase-card {top:110px; background:#fff;}
.commerce-widget-product-specs .content-card {padding:28px;}
.commerce-widget-related-products {display:grid; gap:1rem;}
.commerce-review-grid {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem;}
.commerce-review-item {
    border:1px solid rgba(122,91,62,.10);
    border-radius:22px;
    padding:20px;
    background:linear-gradient(180deg,#fff,#fbfaf8);
    display:grid;
    gap:.75rem;
}
.commerce-review-item strong {font-size:1.05rem;}
.commerce-review-item p,
.commerce-review-item span {margin:0; color:var(--muted);}
.commerce-review-item span {font-size:.85rem; text-transform:uppercase; letter-spacing:.08em; font-weight:700;}
.sticky-cart-bar {
    position:sticky;
    bottom:18px;
    z-index:20;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    padding:16px 18px;
    border-radius:22px;
    background:rgba(16,27,45,.92);
    color:#fff;
    box-shadow:0 20px 44px rgba(13,24,42,.24);
    backdrop-filter:blur(10px);
}
.sticky-cart-copy {display:grid; gap:.25rem;}
.sticky-cart-copy strong,
.sticky-cart-copy span {margin:0;}
.sticky-cart-copy span {color:rgba(255,255,255,.76);}
.sticky-cart-bar .btn {white-space:nowrap;}
.composer-widget-shell {position:relative;}
.composer-widget-shell.widget-width-full {background:transparent;}
.composer-widget-shell.widget-width-full::before {
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:calc((100dvw - 100%) / -2);
    right:calc((100dvw - 100%) / -2);
    background:var(--widget-bg, transparent);
    z-index:0;
}
.composer-widget-shell-inner {width:100%;}
.composer-widget-shell.widget-width-boxed {padding-left:0; padding-right:0;}
.composer-widget-shell.pad-top-none {padding-top:0;}
.composer-widget-shell.pad-top-sm {padding-top:clamp(.75rem, 1vw, 1rem);}
.composer-widget-shell.pad-top-md {padding-top:clamp(1.25rem, 2vw, 2rem);}
.composer-widget-shell.pad-top-lg {padding-top:clamp(2rem, 3vw, 3rem);}
.composer-widget-shell.pad-top-xl {padding-top:clamp(3rem, 4vw, 4.5rem);}
.composer-widget-shell.pad-bottom-none {padding-bottom:0;}
.composer-widget-shell.pad-bottom-sm {padding-bottom:clamp(.75rem, 1vw, 1rem);}
.composer-widget-shell.pad-bottom-md {padding-bottom:clamp(1.25rem, 2vw, 2rem);}
.composer-widget-shell.pad-bottom-lg {padding-bottom:clamp(2rem, 3vw, 3rem);}
.composer-widget-shell.pad-bottom-xl {padding-bottom:clamp(3rem, 4vw, 4.5rem);}
.composer-widget-shell-box {background:var(--widget-bg, transparent); overflow:hidden;}
.composer-widget-shell-box.radius-none {border-radius:0;}
.composer-widget-shell-box.radius-md {border-radius:1rem;}
.composer-widget-shell-box.radius-lg {border-radius:1.8rem;}
.composer-widget-shell-box.radius-xl {border-radius:2.4rem;}
.composer-widget-shell > .container,
.composer-widget-shell > .composer-widget-shell-inner,
.composer-widget-shell > .container.composer-widget-shell-inner {position:relative; z-index:1;}
.composer-widget-shell-box > .composer-widget-hero {margin-left:0; margin-right:0; border-radius:inherit;}
.composer-widget-shell-box > .composer-widget-hero.hero-shape-slant::after {display:none !important;}
.composer-widget-shell-box > .composer-widget-hero .composer-widget-hero-inner {padding-left:clamp(1.2rem, 2vw, 2rem); padding-right:clamp(1.2rem, 2vw, 2rem);}
.composer-widget-shell-box > .composer-widget-locator,
.composer-widget-shell-box > .composer-widget-whyus,
.composer-widget-shell-box > .composer-widget-richtext {padding:clamp(1.2rem, 2vw, 2rem);}
.composer-widget-heading h1,
.composer-widget-heading h2,
.composer-widget-heading h3,
.composer-widget-heading h4 {margin:0; color:var(--color-heading);}
.composer-widget-hero {position:relative; overflow:hidden; width:auto; max-width:none; margin-left:calc((100dvw - 100%) / -2); margin-right:calc((100dvw - 100%) / -2); padding:0; border-radius:0; background:linear-gradient(135deg, #6990bf, #58769f); color:#fff;}
.composer-widget-hero-media,
.composer-widget-hero-overlay {position:absolute; inset:0; pointer-events:none;}
.composer-widget-hero-media {
    z-index:0;
    overflow:hidden;
    inset:-2%;
    background-position:center center;
    background-size:cover !important;
    background-repeat:no-repeat;
}
.composer-hero-image,
.composer-hero-video {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
    display:block;
    transform:scale(1.04);
}
.composer-widget-hero-overlay {z-index:1; background:var(--hero-overlay-color, #1f3859); opacity:var(--hero-overlay-opacity, .68);}
.composer-widget-hero::before {content:""; position:absolute; inset:auto auto auto auto; pointer-events:none; z-index:2;}
.composer-widget-hero::after {display:none !important; content:none !important; background:transparent !important; clip-path:none !important; z-index:2;}
.composer-widget-hero.hero-shape-straight::after {display:none !important;}
.composer-widget-hero.hero-shape-slant::after {
    display:none !important;
}
.composer-widget-hero.hero-shape-slant {
    clip-path:none;
}
.composer-widget-hero.hero-shape-slant::after {
    display:block !important;
    content:"" !important;
    position:absolute;
    left:-2%;
    right:-2%;
    bottom:-46px;
    height:110px;
    background:var(--bg) !important;
    transform:rotate(-1.4deg);
    transform-origin:right center;
    border:0;
    clip-path:none !important;
    backface-visibility:hidden;
}
.composer-widget-hero.hero-shape-shapes::after {
    display:block !important;
    content:"" !important;
    position:absolute;
    inset:auto -80px -80px auto;
    width:240px;
    height:240px;
    border-radius:50%;
    background:rgba(255,255,255,.10) !important;
}
.composer-widget-hero.hero-shape-shapes::before {
    content:"";
    position:absolute;
    inset:22% auto auto 62%;
    width:180px;
    height:180px;
    border-radius:46px;
    border:1px solid rgba(255,255,255,.16);
    background:rgba(255,255,255,.04);
    pointer-events:none;
    transform:rotate(18deg);
}
.composer-widget-hero.hero-height-sm {min-height:290px;}
.composer-widget-hero.hero-height-md {min-height:360px;}
.composer-widget-hero.hero-height-lg {min-height:440px;}
.composer-widget-hero.category-hero-static.hero-height-sm {min-height:290px !important;}
.composer-widget-hero.category-hero-static.hero-height-md {min-height:360px !important;}
.composer-widget-hero.category-hero-static.hero-height-lg {min-height:440px !important;}
.composer-widget-hero.hero-overlay-none .composer-widget-hero-overlay {opacity:0;}
.composer-widget-hero.hero-overlay-soft .composer-widget-hero-overlay {opacity:calc(var(--hero-overlay-opacity, .68) * .72);}
.composer-widget-hero.hero-overlay-dark .composer-widget-hero-overlay {opacity:var(--hero-overlay-opacity, .68);}
.page-wrap > .composer-widget-hero:first-child {margin-top:-38px;}
.page-wrap > .page-composer:first-child .composer-widget-hero.is-first-hero,
.page-composer > .page-composer-row:first-child .composer-widget-hero.is-first-hero {margin-top:-38px;}
.composer-widget-hero-inner {position:relative; z-index:3; min-height:inherit; display:flex; align-items:center; padding:44px 0 56px;}
.composer-hero-copy {display:grid; gap:1rem; max-width:720px;}
.composer-widget-hero.category-hero-static .composer-hero-copy,
.composer-widget-hero.product-hero-static .composer-hero-copy {
    gap: .45rem;
}
.composer-widget-hero .eyebrow,
.composer-widget-hero h1,
.composer-widget-hero .lead {color:#fff;}
.composer-widget-hero .eyebrow {letter-spacing:.16em; font-size:.88rem; opacity:.9;}
.composer-widget-hero h1 {margin:0; max-width:700px; font-size:var(--font-size-hero-title, clamp(3.4rem, 7vw, 5.9rem)); line-height:.92; font-weight:800;}
.composer-widget-hero .lead {margin:1.1rem 0 0; max-width:820px; font-size:var(--font-size-hero-text, clamp(1.05rem, 1.7vw, 1.3rem)); line-height:1.75; color:rgba(255,255,255,.9);}
.composer-widget-hero.category-hero-static .lead,
.composer-widget-hero.product-hero-static .lead {
    position: relative;
    margin-top: .35rem;
    padding-top: 1rem;
}
.composer-widget-hero.category-hero-static .lead::before,
.composer-widget-hero.product-hero-static .lead::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: clamp(88px, 12vw, 132px);
    height: 1px;
    background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.82), rgba(255,255,255,0));
    transform: translateX(-50%);
    opacity: .9;
}
.composer-widget-hero .hero-actions {margin-top:1.1rem;}
.composer-widget-hero.hero-align-center .composer-widget-hero-inner {justify-content:center;}
.composer-widget-hero.hero-align-center .composer-hero-copy {margin-inline:auto; text-align:center; justify-items:center;}
.composer-widget-hero.hero-align-center h1,
.composer-widget-hero.hero-align-center .lead {max-width:820px;}
.composer-widget-hero.hero-align-center .hero-actions {justify-content:center;}
.composer-widget-hero .btn-composer-primary {background:var(--hero-button-bg, var(--color-button-bg, var(--color-primary))); border-color:var(--hero-button-bg, var(--color-button-bg, var(--color-primary))); color:var(--hero-button-text, var(--color-button-text, #fff)); padding:.9rem 1.35rem; border-radius:999px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; font-size:.8rem;}
.composer-widget-hero .btn-composer-secondary {background:var(--hero-secondary-button-bg, rgba(255,255,255,.14)); color:var(--hero-secondary-button-text, #fff); border-color:var(--hero-secondary-button-bg, rgba(255,255,255,.22));}
.composer-widget-whyus {display:grid; gap:1.5rem;}
.composer-widget-whyus.whyus-align-center {text-align:center;}
.composer-widget-whyus.whyus-align-right {text-align:right;}
.composer-whyus-head {display:grid; gap:.7rem; max-width:68ch;}
.composer-widget-whyus.whyus-align-center .composer-whyus-head {margin-inline:auto;}
.composer-widget-whyus.whyus-align-right .composer-whyus-head {margin-left:auto;}
.composer-whyus-head h2 {margin:0; font-size:clamp(2rem, 3vw, 3rem); line-height:1.02;}
.composer-whyus-head p {margin:0; color:var(--muted); line-height:1.85; font-size:1.02rem;}
.composer-whyus-grid {display:grid; gap:1.5rem;}
.composer-whyus-count-3 {grid-template-columns:repeat(3, minmax(0, 1fr));}
.composer-whyus-count-4 {grid-template-columns:repeat(2, minmax(0, 1fr));}
.composer-whyus-count-6 {grid-template-columns:repeat(3, minmax(0, 1fr));}
.composer-whyus-count-8 {grid-template-columns:repeat(4, minmax(0, 1fr));}
.composer-whyus-card {
    display:grid;
    align-content:start;
    gap:1rem;
    min-height:100%;
    padding:1.6rem 1.55rem 1.7rem;
    border-radius:1.9rem;
    border:1px solid rgba(10,46,64,.08);
    background:#fff;
    box-shadow:0 10px 24px rgba(13,24,42,.04);
}
.composer-whyus-icon {
    width:3rem;
    height:3rem;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:1.05rem;
    background:#bfe5ff;
    color:#0981dc;
    font-size:1.15rem;
}
.composer-whyus-card h3 {
    margin:0;
    font-size:1.6rem;
    line-height:1.06;
}
.composer-whyus-card p {
    margin:0;
    color:var(--muted);
    line-height:1.9;
    font-size:1rem;
}
.composer-whyus-btn {
    justify-self:start;
    margin-top:.2rem;
    padding:.78rem 1.15rem;
    border-radius:999px;
    font-size:.8rem;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.composer-widget-whyus.whyus-align-center .composer-whyus-card {justify-items:center;}
.composer-widget-whyus.whyus-align-center .composer-whyus-btn {justify-self:center;}
.composer-widget-whyus.whyus-align-right .composer-whyus-card {justify-items:end;}
.composer-widget-whyus.whyus-align-right .composer-whyus-btn {justify-self:end;}
.composer-widget-locator {display:grid; grid-template-columns:minmax(0, 1fr) minmax(420px, .95fr); gap:2.4rem; align-items:center;}
.composer-locator-copy {display:grid; gap:1rem; max-width:38rem;}
.composer-locator-copy .eyebrow {display:inline-flex; align-items:center; width:max-content; padding:.4rem .75rem; border-radius:999px; background:rgba(10,46,64,.06); color:var(--color-heading); font-size:.78rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase;}
.composer-locator-copy h2 {margin:0; font-size:clamp(2.2rem, 4vw, 4rem); line-height:1.08;}
.composer-locator-copy h2 span {color:var(--locator-marker, #f39200);}
.composer-locator-copy p {margin:0; color:var(--muted); line-height:1.9; font-size:1.02rem; max-width:34rem;}
.composer-locator-actions {display:flex; flex-wrap:wrap; gap:.85rem; margin-top:.35rem;}
.composer-locator-actions .btn {border-radius:999px; padding:.9rem 1.25rem; font-weight:800; letter-spacing:.04em;}
.composer-locator-map {display:grid; place-items:center;}
.composer-locator-globe {position:relative; isolation:isolate; width:min(100%, 560px); aspect-ratio:1 / 1; border-radius:8px; overflow:hidden; box-shadow:0 24px 60px rgba(13,24,42,.12); background:radial-gradient(circle at 30% 24%, rgba(255,255,255,.92), rgba(255,255,255,.1) 28%, transparent 38%),radial-gradient(circle at 70% 72%, rgba(53,144,191,.18), transparent 30%),linear-gradient(180deg, #e6f4fb 0%, #d3ecf8 34%, #c1e2ef 100%);}
.composer-locator-globe::before {content:""; position:absolute; inset:-6% -10%; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 760'%3E%3Crect width='1200' height='760' fill='none'/%3E%3Cg fill='%23bfe0be'%3E%3Cpath d='M79 275l122-46 87 42 46 72-12 93-85 47-117-12-68-66z'/%3E%3Cpath d='M355 171l126-55 192 27 83 86-44 112-154 33-130-51-88-85z'/%3E%3Cpath d='M768 140l151 24 97 67-18 108-148 53-102-54-18-91z'/%3E%3Cpath d='M848 474l103 18 113 72-19 110-152 39-87-60 17-88z'/%3E%3Cpath d='M517 458l148-35 104 42 10 94-122 74-159-28-37-98z'/%3E%3Cpath d='M246 503l111-12 67 45-8 79-122 56-101-51 13-76z'/%3E%3C/g%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.18' stroke-width='18'%3E%3Cpath d='M79 275l122-46 87 42 46 72-12 93-85 47-117-12-68-66z'/%3E%3Cpath d='M355 171l126-55 192 27 83 86-44 112-154 33-130-51-88-85z'/%3E%3Cpath d='M768 140l151 24 97 67-18 108-148 53-102-54-18-91z'/%3E%3Cpath d='M848 474l103 18 113 72-19 110-152 39-87-60 17-88z'/%3E%3Cpath d='M517 458l148-35 104 42 10 94-122 74-159-28-37-98z'/%3E%3Cpath d='M246 503l111-12 67 45-8 79-122 56-101-51 13-76z'/%3E%3C/g%3E%3C/svg%3E") center/cover no-repeat; opacity:.94; z-index:0;}
.composer-locator-globe::after {content:""; position:absolute; inset:0; background:radial-gradient(circle at 28% 22%, rgba(255,255,255,.7), transparent 26%),linear-gradient(115deg, transparent 0 38%, rgba(255,255,255,.14) 48%, transparent 60%),repeating-linear-gradient(90deg, rgba(255,255,255,.08) 0 1px, transparent 1px 78px),repeating-linear-gradient(0deg, rgba(255,255,255,.07) 0 1px, transparent 1px 62px); mix-blend-mode:screen; opacity:.5; z-index:1; animation:locatorGlobeDrift 16s ease-in-out infinite;}
.locator-theme-ocean .composer-locator-globe {background:radial-gradient(circle at 30% 24%, rgba(255,255,255,.9), rgba(255,255,255,.12) 28%, transparent 38%),radial-gradient(circle at 70% 72%, rgba(28,164,206,.18), transparent 30%),linear-gradient(180deg, #e5f7ff 0%, #ccecf7 40%, #aee0ee 100%);}
.locator-theme-dark .composer-locator-globe {background:radial-gradient(circle at 30% 24%, rgba(255,255,255,.18), rgba(255,255,255,0) 28%),radial-gradient(circle at 70% 72%, rgba(41,142,181,.2), transparent 30%),linear-gradient(180deg, #18243b 0%, #122033 38%, #0d1728 100%);}
.locator-theme-dark .composer-locator-globe::before {filter:saturate(.8) brightness(.58);}
.locator-theme-dark .composer-locator-globe::after {opacity:.26; mix-blend-mode:screen;}
.composer-locator-pin {position:absolute; z-index:2; transform:translate(-50%, -50%); display:grid; gap:.4rem; justify-items:center; background:transparent; border:0; padding:0; cursor:default; animation:locatorPinFloat 4.8s ease-in-out infinite;}
.composer-locator-pulse,.composer-locator-dot {grid-area:1 / 1; border-radius:50%; background:var(--locator-marker, #f39200);}
.composer-locator-pulse {width:4.2rem; height:4.2rem; opacity:.18; animation:locatorPulse 2.8s ease-out infinite;}
.composer-locator-dot {width:1rem; height:1rem; align-self:center; box-shadow:0 0 0 10px color-mix(in srgb, var(--locator-marker, #f39200) 40%, transparent), 0 0 0 22px color-mix(in srgb, var(--locator-marker, #f39200) 18%, transparent);}
.composer-locator-label {margin-top:1.4rem; padding:.45rem .8rem; border-radius:999px; background:rgba(255,255,255,.94); color:#1a2740; font-size:.78rem; font-weight:700; white-space:nowrap; box-shadow:0 10px 30px rgba(13,24,42,.14); animation:locatorLabelBob 4.8s ease-in-out infinite;}
.composer-locator-pin:nth-child(2),
.composer-locator-pin:nth-child(2) .composer-locator-label,
.composer-locator-pin:nth-child(2) .composer-locator-pulse {animation-delay:.5s;}
.composer-locator-pin:nth-child(3),
.composer-locator-pin:nth-child(3) .composer-locator-label,
.composer-locator-pin:nth-child(3) .composer-locator-pulse {animation-delay:1s;}
.composer-locator-pin:nth-child(4),
.composer-locator-pin:nth-child(4) .composer-locator-label,
.composer-locator-pin:nth-child(4) .composer-locator-pulse {animation-delay:1.5s;}
.composer-locator-pin:nth-child(5),
.composer-locator-pin:nth-child(5) .composer-locator-label,
.composer-locator-pin:nth-child(5) .composer-locator-pulse {animation-delay:2s;}
.composer-locator-pin:nth-child(6),
.composer-locator-pin:nth-child(6) .composer-locator-label,
.composer-locator-pin:nth-child(6) .composer-locator-pulse {animation-delay:2.5s;}
@keyframes locatorPulse {
    0% {transform:scale(.55); opacity:.34;}
    70% {transform:scale(1.24); opacity:.06;}
    100% {transform:scale(1.38); opacity:0;}
}
@keyframes locatorPinFloat {
    0%, 100% {transform:translate(-50%, -50%) translateY(0);}
    50% {transform:translate(-50%, -50%) translateY(-6px);}
}
@keyframes locatorLabelBob {
    0%, 100% {transform:translateY(0);}
    50% {transform:translateY(-3px);}
}
@keyframes locatorGlobeDrift {
    0%, 100% {transform:translate3d(0,0,0) scale(1);}
    50% {transform:translate3d(0,-4px,0) scale(1.015);}
}
.composer-widget-text p {margin:0; line-height:1.8; color:var(--color-text);}
.composer-widget-richtext {padding:1.5rem; border-radius:1.5rem; background:rgba(255,255,255,.72); border:1px solid rgba(10,46,64,.08);}
.composer-widget-image {margin:0; overflow:hidden; background:#f5f7fa;}
.composer-widget-image img {display:block; width:100%; height:auto;}
.composer-widget-image.radius-none {border-radius:0;}
.composer-widget-image.radius-md {border-radius:1rem;}
.composer-widget-image.radius-lg {border-radius:1.8rem;}
.composer-widget-image.radius-round {border-radius:2.6rem;}
.composer-widget-button {display:flex;}
.composer-widget-spacer {width:100%;}
.btn-composer-primary {background:var(--color-button-bg, var(--color-primary)); color:var(--color-button-text, #fff);}
.btn-composer-secondary {background:#fff; color:var(--color-heading); border:1px solid rgba(10,46,64,.12);}
.btn-composer-ghost {background:transparent; color:var(--color-heading); border:1px solid rgba(10,46,64,.12);}
@media (max-width: 991.98px) {
  .composer-widget-hero {min-height:auto;}
  .composer-widget-hero.hero-height-sm,
  .composer-widget-hero.hero-height-md,
  .composer-widget-hero.hero-height-lg {min-height:auto;}
  .composer-widget-hero.hero-shape-shapes::after {width:180px; height:180px; inset:auto -56px -56px auto;}
  .composer-widget-hero.hero-shape-shapes::before {width:124px; height:124px; inset:20% auto auto 60%;}
  .page-wrap > .composer-widget-hero:first-child,
  .composer-widget-hero.is-first-hero {margin-top:-24px;}
  .composer-widget-hero-inner {padding:36px 0 46px;}
  .composer-widget-hero h1 {font-size:var(--font-size-hero-title, clamp(2.5rem, 12vw, 4.1rem));}
  .composer-widget-hero.category-hero-static .lead,
  .composer-widget-hero.product-hero-static .lead {
    margin-top: .25rem;
    padding-top: .8rem;
  }
  .composer-widget-hero.category-hero-static .lead::before,
  .composer-widget-hero.product-hero-static .lead::before {
    width: 84px;
  }
  .composer-widget-locator {grid-template-columns:minmax(0, 1fr); gap:1.6rem;}
  .composer-whyus-count-3,
  .composer-whyus-count-4,
  .composer-whyus-count-6,
  .composer-whyus-count-8 {grid-template-columns:repeat(2, minmax(0, 1fr));}
}
@media (max-width: 991px) {
    .page-composer-row.layout-6-6 .page-composer-grid,
    .page-composer-row.layout-8-4 .page-composer-grid,
    .page-composer-row.layout-4-8 .page-composer-grid,
    .page-composer-row.layout-4-4-4 .page-composer-grid {grid-template-columns:minmax(0,1fr);}
    .commerce-widget-product-summary .product-detail-copy {padding:24px;}
    .commerce-review-grid {grid-template-columns:minmax(0,1fr);}
    .composer-whyus-card h3 {font-size:1.4rem;}
    .sticky-cart-bar {flex-direction:column; align-items:flex-start; bottom:12px;}
    .sticky-cart-bar .btn {width:100%; justify-content:center;}
}
@media (max-width: 640px) {
    .composer-whyus-count-3,
    .composer-whyus-count-4,
    .composer-whyus-count-6,
    .composer-whyus-count-8 {grid-template-columns:minmax(0, 1fr);}
    .composer-whyus-card {padding:1.35rem 1.25rem 1.45rem; border-radius:1.5rem;}
}

