@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600&family=Montserrat:wght@400;500;600;700&display=swap");

:root{
--bg:#f5f3ee;--text:#151515;--muted:#77736b;--line:#ddd9d0;--card:#ebe8e1;--frame:#151515;--max:1180px
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{min-height:100vh;margin:0;background:var(--bg);color:var(--text);font-family:"Montserrat",Arial,Helvetica,sans-serif;line-height:1.45;display:flex;flex-direction:column}
main{flex:1}
body,button,input,textarea{font-size:14px}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,textarea{font:inherit}
.site-header{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-top:1px solid var(--text);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;background:rgba(245,243,238,.94);backdrop-filter:blur(12px)}
.brand{display:flex;flex-direction:column;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.18em;line-height:1.2}
.brand small{font-size:7px;letter-spacing:.28em;color:var(--muted);font-weight:400;margin-top:3px}
.main-nav{display:flex;gap:26px;text-transform:uppercase;font-size:9px;letter-spacing:.13em}
.main-nav a{padding:8px 0}
.menu-toggle{display:none;border:0;background:transparent;font-size:22px}
.hero,.category-hero{max-width:var(--max);margin:auto}
.hero{min-height:270px;padding:42px 5vw 22px;display:flex;flex-direction:column;justify-content:center}
.eyebrow{margin:0 0 12px;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.27em}
h1,h2,h3{font-family:"Montserrat",Arial,Helvetica,sans-serif;font-weight:500}
.hero h1{font-family:"Manrope",Arial,Helvetica,sans-serif;font-size:clamp(55px,6.3vw,88px);line-height:.86;letter-spacing:-.045em;margin:0 0 24px}
.hero-text{max-width:520px;color:var(--muted);font-size:11px}
.section{max-width:var(--max);margin:auto;padding:0 5vw 90px}
.section-heading{margin-bottom:22px}
.section-heading h2{font-size:43px;line-height:1;margin:0}
.category-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.category-card{display:flex;flex-direction:column;background:var(--card);min-height:350px;overflow:hidden}
.category-image-wrap,.card-image-wrap{overflow:hidden;background:var(--card);border:4px solid var(--frame)}
.category-image-wrap img,.card-image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.category-card:hover img,.product-card:hover img{transform:scale(1.035)}
.category-image-wrap{order:2;flex:1;min-height:0}
.category-copy{order:1;padding:25px 30px 21px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.category-copy h3{font-family:"Manrope",Arial,Helvetica,sans-serif;font-size:32px;line-height:.95;margin:0;text-transform:uppercase}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 14px}
.card-image-wrap{aspect-ratio:1.19}
.card-copy{padding:10px 2px;text-align:center}
.card-copy>span{font-size:7px;color:var(--muted);letter-spacing:.16em}
.card-copy h3{font-size:15px;margin:4px 0 0}
.category-hero{padding-top:58px;padding-bottom:55px}
.back-link{display:inline-block;margin-bottom:38px;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.14em}
.category-hero h1{text-align:center;font-size:clamp(52px,6.5vw,82px);line-height:.9;letter-spacing:-.04em;margin:0 0 15px;text-transform:uppercase}
.product-page{padding-top:52px}
.mobile-product-heading{display:none}
.product-layout{display:grid;grid-template-columns:1fr .78fr;gap:55px;align-items:start}
.main-image-wrap{aspect-ratio:1.05;background:var(--card);position:relative;overflow:hidden;border:4px solid var(--frame)}
.main-image{width:100%;height:100%;object-fit:cover}
.zoom-button{position:absolute;right:12px;bottom:12px;border:0;background:rgba(255,255,255,.88);width:36px;height:36px;font-size:20px}
.thumbs{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.thumb{flex:0 0 calc((100% - 24px) / 5);padding:0;border:2px solid var(--frame);background:var(--card);aspect-ratio:1;overflow:hidden}
.thumb.active{border-color:var(--text)}
.thumb img{width:100%;height:100%;object-fit:cover}
.product-info{padding-top:5px}
.product-info h1{font-size:55px;line-height:.9;margin:0 0 10px;letter-spacing:-.04em}
.product-code{font-size:8px;color:var(--muted)}
.product-description{font-size:11px;color:var(--muted);max-width:470px;line-height:1.7}
.details{margin:28px 0 25px;border-top:1px solid var(--line)}
.details div{display:grid;grid-template-columns:42% 58%;padding:9px 0;border-bottom:1px solid var(--line)}
.details dt{font-size:11px;color:var(--muted)}
.details dd{font-size:12px;margin:0}
.outline-button{display:inline-flex;justify-content:space-between;gap:35px;border:1px solid var(--text);padding:11px 16px;font-size:8px;text-transform:uppercase;letter-spacing:.13em}
.contact-section{padding-top:62px;padding-bottom:28px}
.contact-intro{max-width:680px}
.contact-intro h1{font-size:clamp(55px,6.5vw,85px);line-height:.9;letter-spacing:-.04em;margin:0 0 20px}
.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:45px;margin-top:42px;align-items:start}
.contact-details{display:flex;flex-direction:column}
.contact-row{display:flex;gap:16px;padding:15px 0;border-bottom:1px solid var(--line);font-size:10px;color:var(--muted)}
.contact-row strong{color:var(--text);font-size:8px;text-transform:uppercase;letter-spacing:.13em}
.contact-icon{font-size:17px;color:var(--text);width:20px}
.map-wrap{height:300px;position:relative;background:var(--card);overflow:hidden}
.map-wrap iframe{width:100%;height:100%;border:0}
.map-overlay-link{position:absolute;right:12px;bottom:12px;background:rgba(255,255,255,.92);padding:10px 12px;font-size:8px;text-transform:uppercase;letter-spacing:.1em}
.map-consent{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;text-align:center;background:var(--card)}
.map-consent-title{margin:0 0 8px;font-size:18px;font-weight:600}.map-consent p:not(.map-consent-title){max-width:390px;margin:0;color:var(--muted);font-size:11px}
.map-consent-actions{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:22px}.map-consent .outline-button{background:transparent;cursor:pointer}.text-button{border:0;background:transparent;padding:11px 0;font-size:8px;letter-spacing:.13em;text-transform:uppercase;text-decoration:underline;cursor:pointer}
.map-consent-link{margin-top:18px;font-size:8px;letter-spacing:.1em;text-transform:uppercase;text-decoration:underline}.footer-preferences{margin-left:24px;text-decoration:underline}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.94);z-index:100;display:grid;place-items:center;padding:5vh 8vw}
.lightbox img{max-width:90vw;max-height:90vh;object-fit:contain}
.lightbox-close,.lightbox-arrow{position:fixed;border:0;background:transparent;color:#fff;z-index:101}
.lightbox-close{right:25px;top:12px;font-size:38px}
.lightbox-arrow{top:50%;transform:translateY(-50%);font-size:50px;padding:20px}
.lightbox-arrow.left{left:8px}.lightbox-arrow.right{right:8px}
.site-footer{border-top:1px solid var(--line);padding:28px 5vw;color:var(--muted);font-size:7px;text-transform:uppercase;letter-spacing:.15em}
.hidden{display:none!important}.empty{color:var(--muted);font-size:10px;padding:40px 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.no-scroll{overflow:hidden}
.data-error{position:fixed;bottom:15px;left:15px;right:15px;background:#151515;color:#fff;padding:14px;z-index:200;font-size:11px}
@media(min-width:651px){#hero-title{text-align:center}#categorie{max-width:1600px}#categorie .category-grid{grid-template-columns:repeat(2,1fr)}#categorie .category-copy{height:108px;flex:0 0 108px}}
@media(min-width:1001px){#categorie .category-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.product-grid{grid-template-columns:repeat(2,1fr)}.product-layout{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}}
@media(max-width:650px){
.site-header{height:60px;padding:0 5vw}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:60px;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line);padding:8px 5vw;flex-direction:column;gap:0}.main-nav.open{display:flex}.main-nav a{padding:13px 0}
.hero{min-height:160px;padding:22px 5vw 16px;justify-content:center;text-align:center}.hero h1{font-size:clamp(53px,15vw,76px);margin-bottom:0}#hero-eyebrow:empty,#hero-text:empty{display:none}
.section{padding-bottom:70px}
.category-grid{display:flex;gap:12px;overflow-x:auto;padding:0 0 8px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.category-card{flex:0 0 84vw;min-height:310px;scroll-snap-align:start}.category-copy{height:108px;flex:0 0 108px;padding:16px 20px;text-align:center}.category-copy h3{font-size:27px}
.product-grid{grid-template-columns:1fr 1fr;gap:25px 10px}.card-copy h3{font-size:14px}
.category-hero{padding-top:45px;padding-bottom:45px}.product-page{padding-top:35px}.product-layout{gap:20px}.mobile-product-heading{display:block;margin-bottom:22px}.mobile-product-heading h1{font-size:48px;line-height:.9;letter-spacing:-.04em;margin:0}.product-info>#product-category,.product-info>#product-name{display:none}
.lightbox{width:100vw;height:100dvh;padding:0 16px;display:flex;align-items:center;justify-content:center}.lightbox img{max-width:calc(100vw - 32px);max-height:85dvh}
.contact-section{padding-top:45px;padding-bottom:24px}.contact-intro h1{font-size:53px}.contact-grid{margin-top:30px;gap:25px}.map-wrap{height:270px}
.map-consent{padding:24px}.map-consent-actions{gap:12px;flex-direction:column}.footer-preferences{margin-left:14px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
