/* Jipende: dark luxury theme. Gold is the hero colour. */
:root{--bg:#0A0A09;--bg2:#100F0D;--panel:#161411;--deep:#062F2C;--deep2:#0B423D;--gold:#D9A441;--gold2:#F0C766;--goldd:#B88A2E;--fg:#F4ECDC;--mut:#B8AF9E;--line:rgba(217,164,65,.28);--turq:#00A99D;--ink:#0A0A09;--e:cubic-bezier(.22,.7,.2,1);--serif:'Cormorant Garamond',Georgia,serif;--sans:'Jost',system-ui,sans-serif;--gt:linear-gradient(115deg,#B88A2E 0%,#F0C766 45%,#D9A441 70%,#B88A2E 100%)}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;background:var(--bg)}body{font:400 1.02rem/1.75 var(--sans);color:var(--mut);background:var(--bg);-webkit-font-smoothing:antialiased;animation:pg .8s var(--e)}@keyframes pg{from{opacity:0}}body.open{overflow:hidden}
img{max-width:100%;display:block;object-fit:cover}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}::selection{background:var(--gold);color:#000}
.wrap{width:min(1240px,100% - 2.5rem);margin-inline:auto}
h1,h2,h3,.hh{font-family:var(--serif);font-weight:500;line-height:1.04;color:var(--fg);letter-spacing:-.01em}h1{font-size:clamp(2.8rem,7vw,6rem)}h2{font-size:clamp(2.2rem,4.8vw,4rem)}h3{font-size:1.5rem}
em{font-style:italic;background:var(--gt);background-size:220% 100%;animation:shine 8s linear infinite;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding-right:.04em}
.eyebrow{display:inline-block;font:500 .72rem var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}.eyebrow:before{content:"";display:inline-block;width:34px;height:1px;background:var(--gold);vertical-align:middle;margin-right:14px}
.sec{padding:clamp(4.5rem,9vw,8.5rem) 0}.cream{background:var(--bg2)}.dark{background:var(--bg2)}.deep{background:radial-gradient(1000px 520px at 85% var(--py,0px),rgba(217,164,65,.16),transparent 60%),radial-gradient(700px 420px at 5% calc(100% - var(--py,0px)),rgba(0,169,157,.12),transparent 60%),linear-gradient(160deg,var(--deep2),var(--deep) 55%,#03181a)}.line-t{border-top:1px solid var(--line)}
/* buttons */
.btn{display:inline-block;background:var(--gt);background-size:200% 100%;color:#120d02;border:1px solid var(--gold);padding:1rem 2.1rem;font:600 .76rem var(--sans);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:background-position .6s var(--e),transform .4s var(--e),box-shadow .4s;margin:4px 6px 4px 0}.btn:hover{background-position:100% 0;transform:translateY(-2px);box-shadow:0 12px 34px rgba(217,164,65,.35)}
.btn.ghost{background:none;color:var(--gold);border-color:var(--gold)}.btn.ghost:hover{background:var(--gold);color:#120d02}.btn.light{background:none;color:var(--fg);border-color:rgba(244,236,220,.55)}.btn.light:hover{background:var(--fg);color:#120d02;box-shadow:none}.btn.gold{}.btn.sm{padding:.7rem 1.3rem;font-size:.68rem}.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}
.ann{background:#050504;color:var(--gold);text-align:center;font:500 .7rem var(--sans);letter-spacing:.2em;text-transform:uppercase;padding:.55rem 1rem;border-bottom:1px solid var(--line)}
/* editorial blocks */
.two{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(2rem,6vw,6rem);align-items:center}.arch{border-radius:999px 999px 0 0;overflow:hidden;aspect-ratio:4/5;border:1px solid var(--line);padding:10px}.arch img{width:100%;height:100%;border-radius:999px 999px 0 0}.two p{max-width:520px;margin:1.2rem 0 2rem}
.cats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.cat{position:relative;aspect-ratio:3/4.2;overflow:hidden;display:flex;align-items:flex-end;border:1px solid var(--line)}.cat img{position:absolute;inset:0;width:100%;height:100%;transition:transform 1.5s var(--e)}.cat:hover img{transform:scale(1.07)}.cat:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,6,5,.92),rgba(6,6,5,.1) 60%)}.cat div{position:relative;z-index:2;padding:1.8rem}.cat h3{font-size:2.3rem}.cat span{font:500 .7rem var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--gold)}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem}.pc{background:var(--panel);border:1px solid rgba(217,164,65,.14);transition:border-color .5s,transform .6s var(--e),box-shadow .6s}.pc:hover{border-color:var(--gold);transform:translateY(-6px);box-shadow:0 24px 60px rgba(0,0,0,.55),0 0 0 1px rgba(217,164,65,.2)}
.pc-img{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:#0d0c0a}.pc-img img{width:100%;height:100%;transition:transform 1.3s var(--e)}.pc:hover .pc-img img{transform:scale(1.07)}.tag{position:absolute;top:.8rem;left:.8rem;background:rgba(10,10,9,.8);border:1px solid var(--gold);color:var(--gold);font:500 .62rem var(--sans);letter-spacing:.2em;text-transform:uppercase;padding:.3rem .7rem}
.pc-b{padding:1.2rem 1.2rem 1.4rem}.pc h3{font-size:1.4rem}.pc h3 a:hover{color:var(--gold)}.pc .sz{font-size:.82rem;color:var(--mut)}.pc .pr{font:500 1.45rem var(--serif);color:var(--gold);margin:.3rem 0 .9rem}
.band{position:relative;min-height:70vh;display:grid;align-items:center;overflow:hidden}.band>img{position:absolute;left:0;top:-15%;width:100%;height:130%;will-change:transform}.band:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,6,5,.92),rgba(6,6,5,.4))}.band .wrap{position:relative;z-index:2}.band h2{max-width:13ch}.band p{max-width:460px;margin:1.2rem 0 2rem}
.rit{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.rit>div{padding:2.6rem 2rem 2.6rem 0;border-right:1px solid var(--line)}.rit>div+div{padding-left:2rem}.rit>div:last-child{border:0}.rit span{font:italic 3.4rem var(--serif);color:var(--gold)}.rit ol{margin:1rem 0 1.4rem 1.1rem;color:#d6cdbb}.rit a{color:var(--gold);letter-spacing:.16em;font-size:.74rem;text-transform:uppercase}.rit a:hover{color:var(--gold2)}
.why{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}.why h3{margin-bottom:.5rem}.why>div{border-top:1px solid var(--gold);padding-top:1.3rem}
.soc{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin-top:2rem}.soc img{aspect-ratio:1;width:100%;transition:transform .8s var(--e),opacity .4s;opacity:.9}.soc a{overflow:hidden;display:block;border:1px solid var(--line)}.soc a:hover img{transform:scale(1.08);opacity:1}
.nl{display:flex;gap:.6rem;flex-wrap:wrap;max-width:580px}.small{font-size:.8rem;color:var(--mut);margin-top:.6rem}.cta{text-align:center}.cta h2{max-width:15ch;margin:1rem auto 2rem}
/* shop + product */
.ph-hd{padding:4rem 0 2rem;background:radial-gradient(700px 320px at 88% var(--py,0px),rgba(217,164,65,.16),transparent 70%)}.ph-hd h1{font-size:clamp(2.4rem,5vw,4.2rem)}.filters{display:flex;gap:1.4rem;flex-wrap:wrap;align-items:center;margin:1.5rem 0 2.5rem;padding:1rem 0;border-block:1px solid var(--line)}.filters a{font:500 .76rem var(--sans);letter-spacing:.18em;text-transform:uppercase;padding:.3rem 0;border-bottom:1px solid transparent;color:var(--mut)}.filters a.on,.filters a:hover{border-color:var(--gold);color:var(--gold)}.filters select{padding:.55rem;margin-left:auto}
.pd{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(2rem,5vw,5rem);padding:3rem 0 5rem}.gal-m{aspect-ratio:4/5;background:var(--panel);overflow:hidden;border:1px solid var(--line)}.gal-m img{width:100%;height:100%}.thumbs{display:flex;gap:.6rem;margin-top:.6rem}.thumbs button{width:80px;aspect-ratio:1;border:1px solid transparent;padding:0;background:var(--panel);cursor:pointer;opacity:.6}.thumbs button.on{border-color:var(--gold);opacity:1}.thumbs img{width:100%;height:100%}
.pd h1{font-size:clamp(2.2rem,4vw,3.4rem)}.pd .pr{font:500 2.1rem var(--serif);color:var(--gold);margin:.8rem 0}.pd .st{display:inline-block;font:500 .72rem var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--turq);margin-bottom:1rem}.qty{display:inline-flex;border:1px solid var(--line)}.qty button{width:42px;background:none;border:0;font-size:1.2rem;cursor:pointer;color:var(--gold)}.qty input{width:52px;text-align:center;border:0;background:none;font:inherit;color:var(--fg)}
.acts{display:flex;gap:.6rem;flex-wrap:wrap;margin:1.6rem 0}.acc{border-top:1px solid var(--line);padding:1rem 0}.acc summary{cursor:pointer;font:500 .78rem var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--fg)}.acc p{margin-top:.6rem}
.tbl{width:100%;border-collapse:collapse}.tbl th,.tbl td{padding:1rem .6rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.tbl th{font:500 .7rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.tbl img{width:72px;height:90px}
.cols{display:grid;grid-template-columns:1.4fr 1fr;gap:3rem;align-items:start}.box{background:var(--panel);padding:1.8rem;border:1px solid var(--line)}.box h3{margin-bottom:1rem}.row{display:flex;justify-content:space-between;padding:.5rem 0}.row.t{border-top:1px solid var(--line);font-weight:600;color:var(--gold);font-size:1.2rem;margin-top:.4rem}
input,textarea,select{font:inherit;color:var(--fg);background:#0e0d0b;border:1px solid var(--line);padding:.9rem;width:100%}input:focus,textarea:focus,select:focus{border-color:var(--gold);outline:0}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--gold)}.tbl input[type=number]{width:64px;padding:.4rem}
.fm{display:grid;gap:1rem}.fm.g2{grid-template-columns:1fr 1fr}.fm .full{grid-column:1/-1}.fm label{display:block;font:500 .74rem var(--sans);letter-spacing:.16em;text-transform:uppercase;margin-bottom:.35rem;color:var(--gold)}.hp{position:absolute;left:-9999px}.nl input[type=email]{flex:1;min-width:220px}
.pay{display:grid;gap:.5rem}.pay label{display:flex;gap:.8rem;padding:1rem;border:1px solid var(--line);background:var(--panel);text-transform:none;letter-spacing:0;font:400 1rem var(--sans);cursor:pointer;margin:0;color:var(--fg)}.pay label.off{opacity:.45;cursor:not-allowed}.pay small{display:block;color:var(--mut)}
.note{padding:1rem 1.2rem;background:rgba(0,169,157,.12);border-left:4px solid var(--turq);margin-bottom:1.5rem;color:var(--fg)}.note.err{background:rgba(192,86,29,.15);border-color:#c0561d}.empty{text-align:center;padding:5rem 0}
.tl{list-style:none;padding:0;margin:1rem 0}.tl li{padding:.7rem 0 .7rem 1.6rem;position:relative;border-left:2px solid var(--line);margin-left:.4rem;color:#7d7566}.tl li:before{content:"";position:absolute;left:-7px;top:1.1rem;width:12px;height:12px;border-radius:50%;background:var(--bg);border:2px solid #6b6455}.tl li.done{color:var(--fg);border-color:var(--gold)}.tl li.done:before{background:var(--gold);border-color:var(--gold)}
.ft{background:#050504;border-top:1px solid var(--line);color:var(--mut);padding:5rem 0 1.5rem}.ft-in{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1.3fr;gap:3rem}.ft-logo{height:64px;width:auto;margin-bottom:1rem}.ft h6{font:500 .72rem var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem}.ft a{display:block;margin-bottom:.45rem;transition:color .3s,padding .4s var(--e)}.ft a:hover{color:var(--gold);padding-left:.3rem}.ft-b{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:3rem;padding-top:1.4rem;border-top:1px solid var(--line);font-size:.82rem}
.wafloat{position:fixed;right:1rem;bottom:1rem;z-index:60;background:#1faa54;color:#fff;font:500 .72rem var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:.85rem 1.2rem;border-radius:40px;box-shadow:0 8px 24px #0008;transition:transform .4s var(--e)}.wafloat:hover{transform:translateY(-3px)}
.js .rv{opacity:0;transform:translateY(34px);transition:opacity 1s var(--e),transform 1s var(--e);transition-delay:calc(var(--i,0)*90ms)}.js .rv.in{opacity:1;transform:none}.js .rm{clip-path:inset(0 0 100% 0);transition:clip-path 1.3s cubic-bezier(.77,0,.18,1)}.js .rm.in{clip-path:inset(0)}
@media(max-width:960px){.two,.pd,.cols,.rit,.why{grid-template-columns:1fr}.cats{grid-template-columns:1fr}.cat{aspect-ratio:4/3}.grid{grid-template-columns:repeat(2,1fr);gap:.8rem}.rit>div{border:0;padding:1.6rem 0!important;border-top:1px solid var(--line)}.soc{grid-template-columns:repeat(2,1fr)}.ft-in{grid-template-columns:1fr 1fr}.fm.g2{grid-template-columns:1fr}.tbl img{width:56px;height:70px}.filters select{margin-left:0}.pc-b{padding:.9rem}.pc .pr{font-size:1.2rem}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.js .rv,.js .rm{opacity:1;transform:none;clip-path:none}}
