:root{--ivory:#FBF8F1;--pearl:#F3EDE0;--paper:#fff;--green:#0F2A24;--green2:#17392F;--green3:#1F4A3D;--gold:#B8893A;--gold2:#E6C77A;--gold3:#8C6624;--ink:#1B2420;--mute:#66706A;--line:rgba(184,137,58,.35);
--foil:linear-gradient(110deg,#B8893A 0%,#E6C77A 38%,#B8893A 62%,#E6C77A 100%);
--display:'Playfair Display',Georgia,serif;--sans:'Jost',system-ui,sans-serif;--cap:'Cinzel','Playfair Display',Georgia,serif;
--ease:cubic-bezier(.22,1,.36,1);--pad:clamp(1.25rem,5vw,5rem);--gutter:clamp(1.1rem,4vw,2rem);--max:1240px;--hh:76px}
*{box-sizing:border-box;margin:0;padding:0}
html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}
html.scroll-lock{overflow:hidden}
body{font-family:var(--sans);font-weight:400;color:var(--ink);background:var(--ivory);line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}ul{list-style:none}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.08;letter-spacing:-.005em}
em{font-style:italic}
::selection{background:var(--gold2);color:var(--green)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.pd :focus-visible,.cat-sheet :focus-visible{outline-offset:-2px}input:focus-visible{outline:none}
.gold-t,.hero-title em,.big em,.huge em,.phone,.slogan{background:var(--foil);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:foil 7s linear infinite}
@keyframes foil{to{background-position:-220% 0}}

/* preloader */
.preloader{position:fixed;inset:0;z-index:999;background:var(--ivory);display:grid;place-items:center;clip-path:circle(150% at 50% 50%)}
.no-js .preloader{display:none}html.loaded .preloader{display:none}
.pl-in{display:grid;justify-items:center;gap:1.4rem}
.pl-seal{position:relative;width:170px;height:170px}.pl-seal img{position:absolute;inset:10px;width:150px;height:150px;opacity:0;animation:plf 1s .2s var(--ease) forwards}
.pl-seal svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.pl-seal circle{fill:none;stroke:var(--gold);stroke-width:.9;stroke-dasharray:1;stroke-dashoffset:1;animation:plr 1.6s .1s var(--ease) forwards}
.pl-txt{font-family:var(--cap);font-size:.72rem;letter-spacing:.5em;text-transform:uppercase;color:var(--gold3);opacity:0;animation:plf 1s .7s var(--ease) forwards;padding-left:.5em}
@keyframes plf{from{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}@keyframes plr{to{stroke-dashoffset:0}}

/* header */
.top{position:fixed;inset:0 0 auto 0;z-index:100;height:var(--hh);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;padding:0 var(--pad);background:rgba(251,248,241,.9);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);transition:transform .6s var(--ease),box-shadow .4s}
.top:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--foil);background-size:200% 100%;opacity:.8;animation:foil 9s linear infinite}
.top.solid{box-shadow:0 12px 30px -18px rgba(15,42,36,.35)}.top.hide{transform:translateY(-110%)}
.top nav{display:flex;gap:2.4rem}.top nav.mnav{gap:1.5rem}.n1{justify-content:flex-end}.n1 nav,nav.n1{justify-content:flex-end}
.top nav a{font-family:var(--cap);font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;font-weight:500;position:relative;padding:.4rem 0;color:var(--green)}
.top nav a:after{content:"";position:absolute;left:50%;right:50%;bottom:0;height:1px;background:var(--gold);transition:left .5s var(--ease),right .5s var(--ease)}
.top nav a:hover:after{left:0;right:0}
.n2{display:flex;align-items:center;gap:2.4rem}
.brand{position:relative;display:block;width:84px;height:84px;margin-top:22px;border-radius:50%;background:var(--ivory);box-shadow:0 10px 26px -10px rgba(15,42,36,.5),0 0 0 4px var(--ivory),0 0 0 5px var(--gold);z-index:2;transition:transform .7s var(--ease)}
.brand:hover{transform:rotate(-6deg) scale(1.04)}.brand img{width:100%;height:100%;border-radius:50%}
.top-cta{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--cap);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--green);background:var(--foil);background-size:200% 100%;padding:.7rem 1.2rem;border-radius:999px;transition:background-position .6s,transform .4s var(--ease)}
.top-cta svg{width:16px;height:16px}.top-cta:hover{background-position:100% 0;transform:translateY(-2px)}
.top .mnav,.top .menu{display:none}
.menu{width:44px;height:44px;border:0;background:none;cursor:pointer;position:relative}
.menu span{position:absolute;left:10px;right:10px;height:1.5px;background:var(--green);transition:transform .5s var(--ease),opacity .3s;top:50%}
.menu span:nth-child(1){transform:translateY(-7px)}.menu span:nth-child(3){transform:translateY(7px)}
.top.open .menu span:nth-child(1){transform:rotate(45deg)}.top.open .menu span:nth-child(2){opacity:0}.top.open .menu span:nth-child(3){transform:rotate(-45deg)}

/* buttons */
.btn,.btn-line{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;overflow:hidden;font-family:var(--cap);font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;font-weight:600;padding:1.1rem 2.1rem;border-radius:2px;transition:transform .5s var(--ease),color .4s,background .4s}
.btn{background:var(--green);color:var(--gold2);border:1px solid var(--green)}
.btn:before,.btn-line:before{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(230,199,122,.55),transparent);transform:skewX(-20deg);transition:left .9s var(--ease)}
.btn:hover:before,.btn-line:hover:before{left:130%}.btn:hover{transform:translateY(-3px);background:var(--green3)}
.btn-line{border:1px solid var(--gold);color:var(--green);background:transparent}.btn-line:hover{background:var(--green);color:var(--gold2);border-color:var(--green);transform:translateY(-3px)}
.btn-line svg{width:18px;height:18px}.btn span,.btn-line span{position:relative}
.contact .btn{background:var(--foil);color:var(--green);border-color:transparent}

/* hero */
.hero{position:relative;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:clamp(2rem,5vw,5rem);min-height:100vh;min-height:100svh;padding:calc(var(--hh) + 3.5rem) var(--pad) 4.5rem;background:radial-gradient(120% 90% at 85% 20%,#fff 0,var(--ivory) 45%,var(--pearl) 100%);overflow:hidden}
.hero:before{content:"";position:absolute;left:-12vw;bottom:-18vw;width:46vw;height:46vw;border-radius:50%;border:1px solid var(--line);opacity:.7;pointer-events:none}
.hero-content{position:relative;z-index:2;text-align:center;max-width:640px;justify-self:center}
.kicker{display:flex;align-items:center;justify-content:center;gap:1rem;font-family:var(--cap);font-size:.7rem;letter-spacing:.34em;text-transform:uppercase;color:var(--gold3);font-weight:500;margin-bottom:2rem}
.kicker .ln{width:44px;height:1px;background:var(--gold)}
.hero-title{font-size:clamp(2.7rem,min(5.6vw,10.5vh),5.6rem);font-weight:400;line-height:1.04}
.hero-title .l{display:block;overflow:hidden;padding:.06em .1em .1em;margin:0 -.1em}.hero-title .l>span{display:block}
.hero-title em{font-weight:500;padding-right:.08em}
.orn{display:block;width:150px;height:14px;margin:1.8rem auto;color:var(--gold)}
.hero-foot p{color:var(--mute);font-size:1.02rem;max-width:44ch;margin:0 auto 2.2rem}
.hero-btns{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}
.hero-visual{position:relative;justify-self:center;width:min(100%,520px)}
.hero-media{position:relative;aspect-ratio:4/5.2;border-radius:999px 999px 6px 6px;overflow:hidden;background:var(--green);box-shadow:0 40px 70px -35px rgba(15,42,36,.55)}
.hero-visual:before{content:"";position:absolute;inset:-14px;border:1px solid var(--gold);border-radius:999px 999px 14px 14px;opacity:.7;z-index:0;pointer-events:none}
.hero-visual:after{content:"";position:absolute;inset:-26px -26px -26px -26px;border:1px solid var(--line);border-radius:999px 999px 22px 22px;pointer-events:none}
.hero-slides{position:absolute;inset:0}
.slide{position:absolute;inset:0;opacity:0;z-index:0;clip-path:inset(100% 0 0 0);transition:clip-path 1.3s var(--ease),opacity 0s 1.4s}
.slide img{width:100%;height:100%;object-fit:cover;transform:scale(1.18);transition:transform 8s linear}
.slide.prev{opacity:1;clip-path:inset(0);z-index:1;transition:none}
.slide.on{opacity:1;clip-path:inset(0);z-index:2;transition:clip-path 1.3s var(--ease)}
.slide.on img{transform:scale(1.02)}
.hero-meta{position:absolute;left:50%;bottom:-3.2rem;transform:translateX(-50%);display:flex;align-items:center;gap:1rem;white-space:nowrap;font-family:var(--cap);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold3);z-index:4}
.hm-num b{font-weight:600;color:var(--green)}.hm-name{max-width:26ch;overflow:hidden;text-overflow:ellipsis;color:var(--mute);font-family:var(--sans);letter-spacing:.06em;text-transform:none;font-size:.78rem}
.hm-dots{display:flex;gap:.45rem}.hm-dots button{width:22px;height:22px;background:none;border:0;cursor:pointer;display:grid;place-items:center}
.hm-dots i{display:block;width:7px;height:7px;border:1px solid var(--gold);border-radius:50%;transition:.5s var(--ease);position:relative}
.hm-dots button.on i{background:var(--gold);transform:scale(1.5)}
.hero{--sr:calc(var(--pad) - 6px);--st:20%;--ss:132px}
.seal{position:absolute;right:var(--sr);top:var(--st);width:var(--ss);height:var(--ss);z-index:5;animation:spin 28s linear infinite;filter:drop-shadow(0 10px 18px rgba(15,42,36,.3))}
.seal .s-bg{fill:var(--green)}.seal text{font-family:var(--cap);font-size:15.4px;letter-spacing:2px;fill:var(--gold2);font-weight:500}
.seal-v{position:absolute;right:calc(var(--sr) + var(--ss)*.333);top:calc(var(--st) + var(--ss)*.5);transform:translateY(-50%);width:calc(var(--ss)*.333);height:auto;z-index:6}
@keyframes spin{to{transform:rotate(360deg)}}

/* black friday */
.marquee.bf{position:relative;background:var(--green);overflow:hidden;max-width:100%;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold)}
.marquee.bf:before,.marquee.bf:after{content:"";position:absolute;left:0;right:0;height:1px;background:var(--foil);background-size:200% 100%;animation:foil 6s linear infinite;z-index:2}
.marquee.bf:before{top:4px}.marquee.bf:after{bottom:4px}
.bf-band{position:relative;padding:1.05rem 0;overflow:hidden;background:radial-gradient(60% 200% at 50% 50%,var(--green3),var(--green))}
.bf-band:after{content:"";position:absolute;top:0;bottom:0;width:30%;background:linear-gradient(100deg,transparent,rgba(230,199,122,.22),transparent);transform:skewX(-20deg);animation:sweep 5s ease-in-out infinite;pointer-events:none}
@keyframes sweep{0%{left:-40%}60%,100%{left:130%}}
.mq-track{display:flex;width:max-content;animation:mq 34s linear infinite}
@keyframes mq{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.mq-half{display:flex;align-items:center;flex-shrink:0}
.marquee.bf .mq-track span{font-family:var(--cap);font-weight:600;text-transform:uppercase;letter-spacing:.22em;font-size:clamp(.95rem,2vw,1.5rem);color:var(--ivory);padding:0 1.5rem;white-space:nowrap}
.marquee.bf .mq-track .bf-y{background:var(--foil);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:foil 4s linear infinite;font-weight:700}
.marquee.bf .mq-track .bf-s{color:var(--gold);font-size:.8rem;padding:0 .4rem}
.bf-off{display:inline-block;background:var(--foil);color:var(--green);padding:.08em .55em;border-radius:999px;font-weight:700;letter-spacing:.12em}
@media(max-width:600px){.bf-band{padding:.8rem 0}.mq-track{animation-duration:24s}.marquee.bf .mq-track span{padding:0 .8rem;letter-spacing:.16em}}

/* sections */
section{position:relative}
.sec-num{display:flex;align-items:center;justify-content:center;gap:.9rem;font-family:var(--cap);font-size:.7rem;letter-spacing:.34em;text-transform:uppercase;color:var(--gold3);margin-bottom:1.3rem}
.sec-num span{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid var(--gold);border-radius:50%;font-size:.62rem;letter-spacing:0;color:var(--green)}
.sec-num.light{color:var(--gold2)}.sec-num.light span{color:var(--gold2);border-color:var(--gold2)}
.big{font-size:clamp(2rem,4.3vw,3.7rem);text-align:center}.big em,.huge em{padding-right:.06em}
.intro{padding:clamp(4.5rem,9vw,8rem) var(--pad);background:var(--pearl);text-align:center}
.intro .big{max-width:20ch;margin:0 auto clamp(2.5rem,5vw,4.5rem)}
.editorial{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.5rem,4vw,3.5rem);max-width:var(--max);margin:0 auto}
.ed{display:block}.ed-img{position:relative;aspect-ratio:3/4;border-radius:999px 999px 6px 6px;overflow:hidden;background:var(--green);box-shadow:0 0 0 8px var(--pearl),0 0 0 9px var(--gold);transition:transform .8s var(--ease),box-shadow .6s}
.ed-img img{width:100%;height:112%;object-fit:cover;transition:transform 1.4s var(--ease)}
.ed:hover .ed-img{transform:translateY(-8px);box-shadow:0 0 0 8px var(--pearl),0 0 0 9px var(--gold),0 30px 40px -25px rgba(15,42,36,.5)}.ed:hover .ed-img img{transform:scale(1.07)}
.ed-cap{padding-top:2rem}.ed-cap span{display:block;font-family:var(--cap);font-size:.7rem;letter-spacing:.3em;color:var(--gold)}
.ed-cap h3{font-size:1.9rem;margin:.2rem 0 .3rem;font-style:italic}.ed-cap p{color:var(--mute);font-size:.95rem}

/* catalog */
.catalog{padding:clamp(4.5rem,9vw,8rem) var(--pad);background:linear-gradient(var(--ivory),#fff 30%,var(--ivory))}
.cat-head{max-width:var(--max);margin:0 auto 2.8rem;text-align:center;display:grid;gap:1rem;justify-items:center}
.cat-sub{font-size:.95rem;color:var(--mute);max-width:46ch}.cat-sub #cat-total{color:var(--green);font-weight:600}
.cat-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:2.4rem;align-items:start;max-width:1360px;margin:0 auto}
.cat-side{position:sticky;top:calc(var(--hh) + 16px);max-height:calc(100vh - var(--hh) - 32px);display:flex;flex-direction:column;gap:.9rem;background:#fff;border:1px solid var(--line);border-radius:4px;padding:1.2rem 1rem;box-shadow:0 20px 40px -30px rgba(15,42,36,.3)}
.cat-search{display:flex;align-items:center;gap:.7rem;background:var(--ivory);border:1px solid var(--line);border-radius:999px;padding:0 1.1rem;transition:border-color .3s,box-shadow .3s}
.cat-search:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px rgba(184,137,58,.18)}
.cat-search svg{width:18px;height:18px;color:var(--gold3);flex:none}
.cat-search input{flex:1;min-width:0;border:0;outline:0;background:none;font:400 .92rem var(--sans);padding:.8rem 0;color:var(--ink)}
.side-tt{font-family:var(--cap);font-size:.66rem;letter-spacing:.32em;text-transform:uppercase;color:var(--gold3);padding:.4rem .4rem 0;border-top:1px solid var(--line);margin-top:.3rem;padding-top:1rem}
.cat-list{overflow-y:auto;min-height:0;margin:0 -.3rem;padding:0 .3rem;scrollbar-width:thin;scrollbar-color:var(--gold) transparent}
.cat-list button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:.6rem;text-align:left;background:none;border:0;padding:.46rem .7rem;font:500 .74rem/1.3 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);cursor:pointer;border-radius:2px;transition:background .3s,color .3s,padding .4s var(--ease)}
.cat-list button:hover{background:var(--pearl);padding-left:1rem}
.cat-list button.on{background:var(--green);color:var(--gold2)}
.cat-list sup{font-size:.62rem;color:var(--mute);letter-spacing:0;font-weight:400;vertical-align:baseline}.cat-list button.on sup{color:var(--gold2)}
.cat-main{min-width:0}
.cat-status{margin:0 0 1.2rem;font-size:.9rem;color:var(--mute)}.cat-status:empty{display:none}.cat-status b{color:var(--green)}
.st-clear{margin-left:.6rem;background:none;border:0;border-bottom:1px solid var(--gold);font:500 .68rem var(--cap);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;color:var(--green)}
.cat-block{margin-top:3.2rem;scroll-margin-top:calc(var(--hh) + 20px)}.cat-block:first-child{margin-top:0}
.cb-head{display:flex;align-items:center;gap:1.2rem;margin-bottom:1.4rem}
.cb-title{font-size:clamp(1.5rem,2.4vw,2.1rem);font-style:italic;white-space:nowrap}
.cb-line{flex:1;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}
.cb-see{background:none;border:1px solid var(--gold);border-radius:999px;font:600 .64rem var(--cap);letter-spacing:.18em;text-transform:uppercase;color:var(--green);padding:.55rem 1.1rem;cursor:pointer;white-space:nowrap;transition:.4s var(--ease)}
.cb-see:hover{background:var(--green);color:var(--gold2);border-color:var(--green)}
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}
.pcard{animation:cardin .9s var(--ease) both;position:relative;background:#fff;border:1px solid rgba(184,137,58,.22);border-radius:3px;display:flex;flex-direction:column;overflow:hidden;text-align:center;transition:transform .6s var(--ease),box-shadow .6s,border-color .4s}
.pcard:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--foil);transform:scaleX(0);transition:transform .7s var(--ease);z-index:2}
.pcard:hover{transform:translateY(-6px);box-shadow:0 28px 40px -28px rgba(15,42,36,.45);border-color:rgba(184,137,58,.6)}.pcard:hover:before{transform:scaleX(1)}
.pc-img{display:block;aspect-ratio:1/1;background:#fff;padding:14px}.pc-img img{width:100%;height:100%;object-fit:contain;transition:transform 1s var(--ease)}
.pcard:hover .pc-img img{transform:scale(1.06)}
.pc-body{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:1rem 1rem 1.1rem;border-top:1px solid rgba(184,137,58,.18);flex:1}
.pc-name{font-family:var(--display);font-weight:500;font-size:1rem;line-height:1.3;color:var(--green);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}
.pc-name a{color:inherit}.pc-name a:hover{color:var(--gold3)}
.pc-info{font-size:.78rem;color:var(--mute);line-height:1.4;flex:1}
.pc-cod{font-family:var(--cap);font-size:.62rem;letter-spacing:.16em;color:var(--gold3);margin:.1rem 0 .3rem}
.pc-price{margin:.1rem 0 .7rem;display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.15rem .5rem;line-height:1.2}
.pc-price strong{font:600 1.22rem var(--display);color:var(--green);white-space:nowrap}
.pc-price s{font-size:.78rem;color:#9A9F96;white-space:nowrap}
.pc-price em{font-style:normal;font-size:.62rem;font-weight:600;letter-spacing:.08em;color:var(--green);background:var(--foil);padding:.14rem .45rem;border-radius:999px}
.pc-ask strong{font:500 .74rem var(--cap);letter-spacing:.18em;text-transform:uppercase;color:var(--gold3)}
.pc-btn{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.8rem .5rem;background:transparent;color:var(--green);border:1px solid var(--gold);border-radius:2px;font:600 .62rem var(--cap);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;transition:background .4s,color .4s,border-color .4s}
.pc-btn svg{width:15px;height:15px;flex:none}.pc-btn:hover{background:var(--green);color:var(--gold2);border-color:var(--green)}
.cat-main .cb-l{display:none}@media(min-width:1600px){.cat-main .cb-l{display:inline}}
.cat-more{display:flex;justify-content:center;margin-top:2.5rem}
.btn-more{font:600 .68rem var(--cap);letter-spacing:.22em;text-transform:uppercase;padding:1rem 2rem;border:1px solid var(--gold);background:transparent;color:var(--green);border-radius:2px;cursor:pointer;transition:.4s}
.btn-more:hover{background:var(--green);color:var(--gold2);border-color:var(--green)}.btn-more[hidden]{display:none}
.cat-mbar{display:none}.cat-sheet[hidden]{display:none}
@media(max-width:1280px){.pgrid{grid-template-columns:repeat(3,1fr)}}

/* about */
.about{background:var(--green);color:var(--ivory);padding:clamp(4.5rem,9vw,8rem) var(--pad);overflow:hidden}
.about:before{content:"";position:absolute;right:-10vw;top:-10vw;width:40vw;height:40vw;border-radius:50%;border:1px solid rgba(230,199,122,.2);box-shadow:0 0 0 26px rgba(230,199,122,.04)}
.about-grid{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2.5rem,7vw,7rem);align-items:center;max-width:var(--max);margin:0 auto}
.about-img{aspect-ratio:3/4;border-radius:999px 999px 6px 6px;overflow:hidden;box-shadow:0 0 0 10px var(--green),0 0 0 11px var(--gold2);max-width:480px;justify-self:center;width:100%}
.about-img img{width:100%;height:112%;object-fit:cover}
.about-txt .sec-num{justify-content:flex-start}.about-txt .big{text-align:left;margin-bottom:1.5rem;color:var(--ivory)}
.about-txt>p{color:rgba(251,248,241,.78);font-size:1.05rem;max-width:52ch;margin-bottom:2.4rem}
.pts{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}
.pts li{border-top:1px solid rgba(230,199,122,.45);padding-top:1.1rem}
.pts li span{font-family:var(--display);font-style:italic;color:var(--gold2);font-size:1.3rem}.pts li b{display:block;font-family:var(--cap);font-weight:500;letter-spacing:.14em;text-transform:uppercase;font-size:.8rem;margin:.2rem 0 .4rem;color:var(--ivory)}
.pts li p{font-size:.9rem;color:rgba(251,248,241,.68);line-height:1.55}

/* contact */
.contact{text-align:center;padding:clamp(4.5rem,9vw,8rem) var(--pad);background:radial-gradient(80% 100% at 50% 0,#fff,var(--pearl));display:flex;flex-direction:column;align-items:center}
.ct-seal{width:110px;height:110px;border-radius:50%;margin-bottom:2rem;box-shadow:0 14px 30px -14px rgba(15,42,36,.5)}
.huge{font-size:clamp(2.3rem,6vw,5.2rem);margin-bottom:2rem}
.phone{font-family:var(--display);font-style:italic;font-weight:500;font-size:clamp(1.9rem,4.4vw,3.4rem);padding:.1em .1em .15em}
.ct-mail{margin:.5rem 0 2rem}.ct-mail a{color:var(--green);border-bottom:1px solid var(--gold);padding-bottom:2px}
.ct-btns{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}

/* footer */
footer{background:var(--green);color:rgba(251,248,241,.8);padding:3.5rem var(--pad) 2rem;text-align:center}
.f-top{display:grid;justify-items:center;gap:1rem;padding-bottom:2rem;border-bottom:1px solid rgba(230,199,122,.3)}
footer .brand{margin:0;width:96px;height:96px;box-shadow:0 0 0 4px var(--green),0 0 0 5px var(--gold2)}
.slogan{font-family:var(--display);font-style:italic;font-size:1.5rem;padding:.1em .2em}
.f-bot{display:flex;flex-wrap:wrap;gap:.6rem 2.2rem;justify-content:center;padding-top:1.6rem;font-size:.86rem}
.f-bot a{color:var(--gold2);border-bottom:1px solid rgba(230,199,122,.4)}
.wa-float{position:fixed;right:1.2rem;bottom:1.2rem;z-index:90;width:58px;height:58px;border-radius:50%;background:var(--foil);display:grid;place-items:center;color:var(--green);box-shadow:0 12px 26px -8px rgba(15,42,36,.55);transition:transform .5s var(--ease)}
.wa-float:hover{transform:scale(1.08) rotate(-6deg)}.wa-float svg{width:28px;height:28px}
.wa-float:before{content:"";position:absolute;inset:0;border-radius:50%;border:1px solid var(--gold);animation:pulse 2.4s ease-out infinite}
@keyframes pulse{from{transform:scale(1);opacity:.9}to{transform:scale(1.6);opacity:0}}

/* scroll anim initial states handled by gsap */

/* busca */
.cat-body mark,.sug mark,.sh-list mark{background:rgba(230,199,122,.55);color:inherit;border-radius:2px;padding:0 .06em}
.cs-wrap{position:relative}
.sug{position:absolute;top:calc(100% + 6px);left:0;width:min(440px,calc(100vw - 2rem));z-index:60;background:#fff;border:1px solid var(--line);border-radius:4px;box-shadow:0 22px 50px -18px rgba(15,42,36,.4);max-height:min(70vh,560px);overflow-y:auto;overscroll-behavior:contain}
.sug[hidden]{display:none}.sug ul{margin:0;padding:.35rem 0}
.sg-p a,.sh-p a{display:flex;align-items:center;gap:.75rem;padding:.5rem .8rem;color:var(--ink)}
.sg-p a:hover,.sg-p a.on{background:var(--pearl)}
.sg-p img,.sh-p img{width:48px;height:48px;object-fit:cover;border-radius:3px;flex:none;background:var(--pearl)}
.sg-t{flex:1;min-width:0;font:500 .82rem/1.3 var(--sans);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sg-t small{display:block;font-weight:400;font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold3);margin-top:.15rem}
.sg-p b,.sh-p b{font:600 .8rem var(--display);white-space:nowrap;color:var(--green)}
.sg-cats{display:flex;flex-wrap:wrap;gap:.4rem;padding:.6rem .8rem;border-top:1px solid var(--line)}
.sg-cats button{background:var(--pearl);border:0;border-radius:999px;padding:.35rem .75rem;font:500 .64rem var(--sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;color:var(--green)}
.sg-cats sup{color:var(--gold3);font-size:.58rem}
.sg-all{display:block;width:100%;background:var(--green);color:var(--gold2);border:0;padding:.85rem;font:600 .66rem var(--cap);letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.sg-none{padding:1rem .9rem;font-size:.82rem;color:var(--mute);line-height:1.5}.sg-none a{color:var(--green);border-bottom:1px solid var(--gold)}
.no-res{background:#fff;border:1px solid var(--line);border-radius:4px;padding:2.2rem 1.5rem;text-align:center;max-width:560px;margin:0 auto}
.no-res .nr-t{font-family:var(--display);font-size:1.6rem;color:var(--green);margin-bottom:.5rem;overflow-wrap:anywhere}
.no-res p{font-size:.92rem;color:var(--mute);line-height:1.6}
.nr-b{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;align-items:center;margin-top:1.3rem}.nr-wa{display:inline-flex;width:auto;padding-left:1.4rem;padding-right:1.4rem}
.sh-list .sh-sec{border:0;padding:.9rem .6rem .35rem;font:500 .62rem var(--cap);letter-spacing:.26em;text-transform:uppercase;color:var(--gold3)}
.sh-list .sh-sec sup{letter-spacing:0;color:var(--green)}
.sh-p a{padding:.6rem .4rem}
.sh-none{border:0!important;padding:1.4rem .6rem;text-align:center}.sh-none p{font-family:var(--display);font-size:1.4rem;overflow-wrap:anywhere}.sh-none span{display:block;font-size:.85rem;color:var(--mute);margin:.4rem 0 1rem}
.sh-wa{display:inline-flex;align-items:center;gap:.5rem;background:var(--green);color:var(--gold2);border-radius:2px;padding:.85rem 1.3rem;font:600 .66rem var(--cap);letter-spacing:.14em;text-transform:uppercase}.sh-wa svg{width:16px;height:16px}

/* detalhe */
.pd{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:2rem}
.pd[hidden]{display:none}
.pd-back{position:absolute;inset:0;background:rgba(10,28,23,.78);backdrop-filter:blur(4px)}
.pd-box{position:relative;background:var(--ivory);width:min(1120px,100%);max-height:calc(100vh - 4rem);max-height:min(90dvh,calc(100dvh - 4rem));border-radius:4px;border:1px solid var(--gold);display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:minmax(0,1fr);overflow:hidden;box-shadow:0 30px 80px -30px rgba(0,0,0,.7);animation:pdin .7s var(--ease)}
@keyframes pdin{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}
.pd-x{position:absolute;top:.8rem;right:.8rem;z-index:3;width:44px;height:44px;border-radius:50%;border:1px solid var(--gold);background:#fff;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--green)}
.pd-gal{background:#fff;display:flex;flex-direction:column;min-height:0;padding:1rem;gap:.7rem;overflow:hidden}
.pd-main{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;max-height:calc(100dvh - 12rem)}
.pd-main img{max-width:100%;max-height:100%;object-fit:contain}
.pd-nav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:0;background:rgba(15,42,36,.82);color:var(--gold2);font-size:1.6rem;line-height:1;cursor:pointer}
.pd-nav[hidden]{display:none}.pd-prev{left:.4rem}.pd-next{right:.4rem}
.pd-cnt{position:absolute;bottom:.4rem;left:50%;transform:translateX(-50%);font-size:.66rem;letter-spacing:.12em;background:rgba(251,248,241,.94);padding:.2rem .6rem;border-radius:99px;color:var(--green)}
.pd-thumbs{display:flex;gap:.45rem;overflow-x:auto;padding-bottom:.2rem}
.pd-thumbs button{flex:0 0 64px;height:64px;padding:0;border:1px solid rgba(184,137,58,.25);border-radius:3px;background:#fff;cursor:pointer;overflow:hidden}
.pd-thumbs button.on{border:2px solid var(--gold)}.pd-thumbs img{width:100%;height:100%;object-fit:cover}
.pd-info{padding:2.4rem 2.2rem 2rem;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;max-height:calc(100vh - 4rem);max-height:min(90dvh,calc(100dvh - 4rem));outline:none;scrollbar-width:thin;scrollbar-color:var(--gold) transparent}
.pd-info::-webkit-scrollbar{width:8px}.pd-info::-webkit-scrollbar-thumb{background:var(--gold);border-radius:8px}
.pd-cat{font-family:var(--cap);font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;color:var(--gold3);margin:0 0 .6rem}
.pd-t{font-family:var(--display);font-weight:500;font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1.15;margin:0 3rem .6rem 0;color:var(--green)}
.pd-cod{font-family:var(--cap);font-size:.7rem;letter-spacing:.16em;color:var(--gold3);margin:0 0 .9rem}
.pd-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem .7rem;margin:0 0 1.3rem}
.pd-price strong{font:600 1.9rem var(--display);color:var(--green)}.pd-price s{color:#9A9F96;font-size:.95rem}
.pd-price em{font-style:normal;font-size:.7rem;font-weight:600;background:var(--foil);color:var(--green);padding:.18rem .55rem;border-radius:999px;letter-spacing:.06em}
.pd-price.pc-ask strong{font:500 .9rem var(--cap);letter-spacing:.2em;text-transform:uppercase;color:var(--gold3)}
.pd-wa{display:flex;align-items:center;justify-content:center;gap:.6rem;background:var(--green);color:var(--gold2);border-radius:2px;padding:1.05rem 1.2rem;font:600 .72rem var(--cap);letter-spacing:.18em;text-transform:uppercase;transition:background .4s}
.pd-wa:hover{background:var(--green3)}.pd-wa svg{width:18px;height:18px}
.pd-share{margin:.6rem 0 1.6rem;width:100%;background:none;border:1px solid var(--line);border-radius:2px;padding:.8rem;font:500 .66rem var(--cap);letter-spacing:.16em;text-transform:uppercase;color:var(--gold3);cursor:pointer}
.pd-desc{white-space:pre-line;font-size:.95rem;line-height:1.65;color:#37413B;border-top:1px solid var(--line);padding-top:1.2rem;overflow-wrap:anywhere}
.pd-note{font-size:.78rem;color:var(--mute);margin-top:1.4rem}
@media(max-width:860px){.pd{padding:0}.pd-box{grid-template-columns:1fr;max-height:100dvh;height:100dvh;border-radius:0;border:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:block}
 .pd-main{max-height:none;aspect-ratio:1/1}.pd-gal{padding:.6rem;overflow:visible}.pd-info{overflow:visible;max-height:none;padding:1.4rem var(--gutter) 2.4rem}.pd-x{position:fixed;background:rgba(255,255,255,.95)}}

/* responsive */
@media(max-width:1100px){
 .top{grid-template-columns:44px 1fr 44px;gap:0;padding:0 1rem}.top nav.n1,.n2{display:none}
 .top .menu{display:block;grid-column:1;grid-row:1}.brand{grid-column:2;grid-row:1;justify-self:center;width:72px;height:72px;margin-top:16px}
 .mnav{position:fixed;inset:0;z-index:-1;background:var(--green);flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:calc(var(--hh) + 1rem) 1rem 2rem;clip-path:circle(0% at 50% 4%);visibility:hidden;transition:clip-path .9s var(--ease),visibility 0s .9s}.top .mnav{display:flex}
 .top.open .mnav{clip-path:circle(150% at 50% 4%);visibility:visible;transition:clip-path .9s var(--ease)}
 .top.open{background:var(--green);backdrop-filter:none}.top.open .menu span{background:var(--gold2)}
 .top .mnav a{font-family:var(--display);font-style:italic;font-size:2rem;letter-spacing:0;text-transform:none;font-weight:400;color:var(--ivory);opacity:0;transform:translateY(16px);transition:opacity .6s,transform .6s var(--ease)}.top .mnav a:after{display:none}
 .top.open .mnav a{opacity:1;transform:none}.top.open .mnav a:nth-child(2){transition-delay:.12s}.top.open .mnav a:nth-child(3){transition-delay:.18s}.top.open .mnav a:nth-child(4){transition-delay:.24s}.top.open .mnav a:nth-child(5){transition-delay:.3s}.top.open .mnav a:nth-child(6){transition-delay:.36s}
 .top .mnav .mn-wa{font-family:var(--cap);font-style:normal;font-size:.8rem;letter-spacing:.24em;text-transform:uppercase;color:var(--green);font-weight:600;background:var(--foil);padding:1rem 1.6rem;border-radius:2px;margin-top:1rem}
 .top .mnav .mn-ig{font-family:var(--cap);font-style:normal;font-size:.76rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold2)}
 .hero{grid-template-columns:1fr;padding-top:calc(var(--hh) + 2.4rem);gap:4.2rem;text-align:center}.hero-visual{order:-1;width:min(78vw,420px)}.hero-content{max-width:620px}
 .hero{--sr:max(.8rem,calc(50vw - 245px));--st:calc(var(--hh) + 5rem);--ss:104px}
 .about-grid{grid-template-columns:1fr}.about-txt .sec-num{justify-content:center}.about-txt .big,.about-txt>p{text-align:center;margin-left:auto;margin-right:auto}
 .editorial{grid-template-columns:repeat(3,1fr)}
 .cat-layout{grid-template-columns:1fr;gap:1rem}.cat-side{display:none}
 .cat-mbar{display:flex;gap:.5rem;position:sticky;top:var(--hh);z-index:25;background:rgba(251,248,241,.96);padding:.7rem var(--gutter);margin:0 calc(var(--gutter)*-1);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
 .mb-cat{flex:1;min-width:0;display:flex;align-items:center;gap:.6rem;background:var(--green);color:var(--ivory);border:0;border-radius:2px;padding:.8rem 1.1rem;font:600 .66rem var(--cap);letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
 .mb-cat svg{width:18px;height:18px;color:var(--gold2);flex:none}.mb-cat b{margin-left:auto;font-weight:600;color:var(--gold2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:50%}
 .mb-search{flex:none;width:46px;height:46px;border-radius:50%;border:1px solid var(--gold);background:#fff;display:grid;place-items:center;cursor:pointer;color:var(--green)}.mb-search svg{width:20px;height:20px}
 .pgrid{grid-template-columns:repeat(3,1fr)}
 .cat-sheet{position:fixed;inset:0;height:100vh;height:100dvh;max-height:100dvh;overscroll-behavior:contain;z-index:200;background:var(--ivory);display:flex;flex-direction:column;padding:1rem var(--gutter) 1.2rem}
 .sh-head{display:flex;justify-content:space-between;align-items:center;padding:.4rem 0 1rem;border-bottom:1px solid var(--line)}
 .sh-head p{font-family:var(--display);font-style:italic;font-size:1.8rem}.sh-close{width:44px;height:44px;border-radius:50%;border:1px solid var(--gold);background:#fff;font-size:1rem;cursor:pointer}
 .sh-search{margin:1rem 0 .6rem;max-width:none}
 .sh-list{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto!important;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;padding-bottom:env(safe-area-inset-bottom)!important;margin:0;padding:0}
 .sh-list li{border-bottom:1px solid rgba(184,137,58,.2)}.sh-list button{padding:.95rem .6rem;font-size:.8rem;border-radius:0}
 .sh-go{margin-top:.8rem;background:var(--green);color:var(--gold2);border:0;border-radius:2px;padding:1rem;font:600 .7rem var(--cap);letter-spacing:.16em;text-transform:uppercase;cursor:pointer}.sh-go[hidden]{display:none}
}
@media(max-width:860px){.editorial{grid-template-columns:1fr;max-width:380px}.pts{grid-template-columns:1fr;text-align:left}}
@media(max-width:700px){
 :root{--hh:64px}.brand{width:64px;height:64px;margin-top:14px}
 .kicker{letter-spacing:.2em;font-size:.58rem;gap:.6rem}.kicker .ln{width:22px}
 .hero-title{font-size:clamp(2.3rem,10.5vw,3.4rem)}.hero{padding-bottom:3.5rem}
 .hero-meta{bottom:-2.9rem;gap:.6rem}.hm-name{display:none}.hero-visual:after{display:none}
 .pgrid{grid-template-columns:repeat(2,1fr);gap:.6rem}.pc-body{padding:.7rem .55rem .8rem}.pc-name{font-size:.88rem}.pc-btn{font-size:.56rem;letter-spacing:.1em;padding:.7rem .2rem}
 .pc-price strong{font-size:1.02rem}.pc-price s{font-size:.7rem}.pc-info{display:none}
 .cb-head{gap:.8rem;justify-content:space-between}.cb-head .cb-line{display:none}.cb-title{white-space:normal}
 .wa-float{width:52px;height:52px;right:.9rem;bottom:.9rem}.top-cta span{display:none}
 .btn,.btn-line{padding:1rem 1.4rem;font-size:.68rem}
}
@media(max-height:680px) and (min-width:1101px){.hero{padding-top:calc(var(--hh) + 2rem);padding-bottom:3.5rem}.hero-visual{width:min(100%,400px)}.orn{margin:1.1rem auto}.kicker{margin-bottom:1.2rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.preloader{display:none}.slide.on img{transform:scale(1.02)}.mq-track{transform:none}}

@keyframes cardin{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
