:root{--ink:#111;--ink2:#181818;--paper:#f4f0e8;--warm:#f7f5f0;--muted:#b9b3aa;--gold:#c6a15b;--serif:'Cormorant Garamond',Georgia,serif;--sans:Inter,Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--warm);font:14px/1.6 var(--sans)}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
.announcement{height:29px;overflow:hidden;background:var(--gold);color:#16130d;display:flex;align-items:center;white-space:nowrap;font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.announcement div{animation:marquee 19s linear infinite}
.announcement span{padding:0 4rem}
#intro{position:fixed;z-index:50;inset:0;background:#111;display:grid;place-items:center;align-content:center;gap:18px;animation:intro 2.45s ease-in-out forwards;pointer-events:none}
#intro .radhe{font:500 clamp(28px,4vw,52px)/1 var(--serif);color:var(--warm);margin:0;animation:rise .7s both}
#intro img{width:min(360px,72vw);display:block;opacity:0;animation:logoIn .5s .5s forwards}
.welcome{display:grid;gap:3px;text-align:center;text-transform:uppercase;opacity:0;animation:logoIn .45s .92s forwards}.welcome strong{font:500 13px/1.3 var(--serif);letter-spacing:.14em;color:var(--warm)}.welcome span{font-size:9px;letter-spacing:.16em;color:var(--muted)}
.brand-logo img,.footer-brand img{display:block}
header{position:fixed;top:29px;z-index:20;width:100%;height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;transition:.35s;background:linear-gradient(#111a,transparent)}
header.scrolled{background:#111ef;backdrop-filter:blur(12px)}
.brand-logo img{width:158px;height:62px;object-fit:contain}
nav{display:flex;gap:26px;text-transform:uppercase;font-size:10px;letter-spacing:.13em}
.nav-actions{display:flex;align-items:center;gap:17px;font-size:10px;text-transform:uppercase;letter-spacing:.1em}
.nav-actions a:hover,nav a:hover{color:var(--gold)}
.nav-actions button{background:none;border:0;text-transform:uppercase;font-size:10px;letter-spacing:.1em}
.nav-actions sup{color:var(--gold);font-size:9px}
.menu-toggle{display:none}
.hero{min-height:calc(100svh - 29px);display:grid;align-items:end;position:relative;overflow:hidden}
.hero-media,.hero-shade{position:absolute;inset:0}
.hero-media{background:#151515;transform:scale(1);animation:none}.hero-media img{width:100%;height:100%;object-fit:contain;object-position:right center;display:block}
.hero-shade{background:linear-gradient(90deg,#080808b5 0%,#1115 55%,#1113),linear-gradient(0deg,#111a,transparent 45%)}
.hero-content{position:relative;z-index:1;padding:0 8vw 8vh;max-width:850px}
.hero-brand{font:500 12px/1 var(--sans);letter-spacing:.3em;margin:0 0 12px;color:var(--warm)}
.eyebrow{font-size:10px;letter-spacing:.21em;text-transform:uppercase;color:var(--muted);margin:0 0 17px}
.eyebrow.dark{color:#655e56}
h1,h2{font:500 clamp(46px,6.1vw,97px)/.86 var(--serif);letter-spacing:-.035em;margin:0;text-transform:uppercase}
h1 em,h2 em{font-weight:400}
h1 em{color:#e7e0d2}
.hero-copy{max-width:430px;margin:27px 0;font-size:13px;color:#e5e0d7}
.hero-buttons{display:flex;align-items:center;gap:26px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:0 23px;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:600;border:1px solid currentColor;transition:.25s}
.button.light{background:var(--warm);color:#171717;border-color:var(--warm)}
.button:hover{transform:translateY(-2px);background:var(--gold);border-color:var(--gold);color:#171717}
.text-link{font-size:10px;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid #ffffff77;padding-bottom:5px}
.text-link span{color:var(--gold);font-size:15px;margin-left:8px}
.shipping-line{margin:44px 0 0;color:var(--gold);font-size:10px;letter-spacing:.16em}
.intro-strip{background:var(--paper);color:#282522;padding:26px 8vw;text-align:center;font:500 clamp(18px,2vw,27px)/1.15 var(--serif)}
.intro-strip p{margin:0}
.section{padding:11vw 8vw}
.collection{background:var(--warm);color:var(--ink)}
.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:50px}
.section h2{font-size:clamp(42px,5.5vw,76px)}
.filters{display:flex;gap:8px;flex-wrap:wrap;justify-content:end}
.filter{background:none;border:0;border-bottom:1px solid transparent;padding:6px 0;margin-left:14px;color:#716b64;text-transform:uppercase;letter-spacing:.1em;font-size:10px}
.filter.active{border-color:var(--ink);color:var(--ink)}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 17px}
.product-card{cursor:pointer}
.product-image{background:#e5e0d7;aspect-ratio:4/5;overflow:hidden;position:relative}
.product-image img{width:100%;height:100%;object-fit:contain;transition:transform .8s cubic-bezier(.2,.6,.2,1)}
.product-card:hover .product-image img{transform:scale(1.045)}
.product-info{padding-top:14px;display:grid;grid-template-columns:1fr auto;gap:3px 8px}
.product-info h3{font:500 22px/1 var(--serif);margin:0}
.product-info p{margin:0;color:#746d63;font-size:9px;letter-spacing:.1em;text-transform:uppercase}
.product-info .enquiry{grid-column:1/-1;color:#282421;margin-top:5px}
.add-card{border:0;background:none;text-align:right;text-transform:uppercase;letter-spacing:.1em;font-size:9px}
.product-status{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.product-status span{height:430px;background:linear-gradient(110deg,#e9e4dc 8%,#f5f2ed 18%,#e9e4dc 33%);background-size:200% 100%;animation:shimmer 1.2s infinite}
.product-status.hidden{display:none}
.dark-section{background:var(--ink2)}
.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.category{height:440px;position:relative;overflow:hidden;background:#292929;cursor:pointer}
.category img{width:100%;height:100%;object-fit:contain;opacity:.82;transition:.8s}
.category:hover img{transform:scale(1.05);opacity:.92}
.category h3{position:absolute;z-index:1;bottom:22px;left:23px;margin:0;text-transform:uppercase;font:500 35px/1 var(--serif);letter-spacing:-.02em}
.editorial{display:grid;grid-template-columns:1.1fr .9fr;min-height:720px;background:var(--paper);color:var(--ink)}
.editorial-image{background:#dfd4c4;display:grid;place-items:center}.editorial-image img{width:100%;height:100%;display:block;object-fit:contain;object-position:center}
.editorial-copy{align-self:center;padding:10vw 9vw 10vw 7vw}
.editorial-copy h2{font-size:clamp(37px,4.2vw,64px)}
.editorial-copy>p:not(.eyebrow){margin:30px 0;max-width:380px;color:#514b44}
.dark-link{color:var(--ink);border-color:#1118}
.new-arrivals{background:var(--warm);color:var(--ink)}
.shipping-section{padding:13vw 8vw;background:#181818;text-align:center}
.shipping-section h2{font-size:clamp(45px,7vw,100px)}
.shipping-section h2 em,.shipping-section h2 span{color:var(--gold)}
.shipping-section>p:last-child{color:var(--muted);margin-top:26px}
.instagram{background:var(--paper);color:var(--ink);padding:12vw 8vw;text-align:center}
.instagram h2{font-size:clamp(44px,6vw,82px)}
.instagram>p:not(.eyebrow){margin:22px auto 30px;color:#5c554d}
.dark-button{background:var(--ink);color:var(--warm)}
.about{display:grid;grid-template-columns:1fr 1fr;gap:7vw;background:#222;color:var(--warm)}
.about h2{font-size:clamp(40px,5vw,70px)}
.about>p{align-self:end;margin:0;max-width:480px;color:#d2ccc4;font:400 23px/1.25 var(--serif)}
.contact{padding:11vw 8vw;display:flex;align-items:end;justify-content:space-between;gap:25px;background:#141414}
.contact h2{font-size:clamp(41px,5.2vw,76px)}
footer{padding:70px 8vw 28px;background:#090909;color:var(--muted);display:grid;grid-template-columns:1fr 1fr;gap:55px}
.footer-brand img{width:205px;height:92px;object-fit:contain;margin-bottom:13px}
.footer-brand p{margin:4px 0;max-width:370px;font-size:11px}
.footer-links{display:flex;justify-content:end;gap:100px}
.footer-links div{display:grid;align-content:start;gap:7px}
.footer-links p{text-transform:uppercase;color:var(--warm);letter-spacing:.15em;font-size:9px;margin:0 0 8px}
.footer-links a{font-size:11px}
.footer-bottom{grid-column:1/-1;border-top:1px solid #fff2;margin-top:20px;padding-top:20px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.1em;text-transform:uppercase}
.floating-whatsapp{position:fixed;z-index:18;right:24px;bottom:24px;width:50px;height:50px;border-radius:50%;border:1px solid var(--gold);background:var(--ink);color:var(--gold);font-size:27px;box-shadow:0 5px 25px #0006}
#cart{position:fixed;z-index:30;top:0;right:0;width:min(440px,100%);height:100dvh;background:var(--warm);color:var(--ink);transform:translateX(101%);transition:.35s;display:flex;flex-direction:column;padding:26px}
#cart.open{transform:none}
#cart-overlay{position:fixed;inset:0;z-index:29;background:#0009;opacity:0;visibility:hidden;transition:.3s}
#cart-overlay.open{opacity:1;visibility:visible}
.cart-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #1112;padding-bottom:19px}
.cart-head h2{font-size:35px}
.cart-head button,#close-product{border:0;background:none;font-size:30px}
#cart-items{overflow:auto;flex:1}
.cart-item{display:grid;grid-template-columns:75px 1fr;gap:13px;padding:18px 0;border-bottom:1px solid #1111}
.cart-item img{width:75px;height:94px;object-fit:cover;background:#ddd}
.cart-item h3{font:500 19px/1 var(--serif);margin:0}
.cart-item p{font-size:9px;margin:4px 0;text-transform:uppercase;letter-spacing:.08em;color:#686158}
.cart-controls{display:flex;gap:7px;align-items:center;margin-top:8px}
.cart-controls button{border:1px solid #1113;background:none;width:22px;height:22px}
.remove{margin-left:auto;width:auto!important;padding:0 6px;font-size:9px;text-transform:uppercase}
.cart-footer{border-top:1px solid #1112;padding-top:19px}
.cart-footer p{font-size:10px;letter-spacing:.05em}
.cart-footer .button{width:100%}
.empty-cart{padding:40px 0;color:#746d63}
dialog{border:0;padding:0;width:min(1120px,100%);height:min(920px,100dvh);max-height:100dvh;overflow:auto;background:var(--warm);color:var(--ink);overscroll-behavior:contain}
dialog::backdrop{background:#000b}
#close-product{position:fixed;z-index:100;top:18px;right:max(20px,calc((100vw - 1120px)/2 + 20px));width:43px;height:43px;border-radius:50%;background:var(--warm);color:var(--ink);box-shadow:0 3px 16px #0003;line-height:1}
.detail{display:grid;grid-template-columns:1.1fr .9fr}
.gallery{min-height:600px;background:#ddd;display:flex;overflow:auto;scroll-snap-type:x mandatory}
.gallery img{width:100%;flex:0 0 100%;object-fit:contain;scroll-snap-align:start}
.detail-info{padding:70px 48px;align-self:center}
.detail-info h2{font-size:51px}
.detail-info p{color:#514b44}
.detail-info .code{font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.price-on-enquiry{font-size:11px!important;letter-spacing:.12em;text-transform:uppercase;color:#1d1a17!important;margin:23px 0!important}
.size-picker{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 23px}
.size-picker button{border:1px solid #1114;background:transparent;min-width:39px;height:34px;padding:0 10px;font-size:10px}
.size-picker button.selected{background:#111;color:#fff}
.detail-actions{display:grid;gap:10px;margin-top:27px}
.detail-actions .button{width:100%}
.out-of-stock{color:#8e392c!important;font-size:10px!important;text-transform:uppercase;letter-spacing:.1em}
@keyframes marquee{to{transform:translateX(-33.33%)}
}
@keyframes rise{from{opacity:0;transform:translateY(12px)}
to{opacity:1;transform:none}
}
@keyframes logoIn{to{opacity:1}
}
@keyframes intro{0%,77%{opacity:1;visibility:visible}
100%{opacity:0;visibility:hidden}
}
@keyframes heroZoom{from{transform:scale(1)}
to{transform:scale(1)}
}
@keyframes shimmer{to{background-position:-200% 0}
}
@media(max-width:800px){header{height:66px;padding:0 18px}
.brand-logo img{width:111px}
nav{position:fixed;inset:95px 0 auto;background:#111;padding:25px 20px;display:none;flex-direction:column;gap:17px;border-top:1px solid #fff2}
nav.open{display:flex}
.menu-toggle{display:grid;gap:5px;width:28px;border:0;background:none;padding:5px 0}
.menu-toggle i{height:1px;background:#fff;width:20px}
.nav-actions a{display:none}
.nav-actions{gap:0}
.hero{min-height:690px}
.hero-content{padding:0 24px 62px}
.hero-copy{max-width:320px}
.hero-buttons{align-items:flex-start;flex-direction:column;gap:17px}
.section{padding:76px 21px}
.section-top{margin-bottom:30px}
.section h2{font-size:45px}
.filters{justify-content:start}
.filter{margin-left:0;margin-right:12px}
.product-grid{grid-template-columns:repeat(2,1fr);gap:26px 10px}
.product-info h3{font-size:19px}
.product-status span{height:260px}
.category-grid{grid-template-columns:1fr;gap:10px}
.category{height:250px}
.category h3{font-size:34px}
.editorial{grid-template-columns:1fr}
.editorial-image{min-height:480px}
.editorial-copy{padding:65px 22px}
.new-arrivals .product-grid .product-card:nth-child(n+3){display:none}
.shipping-section{padding:93px 22px}
.about{grid-template-columns:1fr;padding:75px 22px;gap:36px}
.about>p{font-size:20px}
.contact{padding:75px 22px;display:block}
.contact .button{margin-top:35px}
footer{grid-template-columns:1fr;padding:50px 22px 22px;gap:38px}
.footer-links{justify-content:start;gap:65px}
.footer-bottom{display:grid;gap:12px}
.floating-whatsapp{right:17px;bottom:17px}
.detail{grid-template-columns:1fr}
.gallery{min-height:55vh}
.detail-info{padding:35px 22px}
.detail-info h2{font-size:45px}
#close-product{top:7px;right:10px;background:#f7f5f0cc;border-radius:50%;width:38px;height:38px}
.announcement{font-size:9px}
}
