/* SOVILO v4 — photographic editorial storefront and genuine garment rack. */
:root{--sv4-ink:#181918;--sv4-paper:#f9f8f5;--sv4-grey:#6d6c67;--sv4-line:#e4e1da}
.sv4-home{background:#fff;color:var(--sv4-ink);overflow:hidden}
.sv4-wrap{width:min(1360px,calc(100% - 84px));margin-inline:auto}
.sv4-home h1,.sv4-home h2,.sv4-home h3{font-family:Arial,Helvetica,sans-serif;letter-spacing:-.055em;font-weight:750}
.sv4-eyebrow{font-size:10px;letter-spacing:.2em;font-weight:700;color:#6c6a64;margin:0 0 18px}
.sv4-dark-link{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;background:#181918;color:#fff!important;padding:16px 22px;min-width:224px;font-size:11px;font-weight:750;letter-spacing:.075em;transition:background .25s,transform .25s}
.sv4-dark-link:hover{background:#3b3936;transform:translateY(-2px)}
.sv4-dark-link span{font-size:18px;line-height:.8}
.sv4-hero{min-height:0;height:min(535px,calc(100svh - 135px));min-height:415px;display:grid;grid-template-columns:minmax(355px,39%) minmax(0,61%);background:#f3f1ec;position:relative}
.sv4-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:38px max(24px,calc((100vw - 1360px)/2));padding-left:max(42px,calc((100vw - 1360px)/2));padding-right:26px;position:relative;z-index:2}
.sv4-hero h1{font-size:clamp(42px,5vw,76px);line-height:.98;margin:6px 0 20px;max-width:550px;white-space:normal}
.sv4-hero-subtitle{font-size:14px;color:#5c5b57;line-height:1.7;max-width:370px;margin:0 0 25px}
.sv4-hero-navigation{display:flex;gap:12px;align-items:center;margin-top:22px}
.sv4-hero-navigation button,.sv4-closet-controls button{border:1px solid #d2cfc8;border-radius:50%;background:transparent;width:40px;height:40px;display:grid;place-items:center;transition:background .2s,color .2s;cursor:pointer;font-size:18px;color:#222}
.sv4-hero-navigation button:hover,.sv4-closet-controls button:hover{background:#1a1a19;color:#fff}
.sv4-hero-navigation .sv2-slide-count,.sv4-closet-controls [data-closet-count]{font-size:10px;color:#76736c;letter-spacing:.12em}
.sv4-hero-stage{height:100%;position:relative;min-width:0;overflow:hidden;background:#eeece7}
.sv4-hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transform:translateX(20px);transition:transform .7s ease,opacity .65s ease,visibility .65s;display:flex;align-items:center;justify-content:center;pointer-events:none}
.sv4-hero-slide.is-active{transform:none;opacity:1;visibility:visible;pointer-events:auto}
.sv4-hero-slide>img,.sv4-hero-slide>video,.sv4-hero-slide picture,.sv4-hero-slide picture img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}
.sv4-hero-slide picture{display:flex;justify-content:center;align-items:center}
.sv4-quick-categories{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-block:48px 54px;align-items:start;max-width:960px}
.sv4-quick-categories a{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:0;transition:transform .3s}
.sv4-quick-categories a:hover{transform:translateY(-5px)}
.sv4-quick-categories a>span{display:flex;align-items:center;justify-content:center;aspect-ratio:1;width:min(132px,100%);border-radius:50%;overflow:hidden;background:#f1efeb;box-shadow:0 0 0 1px #e9e5dd inset}
.sv4-quick-categories img{width:100%;height:100%;object-fit:contain}
.sv4-quick-categories strong{font-size:10px;letter-spacing:.15em;line-height:1.3;text-align:center}
.sv4-quick-categories .sv4-category-icon{font-size:clamp(22px,3vw,37px);font-weight:800;letter-spacing:-.07em}
.sv4-quick-categories .sv4-category-dark{background:#212120;color:#fff}
.sv4-closet{background:#f3f1eb;padding:76px 0 84px;position:relative}
.sv4-closet-top{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:23px}
.sv4-closet h2,.sv4-heading h2{font-size:clamp(36px,4.4vw,65px);line-height:1;margin:0}
.sv4-closet-top .sv4-eyebrow{margin-bottom:10px}
.sv4-closet-controls{display:flex;gap:8px;align-items:center}
.sv4-closet-layout{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(250px,.85fr);align-items:stretch;gap:28px}
.sv4-closet-rack{display:flex;align-items:stretch;gap:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;background:#e8e6e0;border:1px solid #e0dcd3;min-height:480px;min-width:0;overscroll-behavior-x:contain;cursor:grab;border-radius:4px}
.sv4-closet-rack::-webkit-scrollbar{display:none}
.sv4-closet-rack.is-dragging{cursor:grabbing;scroll-snap-type:none}
.sv4-hanging-piece{position:relative;flex:0 0 42%;width:42%;height:480px;border:0;background:#efeee9;scroll-snap-align:center;cursor:pointer;opacity:.7;transform:scale(.92);transition:transform .5s cubic-bezier(.22,.72,.2,1),opacity .45s,filter .45s;filter:grayscale(.15);padding:0;z-index:1}
.sv4-hanging-piece.is-active{transform:scale(1);opacity:1;filter:none;z-index:3}
.sv4-hanging-piece img{display:block;width:100%;height:100%;object-fit:contain;object-position:center center;pointer-events:none;user-select:none}
.sv4-hanging-piece:focus-visible{outline:3px solid #161616;outline-offset:-4px}
.sv4-closet-details{position:relative;display:flex;flex-direction:column;justify-content:center;min-width:0;padding:clamp(20px,2.6vw,42px) clamp(22px,2.6vw,38px);background:#fff;box-shadow:0 12px 38px rgba(29,26,20,.045)}
.sv4-closet-detail{animation:sv4DetailIn .3s ease-out both}
.sv4-closet-detail[hidden]{display:none!important}
.sv4-detail-category{display:inline-block;font-size:10px;color:#77716b;font-weight:700;text-transform:uppercase;letter-spacing:.15em;margin-bottom:14px}
.sv4-closet-detail h3{font-size:clamp(29px,3vw,46px);line-height:1.04;margin:0 0 18px}
.sv4-detail-price{font-size:18px;font-weight:700;display:flex;align-items:center;gap:12px}
.sv4-detail-price small{font-size:9px;letter-spacing:.14em;padding:6px 8px;border:1px solid #ddd;color:#777}
.sv4-closet-detail p{font-size:13px;line-height:1.7;color:#77706a;margin:14px 0 23px;max-width:270px}
.sv4-closet-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #e4e2dd;padding-top:19px;font-size:9px;letter-spacing:.16em;margin-top:40px;color:#99948e}
@keyframes sv4DetailIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.sv4-arrivals,.sv4-editorial,.sv4-reviews{padding-top:90px;padding-bottom:88px}
.sv4-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}
.sv4-heading a{font-size:11px;letter-spacing:.12em;border-bottom:1px solid #191919;padding-bottom:8px;font-weight:700;white-space:nowrap}
.sv4-editorial{padding-top:35px;padding-bottom:92px}
.sv4-editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.sv4-editorial-grid>a{display:block;min-width:0}
.sv4-category-photo{background:#f2f0ed;height:clamp(280px,32vw,415px);display:flex;align-items:center;justify-content:center;overflow:hidden}
.sv4-category-photo img{width:100%;height:100%;object-fit:contain;transition:transform .65s cubic-bezier(.22,.7,.2,1)}
.sv4-editorial-grid a:hover .sv4-category-photo img{transform:scale(1.035)}
.sv4-category-caption{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid #dedbd4;margin-top:16px}
.sv4-category-caption h3{font-size:clamp(25px,3.5vw,46px);margin:0}
.sv4-category-caption span{font-size:21px;display:grid;place-items:center;border-radius:50%;width:45px;height:45px;border:1px solid #ccc}
.sv4-story{background:#efede8;display:grid;grid-template-columns:1.08fr .92fr;max-width:1360px;margin-block:12px 92px;min-height:420px}
.sv4-story-image{min-height:400px;display:flex;align-items:center;justify-content:center}
.sv4-story-image img{width:100%;height:100%;max-height:540px;object-fit:contain}
.sv4-story-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:50px clamp(26px,5vw,80px)}
.sv4-story-copy h2{font-size:clamp(32px,4vw,60px);line-height:1.04;margin:0 0 24px}
.sv4-story-copy>p:not(.sv4-eyebrow){font-size:14px;line-height:1.85;max-width:420px;margin:0 0 25px;color:#696661}
.sv4-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.sv4-review-grid blockquote{background:#f8f7f4;border:1px solid #eeeae3;padding:28px;margin:0}
.sv4-review-grid blockquote p{font-size:15px;line-height:1.6}
.sv4-review-grid footer{font-size:10px;color:#777;letter-spacing:.12em}
.sv4-newsletter{background:#171717;color:#fff;padding:77px 0}
.sv4-newsletter-row{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.sv4-newsletter h2{font-size:clamp(28px,4vw,57px);line-height:1.1;margin:0 0 12px;color:#fff}
.sv4-newsletter-row>div p{font-size:14px;color:#c4c4c4}
.sv4-newsletter label{font-size:10px;letter-spacing:.1em}
.sv4-newsletter-form{display:flex;align-items:center;background:#fff;margin-top:10px;padding:4px}
.sv4-newsletter-form input{min-width:0;flex:1;border:0;background:#fff;padding:16px;font-size:14px;color:#111}
.sv4-newsletter-form button{background:#171717;color:#fff;border:0;width:52px;height:45px;font-size:18px;cursor:pointer}
.sv4-consent{display:flex;align-items:flex-start;gap:9px;margin:15px 0 8px;line-height:1.55;color:#c4c4c4}
.sv4-consent input{margin-top:3px;flex-shrink:0}
.sv4-newsletter small,.sv4-newsletter small a{font-size:10px;color:#b9b9b9}
/* Product and archive refinement */
.sv-woocommerce{max-width:1360px!important;width:min(1360px,calc(100% - 92px))!important}
.sv2-shop-intro>h1{font-size:clamp(48px,6vw,94px)!important}
.woocommerce .woocommerce-ordering select{border-radius:25px;padding:9px 16px}
.sv-shop-filters{border:1px solid #e4e1da!important;background:#faf9f7;padding:18px!important;margin:18px 0 30px!important;border-radius:8px}
.sv-shop-filters label{font-size:10px;font-weight:700;letter-spacing:.08em}
.sv-shop-filters select{border:1px solid #dfd9cf!important;background:white;border-radius:4px;min-height:41px;padding:6px 10px}
.sv-product-card .sv-card-front,.sv-product-card .sv-card-back{object-fit:contain!important}
.sv-product-photo{background:#f5f4f1!important}
.sv-product-card{transition:transform .28s ease}
.sv-product-card:hover{transform:translateY(-4px)}
.woocommerce ul.products{gap:28px 23px}
.sv2-single-grid{max-width:1380px;margin-inline:auto}
.sv2-single-gallery img{object-fit:contain!important}
@media(max-width:1050px){.sv4-hero{grid-template-columns:39% 61%}.sv4-hero-copy{padding-left:30px}.sv4-hero h1{font-size:clamp(39px,5vw,57px)}.sv4-closet-layout{grid-template-columns:minmax(0,1.45fr) minmax(240px,.8fr);gap:16px}.sv4-hanging-piece{flex-basis:58%;width:58%}.sv4-closet-details{padding:20px}}
@media(max-width:760px){.sv4-wrap{width:calc(100% - 36px)}.sv4-hero{height:435px;min-height:435px;display:block}.sv4-hero-stage{position:absolute;inset:0}.sv4-hero-copy{position:absolute;inset:0;z-index:3;justify-content:flex-end;pointer-events:none;max-width:none;padding:18px 18px 22px;background:linear-gradient(0deg,rgba(248,247,244,.98) 0%,rgba(248,247,244,.9) 37%,rgba(248,247,244,0) 76%)}.sv4-hero-copy>*{pointer-events:auto}.sv4-hero h1{font-size:clamp(39px,8.8vw,57px);max-width:340px;margin:8px 0 12px}.sv4-hero-subtitle{font-size:12px;margin:0 0 14px;max-width:300px;line-height:1.5}.sv4-hero-navigation{margin-top:10px}.sv4-hero-navigation button{width:34px;height:34px}.sv4-hero-slide>img,.sv4-hero-slide>video,.sv4-hero-slide picture,.sv4-hero-slide picture img{object-position:center top}.sv4-quick-categories{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-block:26px 31px}.sv4-quick-categories a>span{width:100%;max-width:110px}.sv4-quick-categories strong{font-size:9px}.sv4-closet{padding-block:48px}.sv4-closet h2,.sv4-heading h2{font-size:clamp(35px,7vw,48px)}.sv4-closet-layout{display:block}.sv4-closet-rack{height:385px;min-height:385px}.sv4-hanging-piece{height:385px;flex-basis:70%;width:70%}.sv4-closet-details{padding:24px;margin-top:14px;min-height:255px}.sv4-closet-bottom{margin-top:20px}.sv4-arrivals,.sv4-editorial,.sv4-reviews{padding-block:65px}.sv4-editorial-grid{gap:15px}.sv4-category-photo{height:280px}.sv4-story{grid-template-columns:1fr;gap:0;margin-block:0 62px}.sv4-story-image{min-height:270px}.sv4-story-image img{max-height:340px}.sv4-story-copy{padding:28px}.sv4-newsletter-row{grid-template-columns:1fr;gap:25px}.sv-woocommerce{width:calc(100% - 32px)!important}}
@media(max-width:520px){.sv4-quick-categories a>span{max-width:76px}.sv4-quick-categories strong{font-size:8px;letter-spacing:.08em}.sv4-hero{height:425px;min-height:425px}.sv4-closet-rack{height:335px;min-height:335px}.sv4-hanging-piece{height:335px;flex-basis:74%;width:74%}.sv4-closet-details h3{font-size:33px}.sv4-editorial-grid{grid-template-columns:1fr}.sv4-category-photo{height:320px}.sv4-newsletter{padding-block:55px}.sv4-heading{gap:14px}.sv4-heading a{font-size:9px}}
@media(prefers-reduced-motion:reduce){.sv4-hanging-piece,.sv4-hero-slide,.sv4-category-photo img{transition:none!important}.sv4-closet-detail{animation:none!important}}

.sv-brand-image.sv4-brand-default{height:36px;width:auto;max-width:205px;object-fit:contain}
@media(max-width:600px){.sv-brand-image.sv4-brand-default{height:27px;max-width:155px}}
.sv4-filter-bar{display:flex;align-items:center;justify-content:space-between;position:relative;gap:18px;padding:12px 0 19px;border-top:1px solid #eae6df;border-bottom:1px solid #eae6df;margin-bottom:23px}
.sv4-filter-label{font-size:10px;letter-spacing:.13em;color:#736f69;font-weight:700}
.sv4-filter-details{position:relative;z-index:7}
.sv4-filter-details summary{display:flex;gap:20px;align-items:center;justify-content:space-between;list-style:none;border:1px solid #dcd9d1;border-radius:999px;padding:12px 18px;font-size:10px;letter-spacing:.12em;font-weight:700;cursor:pointer;background:#fff;min-width:153px}
.sv4-filter-details summary::-webkit-details-marker{display:none}
.sv4-filter-details[open] summary{background:#171717;color:#fff;border-color:#171717}
.sv4-filter-form{position:absolute;right:0;top:calc(100% + 8px);width:min(370px,calc(100vw - 36px));background:#fff;border:1px solid #e5e0d6;padding:24px;box-shadow:0 15px 45px #0002;display:grid;gap:15px;z-index:9}
.sv4-filter-form label{font-size:10px;letter-spacing:.09em;display:grid;gap:6px}
.sv4-filter-form select{display:block;width:100%;min-height:44px;border:1px solid #ddd;padding:10px;background:#fff}
.sv4-filter-form button{border:0;background:#181818;color:#fff;padding:13px;cursor:pointer;font-size:11px}
.sv4-filter-form a{font-size:11px;text-align:center;text-decoration:underline}

/* SOVILO v4.2: no visible slider arrow buttons; preserve all original v4 layout dimensions. */
.sv4-category-initial{font:700 clamp(25px,3vw,38px)/1 Arial,sans-serif;color:#47433e;letter-spacing:0}
.sv4-newsletter-form button{width:auto;min-width:70px;padding:0 13px;font-size:11px;font-weight:700;letter-spacing:.08em}
/* Extra collections follow the same card sizing and spacing as Hoodies/Jackets. */
