/* ==========================================================================
   Smith-Sealing Luxury V6 — Main Stylesheet
   Design: deep midnight industrial-luxury. Navy + brushed gold.
   ========================================================================== */

:root {
    /* Color tokens */
    --ss-navy-950: #0a0e16;
    --ss-navy-900: #0d1320;
    --ss-navy-800: #131b2c;
    --ss-navy-700: #1a2438;
    --ss-navy-600: #243049;
    --ss-navy-border: #2a3650;

    --ss-gold: #c9a14a;
    --ss-gold-light: #e3c577;
    --ss-gold-dim: #8a6f33;

    --ss-text-primary: #eef1f6;
    --ss-text-secondary: #aab3c5;
    --ss-text-muted: #71798e;

    --ss-white: #ffffff;

    /* Typography */
    --ss-font-display: 'Cormorant Garamond', Georgia, serif;
    --ss-font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;

    /* Spacing scale */
    --ss-space-xs: 0.5rem;
    --ss-space-sm: 1rem;
    --ss-space-md: 1.75rem;
    --ss-space-lg: 3rem;
    --ss-space-xl: 5rem;
    --ss-space-2xl: 8rem;

    --ss-radius: 4px;
    --ss-radius-lg: 8px;
    --ss-max-width: 1240px;
}

/* ── Reset ──────────────────────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    background: var(--ss-navy-950);
    color: var(--ss-text-primary);
    font-family: var(--ss-font-body);
    font-weight: 300;
    font-size: 16px;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
ul { list-style: none; margin: 0; padding: 0; }
button { font-family: inherit; cursor: pointer; }
input, select, textarea { font-family: inherit; }

h1, h2, h3, h4 {
    font-family: var(--ss-font-display);
    font-weight: 600;
    color: var(--ss-text-primary);
    margin: 0 0 var(--ss-space-sm);
    line-height: 1.15;
}

:focus-visible {
    outline: 2px solid var(--ss-gold);
    outline-offset: 3px;
}

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

.ss-skip-link {
    position: absolute;
    top: -100px;
    left: 0;
    background: var(--ss-gold);
    color: var(--ss-navy-950);
    padding: 0.75rem 1.5rem;
    z-index: 9999;
}
.ss-skip-link:focus { top: 0; }

.ss-container {
    max-width: var(--ss-max-width);
    margin: 0 auto;
    padding: 0 var(--ss-space-md);
}

.ss-section-heading {
    font-size: clamp(1.75rem, 3vw, 2.5rem);
    text-align: center;
    margin-bottom: var(--ss-space-lg);
    position: relative;
    padding-bottom: var(--ss-space-sm);
}
.ss-section-heading::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--ss-gold), transparent);
}

/* ── Buttons ────────────────────────────────────────────────────────────── */
.ss-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.9rem 2rem;
    font-family: var(--ss-font-body);
    font-size: 0.85rem;
    font-weight: 500;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    border-radius: var(--ss-radius);
    border: 1px solid transparent;
    transition: all 0.25s ease;
    cursor: pointer;
}
.ss-btn--gold {
    background: linear-gradient(135deg, var(--ss-gold-light), var(--ss-gold) 60%, var(--ss-gold-dim));
    color: var(--ss-navy-950);
    box-shadow: 0 4px 20px rgba(201, 161, 74, 0.25);
}
.ss-btn--gold:hover {
    box-shadow: 0 6px 28px rgba(201, 161, 74, 0.4);
    transform: translateY(-1px);
}
.ss-btn--outline {
    background: transparent;
    color: var(--ss-text-primary);
    border-color: var(--ss-navy-border);
}
.ss-btn--outline:hover {
    border-color: var(--ss-gold);
    color: var(--ss-gold-light);
}

/* ── Header ─────────────────────────────────────────────────────────────── */
.ss-header {
    position: sticky;
    top: 0;
    z-index: 500;
    background: rgba(10, 14, 22, 0.92);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--ss-navy-border);
}
.ss-header__inner {
    max-width: var(--ss-max-width);
    margin: 0 auto;
    padding: 0 var(--ss-space-md);
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ss-space-md);
}
.ss-logo { display: flex; align-items: center; gap: 0.6rem; }
.ss-logo__mark {
    width: 38px; height: 38px;
    border-radius: 50%;
    border: 1.5px solid var(--ss-gold);
    display: flex; align-items: center; justify-content: center;
    font-family: var(--ss-font-display);
    font-weight: 700;
    color: var(--ss-gold-light);
    font-size: 1.1rem;
}
.ss-logo__text {
    font-family: var(--ss-font-display);
    font-size: 1.4rem;
    font-weight: 600;
    color: var(--ss-text-primary);
    letter-spacing: 0.01em;
}
.ss-logo__dot { color: var(--ss-gold); font-weight: 400; }

.ss-header__nav { flex: 1; display: flex; justify-content: center; }
.ss-primary-menu { display: flex; gap: var(--ss-space-md); }
.ss-primary-menu a {
    font-size: 0.85rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ss-text-secondary);
    transition: color 0.2s ease;
    position: relative;
    padding: 0.4rem 0;
}
.ss-primary-menu a:hover { color: var(--ss-gold-light); }

.ss-header__actions { display: flex; align-items: center; gap: var(--ss-space-sm); }
.ss-icon-link {
    position: relative;
    color: var(--ss-text-secondary);
    display: flex;
    align-items: center;
    transition: color 0.2s ease;
}
.ss-icon-link:hover { color: var(--ss-gold-light); }
.ss-cart-count {
    position: absolute;
    top: -8px; right: -10px;
    background: var(--ss-gold);
    color: var(--ss-navy-950);
    font-size: 0.65rem;
    font-weight: 700;
    width: 16px; height: 16px;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
}

.ss-lang-switcher ul {
    display: flex;
    gap: 0.3rem;
    border: 1px solid var(--ss-navy-border);
    border-radius: var(--ss-radius);
    overflow: hidden;
}
.ss-lang-switcher a, .ss-lang-switcher li > span {
    display: block;
    padding: 0.4rem 0.7rem;
    font-size: 0.75rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--ss-text-secondary);
}
.ss-lang-switcher a:hover { color: var(--ss-gold-light); }
.ss-lang-switcher .current-lang a,
.ss-lang-switcher li.lang-item-current a {
    background: var(--ss-navy-700);
    color: var(--ss-gold-light);
}

.ss-mobile-toggle {
    display: none;
    flex-direction: column;
    gap: 5px;
    background: none;
    border: none;
    padding: 0.5rem;
}
.ss-mobile-toggle span { width: 22px; height: 1.5px; background: var(--ss-text-primary); }
.ss-mobile-menu { display: none; }

/* ── Hero ───────────────────────────────────────────────────────────────── */
.ss-hero {
    position: relative;
    padding: var(--ss-space-2xl) 0;
    overflow: hidden;
}
.ss-hero__bg {
    position: absolute; inset: 0;
    background:
        radial-gradient(ellipse 800px 500px at 80% 20%, rgba(201, 161, 74, 0.10), transparent 60%),
        radial-gradient(ellipse 600px 600px at 10% 80%, rgba(36, 48, 73, 0.5), transparent 60%),
        linear-gradient(180deg, var(--ss-navy-950), var(--ss-navy-900));
    z-index: 0;
}
.ss-hero__inner {
    position: relative; z-index: 1;
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    align-items: center;
    gap: var(--ss-space-xl);
}
.ss-hero__title {
    font-size: clamp(2.6rem, 5vw, 4.2rem);
    background: linear-gradient(135deg, var(--ss-text-primary) 40%, var(--ss-gold-light));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: var(--ss-space-md);
}
.ss-hero__subtitle {
    font-size: 1.1rem;
    color: var(--ss-text-secondary);
    max-width: 540px;
    margin-bottom: var(--ss-space-lg);
}
.ss-hero__actions { display: flex; gap: var(--ss-space-sm); flex-wrap: wrap; }

.ss-hero__visual { position: relative; height: 420px; }
.ss-ring-visual {
    position: absolute;
    border-radius: 50%;
    border: 14px solid;
    border-image: linear-gradient(135deg, var(--ss-gold-light), var(--ss-gold-dim)) 1;
    box-shadow: 0 0 60px rgba(201, 161, 74, 0.15), inset 0 0 30px rgba(0,0,0,0.4);
}
.ss-ring-visual--1 { width: 280px; height: 280px; top: 10%; right: 10%; animation: ss-float 7s ease-in-out infinite; }
.ss-ring-visual--2 { width: 160px; height: 160px; bottom: 5%; left: 5%; border-width: 9px; opacity: 0.7; animation: ss-float 9s ease-in-out infinite reverse; }
.ss-ring-visual--3 { width: 90px; height: 90px; top: 50%; left: 40%; border-width: 6px; opacity: 0.5; animation: ss-float 5s ease-in-out infinite; }
.ss-ring-visual--large { width: 320px; height: 320px; border-width: 18px; margin: 0 auto; }
@keyframes ss-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-16px); }
}

/* ── Trust strip ────────────────────────────────────────────────────────── */
.ss-trust-strip {
    background: var(--ss-navy-900);
    border-top: 1px solid var(--ss-navy-border);
    border-bottom: 1px solid var(--ss-navy-border);
    padding: var(--ss-space-md) 0;
}
.ss-trust-strip__inner {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--ss-space-sm);
}
.ss-trust-item {
    font-size: 0.8rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--ss-text-muted);
    position: relative;
    padding-left: var(--ss-space-sm);
}
.ss-trust-item::before {
    content: '';
    position: absolute;
    left: 0; top: 50%;
    transform: translateY(-50%);
    width: 5px; height: 5px;
    background: var(--ss-gold);
    border-radius: 50%;
}

/* ── Sections base ──────────────────────────────────────────────────────── */
.ss-categories, .ss-finder, .ss-expertise, .ss-custom-production,
.ss-services, .ss-guide, .ss-quote-cta {
    padding: var(--ss-space-2xl) 0;
}
.ss-finder { background: var(--ss-navy-900); }
.ss-expertise { background: var(--ss-navy-900); }
.ss-guide { background: var(--ss-navy-900); }

/* ── Categories ─────────────────────────────────────────────────────────── */
.ss-categories__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--ss-space-md);
}
.ss-category-card {
    background: linear-gradient(160deg, var(--ss-navy-800), var(--ss-navy-700));
    border: 1px solid var(--ss-navy-border);
    border-radius: var(--ss-radius-lg);
    overflow: hidden;
    transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}
.ss-category-card:hover {
    transform: translateY(-4px);
    border-color: var(--ss-gold-dim);
    box-shadow: 0 16px 40px rgba(0,0,0,0.4);
}
.ss-category-card__media {
    aspect-ratio: 1.4;
    background: var(--ss-navy-900);
    display: flex; align-items: center; justify-content: center;
    padding: var(--ss-space-md);
}
.ss-category-card__media img { max-height: 100%; object-fit: contain; }
.ss-category-card__body { padding: var(--ss-space-md); }
.ss-category-card__body h3 { font-size: 1.3rem; margin-bottom: 0.4rem; }
.ss-category-card__link {
    font-size: 0.8rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ss-gold-light);
}

/* ── Finder ─────────────────────────────────────────────────────────────── */
.ss-finder__form {
    display: grid;
    grid-template-columns: repeat(4, 1fr) auto;
    gap: var(--ss-space-sm);
    align-items: end;
    background: var(--ss-navy-800);
    border: 1px solid var(--ss-navy-border);
    border-radius: var(--ss-radius-lg);
    padding: var(--ss-space-lg);
}
.ss-finder__field { display: flex; flex-direction: column; gap: 0.4rem; }
.ss-finder__field label {
    font-size: 0.75rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ss-text-muted);
}
.ss-finder__field input, .ss-finder__field select {
    background: var(--ss-navy-900);
    border: 1px solid var(--ss-navy-border);
    border-radius: var(--ss-radius);
    padding: 0.7rem 0.9rem;
    color: var(--ss-text-primary);
}
.ss-finder__field input:focus, .ss-finder__field select:focus {
    border-color: var(--ss-gold);
    outline: none;
}
.ss-finder__submit { height: 46px; white-space: nowrap; }

/* ── Expertise ──────────────────────────────────────────────────────────── */
.ss-expertise__inner {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: var(--ss-space-xl);
    align-items: center;
}
.ss-expertise__content p { color: var(--ss-text-secondary); font-size: 1.05rem; }
.ss-expertise__content h2 { text-align: left; }
.ss-expertise__content h2::after { left: 0; transform: none; }

/* ── Custom production ──────────────────────────────────────────────────── */
.ss-custom-production {
    background: linear-gradient(135deg, var(--ss-navy-800), var(--ss-navy-700));
    border-top: 1px solid var(--ss-navy-border);
    border-bottom: 1px solid var(--ss-navy-border);
}
.ss-custom-production__inner { text-align: center; max-width: 680px; margin: 0 auto; }
.ss-custom-production__inner p { color: var(--ss-text-secondary); margin-bottom: var(--ss-space-md); }

/* ── Services ───────────────────────────────────────────────────────────── */
.ss-services__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--ss-space-md);
}
.ss-service-card {
    background: var(--ss-navy-800);
    border: 1px solid var(--ss-navy-border);
    border-radius: var(--ss-radius-lg);
    padding: var(--ss-space-lg) var(--ss-space-md);
    text-align: center;
    transition: border-color 0.3s ease;
}
.ss-service-card:hover { border-color: var(--ss-gold-dim); }
.ss-service-card__icon { font-size: 1.8rem; display: block; margin-bottom: var(--ss-space-sm); }
.ss-service-card p { color: var(--ss-text-secondary); margin: 0; }

/* ── Technical guide ────────────────────────────────────────────────────── */
.ss-guide__grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: var(--ss-space-sm);
}
.ss-guide__grid--page { grid-template-columns: repeat(3, 1fr); margin-top: var(--ss-space-lg); }
.ss-guide-card {
    background: var(--ss-navy-800);
    border: 1px solid var(--ss-navy-border);
    border-radius: var(--ss-radius);
    padding: var(--ss-space-md);
    display: flex; flex-direction: column; gap: var(--ss-space-sm);
    min-height: 140px;
    transition: border-color 0.3s ease, transform 0.3s ease;
}
.ss-guide-card:hover { border-color: var(--ss-gold-dim); transform: translateY(-3px); }
.ss-guide-card h3 { font-size: 1.05rem; flex: 1; }
.ss-guide-card__link { font-size: 0.75rem; color: var(--ss-gold-light); text-transform: uppercase; letter-spacing: 0.04em; }

/* ── Quote CTA section ──────────────────────────────────────────────────── */
.ss-quote-cta__inner {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: var(--ss-space-xl);
}
.ss-quote-cta__intro h2 { text-align: left; }
.ss-quote-cta__intro h2::after { left: 0; transform: none; }
.ss-quote-cta__intro p { color: var(--ss-text-secondary); }

/* ── Quote form ─────────────────────────────────────────────────────────── */
.ss-quote-form, .ss-quote-form-wrap {
    background: var(--ss-navy-800);
    border: 1px solid var(--ss-navy-border);
    border-radius: var(--ss-radius-lg);
    padding: var(--ss-space-lg);
}
.ss-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--ss-space-sm); }
.ss-form-row--quad { grid-template-columns: repeat(4, 1fr); }
.ss-form-field { display: flex; flex-direction: column; gap: 0.4rem; margin-bottom: var(--ss-space-sm); }
.ss-form-field label { font-size: 0.78rem; color: var(--ss-text-muted); text-transform: uppercase; letter-spacing: 0.03em; }
.ss-form-field input, .ss-form-field select, .ss-form-field textarea {
    background: var(--ss-navy-900);
    border: 1px solid var(--ss-navy-border);
    border-radius: var(--ss-radius);
    padding: 0.7rem 0.9rem;
    color: var(--ss-text-primary);
    width: 100%;
}
.ss-form-field input:focus, .ss-form-field select:focus, .ss-form-field textarea:focus {
    border-color: var(--ss-gold);
    outline: none;
}
.ss-quote-form__submit { width: 100%; margin-top: var(--ss-space-sm); }
.ss-form-message { margin-top: var(--ss-space-sm); font-size: 0.9rem; min-height: 1.2em; }
.ss-form-message.is-success { color: #7fd99a; }
.ss-form-message.is-error { color: #e08a8a; }

/* ── Footer CTA ─────────────────────────────────────────────────────────── */
.ss-footer-cta {
    background: linear-gradient(135deg, var(--ss-navy-900), var(--ss-navy-800));
    border-top: 1px solid var(--ss-navy-border);
    padding: var(--ss-space-xl) 0;
    text-align: center;
}
.ss-footer-cta h2 { margin-bottom: var(--ss-space-md); }

/* ── Footer ─────────────────────────────────────────────────────────────── */
.ss-footer { background: var(--ss-navy-950); border-top: 1px solid var(--ss-navy-border); padding-top: var(--ss-space-xl); }
.ss-footer__grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr;
    gap: var(--ss-space-lg);
    padding-bottom: var(--ss-space-lg);
}
.ss-footer__brand p { color: var(--ss-text-muted); font-size: 0.9rem; margin-top: var(--ss-space-sm); }
.ss-footer h3 { font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.05em; color: var(--ss-text-muted); font-family: var(--ss-font-body); font-weight: 500; margin-bottom: var(--ss-space-sm); }
.ss-footer-menu { display: flex; flex-direction: column; gap: 0.6rem; }
.ss-footer-menu a { color: var(--ss-text-secondary); font-size: 0.9rem; }
.ss-footer-menu a:hover { color: var(--ss-gold-light); }
.ss-footer__contact p { color: var(--ss-text-secondary); margin-bottom: var(--ss-space-sm); }
.ss-footer__bottom {
    border-top: 1px solid var(--ss-navy-border);
    padding: var(--ss-space-md) 0;
    text-align: center;
}
.ss-footer__bottom p { color: var(--ss-text-muted); font-size: 0.8rem; margin: 0; }

/* ── Generic pages ──────────────────────────────────────────────────────── */
.ss-page-header { padding: var(--ss-space-xl) 0 var(--ss-space-lg); border-bottom: 1px solid var(--ss-navy-border); background: var(--ss-navy-900); }
.ss-page-header h1 { font-size: clamp(2rem, 4vw, 3rem); margin: 0; }
.ss-page-content { padding: var(--ss-space-xl) 0; }
.ss-page-body { color: var(--ss-text-secondary); }
.ss-page-body h2 { color: var(--ss-text-primary); margin-top: var(--ss-space-lg); font-size: 1.6rem; }
.ss-page-body a { color: var(--ss-gold-light); text-decoration: underline; }
.ss-legal-body { max-width: 760px; }
.ss-legal-body em { color: var(--ss-gold); font-style: italic; }
.ss-quote-form-wrap { max-width: 760px; margin-top: var(--ss-space-lg); }

/* ── 404 ────────────────────────────────────────────────────────────────── */
.ss-404 { padding: var(--ss-space-2xl) 0; }
.ss-404__inner { text-align: center; max-width: 480px; margin: 0 auto; }
.ss-404__inner p { color: var(--ss-text-secondary); margin-bottom: var(--ss-space-lg); }

/* ── Breadcrumb ─────────────────────────────────────────────────────────── */
.ss-breadcrumb { font-size: 0.8rem; color: var(--ss-text-muted); margin-bottom: var(--ss-space-md); }
.ss-breadcrumb a { color: var(--ss-text-secondary); }

/* ── Responsive ─────────────────────────────────────────────────────────── */
@media (max-width: 980px) {
    .ss-header__nav { display: none; }
    .ss-mobile-toggle { display: flex; }
    .ss-mobile-menu.is-open {
        display: block;
        background: var(--ss-navy-900);
        border-top: 1px solid var(--ss-navy-border);
        padding: var(--ss-space-sm) var(--ss-space-md);
    }
    .ss-mobile-menu__list { display: flex; flex-direction: column; gap: var(--ss-space-sm); padding: var(--ss-space-sm) 0; }
    .ss-mobile-menu__list a { font-size: 0.95rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--ss-text-secondary); }

    .ss-hero__inner { grid-template-columns: 1fr; }
    .ss-hero__visual { height: 280px; order: -1; }
    .ss-expertise__inner { grid-template-columns: 1fr; }
    .ss-quote-cta__inner { grid-template-columns: 1fr; }
    .ss-categories__grid { grid-template-columns: repeat(2, 1fr); }
    .ss-services__grid { grid-template-columns: repeat(2, 1fr); }
    .ss-guide__grid { grid-template-columns: repeat(2, 1fr); }
    .ss-guide__grid--page { grid-template-columns: 1fr; }
    .ss-finder__form { grid-template-columns: 1fr 1fr; }
    .ss-footer__grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 600px) {
    .ss-categories__grid { grid-template-columns: 1fr; }
    .ss-services__grid { grid-template-columns: 1fr; }
    .ss-guide__grid { grid-template-columns: 1fr; }
    .ss-form-row, .ss-form-row--quad { grid-template-columns: 1fr; }
    .ss-finder__form { grid-template-columns: 1fr; }
    .ss-footer__grid { grid-template-columns: 1fr; }
    .ss-trust-strip__inner { justify-content: flex-start; gap: var(--ss-space-md); }
}


/* Utility bar + animated nav underline + hover dropdowns (design doc 17 Aug 2026) */
.ss-utilitybar{background:#08131F;border-bottom:1px solid rgba(201,162,75,.18);font-size:12px;letter-spacing:.02em}
.ss-utilitybar__inner{max-width:1280px;margin:0 auto;padding:7px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.ss-utilitybar__promo{color:#C9A24B;font-weight:500}
.ss-utilitybar__icons{display:flex;align-items:center;gap:14px;flex-shrink:0}
.ss-ub-icon{color:#7D858F;display:inline-flex;align-items:center;justify-content:center;line-height:0;transition:color .2s ease,transform .2s ease}
.ss-ub-icon:hover,.ss-ub-icon:focus-visible{color:#C9A24B;transform:translateY(-1px)}
@media(max-width:640px){.ss-utilitybar__promo{font-size:11px}.ss-utilitybar__inner{padding:6px 16px}}

.ss-header__nav li{position:relative}
.ss-header__nav ul li>a{position:relative}
.ss-header__nav ul li>a::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:#D62828;transform:scaleX(0);transform-origin:right center;transition:transform .32s cubic-bezier(.22,.61,.36,1)}
.ss-header__nav ul li>a:hover::after,.ss-header__nav ul li>a:focus-visible::after,.ss-header__nav ul li.current-menu-item>a::after,.ss-header__nav ul li.current-menu-ancestor>a::after{transform:scaleX(1);transform-origin:left center}
.ss-header__nav ul ul li>a::after{display:none}

.ss-header__nav ul ul{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%) translateY(-6px);min-width:232px;background:#0B1B2D;border:1px solid rgba(201,162,75,.22);border-radius:4px;box-shadow:0 18px 40px rgba(0,0,0,.45);list-style:none;margin:0;padding:8px 0;display:block;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:200}
.ss-header__nav li:hover>ul::before{content:"";position:absolute;top:-16px;left:0;right:0;height:16px}
.ss-header__nav li:hover>ul,.ss-header__nav li:focus-within>ul{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.ss-header__nav ul ul li{width:100%}
.ss-header__nav ul ul li>a{display:block;padding:9px 20px;white-space:nowrap;font-size:13px;letter-spacing:.06em;color:#C6CDD6;transition:color .18s ease,background .18s ease}
.ss-header__nav ul ul li>a:hover,.ss-header__nav ul ul li>a:focus-visible{color:#C9A24B;background:rgba(201,162,75,.07)}
@media(max-width:900px){.ss-header__nav ul ul{position:static;transform:none;opacity:1;visibility:visible;pointer-events:auto;box-shadow:none;border:0;background:transparent;min-width:0;padding:0 0 0 14px}.ss-header__nav li:hover>ul{transform:none}}

/* Product category row: exactly three tiles (design doc V1) */
.ss-categories__grid--three{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media(max-width:900px){.ss-categories__grid--three{grid-template-columns:1fr;gap:20px}}
.ss-header__nav li.is-open>ul{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
@media(max-width:900px){.ss-header__nav li.is-open>ul{transform:none}}
/* Footer 4-column layout per design doc */
.ss-footer__grid--four{display:grid;grid-template-columns:2fr 1fr 1.2fr 1fr;gap:40px;align-items:start}
.ss-footer__disclaimer{font-size:11px;line-height:1.6;color:#6C757E;margin-top:10px;max-width:none}
.ss-footer__copyright{font-size:12px;color:#8A929B;margin:0}
.ss-footer__contactline{margin-top:14px;font-size:13px}
.ss-footer__contactline a{color:#C9A24B}
@media(max-width:900px){.ss-footer__grid--four{grid-template-columns:1fr;gap:26px}.ss-footer__spacer{display:none}}
/* Trust strip: label + description per design doc */
.ss-trust-strip__inner{align-items:flex-start}
.ss-trust-item{display:flex;flex-direction:column;gap:5px;text-align:left;max-width:210px}
.ss-trust-item__label{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#C9A24B}
.ss-trust-item__desc{display:block;font-size:12px;line-height:1.5;color:#8A929B;text-transform:none;letter-spacing:0}
@media(max-width:900px){.ss-trust-item{max-width:none}}

/* === TS 18 AUG ADDITIONS === */
/* Announcement bar */
.ss-utilitybar__promo{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.ss-utilitybar__promolink{text-decoration:none;display:inline-flex;align-items:center;gap:.5rem}
.ss-utilitybar__promolink:hover .ss-utilitybar__promotext{text-decoration:underline}
.ss-utilitybar__promohl{color:#0B1B2D;background:#C9A24B;border-radius:2px;padding:.1rem .45rem;font-weight:700;letter-spacing:.02em}
.ss-ub-icon--empty{opacity:.32;cursor:default;display:inline-flex;align-items:center}

/* Hero + expertise imagery */
.ss-hero__img{max-width:100%;height:auto;display:block;border-radius:6px;box-shadow:0 18px 50px rgba(0,0,0,.45)}
.ss-expertise__img{max-width:100%;height:auto;display:block;border-radius:6px;box-shadow:0 14px 40px rgba(0,0,0,.4)}

/* Value label pictograms */
.ss-trust-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.45rem}
.ss-trust-item__icon{color:#C9A24B;display:inline-flex;margin-bottom:.15rem}
.ss-service-card__icon{color:#C9A24B;display:inline-flex;justify-content:center;margin-bottom:.6rem}

/* Custom Request form background */
.ss-quote-cta--bg{background-size:cover;background-position:center;background-repeat:no-repeat}

/* Product spec list replacing the Additional information tab */
.ss-specs{list-style:none;margin:1.1rem 0 1.4rem;padding:1rem 1.15rem;border:1px solid rgba(201,162,75,.28);border-radius:5px;background:rgba(255,255,255,.02)}
.ss-specs li{display:flex;justify-content:space-between;gap:1rem;padding:.34rem 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:.93rem}
.ss-specs li:last-child{border-bottom:0}
.ss-specs__k{color:#7D868F;text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}
.ss-specs__v{color:#fff;font-weight:600}
.ss-moq-note{display:block;margin-top:.4rem;color:#7D868F;font-size:.83rem}

/* === TRP SWITCHER SKIN === */
/* Make the TranslatePress switcher match the dark brand header */
.ss-lang-switcher .trp-language-switcher{background:transparent;border:0;padding:0;margin:0}
.ss-lang-switcher .trp-language-switcher > div{background:rgba(255,255,255,.04);border:1px solid rgba(201,162,75,.4);border-radius:3px;padding:.28rem .55rem;min-width:auto}
.ss-lang-switcher .trp-language-switcher a,
.ss-lang-switcher .trp-language-switcher span{color:#fff!important;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;background:transparent!important}
.ss-lang-switcher .trp-language-switcher img.trp-flag-image{display:none!important}
.ss-lang-switcher .trp-language-switcher .trp-ls-shortcode-current-language{background:transparent!important;border:0!important}
.ss-lang-switcher .trp-language-switcher .trp-ls-shortcode-language{background:#0B1B2D!important;border:1px solid rgba(201,162,75,.4)!important}
.ss-lang-switcher .trp-language-switcher .trp-ls-shortcode-language a:hover{color:#C9A24B!important}
/* Hide the floating switcher; the header control is the single one */
.trp-floating-switcher{display:none!important}

/* === LOGO IMAGE === */
.ss-logo__img{max-height:52px;width:auto;display:block}
@media (max-width:782px){.ss-logo__img{max-height:40px}}

/* === CART & CHECKOUT SKIN === */
.woocommerce-checkout .ss-page-content,.woocommerce-cart .ss-page-content{max-width:1180px;margin:0 auto;padding:2.5rem 1.25rem 4rem}
.woocommerce form .form-row{margin:0 0 1.05rem;display:block}
.woocommerce form .form-row label{display:block;margin:0 0 .35rem;font-size:.8rem;letter-spacing:.07em;text-transform:uppercase;color:#7D868F}
.woocommerce form .form-row .required{color:#C9A24B;text-decoration:none}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .select2-container .select2-selection--single{
  width:100%;background:rgba(255,255,255,.04);border:1px solid rgba(201,162,75,.3);border-radius:3px;
  color:#fff;padding:.72rem .85rem;font-size:.95rem;height:auto;line-height:1.4;box-shadow:none}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{border-color:#C9A24B;outline:none}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{color:#fff;line-height:1.4;padding:0}
.woocommerce .select2-dropdown{background:#0B1B2D;border:1px solid rgba(201,162,75,.35);color:#fff}
.woocommerce .select2-container--default .select2-results__option--highlighted[aria-selected]{background:#C9A24B;color:#0B1B2D}
.woocommerce-billing-fields h3,.woocommerce-shipping-fields h3,#order_review_heading,
.woocommerce-additional-fields h3{font-size:1.15rem;letter-spacing:.02em;margin:0 0 1.1rem;color:#fff}
@media(min-width:900px){
 .woocommerce-checkout form.checkout{display:grid;grid-template-columns:1.15fr .85fr;gap:2.75rem;align-items:start}
 .woocommerce-checkout form.checkout #customer_details{grid-column:1}
 .woocommerce-checkout form.checkout #order_review_heading,
 .woocommerce-checkout form.checkout #order_review{grid-column:2}
 .woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{width:100%;float:none}
}
#order_review{background:rgba(255,255,255,.03);border:1px solid rgba(201,162,75,.28);border-radius:5px;padding:1.4rem}
.woocommerce table.shop_table{border:0;background:transparent;color:#fff}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:rgba(255,255,255,.08);padding:.7rem .35rem}
.woocommerce table.shop_table tfoot th,.woocommerce table.shop_table tfoot td{font-weight:600}
.woocommerce ul#shipping_method li{margin:.35rem 0;color:#fff}
.woocommerce #payment{background:transparent;border-radius:0}
.woocommerce #payment ul.payment_methods{border-bottom:1px solid rgba(255,255,255,.1);padding:0 0 1rem}
.woocommerce #payment ul.payment_methods li{list-style:none;color:#fff}
.woocommerce #payment div.payment_box{background:rgba(255,255,255,.05);color:#cfd6dd}
.woocommerce #payment div.payment_box::before{border-bottom-color:rgba(255,255,255,.05)}
.woocommerce #payment .place-order button{width:100%}
.woocommerce-cart table.cart img{width:64px;border-radius:3px}
.woocommerce .cart_totals h2{color:#fff}

/* === WOO NOTICES === */
/* WooCommerce notice boxes: single left accent, no full gold outline */
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-error,
.woocommerce-page .woocommerce-info,
.woocommerce-page .woocommerce-message,
.woocommerce-page .woocommerce-error{
  background:rgba(255,255,255,.035)!important;
  border:0!important;
  border-left:3px solid #C9A24B!important;
  border-radius:3px!important;
  color:#cfd6dd!important;
  padding:1rem 1.25rem!important;
  margin:0 0 1.6rem!important;
  list-style:none!important;
  box-shadow:none!important;
  outline:none!important;
  display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;
}
.woocommerce .woocommerce-error{border-left-color:#c0564b!important}
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-error::before{display:none!important}
.woocommerce .woocommerce-info a,
.woocommerce .woocommerce-message a{color:#C9A24B!important;text-decoration:underline;text-underline-offset:2px}
.woocommerce .woocommerce-info a:hover,
.woocommerce .woocommerce-message a:hover{color:#e0bd6a!important}
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-message .button{float:none;margin-left:auto}
/* coupon form once expanded */
.woocommerce form.checkout_coupon{background:rgba(255,255,255,.03)!important;border:1px solid rgba(201,162,75,.28)!important;border-radius:3px;padding:1.1rem!important;margin:0 0 1.6rem!important}
