/* Ehasa storefront: photographs, collections and a clear product rhythm. */
.page-heading:has(+.shop-opening){padding:28px 0 22px}
.page-heading:has(+.shop-opening) .page-title{padding:0}
.shop-opening{padding-bottom:44px}
.shop-opening-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:18px}
.shop-cover{position:relative;min-height:460px;overflow:hidden;border-radius:3px;background:#223329}
.shop-cover picture,.shop-cover picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.shop-cover picture img{object-position:52% 45%}
.shop-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#07110de0 0%,#07110d30 60%,transparent)}
.shop-cover-copy{position:absolute;z-index:1;inset:auto 36px 32px;color:white}
.shop-cover-copy h1{font-size:clamp(80px,9vw,150px);font-weight:700;line-height:.85;letter-spacing:-.02em;margin-bottom:28px;color:white}
.shop-cover-copy .btn{display:inline-flex;align-items:center;gap:32px;background:#fff;color:#17251c;border:0;border-radius:3px;min-height:48px;padding:14px 20px;font:700 14px var(--body);text-shadow:none}
.shop-cover-copy .btn:hover{background:#e7eddd}.shop-cover-copy .btn i{font-size:13px}
.shop-collections{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:18px}
.shop-collection{position:relative;min-height:220px;overflow:hidden;background:#dce1d1;border-radius:3px;display:flex;align-items:center;padding:22px}
.shop-collection:nth-child(2){background:#eadbc6}
.shop-collection img{position:absolute;width:100%;height:100%;right:0;top:0;object-fit:cover;object-position:center;transition:transform .45s}
.shop-collection-label{display:flex;align-items:center;gap:16px;position:relative;z-index:1;align-self:end;width:100%;background:#ffffffed;border-radius:3px;padding:12px 16px;color:#17251c}
.shop-collection-label strong{font:700 clamp(18px,2.3vw,29px)/1.1 var(--display);text-transform:uppercase;letter-spacing:.015em;flex:1}
.shop-collection-label i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#17251c;color:white;font-size:12px;transition:transform .2s}
.shop-collection:hover img{transform:scale(1.07)}.shop-collection:hover i{transform:translateX(3px)}
.shop-catalog{scroll-margin-top:112px;padding-bottom:85px}
.shop-catalog .catalog-toolbar{grid-template-columns:minmax(180px,1fr) minmax(180px,230px) auto auto;gap:20px;padding:20px 0 22px;border-top:1px solid #d4d8ce;align-items:center}
.shop-catalog .catalog-search{position:relative;display:block}.catalog-search>span:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.shop-catalog .search-input input{background:#fff;border:1px solid #d4d8ce;border-radius:4px;margin:0;padding-left:19px;min-height:54px;font-size:15px}
.shop-catalog .search-input button{background:transparent;width:48px;border-radius:3px}.shop-catalog .search-input button:hover{background:#edf0e7}
.shop-catalog .catalog-sort{display:flex;align-items:center;gap:12px;position:relative}.catalog-sort>span{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
.shop-catalog .catalog-sort select{border:1px solid #d4d8ce;min-height:54px;border-radius:4px;margin:0;padding-right:28px;font-size:14px}
.shop-catalog .catalog-apply{height:54px;min-height:54px;padding:14px 20px;border-radius:4px}
.shop-catalog .catalog-count{margin:0!important;font-size:13px;color:#596451}
.shop-catalog .shop-categories{padding:0 0 19px;margin:0;border-bottom:1px solid #d4d8ce;gap:8px}
.shop-catalog .shop-categories a{font-size:13px;border:1px solid #d4d8ce;border-radius:4px;padding:10px 14px;background:transparent;min-height:44px}
.shop-catalog .shop-categories a[aria-current]{background:#1d3026;border-color:#1d3026;color:white}
.shop-catalog .shop-categories a:hover{background:#e4e9db}.shop-catalog .shop-categories a[aria-current]:hover{background:#314b39}
.shop-catalog .shop-categories a span{background:transparent;opacity:.7;padding:0;font-size:11px}
.shop-catalog .shop-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 24px;margin-top:30px}
.shop-catalog .shop-product{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;transform:none;min-width:0}
.shop-catalog .shop-product:hover{box-shadow:none;transform:none}
.shop-catalog .shop-product-image{background:#eeeee6;padding:0;border-radius:3px;position:relative;overflow:hidden;aspect-ratio:1}
.shop-catalog .shop-product-image img{width:100%;height:100%;aspect-ratio:1;object-fit:contain;mix-blend-mode:multiply;transition:transform .55s}
.shop-catalog .shop-product-image:hover img{transform:scale(1.035)}
.product-view-arrow{display:grid;place-items:center;position:absolute;bottom:14px;right:14px;background:#fff;color:#17251c;width:42px;height:42px;border-radius:50%;box-shadow:0 2px 12px #0001;transition:background .2s,color .2s}
.shop-product-image:hover .product-view-arrow{background:#1d3026;color:white}
.shop-catalog .shop-product-caption{padding:16px 1px 0;display:grid;grid-template-columns:1fr auto;gap:8px 16px;align-items:start}
.shop-catalog .product-category-labels{grid-column:1/-1;margin:0;gap:8px}
.shop-catalog .product-category-labels a{background:transparent;padding:0;border-radius:0;font-size:11px;color:#657060;line-height:1.4}
.shop-catalog .product-category-labels a:hover{text-decoration:underline;text-underline-offset:3px}
.shop-catalog .shop-product-caption h2{font:650 17px/1.45 var(--body);margin:0;min-width:0;overflow-wrap:anywhere}
.shop-catalog .catalog-price{font-size:16px;gap:6px;text-align:right;justify-content:end;line-height:1.45}
.shop-catalog .catalog-price strong{font-weight:650}.shop-catalog .catalog-price del{font-size:12px}
.shop-catalog .sale-reference{grid-column:1/-1;text-align:left;margin-top:0!important}
.shop-catalog .sale-badge{border-radius:3px}
/* The detail page uses the same photo treatment and restrained controls. */
.product-gallery .product-main-image{background:#eeeee6;border-radius:3px}
.product-summary .product-back{border-radius:3px}.product-summary .btn{border-radius:3px}
@media(min-width:1500px){.shop-opening-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.shop-cover{min-height:500px}}
@media(max-width:1000px){.shop-cover{min-height:420px}.shop-collection{min-height:200px;padding:14px}.shop-collection-label{padding:10px 12px}.shop-cover-copy{inset:auto 24px 24px}.shop-catalog .catalog-toolbar{gap:12px;grid-template-columns:minmax(180px,1fr) 190px auto}.shop-catalog .catalog-count{grid-column:1/-1}.shop-catalog .shop-grid{gap:35px 20px}.shop-catalog .shop-product-caption{grid-template-columns:1fr}.shop-catalog .catalog-price{justify-content:start;text-align:left}}
@media(max-width:760px){.shop-opening{padding-bottom:28px}.shop-opening-grid{grid-template-columns:1fr;gap:12px}.shop-cover{min-height:320px}.shop-cover-copy h1{font-size:clamp(76px,24vw,100px);margin-bottom:22px}.shop-cover-copy{inset:auto 22px 22px}.shop-collections{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;gap:12px}.shop-collection{min-height:190px;padding:10px}.shop-collection img{width:100%;right:0;height:100%;top:0}.shop-collection-label{padding:9px 10px;gap:4px}.shop-collection-label strong{font-size:20px;overflow-wrap:anywhere}.shop-collection-label i{width:26px;height:26px;font-size:10px;flex-shrink:0}.shop-catalog .catalog-toolbar{grid-template-columns:1fr auto;padding:16px 0}.shop-catalog .catalog-search{grid-column:1/-1}.shop-catalog .catalog-sort{grid-column:1}.shop-catalog .catalog-count{grid-column:1/-1}.shop-catalog .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px;margin-top:22px}.shop-catalog .shop-product-caption{padding-top:12px;gap:5px}.shop-catalog .shop-product-caption h2{font-size:14px;line-height:1.4}.shop-catalog .catalog-price{font-size:14px}.shop-catalog .product-category-labels a{font-size:10px}.shop-catalog .product-view-arrow{width:32px;height:32px;right:9px;bottom:9px;font-size:11px}.shop-catalog .shop-categories{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:14px}.shop-catalog .sale-reference{font-size:10px!important}.shop-catalog{padding-bottom:50px}.page-heading:has(+.shop-opening){padding:20px 0 16px}}
@media(prefers-reduced-motion:reduce){.shop-collection img,.shop-collection-label i,.shop-catalog .shop-product-image img,.product-view-arrow{transition:none}}

@media(max-width:760px){.shop-collection-label{position:static;display:block;padding:10px 8px;width:100%}.shop-collection-label strong{display:block;font:700 clamp(11px,3.3vw,14px)/1.35 var(--body);text-transform:none;letter-spacing:0;overflow-wrap:normal}.shop-collection-label i{position:absolute;top:10px;right:10px;width:30px;height:30px}}
