/*
Theme Name: Sounds Lekker Clean Stable v1.2.28
Theme URI: https://soundslekker.com/
Author: Sounds Lekker
Description: The approved clean Sounds Lekker WooCommerce design, with compact product thumbnails.
Version: 1.2.28
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: sounds-lekker
*/

:root { --sl-ink:#24201d; --sl-cream:#f4f0e7; --sl-paper:#fbfaf5; --sl-orange:#ed4d24; --sl-blue:#537a89; --sl-line:#d4cdc0; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--sl-paper); color:var(--sl-ink); font-family:Arial,Helvetica,sans-serif; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; height:auto; }
.screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.sl-announcement { background:var(--sl-orange); color:#fff; min-height:38px; text-align:center; padding:10px; font-size:11px; letter-spacing:.06em; text-transform:uppercase; }
.sl-announcement a { font-weight:700; text-decoration:underline; }
.sl-header-brand { display:flex; align-items:center; gap:16px; }
.sl-header-mark { width:110px; height:110px; display:block; }
.sl-header-mark img { width:100%; height:100%; object-fit:contain; display:block; }
.sl-header { display:flex; justify-content:space-between; align-items:center; padding:28px 5vw; border-bottom:1px solid var(--sl-line); background:var(--sl-paper); position:relative; z-index:3; }
.sl-wordmark { display:grid; line-height:.78; letter-spacing:-.1em; width:150px; }
.sl-wordmark span,.sl-wordmark em { font-size:29px; font-weight:900; font-style:normal; }
.sl-wordmark em { color:var(--sl-orange); padding-left:16px; }
.sl-wordmark small { font-size:9px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; margin-top:9px; line-height:1; }
.sl-nav { display:flex; align-items:center; gap:28px; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.sl-nav-links { display:flex; align-items:center; gap:28px; list-style:none; margin:0; padding:0; }
.sl-nav-links li { margin:0; padding:0; }
.sl-nav a:hover,.sl-text-link:hover { color:var(--sl-orange); }
.sl-cart { border:1px solid var(--sl-ink); padding:10px 14px; font-size:11px; }
.sl-repairs-link { white-space:nowrap; }
.sl-cart-count { background:var(--sl-orange); color:#fff; border-radius:50%; padding:3px 6px; margin-left:5px; }
.sl-menu-toggle { display:none; border:0; background:transparent; color:var(--sl-ink); -webkit-appearance:none; appearance:none; text-transform:uppercase; font-weight:700; }
.sl-hero { display:grid; grid-template-columns:1fr 1fr; min-height:650px; background:var(--sl-cream); border-bottom:1px solid var(--sl-line); }
.sl-hero-copy,.sl-hero-image { min-width:0; }
.sl-hero-copy { padding:clamp(60px,9vw,135px) 8vw; }
.sl-eyebrow { font-size:10px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--sl-blue); margin:0 0 20px; }
.sl-hero h1,.sl-section-heading h2,.sl-story h2,.sl-shipping h2,.sl-contact h2 { font-family:Georgia,serif; letter-spacing:-.07em; font-weight:400; line-height:.88; margin:0; font-size:clamp(58px,7vw,105px); }
.sl-hero h1 em,.sl-section-heading h2 em,.sl-story h2 em,.sl-contact h2 em { color:var(--sl-orange); font-style:italic; }
.sl-hero-text { max-width:340px; font-size:16px; line-height:1.55; margin:32px 0; }
.sl-button { display:inline-flex; gap:34px; align-items:center; padding:15px 18px; font-size:11px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.sl-button-dark { background:var(--sl-ink); color:var(--sl-paper); }
.sl-button-dark:hover { background:var(--sl-orange); color:#fff; }
.sl-hero-note { font-size:10px; margin-top:18px; color:#776e63; }
.sl-hero-image { position:relative; overflow:hidden; background:#b8a99b; border:2px solid var(--sl-orange); }
.sl-hero-image img { width:100%; height:100%; object-fit:cover; mix-blend-mode:normal; filter:saturate(.9) brightness(1.06); }
.sl-stamp { position:absolute; bottom:28px; right:28px; width:76px; height:76px; border:2px solid var(--sl-orange); border-radius:50%; display:grid; place-content:center; text-align:center; color:var(--sl-orange); font-weight:700; font-size:10px; line-height:1.05; text-transform:uppercase; transform:rotate(12deg); }
.sl-ticker { background:var(--sl-blue); color:#f7f3ea; display:flex; justify-content:space-around; padding:14px 5vw; font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.sl-shop-section { padding:110px 5vw 125px; }
.sl-section-heading { display:flex; justify-content:space-between; align-items:end; margin-bottom:58px; }
.sl-section-heading h2,.sl-story h2,.sl-shipping h2,.sl-contact h2 { font-size:clamp(54px,6.5vw,95px); }
.sl-section-intro { max-width:280px; line-height:1.5; font-size:13px; margin:0 4vw 6px 0; }
.sl-product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:36px 22px; }
.sl-product-grid ul.products { list-style:none; margin:0; padding:0; grid-column:1/-1; display:contents; }
.sl-past-listings { margin-top:120px; padding-top:80px; border-top:1px solid var(--sl-line); }
.sl-past-listings .sl-section-heading { margin-bottom:45px; }
.sl-empty-shelf { color:#756c61; font-size:13px; }
.sl-empty-state { max-width:560px; margin:25px 0; padding:30px; border:1px solid var(--sl-line); background:var(--sl-cream); }
.sl-empty-state p { margin:0 0 9px; line-height:1.5; }
.sl-empty-state p:first-child { font:400 28px/1 Georgia,serif; letter-spacing:-.04em; }
.sl-empty-state .button { display:inline-block; margin-top:15px; }
.sl-product-card { min-width:0; }
.sl-product-image { display:block; position:relative; aspect-ratio:3/4; background:#ded6c9; overflow:hidden; }
.sl-product-image img { width:100%; height:100%; object-fit:cover; mix-blend-mode:normal; filter:saturate(.9) brightness(1.04); transition:transform .5s ease; }
.sl-product-card:hover .sl-product-image img { transform:scale(1.06); }
.sl-product-tag { position:absolute; right:0; bottom:0; left:0; z-index:1; background:var(--sl-orange); color:#fff; font-size:9px; font-weight:700; letter-spacing:.12em; padding:9px 10px; text-align:center; text-transform:uppercase; }
.sl-product-card--sold .sl-product-image img { opacity:.78; }
.woocommerce ul.products li.product .sl-loop-image-frame { display:block; position:relative; aspect-ratio:3/4; overflow:hidden; background:#ded6c9; }
.woocommerce ul.products li.product .sl-loop-image-frame img,.woocommerce ul.products li.product a.sl-product-image > img { display:block; width:100%; height:100% !important; max-height:none; object-fit:cover; object-position:center; background:transparent; mix-blend-mode:normal; margin:0; }
.woocommerce ul.products li.product .sl-sold-band { position:absolute; right:0; bottom:0; left:0; z-index:2; display:block; min-height:32px; padding:10px 8px; background:var(--sl-orange); color:#fff; font-size:9px; font-weight:700; letter-spacing:.12em; line-height:12px; text-align:center; text-transform:uppercase; }
.sl-product-info { display:flex; justify-content:space-between; gap:12px; padding-top:13px; }
.sl-product-info h3 { font-size:14px; margin:0 0 7px; }
.sl-product-info p { font-size:10px; color:#887d70; margin:0; text-transform:uppercase; letter-spacing:.07em; }
.sl-product-price { font-size:13px; white-space:nowrap; }
.sl-product-price small { display:block; margin-top:4px; color:var(--sl-orange); font-size:9px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.sl-shop-footer { border-top:1px solid var(--sl-line); margin-top:70px; padding-top:26px; display:flex; justify-content:space-between; align-items:center; font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.sl-story { display:grid; grid-template-columns:1fr 1fr; background:var(--sl-blue); color:#f4f0e7; }
.sl-story-photo { min-height:570px; overflow:hidden; }
.sl-story-photo img { width:100%; height:100%; object-fit:cover; filter:saturate(.9) brightness(1.08); mix-blend-mode:normal; opacity:.92; }
.sl-story-copy { padding:clamp(60px,9vw,130px) 9vw; }
.sl-story-copy .sl-eyebrow { color:#e6c25d; }
.sl-story-copy > p:not(.sl-eyebrow) { font-size:15px; line-height:1.6; max-width:400px; color:#e6ded0; }
.sl-story h2 { color:var(--sl-ink); }
.sl-story h2 em { color:var(--sl-cream); text-shadow:0 3px 0 rgba(36,32,29,.22); }
.sl-text-link { display:inline-block; border-bottom:1px solid currentColor; padding-bottom:7px; font-weight:700; font-size:12px; margin-top:24px; }
.sl-shipping { padding:100px 5vw; background:var(--sl-cream); display:grid; grid-template-columns:.8fr 2fr; gap:7vw; }
.sl-shipping-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.sl-shipping-grid div { border-top:2px solid var(--sl-orange); padding-top:14px; }
.sl-shipping-grid span { font:11px monospace; color:var(--sl-orange); }
.sl-shipping-grid h3 { font-size:14px; margin:32px 0 12px; }
.sl-shipping-grid p { font-size:12px; line-height:1.6; color:#756c61; }
.sl-contact { padding:105px 12vw; background:var(--sl-orange); color:#fff; display:flex; justify-content:space-between; align-items:end; gap:40px; }
.sl-contact .sl-eyebrow { color:#ffe4a5; }
.sl-contact h2 em { color:#ffe4a5; }
.sl-contact form { width:36%; min-width:280px; }
.sl-email-row { display:flex; border-bottom:1px solid #fff; }
.sl-email-row input { border:0; background:transparent; color:#fff; padding:13px 0; outline:none; width:100%; font-size:12px; }
.sl-email-row button { border:0; background:transparent; color:#fff; font-weight:700; cursor:pointer; white-space:nowrap; }
.sl-footer { padding:42px 5vw; background:var(--sl-ink); color:var(--sl-paper); display:flex; align-items:end; justify-content:space-between; gap:30px; }
.sl-footer-links { display:flex; gap:22px; font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.sl-footer > p { font-size:10px; color:#a59b90; margin:0; }
.woocommerce .site-main,.woocommerce-page .site-main { padding:70px 5vw 100px; }
.woocommerce .page-title { font-family:Georgia,serif; font-weight:400; font-size:clamp(48px,6vw,86px); letter-spacing:-.07em; }
.woocommerce ul.products { margin-top:40px; }
.woocommerce ul.products li.product a img { background:#ded6c9; mix-blend-mode:multiply; }
.woocommerce ul.products li.product .price { color:var(--sl-ink); font-weight:700; }
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button { background:var(--sl-ink); color:#fff; border-radius:0; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover { background:var(--sl-orange); color:#fff; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce-cart .wc-block-cart__submit-button,.woocommerce-cart .wc-block-cart__submit-container a { display:block; width:100%; background:var(--sl-orange) !important; color:#fff !important; border:1px solid var(--sl-orange) !important; border-radius:0 !important; padding:16px 18px !important; font-size:11px; font-weight:700; letter-spacing:.08em; text-align:center; text-transform:uppercase; text-decoration:none; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus,.woocommerce-cart .wc-block-cart__submit-button:hover,.woocommerce-cart .wc-block-cart__submit-button:focus,.woocommerce-cart .wc-block-cart__submit-container a:hover,.woocommerce-cart .wc-block-cart__submit-container a:focus { background:var(--sl-ink) !important; border-color:var(--sl-ink) !important; color:#fff !important; }
.sl-product-details { border-left:3px solid var(--sl-orange); padding:14px 18px; margin:22px 0; background:var(--sl-cream); font-size:13px; line-height:1.65; }
.sl-product-details strong { display:inline-block; min-width:105px; }
.sl-product-details p { margin:3px 0; }
.sl-shop-filters { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:0 0 30px; padding:16px 0; border-top:1px solid var(--sl-line); border-bottom:1px solid var(--sl-line); }
.sl-shop-filters label { width:100%; font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--sl-blue); }
.sl-shop-filters select,.sl-shop-filters .button { border:1px solid var(--sl-ink); border-radius:0; background:var(--sl-paper); color:var(--sl-ink); padding:11px 13px; font:inherit; font-size:11px; }
.sl-shop-filters .button { background:var(--sl-ink); color:#fff; cursor:pointer; }
.sl-filter-clear { font-size:11px; text-decoration:underline; }
.sl-page-main { padding:90px 5vw 120px; }
.sl-page-wrap { max-width:920px; margin:0 auto; }
.sl-page-wrap h1 { max-width:760px; margin:0 0 70px; font:400 clamp(58px,8vw,115px)/.88 Georgia,serif; letter-spacing:-.07em; }
.sl-page-content { max-width:720px; font-size:16px; line-height:1.7; }
.sl-page-content p { max-width:680px; margin:0 0 28px; }
.sl-page-content h2 { margin:58px 0 15px; font:400 clamp(34px,4vw,55px)/.95 Georgia,serif; letter-spacing:-.05em; }
.sl-page-content a { color:var(--sl-orange); text-decoration:underline; }
.sl-page-content .sl-lead { font-size:24px; line-height:1.35; max-width:620px; }
.sl-edit-note { border-left:3px solid var(--sl-orange); background:var(--sl-cream); padding:16px 20px; font-size:12px; color:#756c61; }
.sl-repairs-page .sl-page-content h2 { border-top:1px solid var(--sl-line); padding-top:20px; }
.sl-about-page h1 span,.sl-about-page h1 i { display:block; }
.sl-about-page h1 i { color:var(--sl-orange); font-style:italic; }
.sl-about-page .sl-page-content > p:first-child { max-width:620px; font-size:24px; line-height:1.35; }
.sl-about-page .sl-page-content h2 { border-top:1px solid var(--sl-line); padding-top:20px; }
.single-product .site-main { padding-top:75px; }
.single-product div.product { max-width:1180px; margin:0 auto; }
.single-product div.product .woocommerce-product-gallery { width:54%; }
.single-product div.product .summary { width:40%; padding:20px 2vw 0; }
.single-product div.product .product_title { font:400 clamp(45px,6vw,82px)/.9 Georgia,serif; letter-spacing:-.07em; }
.single-product div.product .price { color:var(--sl-ink); font-size:18px; font-weight:700; }
.single-product div.product .woocommerce-product-details__short-description { font-size:15px; line-height:1.7; border-top:1px solid var(--sl-line); border-bottom:1px solid var(--sl-line); padding:24px 0; }
.single-product div.product .stock { color:var(--sl-ink) !important; font-weight:700; }
.single-product div.product .out-of-stock { color:#756c61; }
.single-product .single_add_to_cart_button.button { background:var(--sl-orange) !important; color:#fff !important; }
.single-product .single_add_to_cart_button.button:hover,.single-product .single_add_to_cart_button.button:focus { background:var(--sl-ink) !important; color:#fff !important; }
.single-product .product_meta { font-size:11px; color:#756c61; line-height:1.8; }
.single-product .woocommerce-tabs { clear:both; padding-top:80px; max-width:820px; }
.single-product .woocommerce-tabs ul.tabs { padding:0; border-bottom:1px solid var(--sl-line); }
.single-product .woocommerce-tabs ul.tabs::before { border-bottom:0; }
.single-product .woocommerce-tabs ul.tabs li { border:0; background:none; padding:0 25px 12px 0; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.single-product .woocommerce-tabs .panel { font-size:14px; line-height:1.7; }
.single-product .flex-control-thumbs { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0 0; padding:0; }
.single-product .flex-control-thumbs li { float:none !important; width:82px !important; margin:0 !important; list-style:none; }
.single-product .flex-control-thumbs img { display:block; width:100%; aspect-ratio:3/4; object-fit:cover; opacity:.55; border:1px solid transparent; }
.single-product .flex-control-thumbs img.flex-active,.single-product .flex-control-thumbs img:hover { opacity:1; border-color:var(--sl-orange); }
.single-product .woocommerce-product-gallery__trigger { background:var(--sl-paper) !important; border:1px solid var(--sl-ink); border-radius:0 !important; }
@media (max-width:1000px) { .sl-product-grid{grid-template-columns:repeat(3,1fr)} }
.sl-repairs-link:hover { color:var(--sl-orange); }
@media (max-width:760px) { .sl-header-brand { gap:8px; } .sl-header-mark { width:78px; height:78px; } .single-product .flex-control-thumbs { gap:7px; } .single-product .flex-control-thumbs li { width:68px !important; } }
@media (max-width:760px) { .sl-announcement{padding-left:52px;padding-right:16px;text-align:left;font-size:9px}.sl-announcement-mark{left:6vw}.sl-header{padding:22px 6vw}.sl-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:22px 6vw;background:var(--sl-paper);border-bottom:1px solid var(--sl-line);flex-direction:column;align-items:start;gap:20px}.sl-nav.sl-nav-open{display:flex}.sl-nav-links{flex-direction:column;align-items:flex-start;gap:20px}.sl-menu-toggle{display:block}.sl-hero{grid-template-columns:1fr;min-height:0}.sl-hero-copy{padding:70px 8vw 65px}.sl-hero-image{height:420px}.sl-ticker{overflow:hidden;justify-content:start;gap:35px;white-space:nowrap}.sl-ticker span:nth-child(n+3){display:none}.sl-shop-section{padding:75px 6vw}.sl-section-heading{display:block;margin-bottom:38px}.sl-section-intro{margin-top:25px}.sl-product-grid{grid-template-columns:repeat(2,1fr);gap:30px 14px}.sl-product-info{display:block}.sl-product-price{display:block;margin-top:10px}.sl-shop-footer{display:block}.sl-past-listings{margin-top:80px;padding-top:55px}.sl-story{grid-template-columns:1fr}.sl-story-photo{min-height:300px;max-height:350px}.sl-story-copy{padding:70px 8vw}.sl-shipping{display:block;padding:75px 8vw}.sl-shipping-grid{grid-template-columns:1fr;gap:35px;margin-top:45px}.sl-shipping-grid h3{margin-top:18px}.sl-contact{display:block;padding:75px 8vw}.sl-contact form{width:100%;min-width:0;margin-top:45px}.sl-footer{display:block;padding:45px 8vw}.sl-footer-links{flex-wrap:wrap;margin:30px 0}.sl-hero h1{font-size:65px}.sl-page-main{padding:70px 8vw 90px}.sl-page-wrap h1{margin-bottom:48px}.sl-page-content .sl-lead{font-size:21px}.sl-shop-filters{align-items:stretch}.sl-shop-filters select,.sl-shop-filters .button{width:100%}.single-product div.product .woocommerce-product-gallery,.single-product div.product .summary{float:none;width:100%;padding-left:0;padding-right:0}.single-product div.product .summary{padding-top:45px}.single-product .woocommerce-tabs{padding-top:55px} }
@media (min-width:761px) and (max-width:900px) { .sl-header{padding:22px 5vw}.sl-header-brand{gap:10px}.sl-header-mark{width:86px;height:86px}.sl-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:22px 5vw;background:var(--sl-paper);border-bottom:1px solid var(--sl-line);flex-direction:column;align-items:flex-start;gap:20px}.sl-nav.sl-nav-open{display:flex}.sl-nav-links{flex-direction:column;align-items:flex-start;gap:20px}.sl-menu-toggle{display:block}.sl-product-grid{grid-template-columns:repeat(2,1fr)}.sl-shipping,.sl-contact{display:block}.sl-contact form{width:100%;min-width:0;margin-top:40px}.single-product div.product .woocommerce-product-gallery,.single-product div.product .summary{float:none;width:100%;padding-left:0;padding-right:0}.single-product div.product .summary{padding-top:45px}.single-product .woocommerce-tabs{padding-top:55px} }

/* Let editorial display type breathe on narrow phones without affecting tablet or desktop. */
@media (max-width:760px) {
    .sl-hero h1 { font-size:clamp(48px,15vw,64px); line-height:.9; letter-spacing:-.08em; }
    .sl-page-wrap h1 { margin-bottom:48px; font-size:clamp(46px,14vw,64px); line-height:.9; letter-spacing:-.075em; }
}
