@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,700;9..144,800;9..144,900&family=Inter:wght@400;500;600;700;800;900&display=swap");

/*
 * Giftwrap React visual bridge for Twig microsites.
 * This maps the React commerce tokens onto the public shell classes without
 * loading the React app bundle into the server-rendered pages.
 */

body[data-shell-family="signature"],
body[data-domain-property="gift.co.za"],
body[data-domain-property="aprons.co.za"] {
    color-scheme: light;
    --gw-navy: #1b2b4d;
    --gw-navy-700: #15223e;
    --gw-blue: #046bd2;
    --gw-blue-700: #034c95;
    --gw-red: #e7333c;
    --gw-gold: #ffc107;
    --gw-ink: #111827;
    --gw-muted: #5b6475;
    --gw-line: #d9e2ef;
    --gw-border-strong: #c2d4e6;
    --gw-input: #e3edf7;
    --gw-page: #f8fbff;
    --gw-surface: #f5f9fd;
    --gw-surface-2: #eef6ff;
    --gw-elevated: #ffffff;
    --gw-soft-line: #edf2f8;
    --gw-bg: var(--gw-surface);
    --gw-panel: var(--gw-elevated);
    --gw-soft-blue: var(--gw-surface-2);
    --gw-radius: 8px;
    --gw-radius-sm: 6px;
    --gw-radius-lg: 10px;
    --gw-radius-xl: 12px;
    --gw-space-1: 0.25rem;
    --gw-space-2: 0.5rem;
    --gw-space-3: 0.75rem;
    --gw-space-4: 1rem;
    --gw-space-5: 1.25rem;
    --gw-control-h: 44px;
    --gw-search-h: 48px;
    --gw-header-h: 74px;
    --gw-nav-h: 50px;
    --gw-z-header: 120;
    --gw-z-dropdown: 140;
    --gw-z-modal: 180;
    --gw-shadow-xs: 0 1px 2px rgba(16, 35, 58, 0.05);
    --gw-shadow-md: 0 8px 24px rgba(18, 45, 80, 0.08);
    --gw-shadow-lg: 0 22px 44px rgba(31, 102, 212, 0.13);
    --gw-shadow: 0 18px 45px rgba(27, 43, 77, 0.12);
    --gw-shadow-soft: 0 10px 26px rgba(27, 43, 77, 0.08);
    --gw-header-bg: rgba(255, 255, 255, 0.94);
    --gw-hero-overlay: rgba(9, 18, 34, 0.62);
    --gw-rail-red: #e7333c;
    --gw-rail-orange: #f05423;
    --gw-rail-gold: #ffce07;
    --gw-rail-blue: #06b2d2;
    --gw-rail-green: #4caf50;
    --gw-rail-violet: #a855f7;
    --primary: var(--gw-blue);
    --secondary: var(--gw-navy);
    --accent: var(--gw-red);
    --bg: var(--gw-bg);
    --surface: var(--gw-panel);
    --surface-alt: var(--gw-page);
    --text: var(--gw-ink);
    --muted: var(--gw-muted);
    --line: var(--gw-line);
    --shell-max: 1320px;
    --radius-xl: var(--gw-radius);
    --radius-lg: var(--gw-radius);
    --radius-md: var(--gw-radius);
    --shadow-card: var(--gw-shadow);
    --shadow-soft: var(--gw-shadow-soft);
    background:
        linear-gradient(180deg, var(--gw-bg) 0%, #ffffff 46%, var(--gw-page) 100%);
    color: var(--gw-ink);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}

body[data-domain-property="gift.co.za"] {
    --gw-blue: #046bd2;
    --gw-blue-700: #034c95;
    --gw-red: #e7333c;
    --gw-gold: #ffc107;
    --gw-navy: #1b2b4d;
    --gw-navy-700: #15223e;
    --gw-page: #f8fbff;
    --gw-surface: #f5f8fc;
    --gw-surface-2: #eef6ff;
    --gw-bg: var(--gw-surface);
    --gw-soft-blue: var(--gw-surface-2);
}

body[data-domain-property="aprons.co.za"] {
    --gw-blue: #0f766e;
    --gw-blue-700: #0f5e55;
    --gw-red: #c7493f;
    --gw-gold: #d7a84c;
    --gw-navy: #162f3f;
    --gw-navy-700: #102533;
    --gw-page: #f7fbfa;
    --gw-surface: #f6faf8;
    --gw-surface-2: #eaf7f4;
    --gw-bg: var(--gw-surface);
    --gw-soft-blue: var(--gw-surface-2);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .shell {
    min-height: 100vh;
    background: transparent;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(h1, h2, h3, h4, h5, h6) {
    color: var(--gw-navy);
    letter-spacing: 0;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(p, li) {
    color: var(--gw-muted);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(a) {
    color: inherit;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(button, input, select, textarea) {
    font: inherit;
    letter-spacing: 0;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.button, .secondary-nav-link, .category-nav-link, .pill-link, .filter-chip, .pagination-button, .quote-fab, .header-toggle, .mobile-link, .mobile-child, .mobile-expand, .gift-site-nav__link, .gift-site-header__utility, .gift-site-header__consult, .gift-site-header__cta, .gift-site-header__toggle, .gift-site-mobile__links a, .gift-site-mobile__utilities a, .aprons-cat-link, .aprons-chip) {
    min-height: var(--gw-control-h);
    border-radius: var(--gw-radius);
    letter-spacing: 0;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.section-inner, .header-shell, .footer-inner, .gift-shell, .aprons-shell, .crumbs) {
    width: min(var(--shell-max), calc(100vw - (var(--page-gutter, 1rem) * 2)));
    max-width: var(--shell-max);
    margin-inline: auto;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .progress {
    background: rgba(27, 43, 77, 0.08);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .progress span {
    background: linear-gradient(90deg, var(--gw-blue), var(--gw-red), var(--gw-gold));
}

/* Header and navigation */

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .header,
body[data-domain-property="gift.co.za"] .gift-site-header {
    position: sticky;
    top: 0;
    z-index: var(--gw-z-header);
    background: var(--gw-header-bg);
    border-bottom: 1px solid rgba(27, 43, 77, 0.1);
    box-shadow: var(--gw-shadow-md);
    backdrop-filter: saturate(135%) blur(14px);
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .utility-bar,
body[data-domain-property="gift.co.za"] .gift-site-topbar {
    background: linear-gradient(90deg, var(--gw-navy-700), var(--gw-navy));
    color: #fff;
    border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .utility-bar-inner,
body[data-domain-property="gift.co.za"] .gift-site-topbar__inner {
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .utility-pill,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .utility-meta-link,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .utility-social-link,
body[data-domain-property="gift.co.za"] .gift-site-topbar a,
body[data-domain-property="gift.co.za"] .gift-site-topbar span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0.3rem 0.65rem;
    border-radius: var(--gw-radius);
    background: rgba(255, 255, 255, 0.09);
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0;
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .header-main,
body[data-domain-property="gift.co.za"] .gift-site-header {
    background: var(--gw-header-bg);
    border-bottom: 1px solid rgba(27, 43, 77, 0.1);
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .header-main-inner,
body[data-domain-property="gift.co.za"] .gift-site-header__inner {
    min-height: var(--gw-header-h);
    display: flex;
    align-items: center;
    gap: var(--gw-space-4);
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .brand-lockup,
body[data-domain-property="gift.co.za"] .gift-site-brand {
    min-width: 0;
    gap: 0.75rem;
    color: var(--gw-navy);
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .brand-mark,
body[data-domain-property="gift.co.za"] .gift-site-brand__mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 3rem;
    min-height: 3rem;
    padding: 0.45rem 0.65rem;
    border-radius: var(--gw-radius);
    background: linear-gradient(135deg, var(--gw-navy), var(--gw-blue));
    color: #fff;
    box-shadow: 0 10px 24px rgba(27, 43, 77, 0.16);
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .brand-copy strong,
body[data-domain-property="gift.co.za"] .gift-site-brand__copy strong {
    color: var(--gw-navy);
    font-size: 1.05rem;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.1;
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .brand-copy span,
body[data-domain-property="gift.co.za"] .gift-site-brand__copy span {
    color: var(--gw-muted);
    font-size: 0.78rem;
    line-height: 1.3;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-master {
    max-width: 520px;
    min-width: 0;
    flex: 1 1 300px;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-bar {
    display: flex;
    align-items: center;
    min-height: var(--gw-search-h);
    border: 1px solid var(--gw-line);
    border-radius: var(--gw-radius);
    background: #fff;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
    overflow: hidden;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-bar:focus-within {
    border-color: rgba(4, 107, 210, 0.42);
    box-shadow: 0 12px 28px rgba(4, 107, 210, 0.12);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-input {
    min-height: 46px;
    min-width: 0;
    width: 100%;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: var(--gw-ink);
    font-weight: 700;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-input::placeholder {
    color: #7b8494;
    opacity: 1;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-icon {
    color: var(--gw-blue);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .ai-powered-tag {
    border-radius: var(--gw-radius);
    background: var(--gw-red);
    color: #fff;
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .category-bar,
body[data-domain-property="aprons.co.za"] .aprons-category-bar {
    background: #fff;
    border-top: 1px solid var(--gw-soft-line);
    border-bottom: 1px solid var(--gw-line);
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .category-bar-inner,
body[data-domain-property="aprons.co.za"] .aprons-category-bar__inner {
    min-height: var(--gw-nav-h);
    display: flex;
    align-items: center;
    gap: var(--gw-space-3);
    padding-block: 0.55rem;
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .category-bar-label {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0.4rem 0.7rem;
    border-radius: var(--gw-radius);
    background: var(--gw-soft-blue);
    color: var(--gw-blue-700);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .secondary-nav,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .category-nav,
body[data-domain-property="gift.co.za"] .gift-site-nav,
body[data-domain-property="gift.co.za"] .gift-site-header__actions,
body[data-domain-property="aprons.co.za"] .aprons-category-bar__inner nav {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .secondary-nav-link,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .category-nav-link,
body[data-domain-property="gift.co.za"] .gift-site-nav__link,
body[data-domain-property="gift.co.za"] .gift-site-header__utility,
body[data-domain-property="aprons.co.za"] .aprons-cat-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0.58rem 0.82rem;
    border-radius: var(--gw-radius);
    color: var(--gw-navy);
    font-size: 0.86rem;
    font-weight: 850;
    letter-spacing: 0;
    white-space: nowrap;
}

body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .secondary-nav-link:not(.cta):hover,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .category-nav-link:hover,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .category-nav-group:hover > .category-nav-link,
body[data-domain-property="gift.co.za"] .gift-site-nav__link:hover,
body[data-domain-property="gift.co.za"] .gift-site-header__utility:hover,
body[data-domain-property="aprons.co.za"] .aprons-cat-link:hover,
body[data-domain-property="aprons.co.za"] .aprons-cat-link.active {
    background: var(--gw-soft-blue);
    color: var(--gw-blue-700);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .dropdown,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .mega-menu,
body[data-domain-property="gift.co.za"] .gift-site-nav__dropdown,
body[data-domain-property="gift.co.za"] .gift-site-mobile,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .mobile-panel {
    border: 1px solid var(--gw-line);
    border-radius: var(--gw-radius);
    background: rgba(255, 255, 255, 0.98);
    box-shadow: var(--gw-shadow);
}

body[data-shell-family="signature"] .dropdown,
body[data-domain-property="gift.co.za"] .gift-site-nav__dropdown {
    visibility: hidden;
}

body[data-shell-family="signature"] .nav-group:hover .dropdown,
body[data-shell-family="signature"] .nav-group:focus-within .dropdown,
body[data-shell-family="signature"] .nav-group.is-open .dropdown,
body[data-domain-property="gift.co.za"] .gift-site-nav__group:hover .gift-site-nav__dropdown,
body[data-domain-property="gift.co.za"] .gift-site-nav__group:focus-within .gift-site-nav__dropdown {
    visibility: visible;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .mega-link:hover,
body[data-domain-property="gift.co.za"] .gift-site-nav__dropdown-link:hover {
    background: var(--gw-soft-blue);
    color: var(--gw-blue-700);
}

/* Buttons */

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .button,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .secondary-nav-link.cta,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .mobile-link-cta,
body[data-domain-property="gift.co.za"] .gift-site-header__cta,
body[data-domain-property="gift.co.za"] .gift-site-header__consult,
body[data-domain-property="gift.co.za"] .gift-site-mobile__utilities a:last-child {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    border-radius: var(--gw-radius);
    padding: 0.76rem 1rem;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.9rem;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1;
    text-decoration: none;
    transition: transform 160ms ease, background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .button.primary,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .secondary-nav-link.cta,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .mobile-link-cta,
body[data-domain-property="gift.co.za"] .gift-site-header__cta,
body[data-domain-property="gift.co.za"] .gift-site-mobile__utilities a:last-child {
    border: 1px solid var(--gw-blue);
    background: var(--gw-blue);
    color: #fff;
    box-shadow: 0 14px 28px rgba(4, 107, 210, 0.2);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .button.primary:hover,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .secondary-nav-link.cta:hover,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .mobile-link-cta:hover,
body[data-domain-property="gift.co.za"] .gift-site-header__cta:hover,
body[data-domain-property="gift.co.za"] .gift-site-mobile__utilities a:last-child:hover {
    background: var(--gw-blue-700);
    border-color: var(--gw-blue-700);
    color: #fff;
    transform: translateY(-1px);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .button.secondary,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .button.tertiary,
body[data-domain-property="gift.co.za"] .gift-site-header__consult,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .header-toggle,
body[data-domain-property="gift.co.za"] .gift-site-header__toggle {
    border: 1px solid var(--gw-line);
    background: #fff;
    color: var(--gw-navy);
    box-shadow: var(--gw-shadow-soft);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .button.secondary:hover,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .button.tertiary:hover,
body[data-domain-property="gift.co.za"] .gift-site-header__consult:hover,
body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .header-toggle:hover,
body[data-domain-property="gift.co.za"] .gift-site-header__toggle:hover {
    border-color: rgba(4, 107, 210, 0.32);
    background: var(--gw-soft-blue);
    color: var(--gw-blue-700);
    transform: translateY(-1px);
}

/* Standard shell homepage hero */

body[data-shell-family="signature"] .hero-home {
    min-height: 560px;
    display: grid;
    align-items: center;
    padding: 1rem 0 2rem;
    background: var(--gw-navy);
    overflow: hidden;
    isolation: isolate;
}

body[data-shell-family="signature"] .hero-carousel-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(7, 15, 31, 0.3), rgba(7, 15, 31, 0.78)),
        linear-gradient(90deg, rgba(7, 15, 31, 0.72), rgba(7, 15, 31, 0.18));
}

body[data-shell-family="signature"] .hero-slide {
    transform: scale(1.02);
}

body[data-shell-family="signature"] .hero-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 700px);
    justify-content: start;
    align-items: center;
    min-height: 520px;
}

body[data-shell-family="signature"] .hero-copy-home {
    width: min(100%, 700px);
    min-height: 0;
    margin: 0;
    padding: 2rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: var(--gw-radius);
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 24px 54px rgba(0, 0, 0, 0.22);
    color: var(--gw-ink);
    backdrop-filter: blur(14px);
}

body[data-shell-family="signature"] .hero-copy-home .eyebrow,
body[data-shell-family="signature"] .section-kicker,
body[data-shell-family="signature"] .home-product-card__body small,
body[data-shell-family="signature"] .home-collection-card small,
body[data-shell-family="signature"] .home-route-card > .section-kicker {
    color: var(--gw-red);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
}

body[data-shell-family="signature"] .hero-copy-home h1 {
    max-width: 12ch;
    margin: 0.7rem 0 0.9rem;
    color: var(--gw-navy);
    font-family: Fraunces, Georgia, "Times New Roman", serif;
    font-size: 4.8rem;
    line-height: 0.95;
    letter-spacing: 0;
}

body[data-shell-family="signature"] .hero-copy-home p {
    max-width: 44rem;
    color: var(--gw-muted);
    font-size: 1.08rem;
    line-height: 1.6;
}

body[data-shell-family="signature"] .hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

body[data-shell-family="signature"] .hero-contact-line,
body[data-shell-family="signature"] .hero-contact-line a {
    color: var(--gw-navy);
    font-weight: 800;
}

body[data-shell-family="signature"] .hero-support {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.6rem;
}

body[data-shell-family="signature"] .hero-support-item {
    min-height: 54px;
    padding: 0.75rem 0.8rem;
    border: 1px solid var(--gw-line);
    border-radius: var(--gw-radius);
    background: #fff;
    color: var(--gw-navy);
    font-weight: 800;
}

body[data-shell-family="signature"] .hero-dots {
    position: relative;
    z-index: 3;
    display: flex;
    gap: 0.5rem;
    width: min(var(--shell-max), calc(100vw - (var(--page-gutter, 1rem) * 2)));
    margin: -1rem auto 0;
}

body[data-shell-family="signature"] .hero-dot {
    width: 0.8rem;
    height: 0.8rem;
    border: 1px solid rgba(255, 255, 255, 0.42);
    border-radius: var(--gw-radius);
    background: rgba(255, 255, 255, 0.48);
}

body[data-shell-family="signature"] .hero-dot.active {
    width: 2.25rem;
    background: var(--gw-red);
}

/* Gift and Aprons custom home heroes */

body[data-domain-property="gift.co.za"] .gift-main,
body[data-domain-property="aprons.co.za"] .aprons-main {
    background: linear-gradient(180deg, var(--gw-bg) 0%, #fff 44%, #f8fbff 100%);
}

body[data-domain-property="gift.co.za"] .gift-hero,
body[data-domain-property="aprons.co.za"] .aprons-hero {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background:
        linear-gradient(135deg, var(--gw-navy-700), var(--gw-navy) 58%, var(--gw-blue-700));
}

body[data-domain-property="gift.co.za"] .gift-hero {
    min-height: 620px;
}

body[data-domain-property="aprons.co.za"] .aprons-hero {
    min-height: 560px;
    display: grid;
    align-items: center;
}

body[data-domain-property="gift.co.za"] .gift-hero::after,
body[data-domain-property="aprons.co.za"] .aprons-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: 0.32;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.12) 1px, transparent 1px);
    background-size: 54px 54px;
    mask-image: radial-gradient(circle at center, black, transparent 74%);
}

body[data-domain-property="gift.co.za"] .gift-hero__panels {
    opacity: 0.42;
}

body[data-domain-property="gift.co.za"] .gift-hero__panel {
    border-radius: var(--gw-radius);
    overflow: hidden;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.2);
}

body[data-domain-property="gift.co.za"] .gift-hero__panel::after {
    background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.62));
}

body[data-domain-property="gift.co.za"] .gift-hero__content,
body[data-domain-property="aprons.co.za"] .aprons-hero__copy {
    width: min(100%, 720px);
    padding: 2rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: var(--gw-radius);
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 24px 54px rgba(0, 0, 0, 0.22);
    color: var(--gw-ink);
    backdrop-filter: blur(14px);
}

body[data-domain-property="gift.co.za"] .gift-kicker,
body[data-domain-property="aprons.co.za"] .aprons-kicker {
    color: var(--gw-red);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
}

body[data-domain-property="gift.co.za"] .gift-hero__content h1,
body[data-domain-property="aprons.co.za"] .aprons-hero__copy h1 {
    margin: 0.65rem 0 0.85rem;
    color: var(--gw-navy);
    font-family: Fraunces, Georgia, "Times New Roman", serif;
    font-size: 4.4rem;
    line-height: 0.95;
    letter-spacing: 0;
}

body[data-domain-property="gift.co.za"] .gift-hero__content p,
body[data-domain-property="aprons.co.za"] .aprons-hero__copy p {
    color: var(--gw-muted);
    font-size: 1.05rem;
    line-height: 1.62;
}

body[data-domain-property="gift.co.za"] .gift-hero__actions,
body[data-domain-property="aprons.co.za"] .aprons-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

body[data-domain-property="gift.co.za"] .gift-hero__actions .button,
body[data-domain-property="gift.co.za"] .gift-business-band__actions .button,
body[data-domain-property="gift.co.za"] .gift-business-route-card__body .button {
    min-height: 44px;
    border-radius: var(--gw-radius) !important;
    padding: 0.76rem 1rem;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.9rem;
    font-weight: 900;
    letter-spacing: 0;
}

body[data-domain-property="gift.co.za"] .gift-hero__actions .button.primary,
body[data-domain-property="gift.co.za"] .gift-business-band__actions .button.primary {
    border: 1px solid var(--gw-blue) !important;
    background: var(--gw-blue) !important;
    color: #fff;
    box-shadow: 0 14px 28px rgba(4, 107, 210, 0.2) !important;
}

body[data-domain-property="gift.co.za"] .gift-hero__actions .button.primary:hover,
body[data-domain-property="gift.co.za"] .gift-business-band__actions .button.primary:hover {
    border-color: var(--gw-blue-700) !important;
    background: var(--gw-blue-700) !important;
    color: #fff;
}

body[data-domain-property="gift.co.za"] .gift-hero__actions .button.secondary,
body[data-domain-property="gift.co.za"] .gift-business-band__actions .button.secondary,
body[data-domain-property="gift.co.za"] .gift-business-route-card__body .button.tertiary {
    border: 1px solid var(--gw-line) !important;
    background: #fff !important;
    color: var(--gw-navy);
    box-shadow: var(--gw-shadow-soft) !important;
}

body[data-domain-property="gift.co.za"] .gift-hero__actions .button.secondary:hover,
body[data-domain-property="gift.co.za"] .gift-business-band__actions .button.secondary:hover,
body[data-domain-property="gift.co.za"] .gift-business-route-card__body .button.tertiary:hover {
    border-color: rgba(4, 107, 210, 0.32) !important;
    background: var(--gw-soft-blue) !important;
    color: var(--gw-blue-700);
}

body[data-domain-property="gift.co.za"] :is(.button, .gift-site-brand__mark, .gift-site-nav__link, .gift-site-nav__dropdown, .gift-site-nav__dropdown-link, .gift-site-header__consult, .gift-site-header__cta, .gift-site-header__toggle, .gift-site-mobile__group, .gift-site-mobile__links a, .gift-site-mobile__utilities a, .gift-business-band__intro, .gift-business-band__proof span, .gift-business-route-card, .gift-category-card, .gift-hero__content) {
    border-radius: var(--gw-radius) !important;
}

body[data-domain-property="gift.co.za"] :is(.gift-hero__content, .gift-site-nav__dropdown, .gift-site-mobile, .gift-business-route-card, .gift-category-card, .gift-business-band__intro) {
    box-shadow: var(--gw-shadow) !important;
}

body[data-domain-property="gift.co.za"] :is(.button.primary, .gift-site-header__cta, .gift-site-mobile__utilities a:last-child) {
    border: 1px solid var(--gw-blue) !important;
    background: var(--gw-blue) !important;
    color: #fff !important;
    box-shadow: 0 14px 28px rgba(4, 107, 210, 0.2) !important;
}

body[data-domain-property="gift.co.za"] :is(.button.secondary, .button.tertiary, .gift-site-header__consult, .gift-site-header__toggle) {
    border: 1px solid var(--gw-line) !important;
    background: #fff !important;
    color: var(--gw-navy) !important;
    box-shadow: var(--gw-shadow-soft) !important;
}

body[data-domain-property="aprons.co.za"] .aprons-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(280px, 0.85fr);
    gap: 1.25rem;
    align-items: center;
}

body[data-domain-property="aprons.co.za"] .aprons-hero__visual {
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: var(--gw-radius);
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 24px 54px rgba(0, 0, 0, 0.2);
    overflow: hidden;
}

body[data-domain-property="aprons.co.za"] .aprons-hero__visual img {
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: contain;
    padding: 1rem;
}

body[data-domain-property="aprons.co.za"] .aprons-proof-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.55rem;
}

body[data-domain-property="aprons.co.za"] .aprons-proof-grid span {
    min-height: 54px;
    padding: 0.7rem;
    border: 1px solid var(--gw-line);
    border-radius: var(--gw-radius);
    background: #fff;
    color: var(--gw-navy);
    font-weight: 850;
}

body[data-domain-property="aprons.co.za"] .aprons-category-rail {
    background: #fff;
    border-block: 1px solid var(--gw-soft-line);
}

body[data-domain-property="aprons.co.za"] .aprons-chip,
body[data-shell-family="signature"] .pill-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0.6rem 0.82rem;
    border: 1px solid var(--gw-line);
    border-radius: var(--gw-radius);
    background: #fff;
    color: var(--gw-navy);
    font-weight: 850;
    letter-spacing: 0;
}

body[data-domain-property="aprons.co.za"] .aprons-chip:hover,
body[data-shell-family="signature"] .pill-link:hover,
body[data-shell-family="signature"] .pill-link.view-all {
    border-color: var(--gw-blue);
    background: var(--gw-blue);
    color: #fff;
}

/* Cards, sections, product shelves */

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.section-stage, .card, .collection-card, .product-card, .product-tile, .info-card, .form-panel, .shop-sidebar, .product-detail-panel, .cta-panel, .faq-item, .home-experience-block, .home-collection-card, .home-product-card, .home-popular-card, .home-route-card, .gift-home-intro__inner, .gift-business-band__intro, .gift-category-card, .gift-business-route-card, .aprons-panel, .aprons-sidebar-card, .aprons-product-tile) {
    border: 1px solid var(--gw-line);
    border-radius: var(--gw-radius);
    background: var(--gw-panel);
    box-shadow: var(--gw-shadow-soft);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.section-stage, .home-experience-block, .gift-home-intro__inner, .gift-business-band__intro) {
    padding: 1rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.card, .collection-card, .product-card, .product-tile, .home-collection-card, .home-product-card, .home-popular-card, .home-route-card, .gift-category-card, .gift-business-route-card, .aprons-product-tile) {
    overflow: hidden;
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.card, .collection-card, .product-card, .product-tile, .home-collection-card, .home-product-card, .home-popular-card, .home-route-card, .gift-category-card, .gift-business-route-card, .aprons-product-tile):hover {
    border-color: rgba(4, 107, 210, 0.26);
    box-shadow: var(--gw-shadow);
    transform: translateY(-2px);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.image-frame, .home-collection-card__media, .home-product-card__media, .gift-business-route-card__media, .gift-category-card, .aprons-product-tile__media) {
    border-radius: var(--gw-radius);
    background: #f8fbff;
    overflow: hidden;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.image-frame img, .home-collection-card__media img, .home-product-card__media img, .home-popular-card img, .gift-category-card img, .gift-business-route-card__media img, .aprons-product-tile__media img) {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .section-head h2,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-shelf-head h2,
body[data-domain-property="gift.co.za"] .gift-section-head h2 {
    color: var(--gw-navy);
    font-family: Fraunces, Georgia, "Times New Roman", serif;
    font-size: 2.45rem;
    line-height: 1.05;
    letter-spacing: 0;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .section-kicker,
body[data-domain-property="gift.co.za"] .gift-kicker {
    letter-spacing: 0;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .card h3,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-card h3,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-route-card h3,
body[data-domain-property="gift.co.za"] .gift-business-route-card h3 {
    color: var(--gw-navy);
    font-size: 1.05rem;
    line-height: 1.25;
    letter-spacing: 0;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .card-link {
    color: var(--gw-blue);
    font-weight: 900;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .card-link:hover {
    color: var(--gw-blue-700);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .badge,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .product-badge,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-card__media span {
    border-radius: var(--gw-radius);
    background: var(--gw-red);
    color: #fff;
    font-weight: 900;
    letter-spacing: 0;
}

/* Shared commerce homepage bridge */

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience {
    padding-block: 1.5rem 2.5rem;
    background: linear-gradient(180deg, #fff 0%, var(--gw-bg) 100%);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panels {
    width: min(var(--shell-max), calc(100vw - (var(--page-gutter, 1rem) * 2)));
    margin-inline: auto;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.85rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panel {
    min-height: 260px;
    border-radius: var(--gw-radius);
    box-shadow: var(--gw-shadow-soft);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panel::before {
    background: linear-gradient(180deg, rgba(11, 23, 42, 0.08), rgba(11, 23, 42, 0.74));
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panel span,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panel em {
    letter-spacing: 0;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-inner {
    display: grid;
    gap: 1rem;
    padding-top: 1rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-collection-grid,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-route-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.85rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-shelf {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.85rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-popular-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-collection-card {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    min-height: 128px;
    padding: 0.65rem;
    gap: 0.7rem;
    color: var(--gw-ink);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-collection-card__media {
    aspect-ratio: 1;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-collection-card__content {
    min-width: 0;
    display: grid;
    align-content: center;
    gap: 0.35rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-collection-card strong,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-card strong,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-popular-card strong {
    color: var(--gw-navy);
    font-weight: 900;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-collection-card__content span,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-route-card p {
    color: var(--gw-muted);
    line-height: 1.45;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-card {
    display: grid;
    grid-template-rows: auto 1fr;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-card__media {
    aspect-ratio: 4 / 3;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-card__body {
    display: grid;
    gap: 0.5rem;
    padding: 0.8rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-popular-card {
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr);
    min-height: 92px;
    padding: 0.55rem;
    gap: 0.65rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-popular-card img {
    width: 74px;
    height: 74px;
    border-radius: var(--gw-radius);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-route-card {
    display: grid;
    align-content: start;
    min-height: 210px;
    padding: 0.9rem;
    gap: 0.6rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-route-card__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-route-card__chips a {
    min-height: 30px;
    padding: 0.35rem 0.55rem;
    border-radius: var(--gw-radius);
    background: var(--gw-soft-blue);
    color: var(--gw-blue-700);
    font-size: 0.78rem;
    font-weight: 850;
}

/* Gift custom content */

body[data-domain-property="gift.co.za"] .gift-home-intro,
body[data-domain-property="gift.co.za"] .gift-categories,
body[data-domain-property="gift.co.za"] .gift-business-routes {
    background: transparent;
}

body[data-domain-property="gift.co.za"] .gift-business-band {
    background: linear-gradient(135deg, var(--gw-navy-700), var(--gw-navy));
    color: #fff;
}

body[data-domain-property="gift.co.za"] .gift-business-band h2,
body[data-domain-property="gift.co.za"] .gift-business-band p,
body[data-domain-property="gift.co.za"] .gift-business-band .gift-kicker {
    color: #fff;
}

body[data-domain-property="gift.co.za"] .gift-business-band__proof span {
    border-radius: var(--gw-radius);
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.09);
    color: #fff;
}

body[data-domain-property="gift.co.za"] .gift-categories__grid,
body[data-domain-property="gift.co.za"] .gift-business-routes__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.85rem;
}

body[data-domain-property="gift.co.za"] .gift-category-card {
    min-height: 210px;
}

body[data-domain-property="gift.co.za"] .gift-category-card::after {
    background: linear-gradient(180deg, transparent, rgba(11, 23, 42, 0.72));
}

body[data-domain-property="gift.co.za"] .gift-category-card span {
    color: #fff;
    font-weight: 900;
    letter-spacing: 0;
}

body[data-domain-property="gift.co.za"] .gift-business-route-card {
    display: grid;
    grid-template-rows: auto 1fr;
}

body[data-domain-property="gift.co.za"] .gift-business-route-card__media {
    aspect-ratio: 4 / 3;
}

body[data-domain-property="gift.co.za"] .gift-business-route-card__body {
    display: grid;
    gap: 0.6rem;
    padding: 0.9rem;
}

/* Footer and forms */

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .footer {
    background: var(--gw-navy-700);
    color: rgba(255, 255, 255, 0.86);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .footer :where(h2, h3, h4, strong),
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .footer a {
    color: #fff;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(input, textarea, select) {
    border-radius: var(--gw-radius);
    border-color: var(--gw-line);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(input, textarea, select):focus {
    border-color: var(--gw-blue);
    box-shadow: 0 0 0 3px rgba(4, 107, 210, 0.12);
    outline: 0;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .modal-backdrop {
    z-index: calc(var(--gw-z-modal) - 1);
    background: rgba(9, 18, 34, 0.58);
    backdrop-filter: blur(7px);
    pointer-events: none !important;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .modal-backdrop.is-open {
    pointer-events: auto !important;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .quote-modal {
    z-index: var(--gw-z-modal);
    border: 1px solid var(--gw-line);
    border-radius: var(--gw-radius) !important;
    background: var(--gw-panel);
    box-shadow: 0 32px 90px rgba(9, 18, 34, 0.28);
    color: var(--gw-ink);
    visibility: hidden;
    pointer-events: none !important;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .quote-modal.is-open {
    visibility: visible;
    pointer-events: auto !important;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .quote-modal .modal-selection-panel {
    border-color: var(--gw-line);
    background:
        linear-gradient(180deg, var(--gw-soft-blue), #ffffff 74%);
    color: var(--gw-ink);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .quote-modal .form-panel {
    border: 0;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .quote-modal .section-head h2 {
    font-size: 2rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .quote-modal .section-head p,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .selection-empty,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .selection-copy span,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .selection-total {
    color: var(--gw-muted);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .selection-empty,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .selection-item {
    border-color: var(--gw-line);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .selection-empty,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .selection-thumb,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .selection-qty input {
    border-radius: var(--gw-radius);
    background: #fff;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .selection-copy strong {
    color: var(--gw-navy);
    font-weight: 900;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .modal-close {
    min-height: 48px;
    border-top: 1px solid var(--gw-line);
    border-radius: 0 !important;
    background: #f8fbff;
    color: var(--gw-navy);
    font-weight: 900;
    letter-spacing: 0;
    text-transform: none;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .modal-close:hover {
    background: var(--gw-soft-blue);
    color: var(--gw-blue-700);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .quote-fab {
    right: 1rem !important;
    bottom: 1rem !important;
    left: auto !important;
    width: auto !important;
    min-height: 48px;
    max-width: calc(100vw - 2rem);
    border: 1px solid var(--gw-blue) !important;
    border-radius: var(--gw-radius) !important;
    background: var(--gw-blue) !important;
    color: #fff !important;
    box-shadow: 0 18px 42px rgba(4, 107, 210, 0.25) !important;
    gap: 0.55rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .quote-fab:hover {
    background: var(--gw-blue-700) !important;
    border-color: var(--gw-blue-700) !important;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .quote-count-badge {
    border-radius: var(--gw-radius);
    background: var(--gw-red);
    color: #fff;
    font-weight: 900;
}

/* React shell navigation finishing for default commerce sites */

body[data-shell-family="signature"] .header {
    z-index: var(--gw-z-header);
    background: rgba(255, 255, 255, 0.96);
    border-bottom: 1px solid rgba(27, 43, 77, 0.08);
    box-shadow: var(--gw-shadow-md);
}

body[data-shell-family="signature"] .utility-bar {
    position: relative;
    background:
        linear-gradient(90deg, var(--gw-red), var(--gw-navy) 28%, var(--gw-navy-700));
}

body[data-shell-family="signature"] .utility-bar::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 1px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.28), rgba(255, 255, 255, 0.08));
}

body[data-shell-family="signature"] .utility-bar-inner {
    min-height: 36px;
}

body[data-shell-family="signature"] .utility-bar-copy--highlights {
    display: flex;
    align-items: center;
    min-width: 0;
    overflow: hidden;
}

body[data-shell-family="signature"] .utility-pill {
    max-width: 28ch;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body[data-shell-family="signature"] .header-main {
    background: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(16px);
}

body[data-shell-family="signature"] .header-main-inner {
    min-height: var(--gw-header-h);
    gap: var(--gw-space-3);
}

body[data-shell-family="signature"] .brand-lockup {
    flex: 0 1 330px;
    min-width: 220px;
    max-width: 360px;
    padding: 0.35rem;
    border-radius: var(--gw-radius);
    text-decoration: none;
    transition: background 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

body[data-shell-family="signature"] .brand-lockup:hover {
    background: var(--gw-soft-blue);
    box-shadow: inset 0 0 0 1px rgba(4, 107, 210, 0.12);
    transform: translateY(-1px);
}

body[data-shell-family="signature"] .brand-mark {
    width: 52px;
    height: 52px;
    min-width: 52px;
    min-height: 52px;
    padding: 0.35rem;
    border: 1px solid rgba(27, 43, 77, 0.1);
    border-radius: var(--gw-radius);
    background: #fff;
    color: var(--gw-navy);
    box-shadow: 0 10px 26px rgba(27, 43, 77, 0.1);
    overflow: hidden;
}

body[data-shell-family="signature"] .brand-mark-art,
body[data-shell-family="signature"] .brand-mark-img,
body[data-shell-family="signature"] .brand-mark-fallback {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
}

body[data-shell-family="signature"] .brand-mark-art svg,
body[data-shell-family="signature"] .brand-mark-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

body[data-shell-family="signature"] .brand-mark-fallback {
    border-radius: calc(var(--gw-radius) - 2px);
    background: linear-gradient(135deg, var(--gw-navy), var(--gw-blue));
    color: #fff;
    font-size: 1.35rem;
    font-weight: 900;
}

body[data-shell-family="signature"] .brand-copy {
    min-width: 0;
    gap: 0.16rem;
}

body[data-shell-family="signature"] .brand-copy strong {
    max-width: 100%;
    overflow: hidden;
    color: var(--gw-navy);
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 1rem;
    font-weight: 950;
    letter-spacing: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body[data-shell-family="signature"] .brand-copy span {
    display: -webkit-box;
    overflow: hidden;
    color: var(--gw-muted);
    font-size: 0.76rem;
    line-height: 1.25;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body[data-shell-family="signature"] .search-master {
    flex: 1 1 420px;
    max-width: 620px;
    z-index: 130;
}

body[data-shell-family="signature"] .search-bar {
    min-height: var(--gw-search-h);
    border: 1px solid var(--gw-line);
    border-radius: var(--gw-radius);
    background: #fff;
    box-shadow: 0 8px 20px rgba(27, 43, 77, 0.06);
}

body[data-shell-family="signature"] .search-input {
    min-height: 46px;
    padding-right: 4.1rem;
    color: var(--gw-ink);
}

body[data-shell-family="signature"] .search-results-dropdown {
    top: calc(100% + 0.5rem);
    border: 1px solid var(--gw-line);
    border-radius: var(--gw-radius);
    box-shadow: var(--gw-shadow);
}

body[data-shell-family="signature"] .search-result-item {
    border-radius: var(--gw-radius);
}

body[data-shell-family="signature"] .secondary-nav {
    flex: 0 0 auto;
    margin-left: 0;
}

body[data-shell-family="signature"] .secondary-nav-link {
    min-height: var(--gw-control-h);
    padding: 0.65rem 0.78rem;
    border: 1px solid transparent;
}

body[data-shell-family="signature"] .secondary-nav-link.quote-list-link {
    gap: 0.45rem;
    border-color: rgba(4, 107, 210, 0.14);
    background: var(--gw-soft-blue);
    color: var(--gw-blue-700);
}

body[data-shell-family="signature"] .secondary-nav-link.cta {
    border-color: var(--gw-blue);
}

body[data-shell-family="signature"] .quote-count-badge {
    min-width: 24px;
    height: 24px;
    padding: 0 0.38rem;
    display: inline-grid;
    place-items: center;
    line-height: 1;
}

body[data-shell-family="signature"] .category-bar {
    background: linear-gradient(90deg, var(--gw-navy), var(--gw-navy-700));
    border: 0;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body[data-shell-family="signature"] .category-bar-inner {
    min-height: var(--gw-nav-h);
    padding-block: 0.45rem;
}

body[data-shell-family="signature"] .category-bar-label {
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
}

body[data-shell-family="signature"] .category-nav {
    gap: 0.38rem;
    min-width: 0;
    overflow: visible;
    flex-wrap: wrap;
    scrollbar-width: none;
}

body[data-shell-family="signature"] .category-nav-group {
    position: relative;
    z-index: var(--gw-z-dropdown);
}

body[data-shell-family="signature"] .category-nav-link {
    min-height: 36px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: transparent;
    color: rgba(255, 255, 255, 0.88);
}

body[data-shell-family="signature"] .category-nav-link:hover,
body[data-shell-family="signature"] .category-nav-group:hover > .category-nav-link,
body[data-shell-family="signature"] .nav-group.is-open > .category-nav-link {
    border-color: rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.11);
    color: #fff;
}

body[data-shell-family="signature"] .category-nav-link.view-all {
    border-color: var(--gw-gold);
    background: var(--gw-gold);
    color: var(--gw-navy);
}

body[data-shell-family="signature"] .dropdown,
body[data-shell-family="signature"] .mega-menu {
    z-index: var(--gw-z-dropdown);
    top: calc(100% + 0.45rem);
    border: 1px solid rgba(27, 43, 77, 0.12);
    border-radius: var(--gw-radius);
    background: #fff;
    box-shadow: 0 28px 64px rgba(9, 18, 34, 0.2);
}

body[data-shell-family="signature"] .mega-menu {
    min-width: min(920px, calc(100vw - 2rem));
    padding: 0.9rem;
}

body[data-shell-family="signature"] .mega-menu-grid {
    gap: 0.75rem;
}

body[data-shell-family="signature"] .mega-column {
    padding: 0.75rem;
    border: 1px solid var(--gw-soft-line);
    border-radius: var(--gw-radius);
    background: #f8fbff;
}

body[data-shell-family="signature"] .mega-heading {
    color: var(--gw-red);
    font-size: 0.72rem;
    font-weight: 950;
    letter-spacing: 0;
}

body[data-shell-family="signature"] .mega-link {
    min-height: 38px;
    display: flex;
    align-items: center;
    border: 1px solid transparent;
    border-radius: var(--gw-radius);
    background: #fff;
    color: var(--gw-navy);
    font-weight: 850;
}

body[data-shell-family="signature"] .mega-link:hover {
    border-color: rgba(4, 107, 210, 0.16);
    background: var(--gw-soft-blue);
    color: var(--gw-blue-700);
}

body[data-shell-family="signature"] .header-toggle {
    min-width: 44px;
    min-height: 44px;
    border-radius: var(--gw-radius);
    font-size: 0;
    position: relative;
}

body[data-shell-family="signature"] .header-toggle::before,
body[data-shell-family="signature"] .header-toggle::after {
    content: "";
    position: absolute;
    left: 12px;
    right: 12px;
    height: 2px;
    border-radius: 2px;
    background: currentColor;
}

body[data-shell-family="signature"] .header-toggle::before {
    top: 15px;
    box-shadow: 0 6px 0 currentColor;
}

body[data-shell-family="signature"] .header-toggle::after {
    top: 27px;
}

body[data-shell-family="signature"] .mobile-panel {
    z-index: var(--gw-z-dropdown);
    border: 1px solid var(--gw-line);
    border-radius: 0 0 var(--gw-radius) var(--gw-radius);
    background: rgba(255, 255, 255, 0.98);
    box-shadow: var(--gw-shadow);
}

body[data-shell-family="signature"] .mobile-panel-inner {
    padding-block: 1rem;
}

body[data-shell-family="signature"] .mobile-contact-card {
    border-color: var(--gw-line);
    border-radius: var(--gw-radius);
    background: linear-gradient(135deg, var(--gw-soft-blue), #fff);
}

body[data-shell-family="signature"] .mobile-link,
body[data-shell-family="signature"] .mobile-child,
body[data-shell-family="signature"] .mobile-expand {
    border-color: var(--gw-line);
    border-radius: var(--gw-radius);
    box-shadow: 0 8px 20px rgba(27, 43, 77, 0.05);
}

body[data-shell-family="signature"] .mobile-link:hover,
body[data-shell-family="signature"] .mobile-child:hover,
body[data-shell-family="signature"] .mobile-expand:hover {
    border-color: rgba(4, 107, 210, 0.18);
    background: var(--gw-soft-blue);
    color: var(--gw-blue-700);
}

/* Quiet density pass: consistent spacing and guarded copy in cards */

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) {
    --gw-grid-gap: 0.9rem;
    --gw-section-gap: 1.85rem;
    --gw-card-pad: 1rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.section-head, .home-experience-head, .home-shelf-head, .gift-section-head) {
    max-width: 860px;
    text-align: left;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.section-head h2, .home-experience-head h2, .home-shelf-head h2),
body[data-domain-property="gift.co.za"] .gift-section-head h2 {
    max-width: 28ch;
    font-size: 2.25rem !important;
    line-height: 1.08;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-experience-block, .home-collection-card, .home-product-card, .home-popular-card, .home-route-card, .gift-category-card, .gift-business-route-card, .aprons-product-tile) {
    min-width: 0;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-inner {
    gap: var(--gw-section-gap);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-block {
    gap: 1rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-collection-grid, .home-product-shelf, .home-popular-grid, .home-route-grid, .gift-categories__grid, .gift-business-routes__grid) {
    gap: var(--gw-grid-gap);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-collection-grid, .home-product-shelf, .home-popular-grid, .home-route-grid) {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panels {
    gap: var(--gw-grid-gap);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panel {
    min-height: 200px;
    padding: 1rem;
    box-shadow: var(--gw-shadow-xs);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panel::before {
    background: linear-gradient(180deg, rgba(11, 23, 42, 0.08), rgba(11, 23, 42, 0.66));
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panel strong {
    display: -webkit-box;
    max-width: 15ch;
    overflow: hidden;
    font-size: 1.35rem;
    line-height: 1.08;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panel span,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panel em {
    overflow: hidden;
    letter-spacing: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-collection-card, .home-product-card, .home-popular-card, .home-route-card, .gift-category-card, .gift-business-route-card, .aprons-product-tile) {
    overflow: hidden;
    box-shadow: var(--gw-shadow-xs);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-collection-card, .home-product-card, .home-popular-card, .home-route-card, .gift-category-card, .gift-business-route-card, .aprons-product-tile):hover {
    box-shadow: var(--gw-shadow-md);
    transform: translateY(-1px);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-collection-card {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr;
    gap: 0;
    min-height: 0;
    padding: 0;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-collection-card__media {
    width: 100%;
    aspect-ratio: 16 / 9;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-collection-card__content, .home-product-card__body, .gift-business-route-card__body) {
    min-width: 0;
    align-content: start;
    gap: 0.48rem;
    padding: var(--gw-card-pad);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-collection-card strong, .home-product-card h3, .home-popular-card strong, .home-route-card h3, .gift-business-route-card h3, .aprons-product-tile h3) {
    display: -webkit-box;
    overflow: hidden;
    line-height: 1.22;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-collection-card__content > span:not(.home-collection-card__media) {
    display: -webkit-box;
    overflow: hidden;
    line-height: 1.45;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-route-card p, .gift-business-route-card p, .aprons-product-tile p) {
    display: -webkit-box;
    overflow: hidden;
    line-height: 1.45;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-collection-card small, .home-product-card small, .home-popular-card small, .home-route-card__chips a) {
    max-width: 100%;
    overflow: hidden;
    letter-spacing: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-card__body {
    grid-template-rows: auto auto auto;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-card .button {
    margin-top: 0.25rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-popular-card {
    grid-template-columns: 82px minmax(0, 1fr);
    min-height: 102px;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-popular-card img {
    width: 82px;
    height: 82px;
}

body[data-domain-property="gift.co.za"] .gift-category-card {
    display: grid !important;
    grid-template-rows: auto auto;
    aspect-ratio: auto !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

body[data-domain-property="gift.co.za"] .gift-category-card img {
    width: 100%;
    height: auto !important;
    aspect-ratio: 16 / 10;
    min-height: 0 !important;
    object-fit: cover;
}

body[data-domain-property="gift.co.za"] .gift-category-card span {
    position: static !important;
    display: flex !important;
    align-items: center;
    min-height: 50px;
    width: 100%;
    padding: 0.8rem 0.95rem !important;
    overflow: hidden;
    background: #fff;
    color: var(--gw-navy);
    line-height: 1.2;
    text-overflow: ellipsis;
}

@media (max-width: 1180px) {
    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .secondary-nav,
    body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .category-nav,
    body[data-domain-property="gift.co.za"] .gift-site-nav,
    body[data-domain-property="gift.co.za"] .gift-site-header__utility,
    body[data-domain-property="gift.co.za"] .gift-site-header__consult {
        display: none;
    }

    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .header-toggle,
    body[data-domain-property="gift.co.za"] .gift-site-header__toggle {
        display: inline-flex;
    }

    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-collection-grid,
    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-route-grid,
    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-shelf,
    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-popular-grid,
    body[data-domain-property="gift.co.za"] .gift-categories__grid,
    body[data-domain-property="gift.co.za"] .gift-business-routes__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body[data-domain-property="aprons.co.za"] .aprons-hero__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) {
        --page-gutter: 1rem;
    }

    body:is([data-shell-family="signature"], [data-domain-property="aprons.co.za"]) .utility-bar-inner {
        align-items: center;
        flex-direction: row;
        justify-content: flex-start;
        overflow: hidden;
        padding-block: 0.35rem;
    }

    body[data-shell-family="signature"] .utility-bar-copy--highlights {
        width: 100%;
        flex-wrap: nowrap;
        justify-content: flex-start;
        overflow-x: auto;
        scrollbar-width: none;
    }

    body[data-shell-family="signature"] .utility-bar-copy--highlights::-webkit-scrollbar {
        display: none;
    }

    body[data-shell-family="signature"] .utility-bar-meta {
        display: none;
    }

    body[data-shell-family="signature"] .utility-pill {
        width: auto;
        min-width: max-content;
        max-width: none;
    }

    body[data-domain-property="gift.co.za"] .gift-site-topbar__inner {
        align-items: flex-start;
        flex-direction: column;
        padding-block: 0.5rem;
    }

    body[data-shell-family="signature"] .header-main-inner {
        min-height: 70px;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
    }

    body[data-shell-family="signature"] .brand-lockup {
        flex: 1 1 auto;
        width: auto;
        min-width: 0;
        max-width: calc(100% - 58px);
        height: auto;
        padding: 0.25rem;
    }

    body[data-shell-family="signature"] .brand-mark {
        width: 48px;
        height: 48px;
        min-width: 48px;
        min-height: 48px;
    }

    body[data-shell-family="signature"] .brand-copy span {
        -webkit-line-clamp: 1;
    }

    body[data-domain-property="aprons.co.za"] .header-main-inner {
        min-height: 70px;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
    }

    body[data-domain-property="gift.co.za"] .gift-site-header__inner {
        min-height: 70px;
    }

    body[data-domain-property="gift.co.za"] .gift-site-topbar__inner {
        min-height: 40px;
        align-items: center;
        flex-direction: row;
        overflow: hidden;
        padding-block: 0.35rem;
    }

    body[data-domain-property="gift.co.za"] .gift-site-topbar__signals {
        width: 100%;
        flex-wrap: nowrap;
        justify-content: flex-start;
        overflow-x: auto;
        scrollbar-width: none;
    }

    body[data-domain-property="gift.co.za"] .gift-site-topbar__signals::-webkit-scrollbar {
        display: none;
    }

    body[data-domain-property="gift.co.za"] .gift-site-topbar__signals span {
        min-width: max-content;
    }

    body[data-domain-property="gift.co.za"] .gift-site-topbar__contact,
    body[data-domain-property="gift.co.za"] .gift-site-header__cta {
        display: none;
    }

    body[data-domain-property="gift.co.za"] .gift-site-header__inner {
        min-height: 70px;
        gap: 0.75rem;
        justify-content: space-between;
    }

    body[data-domain-property="gift.co.za"] .gift-site-brand {
        max-width: calc(100% - 58px);
        min-height: 56px;
        align-items: center;
    }

    body[data-domain-property="gift.co.za"] .gift-site-brand__copy span {
        display: none;
    }

    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-master {
        display: none;
    }

    body[data-shell-family="signature"] .hero-home,
    body[data-domain-property="gift.co.za"] .gift-hero,
    body[data-domain-property="aprons.co.za"] .aprons-hero {
        min-height: auto;
        padding: 1rem 0 1.4rem;
    }

    body[data-shell-family="signature"] .hero-grid {
        min-height: 0;
        grid-template-columns: 1fr;
    }

    body[data-shell-family="signature"] .hero-copy-home,
    body[data-domain-property="gift.co.za"] .gift-hero__content,
    body[data-domain-property="aprons.co.za"] .aprons-hero__copy {
        padding: 1.25rem;
    }

    body[data-shell-family="signature"] .hero-copy-home h1,
    body[data-domain-property="gift.co.za"] .gift-hero__content h1,
    body[data-domain-property="aprons.co.za"] .aprons-hero__copy h1 {
        font-size: 2.55rem;
        line-height: 1;
    }

    body[data-shell-family="signature"] .hero-copy-home p,
    body[data-domain-property="gift.co.za"] .gift-hero__content p,
    body[data-domain-property="aprons.co.za"] .aprons-hero__copy p {
        font-size: 0.98rem;
    }

    body[data-shell-family="signature"] .hero-support,
    body[data-domain-property="aprons.co.za"] .aprons-proof-grid,
    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panels,
    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-collection-grid,
    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-route-grid,
    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-shelf,
    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-popular-grid,
    body[data-domain-property="gift.co.za"] .gift-categories__grid,
    body[data-domain-property="gift.co.za"] .gift-business-routes__grid {
        grid-template-columns: 1fr;
    }

    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panel {
        min-height: 170px;
    }

    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-experience-panel strong {
        font-size: 1.2rem;
    }

    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-collection-card {
        grid-template-columns: 1fr;
    }

    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-popular-card {
        grid-template-columns: 82px minmax(0, 1fr);
    }

    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .section-head h2,
    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-shelf-head h2,
    body[data-domain-property="gift.co.za"] .gift-section-head h2 {
        font-size: 1.85rem !important;
    }
}

/* Final storefront polish lock */

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) {
    --gw-navy: #162742;
    --gw-navy-700: #102038;
    --gw-blue: #0867c7;
    --gw-blue-700: #064f9a;
    --gw-red: #d43d45;
    --gw-gold: #cc9830;
    --gw-green: #1d7d61;
    --gw-ink: #101827;
    --gw-muted: #586577;
    --gw-line: #d6e2ed;
    --gw-soft-line: #e8eff6;
    --gw-input: #edf4fa;
    --gw-page: #f4f8fb;
    --gw-surface: #eef5f9;
    --gw-surface-2: #e8f2fb;
    --gw-elevated: #ffffff;
    --gw-panel: #ffffff;
    --gw-soft-blue: #e8f2fb;
    --gw-header-bg: rgba(255, 255, 255, 0.96);
    --gw-shadow-xs: 0 1px 2px rgba(16, 35, 58, 0.05);
    --gw-shadow-md: 0 10px 26px rgba(19, 42, 71, 0.09);
    --gw-shadow-lg: 0 20px 44px rgba(19, 42, 71, 0.13);
    --gw-shadow: var(--gw-shadow-lg);
    --gw-shadow-soft: var(--gw-shadow-md);
    background-color: var(--gw-page);
    background-image: linear-gradient(180deg, #f4f8fb 0%, #ffffff 38%, #eef5f9 100%);
}

body[data-domain-property="gift.co.za"] {
    --gw-navy: #17263d;
    --gw-navy-700: #101d32;
    --gw-blue: #0870c7;
    --gw-blue-700: #04599f;
    --gw-red: #cb3940;
    --gw-gold: #c7952c;
    --gw-green: #28765f;
    --gw-page: #f7faff;
    --gw-surface: #eef6fb;
    --gw-surface-2: #fff4ef;
    --gw-soft-blue: #e9f4fb;
    --gift-cream: #fffaf2;
    --gift-blush: #fff1ee;
    background-image: linear-gradient(180deg, #f7faff 0%, #ffffff 36%, #fffaf2 100%);
}

body[data-domain-property="aprons.co.za"] {
    --gw-navy: #142b36;
    --gw-navy-700: #0f222b;
    --gw-blue: #0f817c;
    --gw-blue-700: #0c625e;
    --gw-red: #a74633;
    --gw-gold: #bd8d34;
    --gw-green: #267553;
    --gw-page: #f4f8f6;
    --gw-surface: #eaf3ef;
    --gw-surface-2: #e8f5f3;
    --gw-soft-blue: #e7f4f2;
    --aprons-steel: #27495a;
    background-image: linear-gradient(180deg, #f4f8f6 0%, #ffffff 40%, #edf4f1 100%);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.header, .gift-site-header) {
    border-bottom-color: rgba(22, 39, 66, 0.12);
    box-shadow: 0 8px 22px rgba(16, 32, 56, 0.08);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.search-bar, .gift-site-search, .site-search-form) {
    min-height: 50px;
    border: 1px solid var(--gw-line);
    border-radius: var(--gw-radius);
    background: #fff;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8), 0 7px 18px rgba(16, 32, 56, 0.05);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-bar {
    display: flex !important;
    align-items: center;
    gap: 0.65rem;
    padding-inline: 0.85rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-icon {
    position: relative !important;
    inset: auto !important;
    width: 20px;
    height: 20px;
    min-width: 20px;
    flex: 0 0 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--gw-blue);
    font-size: 0;
    line-height: 1;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-icon::before {
    content: "";
    width: 11px;
    height: 11px;
    border: 2px solid currentColor;
    border-radius: 999px;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-icon::after {
    content: "";
    position: absolute;
    right: 2px;
    bottom: 3px;
    width: 7px;
    height: 2px;
    border-radius: 2px;
    background: currentColor;
    transform: rotate(45deg);
    transform-origin: center;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-icon:has(svg)::before,
body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-icon:has(svg)::after {
    display: none;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-icon svg {
    width: 20px;
    height: 20px;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-input {
    min-width: 0;
    flex: 1 1 auto;
    padding: 0 0 0 0.1rem !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .search-bar:has(.ai-powered-tag) .search-input {
    padding-right: 3.4rem !important;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.button.primary, .gift-site-header__cta, .quote-fab) {
    border-color: var(--gw-red) !important;
    background: linear-gradient(135deg, var(--gw-red), #b92f36) !important;
    color: #fff !important;
    box-shadow: 0 12px 26px rgba(212, 61, 69, 0.2) !important;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.button.primary, .gift-site-header__cta, .quote-fab):hover {
    border-color: #a92a31 !important;
    background: linear-gradient(135deg, #c4333b, #a92a31) !important;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.button.secondary, .button.tertiary, .gift-site-header__consult, .pill-link, .aprons-chip) {
    border: 1px solid var(--gw-line) !important;
    background: #fff !important;
    color: var(--gw-navy) !important;
    box-shadow: var(--gw-shadow-xs) !important;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.button.secondary, .button.tertiary, .gift-site-header__consult, .pill-link, .aprons-chip):hover {
    border-color: color-mix(in srgb, var(--gw-blue) 32%, var(--gw-line)) !important;
    background: var(--gw-soft-blue) !important;
    color: var(--gw-blue-700) !important;
}

body[data-shell-family="signature"] .hero-home,
body[data-domain-property="gift.co.za"] .gift-hero,
body[data-domain-property="aprons.co.za"] .aprons-hero {
    border-bottom: 1px solid var(--gw-line);
    background-image: linear-gradient(135deg, var(--gw-navy-700), var(--gw-navy) 55%, var(--gw-blue-700));
}

body[data-domain-property="gift.co.za"] .gift-hero::after,
body[data-domain-property="aprons.co.za"] .aprons-hero::after {
    background-image:
        linear-gradient(90deg, rgba(255, 255, 255, 0.06) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
    mask-image: none;
}

body[data-shell-family="signature"] .hero-copy-home,
body[data-domain-property="gift.co.za"] .gift-hero__content,
body[data-domain-property="aprons.co.za"] .aprons-hero__copy {
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: var(--gw-radius);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(244, 248, 251, 0.92));
    box-shadow: 0 24px 54px rgba(7, 18, 36, 0.22);
}

body[data-domain-property="gift.co.za"] .gift-hero__content {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.97), rgba(255, 250, 242, 0.93));
}

body[data-domain-property="aprons.co.za"] .aprons-hero__copy {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.97), rgba(232, 245, 243, 0.93));
}

body[data-shell-family="signature"] .hero-copy-home h1,
body[data-domain-property="gift.co.za"] .gift-hero__content h1,
body[data-domain-property="aprons.co.za"] .aprons-hero__copy h1 {
    max-width: 12ch;
    color: var(--gw-navy);
    font-size: 3.55rem;
    line-height: 0.98;
    overflow-wrap: anywhere;
}

body[data-shell-family="signature"] .hero-copy-home p,
body[data-domain-property="gift.co.za"] .gift-hero__content p,
body[data-domain-property="aprons.co.za"] .aprons-hero__copy p {
    max-width: 58ch;
    color: var(--gw-muted);
    font-size: 1.04rem;
}

body[data-domain-property="gift.co.za"] .gift-hero__panels {
    opacity: 0.5;
    filter: saturate(1.02);
}

body[data-domain-property="gift.co.za"] .gift-hero__panel {
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: var(--gw-radius);
    box-shadow: 0 18px 42px rgba(5, 15, 30, 0.24);
}

body[data-domain-property="aprons.co.za"] .aprons-hero__visual {
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: var(--gw-radius);
    background: linear-gradient(180deg, #ffffff, #eef6f2);
    box-shadow: 0 22px 50px rgba(6, 20, 28, 0.22);
}

body[data-domain-property="aprons.co.za"] .aprons-proof-grid span,
body[data-domain-property="gift.co.za"] .gift-business-band__proof span {
    min-height: 44px;
    border: 1px solid var(--gw-line);
    border-radius: var(--gw-radius);
    background: #fff;
    color: var(--gw-navy);
    box-shadow: var(--gw-shadow-xs);
}

body[data-domain-property="aprons.co.za"] .aprons-proof-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0.55rem;
    width: 100%;
    overflow: hidden;
}

body[data-domain-property="aprons.co.za"] .aprons-proof-grid span {
    min-width: 0;
    align-items: center;
    overflow: hidden;
    font-size: 0.76rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
    text-overflow: ellipsis;
}

body[data-domain-property="gift.co.za"] .gift-business-band {
    border-block: 1px solid var(--gw-line);
    background-image: linear-gradient(135deg, #f7faff 0%, #ffffff 48%, var(--gift-cream) 100%);
}

body[data-domain-property="aprons.co.za"] .aprons-category-rail {
    border-block: 1px solid var(--gw-line);
    background: linear-gradient(90deg, #ffffff, var(--gw-surface-2));
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-experience-block, .section-stage, .gift-business-band__intro, .gift-home-intro__inner) {
    border: 1px solid var(--gw-line);
    border-radius: var(--gw-radius);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: var(--gw-shadow-soft);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-collection-card, .home-product-card, .home-popular-card, .home-route-card, .gift-category-card, .gift-business-route-card, .aprons-product-tile, .faq-item) {
    border: 1px solid var(--gw-line) !important;
    border-radius: var(--gw-radius) !important;
    background: #fff !important;
    box-shadow: 0 8px 20px rgba(19, 42, 71, 0.06) !important;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-collection-card, .home-product-card, .home-popular-card, .home-route-card, .gift-category-card, .gift-business-route-card, .aprons-product-tile, .faq-item):hover {
    border-color: color-mix(in srgb, var(--gw-blue) 24%, var(--gw-line)) !important;
    box-shadow: var(--gw-shadow-md) !important;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-collection-card__media, .home-product-card__media, .home-popular-card img, .gift-business-route-card__media, .gift-category-card img, .aprons-product-tile__media) {
    background: linear-gradient(180deg, #f9fbfd, var(--gw-surface));
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-card__media {
    aspect-ratio: 1 / 1;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-card__media img {
    object-fit: contain;
    padding: 0.65rem;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-card__body {
    min-height: 190px;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-product-card__body .button, .gift-business-route-card__body .button) {
    width: 100%;
    justify-content: center;
    margin-top: auto;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.section-kicker, .gift-kicker, .aprons-kicker, .eyebrow) {
    color: var(--gw-red);
    letter-spacing: 0;
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.footer, .gift-site-footer) {
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    background-image: linear-gradient(135deg, var(--gw-navy-700), var(--gw-navy) 62%, #102f45);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .quote-modal {
    background: rgba(12, 24, 42, 0.66);
    backdrop-filter: blur(10px);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .quote-modal :where(.modal-selection-panel, .form-panel) {
    border: 1px solid var(--gw-line);
    border-radius: var(--gw-radius);
    background: #fff;
    box-shadow: var(--gw-shadow-lg);
}

body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .quote-fab {
    right: 1.25rem;
    bottom: 1.25rem;
    min-width: 132px;
}

@media (max-width: 980px) {
    body[data-shell-family="signature"] .hero-copy-home h1,
    body[data-domain-property="gift.co.za"] .gift-hero__content h1,
    body[data-domain-property="aprons.co.za"] .aprons-hero__copy h1 {
        font-size: 3rem;
    }

    body[data-domain-property="gift.co.za"] .gift-hero__panels {
        opacity: 0.34;
    }

    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-card__body {
        min-height: 170px;
    }
}

@media (max-width: 760px) {
    body[data-shell-family="signature"] .hero-copy-home h1,
    body[data-domain-property="gift.co.za"] .gift-hero__content h1,
    body[data-domain-property="aprons.co.za"] .aprons-hero__copy h1 {
        max-width: none;
        font-size: 2.25rem;
        line-height: 1.04;
    }

    body[data-shell-family="signature"] .hero-copy-home,
    body[data-domain-property="gift.co.za"] .gift-hero__content,
    body[data-domain-property="aprons.co.za"] .aprons-hero__copy {
        padding: 1rem;
    }

    body[data-domain-property="gift.co.za"] .gift-hero__panels {
        display: none;
    }

    body[data-domain-property="aprons.co.za"] .aprons-hero__visual img {
        min-height: 260px;
    }

    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .home-product-card__body {
        min-height: 0;
    }

    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) .quote-fab {
        right: 0.75rem;
        bottom: 0.75rem;
        min-width: 112px;
    }
}

@media (max-width: 520px) {
    body[data-shell-family="signature"] .hero-copy-home h1,
    body[data-domain-property="gift.co.za"] .gift-hero__content h1,
    body[data-domain-property="aprons.co.za"] .aprons-hero__copy h1 {
        font-size: 2rem;
    }

    body:is([data-shell-family="signature"], [data-domain-property="gift.co.za"], [data-domain-property="aprons.co.za"]) :where(.home-product-shelf, .home-collection-grid, .home-popular-grid, .home-route-grid, .gift-categories__grid, .gift-business-routes__grid) {
        gap: 0.75rem;
    }
}
