/* =========================================================
   SET APART — COMPLETE STYLE
   HOME + CART + CHECKOUT + ABOUT + CONTACT + LEGAL
   NO SHOP PAGE
========================================================= */


/* =========================================================
   1. RESET
========================================================= */

*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: #fff;
    color: #111;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 1.5;
    overflow-x: hidden;
}

body.menu-open,
body.search-open,
body.sa-lock {
    overflow: hidden;
}

img {
    display: block;
    max-width: 100%;
}

a {
    color: inherit;
    text-decoration: none;
}

button,
input,
select,
textarea {
    font: inherit;
}

button {
    border: 0;
    padding: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
}

button,
a {
    -webkit-tap-highlight-color: transparent;
}

input,
select,
textarea {
    border-radius: 0;
}

.container {
    width: min(calc(100% - 60px), 1400px);
    margin-inline: auto;
}

.section {
    padding: 95px 0;
}

.eyebrow {
    margin-bottom: 14px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.section-heading {
    margin-bottom: 50px;
}

.section-heading h2 {
    font-size: clamp(34px, 5vw, 64px);
    font-weight: 900;
    line-height: .95;
    letter-spacing: -2px;
}


/* =========================================================
   2. BUTTONS
========================================================= */

.button {
    min-height: 50px;
    padding: 0 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #111;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    transition:
        background-color .2s ease,
        color .2s ease,
        border-color .2s ease;
}

.button-black {
    background: #111;
    color: #fff;
}

.button-black:hover {
    background: #fff;
    color: #111;
}

.button-white {
    background: #fff;
    color: #111;
}

.button-white:hover {
    background: #111;
    color: #fff;
}

.button-outline {
    background: transparent;
}


/* =========================================================
   3. LEGACY HEADER — OTHER PAGES
========================================================= */

.announcement-bar {
    width: 100%;
    min-height: 34px;
    padding: 7px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #111;
    color: #fff;
    position: relative;
    z-index: 1100;
}

.announcement-bar p {
    text-align: center;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.site-header {
    width: 100%;
    position: sticky;
    top: 0;
    z-index: 1000;
    background: #fff;
    border-bottom: 1px solid #e5e5e5;
}

.navbar {
    width: min(calc(100% - 60px), 1400px);
    height: 72px;
    margin-inline: auto;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 20px;
}

.site-logo {
    display: none !important;
}

.main-nav {
    display: flex;
    align-items: center;
    gap: 30px;
}

.main-nav a {
    position: relative;
    padding: 27px 0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.3px;
}

.main-nav a::after {
    content: "";
    width: 0;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: 21px;
    background: #111;
    transition: width .2s ease;
}

.main-nav a:hover::after,
.main-nav a.active::after {
    width: 100%;
}

.nav-actions {
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 12px;
}

.nav-icon-button {
    width: 42px;
    height: 42px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-icon-button svg {
    width: 21px;
    height: 21px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.cart-count {
    min-width: 18px;
    height: 18px;
    padding: 0 4px;
    position: absolute;
    top: 1px;
    right: 0;
    display: none;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #111;
    color: #fff;
    font-size: 9px;
    font-weight: 800;
}

.cart-count.active {
    display: flex;
}


/* =========================================================
   4. MOBILE MENU
========================================================= */

.menu-toggle {
    display: none;
    width: 42px;
    height: 42px;
    position: relative;
    z-index: 1200;
}

.menu-toggle span {
    width: 22px;
    height: 1.5px;
    position: absolute;
    left: 10px;
    display: block;
    background: #111;
    transition: .25s ease;
}

.menu-toggle span:nth-child(1) {
    top: 13px;
}

.menu-toggle span:nth-child(2) {
    top: 20px;
}

.menu-toggle span:nth-child(3) {
    top: 27px;
}

.menu-toggle.active span:nth-child(1) {
    top: 20px;
    transform: rotate(45deg);
}

.menu-toggle.active span:nth-child(2) {
    opacity: 0;
}

.menu-toggle.active span:nth-child(3) {
    top: 20px;
    transform: rotate(-45deg);
}

.mobile-menu {
    display: none;
}

.page-overlay {
    position: fixed;
    inset: 0;
    z-index: 900;
    background: rgba(0, 0, 0, .45);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: .25s ease;
}

.page-overlay.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}


/* =========================================================
   5. SEARCH
========================================================= */

.search-panel {
    width: 100%;
    position: fixed;
    top: 72px;
    left: 0;
    z-index: 2000;
    background: #fff;
    border-bottom: 1px solid #ddd;
    transform: translateY(-120%);
    visibility: hidden;
    transition: .3s ease;
}

.search-panel.active {
    transform: translateY(0);
    visibility: visible;
}

.search-panel-inner {
    width: min(calc(100% - 60px), 1200px);
    min-height: 130px;
    margin-inline: auto;
    display: flex;
    align-items: center;
}

.search-form {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr auto auto;
    gap: 10px;
}

.search-form input {
    width: 100%;
    height: 54px;
    padding: 0 16px;
    border: 1px solid #111;
    background: #fff;
    color: #111;
    font-size: 14px;
    outline: none;
}

.search-submit,
.search-close {
    height: 54px;
    border: 1px solid #111;
}

.search-submit {
    padding: 0 22px;
    background: #111;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.2px;
}

.search-close {
    width: 54px;
    font-size: 25px;
}


/* =========================================================
   6. LEGACY FOOTER — OTHER PAGES
========================================================= */

.footer {
    background: #111;
    color: #fff;
}

.footer-inner {
    width: min(calc(100% - 60px), 1400px);
    margin-inline: auto;
    padding: 75px 0 65px;
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 70px;
}

.footer-brand img {
    width: 145px;
    margin-bottom: 22px;
    filter: invert(1);
}

.footer-brand p {
    margin-bottom: 5px;
    color: #aaa;
    font-size: 12px;
}

.footer-columns {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 35px;
}

.footer-column {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 11px;
}

.footer-column h3 {
    margin-bottom: 7px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.footer-column a {
    color: #aaa;
    font-size: 11px;
}

.footer-column a:hover {
    color: #fff;
}

.footer-bottom {
    width: min(calc(100% - 60px), 1400px);
    margin-inline: auto;
    padding: 23px 0;
    border-top: 1px solid #292929;
}

.footer-bottom p {
    color: #888;
    font-size: 9px;
    letter-spacing: 1px;
}


/* =========================================================
   7. NEW HOME — BASE
========================================================= */

.sa-reference-home {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 100vh;
    background: #f6f5f0;
    color: #111;
    font-size: 16px;
    overflow-x: hidden;
}

.sa-reference-home img {
    user-select: none;
    -webkit-user-drag: none;
}

.sa-reference-home .skip-link {
    position: fixed;
    top: 10px;
    left: 10px;
    z-index: 99999;
    padding: 10px 14px;
    background: #111;
    color: #fff;
    font-size: 12px;
    transform: translateY(-200%);
}

.sa-reference-home .skip-link:focus {
    transform: translateY(0);
}


/* =========================================================
   8. NEW HOME HEADER
========================================================= */

.sa-reference-home .reference-header {
    width: 100%;
    height: 68px;
    position: sticky;
    top: 0;
    z-index: 5000;
    display: flex;
    align-items: center;
    background: rgba(246, 245, 240, .97);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(17, 17, 17, .08);
}

.sa-reference-home .reference-header-inner {
    width: min(calc(100% - 56px), 1460px);
    height: 100%;
    margin-inline: auto;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
}

.sa-reference-home .reference-nav {
    display: flex;
    align-items: center;
    gap: 27px;
}

.sa-reference-home .reference-nav-left {
    justify-self: start;
}

.sa-reference-home .reference-nav-right {
    justify-self: end;
}

.sa-reference-home .reference-nav a,
.sa-reference-home .reference-bag-button {
    position: relative;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    white-space: nowrap;
}

.sa-reference-home .reference-nav a::after {
    content: "";
    width: 0;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: -7px;
    background: #111;
    transition: width .2s ease;
}

.sa-reference-home .reference-nav a:hover::after,
.sa-reference-home .reference-nav a[aria-current="page"]::after {
    width: 100%;
}

.sa-reference-home .reference-wordmark {
    grid-column: 2;
    justify-self: center;
    font-size: 15px;
    font-weight: 900;
    letter-spacing: -.2px;
    white-space: nowrap;
}

.sa-reference-home .reference-bag-button {
    display: flex;
    align-items: center;
    gap: 7px;
}

.sa-reference-home .reference-bag-button span {
    min-width: 21px;
    height: 21px;
    padding: 0 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #111;
    border-radius: 50%;
    font-size: 9px;
}


/* =========================================================
   9. CLOTHES HERO
========================================================= */

.sa-reference-home .reference-clothes {
    min-height: calc(100vh - 68px);
    position: relative;
    overflow: hidden;
    padding: 24px 30px 34px;
    background: #f6f5f0;
}

.sa-reference-home .reference-clothes-top {
    width: min(100%, 1460px);
    margin-inline: auto;
    position: relative;
    z-index: 10;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #86837c;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.sa-reference-home .reference-progress {
    width: min(360px, 33vw);
    height: 2px;
    position: absolute;
    top: 34px;
    left: 50%;
    z-index: 15;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 5px;
    transform: translateX(-50%);
}

.sa-reference-home .reference-progress span {
    height: 2px;
    background: rgba(17, 17, 17, .14);
}

.sa-reference-home .reference-progress span.is-active {
    background: #111;
}


/* =========================================================
   10. FIRST CLOTHES SCENE
========================================================= */

.sa-reference-home .reference-rack {
    width: 100%;
    min-height: calc(100vh - 116px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.sa-reference-home .reference-rail {
    width: min(90vw, 930px);
    height: clamp(360px, 44vw, 520px);
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: clamp(4px, 1.5vw, 22px);
}

.sa-reference-home .reference-rail-line {
    width: 88%;
    height: 1px;
    position: absolute;
    top: 66px;
    left: 50%;
    z-index: 1;
    background: rgba(17, 17, 17, .48);
    transform: translateX(-50%);
}

.sa-reference-home .reference-hanging-piece {
    width: clamp(145px, 18vw, 245px);
    height: clamp(300px, 37vw, 455px);
    position: relative;
    z-index: 4;
    margin-top: 61px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}

.sa-reference-home .reference-hanging-piece img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center top;
    background: transparent;
    filter: drop-shadow(
        0 16px 11px rgba(0, 0, 0, .06)
    );
}

.sa-reference-home .reference-hanging-piece-pilgrim {
    transform: translateX(8px);
}

.sa-reference-home .reference-hanging-piece-godfirst {
    transform: translateX(-8px);
}

.sa-reference-home .reference-hook {
    width: 8px;
    height: 23px;
    position: absolute;
    top: -19px;
    left: 50%;
    z-index: 6;
    border: 1px solid #777;
    border-bottom: 0;
    border-radius: 9px 9px 0 0;
    transform: translateX(-50%);
}


/* =========================================================
   11. HERO TEXT
========================================================= */

.sa-reference-home .reference-rack-copy {
    margin-top: -8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.sa-reference-home .reference-rack-copy > p {
    width: min(370px, 90vw);
    margin-bottom: 16px;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.65;
    letter-spacing: 1.3px;
    text-transform: uppercase;
}

.sa-reference-home .reference-discover-button {
    min-width: 215px;
    min-height: 42px;
    padding: 0 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(17, 17, 17, .4);
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition:
        background .2s ease,
        color .2s ease;
}

.sa-reference-home .reference-discover-button:hover {
    background: #111;
    color: #fff;
}

.sa-reference-home .reference-rack-copy > span {
    margin-top: 12px;
    color: #8f8c84;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 1.3px;
}


/* =========================================================
   12. PRODUCT STAGE
========================================================= */

.sa-reference-home .reference-product-stage {
    width: 100%;
    min-height: calc(100vh - 104px);
    position: relative;
    display: none;
    align-items: center;
    justify-content: center;
}

.sa-reference-home .reference-product-stage.is-active {
    display: flex;
}

.sa-reference-home .reference-stage-slides {
    width: min(100%, 1120px);
    min-height: 620px;
    position: relative;
}

.sa-reference-home .reference-look {
    width: 100%;
    min-height: 620px;
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.sa-reference-home .reference-look.is-active {
    display: flex;
}

.sa-reference-home .reference-look-visual {
    width: min(100%, 820px);
    height: clamp(410px, 46vw, 540px);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sa-reference-home .reference-main-garment {
    width: min(52vw, 480px);
    height: min(46vw, 515px);
    position: relative;
    z-index: 5;
    object-fit: contain;
    background: transparent;
    filter: drop-shadow(
        0 22px 16px rgba(0, 0, 0, .07)
    );
}

.sa-reference-home .reference-side-clothes {
    width: clamp(155px, 21vw, 250px);
    height: clamp(235px, 31vw, 365px);
    position: absolute;
    top: 52%;
    left: calc(
        50% + clamp(125px, 17vw, 215px)
    );
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: .64;
    transform: translate(-50%, -50%);
}

.sa-reference-home .reference-side-clothes img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.sa-reference-home .reference-hang-tag {
    min-width: 32px;
    min-height: 44px;
    position: absolute;
    top: 20%;
    right: 0;
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #111;
    color: #fff;
    font-size: 7px;
    font-weight: 800;
    line-height: 1.15;
    text-align: center;
}


/* =========================================================
   13. PRODUCT STAGE TEXT
========================================================= */

.sa-reference-home .reference-look-info {
    margin-top: -5px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.sa-reference-home .reference-look-info h1,
.sa-reference-home .reference-look-info h2 {
    font-size: 15px;
    font-weight: 900;
    letter-spacing: .3px;
}

.sa-reference-home .reference-look-info > p {
    margin-top: 7px;
    color: #706d66;
    font-size: 12px;
    font-weight: 600;
}

.sa-reference-home .reference-look-controls {
    margin-top: 14px;
    display: flex;
    gap: 5px;
}

.sa-reference-home .reference-view-button {
    min-width: 58px;
    height: 30px;
    border: 1px solid #c7c4bd;
    font-size: 9px;
    font-weight: 800;
}

.sa-reference-home .reference-view-button.is-active {
    background: #111;
    color: #fff;
}

.sa-reference-home .reference-color-row {
    margin-top: 14px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.sa-reference-home .reference-color {
    width: 17px;
    height: 17px;
    position: relative;
    border: 1px solid rgba(17, 17, 17, .2);
    border-radius: 50%;
}

.sa-reference-home .reference-color::after {
    content: "";
    position: absolute;
    inset: -5px;
    border: 1px solid transparent;
    border-radius: 50%;
}

.sa-reference-home .reference-color.is-active::after {
    border-color: #111;
}

.sa-reference-home .reference-color.beige {
    background: #d9c4a1;
}

.sa-reference-home .reference-color.brown {
    background: #68452f;
}

.sa-reference-home .reference-color.black {
    background: #111;
}

.sa-reference-home .reference-color.white {
    background: #fff;
}

.sa-reference-home .reference-piece-button {
    margin-top: 14px;
    padding-bottom: 3px;
    border-bottom: 1px solid #111;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .9px;
}

.sa-reference-home .reference-stage-arrow {
    width: 38px;
    height: 38px;
    position: absolute;
    top: 47%;
    z-index: 40;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(17, 17, 17, .22);
    border-radius: 50%;
    color: #555;
    font-size: 16px;
    transform: translateY(-50%);
}

.sa-reference-home .reference-stage-arrow-left {
    left: clamp(6px, 3vw, 42px);
}

.sa-reference-home .reference-stage-arrow-right {
    right: clamp(6px, 3vw, 42px);
}


/* =========================================================
   14. PURPOSE
========================================================= */

.sa-reference-home .reference-purpose {
    min-height: 500px;
    padding:
        28px
        max(28px, calc((100vw - 1440px) / 2))
        62px;
    background: #101010;
    color: #fff;
}

.sa-reference-home .reference-purpose-top {
    padding-bottom: 20px;
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid rgba(255, 255, 255, .16);
    color: #909090;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.2px;
}

.sa-reference-home .reference-purpose-grid {
    min-height: 390px;
    display: grid;
    grid-template-columns: 1.25fr .75fr;
    align-items: center;
    gap: 70px;
}

.sa-reference-home .reference-purpose h2 {
    display: flex;
    flex-direction: column;
    font-size: clamp(58px, 7.2vw, 106px);
    font-weight: 400;
    line-height: .84;
    letter-spacing: -4px;
}

.sa-reference-home .reference-purpose h2 em {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
}

.sa-reference-home .reference-purpose-copy {
    width: min(100%, 360px);
    justify-self: end;
}

.sa-reference-home .reference-purpose-copy > span {
    display: block;
    margin-bottom: 26px;
    font-family: Georgia, serif;
    font-size: 25px;
}

.sa-reference-home .reference-purpose-copy p {
    margin-bottom: 15px;
    color: #b6b6b6;
    font-size: 14px;
    line-height: 1.7;
}

.sa-reference-home .reference-purpose-copy a {
    display: inline-block;
    margin-top: 12px;
    padding-bottom: 3px;
    border-bottom: 1px solid #aaa;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
}


/* =========================================================
   15. COLLECTION
========================================================= */

.sa-reference-home .reference-collection {
    padding:
        64px
        max(30px, calc((100vw - 1400px) / 2))
        28px;
    background: #f6f5f0;
}

.sa-reference-home .reference-collection-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.sa-reference-home .reference-collection-card {
    width: 100%;
    text-align: left;
}

.sa-reference-home .reference-collection-visual {
    width: 100%;
    aspect-ratio: 1 / .79;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #efeee9;
}

.sa-reference-home .reference-collection-visual img {
    width: 80%;
    height: 88%;
    object-fit: contain;
    transition: transform .35s ease;
}

.sa-reference-home .reference-collection-card:hover
.reference-collection-visual img {
    transform: scale(1.025);
}

.sa-reference-home .reference-collection-meta {
    padding: 15px 3px 0;
    display: flex;
    justify-content: space-between;
    gap: 15px;
}

.sa-reference-home .reference-collection-meta h3 {
    font-size: 14px;
    font-weight: 900;
}

.sa-reference-home .reference-collection-meta p {
    margin-top: 5px;
    color: #77736c;
    font-size: 10px;
    font-weight: 600;
}

.sa-reference-home .reference-collection-meta > span {
    font-size: 12px;
    font-weight: 700;
}

.sa-reference-home .reference-collection-footer {
    margin-top: 52px;
    padding: 24px 0;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    border-top: 1px solid rgba(17, 17, 17, .15);
}

.sa-reference-home .reference-collection-footer strong {
    font-size: 14px;
}

.sa-reference-home .reference-collection-footer p {
    font-family: Georgia, serif;
    font-size: 14px;
    font-style: italic;
}

.sa-reference-home .reference-collection-footer a {
    justify-self: end;
    font-size: 10px;
    font-weight: 700;
}


/* =========================================================
   16. PRODUCT DETAIL
========================================================= */

.sa-reference-home .reference-product-layer {
    position: fixed;
    inset: 0;
    z-index: 20000;
    display: none;
    align-items: center;
    justify-content: center;
}

.sa-reference-home .reference-product-layer.is-active {
    display: flex;
}

.sa-reference-home .reference-product-overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    background: rgba(20, 20, 20, .44);
}

.sa-reference-home .reference-product-detail {
    width: min(84vw, 1080px);
    max-height: 88vh;
    position: relative;
    z-index: 4;
    display: grid;
    grid-template-columns: 1.08fr .92fr;
    overflow-y: auto;
    background: #fff;
}

.sa-reference-home .reference-product-close {
    width: 34px;
    height: 34px;
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 10;
    font-size: 23px;
}

.sa-reference-home .reference-product-gallery {
    min-height: 610px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f1f0ec;
}

.sa-reference-home .reference-product-gallery > img {
    width: 88%;
    height: 540px;
    object-fit: contain;
}

.sa-reference-home .reference-gallery-switch {
    position: absolute;
    left: 50%;
    bottom: 22px;
    display: flex;
    transform: translateX(-50%);
}

.sa-reference-home .reference-gallery-switch button {
    min-width: 58px;
    padding: 8px 11px;
    border: 1px solid #ccc;
    font-size: 9px;
    font-weight: 800;
}

.sa-reference-home .reference-gallery-switch button.is-active {
    background: #111;
    color: #fff;
}

.sa-reference-home .reference-product-info {
    align-self: center;
    padding: 62px 48px;
}

.sa-reference-home .reference-product-label {
    color: #8d8982;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.2px;
}

.sa-reference-home .reference-product-info h2 {
    margin-top: 12px;
    font-size: clamp(34px, 3.5vw, 50px);
    font-weight: 800;
    line-height: .95;
}

.sa-reference-home .reference-product-message {
    margin-top: 17px;
    color: #6f6b65;
    font-size: 14px;
    line-height: 1.65;
}

.sa-reference-home .reference-product-price {
    display: block;
    margin-top: 18px;
    font-size: 16px;
}

.sa-reference-home .reference-product-option {
    margin-top: 30px;
}

.sa-reference-home .reference-option-heading {
    display: flex;
    justify-content: space-between;
    font-size: 10px;
    font-weight: 800;
}

.sa-reference-home .reference-product-info
.reference-color-row {
    justify-content: flex-start;
}

.sa-reference-home .reference-size-row {
    margin-top: 13px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 5px;
}

.sa-reference-home .reference-size-row button {
    height: 42px;
    border: 1px solid #c9c6bf;
    font-size: 12px;
    font-weight: 700;
}

.sa-reference-home .reference-size-row button.is-active,
.sa-reference-home .reference-size-row button:hover {
    background: #111;
    color: #fff;
}

.sa-reference-home .reference-quantity-row {
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 10px;
    font-weight: 800;
}

.sa-reference-home .reference-quantity-row > div {
    display: flex;
    border: 1px solid #c9c6bf;
}

.sa-reference-home .reference-quantity-row button,
.sa-reference-home .reference-quantity-row strong {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sa-reference-home .reference-quantity-row strong {
    border-inline: 1px solid #c9c6bf;
}

.sa-reference-home .reference-add-button {
    width: 100%;
    height: 50px;
    margin-top: 26px;
    background: #111;
    color: #fff;
    font-size: 11px;
    font-weight: 800;
}


/* =========================================================
   17. BAG PANEL
========================================================= */

.sa-reference-home .reference-bag-layer {
    position: fixed;
    inset: 0;
    z-index: 22000;
    display: none;
}

.sa-reference-home .reference-bag-layer.is-active {
    display: block;
}

.sa-reference-home .reference-bag-overlay {
    position: absolute;
    inset: 0;
    background: rgba(17, 17, 17, .4);
}

.sa-reference-home .reference-bag-panel {
    width: min(420px, 94vw);
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    padding: 26px;
    background: #fff;
}

.sa-reference-home .reference-bag-header {
    padding-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #dedbd4;
}

.sa-reference-home .reference-bag-header p {
    font-family: Georgia, serif;
    font-size: 28px;
}

.sa-reference-home .reference-bag-close {
    font-size: 22px;
}

.sa-reference-home .reference-bag-items {
    flex: 1;
    overflow-y: auto;
}

.sa-reference-home .reference-bag-empty {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #8d8982;
    font-size: 11px;
    font-weight: 700;
}

.sa-reference-home .reference-bag-bottom {
    padding-top: 20px;
    border-top: 1px solid #dedbd4;
}

.sa-reference-home .reference-bag-bottom > div {
    margin-bottom: 16px;
    display: flex;
    justify-content: space-between;
    font-size: 12px;
}

.sa-reference-home .reference-bag-bottom a {
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #111;
    font-size: 10px;
    font-weight: 800;
}

.sa-reference-home .reference-bag-bottom a:last-child {
    margin-top: 7px;
    background: #111;
    color: #fff;
}


/* =========================================================
   18. HOME FOOTER
========================================================= */

.sa-reference-home .reference-footer {
    padding:
        64px
        max(28px, calc((100vw - 1400px) / 2))
        22px;
    background: #111;
    color: #fff;
}

.sa-reference-home .reference-footer-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
}

.sa-reference-home .reference-footer-brand strong {
    font-size: 22px;
}

.sa-reference-home .reference-footer-brand p {
    margin-top: 11px;
    color: #9a9a9a;
    font-family: Georgia, serif;
    font-size: 14px;
    font-style: italic;
}

.sa-reference-home .reference-footer-links {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}

.sa-reference-home .reference-footer-links > div {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.sa-reference-home .reference-footer-links span {
    margin-bottom: 5px;
    color: #777;
    font-size: 9px;
    font-weight: 800;
}

.sa-reference-home .reference-footer-links a {
    color: #ccc;
    font-size: 12px;
}

.sa-reference-home .reference-footer-bottom {
    margin-top: 58px;
    padding-top: 20px;
    display: flex;
    justify-content: space-between;
    border-top: 1px solid rgba(255, 255, 255, .12);
    color: #888;
    font-size: 9px;
}

.sa-reference-home .reference-footer-bottom > div {
    display: flex;
    gap: 20px;
}


/* =========================================================
   19. CART PAGE
========================================================= */

.cart-page {
    padding: 80px 0 110px;
    background: #fff;
}

.cart-page-header {
    margin-bottom: 50px;
}

.cart-page-header h1 {
    font-size: clamp(48px, 8vw, 95px);
    font-weight: 900;
    line-height: .9;
    letter-spacing: -3px;
}

.empty-cart {
    display: none;
    padding: 90px 20px;
    text-align: center;
    border-top: 1px solid #ddd;
}

.empty-cart.active {
    display: block;
}

.empty-cart h2 {
    margin-bottom: 14px;
    font-size: clamp(28px, 4vw, 44px);
}

.empty-cart p {
    margin-bottom: 28px;
    color: #777;
    font-size: 13px;
}

.cart-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(300px, .5fr);
    gap: 60px;
    align-items: start;
}

.cart-table-header,
.cart-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 130px 110px;
    gap: 20px;
}

.cart-table-header {
    padding-bottom: 14px;
    border-bottom: 1px solid #111;
}

.cart-table-header span {
    font-size: 10px;
    font-weight: 800;
}

.cart-item {
    align-items: center;
    padding: 24px 0;
    border-bottom: 1px solid #e5e5e5;
}

.cart-product {
    display: grid;
    grid-template-columns: 115px 1fr;
    gap: 20px;
    align-items: center;
}

.cart-product-image {
    width: 115px;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    background: #f3f3f3;
}

.cart-product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.cart-product-info h3 {
    margin-bottom: 6px;
    font-size: 13px;
    font-weight: 800;
}

.cart-product-info p {
    margin-bottom: 4px;
    color: #777;
    font-size: 10px;
}

.cart-product-price {
    margin-top: 9px;
    font-size: 12px;
    font-weight: 700;
}

.cart-remove {
    margin-top: 10px;
    border-bottom: 1px solid #111;
    font-size: 9px;
    font-weight: 700;
}

.cart-quantity {
    display: flex;
    align-items: center;
    justify-content: center;
}

.quantity-control {
    height: 43px;
    display: grid;
    grid-template-columns: 40px 40px 40px;
    border: 1px solid #ccc;
}

.quantity-button,
.quantity-number {
    display: flex;
    align-items: center;
    justify-content: center;
}

.quantity-button {
    font-size: 17px;
}

.quantity-number {
    font-size: 11px;
    font-weight: 700;
}

.cart-item-total {
    text-align: center;
    font-size: 12px;
    font-weight: 800;
}

.cart-summary {
    position: sticky;
    top: 95px;
    padding: 32px;
    background: #f5f5f5;
}

.cart-summary h2 {
    margin-bottom: 28px;
    font-size: 19px;
    font-weight: 900;
}

.cart-summary-row {
    padding: 13px 0;
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #ddd;
    font-size: 12px;
}

.cart-summary-total {
    padding: 18px 0;
    display: flex;
    justify-content: space-between;
    font-size: 16px;
    font-weight: 900;
}

.checkout-button {
    width: 100%;
}


/* =========================================================
   20. CHECKOUT PAGE
========================================================= */

.checkout-page {
    padding: 80px 0 110px;
    background: #fff;
}

.checkout-page-header {
    margin-bottom: 50px;
}

.checkout-page-header h1 {
    font-size: clamp(48px, 8vw, 95px);
    font-weight: 900;
    line-height: .9;
    letter-spacing: -3px;
}

.checkout-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(330px, .7fr);
    gap: 60px;
    align-items: start;
}

.checkout-form {
    width: 100%;
}

.checkout-section {
    padding-bottom: 45px;
    margin-bottom: 45px;
    border-bottom: 1px solid #e3e3e3;
}

.checkout-section-heading {
    margin-bottom: 26px;
    display: flex;
    align-items: center;
    gap: 13px;
}

.checkout-section-heading span {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #111;
    color: #fff;
    font-size: 9px;
    font-weight: 800;
}

.checkout-section-heading h2 {
    font-size: 18px;
    font-weight: 900;
}

.checkout-fields {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.checkout-field.full {
    grid-column: 1 / -1;
}

.checkout-field label {
    display: block;
    margin-bottom: 8px;
    font-size: 10px;
    font-weight: 800;
}

.checkout-field input,
.checkout-field select {
    width: 100%;
    height: 51px;
    padding: 0 14px;
    border: 1px solid #ccc;
    background: #fff;
    color: #111;
    font-size: 13px;
    outline: none;
}

.checkout-field input:focus,
.checkout-field select:focus {
    border-color: #111;
}

.shipping-option {
    min-height: 70px;
    padding: 17px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    border: 1px solid #111;
}

.shipping-option > div {
    display: flex;
    align-items: center;
    gap: 11px;
}

.shipping-option span {
    font-size: 11px;
    font-weight: 800;
}

.shipping-option strong {
    font-size: 10px;
}

.payment-placeholder {
    padding: 28px;
    background: #f5f5f5;
    border: 1px solid #e2e2e2;
}

.payment-placeholder p {
    margin-bottom: 7px;
    font-size: 11px;
    font-weight: 900;
}

.payment-placeholder span {
    color: #777;
    font-size: 12px;
}

.checkout-submit {
    width: 100%;
    min-height: 55px;
}

.checkout-note {
    margin-top: 13px;
    color: #777;
    font-size: 10px;
    text-align: center;
}

.checkout-summary {
    position: sticky;
    top: 95px;
    padding: 32px;
    background: #f5f5f5;
}

.checkout-summary > h2 {
    margin-bottom: 25px;
    font-size: 19px;
    font-weight: 900;
}

.checkout-summary-item {
    padding: 15px 0;
    display: grid;
    grid-template-columns: 75px 1fr auto;
    gap: 13px;
    align-items: center;
    border-bottom: 1px solid #ddd;
}

.checkout-summary-image {
    width: 75px;
    aspect-ratio: 4 / 5;
    position: relative;
    background: #eee;
}

.checkout-summary-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.checkout-summary-quantity {
    min-width: 20px;
    height: 20px;
    position: absolute;
    top: -6px;
    right: -6px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #111;
    color: #fff;
    border-radius: 50%;
    font-size: 9px;
}

.checkout-summary-info h3 {
    margin-bottom: 5px;
    font-size: 12px;
    font-weight: 800;
}

.checkout-summary-info p {
    color: #777;
    font-size: 9px;
}

.checkout-summary-price {
    font-size: 11px;
    font-weight: 800;
}

.checkout-summary-row {
    padding: 12px 0;
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #ddd;
    font-size: 11px;
}

.checkout-summary-total {
    padding-top: 17px;
    display: flex;
    justify-content: space-between;
    font-size: 15px;
    font-weight: 900;
}

.checkout-empty {
    padding: 40px 10px;
    text-align: center;
}

.checkout-empty h3 {
    margin-bottom: 15px;
    font-size: 20px;
}

.checkout-back {
    display: inline-block;
    margin-top: 15px;
    font-size: 10px;
    font-weight: 700;
}


/* =========================================================
   21. PAYMENT NOTICE
========================================================= */

.payment-browser-notice {
    margin-bottom: 25px;
    padding: 20px;
    border: 1px solid #ddd;
    background: #f5f5f5;
}

.payment-browser-notice strong {
    display: block;
    margin-bottom: 8px;
    font-size: 11px;
}

.payment-browser-notice p {
    color: #666;
    font-size: 11px;
    line-height: 1.6;
}

.payment-browser-buttons {
    margin: 14px 0;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.browser-button {
    padding: 8px 10px;
    border: 1px solid #111;
    font-size: 8px;
    font-weight: 800;
}

.payment-browser-notice small {
    color: #777;
    font-size: 9px;
}


/* =========================================================
   22. ABOUT
========================================================= */

.about-hero {
    padding: 110px 30px 90px;
    background: #f5f5f5;
}

.about-hero h1 {
    font-size: clamp(60px, 10vw, 140px);
    font-weight: 900;
    line-height: .85;
    letter-spacing: -5px;
}

.about-intro {
    padding: 100px 0;
}

.about-intro-grid {
    display: grid;
    grid-template-columns: .35fr 1fr;
    gap: 70px;
}

.about-intro-number span {
    font-size: 12px;
    font-weight: 800;
}

.about-intro-content h2 {
    margin-bottom: 28px;
    font-size: clamp(35px, 5vw, 65px);
    line-height: .95;
}

.about-intro-content > p:not(.eyebrow) {
    max-width: 700px;
    color: #555;
    font-size: 14px;
    line-height: 1.8;
}

.about-intro-content .about-large-text {
    margin-top: 30px;
    color: #111;
    font-family: Georgia, serif;
    font-size: clamp(23px, 3vw, 38px);
    line-height: 1.35;
}

.about-statement {
    padding: 110px 30px;
    background: #111;
    color: #fff;
}

.about-statement-inner {
    width: min(100%, 1000px);
    margin-inline: auto;
}

.about-statement h2 {
    margin-bottom: 30px;
    font-size: clamp(45px, 7vw, 95px);
    line-height: .9;
}

.about-statement p:last-child {
    max-width: 650px;
    color: #aaa;
    font-size: 14px;
    line-height: 1.8;
}

.about-mission {
    padding: 100px 0;
}

.about-mission-grid {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 80px;
}

.about-mission-title h2 {
    font-size: clamp(40px, 5vw, 70px);
    line-height: .95;
}

.about-value {
    padding: 28px 0;
    border-bottom: 1px solid #ddd;
}

.about-value > span {
    display: block;
    margin-bottom: 10px;
    color: #999;
    font-size: 10px;
    font-weight: 800;
}

.about-value h3 {
    margin-bottom: 10px;
    font-size: 18px;
}

.about-value p {
    color: #666;
    font-size: 13px;
    line-height: 1.7;
}

.about-scripture {
    padding: 100px 30px;
    background: #f5f5f5;
    text-align: center;
}

.about-scripture blockquote {
    width: min(100%, 950px);
    margin-inline: auto;
    font-family: Georgia, serif;
    font-size: clamp(32px, 5vw, 62px);
    line-height: 1.2;
}

.about-cta {
    padding: 100px 30px;
    background: #111;
    color: #fff;
    text-align: center;
}

.about-cta h2 {
    margin-bottom: 30px;
    font-size: clamp(40px, 6vw, 80px);
}


/* =========================================================
   23. CONTACT
========================================================= */

.contact-hero {
    padding: 105px 30px 80px;
    background: #f5f5f5;
}

.contact-hero h1 {
    font-size: clamp(60px, 10vw, 135px);
    font-weight: 900;
    line-height: .85;
    letter-spacing: -5px;
}

.contact-section {
    padding: 95px 0;
}

.contact-layout {
    display: grid;
    grid-template-columns: .75fr 1.25fr;
    gap: 80px;
}

.contact-info h2 {
    margin-bottom: 20px;
    font-size: clamp(32px, 4vw, 52px);
}

.contact-intro {
    margin-bottom: 40px;
    color: #666;
    font-size: 14px;
    line-height: 1.75;
}

.contact-detail {
    padding: 20px 0;
    border-bottom: 1px solid #ddd;
}

.contact-detail > span {
    display: block;
    margin-bottom: 7px;
    color: #999;
    font-size: 9px;
    font-weight: 800;
}

.contact-detail a,
.contact-detail p {
    font-size: 13px;
}

.contact-socials {
    margin-top: 30px;
    display: flex;
    gap: 20px;
}

.contact-socials a {
    border-bottom: 1px solid #111;
    font-size: 11px;
    font-weight: 800;
}

.contact-form-wrapper {
    padding: 40px;
    background: #f5f5f5;
}

.contact-form-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.contact-field {
    margin-bottom: 20px;
}

.contact-field label {
    display: block;
    margin-bottom: 8px;
    font-size: 10px;
    font-weight: 800;
}

.contact-field input,
.contact-field select,
.contact-field textarea {
    width: 100%;
    padding: 0 14px;
    border: 1px solid #ccc;
    background: #fff;
    color: #111;
    font-size: 13px;
    outline: none;
}

.contact-field input,
.contact-field select {
    height: 51px;
}

.contact-field textarea {
    min-height: 150px;
    padding-top: 14px;
    resize: vertical;
}

.contact-field input:focus,
.contact-field select:focus,
.contact-field textarea:focus {
    border-color: #111;
}

.contact-submit {
    width: 100%;
}

.contact-form-message {
    margin-top: 14px;
    font-size: 11px;
    font-weight: 800;
}

.contact-support {
    padding: 70px 0;
    background: #111;
    color: #fff;
}

.contact-support-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.contact-support-grid > div {
    padding: 25px 35px;
    border-right: 1px solid #333;
}

.contact-support-grid > div:last-child {
    border-right: 0;
}

.contact-support-grid span {
    color: #777;
    font-size: 10px;
    font-weight: 800;
}

.contact-support-grid h3 {
    margin: 12px 0 8px;
    font-size: 18px;
}

.contact-support-grid p {
    color: #aaa;
    font-size: 12px;
}


/* =========================================================
   24. LEGAL / POLICY PAGES
========================================================= */

.legal-page,
.policy-page,
.privacy-page,
.shipping-page,
.refund-page {
    padding: 80px 0 110px;
}

.legal-page h1,
.policy-page h1,
.privacy-page h1,
.shipping-page h1,
.refund-page h1 {
    margin-bottom: 45px;
    font-size: clamp(42px, 7vw, 80px);
    font-weight: 900;
    line-height: .95;
}

.legal-page h2,
.policy-page h2,
.privacy-page h2,
.shipping-page h2,
.refund-page h2 {
    margin: 40px 0 14px;
    font-size: 24px;
}

.legal-page h3,
.policy-page h3,
.privacy-page h3,
.shipping-page h3,
.refund-page h3 {
    margin: 28px 0 10px;
    font-size: 17px;
}

.legal-page p,
.policy-page p,
.privacy-page p,
.shipping-page p,
.refund-page p,
.legal-page li,
.policy-page li,
.privacy-page li,
.shipping-page li,
.refund-page li {
    color: #555;
    font-size: 14px;
    line-height: 1.8;
}

.legal-page ul,
.policy-page ul,
.privacy-page ul,
.shipping-page ul,
.refund-page ul {
    padding-left: 22px;
}


/* =========================================================
   25. TABLET
========================================================= */

@media (max-width: 1024px) {

    .container {
        width: calc(100% - 40px);
    }

    .section {
        padding: 75px 0;
    }

    .navbar {
        width: calc(100% - 40px);
        height: 64px;
        grid-template-columns: auto 1fr auto;
    }

    .menu-toggle {
        display: block;
        grid-column: 1;
    }

    .main-nav {
        display: none;
    }

    .nav-actions {
        grid-column: 3;
    }

    .mobile-menu {
        width: 100%;
        position: absolute;
        top: 64px;
        left: 0;
        padding: 18px 20px;
        background: #fff;
        border-bottom: 1px solid #ddd;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translateY(-8px);
        transition: .25s ease;
    }

    .mobile-menu.active {
        display: block;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0);
    }

    .mobile-menu nav {
        display: flex;
        flex-direction: column;
    }

    .mobile-menu a {
        padding: 14px 0;
        border-bottom: 1px solid #eee;
        font-size: 11px;
        font-weight: 800;
    }

    .search-panel {
        top: 64px;
    }

    /* HOME */

    .sa-reference-home .reference-header {
        height: 64px;
    }

    .sa-reference-home .reference-header-inner {
        width: calc(100% - 34px);
    }

    .sa-reference-home .reference-nav {
        gap: 16px;
    }

    .sa-reference-home .reference-nav a,
    .sa-reference-home .reference-bag-button {
        font-size: 10px;
    }

    .sa-reference-home .reference-wordmark {
        font-size: 14px;
    }

    .sa-reference-home .reference-clothes {
        min-height: calc(100vh - 64px);
        padding-inline: 20px;
    }

    .sa-reference-home .reference-clothes-top {
        font-size: 8px;
    }

    .sa-reference-home .reference-rack-copy > p {
        font-size: 10px;
    }

    .sa-reference-home .reference-discover-button {
        font-size: 9px;
    }

    .sa-reference-home .reference-look-info h1,
    .sa-reference-home .reference-look-info h2 {
        font-size: 14px;
    }

    .sa-reference-home .reference-look-info > p {
        font-size: 11px;
    }

    .sa-reference-home .reference-purpose-copy p {
        font-size: 13px;
    }

    .sa-reference-home .reference-collection-meta h3 {
        font-size: 13px;
    }

    .sa-reference-home .reference-collection-meta p {
        font-size: 10px;
    }

    .sa-reference-home .reference-product-detail {
        width: 92vw;
    }

    .cart-layout,
    .checkout-layout {
        grid-template-columns: 1fr;
    }

    .cart-summary,
    .checkout-summary {
        position: static;
    }

    .about-intro-grid,
    .about-mission-grid {
        gap: 45px;
    }

    .contact-layout {
        gap: 45px;
    }

}


/* =========================================================
   26. MOBILE
========================================================= */

@media (max-width: 700px) {

    .container {
        width: calc(100% - 28px);
    }

    .section {
        padding: 60px 0;
    }

    .announcement-bar p {
        font-size: 8px;
    }

    .navbar {
        width: calc(100% - 24px);
    }

    .nav-icon-button {
        width: 38px;
    }

    .search-panel-inner {
        width: calc(100% - 24px);
        min-height: 115px;
    }

    .search-form {
        grid-template-columns: 1fr auto;
    }

    .search-submit {
        grid-column: 1 / -1;
    }

    /* HOME HEADER */

    .sa-reference-home .reference-header {
        height: 58px;
    }

    .sa-reference-home .reference-header-inner {
        width: calc(100% - 24px);
    }

    .sa-reference-home
    .reference-nav-left
    a:not(:first-child),

    .sa-reference-home
    .reference-nav-right
    a {
        display: none;
    }

    .sa-reference-home .reference-nav-left {
        gap: 0;
    }

    .sa-reference-home
    .reference-nav-left
    a:first-child {
        font-size: 9px;
    }

    .sa-reference-home .reference-wordmark {
        font-size: 12px;
    }

    .sa-reference-home .reference-bag-button {
        font-size: 9px;
    }

    .sa-reference-home .reference-bag-button span {
        min-width: 19px;
        height: 19px;
        font-size: 8px;
    }

    /* HOME CLOTHES */

    .sa-reference-home .reference-clothes {
        min-height: calc(100svh - 58px);
        padding: 18px 11px 26px;
    }

    .sa-reference-home .reference-clothes-top {
        font-size: 7px;
        letter-spacing: 1px;
    }

    .sa-reference-home .reference-progress {
        width: 42vw;
        top: 27px;
    }

    .sa-reference-home .reference-rack {
        min-height: calc(100svh - 98px);
    }

    .sa-reference-home .reference-rail {
        width: 100%;
        height: 390px;
        gap: 0;
    }

    .sa-reference-home .reference-rail-line {
        width: 90%;
        top: 65px;
    }

    .sa-reference-home .reference-hanging-piece {
        width: min(44vw, 175px);
        height: 315px;
        margin-top: 61px;
    }

    .sa-reference-home .reference-hanging-piece-pilgrim {
        transform: translateX(12px);
    }

    .sa-reference-home .reference-hanging-piece-godfirst {
        transform: translateX(-12px);
    }

    .sa-reference-home .reference-rack-copy {
        margin-top: -4px;
    }

    .sa-reference-home .reference-rack-copy > p {
        width: min(330px, 90vw);
        font-size: 9px;
    }

    .sa-reference-home .reference-discover-button {
        min-width: 190px;
        min-height: 40px;
        font-size: 9px;
    }

    .sa-reference-home .reference-rack-copy > span {
        font-size: 7px;
    }

    /* PRODUCT STAGE */

    .sa-reference-home .reference-product-stage {
        min-height: calc(100svh - 95px);
    }

    .sa-reference-home .reference-stage-slides,
    .sa-reference-home .reference-look {
        min-height: 540px;
    }

    .sa-reference-home .reference-look-visual {
        height: 380px;
    }

    .sa-reference-home .reference-main-garment {
        width: min(74vw, 315px);
        height: 350px;
        transform: translateX(-13px);
    }

    .sa-reference-home .reference-side-clothes {
        width: 125px;
        height: 225px;
        top: 48%;
        left: calc(50% + 108px);
        opacity: .58;
    }

    .sa-reference-home .reference-look-info h1,
    .sa-reference-home .reference-look-info h2 {
        font-size: 13px;
    }

    .sa-reference-home .reference-look-info > p {
        font-size: 10px;
    }

    .sa-reference-home .reference-view-button {
        min-width: 54px;
        height: 29px;
        font-size: 8px;
    }

    .sa-reference-home .reference-piece-button {
        font-size: 8px;
    }

    .sa-reference-home .reference-stage-arrow {
        width: 32px;
        height: 32px;
        top: 42%;
        font-size: 14px;
    }

    .sa-reference-home .reference-stage-arrow-left {
        left: 0;
    }

    .sa-reference-home .reference-stage-arrow-right {
        right: 0;
    }

    /* PURPOSE */

    .sa-reference-home .reference-purpose {
        padding: 24px 18px 64px;
    }

    .sa-reference-home .reference-purpose-top {
        font-size: 7px;
    }

    .sa-reference-home .reference-purpose-grid {
        min-height: 450px;
        grid-template-columns: 1fr;
        align-content: center;
        gap: 46px;
    }

    .sa-reference-home .reference-purpose h2 {
        font-size: clamp(52px, 16vw, 76px);
        letter-spacing: -3px;
    }

    .sa-reference-home .reference-purpose-copy {
        width: min(100%, 360px);
        justify-self: start;
    }

    .sa-reference-home .reference-purpose-copy p {
        font-size: 13px;
    }

    .sa-reference-home .reference-purpose-copy a {
        font-size: 9px;
    }

    /* COLLECTION */

    .sa-reference-home .reference-collection {
        padding: 38px 11px 22px;
    }

    .sa-reference-home .reference-collection-grid {
        gap: 7px;
    }

    .sa-reference-home .reference-collection-visual {
        aspect-ratio: .86 / 1;
    }

    .sa-reference-home .reference-collection-visual img {
        width: 93%;
        height: 90%;
    }

    .sa-reference-home .reference-collection-meta {
        padding-top: 11px;
        gap: 8px;
    }

    .sa-reference-home .reference-collection-meta h3 {
        font-size: 12px;
    }

    .sa-reference-home .reference-collection-meta p {
        font-size: 9px;
    }

    .sa-reference-home .reference-collection-meta > span {
        font-size: 10px;
    }

    .sa-reference-home .reference-collection-footer {
        margin-top: 38px;
        grid-template-columns: 1fr auto;
    }

    .sa-reference-home .reference-collection-footer strong {
        font-size: 12px;
    }

    .sa-reference-home .reference-collection-footer p {
        display: none;
    }

    .sa-reference-home .reference-collection-footer a {
        font-size: 9px;
    }

    /* PRODUCT MODAL */

    .sa-reference-home .reference-product-detail {
        width: 100%;
        height: 100%;
        max-height: none;
        grid-template-columns: 1fr;
    }

    .sa-reference-home .reference-product-gallery {
        min-height: 430px;
    }

    .sa-reference-home .reference-product-gallery > img {
        height: 380px;
    }

    .sa-reference-home .reference-product-info {
        padding: 40px 21px 58px;
    }

    .sa-reference-home .reference-product-label {
        font-size: 9px;
    }

    .sa-reference-home .reference-product-message {
        font-size: 13px;
    }

    .sa-reference-home .reference-option-heading {
        font-size: 9px;
    }

    .sa-reference-home .reference-size-row button {
        font-size: 11px;
    }

    .sa-reference-home .reference-bag-panel {
        width: 100%;
    }

    /* HOME FOOTER */

    .sa-reference-home .reference-footer {
        padding: 48px 19px 20px;
    }

    .sa-reference-home .reference-footer-inner {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .sa-reference-home .reference-footer-links {
        gap: 16px;
    }

    .sa-reference-home .reference-footer-links span {
        font-size: 8px;
    }

    .sa-reference-home .reference-footer-links a {
        font-size: 11px;
    }

    .sa-reference-home .reference-footer-bottom {
        font-size: 8px;
    }

    /* CART */

    .cart-page,
    .checkout-page {
        padding: 55px 0 80px;
    }

    .cart-page-header,
    .checkout-page-header {
        margin-bottom: 35px;
    }

    .cart-page-header h1,
    .checkout-page-header h1 {
        font-size: 48px;
        letter-spacing: -2px;
    }

    .cart-table-header {
        display: none;
    }

    .cart-item {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .cart-product {
        grid-template-columns: 95px 1fr;
    }

    .cart-product-image {
        width: 95px;
    }

    .cart-quantity {
        justify-content: flex-start;
    }

    .cart-item-total {
        text-align: left;
    }

    .cart-summary,
    .checkout-summary {
        padding: 24px 18px;
    }

    /* CHECKOUT */

    .checkout-fields {
        grid-template-columns: 1fr;
    }

    .checkout-field.full {
        grid-column: auto;
    }

    .checkout-summary-item {
        grid-template-columns: 65px 1fr auto;
    }

    .checkout-summary-image {
        width: 65px;
    }

    /* ABOUT */

    .about-hero,
    .contact-hero {
        padding: 75px 18px 60px;
    }

    .about-hero h1,
    .contact-hero h1 {
        font-size: 55px;
        letter-spacing: -3px;
    }

    .about-intro {
        padding: 70px 0;
    }

    .about-intro-grid,
    .about-mission-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .about-statement,
    .about-scripture,
    .about-cta {
        padding: 75px 18px;
    }

    .about-mission {
        padding: 70px 0;
    }

    /* CONTACT */

    .contact-section {
        padding: 70px 0;
    }

    .contact-layout {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .contact-form-wrapper {
        padding: 25px 18px;
    }

    .contact-form-row {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .contact-support-grid {
        grid-template-columns: 1fr;
    }

    .contact-support-grid > div {
        border-right: 0;
        border-bottom: 1px solid #333;
    }

    .contact-support-grid > div:last-child {
        border-bottom: 0;
    }

    /* FOOTER */

    .footer-inner {
        width: calc(100% - 28px);
        padding: 55px 0 45px;
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .footer-columns {
        gap: 20px;
    }

    .footer-bottom {
        width: calc(100% - 28px);
    }

}


/* =========================================================
   27. VERY SMALL PHONE
========================================================= */

@media (max-width: 390px) {

    .sa-reference-home .reference-wordmark {
        font-size: 11px;
    }

    .sa-reference-home .reference-rail {
        height: 350px;
    }

    .sa-reference-home .reference-hanging-piece {
        width: 44vw;
        height: 285px;
    }

    .sa-reference-home .reference-look-visual {
        height: 345px;
    }

    .sa-reference-home .reference-main-garment {
        width: 76vw;
        height: 320px;
    }

    .sa-reference-home .reference-side-clothes {
        width: 102px;
        height: 185px;
        left: calc(50% + 91px);
    }

    .sa-reference-home .reference-purpose h2 {
        font-size: 50px;
    }

    .sa-reference-home .reference-size-row {
        grid-template-columns: repeat(2, 1fr);
    }

    .footer-columns {
        grid-template-columns: 1fr;
    }

}


/* =========================================================
   28. ACCESSIBILITY
========================================================= */

@media (prefers-reduced-motion: reduce) {

    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }

}


/* ============================================
   SET APART — ABOUT & CONTACT
   MATCHING HOME EDITORIAL DESIGN
   ============================================ */

.sa-inner-page {
  --sa-ink: #171715;
  --sa-paper: #f6f5f0;
  --sa-line: #d9d7d0;
  --sa-muted: #68675f;

  margin: 0;
  background: var(--sa-paper);
  color: var(--sa-ink);
  font-family: Arial, Helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.sa-inner-page *,
.sa-inner-page *::before,
.sa-inner-page *::after {
  box-sizing: border-box;
}

.sa-inner-page a {
  color: inherit;
}

.sa-inner-page button,
.sa-inner-page input,
.sa-inner-page select,
.sa-inner-page textarea {
  font: inherit;
}

.sa-inner-page .sa-shell {
  width: min(100% - 100px, 1500px);
  margin-inline: auto;
}

/* HEADER */

.sa-inner-page .sa-page-header {
  position: relative;
  z-index: 20;
  width: 100%;
  background: var(--sa-paper);
  border-bottom: 1px solid var(--sa-line);
}

.sa-inner-page .sa-page-nav {
  min-height: 100px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 30px;
}

.sa-inner-page .sa-nav-links {
  display: flex;
  align-items: center;
  gap: clamp(18px, 2.3vw, 42px);
}

.sa-inner-page .sa-nav-right {
  justify-content: flex-end;
}

.sa-inner-page .sa-nav-links a {
  text-decoration: none;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.4px;
  white-space: nowrap;
  transition: opacity .2s ease;
}

.sa-inner-page .sa-nav-links a:hover {
  opacity: .5;
}

.sa-inner-page .sa-nav-links a[aria-current="page"] {
  text-decoration: underline;
  text-underline-offset: 6px;
}

.sa-inner-page .sa-wordmark {
  font-size: clamp(24px, 2.6vw, 39px);
  font-weight: 900;
  letter-spacing: -1.9px;
  white-space: nowrap;
  text-decoration: none;
  line-height: 1;
}

/* SHARED */

.sa-inner-page .sa-kicker {
  display: block;
  font-size: clamp(11px, 1vw, 13px);
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.sa-inner-page .sa-section-label {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding-bottom: 17px;
  border-bottom: 1px solid currentColor;
}

.sa-inner-page .sa-section-label span {
  font-size: clamp(11px, 1vw, 13px);
  font-weight: 700;
  letter-spacing: 1.4px;
}

.sa-inner-page .sa-editorial-hero {
  padding: 35px 0 90px;
  min-height: min(77vh, 800px);
  display: flex;
  flex-direction: column;
}

.sa-inner-page .sa-hero-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 90px 0;
}

.sa-inner-page .sa-editorial-hero h1 {
  max-width: 1350px;
  margin: 25px 0 35px;
  font-size: clamp(65px, 10.3vw, 170px);
  font-weight: 800;
  letter-spacing: -.075em;
  line-height: .91;
  overflow-wrap: normal;
}

.sa-inner-page .sa-editorial-hero h1 em {
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
  letter-spacing: -.085em;
}

.sa-inner-page .sa-hero-bottom {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 35px;
}

.sa-inner-page .sa-hero-bottom p {
  margin: 0;
  max-width: 490px;
  font-size: clamp(16px, 1.6vw, 23px);
  line-height: 1.5;
}

.sa-inner-page .sa-hero-bottom span {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.5px;
}

/* ABOUT */

.sa-inner-page .sa-about-story {
  padding: 105px 0 125px;
  background: #eae8e1;
}

.sa-inner-page .sa-story-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 75px;
  margin-top: 95px;
}

.sa-inner-page .sa-display-title {
  margin: 0;
  font-size: clamp(48px, 6.8vw, 105px);
  font-weight: 800;
  line-height: .98;
  letter-spacing: -.065em;
}

.sa-inner-page .sa-display-title em {
  font-family: Georgia, serif;
  font-weight: 400;
}

.sa-inner-page .sa-story-copy {
  align-self: end;
  max-width: 620px;
}

.sa-inner-page .sa-story-copy p {
  margin: 0 0 25px;
  font-size: clamp(18px, 1.8vw, 27px);
  line-height: 1.55;
}

.sa-inner-page .sa-story-copy p + p {
  font-size: clamp(16px, 1.35vw, 20px);
  color: #484741;
}

.sa-inner-page .sa-statement {
  background: #151515;
  color: #f6f5f0;
  padding: 110px 0 140px;
}

.sa-inner-page .sa-statement h2 {
  margin: 100px 0 35px;
  max-width: 1250px;
  font-size: clamp(54px, 8.5vw, 135px);
  font-weight: 800;
  letter-spacing: -.07em;
  line-height: .98;
}

.sa-inner-page .sa-statement p {
  max-width: 680px;
  margin: 0 0 0 auto;
  font-size: clamp(18px, 1.65vw, 25px);
  line-height: 1.6;
}

.sa-inner-page .sa-values {
  padding: 120px 0 145px;
}

.sa-inner-page .sa-values-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 90px;
  margin-top: 95px;
}

.sa-inner-page .sa-value {
  display: grid;
  grid-template-columns: 55px 1fr;
  gap: 25px;
  padding: 28px 0 35px;
  border-top: 1px solid var(--sa-line);
}

.sa-inner-page .sa-value > span {
  font-size: 13px;
  font-weight: 700;
}

.sa-inner-page .sa-value h3 {
  margin: 0 0 14px;
  font-size: clamp(26px, 2.8vw, 43px);
  letter-spacing: -.04em;
}

.sa-inner-page .sa-value p {
  margin: 0;
  max-width: 460px;
  font-size: clamp(16px, 1.3vw, 19px);
  line-height: 1.65;
}

.sa-inner-page .sa-scripture {
  padding: 105px 0 125px;
  background: #eae8e1;
}

.sa-inner-page .sa-scripture blockquote {
  margin: 85px 0 25px;
  max-width: 1250px;
  font-family: Georgia, serif;
  font-size: clamp(38px, 5.3vw, 82px);
  line-height: 1.22;
  letter-spacing: -.055em;
}

.sa-inner-page .sa-final-message {
  padding: 130px 0;
  background: #151515;
  color: white;
}

.sa-inner-page .sa-final-message h2 {
  margin: 70px 0 40px;
  font-size: clamp(48px, 7.7vw, 120px);
  line-height: 1;
  letter-spacing: -.065em;
}

.sa-inner-page .sa-text-link {
  display: inline-block;
  padding: 12px 0;
  border-bottom: 1px solid currentColor;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1px;
}

/* CONTACT */

.sa-inner-page .sa-contact-main {
  padding: 110px 0 140px;
}

.sa-inner-page .sa-contact-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  gap: clamp(60px, 7vw, 130px);
  margin-top: 100px;
}

.sa-inner-page .sa-contact-copy h2 {
  font-size: clamp(42px, 5.3vw, 83px);
  line-height: 1;
  letter-spacing: -.065em;
  margin: 0 0 35px;
}

.sa-inner-page .sa-contact-copy > p {
  max-width: 530px;
  font-size: clamp(18px, 1.6vw, 24px);
  line-height: 1.6;
}

.sa-inner-page .sa-contact-detail {
  padding: 28px 0;
  border-top: 1px solid var(--sa-line);
}

.sa-inner-page .sa-contact-detail:first-child {
  margin-top: 80px;
}

.sa-inner-page .sa-contact-detail > span {
  display: block;
  margin-bottom: 17px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.4px;
}

.sa-inner-page .sa-contact-detail p,
.sa-inner-page .sa-contact-detail a {
  margin: 0;
  font-size: clamp(16px, 1.45vw, 21px);
  line-height: 1.6;
  text-decoration: none;
  overflow-wrap: anywhere;
}

.sa-inner-page .sa-contact-socials {
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
}

.sa-inner-page .sa-contact-form {
  padding: clamp(25px, 4vw, 65px);
  border: 1px solid var(--sa-line);
  background: #ebe9e2;
}

.sa-inner-page .sa-form-heading {
  margin: 0 0 40px;
  font-size: clamp(24px, 3vw, 42px);
  font-weight: 700;
  letter-spacing: -.04em;
}

.sa-inner-page .sa-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.sa-inner-page .sa-field {
  min-width: 0;
  margin-bottom: 30px;
}

.sa-inner-page .sa-field label {
  display: block;
  margin-bottom: 13px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
}

.sa-inner-page .sa-field input,
.sa-inner-page .sa-field select,
.sa-inner-page .sa-field textarea {
  width: 100%;
  min-width: 0;
  padding: 14px 0;
  color: #171715;
  background: transparent;
  border: none;
  border-bottom: 1px solid #96948c;
  border-radius: 0;
  outline: none;
  font-size: 17px;
}

.sa-inner-page .sa-field textarea {
  min-height: 135px;
  resize: vertical;
}

.sa-inner-page .sa-field input:focus,
.sa-inner-page .sa-field select:focus,
.sa-inner-page .sa-field textarea:focus {
  border-color: #171715;
  border-bottom-width: 2px;
}

.sa-inner-page .sa-send {
  display: flex;
  width: 100%;
  min-height: 66px;
  justify-content: space-between;
  align-items: center;
  padding: 20px 25px;
  border: 1px solid #151515;
  border-radius: 0;
  background: #151515;
  color: white;
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 1px;
  transition: background .2s, color .2s;
}

.sa-inner-page .sa-send:hover {
  background: transparent;
  color: #151515;
}

.sa-inner-page .sa-send:disabled {
  opacity: .6;
  cursor: not-allowed;
}

.sa-inner-page .sa-privacy {
  margin: 20px 0 0;
  color: #65645f;
  font-size: 13px;
  line-height: 1.6;
}

.sa-inner-page .sa-form-feedback {
  margin: 18px 0 0;
  font-size: 15px;
  line-height: 1.5;
}

.sa-inner-page .sa-support {
  padding: 105px 0 125px;
  background: #eae8e1;
}

.sa-inner-page .sa-support-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 45px;
  margin-top: 85px;
}

.sa-inner-page .sa-support-item {
  border-top: 1px solid #b8b6ae;
  padding-top: 25px;
}

.sa-inner-page .sa-support-item span {
  font-size: 13px;
  font-weight: 700;
}

.sa-inner-page .sa-support-item h3 {
  margin: 35px 0 18px;
  font-size: clamp(23px, 2.5vw, 36px);
  letter-spacing: -.04em;
}

.sa-inner-page .sa-support-item p {
  margin: 0;
  font-size: 17px;
  line-height: 1.65;
}

/* FOOTER */

.sa-inner-page .sa-page-footer {
  padding: 90px 0 25px;
  background: #171715;
  color: #f6f5f0;
}

.sa-inner-page .sa-footer-top {
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 70px;
  padding-bottom: 95px;
}

.sa-inner-page .sa-footer-brand strong {
  display: block;
  font-size: clamp(37px, 5.2vw, 75px);
  line-height: 1;
  letter-spacing: -.07em;
}

.sa-inner-page .sa-footer-brand p {
  font-size: 17px;
  line-height: 1.6;
}

.sa-inner-page .sa-footer-links {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px;
}

.sa-inner-page .sa-footer-links div {
  display: flex;
  flex-direction: column;
  gap: 17px;
}

.sa-inner-page .sa-footer-links span {
  margin-bottom: 15px;
  font-size: 12px;
  letter-spacing: 1.5px;
  color: #aaa9a1;
}

.sa-inner-page .sa-footer-links a {
  width: fit-content;
  font-size: 15px;
  text-decoration: none;
}

.sa-inner-page .sa-footer-bottom {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
  padding-top: 25px;
  border-top: 1px solid #50504c;
  font-size: 12px;
  letter-spacing: 1px;
}

.sa-inner-page .sa-footer-bottom div {
  display: flex;
  gap: 25px;
  flex-wrap: wrap;
}

.sa-inner-page .sa-footer-bottom a {
  text-decoration: none;
}

/* TABLET */

@media (max-width: 1000px) {
  .sa-inner-page .sa-shell {
    width: min(100% - 60px, 1500px);
  }

  .sa-inner-page .sa-page-nav {
    min-height: 85px;
    gap: 15px;
  }

  .sa-inner-page .sa-nav-links {
    gap: 14px;
  }

  .sa-inner-page .sa-nav-links a {
    font-size: 11px;
    letter-spacing: .5px;
  }

  .sa-inner-page .sa-story-grid,
  .sa-inner-page .sa-values-grid,
  .sa-inner-page .sa-contact-grid {
    gap: 45px;
  }

  .sa-inner-page .sa-contact-grid {
    grid-template-columns: 1fr;
  }
}

/* MOBILE */

@media (max-width: 680px) {
  .sa-inner-page .sa-shell {
    width: calc(100% - 36px);
  }

  .sa-inner-page .sa-page-nav {
    min-height: 112px;
    grid-template-columns: 1fr;
    gap: 16px;
    justify-items: center;
    padding: 18px 0;
  }

  .sa-inner-page .sa-wordmark {
    grid-row: 1;
    font-size: 31px;
  }

  .sa-inner-page .sa-nav-left {
    grid-row: 2;
  }

  .sa-inner-page .sa-nav-right {
    grid-row: 3;
  }

  .sa-inner-page .sa-nav-links {
    justify-content: center;
    gap: 22px;
  }

  .sa-inner-page .sa-nav-links a {
    font-size: 11px;
  }

  .sa-inner-page .sa-editorial-hero {
    min-height: 570px;
    padding: 25px 0 55px;
  }

  .sa-inner-page .sa-hero-content {
    padding: 80px 0;
  }

  .sa-inner-page .sa-editorial-hero h1 {
    font-size: clamp(48px, 12vw, 78px);
    letter-spacing: -.07em;
  }

  .sa-inner-page .sa-hero-bottom {
    align-items: flex-start;
    flex-direction: column;
  }

  .sa-inner-page .sa-story-grid,
  .sa-inner-page .sa-values-grid,
  .sa-inner-page .sa-support-grid,
  .sa-inner-page .sa-footer-top {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .sa-inner-page .sa-about-story,
  .sa-inner-page .sa-values,
  .sa-inner-page .sa-contact-main,
  .sa-inner-page .sa-support,
  .sa-inner-page .sa-scripture {
    padding: 75px 0 90px;
  }

  .sa-inner-page .sa-statement,
  .sa-inner-page .sa-final-message {
    padding: 80px 0 95px;
  }

  .sa-inner-page .sa-statement h2 {
    margin-top: 60px;
  }

  .sa-inner-page .sa-form-row {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .sa-inner-page .sa-footer-links {
    gap: 20px;
  }

  .sa-inner-page .sa-footer-top {
    padding-bottom: 60px;
  }

  .sa-inner-page .sa-page-footer {
    padding-top: 75px;
  }
}

@media (max-width: 380px) {
  .sa-inner-page .sa-nav-links {
    gap: 13px;
  }

  .sa-inner-page .sa-nav-links a {
    font-size: 10px;
  }

  .sa-inner-page .sa-editorial-hero h1 {
    font-size: 46px;
  }

  .sa-inner-page .sa-footer-links {
    grid-template-columns: 1fr 1fr;
    row-gap: 35px;
  }
}


/* =====================================================
   SET APART — UNIFIED HEADER
   ABOUT & CONTACT MATCH HOME
   ===================================================== */

/* ACCESSIBILITY */

.sa-inner-page .skip-link {
    position: fixed;
    top: 10px;
    left: 10px;
    z-index: 99999;
    padding: 10px 14px;
    background: #111;
    color: #fff;
    font-size: 12px;
    transform: translateY(-200%);
}

.sa-inner-page .skip-link:focus {
    transform: translateY(0);
}

/* DESKTOP HEADER — EXACT HOME STRUCTURE */

.sa-inner-page .reference-header {
    width: 100%;
    height: 68px;
    position: sticky;
    top: 0;
    z-index: 5000;
    display: flex;
    align-items: center;
    background: rgba(246, 245, 240, .97);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(17, 17, 17, .08);
}

.sa-inner-page .reference-header-inner {
    width: min(calc(100% - 56px), 1460px);
    height: 100%;
    margin-inline: auto;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
}

.sa-inner-page .reference-nav {
    display: flex;
    align-items: center;
    gap: 27px;
}

.sa-inner-page .reference-nav-left {
    justify-self: start;
}

.sa-inner-page .reference-nav-right {
    justify-self: end;
}

.sa-inner-page .reference-nav a,
.sa-inner-page .reference-bag-button {
    position: relative;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    white-space: nowrap;
    color: #111;
}

.sa-inner-page .reference-nav a::after {
    content: "";
    width: 0;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: -7px;
    background: #111;
    transition: width .2s ease;
}

.sa-inner-page .reference-nav a:hover::after,
.sa-inner-page .reference-nav a[aria-current="page"]::after {
    width: 100%;
}

.sa-inner-page .reference-wordmark {
    grid-column: 2;
    justify-self: center;
    font-size: 15px;
    font-weight: 900;
    letter-spacing: -.2px;
    white-space: nowrap;
    color: #111;
}

.sa-inner-page .reference-bag-button {
    display: flex;
    align-items: center;
    gap: 7px;
}

.sa-inner-page .reference-bag-button span {
    min-width: 21px;
    height: 21px;
    padding: 0 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #111;
    border-radius: 50%;
    font-size: 9px;
}

/* TABLET — MATCH HOME */

@media (max-width: 1024px) {

    .sa-inner-page .reference-header {
        height: 64px;
    }

    .sa-inner-page .reference-header-inner {
        width: calc(100% - 34px);
    }

    .sa-inner-page .reference-nav {
        gap: 16px;
    }

    .sa-inner-page .reference-nav a,
    .sa-inner-page .reference-bag-button {
        font-size: 10px;
    }

    .sa-inner-page .reference-wordmark {
        font-size: 14px;
    }
}

/* MOBILE — MATCH HOME */

@media (max-width: 700px) {

    .sa-inner-page .reference-header {
        height: 58px;
    }

    .sa-inner-page .reference-header-inner {
        width: calc(100% - 24px);
    }

    .sa-inner-page
    .reference-nav-left
    a:not(:first-child),

    .sa-inner-page
    .reference-nav-right
    a:not(.reference-bag-button) {
        display: none;
    }

    .sa-inner-page .reference-nav-left {
        gap: 0;
    }

    .sa-inner-page
    .reference-nav-left
    a:first-child {
        font-size: 9px;
    }

    .sa-inner-page .reference-wordmark {
        font-size: 12px;
    }

    .sa-inner-page .reference-bag-button {
        font-size: 9px;
    }

    .sa-inner-page .reference-bag-button span {
        min-width: 19px;
        height: 19px;
        font-size: 8px;
    }
}

@media (max-width: 390px) {

    .sa-inner-page .reference-wordmark {
        font-size: 11px;
    }
}


/* SHOW ABOUT IN MOBILE HEADER */

@media (max-width: 700px) {

    .sa-reference-home .reference-nav-left a[href="about.html"],
    .sa-inner-page .reference-nav-left a[href="about.html"] {
        display: inline-flex;
        font-size: 9px;
    }

    .sa-reference-home .reference-nav-left,
    .sa-inner-page .reference-nav-left {
        gap: 12px;
    }

    .sa-reference-home .reference-header-inner,
    .sa-inner-page .reference-header-inner {
        grid-template-columns: 1fr auto 1fr;
    }
}


/* =================================================
   SET APART — CLOTHES RAIL EXPERIENCE
   VIDEO-INSPIRED / MANUAL INTERACTION
================================================= */

.sa-reference-home .reference-clothes {
  overflow: hidden;
}

/* SCROLLABLE GARMENT RAIL */

.sa-reference-home #saClothesRail {
  position: relative;
  display: block;
  width: 100%;
  max-width: 1500px;
  height: clamp(350px, 43vw, 520px);
  margin: 0 auto;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
  touch-action: pan-x pan-y;
  -webkit-overflow-scrolling: touch;
}

.sa-reference-home #saClothesRail::-webkit-scrollbar {
  display: none;
}

.sa-reference-home .sa-rail-track {
  position: relative;
  display: flex;
  align-items: flex-start;
  width: max-content;
  min-width: 100%;
  height: 100%;
  gap: clamp(6px, 1.2vw, 18px);
  padding: 0 clamp(20px, 6vw, 90px);
}

.sa-reference-home .sa-rail-bar {
  position: absolute;
  top: 53px;
  left: 0;
  right: 0;
  height: 2px;
  background: #77736c;
  pointer-events: none;
}

/* GARMENTS */

.sa-reference-home
#saClothesRail .reference-hanging-piece {
  position: relative;
  flex: 0 0 clamp(135px, 16vw, 215px);
  width: clamp(135px, 16vw, 215px);
  height: clamp(290px, 34vw, 430px);
  margin: 48px 0 0;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  scroll-snap-align: center;
  cursor: pointer;
  background: transparent;
  opacity: .9;
  transform: none;
  transition:
    opacity .4s ease,
    scale .6s cubic-bezier(.22,1,.36,1),
    translate .6s cubic-bezier(.22,1,.36,1),
    filter .4s ease;
  will-change: scale, translate;
}

.sa-reference-home
#saClothesRail .reference-hanging-piece img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center top;
  filter: drop-shadow(0 14px 12px rgba(0,0,0,.08));
}

.sa-reference-home
#saClothesRail .reference-hook {
  top: -16px;
}

/* HOVER */

@media (hover: hover) {
  .sa-reference-home
  #saClothesRail .reference-hanging-piece:hover {
    opacity: 1;
    translate: 0 -9px;
    scale: 1.035;
  }
}

/* SELECTED GARMENT */

.sa-reference-home
#saClothesRail .reference-hanging-piece.sa-selected {
  z-index: 10;
  opacity: 1;
  scale: 1.12;
  translate: 0 -8px;
}

/* TRANSITION TO PRODUCT */

.sa-reference-home .reference-rack {
  transition:
    opacity .55s ease,
    transform .7s cubic-bezier(.22,1,.36,1);
}

.sa-reference-home .reference-rack.sa-leaving {
  opacity: 0;
  transform: scale(.96);
  pointer-events: none;
}

.sa-reference-home .reference-product-stage {
  opacity: 0;
}

.sa-reference-home .reference-product-stage.is-active {
  display: flex;
  animation: saStageReveal .78s
    cubic-bezier(.22,1,.36,1) both;
}

.sa-reference-home .reference-look.is-active {
  display: flex;
}

@keyframes saStageReveal {
  from {
    opacity: 0;
    transform: translateY(20px) scale(.94);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* CHANGE BETWEEN PRODUCT VARIANTS */

.sa-reference-home
.reference-look.sa-slide-next .reference-look-visual {
  animation: saGarmentFromRight .6s
    cubic-bezier(.22,1,.36,1) both;
}

.sa-reference-home
.reference-look.sa-slide-prev .reference-look-visual {
  animation: saGarmentFromLeft .6s
    cubic-bezier(.22,1,.36,1) both;
}

@keyframes saGarmentFromRight {
  from {
    opacity: 0;
    transform: translateX(75px) scale(.92);
  }
  to {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}

@keyframes saGarmentFromLeft {
  from {
    opacity: 0;
    transform: translateX(-75px) scale(.92);
  }
  to {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}

/* MOBILE */

@media (max-width: 700px) {
  .sa-reference-home #saClothesRail {
    height: 365px;
  }

  .sa-reference-home .sa-rail-track {
    gap: 3px;
    padding-inline: 16px;
  }

  .sa-reference-home
  #saClothesRail .reference-hanging-piece {
    flex-basis: 145px;
    width: 145px;
    height: 290px;
  }
}

/* REDUCED MOTION */

@media (prefers-reduced-motion: reduce) {
  .sa-reference-home .reference-rack,
  .sa-reference-home .reference-product-stage,
  .sa-reference-home .reference-look-visual,
  .sa-reference-home .reference-hanging-piece {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}


/* CLOTHES — SINGLE MAINTAINED RULE SET (24 OCT 2026) */
.sa-reference-home #referenceProductStage{display:none!important}
.sa-reference-home #saClothesRail{
 position:relative!important;display:flex!important;justify-content:center!important;
 align-items:flex-start!important;gap:clamp(16px,7vw,100px)!important;
 width:min(96vw,950px)!important;height:clamp(270px,35vw,440px)!important;
 margin:0 auto!important;padding:0!important;overflow:visible!important;
}
.sa-reference-home #saClothesRail .sa-rail-bar{
 position:absolute!important;display:block!important;top:38px!important;left:8%!important;
 width:84%!important;height:2px!important;background:#74716b!important;
}
.sa-reference-home #saClothesRail .reference-hanging-piece{
 position:relative!important;display:flex!important;align-items:flex-start!important;
 justify-content:center!important;flex:0 0 clamp(145px,20vw,250px)!important;
 width:clamp(145px,20vw,250px)!important;height:clamp(220px,29vw,360px)!important;
 margin:34px 0 0!important;padding:0!important;opacity:1!important;
 transform-origin:50% 0!important;animation:saRailFloat 5s ease-in-out infinite!important;
 border:0!important;background:transparent!important;cursor:pointer!important;
}
.sa-reference-home #saClothesRail .reference-hanging-piece:nth-of-type(2){animation-delay:-2.5s!important}
.sa-reference-home #saClothesRail .reference-hanging-piece .reference-hook{display:none!important}
.sa-reference-home #saClothesRail .reference-hanging-piece img{
 width:100%!important;height:100%!important;max-width:100%!important;
 object-fit:contain!important;object-position:center top!important;
 transform:none!important;filter:none!important;
}
.sa-reference-home #saClothesRail .reference-hanging-piece-pilgrim img{
 width:92%!important;height:92%!important;
}
@keyframes saRailFloat{
 0%,100%{transform:translateY(0) rotate(-1deg)}
 50%{transform:translateY(-10px) rotate(1deg)}
}
.sa-reference-home #referenceProductLayer{
 position:fixed!important;inset:0!important;z-index:20000!important;
 background:#efeeeb!important;display:none!important;
}
.sa-reference-home #referenceProductLayer.is-active{display:flex!important}
.sa-reference-home #referenceProductLayer .reference-product-overlay{
 position:absolute!important;inset:0!important;background:transparent!important;
 backdrop-filter:none!important;
}
.sa-reference-home #referenceProductLayer .reference-product-detail{
 position:absolute!important;inset:0!important;
 width:100%!important;height:100dvh!important;min-height:100dvh!important;
 max-height:100dvh!important;display:flex!important;flex-direction:column!important;
 align-items:center!important;justify-content:center!important;
 gap:0!important;padding:32px 28px 20px!important;overflow-y:auto!important;
 border:0!important;border-radius:0!important;background:#efeeeb!important;
 box-shadow:none!important;backdrop-filter:none!important;
}
.sa-reference-home #referenceProductLayer .sa-showcase-title{
 position:absolute;top:18px;left:25px;z-index:8;
 font-size:10px;font-weight:800;letter-spacing:.15em;
}
.sa-reference-home #referenceProductLayer .reference-product-close{
 position:fixed!important;top:16px!important;right:22px!important;
 z-index:12!important;font-size:28px!important;
}
.sa-reference-home #referenceProductLayer .reference-product-gallery{
 position:relative!important;z-index:4!important;
 display:flex!important;flex-direction:column!important;align-items:center!important;
 justify-content:center!important;width:min(75vw,720px)!important;
 min-height:0!important;padding:0!important;background:transparent!important;
}
.sa-reference-home #referenceProductLayer #referenceDetailImage{
 display:block!important;width:min(64vw,600px)!important;
 height:min(53dvh,540px)!important;max-height:none!important;
 object-fit:contain!important;margin:0 auto!important;
}
.sa-reference-home #referenceProductLayer .reference-gallery-switch{
 position:static!important;display:flex!important;transform:none!important;
 margin:6px auto 0!important;gap:3px!important;
}
.sa-reference-home #referenceProductLayer .reference-product-info{
 position:relative!important;z-index:5!important;
 width:min(100%,470px)!important;align-self:center!important;
 margin:5px auto 0!important;padding:0!important;text-align:center!important;
}
.sa-reference-home #referenceProductLayer .reference-product-info h2{
 margin:3px auto!important;font-size:clamp(20px,2.5vw,30px)!important;
}
.sa-reference-home #referenceProductLayer .reference-product-message{display:none!important}
.sa-reference-home #referenceProductLayer .reference-product-price{
 display:block!important;font-size:13px!important;margin:4px auto!important;
}
.sa-reference-home #referenceProductLayer .reference-product-option:has(.reference-color-row){
 display:none!important;
}
.sa-reference-home #referenceProductLayer .reference-product-option:has(.reference-size-row){
 display:block!important;width:min(100%,310px)!important;margin:8px auto!important;
}
.sa-reference-home #referenceProductLayer .reference-size-row{
 display:grid!important;grid-template-columns:repeat(4,1fr)!important;
 gap:5px!important;margin:6px auto!important;
}
.sa-reference-home #referenceProductLayer .reference-size-row button{height:35px!important}
.sa-reference-home #referenceProductLayer .reference-quantity-row{
 display:flex!important;align-items:center!important;justify-content:space-between!important;
 width:min(100%,310px)!important;margin:7px auto!important;
}
.sa-reference-home #referenceProductLayer .reference-add-button{
 display:block!important;width:min(100%,280px)!important;height:43px!important;
 margin:8px auto 0!important;background:#181818!important;color:white!important;
}
.sa-reference-home #referenceProductLayer .sa-shadow-garment{
 display:block!important;position:absolute!important;z-index:2!important;
 top:23%!important;left:61%!important;
 width:min(37vw,420px)!important;height:min(57dvh,540px)!important;
 object-fit:contain!important;opacity:.5!important;filter:blur(10px)!important;
 pointer-events:none!important;
}
.sa-reference-home #referenceProductLayer .sa-shadow-garment[data-other=pilgrim]{
 left:62%!important;opacity:.56!important;
}
.sa-reference-home #referenceProductLayer .sa-shadow-garment[data-other=godfirst]{
 left:60%!important;opacity:.47!important;
}
.sa-reference-home #referenceProductLayer .sa-floating-color-tags{
 position:absolute!important;top:8%!important;right:clamp(26px,10vw,155px)!important;
 z-index:10!important;display:flex!important;flex-direction:row!important;gap:7px!important;
}
.sa-reference-home #referenceProductLayer .sa-color-hang-tag{
 position:relative!important;display:flex!important;align-items:center!important;
 justify-content:center!important;width:clamp(40px,4vw,60px)!important;
 min-height:76px!important;padding:14px 2px 5px!important;
 font-size:8px!important;letter-spacing:0!important;
 border:1px solid #a6a29b!important;box-shadow:none!important;
 transform-origin:50% -18px!important;
 animation:saColorSwing 4.4s ease-in-out infinite!important;
}
.sa-reference-home #referenceProductLayer .sa-color-hang-tag:nth-child(2){animation-delay:-1.1s!important}
.sa-reference-home #referenceProductLayer .sa-color-hang-tag:nth-child(3){animation-delay:-2.2s!important}
.sa-reference-home #referenceProductLayer .sa-color-hang-tag:nth-child(4){animation-delay:-3.3s!important}
.sa-reference-home #referenceProductLayer .sa-color-hang-tag:before{
 content:""!important;position:absolute!important;top:-18px!important;
 left:50%!important;height:18px!important;border-left:1px solid #888!important;
}
.sa-reference-home #referenceProductLayer .sa-color-hang-tag[data-color=beige]{background:#d6bf9d!important;color:#111!important}
.sa-reference-home #referenceProductLayer .sa-color-hang-tag[data-color=brown]{background:#71452f!important;color:#fff!important}
.sa-reference-home #referenceProductLayer .sa-color-hang-tag[data-color=black]{background:#232323!important;color:#fff!important}
.sa-reference-home #referenceProductLayer .sa-color-hang-tag[data-color=white]{background:#fff!important;color:#111!important}
.sa-reference-home #referenceProductLayer .sa-color-hang-tag.is-active{
 outline:2px solid #292929!important;outline-offset:3px!important;
 box-shadow:0 4px 0 rgba(0,0,0,.16)!important;
 animation:saColorActive 2.2s ease-in-out infinite!important;
}
@keyframes saColorSwing{0%,100%{transform:rotate(-1.3deg)}50%{transform:rotate(1.3deg)}}
@keyframes saColorActive{
 0%,100%{transform:translateY(-4px) rotate(-2.5deg)}
 50%{transform:translateY(-8px) rotate(2.5deg)}
}
.sa-reference-home #referenceProductLayer .sa-showcase-previous,
.sa-reference-home #referenceProductLayer .sa-showcase-next{
 position:absolute!important;z-index:11!important;top:49%!important;
 border:0!important;background:transparent!important;font-size:32px!important;
}
.sa-reference-home #referenceProductLayer .sa-showcase-previous{left:15px!important}
.sa-reference-home #referenceProductLayer .sa-showcase-next{right:15px!important}
.sa-reference-home .reference-collection-card,
.sa-reference-home .reference-collection-visual,
.sa-reference-home .reference-collection-visual img,
.sa-reference-home .reference-collection-card:hover .reference-collection-visual img{
 animation:none!important;transition:none!important;transform:none!important;
}
@media(max-width:700px){
 .sa-reference-home #saClothesRail{gap:12px!important;height:258px!important}
 .sa-reference-home #saClothesRail .reference-hanging-piece{
  flex-basis:39vw!important;width:39vw!important;height:205px!important;
 }
 .sa-reference-home #referenceProductLayer .reference-product-detail{padding:45px 12px 15px!important}
 .sa-reference-home #referenceProductLayer .reference-product-gallery{width:100%!important}
 .sa-reference-home #referenceProductLayer #referenceDetailImage{
  width:80vw!important;height:40dvh!important;
 }
 .sa-reference-home #referenceProductLayer .sa-floating-color-tags{
  top:10%!important;right:18px!important;gap:5px!important;
 }
 .sa-reference-home #referenceProductLayer .sa-color-hang-tag{
  width:35px!important;min-height:53px!important;font-size:7px!important;
 }
 .sa-reference-home #referenceProductLayer .sa-shadow-garment{
  left:55%!important;top:29%!important;width:45vw!important;
  filter:blur(8px)!important;
 }
}
@media(prefers-reduced-motion:reduce){
 .sa-reference-home #saClothesRail .reference-hanging-piece,
 .sa-reference-home #referenceProductLayer .sa-color-hang-tag{
  animation:none!important;
 }
}

/* RESTORED ORIGINAL COLLECTION SHOP VIEW — ONLY WHEN COLLECTION CARD CLICKED */
.sa-reference-home #referenceProductLayer.sa-collection-purchase{
 background:rgba(20,20,20,.48)!important;
 align-items:center!important;justify-content:center!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-overlay{
 background:rgba(20,20,20,.43)!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-detail{
 position:relative!important;inset:auto!important;
 width:min(90vw,1090px)!important;height:min(88dvh,760px)!important;
 min-height:0!important;max-height:88dvh!important;
 display:grid!important;grid-template-columns:1.08fr .92fr!important;
 align-items:stretch!important;gap:0!important;
 padding:0!important;overflow-y:auto!important;
 background:#fff!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-gallery{
 width:100%!important;min-height:550px!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 background:#f1f0ec!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase #referenceDetailImage{
 width:88%!important;height:480px!important;object-fit:contain!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info{
 width:100%!important;max-width:none!important;
 text-align:left!important;align-self:center!important;padding:50px 36px!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info h2{
 font-size:32px!important;text-align:left!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-message{
 display:block!important;margin:12px 0!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-price{
 margin:14px 0!important;text-align:left!important;font-size:16px!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-option:has(.reference-color-row){
 display:block!important;margin-top:16px!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-color-row{
 display:flex!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-option:has(.reference-size-row){
 width:100%!important;max-width:none!important;margin:19px 0!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-quantity-row{
 width:100%!important;max-width:none!important;margin:18px 0!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-add-button{
 width:100%!important;margin:18px 0 0!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .sa-floating-color-tags,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .sa-shadow-garment,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .sa-showcase-title,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .sa-showcase-previous,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .sa-showcase-next{
 display:none!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-close{
 position:absolute!important;right:14px!important;top:10px!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-gallery-switch{
 position:static!important;margin-top:4px!important;
}
.sa-reference-home #collection .reference-collection-card,
.sa-reference-home #collection .reference-collection-visual,
.sa-reference-home #collection .reference-collection-visual img{
 animation:none!important;transition:none!important;transform:none!important;
}
@media(max-width:700px){
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-detail{
  width:94vw!important;height:90dvh!important;max-height:90dvh!important;
  display:flex!important;flex-direction:column!important;overflow-y:auto!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-gallery{
  min-height:300px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase #referenceDetailImage{
  width:88%!important;height:260px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info{
  padding:25px 22px!important;
 }
}

/* CLOTHES ONLY: clean runway showcase, shopping options in DETAILS PRODUCT */
.sa-reference-home #referenceProductLayer:not(.sa-collection-purchase) .reference-product-price,
.sa-reference-home #referenceProductLayer:not(.sa-collection-purchase) .reference-product-option:has(.reference-size-row),
.sa-reference-home #referenceProductLayer:not(.sa-collection-purchase) .reference-quantity-row{
 display:none!important;
}
.sa-reference-home #referenceProductLayer:not(.sa-collection-purchase) .reference-add-button{
 display:block!important;width:min(100%,280px)!important;margin:12px auto 0!important;
}

/* COLLECTION PURCHASE ONLY — translucent premium glass */
.sa-reference-home #referenceProductLayer.sa-collection-purchase {
  background: rgba(20,20,20,.35)!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-overlay{
  background:rgba(20,20,20,.28)!important;
  backdrop-filter:blur(3px)!important;
  -webkit-backdrop-filter:blur(3px)!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-detail{
  background:rgba(255,255,255,.78)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  border:1px solid rgba(255,255,255,.45)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.18)!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-gallery{
  background:rgba(241,240,236,.55)!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info{
  background:transparent!important;
}

/* COLLECTION PURCHASE — unified readable glass panel, 24 Oct 2026 */
.sa-reference-home #referenceProductLayer.sa-collection-purchase {
  background:rgba(15,15,15,.42)!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-overlay {
  background:rgba(15,15,15,.22)!important;
  backdrop-filter:blur(5px)!important;
  -webkit-backdrop-filter:blur(5px)!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-detail {
  background:rgba(255,255,255,.86)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
  border:1px solid rgba(255,255,255,.52)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.18)!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-gallery,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info {
  background:transparent!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info p,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info span,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info label {
  color:#161616!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info h2 {
  color:#080808!important;font-weight:900!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-price,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-option-heading,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info strong {
  color:#101010!important;font-weight:800!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-message {
  color:#292929!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-add-button,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-add-button:hover {
  background:#111!important;color:#fff!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-size-row button.is-active {
  background:#111!important;color:#fff!important;
}

/* COLLECTION: clearer see-through glass with legible foreground (release 12) */
.sa-reference-home #referenceProductLayer.sa-collection-purchase{
 background:rgba(12,12,12,.16)!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-overlay{
 background:rgba(12,12,12,.12)!important;
 backdrop-filter:blur(1px)!important;
 -webkit-backdrop-filter:blur(1px)!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-detail{
 background:rgba(255,255,255,.46)!important;
 backdrop-filter:blur(5px)!important;
 -webkit-backdrop-filter:blur(5px)!important;
 border:1px solid rgba(255,255,255,.55)!important;
 box-shadow:0 12px 38px rgba(0,0,0,.12)!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-gallery,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info{
 background:transparent!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info h2,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-price,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-option-heading,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info strong{
 color:#090909!important;
 text-shadow:0 1px 1px rgba(255,255,255,.85)!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info p,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info span{
 color:#151515!important;
 text-shadow:0 1px 1px rgba(255,255,255,.75)!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-size-row button{
 background:rgba(255,255,255,.42)!important;
 color:#111!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-size-row button.is-active,
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-add-button{
 background:#111!important;color:#fff!important;text-shadow:none!important;
}

/* COLLECTION PURCHASE — slightly less transparent while retaining glass */
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-detail{
 background:rgba(255,255,255,.66)!important;
 backdrop-filter:blur(6px)!important;
 -webkit-backdrop-filter:blur(6px)!important;
}

/* COLLECTION PURCHASE — softer corners without changing layout */
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-detail{
  border-radius:18px!important;
  overflow:hidden!important;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-gallery{
  border-radius:18px 0 0 18px!important;
}
@media(max-width:700px){
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-detail{
  border-radius:14px!important;
  overflow-y:auto!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-gallery{
  border-radius:14px 14px 0 0!important;
 }
}

/* EXPERIMENTAL SHOWROOM RAIL — isolated to CLOTHES, never affects collection */
.sa-reference-home #saClothesRail{
  position:relative!important;
  isolation:isolate!important;
  display:flex!important;
  gap:clamp(16px,5vw,78px)!important;
  align-items:flex-start!important;
  justify-content:center!important;
  width:min(94vw,1000px)!important;
  height:clamp(300px,42vw,470px)!important;
  padding:0 40px!important;
  margin:0 auto!important;
  overflow:visible!important;
  background:linear-gradient(110deg,#e8e4dc 0%,#f4f0e8 46%,#e9e5dd 100%)!important;
  box-shadow:inset 0 3px 21px rgba(57,45,30,.045)!important;
}
.sa-reference-home #saClothesRail .sa-showroom-wall{
  position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse at 50% 19%,rgba(255,255,255,.78),transparent 73%);
}
.sa-reference-home #saClothesRail .sa-rail-bar{
  top:48px!important;left:5%!important;width:90%!important;height:8px!important;
  border-radius:8px!important;
  background:linear-gradient(#161616,#282828 45%,#090909 90%)!important;
  box-shadow:0 4px 7px rgba(0,0,0,.2)!important;
}
.sa-reference-home #saClothesRail .sa-rail-end{
  position:absolute;top:26px;z-index:2;width:42px;height:42px;
  border-radius:50%;background:radial-gradient(circle at 38% 29%,#343434,#090909 75%);
  border:3px solid #1d1d1d;box-shadow:0 5px 11px rgba(0,0,0,.23);
  pointer-events:none;
}
.sa-reference-home #saClothesRail .sa-rail-end:after{
  content:"";position:absolute;inset:12px;border-radius:50%;
  border:2px solid #545454;background:#141414;
}
.sa-reference-home #saClothesRail .sa-rail-end-left{left:calc(5% - 20px)}
.sa-reference-home #saClothesRail .sa-rail-end-right{right:calc(5% - 20px)}
.sa-reference-home #saClothesRail .reference-hanging-piece{
  flex:0 0 clamp(150px,22vw,255px)!important;
  width:clamp(150px,22vw,255px)!important;
  height:clamp(230px,32vw,355px)!important;
  position:relative!important;
  z-index:3!important;
  margin:72px 0 0!important;padding:0!important;
  transform-origin:50% -25px!important;
  animation:saShowroomFloat 5.8s ease-in-out infinite!important;
}
.sa-reference-home #saClothesRail .reference-hanging-piece:nth-of-type(2){
  animation-delay:-2.6s!important;
}
.sa-reference-home #saClothesRail .reference-hanging-piece img{
  position:relative!important;
  z-index:2!important;
  width:100%!important;height:100%!important;
  object-fit:contain!important;object-position:center top!important;
  filter:drop-shadow(7px 14px 9px rgba(0,0,0,.13))!important;
}
.sa-reference-home #saClothesRail .reference-hanging-piece-pilgrim img{
  width:92%!important;height:92%!important;
}
.sa-reference-home #saClothesRail .sa-showroom-hanger{
  display:block!important;position:absolute;top:-35px;left:50%;z-index:1;
  transform:translateX(-50%);width:100px;height:57px;pointer-events:none;
}
.sa-reference-home #saClothesRail .sa-showroom-hanger-hook{
  position:absolute;top:-22px;left:47px;width:12px;height:32px;
  border:3px solid #b39b79;border-bottom:0;border-radius:10px 10px 0 0;
  transform:rotate(-4deg);
}
.sa-reference-home #saClothesRail .sa-showroom-hanger-arms{
  position:absolute;left:9px;top:12px;width:82px;height:30px;
  border:5px solid #b69a70;border-top:0;
  transform:perspective(100px) rotateX(8deg);
  clip-path:polygon(50% 0,100% 72%,94% 100%,6% 100%,0 72%);
  background:rgba(193,157,110,.16);
}
@keyframes saShowroomFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(-.9deg)}
  50%{transform:translate3d(0,-7px,0) rotate(.9deg)}
}
@media(max-width:700px){
 .sa-reference-home #saClothesRail{
  width:96vw!important;height:290px!important;padding:0 18px!important;
  gap:10px!important;
 }
 .sa-reference-home #saClothesRail .sa-rail-bar{top:43px!important}
 .sa-reference-home #saClothesRail .sa-rail-end{top:25px;width:33px;height:33px}
 .sa-reference-home #saClothesRail .sa-rail-end:after{inset:9px}
 .sa-reference-home #saClothesRail .reference-hanging-piece{
  width:37vw!important;flex-basis:37vw!important;
  height:197px!important;margin-top:70px!important;
 }
 .sa-reference-home #saClothesRail .sa-showroom-hanger{transform:translateX(-50%) scale(.77)}
}
@media(prefers-reduced-motion:reduce){
 .sa-reference-home #saClothesRail .reference-hanging-piece{animation:none!important}
}

/* TEST BRANCH ONLY: hanger artwork on rail, original animated product modal remains untouched. */
.sa-reference-home #saClothesRail{gap:0!important;align-items:flex-start!important}
.sa-reference-home #saClothesRail .sa-rail-end{width:26px!important;height:26px!important;top:35px!important;border-width:2px!important}
.sa-reference-home #saClothesRail .sa-rail-end:after{inset:6px!important;border-width:1px!important}
.sa-reference-home #saClothesRail .sa-rail-end-left{left:calc(5% - 12px)!important}
.sa-reference-home #saClothesRail .sa-rail-end-right{right:calc(5% - 12px)!important}
.sa-reference-home #saClothesRail .sa-showroom-hanger{display:none!important}
.sa-reference-home #saClothesRail .reference-hanging-piece{margin-top:78px!important;flex-basis:clamp(150px,28vw,300px)!important;width:clamp(150px,28vw,300px)!important;transform-origin:50% -31px!important}
.sa-reference-home #saClothesRail .reference-hanging-piece-pilgrim{z-index:5!important}
.sa-reference-home #saClothesRail .reference-hanging-piece-godfirst{margin-left:-24px!important;z-index:4!important}
.sa-reference-home #saClothesRail .reference-hanging-piece-pilgrim img{width:100%!important;height:100%!important}
.sa-reference-home #saClothesRail .reference-hanging-piece::before{content:"";position:absolute;z-index:5;top:-30px;left:calc(50% - 5px);width:10px;height:42px;border:2px solid #303030;border-bottom:0;border-radius:10px 10px 0 0;pointer-events:none}
@media(max-width:700px){
 .sa-reference-home #saClothesRail .reference-hanging-piece{margin-top:78px!important;width:43vw!important;flex-basis:43vw!important}
 .sa-reference-home #saClothesRail .reference-hanging-piece-godfirst{margin-left:-12px!important}
 .sa-reference-home #saClothesRail .reference-hanging-piece::before{top:-35px;height:47px;width:8px;left:calc(50% - 4px)}
}

/* CLOTHES: transparent showroom backdrop; preserve rail, garments, and interactions. */
.sa-reference-home #saClothesRail{background:transparent!important;box-shadow:none!important}
.sa-reference-home #saClothesRail .sa-showroom-wall{display:none!important}

/* SET APART / UNIFIED PAGE SHELL — 2026-10-26
   Scoped to secondary editorial pages and checkout. HOME, products,
   contact form backend and PayPal checkout logic are unaffected. */
.sa-inner-page,.sa-unified-checkout{background:#f6f5f0;color:#151515}
.sa-inner-page .reference-header,.sa-unified-checkout .site-header{
 background:#f6f5f0!important;color:#151515!important;
 border-bottom:1px solid rgba(0,0,0,.12)!important;
 box-shadow:none!important
}
.sa-inner-page .reference-header-inner{max-width:1500px}
.sa-inner-page .reference-nav a,.sa-inner-page .reference-bag-button{
 font-size:clamp(11px,1vw,14px)!important;letter-spacing:.1em!important
}
.sa-inner-page .reference-wordmark{font-size:clamp(22px,2.7vw,39px)!important;letter-spacing:-.065em!important}
.sa-inner-page .sa-page-footer{background:#111!important;color:#f6f5f0!important}
.sa-inner-page .sa-page-footer a{color:inherit}
.sa-inner-page .sa-editorial-hero{min-height:clamp(420px,65vh,690px)}
.sa-inner-page .sa-editorial-hero h1{font-size:clamp(55px,10vw,148px)}
.sa-inner-page .sa-shell{width:min(92%,1380px)}
.sa-unified-checkout .announcement-bar{background:#111;color:#fff}
.sa-unified-checkout .site-header{position:relative;z-index:20}
.sa-unified-checkout .site-header .navbar{
 max-width:1500px!important;width:100%!important;margin:0 auto!important;
 min-height:80px!important;padding:12px clamp(16px,4vw,60px)!important;
 display:flex!important;align-items:center!important;justify-content:space-between!important;
 gap:clamp(10px,2vw,28px)!important
}
.sa-unified-checkout .site-logo{order:2;flex:0 0 auto}
.sa-unified-checkout .site-logo img{max-height:54px!important;width:auto!important}
.sa-unified-checkout .main-nav{order:1;display:flex;align-items:center;gap:clamp(12px,2vw,28px)}
.sa-unified-checkout .main-nav a{
 color:#151515!important;font-size:clamp(11px,.95vw,14px)!important;
 font-weight:650!important;letter-spacing:.08em!important;text-decoration:none!important
}
.sa-unified-checkout .nav-actions{order:3;display:flex;align-items:center;gap:12px}
.sa-unified-checkout .nav-icon-button{color:#151515}
.sa-unified-checkout .checkout-page{background:#f6f5f0}
.sa-unified-checkout .checkout-page-header h1{font-size:clamp(42px,6.5vw,92px);letter-spacing:-.055em}
.sa-unified-checkout .site-footer{background:#111;color:#f6f5f0}
@media(max-width:900px){
 .sa-unified-checkout .site-header .navbar{min-height:68px!important}
 .sa-unified-checkout .main-nav{display:none!important}
 .sa-unified-checkout .menu-toggle{display:flex!important;order:1}
 .sa-unified-checkout .site-logo{order:2}
 .sa-unified-checkout .nav-actions{order:3}
}
@media(max-width:700px){
 .sa-inner-page .sa-shell{width:min(92%,1380px)}
 .sa-inner-page .sa-editorial-hero{min-height:420px}
 .sa-unified-checkout .site-logo img{max-height:43px!important}
}

/* CHECKOUT EDITORIAL HERO: match ABOUT / CONTACT structure while preserving payment UI. */
.sa-unified-checkout .sa-checkout-hero{
 display:flex;flex-direction:column;justify-content:space-between;
 min-height:clamp(440px,65vh,690px);padding:clamp(24px,3.5vw,52px) 0;
 background:#f6f5f0;color:#151515;border-bottom:1px solid rgba(0,0,0,.15);
}
.sa-unified-checkout .sa-checkout-hero .sa-shell{width:min(92%,1380px);margin-inline:auto}
.sa-unified-checkout .sa-checkout-hero .sa-section-label,
.sa-unified-checkout .sa-checkout-hero .sa-hero-bottom{
 display:flex;justify-content:space-between;align-items:flex-start;gap:24px
}
.sa-unified-checkout .sa-checkout-hero .sa-section-label,
.sa-unified-checkout .sa-checkout-hero .sa-kicker,
.sa-unified-checkout .sa-checkout-hero .sa-hero-bottom a{
 font-size:clamp(11px,1vw,14px);font-weight:650;letter-spacing:.11em;text-transform:uppercase
}
.sa-unified-checkout .sa-checkout-hero .sa-hero-content{padding:60px 0}
.sa-unified-checkout .sa-checkout-hero h1{
 font-size:clamp(62px,10vw,148px);font-weight:700;line-height:.92;
 letter-spacing:-.075em;margin:20px 0 0;text-transform:uppercase
}
.sa-unified-checkout .sa-checkout-hero h1 em{font-weight:400;text-transform:none}
.sa-unified-checkout .sa-checkout-hero .sa-hero-bottom p{
 margin:0;max-width:400px;font-size:clamp(15px,1.35vw,19px);line-height:1.6
}
.sa-unified-checkout .sa-checkout-hero .sa-hero-bottom a{
 color:inherit;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:6px
}
.sa-unified-checkout .checkout-page-header h2{
 font-size:clamp(28px,4vw,56px);line-height:1.05;letter-spacing:-.05em;margin:8px 0 28px
}
@media(max-width:700px){
 .sa-unified-checkout .sa-checkout-hero{min-height:420px;padding:25px 0 30px}
 .sa-unified-checkout .sa-checkout-hero .sa-hero-content{padding:45px 0}
 .sa-unified-checkout .sa-checkout-hero h1{font-size:clamp(58px,13vw,96px)}
 .sa-unified-checkout .sa-checkout-hero .sa-hero-bottom{flex-direction:column;gap:18px}
 .sa-unified-checkout .sa-checkout-hero .sa-section-label{gap:12px}
 .sa-unified-checkout .sa-checkout-hero .sa-section-label span:last-child{text-align:right}
}

/* CHECKOUT header: same exact desktop layout as HOME (2026-10-26). */
.sa-unified-checkout .announcement-bar{display:none!important}
.sa-unified-checkout .reference-header {
    width: 100%;
    height: 68px;
    position: sticky;
    top: 0;
    z-index: 5000;
    display: flex;
    align-items: center;
    background: rgba(246, 245, 240, .97);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(17, 17, 17, .08);
}

.sa-unified-checkout .reference-header-inner {
    width: min(calc(100% - 56px), 1460px);
    height: 100%;
    margin-inline: auto;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
}

.sa-unified-checkout .reference-nav {
    display: flex;
    align-items: center;
    gap: 27px;
}

.sa-unified-checkout .reference-nav-left {
    justify-self: start;
}

.sa-unified-checkout .reference-nav-right {
    justify-self: end;
}

.sa-unified-checkout .reference-nav a,
.sa-unified-checkout .reference-bag-button {
    position: relative;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    white-space: nowrap;
}

.sa-unified-checkout .reference-nav a::after {
    content: "";
    width: 0;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: -7px;
    background: #111;
    transition: width .2s ease;
}

.sa-unified-checkout .reference-nav a:hover::after,
.sa-unified-checkout .reference-nav a[aria-current="page"]::after {
    width: 100%;
}

.sa-unified-checkout .reference-wordmark {
    grid-column: 2;
    justify-self: center;
    font-size: 15px;
    font-weight: 900;
    letter-spacing: -.2px;
    white-space: nowrap;
}

.sa-unified-checkout .reference-bag-button {
    display: flex;
    align-items: center;
    gap: 7px;
}

.sa-unified-checkout .reference-bag-button span {
    min-width: 21px;
    height: 21px;
    padding: 0 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #111;
    border-radius: 50%;
    font-size: 9px;
}



.sa-unified-checkout .reference-header{
 position:sticky!important;top:0!important;z-index:5000!important;
 background:rgba(246,245,240,.97)!important;height:68px!important;
 border-bottom:1px solid rgba(17,17,17,.08)!important;
}
.sa-unified-checkout .reference-header-inner{
 width:min(calc(100% - 56px),1460px)!important;height:100%!important;
 margin-inline:auto!important;display:grid!important;
 grid-template-columns:1fr auto 1fr!important;align-items:center!important
}
.sa-unified-checkout .reference-nav{display:flex!important;align-items:center!important;gap:27px!important}
.sa-unified-checkout .reference-nav-left{justify-self:start!important}
.sa-unified-checkout .reference-nav-right{justify-self:end!important}
.sa-unified-checkout .reference-nav a,.sa-unified-checkout .reference-bag-button{
 font-size:11px!important;font-weight:800!important;letter-spacing:1.2px!important;
 text-transform:uppercase!important;color:#111!important;text-decoration:none!important
}
.sa-unified-checkout .reference-wordmark{
 grid-column:2!important;justify-self:center!important;color:#111!important;
 font-size:15px!important;font-weight:900!important;letter-spacing:-.2px!important;
 text-decoration:none!important;white-space:nowrap!important
}
.sa-unified-checkout .reference-bag-button{display:flex!important;align-items:center!important;gap:7px!important}
.sa-unified-checkout .reference-bag-button span{
 min-width:21px!important;height:21px!important;padding:0 5px!important;
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 border:1px solid #111!important;border-radius:50%!important;font-size:9px!important
}
.sa-unified-checkout .sa-checkout-menu-toggle{display:none!important}
@media(max-width:900px){
 .sa-unified-checkout .reference-header{height:64px!important}
 .sa-unified-checkout .reference-header-inner{width:calc(100% - 34px)!important}
 .sa-unified-checkout .reference-nav-left{display:none!important}
 .sa-unified-checkout .reference-header-inner{grid-template-columns:1fr auto 1fr!important}
 .sa-unified-checkout .reference-wordmark{grid-column:2!important}
 .sa-unified-checkout .sa-checkout-menu-toggle{display:flex!important;grid-column:1!important;grid-row:1!important;justify-self:start!important;order:unset!important}
 .sa-unified-checkout .reference-nav-right{grid-column:3!important;grid-row:1!important}
 .sa-unified-checkout .reference-nav-right>a:first-child{display:none!important}
}
@media(max-width:600px){
 .sa-unified-checkout .reference-header{height:58px!important}
 .sa-unified-checkout .reference-header-inner{width:calc(100% - 26px)!important}
 .sa-unified-checkout .reference-nav-right{gap:0!important}
 .sa-unified-checkout .reference-wordmark{font-size:14px!important}
}

/* Accessibility: keep skip navigation hidden until keyboard focus (checkout fix). */
.sa-unified-checkout > .skip-link:not(:focus):not(:focus-visible){
 position:absolute!important;width:1px!important;height:1px!important;
 padding:0!important;margin:-1px!important;overflow:hidden!important;
 clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;
 white-space:nowrap!important;border:0!important;
 transform:none!important;
}
.sa-unified-checkout > .skip-link:focus,
.sa-unified-checkout > .skip-link:focus-visible{
 position:fixed!important;top:10px!important;left:10px!important;
 width:auto!important;height:auto!important;padding:10px 14px!important;
 margin:0!important;overflow:visible!important;clip:auto!important;
 clip-path:none!important;white-space:normal!important;
 background:#111!important;color:#fff!important;z-index:99999!important;
 transform:none!important;
}

/* GLOBAL ACCESSIBILITY: visually hide skip link on ALL pages until keyboard focus. */
html body a.skip-link:not(:focus):not(:focus-visible){
 position:fixed!important;top:0!important;left:0!important;
 width:1px!important;height:1px!important;padding:0!important;
 margin:0!important;border:0!important;overflow:hidden!important;
 clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;
 white-space:nowrap!important;transform:translateY(-200vh)!important;
 opacity:0!important;pointer-events:none!important;
}
html body a.skip-link:focus,
html body a.skip-link:focus-visible{
 position:fixed!important;top:10px!important;left:10px!important;
 width:auto!important;height:auto!important;padding:10px 14px!important;
 margin:0!important;overflow:visible!important;clip:auto!important;
 clip-path:none!important;white-space:normal!important;transform:none!important;
 opacity:1!important;pointer-events:auto!important;
 background:#111!important;color:#fff!important;z-index:999999!important;
}

/* UNIFIED HOME SHELL / CART + POLICIES + ORDER SUCCESS, October 2026 */
.sa-unified-shell{background:#f6f5f0;color:#111}
.sa-unified-shell .announcement-bar{display:none!important}
.sa-unified-shell .reference-header{
 width:100%;height:68px;position:sticky;top:0;z-index:5000;
 display:flex;align-items:center;background:rgba(246,245,240,.97);
 backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
 border-bottom:1px solid rgba(17,17,17,.08)
}
.sa-unified-shell .reference-header-inner{
 width:min(calc(100% - 56px),1460px);height:100%;margin-inline:auto;
 display:grid;grid-template-columns:1fr auto 1fr;align-items:center
}
.sa-unified-shell .reference-nav{display:flex;align-items:center;gap:27px}
.sa-unified-shell .reference-nav-left{justify-self:start}
.sa-unified-shell .reference-nav-right{justify-self:end}
.sa-unified-shell .reference-nav a,.sa-unified-shell .reference-bag-button{
 position:relative;font-size:11px;font-weight:800;letter-spacing:1.2px;
 text-transform:uppercase;white-space:nowrap;color:#111;text-decoration:none
}
.sa-unified-shell .reference-nav a::after{content:"";width:0;height:1px;position:absolute;left:0;bottom:-7px;background:#111;transition:width .2s ease}
.sa-unified-shell .reference-nav a:hover::after{width:100%}
.sa-unified-shell .reference-wordmark{
 grid-column:2;justify-self:center;font-size:15px;font-weight:900;
 letter-spacing:-.2px;white-space:nowrap;color:#111;text-decoration:none
}
.sa-unified-shell .reference-bag-button{display:flex;align-items:center;gap:7px}
.sa-unified-shell .reference-bag-button span{
 min-width:21px;height:21px;padding:0 5px;display:inline-flex;
 align-items:center;justify-content:center;border:1px solid #111;
 border-radius:50%;font-size:9px
}
.sa-unified-shell .sa-shell-menu-toggle{display:none}
.sa-unified-shell .reference-footer{
 background:#111;color:#f6f5f0;padding:clamp(40px,6vw,92px) clamp(20px,4vw,60px) 22px
}
.sa-unified-shell .reference-footer-inner{
 width:min(100%,1460px);margin:auto;display:flex;justify-content:space-between;
 align-items:flex-start;gap:50px;padding-bottom:60px
}
.sa-unified-shell .reference-footer-brand strong{font-size:clamp(24px,3.1vw,46px);letter-spacing:-.055em}
.sa-unified-shell .reference-footer-brand p{margin-top:12px;font-size:13px;opacity:.75}
.sa-unified-shell .reference-footer-links{display:flex;gap:clamp(30px,6vw,110px)}
.sa-unified-shell .reference-footer-links>div{display:flex;flex-direction:column;gap:13px}
.sa-unified-shell .reference-footer-links span{font-size:10px;font-weight:800;letter-spacing:.14em;opacity:.55;margin-bottom:9px}
.sa-unified-shell .reference-footer a{color:#f6f5f0;text-decoration:none;font-size:13px}
.sa-unified-shell .reference-footer-bottom{
 width:min(100%,1460px);margin:auto;border-top:1px solid rgba(255,255,255,.2);
 padding-top:22px;display:flex;align-items:center;justify-content:space-between;
 gap:20px;font-size:11px;letter-spacing:.08em
}
.sa-unified-shell .reference-footer-bottom>div{display:flex;gap:24px;flex-wrap:wrap}
.sa-unified-shell .reference-footer-bottom a{font-size:11px}
.sa-unified-shell .cart-page,.sa-unified-shell .legal-page,
.sa-unified-shell .order-success-page{background:#f6f5f0!important;color:#111!important}
.sa-unified-shell .policy-page{background:#f6f5f0;color:#111}
.sa-unified-shell .legal-header h1,.sa-unified-shell .policy-title,
.sa-unified-shell .cart-page-header h1{font-size:clamp(42px,6vw,92px);letter-spacing:-.055em;line-height:1.02}
.sa-unified-shell .legal-header,.sa-unified-shell .policy-header{border-bottom:1px solid rgba(17,17,17,.16);padding-bottom:32px}
.sa-unified-shell .order-success-card{background:#f6f5f0!important}
@media(max-width:900px){
 .sa-unified-shell .reference-header{height:64px}
 .sa-unified-shell .reference-header-inner{width:calc(100% - 34px)}
 .sa-unified-shell .reference-nav-left{display:none}
 .sa-unified-shell .sa-shell-menu-toggle{
  display:flex;grid-column:1;grid-row:1;justify-self:start
 }
 .sa-unified-shell .reference-nav-right{grid-column:3;grid-row:1}
 .sa-unified-shell .reference-nav-right>a:first-child{display:none}
 .sa-unified-shell .reference-footer-inner{flex-direction:column;gap:35px}
}
@media(max-width:600px){
 .sa-unified-shell .reference-header{height:58px}
 .sa-unified-shell .reference-header-inner{width:calc(100% - 26px)}
 .sa-unified-shell .reference-wordmark{font-size:14px}
 .sa-unified-shell .reference-footer-links{gap:22px;flex-wrap:wrap}
 .sa-unified-shell .reference-footer-bottom{align-items:flex-start;flex-direction:column}
 .sa-unified-shell .legal-header h1,.sa-unified-shell .policy-title,
 .sa-unified-shell .cart-page-header h1{font-size:clamp(38px,10vw,60px)}
}

/* Keep expanded setapart-ht wordmark centered and readable on small screens. */
.sa-reference-home .reference-wordmark,
.sa-inner-page .reference-wordmark,
.sa-unified-checkout .reference-wordmark,
.sa-unified-shell .reference-wordmark{
 white-space:nowrap;line-height:1.1;letter-spacing:-.035em!important
}
@media(max-width:600px){
 .sa-reference-home .reference-wordmark,
 .sa-inner-page .reference-wordmark,
 .sa-unified-checkout .reference-wordmark,
 .sa-unified-shell .reference-wordmark{
  font-size:clamp(12px,3.25vw,15px)!important;
 }
 .sa-reference-home .reference-nav-right,
 .sa-inner-page .reference-nav-right,
 .sa-unified-checkout .reference-nav-right,
 .sa-unified-shell .reference-nav-right{gap:8px!important}
}

/* 2026-10-26 / SINGLE HOME HEADER TYPOGRAPHY SCALE, ALL PAGES.
   Match actual HOME desktop values (11px navigation, 15px wordmark). */
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .reference-nav a,
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .reference-bag-button{
 font-size:11px!important;font-weight:800!important;letter-spacing:1.2px!important;
 line-height:1.25!important;text-transform:uppercase!important;
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .reference-wordmark{
 font-size:15px!important;font-weight:900!important;letter-spacing:-.2px!important;
 line-height:1.1!important;white-space:nowrap!important;
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .reference-nav{gap:27px!important}
@media(max-width:900px){
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .reference-wordmark{font-size:14px!important}
}
@media(max-width:600px){
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .reference-wordmark{
  font-size:clamp(12px,3.25vw,14px)!important
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .reference-bag-button{font-size:11px!important}
}

/* UNIVERSAL FOOTER: identical font scale, spacing and grid to HOME. */
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer{
 padding:64px max(28px,calc((100vw - 1400px)/2)) 22px!important;
 background:#111!important;color:#fff!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-inner{
 width:auto!important;margin:0!important;padding:0!important;
 display:grid!important;grid-template-columns:1fr 1fr!important;
 gap:70px!important;align-items:start!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-brand strong{
 font-size:22px!important;font-weight:700!important;letter-spacing:normal!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-brand p{
 margin-top:11px!important;color:#9a9a9a!important;font-family:Georgia,serif!important;
 font-size:14px!important;font-style:italic!important;opacity:1!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-links{
 display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:28px!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-links>div{
 display:flex!important;flex-direction:column!important;gap:10px!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-links span{
 margin-bottom:5px!important;color:#777!important;font-size:9px!important;
 font-weight:800!important;letter-spacing:normal!important;opacity:1!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-links a{
 color:#ccc!important;font-size:12px!important;line-height:normal!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-bottom{
 width:auto!important;margin:58px 0 0!important;padding-top:20px!important;
 display:flex!important;justify-content:space-between!important;align-items:center!important;
 flex-direction:row!important;gap:20px!important;
 border-top:1px solid rgba(255,255,255,.12)!important;color:#888!important;
 font-size:9px!important;letter-spacing:normal!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-bottom>div{
 display:flex!important;gap:20px!important;flex-wrap:wrap!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-bottom a{
 color:#888!important;font-size:9px!important
}
@media(max-width:700px){
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer{
  padding:48px 19px 20px!important
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-inner{
  grid-template-columns:1fr!important;gap:42px!important
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-links{gap:16px!important}
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-links span{font-size:8px!important}
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-links a{font-size:11px!important}
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-bottom{font-size:8px!important}
}

/* Exact HOME footer proportions across every setapart-ht page. */
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer{
 padding:64px max(28px,calc((100vw - 1400px)/2)) 22px!important;
 background:#111!important;color:#fff!important;
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-inner{
 display:grid!important;grid-template-columns:1fr 1fr!important;gap:70px!important;
 width:auto!important;max-width:none!important;margin:0!important;
 padding:0!important;align-items:start!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-brand strong{
 font-size:22px!important;font-weight:700!important;letter-spacing:normal!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-brand p{
 margin-top:11px!important;color:#9a9a9a!important;font-family:Georgia,serif!important;
 font-size:14px!important;font-style:italic!important;opacity:1!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-links{
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 gap:28px!important;width:auto!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-links>div{
 display:flex!important;flex-direction:column!important;gap:10px!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-links span{
 margin-bottom:5px!important;color:#777!important;font-size:9px!important;
 font-weight:800!important;letter-spacing:normal!important;opacity:1!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-links a{
 color:#ccc!important;font-size:12px!important;font-weight:400!important;
 text-decoration:none!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-bottom{
 margin:58px 0 0!important;padding:20px 0 0!important;width:auto!important;
 border-top:1px solid rgba(255,255,255,.12)!important;
 display:flex!important;justify-content:space-between!important;
 color:#888!important;font-size:9px!important;letter-spacing:normal!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-bottom>div{
 display:flex!important;gap:20px!important
}
:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-bottom a{
 font-size:9px!important;color:#888!important
}
@media(max-width:800px){
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer{
  padding:48px 24px 22px!important
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-inner{
  grid-template-columns:1fr!important;gap:36px!important
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-links{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important
 }
}
@media(max-width:480px){
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer{
  padding:40px 18px 20px!important
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-links{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-footer-bottom{
  flex-wrap:wrap!important;gap:15px!important
 }
}

/* HOME / COLLECTION: visual garment size parity + premium hover lift.
   PILGRIM source photo includes more empty space; adjust image only. */
.sa-reference-home #collection .reference-collection-card{
 position:relative!important;isolation:isolate;
 transform:translate3d(0,0,0)!important;
 transition:transform .38s cubic-bezier(.2,.8,.2,1),filter .38s ease!important;
 will-change:transform;
}
.sa-reference-home #collection .reference-collection-visual{
 position:relative!important;overflow:hidden!important;
 transition:box-shadow .38s ease,background-color .38s ease!important;
}
.sa-reference-home #collection .reference-collection-visual img{
 width:80%!important;height:88%!important;object-fit:contain!important;
 transform:scale(1)!important;
 transform-origin:center center!important;
 transition:transform .45s cubic-bezier(.2,.8,.2,1),filter .45s ease!important;
 animation:none!important;will-change:transform;
}
.sa-reference-home #collection .reference-collection-card[data-open-product="pilgrim"] .reference-collection-visual img{
 transform:scale(1.22)!important;
}
@media(hover:hover) and (pointer:fine){
 .sa-reference-home #collection .reference-collection-card:hover{
  z-index:4!important;transform:translate3d(0,-9px,0)!important;
 }
 .sa-reference-home #collection .reference-collection-card:hover .reference-collection-visual{
  box-shadow:0 20px 36px rgba(17,17,17,.16)!important;
 }
 .sa-reference-home #collection .reference-collection-card[data-open-product="pilgrim"]:hover .reference-collection-visual img{
  transform:scale(1.34)!important;
 }
 .sa-reference-home #collection .reference-collection-card[data-open-product="godfirst"]:hover .reference-collection-visual img{
  transform:scale(1.10)!important;
 }
}
.sa-reference-home #collection .reference-collection-card:focus-visible{
 outline:2px solid #111!important;outline-offset:5px!important;z-index:4!important;
}
@media(prefers-reduced-motion:reduce){
 .sa-reference-home #collection .reference-collection-card,
 .sa-reference-home #collection .reference-collection-visual,
 .sa-reference-home #collection .reference-collection-visual img{
  transition:none!important;animation:none!important;
 }
}

/* GLOBAL RESPONSIVE HEADER: shared mobile/tablet navigation, desktop unchanged. */
.sa-mobile-menu-button,.sa-mobile-navigation{display:none!important}
.sa-mobile-navigation[hidden]{display:none!important}
@media(max-width:900px){
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header{
  position:sticky!important;top:0!important;z-index:5000!important;
  height:64px!important;background:#f6f5f0!important
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header-inner{
  display:grid!important;grid-template-columns:minmax(68px,1fr) auto minmax(68px,1fr)!important;
  align-items:center!important;width:calc(100% - 34px)!important;height:100%!important;
  margin-inline:auto!important
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .reference-nav-left{display:none!important}
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .reference-nav-right{
  display:flex!important;grid-column:3!important;grid-row:1!important;
  justify-self:end!important;align-items:center!important;gap:0!important
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .reference-nav-right>a:not(.reference-bag-button){display:none!important}
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .reference-wordmark{
  display:block!important;grid-column:2!important;grid-row:1!important;
  justify-self:center!important;align-self:center!important;font-size:14px!important;
  letter-spacing:-.2px!important;white-space:nowrap!important
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .sa-mobile-menu-button{
  display:flex!important;grid-column:1!important;grid-row:1!important;
  justify-self:start!important;align-items:center!important;justify-content:center!important;
  flex-direction:column!important;gap:5px!important;
  width:42px!important;height:42px!important;padding:8px!important;
  border:0!important;background:transparent!important;color:#111!important;
  cursor:pointer!important;z-index:2!important
 }
 .sa-mobile-menu-button span{display:block!important;width:23px!important;height:2px!important;background:#111!important;border-radius:2px!important;transition:transform .2s ease,opacity .2s ease!important}
 .sa-mobile-menu-button[aria-expanded="true"] span:first-child{transform:translateY(7px) rotate(45deg)!important}
 .sa-mobile-menu-button[aria-expanded="true"] span:nth-child(2){opacity:0!important}
 .sa-mobile-menu-button[aria-expanded="true"] span:last-child{transform:translateY(-7px) rotate(-45deg)!important}
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .sa-mobile-navigation:not([hidden]){
  display:block!important;position:absolute!important;top:100%!important;left:0!important;
  width:100%!important;max-height:calc(100dvh - 64px)!important;overflow-y:auto!important;
  padding:15px clamp(18px,5vw,60px) 25px!important;
  background:#f6f5f0!important;border-top:1px solid #dedbd4!important;
  border-bottom:1px solid #dedbd4!important;box-shadow:0 14px 25px rgba(0,0,0,.09)!important
 }
 .sa-mobile-navigation nav{display:flex!important;flex-direction:column!important;gap:0!important}
 .sa-mobile-navigation nav a{display:block!important;padding:15px 6px!important;border-bottom:1px solid rgba(17,17,17,.1)!important;color:#111!important;text-align:left!important;text-decoration:none!important;font-size:13px!important;font-weight:800!important;letter-spacing:1.2px!important}
 .sa-mobile-navigation nav a:last-child{border-bottom:0!important}
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .menu-toggle:not(.sa-mobile-menu-button){display:none!important}
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .mobile-menu:not(.sa-mobile-navigation){display:none!important}
}
@media(max-width:600px){
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header{height:58px!important}
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header-inner{width:calc(100% - 24px)!important}
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .reference-wordmark{font-size:clamp(12px,3.4vw,14px)!important}
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .sa-mobile-navigation:not([hidden]){max-height:calc(100dvh - 58px)!important}
}
@media(min-width:901px){
 .sa-mobile-menu-button,.sa-mobile-navigation{display:none!important}
}
@media(prefers-reduced-motion:reduce){.sa-mobile-menu-button span{transition:none!important}}

/* CART / WhatsApp secondary CTA — intentional premium spacing on every viewport. */
.sa-unified-shell .cart-summary .sa-cart-alternative-order{
 display:flex;flex-direction:column;align-items:stretch;
 gap:14px;margin-top:24px;padding-top:24px;
 border-top:1px solid rgba(17,17,17,.16);
}
.sa-unified-shell .cart-summary .sa-cart-alternative-order .whatsapp-order-note{
 display:flex;flex-direction:column;gap:9px;
 margin:0!important;padding:0!important;color:#3a3936;
 font-size:14px;line-height:1.55;letter-spacing:0;
}
.sa-unified-shell .cart-summary .sa-cart-alternative-order .whatsapp-order-note strong{
 display:block;color:#111;font-size:12px;line-height:1.4;
 font-weight:800;letter-spacing:.08em;
}
.sa-unified-shell .cart-summary .sa-cart-alternative-order .whatsapp-order-note span{
 display:block;max-width:33ch;
}
.sa-unified-shell .cart-summary .sa-cart-alternative-order .whatsapp-order-button{
 display:flex!important;align-items:center!important;justify-content:center!important;
 width:100%!important;min-height:52px!important;margin:2px 0 0!important;
 padding:13px 16px!important;background:#111!important;color:#fff!important;
 text-align:center!important;text-decoration:none!important;
 font-size:12px!important;font-weight:800!important;line-height:1.4!important;
 letter-spacing:.09em!important;border:1px solid #111!important;
 border-radius:3px!important;transition:background .2s ease,transform .2s ease!important;
}
.sa-unified-shell .cart-summary .sa-cart-alternative-order .whatsapp-order-button:hover{
 background:#303030!important;transform:translateY(-2px);
}
.sa-unified-shell .cart-summary .sa-cart-alternative-order .continue-shopping{
 display:inline-flex!important;align-self:center;justify-content:center;
 margin:4px 0 0!important;padding:7px 5px!important;
 color:#333!important;font-size:11px!important;font-weight:750!important;
 line-height:1.4!important;letter-spacing:.08em!important;
 text-decoration:none!important;text-align:center!important;
 transition:color .2s ease!important;
}
.sa-unified-shell .cart-summary .sa-cart-alternative-order .continue-shopping:hover{
 color:#000!important;text-decoration:underline!important;text-underline-offset:5px!important;
}
@media(max-width:700px){
 .sa-unified-shell .cart-summary .sa-cart-alternative-order{
  gap:15px!important;margin-top:22px!important;padding-top:22px!important;
 }
 .sa-unified-shell .cart-summary .sa-cart-alternative-order .whatsapp-order-note{
  font-size:15px!important;line-height:1.6!important;gap:10px!important;
 }
 .sa-unified-shell .cart-summary .sa-cart-alternative-order .whatsapp-order-note strong{
  font-size:12px!important;letter-spacing:.06em!important;
 }
 .sa-unified-shell .cart-summary .sa-cart-alternative-order .whatsapp-order-button{
  min-height:54px!important;
 }
 .sa-unified-shell .cart-summary .sa-cart-alternative-order .continue-shopping{
  margin-top:2px!important;min-height:36px!important;
 }
}
@media(prefers-reduced-motion:reduce){
 .sa-unified-shell .cart-summary .sa-cart-alternative-order a{transition:none!important}
 .sa-unified-shell .cart-summary .sa-cart-alternative-order .whatsapp-order-button:hover{transform:none!important}
}

/* Checkout: compact readable legal consent on desktop, tablet and phone. */
.sa-unified-checkout .checkout-legal-agreement{
 display:grid!important;grid-template-columns:16px minmax(0,1fr)!important;
 align-items:start!important;column-gap:11px!important;
 width:100%!important;max-width:100%!important;
 margin:22px 0 18px!important;padding:15px 0!important;
 border-top:1px solid rgba(17,17,17,.12)!important;
 color:#444!important;font-size:12px!important;font-weight:400!important;
 line-height:1.65!important;letter-spacing:0!important;text-transform:none!important;
 cursor:pointer!important;
}
.sa-unified-checkout .checkout-legal-agreement input[type="checkbox"]{
 display:block!important;position:static!important;flex:none!important;
 width:16px!important;height:16px!important;min-width:16px!important;
 margin:2px 0 0!important;padding:0!important;
 accent-color:#111!important;cursor:pointer!important;
}
.sa-unified-checkout .checkout-legal-agreement span{
 display:block!important;min-width:0!important;
 font-size:inherit!important;line-height:inherit!important;font-weight:400!important;
 letter-spacing:0!important;overflow-wrap:normal!important;
}
.sa-unified-checkout .checkout-legal-agreement a{
 color:#111!important;font-size:inherit!important;
 font-weight:650!important;line-height:inherit!important;
 text-decoration:underline!important;text-decoration-thickness:1px!important;
 text-underline-offset:3px!important;
}
@media(max-width:900px){
 .sa-unified-checkout .checkout-legal-agreement{
  font-size:11.5px!important;line-height:1.6!important;
  column-gap:10px!important;margin:18px 0 16px!important;
 }
}
@media(max-width:600px){
 .sa-unified-checkout .checkout-legal-agreement{
  font-size:11px!important;line-height:1.65!important;
  padding:13px 0!important;grid-template-columns:15px minmax(0,1fr)!important;
  column-gap:9px!important;
 }
 .sa-unified-checkout .checkout-legal-agreement input[type="checkbox"]{
  width:15px!important;height:15px!important;min-width:15px!important;
 }
}

/* Mobile navigation — COLLECTION purchase modal glass treatment. */
@media (max-width:900px){
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .sa-mobile-navigation:not([hidden]){
  position:absolute!important;top:calc(100% + 8px)!important;
  left:12px!important;right:12px!important;width:calc(100% - 24px)!important;
  max-height:calc(100dvh - 88px)!important;overflow-y:auto!important;overflow-x:hidden!important;
  padding:16px 18px 18px!important;
  background:rgba(174,174,172,.62)!important;
  -webkit-backdrop-filter:blur(10px) saturate(0)!important;backdrop-filter:blur(10px) saturate(0)!important;
  border:1px solid rgba(255,255,255,.52)!important;border-radius:22px!important;
  box-shadow:0 18px 45px rgba(0,0,0,.18)!important;
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .sa-mobile-navigation nav{
  display:flex!important;flex-direction:column!important;gap:0!important;background:transparent!important;
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .sa-mobile-navigation nav a{
  display:block!important;padding:14px 6px!important;
  border-bottom:1px solid rgba(17,17,17,.08)!important;
  color:#111!important;text-decoration:none!important;
  font-size:13px!important;font-weight:800!important;letter-spacing:.08em!important;
  text-transform:uppercase!important;background:transparent!important;
  opacity:1!important;filter:none!important;text-shadow:none!important;
  -webkit-font-smoothing:antialiased!important;
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .sa-mobile-navigation nav a:last-child{
  border-bottom:0!important;
 }
}
@media(max-width:600px){
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .sa-mobile-navigation:not([hidden]){
  left:10px!important;right:10px!important;width:calc(100% - 20px)!important;
  padding:14px 16px 16px!important;border-radius:20px!important;
  max-height:calc(100dvh - 80px)!important;
 }
 :is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .sa-mobile-navigation nav a{
  font-size:12px!important;padding:13px 4px!important;
 }
}

/* COLLECTION mobile/tablet: compact product modal, always-visible purchase action.
   Scoped to collection purchase: showroom detail and checkout are unaffected. */
@media (max-width:900px){
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-detail{
   width:min(96vw,720px)!important;height:min(92dvh,850px)!important;max-height:92dvh!important;
   min-height:0!important;display:flex!important;flex-direction:column!important;
   overflow:hidden!important;align-items:stretch!important;
   padding:0!important;border-radius:16px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-gallery{
   flex:0 0 auto!important;width:100%!important;
   height:clamp(210px,38dvh,350px)!important;min-height:0!important;
   padding:8px 12px 34px!important;display:flex!important;flex-direction:column!important;
   align-items:center!important;justify-content:center!important;
   position:relative!important;border-radius:16px 16px 0 0!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase #referenceDetailImage{
   display:block!important;width:90%!important;max-width:380px!important;
   height:calc(100% - 10px)!important;max-height:300px!important;
   object-fit:contain!important;object-position:center!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-gallery-switch{
   position:absolute!important;left:50%!important;bottom:7px!important;
   transform:translateX(-50%)!important;display:flex!important;
   margin:0!important;gap:5px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-gallery-switch button{
   min-width:64px!important;min-height:30px!important;padding:5px 9px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-close{
   position:absolute!important;top:9px!important;right:11px!important;
   z-index:30!important;width:38px!important;height:38px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info{
   flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;
   overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch;
   align-self:stretch!important;width:100%!important;
   padding:12px 20px 66px!important;display:flex!important;flex-direction:column!important;
   text-align:left!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-label{
   font-size:9px!important;line-height:1.2!important;letter-spacing:1px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info h2{
   margin:4px 0 0!important;font-size:clamp(25px,4vw,32px)!important;
   line-height:1.05!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-message{
   margin:5px 0 0!important;font-size:12px!important;line-height:1.4!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-price{
   margin:6px 0 0!important;font-size:15px!important;line-height:1.3!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-option:has(.reference-color-row){
   margin:9px 0 0!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-option:has(.reference-size-row){
   margin:9px 0 0!important;width:100%!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-option-heading{
   font-size:10px!important;line-height:1.25!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-color-row{
   margin:6px 0 0!important;gap:10px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-color-row button{
   width:25px!important;height:25px!important;min-width:25px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-size-row{
   margin:6px 0 0!important;gap:6px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-size-row button{
   height:34px!important;min-height:34px!important;font-size:12px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-quantity-row{
   margin:9px 0 0!important;width:100%!important;font-size:10px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-quantity-row button,
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-quantity-row strong{
   width:35px!important;height:33px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-add-button{
   position:absolute!important;bottom:12px!important;left:20px!important;z-index:25!important;
   flex:0 0 43px!important;min-height:43px!important;height:43px!important;
   width:calc(100% - 40px)!important;margin:0!important;
   background:#111!important;color:#fff!important;box-shadow:0 -7px 18px rgba(255,255,255,.55)!important;
 }
}
@media(max-width:600px){
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-detail{
   width:94vw!important;height:94dvh!important;max-height:94dvh!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-gallery{
   height:clamp(190px,36dvh,290px)!important;min-height:0!important;
   padding:6px 10px 30px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase #referenceDetailImage{
   width:92%!important;max-width:320px!important;max-height:250px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info{
   padding:10px 15px 63px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info h2{
   font-size:25px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-add-button{
   left:15px!important;bottom:10px!important;width:calc(100% - 30px)!important;
 }
}
@media(max-width:900px) and (max-height:680px){
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-gallery{
   height:clamp(160px,32dvh,220px)!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase #referenceDetailImage{
   max-height:180px!important;
 }
}

/* Use spare modal height for the hoodie; keep product copy beside the CTA. */
@media (max-width:900px){
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-gallery{
  flex:1 1 0!important;height:auto!important;min-height:120px!important;
  padding:6px 10px 38px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase #referenceDetailImage{
  width:100%!important;max-width:480px!important;height:100%!important;
  max-height:none!important;min-height:0!important;object-fit:contain!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info{
  flex:0 1 auto!important;margin:0!important;padding:6px 16px 12px!important;
  max-height:calc(100% - 120px)!important;overflow-y:auto!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info > *{
  flex-shrink:0!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-add-button{
  position:sticky!important;bottom:0!important;left:auto!important;
  width:100%!important;min-height:44px!important;height:44px!important;
  flex:0 0 44px!important;margin:8px 0 0!important;
 }
}

/* Larger hoodie preview in the mobile/tablet purchase gallery. */
@media (max-width:900px){
 .sa-reference-home #referenceProductLayer.sa-collection-purchase #referenceDetailImage{
  max-width:560px!important;
  transform:scale(1.18)!important;
  transform-origin:center center!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-gallery-switch{
  z-index:10!important;
 }
}

/* A little breathing room between purchase information on phones and tablets. */
@media (max-width:900px){
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-product-info{
  row-gap:4px!important;
 }
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-color-row,
 .sa-reference-home #referenceProductLayer.sa-collection-purchase .reference-size-row{
  margin-top:8px!important;
 }
}

/* T-SHIRT COLLECTION — follows the existing hoodie grid */
.sa-reference-home .sa-tee-category{margin-top:clamp(36px,6vw,84px)}
.sa-reference-home .sa-tee-category>h2{font-size:clamp(24px,3vw,38px);font-weight:700;letter-spacing:.09em;margin:0 0 8px}
.sa-reference-home .sa-tee-category>p{font-size:clamp(11px,1.3vw,14px);letter-spacing:.14em;margin:0 0 24px}
.sa-reference-home .sa-tee-category .reference-collection-meta span{font-size:clamp(10px,1vw,12px);text-align:right}
.sa-reference-home .reference-add-button:disabled{opacity:.55;cursor:not-allowed}

/* Oversized category labels and tee click targets */
.sa-reference-home .sa-category-heading{font-size:clamp(24px,3vw,38px);font-weight:700;letter-spacing:.09em;margin:0 0 24px}
.sa-reference-home .sa-category-heading span,.sa-reference-home .sa-tee-category>h2 span{font-size:clamp(10px,1.2vw,13px);font-weight:600;letter-spacing:.12em;vertical-align:middle;margin-left:12px}
.sa-reference-home .sa-tee-category .reference-collection-card{position:relative;z-index:1;cursor:pointer;pointer-events:auto}
.sa-reference-home .sa-tee-category .reference-collection-card>*{pointer-events:none}

/* Lightweight entrance motion for hoodie and T-shirt shopping preview. */
@keyframes saPurchaseGarmentEnter {
  from { opacity: 0; translate: 0 16px; scale: .94; filter: blur(5px); }
  to   { opacity: 1; translate: 0 0; scale: 1; filter: blur(0); }
}
@keyframes saPurchasePanelEnter {
  from { opacity: 0; translate: 0 12px; }
  to   { opacity: 1; translate: 0 0; }
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase.is-active .reference-product-detail {
  animation: saPurchasePanelEnter .32s cubic-bezier(.2,.75,.25,1) both;
}
.sa-reference-home #referenceProductLayer.sa-collection-purchase.is-active #referenceDetailImage {
  animation: saPurchaseGarmentEnter .52s cubic-bezier(.2,.75,.2,1) both;
}
@media (prefers-reduced-motion: reduce) {
  .sa-reference-home #referenceProductLayer.sa-collection-purchase.is-active .reference-product-detail,
  .sa-reference-home #referenceProductLayer.sa-collection-purchase.is-active #referenceDetailImage {
    animation: none !important;
  }
}

/* Hoodie subtitle */
.sa-reference-home .sa-category-heading{margin-bottom:8px}
.sa-reference-home .sa-hoodie-caption{margin:0 0 24px;font-size:clamp(11px,1.3vw,14px);letter-spacing:.14em;font-weight:400}

/* Footer logo: shift artwork left on phones without changing footer links. */
@media (max-width:600px){
 .reference-footer-brand .sa-footer-logo{transform:translateX(-64px);}
}

/* Consistent left-aligned footer brand on mobile, all site pages */
@media(max-width:600px){
 .reference-footer-brand{align-items:flex-start!important;text-align:left!important}
 .reference-footer-brand>strong{justify-content:flex-start!important}
 .reference-footer-brand .sa-footer-logo{transform:translateX(-64px);object-position:left center!important}
 .reference-footer-brand>p{text-align:left!important}
 .footer-brand>a{display:block;text-align:left!important}
 .footer-brand>a img{display:block;margin-left:0!important;margin-right:auto!important;transform:translateX(-32px)}
}

/* Let the menu sample page content through the header on iOS as well. */
@media (max-width:900px){
 body.sa-mobile-nav-open:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header{
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
 }
}

/* Keep the site in its authored black-and-white palette on devices using Dark Mode. */
:root { color-scheme: light only; }
html { color-scheme: light only; }

/* Mobile Google in-app browser: keep the logo and header on one uniform surface. */
@media (max-width:900px) {
  body:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header {
    background:#fff!important;
    background-image:none!important;
    border-bottom:1px solid rgba(0,0,0,.09)!important;
  }
  body:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header-inner {
    min-width:0!important;
  }
  body:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .reference-wordmark {
    min-width:0!important;
    max-width:46vw!important;
  }
  body:is(.sa-reference-home,.sa-inner-page,.sa-unified-checkout,.sa-unified-shell) .reference-header .sa-brand-logo {
    max-width:100%!important;
    max-height:54px!important;
    object-fit:contain!important;
  }
}
