/* SWATCOM homepage — scoped for Astra / WordPress. Load common.css first. */
/* Both product showcases share the hero type scale and desktop section height. */
.swatcom-design.swatcom-homepage { --sc-hero-divider-gap:clamp(40px,5vw,72px);--sc-feature-title-size:clamp(62px,6.65vw,106px);--sc-feature-title-leading:.93;--sc-feature-title-tracking:-.037em;--sc-feature-height:680px;background:var(--black); }
.swatcom-homepage .sc-section { padding-block:100px }
.swatcom-homepage .sc-yellow-rule { display:inline-block;width:24px;height:2px;background:var(--yellow);flex:none }
.swatcom-homepage .sc-collections .sc-section-heading .sc-eyebrow,
.swatcom-homepage .sc-bestsellers .sc-section-heading .sc-eyebrow,
.swatcom-homepage .sc-heritage-copy>.sc-eyebrow,
.swatcom-homepage .sc-notes-heading>.sc-eyebrow,
.swatcom-homepage .sc-communications-copy>.sc-eyebrow { display:flex;align-items:center;gap:12px }
.swatcom-homepage .sc-collections .sc-section-heading .sc-eyebrow::before,
.swatcom-homepage .sc-bestsellers .sc-section-heading .sc-eyebrow::before,
.swatcom-homepage .sc-heritage-copy>.sc-eyebrow::before,
.swatcom-homepage .sc-notes-heading>.sc-eyebrow::before,
.swatcom-homepage .sc-communications-copy>.sc-eyebrow::before { content:"";display:block;flex:0 0 24px;width:24px;height:2px;background:var(--yellow) }
.swatcom-homepage .sc-communications-copy>.sc-eyebrow::before { background:var(--black) }

.swatcom-homepage .sc-product-colours  { display:flex;gap:7px;margin-left:auto }
.swatcom-homepage .sc-product-colours i  { width:10px;height:10px;border-radius:50%;background:var(--dot);border:1px solid #8885 }

.swatcom-homepage .sc-section-heading { display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:36px }
.swatcom-homepage .sc-section-heading h2 { font-size:clamp(32px,3.5vw,51px);margin-top:13px }
.swatcom-homepage .sc-collection-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px }
.swatcom-homepage .sc-collection-card { position:relative;height:450px;overflow:hidden;background:#222 }
.swatcom-homepage .sc-collection-card:after { content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0004 0%,#0000 30%,#0003 48%,#000e 100%);z-index:1;transition:background .3s }
.swatcom-homepage .sc-collection-card>img { width:100%;height:100%;object-fit:cover;transition:transform .7s,filter .7s;filter:saturate(.6) }
.swatcom-homepage .sc-collection-card:hover>img { transform:scale(1.045);filter:saturate(.9) }
.swatcom-homepage .sc-collection-number { position:absolute;top:23px;left:26px;z-index:2;font-size:12px;letter-spacing:.12em;color:#e1e1d4 }
.swatcom-homepage .sc-collection-content { position:absolute;bottom:27px;left:28px;right:28px;z-index:2 }
.swatcom-homepage .sc-collection-content>span:first-child { font-size:13px;font-weight:700;letter-spacing:.07em;color:#f5f5f1;text-shadow:0 1px 3px #0009 }
.swatcom-homepage .sc-collection-content h3 { font-size:clamp(32px,3.3vw,46px);margin-top:12px;line-height:.99 }
.swatcom-homepage .sc-collection-action { display:flex;justify-content:space-between;align-items:center;margin-top:24px;padding-top:14px;border-top:1px solid #ffffff35;font-size:13px }
.swatcom-homepage .sc-collection-action .sc-icon { color:var(--yellow) }
.swatcom-homepage .sc-bestsellers { padding-top:70px;background:var(--black);border-block:1px solid #222 }
.swatcom-homepage .sc-product-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px }
.swatcom-homepage .sc-product-image { position:relative;aspect-ratio:1;background:radial-gradient(ellipse at center,#292929,#191919 75%);overflow:hidden }
.swatcom-homepage .sc-product-image>img { width:100%;height:100%;object-fit:contain;transition:transform .5s }
.swatcom-homepage .sc-product-image.sc-glasses-product>img { padding:15px }
.swatcom-homepage .sc-product-card:hover .sc-product-image>img { transform:scale(1.055) }
.swatcom-homepage .sc-product-tag { position:absolute;top:15px;left:15px;color:var(--yellow);border:1px solid #fedb0255;background:#111b;font-size:12px;letter-spacing:.07em;padding:4px 7px;z-index:2 }
.swatcom-homepage .sc-product-view { position:absolute;right:14px;bottom:14px;width:34px;height:34px;display:flex;justify-content:center;align-items:center;background:var(--yellow);color:#080808;opacity:0;transform:translateX(-4px);transition:all .2s }
.swatcom-homepage .sc-product-card:hover .sc-product-view,
.swatcom-homepage .sc-product-card:focus-visible .sc-product-view { opacity:1;transform:none }
.swatcom-homepage .sc-product-meta { padding-top:20px }

.swatcom-homepage .sc-product-meta h3 { font-size:24px;line-height:1.15;margin-top:8px;letter-spacing:0 }
.swatcom-homepage .sc-product-detail { font-size:13px;color:#b1b1a8;line-height:1.5;margin-top:7px }
.swatcom-homepage .sc-product-bottom { margin-top:21px;display:flex;align-items:center;justify-content:space-between;gap:10px }
.swatcom-homepage .sc-price { font-size:17px;font-weight:700;white-space:nowrap }
.swatcom-homepage .sc-price small { color:#99998f;font-size:12px;font-weight:400;margin-left:4px }
.swatcom-homepage .sc-product-colours { gap:4px }
.swatcom-homepage .sc-product-colours i { width:8px;height:8px }
.swatcom-homepage .sc-product-card:hover h3 { color:var(--yellow) }
.swatcom-homepage .sc-heritage { display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center }
.swatcom-homepage .sc-heritage-image { position:relative;aspect-ratio:1.1;overflow:hidden;background:#222 }
.swatcom-homepage .sc-heritage-image>img { width:100%;height:100%;object-fit:cover;object-position:35% 45%;filter:saturate(.65) }
.swatcom-homepage .sc-heritage-image:after { content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#000b) }
.swatcom-homepage .sc-image-credit { position:absolute;z-index:1;bottom:24px;left:25px;right:20px;display:flex;gap:12px;align-items:center;font-size:12px;letter-spacing:.06em }
.swatcom-homepage .sc-heritage-copy h2 { font-size:clamp(40px,4vw,61px);line-height:1.03;margin-top:20px }
.swatcom-homepage .sc-heritage-copy h2>span { color:var(--yellow) }
.swatcom-homepage .sc-heritage-copy>p:not(.sc-eyebrow) { margin-top:22px;color:#adada3;font-size:16px;line-height:1.8;max-width:470px }
.swatcom-homepage .sc-heritage-signoff { margin-top:37px;border-top:1px solid #31312a;padding-top:28px;display:flex;align-items:center;gap:60px }
.swatcom-homepage .sc-heritage-est { font-size:12px;color:#99998e;line-height:1.4;letter-spacing:.09em }
.swatcom-homepage .sc-heritage-est strong { font-family:var(--display);font-size:44px;line-height:1;letter-spacing:0;color:var(--white);display:block;margin-top:2px;font-weight:600 }
.swatcom-homepage .sc-communications-band { background:var(--yellow);color:var(--black);padding-block:46px }
.swatcom-homepage .sc-communications-inner { display:flex;align-items:center;justify-content:space-between;gap:30px }
.swatcom-homepage .sc-communications-band .sc-eyebrow { color:#55500a;font-size:12px }
.swatcom-homepage .sc-communications-band h2 { font-size:clamp(29px,3vw,44px);margin-top:10px;line-height:1.1 }
.swatcom-homepage .sc-button-black { background:var(--black);color:var(--white);flex:none }
.swatcom-homepage .sc-button-black:hover { background:#333 }
.swatcom-homepage .sc-field-notes { display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center }
.swatcom-homepage .sc-notes-heading h2 { font-size:56px;margin-top:15px }
.swatcom-homepage .sc-notes-heading>p:not(.sc-eyebrow) { font-size:15px;color:var(--muted);max-width:290px;margin-top:24px }
.swatcom-homepage .sc-notes-heading>.sc-text-link { margin-top:30px }
.swatcom-homepage .sc-notes-list>.sc-note-item { display:flex;align-items:center;gap:26px;border-top:1px solid var(--line);padding:29px 0 }
.swatcom-homepage .sc-notes-list>.sc-note-item:last-child { border-bottom:1px solid var(--line) }
.swatcom-homepage .sc-notes-list .sc-note-index { font-family:var(--display);font-size:27px;color:#64645a;line-height:1 }
.swatcom-homepage .sc-notes-list .sc-eyebrow { font-size:12px }
.swatcom-homepage .sc-notes-list h3 { font-size:24px;margin-top:8px;line-height:1.2;letter-spacing:0 }
.swatcom-homepage .sc-notes-list .sc-icon { margin-left:auto;color:var(--yellow) }
.swatcom-homepage .sc-notes-list>.sc-note-item:hover h3 { color:var(--yellow) }

@media(max-width:1250px) {

.swatcom-homepage .sc-collection-card { height:390px }
.swatcom-homepage .sc-collection-content { left:23px;right:23px }
.swatcom-homepage .sc-product-grid { gap:17px }
.swatcom-homepage .sc-product-meta h3 { font-size:22px }
.swatcom-homepage .sc-product-detail { font-size:12px }
.swatcom-homepage .sc-product-colours { display:none }
.swatcom-homepage .sc-heritage { gap:50px }
.swatcom-homepage .sc-communications-band h2 { font-size:32px }
.swatcom-homepage .sc-communications-band .sc-button { font-size:12px;gap:16px }
.swatcom-homepage .sc-field-notes { gap:45px }
.swatcom-homepage .sc-notes-list h3 { font-size:22px }
}
@media(max-width:1180px) {

.swatcom-homepage .sc-section { padding-block:75px }
.swatcom-homepage .sc-section-heading h2 { font-size:37px }
.swatcom-homepage .sc-section-heading .sc-text-link { font-size:12px;gap:10px }
.swatcom-homepage .sc-collection-grid { gap:14px }
.swatcom-homepage .sc-collection-card { height:345px }
.swatcom-homepage .sc-collection-content { left:18px;right:18px;bottom:22px }
.swatcom-homepage .sc-collection-content h3 { font-size:34px }
.swatcom-homepage .sc-collection-number { left:18px;font-size:12px }
.swatcom-homepage .sc-product-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px }
.swatcom-homepage .sc-product-meta h3 { font-size:25px }
.swatcom-homepage .sc-product-detail { font-size:14px }

.swatcom-homepage .sc-product-colours { display:flex }
.swatcom-homepage .sc-product-view { opacity:1 }
.swatcom-homepage .sc-heritage { gap:35px }
.swatcom-homepage .sc-heritage-copy h2 { font-size:40px }
.swatcom-homepage .sc-heritage-copy>p:not(.sc-eyebrow) { font-size:14px;margin-top:18px }
.swatcom-homepage .sc-heritage-copy .sc-eyebrow { font-size:12px }
.swatcom-homepage .sc-heritage-image { aspect-ratio:.88 }
.swatcom-homepage .sc-image-credit { font-size:12px;left:18px;bottom:20px;gap:9px }
.swatcom-homepage .sc-image-credit .sc-yellow-rule { width:14px }
.swatcom-homepage .sc-heritage-signoff { gap:35px;margin-top:25px;padding-top:23px }
.swatcom-homepage .sc-heritage-est strong { font-size:37px }
.swatcom-homepage .sc-communications-inner { align-items:flex-start;flex-direction:column;gap:23px }
.swatcom-homepage .sc-communications-band { padding-block:35px }
.swatcom-homepage .sc-communications-band h2 { font-size:38px }
.swatcom-homepage .sc-communications-band .sc-button { font-size:12px }
.swatcom-homepage .sc-field-notes { grid-template-columns:.65fr 1fr;gap:38px }
.swatcom-homepage .sc-notes-heading h2 { font-size:43px }
.swatcom-homepage .sc-notes-heading .sc-eyebrow { font-size:12px }
.swatcom-homepage .sc-notes-list>.sc-note-item { gap:16px }
.swatcom-homepage .sc-notes-list h3 { font-size:20px }
.swatcom-homepage .sc-notes-list .sc-note-index { font-size:23px }
}
@media(max-width:700px) {

.swatcom-homepage .sc-section { padding-block:56px }
.swatcom-homepage .sc-section-heading { display:block;margin-bottom:27px }
.swatcom-homepage .sc-section-heading .sc-eyebrow { font-size:12px }
.swatcom-homepage .sc-section-heading h2 { font-size:36px;margin-top:11px }
.swatcom-homepage .sc-section-heading .sc-text-link { font-size:12px;margin-top:18px }
.swatcom-homepage .sc-collection-grid { grid-template-columns:1fr;gap:16px }
.swatcom-homepage .sc-collection-card { height:360px }
.swatcom-homepage .sc-collection-content { left:25px;right:25px;bottom:23px }
.swatcom-homepage .sc-collection-content h3 { font-size:43px }
.swatcom-homepage .sc-collection-number { left:25px;top:22px;font-size:12px }
.swatcom-homepage .sc-collection-action { margin-top:17px;padding-top:12px }
.swatcom-homepage .sc-product-grid { gap:28px 15px }
.swatcom-homepage .sc-product-tag { font-size:12px;top:9px;left:8px;padding:3px 4px }
.swatcom-homepage .sc-product-image.sc-glasses-product>img { padding:0 }
.swatcom-homepage .sc-product-view { width:28px;height:28px;right:8px;bottom:8px }
.swatcom-homepage .sc-product-view .sc-icon { width:17px }
.swatcom-homepage .sc-product-meta { padding-top:14px }

.swatcom-homepage .sc-product-meta h3 { font-size:20px;min-height:44px;margin-top:5px;line-height:1.05 }
.swatcom-homepage .sc-product-detail { font-size:12px;min-height:33px;margin-top:4px }
.swatcom-homepage .sc-product-bottom { margin-top:13px;display:block }
.swatcom-homepage .sc-price { font-size:16px }
.swatcom-homepage .sc-price small { font-size:12px;margin-left:3px }
.swatcom-homepage .sc-product-colours { display:none }

.swatcom-homepage .sc-heritage { grid-template-columns:1fr;gap:32px }
.swatcom-homepage .sc-heritage-image { aspect-ratio:1.12 }
.swatcom-homepage .sc-heritage-image>img { object-position:35% 42% }
.swatcom-homepage .sc-image-credit { font-size:12px }
.swatcom-homepage .sc-heritage-copy h2 { font-size:44px;margin-top:15px }
.swatcom-homepage .sc-heritage-copy>p:not(.sc-eyebrow) { font-size:15px;max-width:none }
.swatcom-homepage .sc-heritage-signoff { gap:50px }
.swatcom-homepage .sc-heritage-copy .sc-eyebrow { font-size:12px }
.swatcom-homepage .sc-communications-band { padding-block:34px }
.swatcom-homepage .sc-communications-band h2 { font-size:36px;max-width:360px }
.swatcom-homepage .sc-communications-band .sc-eyebrow { font-size:12px }
.swatcom-homepage .sc-communications-band .sc-button { font-size:12px;padding-inline:18px;min-height:48px }
.swatcom-homepage .sc-field-notes { display:block }
.swatcom-homepage .sc-notes-heading h2 { font-size:44px }
.swatcom-homepage .sc-notes-heading>p:not(.sc-eyebrow) { font-size:14px;max-width:none;margin-top:17px }
.swatcom-homepage .sc-notes-heading .sc-text-link { margin-top:17px;font-size:12px }
.swatcom-homepage .sc-notes-list { margin-top:33px }
.swatcom-homepage .sc-notes-list>.sc-note-item { padding:24px 0;gap:18px }
.swatcom-homepage .sc-notes-list h3 { font-size:22px }
.swatcom-homepage .sc-notes-list .sc-eyebrow { font-size:12px }
.swatcom-homepage .sc-notes-list .sc-icon { width:18px }
}
@media(max-width:370px) {

.swatcom-homepage .sc-product-meta h3 { font-size:18px }
}
@media(prefers-reduced-motion:reduce) {
.swatcom-homepage .sc-collection-card:hover>img,
.swatcom-homepage .sc-product-card:hover .sc-product-image>img { transform:none }
}
.swatcom-homepage .sc-communications-band .sc-button { font-size:14px }
.swatcom-homepage .sc-collection-action,
.swatcom-homepage .sc-section-heading .sc-text-link { font-size:14px }
.swatcom-homepage .sc-product-detail { font-size:14px }
.swatcom-homepage .sc-heritage-copy>p:not(.sc-eyebrow),
.swatcom-homepage .sc-notes-heading>p:not(.sc-eyebrow)  { font-size:16px }

@media(max-width:700px) {

.swatcom-homepage .sc-product-meta h3 { min-height:45px }
.swatcom-homepage .sc-product-detail { min-height:44px }
.swatcom-homepage .sc-price small { font-size:12px }
.swatcom-homepage .sc-collection-number { font-size:12px }
.swatcom-homepage .sc-product-tag { font-size:10px }

.swatcom-homepage .sc-image-credit { font-size:10px }

}
.swatcom-homepage .sc-product-image { background:#ececea }
.swatcom-homepage .sc-product-tag { background:#080808;color:var(--yellow);border-color:#080808 }
.swatcom-homepage .sc-product-image>img { padding:12px }
.swatcom-homepage .sc-product-image.sc-glasses-product>img { padding:9px }
@media(max-width:700px) {

.swatcom-homepage .sc-product-tag,
.swatcom-homepage .sc-image-credit  { font-size:12px }

.swatcom-homepage .sc-image-credit { line-height:1.5 }

}

/* These Astra layout adjustments apply only to the active homepage component. */
body.swatcom-home-active { background:#080808; }
body.swatcom-home-active #content > .ast-container { display:block; max-width:none; width:100%; padding:0; }
body.swatcom-home-active #primary { width:100%; margin:0!important; padding:0; border:0; float:none; }
body.swatcom-home-active #secondary { display:none; }
body.swatcom-home-active .site-main > article { margin:0; padding:0; border:0; background:transparent; }
body.swatcom-home-active .site-main > article > .entry-header { display:none; }
body.swatcom-home-active .entry-content > .swatcom-homepage { max-width:none; margin:0; }

.swatcom-homepage .sc-product-image img{width:100%;height:100%;object-fit:contain}.swatcom-homepage .sc-stock-label{font-size:12px;color:var(--muted)}.swatcom-homepage .sc-product-bottom{flex-wrap:wrap}

/* 1.1: win against Astra's entry-content link decoration without affecting other components. */
body .swatcom-design.swatcom-homepage a,
body .swatcom-design.swatcom-homepage a:hover,
body .swatcom-design.swatcom-homepage a:focus,
body .swatcom-design.swatcom-homepage a:visited { text-decoration:none!important;box-shadow:none; }
.swatcom-design.swatcom-homepage .sc-text-link  { border-bottom:0;padding-bottom:0; }
.swatcom-design.swatcom-homepage a:focus-visible { outline:2px solid var(--yellow);outline-offset:5px; }

/* Editable collections and live Featured products. */

.swatcom-homepage .sc-collection-grid { row-gap:24px; }
.swatcom-homepage .sc-collection-card { display:block;min-width:0; }
.swatcom-homepage .sc-collection-card>img { object-position:var(--sc-card-position,50% 50%); }
.swatcom-homepage .sc-collection-content h3 { text-transform:uppercase;text-wrap:balance;overflow-wrap:break-word; }
.swatcom-homepage .sc-collection-description { display:block; }
.swatcom-homepage .sc-collection-number { background:#080808b8;padding:5px 8px;line-height:1.4;max-width:calc(100% - 52px); }
.swatcom-homepage .sc-product-card { display:flex;flex-direction:column;min-width:0; }
.swatcom-homepage .sc-product-meta { display:flex;flex-direction:column;flex:1; }
.swatcom-homepage .sc-product-bottom { margin-top:auto;padding-top:21px; }
.swatcom-homepage .sc-notes-list .sc-note-item { min-width:0; }
.swatcom-homepage .sc-notes-list h3 { overflow-wrap:anywhere; }
@media(min-width:1001px) {
    .swatcom-homepage .sc-product-grid { grid-template-columns:repeat(4,minmax(0,1fr));row-gap:40px; }
}
@media(min-width:701px) and (max-width:1000px) {
    .swatcom-homepage .sc-collection-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .swatcom-homepage .sc-collection-card { height:390px; }
}
@media(max-width:700px) {

    .swatcom-homepage .sc-collection-card { height:390px; }
    .swatcom-homepage .sc-collection-content h3 { font-size:38px;max-width:360px; }
}

/* 1.3: white applies to the image tiles; the product section keeps its dark theme. */
.swatcom-homepage .sc-bestsellers { background:var(--black);color:var(--white);border-block:1px solid #222; }
.swatcom-homepage .sc-bestsellers .sc-product-image { background:var(--sc-product-image-bg,#ffffff); }
.swatcom-homepage .sc-bestsellers .sc-product-meta h3 { margin-top:0; }
.swatcom-design.swatcom-homepage .sc-button,
.swatcom-design.swatcom-homepage .sc-lens-button,
.swatcom-design.swatcom-homepage .sc-hero-colour-button { font-family:var(--body);font-weight:800; }

/* Auto-sized copy rows form one vertically centred group. The image cannot stretch them. */
/* Both showcases paint the same broad glow over the full section. Each keeps
   its own colour palette; the glasses glow is mirrored behind its left image. */
.swatcom-homepage .sc-hero,
.swatcom-homepage .sc-vision-feature {
    background:radial-gradient(ellipse at var(--sc-feature-glow-position),rgba(var(--sc-feature-glow),.32) 0%,rgba(var(--sc-feature-glow),.10) 36%,transparent 68%),var(--black);
}
.swatcom-homepage .sc-hero {
    --sc-hero-glow:106,116,82;
    --sc-hero-outline:164,173,151;
    --sc-hero-glow-position:74% 45%;
    --sc-feature-glow:var(--sc-hero-glow);
    --sc-feature-glow-position:var(--sc-hero-glow-position);
    position:relative;overflow:hidden;
    border-bottom:1px solid #272727;padding-bottom:calc(var(--sc-hero-divider-gap) - 28px);
}
/* Muted headset colours keep the glow subtle against the shared black base. */
.swatcom-homepage .sc-hero[data-active-colour="black"] { --sc-hero-glow:104,104,104;--sc-hero-outline:185,190,194; }
.swatcom-homepage .sc-hero[data-active-colour="tan"] { --sc-hero-glow:164,141,106;--sc-hero-outline:198,178,139; }
.swatcom-homepage .sc-hero[data-active-colour="orange"] { --sc-hero-glow:191,103,49;--sc-hero-outline:207,147,101; }
.swatcom-homepage .sc-hero-filter-defs { position:absolute;width:0;height:0;overflow:hidden;pointer-events:none; }
.swatcom-homepage .sc-hero-grid { position:relative;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);grid-template-rows:auto auto;grid-template-areas:"intro ." "details .";align-content:center;column-gap:24px;min-height:var(--sc-feature-height);padding-block:52px; }
.swatcom-homepage .sc-hero-copy { grid-area:intro;position:relative;z-index:2;min-width:0; }
.swatcom-homepage .sc-hero-eyebrow { display:flex;align-items:center;gap:12px;color:#deded6;font-size:12px;letter-spacing:.09em; }
.swatcom-design.swatcom-homepage .sc-hero h1 { font-family:var(--display);font-weight:600;font-size:var(--sc-feature-title-size);line-height:var(--sc-feature-title-leading);letter-spacing:var(--sc-feature-title-tracking);white-space:nowrap;overflow-wrap:normal;word-break:normal; }
.swatcom-homepage .sc-hero-eyebrow+h1 { margin-top:22px; }
.swatcom-homepage .sc-hero h1>span { color:var(--yellow); }
.swatcom-homepage .sc-hero-colours { display:flex;flex-wrap:wrap;gap:8px;margin-top:22px; }
.swatcom-design.swatcom-homepage .sc-hero-colour-button { display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 13px;background:transparent;border:1px solid #525249;color:#e6e6dd;font-size:12px;line-height:1.3;letter-spacing:.035em; }
.swatcom-homepage .sc-hero-colour-button>i { width:10px;height:10px;border-radius:50%;background:var(--dot);border:1px solid #888;flex:none; }
.swatcom-design.swatcom-homepage .sc-hero-colour-button:hover,
.swatcom-design.swatcom-homepage .sc-hero-colour-button[aria-pressed="true"] { border-color:var(--yellow);color:var(--yellow);background:#fedb020a; }
.swatcom-homepage .sc-hero-colour-status { position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap; }
.swatcom-homepage .sc-hero-details { grid-area:details;position:relative;z-index:2;min-width:0;max-width:550px;padding-top:24px; }
.swatcom-homepage .sc-hero-description { max-width:460px;color:#f0f0ea;font-size:17px;line-height:1.7;overflow-wrap:anywhere; }
.swatcom-homepage .sc-hero-description p+p,
.swatcom-homepage .sc-hero-description ul,
.swatcom-homepage .sc-hero-description ol { margin-top:.65em; }
.swatcom-homepage .sc-hero-description ul,
.swatcom-homepage .sc-hero-description ol { margin-inline:0;padding-inline-start:1.3em;margin-bottom:0; }
.swatcom-homepage .sc-hero-description strong,
.swatcom-homepage .sc-hero-description b { color:#ffffff;font-weight:700; }
.swatcom-homepage .sc-hero-description em,
.swatcom-homepage .sc-hero-description i { font-style:italic; }
.swatcom-homepage .sc-hero-description a { color:var(--yellow); }
.swatcom-homepage .sc-hero-description a:hover { color:#ffffff; }
.swatcom-homepage .sc-hero-stats,
.swatcom-homepage .sc-vision-stats { display:grid;grid-template-columns:repeat(var(--sc-usp-count,3),minmax(0,1fr));gap:0;margin-top:24px;padding-block:22px;border-top:1px solid #424242;border-bottom:1px solid #424242; }
.swatcom-homepage .sc-hero-stats:first-child,
.swatcom-homepage .sc-vision-stats:first-child { margin-top:0; }
.swatcom-homepage .sc-hero-stats>div,
.swatcom-homepage .sc-vision-stats>div { min-width:0;padding-inline:18px;border-right:1px solid #34352b;text-align:center;overflow-wrap:anywhere; }
.swatcom-homepage .sc-hero-stats>div:last-child,
.swatcom-homepage .sc-vision-stats>div:last-child { border:0; }
.swatcom-homepage .sc-hero-stats strong,
.swatcom-homepage .sc-vision-stats strong { font-family:var(--display);font-weight:600;font-size:34px;line-height:1.2;display:block; }
.swatcom-homepage .sc-hero-stats strong span,
.swatcom-homepage .sc-vision-stats strong span { font-size:.55em;margin-left:3px; }
.swatcom-homepage .sc-hero-stats>div>span,
.swatcom-homepage .sc-vision-stats>div>span { display:block;color:#b2b5a8;font-size:12px;font-weight:700;letter-spacing:.025em;line-height:1.45;margin-top:4px; }
.swatcom-homepage .sc-hero-buttons { display:flex;align-items:center;flex-wrap:wrap;gap:18px 24px;margin-top:26px; }
.swatcom-homepage .sc-hero-buttons:first-child { margin-top:0; }
.swatcom-homepage .sc-hero .sc-button { font-size:14px; }
.swatcom-homepage .sc-hero-product { position:absolute;left:52%;right:-4%;top:28px;bottom:28px;display:flex;align-items:center;justify-content:center;min-width:0;isolation:isolate; }
.swatcom-homepage .sc-hero-headset { --sc-float-angle:-7deg;--sc-float-x:12px;--sc-float-rise:-14px;--sc-float-sink:4px;--sc-float-tilt:1deg;position:relative;z-index:1;width:106%;max-width:none;height:100%;object-fit:contain;filter:var(--sc-hero-sharpen,contrast(1.05)) drop-shadow(0 25px 35px #0007);transform:rotate(var(--sc-float-angle)); }
.swatcom-homepage .sc-hero-watermark { position:absolute;right:-10px;top:100px;font-family:var(--display);font-size:clamp(320px,46vw,740px);line-height:1;letter-spacing:-.1em;color:transparent;-webkit-text-stroke:1px rgba(var(--sc-hero-outline),.20);pointer-events:none;user-select:none; }
.swatcom-homepage .sc-hero-product-label { position:absolute;bottom:0;left:40px;right:10px;z-index:2;display:flex;align-items:center;gap:12px;font-size:14px;font-family:var(--display);letter-spacing:.03em; }
.swatcom-homepage .sc-hero-product-label strong { color:var(--yellow);font-weight:600; }
/* One shared secondary-caption style for both product showcases. */
.swatcom-homepage .sc-hero-product-label small,
.swatcom-homepage .sc-lens-caption>.sc-lens-description { font-family:var(--body);display:block;font-size:12px;font-weight:400;font-style:normal;line-height:1.65;letter-spacing:.08em;color:#b9bcaf;margin:2px 0 0;padding:0;text-transform:uppercase;white-space:normal; }
.swatcom-homepage .sc-collections { padding-top:var(--sc-hero-divider-gap); }
@media(min-width:1600px) {
    .swatcom-design.swatcom-homepage { --sc-feature-height:740px; }
}
@media(min-width:901px) and (max-width:1180px) {
    .swatcom-design.swatcom-homepage { --sc-feature-height:600px; }
    .swatcom-homepage .sc-hero-grid { column-gap:16px;padding-block:44px; }
    .swatcom-homepage .sc-hero-details { max-width:450px; }
    .swatcom-homepage .sc-hero-product-label { left:8px;right:0;font-size:13px; }
    .swatcom-homepage .sc-hero-description { max-width:420px;font-size:16px; }
    .swatcom-homepage .sc-hero-eyebrow { font-size:11px;letter-spacing:.04em; }
    .swatcom-homepage .sc-hero-stats>div,
    .swatcom-homepage .sc-vision-stats>div { padding-inline:14px; }
}
@media(max-width:900px) {
    .swatcom-design.swatcom-homepage { --sc-feature-title-size:clamp(30px,11.4vw,76px);--sc-feature-title-leading:.95;--sc-feature-title-tracking:-.035em; }
    .swatcom-homepage .sc-hero { --sc-hero-glow-position:50% 42%;padding-bottom:0; }
    .swatcom-homepage .sc-hero-grid { grid-template-columns:minmax(0,1fr);grid-template-rows:auto;grid-template-areas:"intro" "media" "details";min-height:0;gap:0;max-width:600px;padding-block:30px var(--sc-hero-divider-gap); }
    .swatcom-homepage .sc-hero-eyebrow { font-size:11px;letter-spacing:.035em;gap:10px; }
    .swatcom-homepage .sc-hero-eyebrow .sc-yellow-rule { width:18px; }
    .swatcom-homepage .sc-hero-eyebrow+h1 { margin-top:17px; }
    .swatcom-homepage .sc-hero-colours { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:20px; }
    .swatcom-design.swatcom-homepage .sc-hero-colour-button { min-width:0;gap:6px;padding:10px 7px;font-size:11px;letter-spacing:0; }
    .swatcom-homepage .sc-hero-colour-button>i { width:8px;height:8px; }
    .swatcom-homepage .sc-hero-product { grid-area:media;position:relative;inset:auto;width:calc(100% + var(--gutter)*2);max-width:none;margin-inline:calc(var(--gutter)*-1);height:clamp(335px,102vw,510px);margin-top:4px;padding-bottom:38px; }
    .swatcom-homepage .sc-hero-headset { --sc-float-angle:-5deg;--sc-float-x:7px;--sc-float-rise:-8px;--sc-float-sink:2px;--sc-float-tilt:.65deg;width:100%;height:100%;filter:var(--sc-hero-sharpen,contrast(1.05)) drop-shadow(0 16px 24px #0008); }
    .swatcom-homepage .sc-hero-product-label { left:var(--gutter);right:var(--gutter);bottom:6px;font-size:13px;gap:9px; }
    .swatcom-homepage .sc-hero-product-label small,
    .swatcom-homepage .sc-lens-caption>.sc-lens-description { font-size:10px;letter-spacing:.065em; }
    .swatcom-homepage .sc-hero-details { max-width:none;padding-top:22px; }
    .swatcom-homepage .sc-hero-description { max-width:none;font-size:16px;line-height:1.65; }
    .swatcom-homepage .sc-hero-stats,
    .swatcom-homepage .sc-vision-stats { width:100%;margin-top:24px;padding-block:20px; }
    .swatcom-homepage .sc-hero-stats>div,
    .swatcom-homepage .sc-vision-stats>div { padding-inline:10px; }
    .swatcom-homepage .sc-hero-stats strong,
    .swatcom-homepage .sc-vision-stats strong { font-size:clamp(27px,7vw,34px); }
    .swatcom-homepage .sc-hero-stats>div>span,
    .swatcom-homepage .sc-vision-stats>div>span { font-size:11px;letter-spacing:.02em; }
    .swatcom-homepage .sc-hero-buttons { margin-top:24px; }
    .swatcom-homepage .sc-hero .sc-button { width:100%;min-height:54px;padding:15px 18px;justify-content:space-between;gap:16px; }
    .swatcom-homepage .sc-hero-watermark,
    .swatcom-homepage .sc-vision-word { display:none; }
}
@media(max-width:370px) {
    .swatcom-homepage .sc-hero-colours { gap:5px; }
    .swatcom-design.swatcom-homepage .sc-hero-colour-button { gap:5px;padding-inline:5px;font-size:10px; }
    .swatcom-homepage .sc-hero-stats>div,
    .swatcom-homepage .sc-vision-stats>div { padding-inline:7px; }
}
.swatcom-homepage .sc-hero-colour-status.sc-is-error { position:static;display:block;width:auto;height:auto;margin:10px 0 0;overflow:visible;clip-path:none;white-space:normal;color:#f0f0ea;font-size:13px; }

/* Companion to Active360: left-hand imagery, the same headline scale, and
   vertically centred copy. Adjacent sections share a single divider. */
.swatcom-homepage .sc-vision-feature { --sc-lens-glow:191,103,49;--sc-feature-glow:var(--sc-lens-glow);--sc-feature-glow-position:26% 45%;--sc-vision-copy-gap:24px;position:relative;isolation:isolate;overflow:hidden;border-block:1px solid #272727;padding-bottom:calc(var(--sc-hero-divider-gap) - 28px); }
.swatcom-homepage .sc-vision-feature+.sc-bestsellers { border-top:0; }
.swatcom-homepage .sc-vision-grid { --sc-vision-details-gap:var(--sc-vision-copy-gap);display:grid;grid-template-columns:minmax(0,9fr) minmax(0,11fr);grid-template-rows:auto auto;grid-template-areas:"media intro" "media details";column-gap:24px;align-content:center;align-items:start;min-height:var(--sc-feature-height);padding-block:52px; }
.swatcom-homepage .sc-vision-intro { grid-area:intro; }
.swatcom-homepage .sc-vision-details { grid-area:details;padding-top:var(--sc-vision-details-gap); }
.swatcom-homepage .sc-vision-art { grid-area:media;position:relative;min-width:0;align-self:stretch;display:grid;grid-template-rows:minmax(280px,1fr) auto;gap:20px;isolation:auto;background:transparent; }
.swatcom-homepage .sc-lens-stage { position:relative;min-width:0;isolation:auto;background:transparent; }
/* Blend over the full section, including the image's overflow and floating
   travel. An isolated image column leaves a black frame outside its bounds. */
/* Keep the full-width glow and outline stationary behind the floating image. */
.swatcom-homepage .sc-vision-feature[data-active-lens="yellow"] { --sc-lens-glow:174,158,54; }
.swatcom-homepage .sc-vision-feature[data-active-lens="pink"] { --sc-lens-glow:167,93,123; }
.swatcom-homepage .sc-vision-word { position:absolute;top:50%;left:-.03em;z-index:0;transform:translateY(-50%);font-family:var(--display);font-size:clamp(280px,34vw,650px);line-height:1;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px #4e4e4670;white-space:nowrap;pointer-events:none;user-select:none; }
.swatcom-homepage .sc-lens-stage>img { position:absolute;left:-6%;top:0;width:112%;max-width:none;height:100%;object-fit:contain;mix-blend-mode:difference;filter:var(--sc-hero-sharpen,contrast(1.05));z-index:1; }
/* The caption stays in normal flow so longer saved lens descriptions cannot
   cover the image or escape into the following section. */
.swatcom-homepage .sc-lens-caption { position:relative;z-index:2;min-width:0;overflow-wrap:anywhere; }
.swatcom-homepage .sc-lens-product-name { display:block;font-family:var(--display);font-size:14px;line-height:1.5;letter-spacing:.03em;color:var(--white);text-transform:uppercase; }
.swatcom-homepage .sc-lens-product-name strong { color:var(--yellow);font-weight:600; }
.swatcom-homepage .sc-vision-copy { position:relative;z-index:2;min-width:0;overflow-wrap:anywhere; }
.swatcom-homepage .sc-vision-copy>.sc-eyebrow { display:flex;align-items:center;gap:12px;color:#deded6;font-size:12px;letter-spacing:.09em; }
.swatcom-design.swatcom-homepage .sc-vision-copy h2 { font-family:var(--display);font-weight:600;font-size:var(--sc-feature-title-size);line-height:var(--sc-feature-title-leading);letter-spacing:var(--sc-feature-title-tracking);overflow-wrap:break-word;word-break:normal; }
.swatcom-homepage .sc-vision-copy>.sc-eyebrow+h2 { margin-top:22px; }
.swatcom-homepage .sc-vision-copy h2>span { color:var(--yellow); }
.swatcom-homepage .sc-lens-options { display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--sc-vision-copy-gap); }
.swatcom-design.swatcom-homepage .sc-lens-button { display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;max-width:100%;padding:10px 13px;background:transparent;border:1px solid #525249;color:#e6e6dd;font-size:12px;line-height:1.3;letter-spacing:.035em; }
.swatcom-homepage .sc-lens-button>i { width:10px;height:10px;border-radius:50%;background:var(--dot);border:1px solid #888;flex:none; }
.swatcom-design.swatcom-homepage .sc-lens-button:hover,
.swatcom-design.swatcom-homepage .sc-lens-button[aria-pressed="true"] { border-color:var(--yellow);color:var(--yellow);background:#fedb020a; }
.swatcom-homepage .sc-vision-copy>.sc-vision-description { max-width:460px;color:#f0f0ea;font-size:17px;line-height:1.7;margin-top:0; }
.swatcom-homepage .sc-vision-details { max-width:550px; }
.swatcom-homepage .sc-vision-copy>.sc-lens-status { max-width:460px;color:#f0f0ea;font-size:13px;line-height:1.5;margin-top:12px; }
.swatcom-homepage .sc-vision-copy>.sc-button { margin-top:var(--sc-vision-copy-gap);max-width:100%;font-size:14px;min-height:54px;padding:15px 24px;gap:25px; }
.swatcom-homepage .sc-vision-stats+.sc-button { margin-top:26px; }
.swatcom-homepage .sc-vision-details>.sc-button:first-child { margin-top:0; }
@media(min-width:901px) and (max-width:1180px) {
    .swatcom-homepage .sc-vision-grid { column-gap:16px;padding-block:44px; }
    .swatcom-homepage .sc-vision-copy>.sc-eyebrow { font-size:11px;letter-spacing:.04em; }
    .swatcom-homepage .sc-vision-copy>.sc-vision-description { max-width:420px;font-size:16px; }
    .swatcom-homepage .sc-vision-details { max-width:450px; }
    .swatcom-homepage .sc-lens-product-name { font-size:13px; }
}
@media(max-width:900px) {
    .swatcom-homepage .sc-vision-feature { --sc-feature-glow-position:50% 42%;--sc-vision-copy-gap:20px;padding-bottom:0; }
    .swatcom-homepage .sc-vision-grid { grid-template-columns:minmax(0,1fr);grid-template-rows:auto;grid-template-areas:"intro" "media" "details";gap:0;min-height:0;max-width:600px;padding-block:30px var(--sc-hero-divider-gap); }
    .swatcom-homepage .sc-vision-art { width:calc(100% + var(--gutter)*2);margin-inline:calc(var(--gutter)*-1);grid-template-rows:auto auto;gap:12px;margin-top:4px; }
    .swatcom-homepage .sc-lens-stage { height:clamp(335px,102vw,510px); }
    .swatcom-homepage .sc-lens-stage>img { left:-5%;width:110%; }
    .swatcom-homepage .sc-lens-caption { margin-inline:var(--gutter); }
    .swatcom-homepage .sc-lens-product-name { font-size:13px; }
    .swatcom-homepage .sc-vision-details { max-width:none;padding-top:22px; }
    .swatcom-homepage .sc-vision-copy>.sc-eyebrow { font-size:11px;letter-spacing:.035em;gap:10px; }
    .swatcom-homepage .sc-vision-copy>.sc-eyebrow .sc-yellow-rule { width:18px; }
    .swatcom-homepage .sc-vision-copy>.sc-eyebrow+h2 { margin-top:17px; }
    .swatcom-homepage .sc-lens-options { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px; }
    .swatcom-design.swatcom-homepage .sc-lens-button { min-width:0;gap:6px;padding:10px 7px;font-size:11px;letter-spacing:0; }
    .swatcom-homepage .sc-lens-button>i { width:8px;height:8px; }
    .swatcom-homepage .sc-vision-copy>.sc-vision-description { max-width:none;font-size:16px;line-height:1.65; }
    .swatcom-homepage .sc-vision-copy>.sc-button { width:100%;padding:15px 18px;justify-content:space-between;gap:16px; }
    .swatcom-homepage .sc-vision-stats+.sc-button { margin-top:24px; }
}
@media(max-width:370px) {
    .swatcom-homepage .sc-lens-options { gap:5px; }
    .swatcom-design.swatcom-homepage .sc-lens-button { gap:5px;padding-inline:5px;font-size:10px; }
}

/* The desktop image caption already ends 28px above its grid edge.
   Additional hero padding makes its gap match the collection's top padding. */
.swatcom-homepage .sc-product-eyebrow { margin-bottom:8px;font-size:11px;line-height:1.5;color:var(--muted); }
.swatcom-homepage .sc-favourites-description { max-width:650px;margin-top:18px;color:var(--muted); }
.swatcom-homepage .sc-product-meta { overflow-wrap:anywhere; }
.swatcom-homepage .sc-communications-band { padding-block:clamp(48px,6vw,88px); }
.swatcom-homepage .sc-communications-inner { display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(36px,6vw,90px); }
.swatcom-homepage .sc-communications-copy { min-width:0; }
.swatcom-homepage .sc-communications-band .sc-eyebrow { color:#373208; }
.swatcom-homepage .sc-communications-band h2 { max-width:620px;font-size:clamp(40px,4.5vw,68px);line-height:1.02;margin-top:20px;overflow-wrap:anywhere; }
.swatcom-homepage .sc-communications-description { max-width:510px;font-size:17px;line-height:1.75;margin-top:24px;color:#282405; }
.swatcom-homepage .sc-communications-copy>.sc-button { margin-top:30px;max-width:100%; }
.swatcom-homepage .sc-communications-visual { min-width:0;width:100%;margin:0; }
.swatcom-homepage .sc-communications-image { aspect-ratio:10/7;overflow:hidden;border:0; }
.swatcom-homepage .sc-communications-image>img { display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%; }
@media(max-width:900px) {
    .swatcom-homepage .sc-communications-inner { grid-template-columns:1fr;gap:32px; }
    .swatcom-homepage .sc-communications-band h2 { max-width:650px;font-size:clamp(36px,7vw,56px); }
    .swatcom-homepage .sc-communications-description { max-width:600px;font-size:16px; }
    .swatcom-homepage .sc-communications-visual { max-width:650px; }
}
.swatcom-homepage .sc-bestsellers .sc-section-heading h2,
.swatcom-homepage .sc-bestsellers .sc-product-meta h3 { text-transform:uppercase; }
.swatcom-homepage .sc-product-image .sc-product-badge { position:absolute;top:15px;left:15px;z-index:2;display:inline-block;max-width:calc(100% - 30px);padding:7px 9px;background:var(--black);color:var(--yellow);font-family:var(--body);font-size:11px;font-weight:700;line-height:1.35;letter-spacing:.04em;text-transform:uppercase;overflow-wrap:anywhere;pointer-events:none; }
/* Let every card's copy flow naturally with one gap, on desktop and mobile. */
.swatcom-homepage .sc-bestsellers .sc-product-meta { flex:0 0 auto;gap:10px; }
.swatcom-homepage .sc-bestsellers .sc-product-meta>* { margin:0;min-height:0; }
.swatcom-homepage .sc-bestsellers .sc-product-bottom { padding-top:0; }
@media(max-width:700px) {
    .swatcom-homepage .sc-bestsellers .sc-product-detail { display:none; }
    .swatcom-homepage .sc-product-image .sc-product-badge { top:10px;left:10px;max-width:calc(100% - 20px);padding:6px 7px;font-size:10px; }
}

/* 1.4.6: a sampled oval with linear timing keeps translation moving at every point.
   The loop joins halfway along one segment, matching both position and velocity
   at 0/100%. Only transforms animate; image changes retain the animation clock. */
.swatcom-homepage .sc-lens-image { --sc-float-angle:0deg;--sc-float-x:16px;--sc-float-rise:-10px;--sc-float-sink:3px;--sc-float-tilt:1.4deg; }
@keyframes sc-homepage-product-float {
    0% { transform:translate3d(calc(var(--sc-float-x) * 0),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.997592),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0)); }
    1.5625% { transform:translate3d(calc(var(--sc-float-x) * 0.098017),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.997592),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.098017)); }
    4.6875% { transform:translate3d(calc(var(--sc-float-x) * 0.290285),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.97847),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.290285)); }
    7.8125% { transform:translate3d(calc(var(--sc-float-x) * 0.471397),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.940961),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.471397)); }
    10.9375% { transform:translate3d(calc(var(--sc-float-x) * 0.634393),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.886505),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.634393)); }
    14.0625% { transform:translate3d(calc(var(--sc-float-x) * 0.77301),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.817197),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.77301)); }
    17.1875% { transform:translate3d(calc(var(--sc-float-x) * 0.881921),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.735698),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.881921)); }
    20.3125% { transform:translate3d(calc(var(--sc-float-x) * 0.95694),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.645142),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.95694)); }
    23.4375% { transform:translate3d(calc(var(--sc-float-x) * 0.995185),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.549009),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.995185)); }
    26.5625% { transform:translate3d(calc(var(--sc-float-x) * 0.995185),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.450991),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.995185)); }
    29.6875% { transform:translate3d(calc(var(--sc-float-x) * 0.95694),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.354858),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.95694)); }
    32.8125% { transform:translate3d(calc(var(--sc-float-x) * 0.881921),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.264302),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.881921)); }
    35.9375% { transform:translate3d(calc(var(--sc-float-x) * 0.77301),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.182803),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.77301)); }
    39.0625% { transform:translate3d(calc(var(--sc-float-x) * 0.634393),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.113495),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.634393)); }
    42.1875% { transform:translate3d(calc(var(--sc-float-x) * 0.471397),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.059039),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.471397)); }
    45.3125% { transform:translate3d(calc(var(--sc-float-x) * 0.290285),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.02153),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.290285)); }
    48.4375% { transform:translate3d(calc(var(--sc-float-x) * 0.098017),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.002408),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0.098017)); }
    51.5625% { transform:translate3d(calc(var(--sc-float-x) * -0.098017),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.002408),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.098017)); }
    54.6875% { transform:translate3d(calc(var(--sc-float-x) * -0.290285),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.02153),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.290285)); }
    57.8125% { transform:translate3d(calc(var(--sc-float-x) * -0.471397),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.059039),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.471397)); }
    60.9375% { transform:translate3d(calc(var(--sc-float-x) * -0.634393),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.113495),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.634393)); }
    64.0625% { transform:translate3d(calc(var(--sc-float-x) * -0.77301),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.182803),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.77301)); }
    67.1875% { transform:translate3d(calc(var(--sc-float-x) * -0.881921),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.264302),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.881921)); }
    70.3125% { transform:translate3d(calc(var(--sc-float-x) * -0.95694),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.354858),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.95694)); }
    73.4375% { transform:translate3d(calc(var(--sc-float-x) * -0.995185),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.450991),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.995185)); }
    76.5625% { transform:translate3d(calc(var(--sc-float-x) * -0.995185),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.549009),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.995185)); }
    79.6875% { transform:translate3d(calc(var(--sc-float-x) * -0.95694),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.645142),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.95694)); }
    82.8125% { transform:translate3d(calc(var(--sc-float-x) * -0.881921),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.735698),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.881921)); }
    85.9375% { transform:translate3d(calc(var(--sc-float-x) * -0.77301),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.817197),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.77301)); }
    89.0625% { transform:translate3d(calc(var(--sc-float-x) * -0.634393),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.886505),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.634393)); }
    92.1875% { transform:translate3d(calc(var(--sc-float-x) * -0.471397),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.940961),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.471397)); }
    95.3125% { transform:translate3d(calc(var(--sc-float-x) * -0.290285),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.97847),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.290285)); }
    98.4375% { transform:translate3d(calc(var(--sc-float-x) * -0.098017),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.997592),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * -0.098017)); }
    100% { transform:translate3d(calc(var(--sc-float-x) * 0),calc(var(--sc-float-rise) + (var(--sc-float-sink) - var(--sc-float-rise)) * 0.997592),0) rotate(calc(var(--sc-float-angle) + var(--sc-float-tilt) * 0)); }
}
@media(prefers-reduced-motion:no-preference) {
    .swatcom-homepage .sc-hero-headset,
    .swatcom-homepage .sc-lens-image { animation:sc-homepage-product-float 8s linear infinite; }
    .swatcom-homepage .sc-lens-image { animation-duration:10s;animation-delay:-2.5s; }
}
@media(max-width:700px) {
    .swatcom-homepage .sc-lens-image { --sc-float-x:9px;--sc-float-rise:-6px;--sc-float-sink:2px;--sc-float-tilt:.85deg; }
}

/* 1.5.5: archive-style favourites. All saved copy, images and prices are retained. */
.swatcom-homepage .sc-bestsellers .sc-product-grid{gap:26px 22px;align-items:stretch}
.swatcom-homepage .sc-bestsellers .sc-product-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:0;background:#101010;border:1px solid #2c2c2c;box-shadow:none;color:#f5f5f1;text-align:left;text-decoration:none;transition:border-color .2s;transform:none}
.swatcom-homepage .sc-bestsellers .sc-product-card:is(:hover,:focus-visible){border-color:var(--yellow);color:#f5f5f1;text-decoration:none;transform:none}
.swatcom-homepage .sc-bestsellers .sc-product-image{flex:none;aspect-ratio:1;background:var(--sc-product-image-bg,#fff);overflow:hidden}
.swatcom-homepage .sc-bestsellers .sc-product-image>img{display:block;width:100%;height:100%;object-fit:contain;aspect-ratio:auto;margin:0;padding:0;transition:transform .4s}
.swatcom-homepage .sc-bestsellers .sc-product-card:hover .sc-product-image>img{transform:scale(1.025)}
.swatcom-homepage .sc-bestsellers .sc-product-meta{display:flex;flex-direction:column;flex:1 0 auto;gap:0;min-width:0;padding:24px 18px 18px;overflow-wrap:break-word}
.swatcom-homepage .sc-bestsellers .sc-product-meta h3{margin:0;padding:0;min-height:2.4em;height:auto;max-height:none;flex-shrink:0;font:600 21px/1.2 var(--display);letter-spacing:-.02em;text-transform:uppercase;color:#f5f5f1;transition:color .2s}
.swatcom-homepage .sc-bestsellers .sc-product-card:is(:hover,:focus-visible) h3{color:var(--yellow)}
.swatcom-homepage .sc-bestsellers .sc-product-eyebrow{margin:0 0 10px;font-size:10px;line-height:1.5;color:#b9b9b9}
.swatcom-homepage .sc-bestsellers .sc-product-detail{min-height:0;margin:12px 0 0;font:400 12px/1.7 var(--body);color:#b9b9b9}
.swatcom-homepage .sc-bestsellers .sc-product-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 12px;width:100%;margin-top:auto;padding:18px 0 0}
.swatcom-homepage .sc-bestsellers .sc-price{grid-column:1;min-width:0;font:700 17px/1.55 var(--body);white-space:normal;color:#f5f5f1}
.swatcom-homepage .sc-bestsellers .sc-price del{color:#b5b5b5;font-size:13px;opacity:1;margin-right:6px}
.swatcom-homepage .sc-bestsellers .sc-price ins{background:transparent;color:var(--yellow);text-decoration:none}
.swatcom-homepage .sc-bestsellers .sc-price small{font:400 11px/1.5 var(--body);color:#b9b9b9;white-space:normal}
.swatcom-homepage .sc-bestsellers .sc-product-view{position:static;grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;width:18px;height:18px;min-width:0;margin:0;padding:0;border:0;background:transparent;color:var(--yellow);opacity:1;transform:none;transition:none}
.swatcom-homepage .sc-bestsellers .sc-product-view .sc-icon{width:18px;height:18px}
.swatcom-homepage .sc-bestsellers .sc-stock-label{grid-column:1/3;justify-self:start;max-width:100%;padding:6px 10px;border:1px solid #000;background:#000;color:#fff;font:700 9px/1.4 var(--body);letter-spacing:.035em;text-transform:uppercase}
.swatcom-homepage .sc-bestsellers .sc-product-image .sc-product-badge{top:12px;left:12px;max-width:calc(100% - 24px);padding:6px 10px;font-size:10px}
@media(max-width:1100px){.swatcom-homepage .sc-bestsellers .sc-product-meta{padding:22px 14px 18px}.swatcom-homepage .sc-bestsellers .sc-product-meta h3{font-size:19px}}
@media(max-width:700px){
 .swatcom-homepage .sc-bestsellers .sc-product-grid{gap:18px 12px}
 .swatcom-homepage .sc-bestsellers .sc-product-image{aspect-ratio:1}
 .swatcom-homepage .sc-bestsellers .sc-product-image>img{padding:0}
 .swatcom-homepage .sc-bestsellers .sc-product-meta{padding:18px 12px}
 .swatcom-homepage .sc-bestsellers .sc-product-meta h3{font-size:18px;line-height:1.2}
 .swatcom-homepage .sc-bestsellers .sc-product-bottom{padding-top:15px}
 .swatcom-homepage .sc-bestsellers .sc-price{font-size:15px}
 .swatcom-homepage .sc-bestsellers .sc-price del{font-size:11px}
 .swatcom-homepage .sc-bestsellers .sc-price small{font-size:10px}
 .swatcom-homepage .sc-bestsellers .sc-product-view,.swatcom-homepage .sc-bestsellers .sc-product-view .sc-icon{width:15px;height:15px}
 .swatcom-homepage .sc-bestsellers .sc-stock-label{padding:5px 8px}
 .swatcom-homepage .sc-bestsellers .sc-product-image .sc-product-badge{top:9px;left:9px;max-width:calc(100% - 18px);padding:5px 8px;font-size:9px}
}
@media(max-width:359px){.swatcom-homepage .sc-bestsellers .sc-product-grid{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.swatcom-homepage .sc-bestsellers :is(.sc-product-card,.sc-product-image>img,h3){transition:none}.swatcom-homepage .sc-bestsellers .sc-product-card:hover .sc-product-image>img{transform:none}}
