/* SEWARD global page system v399 — field-dossier continuity across the storefront. */

.swc200 {
    --swc-v399-black: #080d11;
    --swc-v399-ink: #10161a;
    --swc-v399-paper: #ffffff;
    --swc-v399-wash: #edf2f4;
    --swc-v399-line: #c9d2d7;
    --swc-v399-muted: #52616a;
    --swc-v399-red: #ed1c24;
}

.swc200-store main {
    background:
        linear-gradient(rgba(11, 20, 25, .035) 1px, transparent 1px),
        var(--swc-v399-wash);
    background-size: 100% 72px;
}

.swc200-store .swc-breadcrumbs {
    min-height: 52px;
    color: #60717b;
    font-size: 11px;
    letter-spacing: .02em;
}

.swc200-store .swc-breadcrumbs a {
    color: var(--swc-v399-ink);
    font-weight: 700;
}

.swc200-store .swc-breadcrumbs a:hover,
.swc200-store .swc-breadcrumbs a:focus-visible {
    color: var(--swc-v399-red);
}

.swc200-store .swc-page-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border: 0;
    border-bottom: 4px solid var(--swc-v399-red);
    background:
        linear-gradient(90deg, rgba(6, 13, 18, .98) 0%, rgba(8, 23, 32, .93) 52%, rgba(8, 23, 32, .7) 100%),
        url('../hero-catalog.webp') 75% 48% / cover no-repeat;
}

.swc200-store .swc-page-hero::before {
    position: absolute;
    z-index: -1;
    top: -36%;
    right: 7%;
    width: 170px;
    height: 190%;
    background: linear-gradient(90deg, var(--swc-v399-red) 0 62%, rgba(237, 28, 36, .22) 62% 100%);
    content: '';
    opacity: .88;
    transform: skewX(-29deg);
}

.swc200-store .swc-page-hero > .swc-shell {
    position: relative;
    min-height: clamp(230px, 22vw, 310px);
    justify-content: center;
    padding-block: 48px;
}

.swc200-store .swc-page-hero p {
    margin-bottom: 14px;
    color: #65b6e8;
    font-size: 11px;
    letter-spacing: .19em;
}

.swc200-store .swc-page-hero h1 {
    max-width: 900px;
    margin: 0;
    color: #fff !important;
    font-size: clamp(46px, 6.2vw, 88px);
    font-weight: 900;
    letter-spacing: -.055em;
    line-height: .88;
}

.swc200-store .swc-page-hero > .swc-shell > span {
    max-width: 650px;
    margin-top: 22px;
    color: #dce5e9;
    font-size: clamp(14px, 1.3vw, 17px);
    line-height: 1.62;
}

.swc-page-hero__code {
    position: absolute;
    right: 15px;
    bottom: -28px;
    color: rgba(255, 255, 255, .1);
    font-family: var(--swc-display);
    font-size: clamp(130px, 17vw, 250px);
    font-weight: 900;
    letter-spacing: -.1em;
    line-height: .75;
}

.swc200-store .swc-store-main {
    padding-block: clamp(24px, 4vw, 58px) clamp(48px, 7vw, 90px);
}

.swc-page-dossier {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(440px, 1.1fr);
    margin-bottom: 18px;
    border: 1px solid #1c2429;
    background: var(--swc-v399-black);
    color: #fff;
}

.swc-page-dossier__identity {
    min-height: 188px;
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    align-items: center;
    gap: 26px;
    padding: 30px 38px;
    border-right: 1px solid rgba(255, 255, 255, .16);
}

.swc-page-dossier__number {
    color: var(--swc-v399-red);
    font-family: var(--swc-display);
    font-size: 88px;
    font-weight: 900;
    letter-spacing: -.08em;
    line-height: .8;
}

.swc-page-dossier .swc-kicker {
    margin: 0 0 10px;
    color: #70b9e4;
    font-size: 10px;
    letter-spacing: .18em;
}

.swc-page-dossier h2 {
    margin: 0 !important;
    color: #fff !important;
    font-family: var(--swc-display) !important;
    font-size: clamp(28px, 3vw, 46px) !important;
    font-weight: 900 !important;
    letter-spacing: -.04em;
    line-height: .94 !important;
    text-transform: uppercase;
}

.swc-page-dossier__nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.swc-page-dossier__nav a {
    min-height: 94px;
    display: flex;
    align-items: center;
    gap: 16px;
    border-right: 1px solid rgba(255, 255, 255, .14);
    border-bottom: 1px solid rgba(255, 255, 255, .14);
    padding: 19px 24px;
    color: #fff;
    font-family: var(--swc-display);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .03em;
    text-transform: uppercase;
    transition: background-color .2s ease, color .2s ease;
}

.swc-page-dossier__nav a:nth-child(2n) {
    border-right: 0;
}

.swc-page-dossier__nav a:nth-last-child(-n + 2) {
    border-bottom: 0;
}

.swc-page-dossier__nav a span {
    color: #62b7e9;
    font-size: 10px;
}

.swc-page-dossier__nav a:hover,
.swc-page-dossier__nav a:focus-visible {
    background: var(--swc-v399-red);
    color: #fff;
}

.swc-page-dossier__nav a:hover span,
.swc-page-dossier__nav a:focus-visible span {
    color: #fff;
}

.swc200-store .swc-content-page--v399 {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--swc-v399-line);
    background: var(--swc-v399-paper);
    padding: clamp(32px, 5.2vw, 76px);
    color: var(--swc-v399-ink);
}

.swc200-store .swc-content-page--v399::after {
    position: absolute;
    top: 0;
    right: 0;
    width: 10px;
    height: 84px;
    background: var(--swc-v399-red);
    content: '';
}

.swc-content-page--v399 > p,
.swc-content-page--v399 > ul,
.swc-content-page--v399 > ol,
.swc-content-page--v399 > form,
.swc-content-page--v399 > .wpforms-container {
    max-width: 960px;
}

.swc-content-page--v399 > p:first-child {
    max-width: 1040px;
    margin: 0 0 clamp(38px, 5vw, 64px) !important;
    border-left: 6px solid var(--swc-v399-red);
    padding: 2px 0 2px 24px;
    color: var(--swc-v399-ink);
    font-family: var(--swc-display);
    font-size: clamp(18px, 2vw, 25px);
    font-weight: 800;
    letter-spacing: -.018em;
    line-height: 1.35;
}

.swc-content-page--v399 h2 {
    position: relative;
    max-width: 1040px;
    margin: clamp(42px, 6vw, 74px) 0 22px !important;
    border-top: 1px solid var(--swc-v399-line);
    padding: 28px 0 0 58px;
    color: var(--swc-v399-ink) !important;
    font-family: var(--swc-display) !important;
    font-size: clamp(24px, 3.2vw, 42px) !important;
    font-weight: 900 !important;
    letter-spacing: -.035em;
    line-height: 1 !important;
}

.swc-content-page--v399 h2::before {
    position: absolute;
    top: 25px;
    left: 0;
    width: 38px;
    height: 28px;
    display: grid;
    place-items: center;
    background: var(--swc-v399-red);
    color: #fff;
    content: '§';
    font-size: 13px;
    line-height: 1;
}

.swc-content-page--v399 h3 {
    margin: 34px 0 14px !important;
    color: var(--swc-v399-ink) !important;
    font-family: var(--swc-display) !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.swc-content-page--v399 p,
.swc-content-page--v399 li {
    color: #27343b;
    font-size: 16px;
    line-height: 1.72;
}

.swc-content-page--v399 p {
    margin: 0 0 22px;
}

.swc-content-page--v399 ul,
.swc-content-page--v399 ol {
    margin: 18px 0 28px;
    padding: 0;
    list-style: none;
}

.swc-content-page--v399 li {
    position: relative;
    margin: 0;
    border-top: 1px solid #dce3e7;
    padding: 15px 18px 15px 44px;
}

.swc-content-page--v399 li::before {
    position: absolute;
    top: 21px;
    left: 15px;
    width: 10px;
    height: 10px;
    border: 2px solid var(--swc-v399-red);
    content: '';
}

.swc-content-page--v399 a:not(.button) {
    color: #b51018;
    font-weight: 700;
    text-decoration-color: rgba(181, 16, 24, .35);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.swc-content-page--v399 a:not(.button):hover,
.swc-content-page--v399 a:not(.button):focus-visible {
    color: var(--swc-v399-red);
    text-decoration-color: currentColor;
}

.swc-content-page--v399 input:not([type='checkbox']):not([type='radio']),
.swc-content-page--v399 select,
.swc-content-page--v399 textarea,
.swc200-store .woocommerce form input.input-text,
.swc200-store .woocommerce form textarea,
.swc200-store .select2-container .select2-selection {
    min-height: 52px;
    border: 1px solid #aebbc2 !important;
    border-radius: 0 !important;
    background: #fff !important;
    padding: 12px 14px !important;
    color: var(--swc-v399-ink) !important;
    font-size: 16px !important;
    box-shadow: none !important;
}

.swc-content-page--v399 textarea,
.swc200-store .woocommerce form textarea {
    min-height: 140px;
}

.swc-content-page--v399 label,
.swc200-store .woocommerce form label {
    color: var(--swc-v399-ink);
    font-family: var(--swc-display);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.swc-content-page--v399 button,
.swc-content-page--v399 input[type='submit'] {
    min-height: 52px;
    border: 1px solid var(--swc-v399-red) !important;
    border-radius: 0 !important;
    background: var(--swc-v399-red) !important;
    padding: 0 28px !important;
    color: #fff !important;
    font-family: var(--swc-display) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: .04em;
    text-transform: uppercase;
    cursor: pointer;
}

.swc-content-page--contact .wpforms-container,
.swc-content-page--contact .wpforms-form {
    max-width: 960px !important;
    margin: 0 !important;
}

.swc-content-page--contact .wpforms-field {
    padding-block: 11px !important;
}

.swc-content-page--track-order form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 12px;
    margin: 22px 0 36px;
    border: 1px solid var(--swc-v399-line);
    background: #f4f7f8;
    padding: 22px;
}

.swc-content-page--track-order form p {
    margin: 0;
}

.swc-content-page--privacy-policy > p,
.swc-content-page--delivery-returns > p,
.swc-content-page--responsible-ownership > p {
    max-width: 900px;
}

.swc200-store .swc-trust {
    margin-block: 0;
    border-color: var(--swc-v399-line);
    background: #fff;
}

.swc200-store :where(a, button, input, select, textarea):focus-visible {
    outline: 3px solid #62b7e9 !important;
    outline-offset: 3px !important;
}

.swc200-store :where(a, button) {
    transition: background-color .2s ease, border-color .2s ease, color .2s ease, opacity .2s ease;
}

@media (max-width: 1040px) {
    .swc-page-dossier {
        grid-template-columns: 1fr;
    }

    .swc-page-dossier__identity {
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .16);
    }
}

@media (max-width: 720px) {
    /* Keep the mobile header useful and visually aligned with the approved SEWARD system. */
    body.swc200-store .swc-header {
        height: auto !important;
        min-height: 0 !important;
    }

    body.swc200-store .swc-header .swc-main-head {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        height: 151px !important;
        min-height: 151px !important;
        padding: 0 !important;
    }

    body.swc200-store .swc-header .swc-main-head .swc-brand {
        position: absolute !important;
        top: 5px !important;
        left: 50% !important;
        width: 110px !important;
        height: 92px !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: translateX(-50%) !important;
    }

    body.swc200-store .swc-header .swc-main-head .swc-logo {
        width: 110px !important;
        height: 92px !important;
        object-fit: contain !important;
    }

    body.swc200-store .swc-header .swc-main-head .swc-menu-button,
    body.swc200-store .swc-header .swc-main-head .swc-cart {
        top: 29px !important;
    }

    body.swc200-store .swc-header .swc-main-head .swc-search {
        position: absolute !important;
        inset: 99px 6px auto !important;
        width: auto !important;
        height: 54px !important;
        min-width: 0 !important;
        min-height: 54px !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 54px !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        border: 1px solid var(--swc-line) !important;
        background: var(--swc-paper) !important;
    }

    body.swc200-store .swc-header .swc-main-head .swc-search input {
        position: static !important;
        width: auto !important;
        height: 52px !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding-inline: 14px !important;
        opacity: 1 !important;
        background: var(--swc-paper) !important;
    }

    body.swc200-store .swc-header .swc-main-head .swc-search button {
        position: static !important;
        inset: auto !important;
        width: 54px !important;
        height: 52px !important;
        min-width: 54px !important;
        min-height: 52px !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #f11627 !important;
    }

    .swc200-store main {
        background-size: 100% 54px;
    }

    .swc200-store .swc-breadcrumbs {
        min-height: 44px;
        overflow: hidden;
        white-space: nowrap;
    }

    .swc200-store .swc-page-hero::before {
        right: -42px;
        width: 105px;
    }

    .swc200-store .swc-page-hero > .swc-shell {
        min-height: 238px;
        padding-block: 36px;
    }

    .swc200-store .swc-page-hero h1 {
        max-width: 90%;
        font-size: clamp(39px, 14vw, 58px);
    }

    .swc200-store .swc-page-hero > .swc-shell > span {
        max-width: 88%;
        margin-top: 16px;
        font-size: 15px;
    }

    .swc-page-hero__code {
        right: 6px;
        bottom: -8px;
        font-size: 112px;
    }

    .swc-page-dossier__identity {
        min-height: 150px;
        grid-template-columns: 74px minmax(0, 1fr);
        gap: 18px;
        padding: 24px 20px;
    }

    .swc-page-dossier__number {
        font-size: 60px;
    }

    .swc-page-dossier__nav a {
        min-height: 76px;
        gap: 10px;
        padding: 15px;
        font-size: 11px;
    }

    .swc200-store .swc-content-page--v399 {
        padding: 28px 21px 40px;
    }

    .swc-content-page--v399 > p:first-child {
        margin-bottom: 38px !important;
        padding-left: 16px;
        font-size: 18px;
    }

    .swc-content-page--v399 h2 {
        margin-top: 46px !important;
        padding-top: 24px;
        padding-left: 48px;
        font-size: 26px !important;
    }

    .swc-content-page--v399 h2::before {
        top: 20px;
    }

    .swc-content-page--v399 p,
    .swc-content-page--v399 li {
        font-size: 16px;
    }

    .swc-content-page--track-order form {
        grid-template-columns: 1fr;
        padding: 16px;
    }

    .swc-content-page--track-order form button {
        width: 100%;
    }
}

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