/* Native controls keep the approved document's geometry and typography. */
[hidden] { display: none !important; }
button, input, select, textarea { font: inherit; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
/* Installed add-ons consume the selected version's form and action roles. */
html[data-presentation] {--theme-form-height:44px;--theme-form-radius:0px;--color-form-border:var(--border);--color-text-primary:var(--ink);--color-text-description:var(--muted);--color-primary:var(--shoper-btn-bg,#141414);--color-on-primary:var(--shoper-btn-text,#fff);--color-primary-text:var(--accent);}
.fashion-utility .btn-primary,.contact-form button[type=submit],.partner-form__submit,#c4-reviews .review-compose-toggle {min-height:44px;padding:11px 20px;border:1px solid var(--color-primary);border-radius:var(--theme-form-radius);background:var(--color-primary);color:var(--color-on-primary);font:500 12px/1.4 Poppins,Arial,sans-serif;}
.fashion-utility .form-check-input:checked {background-color:var(--accent);border-color:var(--accent);}
.contact-form-input:not([type=checkbox]):not([type=radio]),.partner-form__input,.partner-form__select {border-radius:var(--theme-form-radius);min-height:44px;}
.c4-questions label {display:block;margin:14px 0 6px;}
.c4-questions textarea.field {min-height:110px;width:100%;padding:12px 18px;}
.c4-hero-frame { position: absolute; inset: 0; }
.c4-hero-frame > img, .c4-hero-frame > picture > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: var(--hero-fit-desktop, cover); object-position: var(--hero-position-desktop, 25% 0%); }
/* Caption protection belongs to each frame and follows its actual responsive image crop. */
.c4-hero-frame > .hero-text { isolation: isolate; z-index: 2; }
.c4-hero-frame::before {
    content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
    background: linear-gradient(var(--hero-shade-direction, to right), transparent var(--hero-shade-start, 0px), rgb(var(--hero-backdrop, 0 0 0) / var(--hero-backdrop-opacity, .64)) var(--hero-shade-stop, 0px));
}
.c4-hero-frame .hero-text h2, .c4-hero-frame .hero-text .hero-sub { color: var(--hero-foreground, #fff); text-shadow: none; }
.hero[data-c4-slider] { height: var(--hero-desktop, 700px); }
.hero[data-c4-slider][data-height-mode=viewport] { height: var(--hero-viewport-height, calc(100svh - 115px)); }
.hero:focus-within .hero-arrow, .hero:hover .hero-arrow { display: inline-flex; }
.dot[role=button] { cursor: pointer; }
.hero[data-arrows=none] .hero-arrow,.hero[data-dots=none] .dots { display:none!important; }
.hero[data-arrows=boxed] .hero-arrow { border-radius:0;background:var(--ink);color:#fff; }
.hero[data-dots=progress] .dot { width:28px;border-radius:2px; }
.hero-arrow:disabled { opacity:.35;cursor:default; }
.hero[data-c4-slider],.pc { touch-action:pan-y; }
.c4-filter-close { margin:0 0 20px auto;border:0;background:none;font-size:25px;cursor:pointer; }
.c4-quickview {width:min(1100px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:35px 20px 20px;border:0;background:#fff;color:var(--ink);overflow:auto;}
.c4-quickview::backdrop {background:#0007;}
.c4-quickview .pdp-main {padding:0;}
.c4-quickview .container {width:100%;padding:0;}
.c4-quickview-close {position:absolute;top:5px;right:12px;border:0;background:none;font-size:28px;cursor:pointer;}
@media(min-width:768px) {
    .card:not(.is-hover):is(:hover,:focus-within) .card-actions { display:flex; }
    .card:is(:hover,:focus-within) .cd-card { display:none; }
}
.card-actions [role=button] { cursor: pointer; }
@media(min-width:1025px){.pc:is(:hover,:focus-within) .pc-arrow{display:inline-flex;}}
.card-actions .is-favorite .ico {fill:var(--accent);stroke:var(--accent);}
button.sw {border:0;padding:0;cursor:pointer;}
button.sw[aria-pressed=true] {box-shadow:0 0 0 2px #fff,0 0 0 3px var(--ink);}
button.sw:disabled {opacity:.35;cursor:default;}
.card-title a { color: inherit; }
.c4-home-menu .c4-version-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; }
.c4-version-grid img { display: block; width: 100%; height: 190px; object-fit: cover; object-position: top; margin-bottom: 12px; }
.mnav li a.c4-mobile-version {display:grid;gap:10px;}
.c4-mobile-version img {width:180px;height:160px;object-fit:cover;object-position:top;}
.c4-status { position: fixed; z-index: 1500; left: 50%; bottom: 80px; transform: translateX(-50%); padding: 12px 20px; background: var(--ink); color: white; max-width: calc(100% - 32px); }
.c4-status:empty { display: none; }
.c4-topbar-menu {position:relative;}
.topbar:has(.c4-topbar-menu[open]) {z-index:1002;}
.c4-topbar-menu summary {display:flex;align-items:center;gap:6px;cursor:pointer;list-style:none;}
.c4-topbar-menu summary::-webkit-details-marker {display:none;}
.c4-topbar-menu ul {position:absolute;right:0;top:calc(100% + 10px);z-index:1001;min-width:150px;padding:8px;background:#fff;color:var(--ink);box-shadow:0 4px 20px #0002;}
.c4-topbar-menu li a {display:block;padding:8px 12px;}
.c4-native-content { padding-top: 35px; padding-bottom: 50px; }
.c4-native-content,.ck-content {min-width:0;}
.c4-native-table {max-width:100%;min-width:0;overflow-x:auto;}
@media(min-width:1025px){.usp .container{grid-template-columns:repeat(var(--c4-usp-count,4),minmax(0,1fr));}}
@media(max-width:1024px){.topbar:not(:has(.tb-center)){display:none;}}
@media (max-width: 1024px) {
    .hero[data-c4-slider] { height: var(--hero-tablet, 550px); }
    .c4-hero-frame > picture > img { object-fit: var(--hero-fit-tablet, cover); object-position: var(--hero-position-tablet, 25% 0%); }
}
@media (max-width: 767px) {
    .hero[data-c4-slider] { height: var(--hero-mobile, 500px); }
    .c4-hero-frame > picture > img { object-fit: var(--hero-fit-mobile, cover); object-position: var(--hero-position-mobile, 25% 0%); }
    .hero:hover .hero-arrow { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    .c4-hero-frame { transition: none; }
}

.fashion-palette-toggle{position:fixed;right:0;top:auto;bottom:88px;z-index:1000;display:grid;place-items:center;width:46px;height:48px;padding:0;border:0;border-radius:8px 0 0 8px;background:var(--shoper-primary);color:var(--shoper-primary-text);font:26px/1 system-ui;cursor:pointer;box-shadow:0 4px 18px #0002}


/* The visitor control has its own stable neutral surface, like the storefront customizer. */
.fashion-personalization{position:fixed;inset:0 0 0 auto;box-sizing:border-box;width:min(340px,100vw);height:100dvh;max-width:100vw;max-height:100dvh;margin:0 0 0 auto;padding:24px;overflow-y:auto;border:0;border-left:1px solid #e3e7ec;background:#fff;color:#252a30;font-family:inherit;font-size:14px;box-shadow:-12px 0 44px #0002}

.fashion-personalization::backdrop{background:#0005}

.fashion-personalization[open]{animation:fashion-personalization-enter .18s ease-out}

.fashion-personalization-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:24px;margin-bottom:26px;border-bottom:1px solid #e3e7ec}

.fashion-personalization-header h2{margin:0;font-family:inherit;font-size:20px;font-weight:700;line-height:1.3;color:inherit}

.fashion-personalization-header button{display:grid;place-items:center;flex:none;width:36px;height:36px;padding:0;border:1px solid #e3e7ec;border-radius:50%;background:#fff;color:#252a30;font:25px/1 inherit;cursor:pointer}

.fashion-personalization fieldset{min-width:0;margin:0;padding:0;border:0}

.fashion-personalization legend{float:none;width:auto;margin:0 0 8px;padding:0;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#657180}

.fashion-personalization-note{margin:0 0 14px;color:#697587;line-height:1.5}

.fashion-palette-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}

.fashion-palette-option{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:108px;margin:0;padding:12px 8px;border:1px solid #e3e7ec;border-radius:10px;background:#fff;color:#252a30;text-align:center;cursor:pointer}

.fashion-palette-option:has(input:checked){border:2px solid var(--shoper-primary);padding:11px 7px}

.fashion-palette-option:focus-within{outline:2px solid var(--shoper-primary);outline-offset:3px}

.fashion-palette-option input{position:absolute;width:1px;height:1px;margin:0;clip-path:inset(50%);overflow:hidden}

.fashion-palette-sample{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:50%;font-size:14px;font-weight:700}

.fashion-palette-name{max-width:100%;font-size:13px;line-height:1.3;overflow-wrap:anywhere}

.fashion-palette-tones{display:flex;gap:4px}
.fashion-palette-tones i{width:9px;height:9px;border:1px solid #0001;border-radius:50%}

.fashion-palette-reset{display:block;width:auto;margin:16px 0 0;padding:0;border:0;border-bottom:1px solid currentColor;background:transparent;color:#697587;font:inherit;font-size:13px;line-height:1.5;cursor:pointer}

.fashion-palette-status{margin:14px 0 0;color:#ad1831;font-size:13px;line-height:1.5}
.fashion-palette-status:empty{display:none}
.fashion-personalization[open]{animation:none}

html[data-custom-accent=true] .btn { background: var(--shoper-btn-bg); color: var(--shoper-btn-text); border-color:var(--shoper-btn-bg); }
.c4-sr-only { position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden; }
.c4-options { border:0;padding:0;margin:0;min-width:0; }
.c4-options legend { float:none;width:auto; }
.ctl-track { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ctl-item { min-width:0; }
.ctl-item .ci { display:block; }
.ctl-item .price { display:flex;flex-wrap:wrap;justify-content:center;gap:4px; }
.ctl-item select { width:100%;min-width:0;max-width:100%;padding:6px 3px;border:1px solid var(--border);background:#fff; }
.c4-set-explanation { font-size:11px;color:var(--muted);margin-top:10px; }
.tab-body.fashion-utility > div, .tab-body.fashion-utility > section { grid-column:1/-1; }
@media (max-width:767px) { .footer .f-col.links.c4-footer-open {display:block;} }
@media (prefers-reduced-motion:reduce) {
    [data-fashion-btt] .btt, [data-fashion-btt] .btt:hover {transform:none!important;}
    [data-fashion-btt] .btt .chev {transform:translateY(-1px)!important;}
}
/* Semantic controls inherit the source spans' dimensions, rather than browser defaults. */
.sizes button { width:45px;height:45px;display:inline-flex;align-items:center;justify-content:center;border:0;background:var(--surface);color:var(--ink);padding:0;font-size:13px;font-weight:500;cursor:pointer; }
.sizes button.on { background:var(--muted);color:#fff; }
.cswatch button { width:70px;height:70px;padding:3px;border:1px solid transparent;background:transparent;cursor:pointer; }
.cswatch button.on { border-color:var(--ink); }
.tiers button { flex:1;height:72px;padding:0;background:var(--countdown);border:1px solid #e3e3e3;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:20px;font-weight:600;color:var(--ink);line-height:26px;cursor:pointer; }
.tiers button.on { border-color:var(--ink); }
[data-product-stock][data-stock-low="false"] {background:transparent;color:var(--muted);padding:0;}
[data-product-stock][data-stock-low="true"] {color:var(--ink);}
.qty button { width:40px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--ink); }
.qty input { width:49px;border:0;border-left:1px solid var(--stepper);border-right:1px solid var(--stepper);font-size:13.3px;text-align:center;appearance:textfield;background:transparent; }
.qty input::-webkit-inner-spin-button {appearance:none;}
.cprod > a {display:block;flex:none;}
.c4-product-purchase .buyrow {margin-top:22px;}
.c4-product-purchase .buyrow .btn-atc {flex:1;width:auto;min-width:0;padding-inline:12px;}
[data-variant-message]:empty {display:none;}
.c4-demo-label {display:block;color:var(--muted);font-size:10px;margin-top:5px;}
.cd-card > .c4-demo-label {position:absolute;bottom:100%;left:0;right:0;text-align:center;margin:0;color:var(--ink);background:#ffffffd9;}
.salenote b a {color:inherit;}
.salenote b {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.salenote .x {cursor:pointer;}
.gallery,.pinfo,.pdp-main .container {min-width:0;}
.c4-product-addons {margin-top:18px;}
.c4-product-addons:empty {display:none;}
.tab-body[role=tabpanel] {scroll-margin-top:100px;}
/* Native CMS headings use the approved product-content heading metrics. */
.tab-body .ck-content :is(h2,h3) {font-size:16px;line-height:20.8px;font-weight:600;color:var(--text);margin:30px 0 16px;letter-spacing:0;}
.c4-facet {display:inline-flex;align-items:center;gap:4px;position:relative;cursor:pointer;}
.fcolors {flex-wrap:wrap;gap:5px;}
.fsizes {gap:8px 9px;}
.c4-facet span {padding:4px 6px;min-width:32px;border:1px solid var(--border);}
.c4-facet input {position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;}
.c4-facet:has(input:checked) span,.c4-facet:focus-within span {outline:1px solid var(--ink);outline-offset:2px;}
/* Keep the source size circles while labels provide a larger pointer target. */
.fsizes .c4-facet {min-width:44px;min-height:44px;justify-content:center;}
.fsizes .c4-facet > span {min-width:43px;height:43px;padding:0 12px;}
.c4-facet-color span {min-width:20px;padding:0;}
.fchecks li::before,.fcats li::before {display:none;}
.fchecks input,.fcats input {margin-right:8px;accent-color:var(--accent);}
.fgroup input[type=number] {width:100%;min-width:0;border:1px solid var(--border);padding:8px;}
.toolbar select {border:0;background:transparent;color:inherit;max-width:170px;}
.views button {border:0;background:transparent;padding:0;color:inherit;display:inline-flex;cursor:pointer;}
.views button:focus-visible {outline:1px solid var(--ink);outline-offset:4px;}
.grid3.c4-list-view {grid-template-columns:minmax(0,1fr);}
.c4-list-view > .card {display:grid;grid-template-columns:minmax(100px,180px) minmax(0,1fr);column-gap:24px;align-content:start;text-align:left;}
.c4-list-view .card-img {grid-row:1/5;}
.c4-list-view .card-title {align-self:end;}
.c4-list-view .swatches {justify-content:flex-start;}
.qrbox > img {flex-shrink:0;}
.qrbox > div > .link-u {display:inline-block;margin-top:4px;font-size:12px;}
.acct .input-group {position:relative;display:flex;width:100%;}
.acct .field {min-width:0;flex:1;border-radius:0;}
.acct .mb-3 {margin-bottom:18px;}
.acct .input-group-text {border:1px solid var(--border);padding:10px;display:inline-flex;align-items:center;}
.acct .customer-password-contract {display:grid;gap:10px;margin:18px 0;}
.acct .customer-password-contract__intro {display:flex;align-items:center;flex-wrap:wrap;gap:10px;}
.acct .customer-password-contract__help {flex:1 1 200px;font-size:12px;margin:0;}
.acct .customer-password-contract__actions {display:flex;flex-wrap:wrap;gap:8px;}
.acct .customer-password-contract__suggestion {overflow-wrap:anywhere;}
.c4-newsletter-form .input-group {display:block;}
.panels input.field {width:100%;}
.c4-newsletter-form input[type=email] {width:100%;margin-bottom:10px;}
.c4-newsletter-modal:not(.show) { display:none; }
.c4-newsletter-modal.show { display:flex!important;z-index:1060;overflow:auto;padding:0!important; }
.c4-newsletter-modal .nl { margin:0!important; }
.c4-newsletter-modal .nl > picture {min-width:0;min-height:0;}
.c4-newsletter-modal .nl > picture > img {display:block;width:100%;height:100%;object-fit:cover;}
.c4-newsletter-modal .nl.c4-popup-no-media {width:min(450px,calc(100vw - 40px));height:auto;min-height:0;grid-template-columns:minmax(0,1fr);}
.c4-popup-no-media .nl-body {padding-block:48px 32px;}
.c4-popup-subtitle {display:block;max-width:100%;overflow-wrap:anywhere;margin-bottom:12px;font-size:12px;font-weight:600;}
.mega-banner.c4-promo-no-media .mb-text {width:100%;left:0;right:0;}
.c4-newsletter-modal .nl-x { border:0;background:none;cursor:pointer; }
.c4-newsletter-modal form { width:100%; }
.c4-newsletter-modal input[type=email] { width:100%;margin-bottom:10px; }
.c4-newsletter-modal .nl-check input { margin-right:8px;accent-color:var(--accent); }
.ss-input form {display:flex;gap:12px;width:100%;align-items:center;}
.ss-input input[type=search] {flex:1;min-width:0;border:0;padding:12px;font-size:17px;}
.ss-prods {grid-template-columns:repeat(4,minmax(0,1fr));}
.ss-cols > div:only-child {grid-column:1/-1;}
.ss-input button[data-close-panel],.dr-head button {border:0;background:none;font-size:25px;cursor:pointer;}
.c4-empty {padding:30px 0;grid-column:1/-1;}
.c4-native-content input,.c4-native-content select,.c4-native-content textarea {max-width:100%;}
/* Native forms retain their validation contract while source field/button metrics own presentation. */
.c4-native-form :is(.field,.select) {width:100%;min-width:0;min-height:0;border-radius:0;color:var(--ink);font-weight:400;}
.c4-native-form .btn-md {min-height:44px;}
.c4-native-form label {margin-bottom:0;}
.c4-native-form [aria-invalid=true] {border-color:#b02a37;}
.c4-native-form .select {display:block;}
.c4-native-form .check-line::before {display:none;}
.c4-native-form .check-line input[type=checkbox] {width:16px;height:16px;flex-shrink:0;margin-top:1px;accent-color:var(--ink);}
@media(max-width:1024px){.ss {max-height:calc(100dvh - 100px);overflow:auto;}.ss-prods{grid-template-columns:repeat(3,minmax(0,1fr));}main .plp > aside:not([hidden]){display:block;}main .plp > aside {position:fixed;inset:0 auto 0 0;z-index:999;background:#fff;width:min(340px,90vw);overflow:auto;padding:25px;box-shadow:0 0 0 100vmax #0006;}main .plp > aside:not(.c4-filter-open){display:none;}}
@media(max-width:767px){.pdp-main .container{grid-template-columns:minmax(0,1fr);}.ss-input em{display:none;}.ss-prods{grid-template-columns:repeat(2,minmax(0,1fr));}.ss-input form{flex-wrap:wrap;}.ss-input input[type=search]{width:calc(100% - 90px);}.crow.cline{min-width:0;}.acct .panel{min-width:0;}.drawer{padding-bottom:env(safe-area-inset-bottom,0px);}}
/* The component owns its frozen overlay geometry; the native modal owns focus and locking. */
[data-native-state="absent"] {cursor:default;opacity:.48;pointer-events:none;}
.fcats a {display:block;color:inherit;}
.c4-filter-actions {display:grid;gap:8px;margin-top:16px;}
.c4-filter-actions > .btn {width:100%;justify-content:center;}
.c4-filter-actions > .link-u {display:flex;align-items:center;justify-content:center;min-height:44px;}
.c4-filter-header {display:none;}
@media(max-width:1024px){
    .c4-filter-header {position:sticky;top:-25px;z-index:1;display:flex;align-items:center;justify-content:space-between;margin:-25px -25px 20px;padding:12px 25px;background:#fff;border-bottom:1px solid var(--border);}
    .c4-filter-header button {display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;color:var(--ink);font-size:24px;line-height:1;}
}
.mnav .c4-mobile-submenu {margin-inline-start:16px;border-inline-start:1px solid var(--border);}
.mnav [data-mobile-group][aria-expanded="true"] > .ico {transform:rotate(90deg);}
@media(max-width:767px){
    .c4-newsletter-modal.show {padding:4px 20px 0!important;}
    .c4-newsletter-modal .nl {height:auto;min-height:836px;flex-shrink:0;max-width:calc(100vw - 40px);}
    .c4-newsletter-modal .nl>img {width:100%;}
    .c4-newsletter-modal .nl > picture {width:100%;height:430px;flex-shrink:0;}
    .c4-newsletter-modal .nl > picture > img {object-position:50% 20%;}
    .fashion-palette-toggle {bottom:64px;}
}

/* A missing product-owned photograph must not remove a native colour choice. */
.cswatch button.c4-color-choice {width:auto;height:40px;padding:0 10px;display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink);}
.c4-color-fill {display:block;flex:none;width:16px;height:16px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--border);}
/* The native widget renders both summaries; fashion exposes one list or compose state. */
#c4-reviews .review-form-column > .review-summary-panel,
#c4-reviews .product-review-container:not(.is-compose-active) > .row,
#c4-reviews .product-review-container.is-compose-active .review-list-container,
#c4-reviews .product-review-container.is-compose-active .review-images-container,
#c4-reviews .product-review-container.is-compose-active .review-compose-action {
    display: none !important;
}
#c4-reviews .review-compose-action {display:flex;flex-wrap:wrap;align-items:center;gap:16px;}
#c4-reviews .review-compose-helper {margin:0;}
#c4-reviews .review-compose-helper span {display:block;}
