*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --pom:#8C1C2C;--pd:#5A1320;--ps:#A33245;
  --g:#D4A855;--gb:#E2BE78;--gm:#B8924A;
  --d1:#0F0D0C;--d2:#161312;--d3:#1C1917;--d4:#252220;--d5:#2E2B28;
  --iv:#F2ECE3;--iv7:rgba(242,236,227,.75);--iv4:rgba(242,236,227,.55);--iv15:rgba(242,236,227,.25);--iv08:rgba(242,236,227,.1);
  --rd:#2A1E20;--rm:#3D2A2E;
  --sf:'Playfair Display',Georgia,serif;--bd:'DM Sans',sans-serif;--ac:'Cormorant Garamond',Georgia,serif;--sc:'Pinyon Script',cursive;
}
html{scroll-behavior:smooth}
body{font-family:var(--bd);color:var(--iv);background:var(--d1);overflow-x:hidden;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6}

.pre{position:fixed;inset:0;background:var(--d1);z-index:9999;display:flex;align-items:center;justify-content:center;transition:opacity .8s,visibility .8s}
.pre.off{opacity:0;visibility:hidden}
.pre span{font-family:var(--ac);font-size:2rem;color:var(--g);letter-spacing:.3em;animation:glow 2s ease infinite}
@keyframes glow{0%,100%{opacity:.2}50%{opacity:1;text-shadow:0 0 40px rgba(212,168,85,.2)}}

nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;transition:all .4s}
nav.sc{background:rgba(15,13,12,.95);backdrop-filter:blur(25px);border-bottom:1px solid rgba(212,168,85,.06)}
.nl{font-family:var(--sc);font-size:1.6rem;font-weight:400;color:var(--g);text-decoration:none;letter-spacing:.01em;cursor:pointer}
.nav-cta{font-family:var(--bd);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;padding:.55rem 1.4rem;background:var(--g);color:var(--d1);border-radius:50px;cursor:pointer;text-decoration:none;transition:all .3s}
.nav-cta:hover{background:var(--gb);transform:translateY(-1px)}

.hero{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:5rem 1.8rem 4rem;background:linear-gradient(170deg,var(--pd) 0%,var(--pom) 50%,var(--pd) 100%);position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-30%;right:-20%;width:70vw;height:70vw;border-radius:50%;background:radial-gradient(circle,rgba(163,50,69,.3) 0%,transparent 55%);pointer-events:none}
.hero>*{position:relative;z-index:1}
.hero-can{max-width:180px;height:auto;margin-bottom:1.5rem;filter:drop-shadow(0 20px 40px rgba(0,0,0,.4)) drop-shadow(0 0 60px rgba(140,28,44,.2));animation:canIn 1s ease .2s forwards;opacity:0}
@keyframes canIn{from{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}
.hb{font-size:.5rem;letter-spacing:.4em;text-transform:uppercase;color:var(--g);margin-bottom:1.5rem;opacity:0;animation:fu .8s ease .3s forwards}
.hn{font-family:var(--sc);font-weight:400;font-size:clamp(4rem,11vw,8rem);color:var(--iv);line-height:.9;letter-spacing:.01em;opacity:0;animation:fu .8s ease .5s forwards}
.hcl{font-family:var(--sf);font-size:clamp(1rem,2.2vw,1.3rem);color:var(--iv);margin-top:1.5rem;opacity:0;animation:fu .8s ease .7s forwards}
.hsu{font-size:.88rem;color:var(--iv7);line-height:1.7;max-width:320px;margin:1rem auto 0;opacity:0;animation:fu .8s ease .9s forwards}
.hln{width:45px;height:1px;background:linear-gradient(90deg,transparent,var(--g),transparent);margin:2.8rem auto;opacity:0;animation:fu .8s ease 1.1s forwards}
.ht{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;opacity:0;animation:fu .8s ease 1.3s forwards;padding:0 .5rem}
.ht span{font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;color:var(--iv7)}
.ht span::before{content:'';display:inline-block;width:3px;height:3px;border-radius:50%;background:var(--g);margin-right:.5rem;vertical-align:middle}
.hbtns{margin-top:2.5rem;display:flex;gap:.7rem;flex-wrap:wrap;justify-content:center;opacity:0;animation:fu .8s ease 1.5s forwards}
.bg{font-family:var(--bd);font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;font-weight:500;padding:.75rem 1.8rem;border-radius:50px;text-decoration:none;display:inline-block;transition:all .4s;border:none;cursor:pointer}
.bg1{background:var(--g);color:var(--d1)}.bg1:hover{background:var(--gb);transform:translateY(-2px);box-shadow:0 8px 30px rgba(212,168,85,.2)}
.bg2{background:transparent;color:var(--iv);border:1px solid var(--iv15)}.bg2:hover{border-color:var(--g);color:var(--g)}
.scrl{position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);width:1px;height:30px;background:linear-gradient(to bottom,rgba(212,168,85,.4),transparent);opacity:0;animation:fu .8s ease 2s forwards;z-index:1}

.lb{font-size:.5rem;letter-spacing:.35em;text-transform:uppercase;font-weight:400;color:var(--g);margin-bottom:1.2rem}
.stitle{font-family:var(--sf);color:var(--iv);font-weight:500}
.gdiv{width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(212,168,85,.1),transparent);margin:0}

.prob{padding:6rem 1.5rem;background:var(--d2);text-align:center}
.prob h2{font-family:var(--sf);font-size:clamp(1.4rem,3vw,2rem);color:var(--iv);font-weight:500;margin-bottom:1.5rem}
.pq{font-family:var(--ac);font-size:clamp(1.05rem,2.3vw,1.3rem);color:var(--iv7);line-height:1.8;max-width:450px;margin:0 auto 1.5rem;font-style:italic}
.pans{font-family:var(--sf);font-size:1rem;color:var(--g);font-weight:500}

.sol{padding:6rem 1.5rem;background:var(--rd)}
.sol h2{font-size:clamp(1.5rem,3.5vw,2.2rem);text-align:center;margin-bottom:3rem}
.sg{display:grid;grid-template-columns:1fr;gap:1px;max-width:620px;margin:0 auto;background:rgba(212,168,85,.05);border:1px solid rgba(212,168,85,.05);border-radius:12px;overflow:hidden}
.sc{background:var(--rm);padding:1.6rem;transition:background .3s}
.sc:hover{background:rgba(70,48,52,.9)}
.sc h3{font-family:var(--sf);font-size:.88rem;color:var(--g);font-weight:500;margin-bottom:.25rem}
.sc p{font-size:.85rem;color:var(--iv7);line-height:1.65}
.sc .why{font-size:.75rem;color:var(--iv4);margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--iv08);line-height:1.55;font-style:italic}
@media(min-width:550px){.sg{grid-template-columns:1fr 1fr}}

/* JOURNEY TIMELINE */
.jrn{padding:6rem 1.5rem;background:linear-gradient(180deg,var(--d2) 0%,#1A1517 100%)}
.jrn h2{font-size:clamp(1.4rem,3.5vw,2rem);text-align:center;margin-bottom:.5rem}
.jrn .jsub{font-family:var(--ac);font-size:1rem;color:var(--iv4);text-align:center;font-style:italic;margin-bottom:3rem;max-width:440px;margin-left:auto;margin-right:auto}
.tl{max-width:580px;margin:0 auto;position:relative;padding-left:2.5rem}
.tl::before{content:'';position:absolute;left:.45rem;top:.5rem;bottom:.5rem;width:1px;background:linear-gradient(to bottom,var(--g),var(--pom),var(--g))}
.tl-item{position:relative;margin-bottom:2rem}
.tl-item:last-child{margin-bottom:0}
.tl-dot{position:absolute;left:-2.15rem;top:.15rem;width:9px;height:9px;border-radius:50%;border:1.5px solid var(--g);background:var(--d2);z-index:1}
.tl-item.active .tl-dot{background:var(--g);box-shadow:0 0 12px rgba(212,168,85,.3)}
.tl-when{font-family:var(--sf);font-size:.82rem;color:var(--g);font-weight:500;margin-bottom:.2rem}
.tl-title{font-family:var(--sf);font-size:.92rem;color:var(--iv);font-weight:500;margin-bottom:.3rem}
.tl-body{font-size:.85rem;color:var(--iv7);line-height:1.65}
.tl-body strong{color:var(--iv);font-weight:500}
.tl-note{font-size:.75rem;color:var(--iv4);margin-top:.4rem;font-style:italic;line-height:1.5}

/* Journey collapsible */
.tl-hidden{display:none}
.tl.expanded .tl-hidden{display:block}
.tl-toggle{display:block;margin:1.5rem auto 0;background:none;border:1px solid var(--g);color:var(--g);font-family:var(--bd);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;padding:.6rem 1.5rem;border-radius:50px;cursor:pointer;transition:all .3s}
.tl-toggle:hover{background:var(--g);color:var(--d1)}
.tl.expanded+.tl-toggle{display:none}

.ing{padding:6rem 1.5rem;background:var(--d1)}
.ing h2{font-size:clamp(1.4rem,3.5vw,2rem);text-align:center;margin-bottom:.5rem}
.isub{font-family:var(--ac);font-size:.92rem;color:var(--iv4);text-align:center;font-style:italic;margin-bottom:2.5rem}
.ig{display:grid;grid-template-columns:1fr;gap:.5rem;max-width:620px;margin:0 auto}
@media(min-width:620px){.ig{grid-template-columns:1fr 1fr}}
.ic{border:1px solid var(--iv08);border-radius:10px;overflow:hidden;transition:border-color .3s}
.ic:hover{border-color:rgba(212,168,85,.12)}
.ich{display:flex;justify-content:space-between;align-items:center;padding:1rem 1rem;cursor:pointer;min-height:48px}
.ich:hover{background:rgba(242,236,227,.02)}
.ich h3{font-family:var(--sf);font-size:.82rem;color:var(--iv);font-weight:500}
.ich .cnt{font-size:.55rem;color:var(--iv4)}
.ich .ch{color:var(--g);font-size:.55rem;transition:transform .3s;margin-left:.4rem}
.icb{max-height:0;overflow:hidden;transition:max-height .4s}
.ic.op .icb{max-height:500px}.ic.op .ch{transform:rotate(180deg)}
.ii{padding:.4rem 1rem;display:flex;justify-content:space-between;border-top:1px solid rgba(242,236,227,.03)}
.ii:first-child{border-top:1px solid var(--iv08)}
.iin{font-size:.72rem;color:var(--iv7)}.iid{font-size:.66rem;color:var(--g)}
.icb .ii:last-child{padding-bottom:.85rem}

.sci{padding:6rem 1.5rem;background:var(--d3)}
.sci h2{font-size:clamp(1.4rem,3.5vw,2rem);text-align:center;margin-bottom:.5rem}
.sci .ssub{font-family:var(--ac);font-size:1rem;color:var(--iv4);text-align:center;font-style:italic;margin-bottom:3rem;max-width:420px;margin-left:auto;margin-right:auto}
.sci-section{max-width:650px;margin:0 auto 3rem}
.sci-section h3{font-family:var(--sf);font-size:clamp(1.1rem,2.5vw,1.4rem);color:var(--g);font-weight:500;margin-bottom:1rem;text-align:center}
.sci-section p{font-size:.8rem;color:var(--iv7);line-height:1.7;margin-bottom:.8rem}
.sci-section .highlight{color:var(--iv);font-weight:500}
.sci-ref{font-size:.72rem;color:var(--iv4);font-style:italic;padding:.4rem 0;border-top:1px solid var(--iv08);margin-top:.3rem}

.absorb-grid{display:grid;grid-template-columns:1fr;gap:.7rem;max-width:680px;margin:0 auto 3rem}
@media(min-width:550px){.absorb-grid{grid-template-columns:1fr 1fr}}
@media(min-width:880px){.absorb-grid{grid-template-columns:repeat(3,1fr)}}
.ab-card{background:var(--d4);border:1px solid var(--iv08);border-radius:12px;padding:1.4rem;transition:all .3s}
.ab-card:hover{transform:translateY(-2px);border-color:rgba(212,168,85,.12);box-shadow:0 6px 25px rgba(0,0,0,.2)}
.ab-card .num{font-family:var(--ac);font-size:2rem;color:var(--ps);font-weight:300;line-height:1;margin-bottom:.2rem}
.ab-card h4{font-family:var(--sf);font-size:.82rem;color:var(--iv);font-weight:500;margin-bottom:.2rem}
.ab-card p{font-size:.8rem;color:var(--iv4);line-height:1.55}
.ab-card .ref{font-size:.65rem;color:var(--iv4);margin-top:.35rem;font-style:italic;opacity:.5}

.cond-grid{display:grid;grid-template-columns:1fr;gap:.7rem;max-width:650px;margin:0 auto 3rem}
@media(min-width:600px){.cond-grid{grid-template-columns:1fr 1fr}}
.cond-card{background:var(--rd);border:1px solid rgba(212,168,85,.06);border-radius:12px;padding:1.5rem;transition:all .3s}
.cond-card:hover{border-color:rgba(212,168,85,.12)}
.cond-card h4{font-family:var(--sf);font-size:.92rem;color:var(--g);font-weight:500;margin-bottom:.5rem}
.cond-card p{font-size:.85rem;color:var(--iv7);line-height:1.6;margin-bottom:.4rem}
.cond-card .refs{font-size:.7rem;color:var(--iv4);font-style:italic;border-top:1px solid var(--iv08);padding-top:.5rem;margin-top:.5rem;line-height:1.6}

.ben-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;max-width:500px;margin:0 auto 3rem}
@media(min-width:500px){.ben-grid{grid-template-columns:repeat(3,1fr)}}
.ben{background:var(--d4);border:1px solid var(--iv08);border-radius:10px;padding:1.2rem .8rem;text-align:center;transition:border-color .3s}
.ben:hover{border-color:rgba(212,168,85,.15)}
.ben-icon{font-size:1.5rem;margin-bottom:.4rem}
.ben h4{font-family:var(--sf);font-size:.78rem;color:var(--iv);font-weight:500;margin-bottom:.2rem}
.ben p{font-size:.72rem;color:var(--iv4);line-height:1.4}

.efsa{padding:5rem 1.5rem;background:var(--rd);text-align:center;border-top:1px solid rgba(212,168,85,.08);border-bottom:1px solid rgba(212,168,85,.08)}
.efsa h2{font-family:var(--sf);font-size:clamp(1.2rem,2.5vw,1.5rem);color:var(--iv);font-weight:500;margin-bottom:2rem}
.el{max-width:500px;margin:0 auto;text-align:left}
.ei{padding:.7rem 0;border-bottom:1px solid var(--iv08);font-size:.85rem;color:var(--iv7);line-height:1.55;display:flex;gap:.6rem;align-items:baseline}
.ei::before{content:'';width:3px;height:3px;border-radius:50%;background:var(--g);flex-shrink:0;margin-top:.45rem}

.rit{padding:6rem 1.5rem;background:var(--rm);text-align:center}
.rit h2{font-size:clamp(1.4rem,3.5vw,2rem);text-align:center;margin-bottom:3rem}
.rs{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap;max-width:580px;margin:0 auto}
.rst{flex:1;min-width:150px;max-width:185px}
.rn{font-family:var(--ac);font-size:3.2rem;color:var(--ps);font-weight:300;line-height:1}
.rw{font-family:var(--sf);font-size:1.05rem;color:var(--iv);font-weight:600;margin:.15rem 0 .3rem}
.rd2{font-size:.74rem;color:var(--iv4);line-height:1.55}

.pri{padding:6rem 1.5rem;background:var(--d3);text-align:center;border-top:1px solid rgba(212,168,85,.08)}
.pri h2{font-size:clamp(1.4rem,3.5vw,2rem);text-align:center;margin-bottom:2.5rem}
.pg{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;max-width:660px;margin:0 auto}
@media(max-width:540px){.pg{grid-template-columns:1fr}}
.pc.yr{grid-column:1/-1;background:var(--d1);border:1.5px solid var(--g);border-radius:12px}
.pc.yr .pam{font-size:2.4rem}
.yr-bdg{background:linear-gradient(135deg,var(--g),var(--gb))!important;letter-spacing:.18em!important}
.pc{background:var(--d4);border:1px solid var(--iv08);border-radius:12px;padding:1.4rem 1rem;position:relative;transition:all .3s}
.pc:hover{transform:translateY(-2px);box-shadow:0 5px 20px rgba(0,0,0,.2)}
.pc.ft{border-color:var(--pom);background:var(--rd)}
.pbdg{position:absolute;top:-8px;right:12px;background:var(--g);color:var(--d1);font-size:.5rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;padding:.2rem .7rem;border-radius:50px}
.pn{font-family:var(--sf);font-size:.92rem;color:var(--iv);font-weight:500;margin-bottom:.15rem}
.pam{font-family:var(--ac);font-size:2rem;color:var(--g);font-weight:300;line-height:1.1}
.pp{font-size:.78rem;color:var(--iv7);margin:.2rem 0;font-weight:500}
.pd{font-size:.7rem;color:var(--iv4)}
.pb{display:inline-block;margin-top:.8rem;padding:.55rem 1.4rem;background:var(--pom);color:var(--iv);border:none;border-radius:50px;font-size:.65rem;letter-spacing:.14em;text-transform:uppercase;font-weight:500;cursor:pointer;transition:all .3s}
.pb:hover{background:var(--ps)}
.taster-note{font-size:.72rem;color:var(--iv4);line-height:1.5;margin-top:.5rem;font-style:italic}
.pri-sub{font-family:var(--ac);font-size:.92rem;color:var(--iv4);text-align:center;font-style:italic;margin-bottom:2.5rem;max-width:440px;margin-left:auto;margin-right:auto}

/* TRUST SECTION */
.trust{max-width:460px;margin:2rem auto 0;display:grid;grid-template-columns:1fr;gap:.5rem}
.trust-item{display:flex;align-items:baseline;gap:.6rem;font-size:.78rem;color:var(--iv4);line-height:1.5}
.trust-icon{color:var(--g);font-size:.78rem;flex-shrink:0}

.faq{padding:6rem 1.5rem;background:var(--d2)}
.faq h2{font-size:clamp(1.4rem,3.5vw,2rem);text-align:center;margin-bottom:2.5rem}
.fl{max-width:560px;margin:0 auto}
.fi{border-bottom:1px solid var(--iv08)}
.fq{display:flex;justify-content:space-between;align-items:center;padding:1.1rem 0;cursor:pointer;gap:.8rem;min-height:48px}
.fq h3{font-family:var(--sf);font-size:.9rem;color:var(--iv);font-weight:500;flex:1}
.fq .ch{color:var(--g);font-size:.6rem;transition:transform .3s;flex-shrink:0}
.fa{max-height:0;overflow:hidden;transition:max-height .4s}
.fa p{font-size:.85rem;color:var(--iv4);line-height:1.7;padding:0 0 1.1rem}
.fi.op .fa{max-height:400px}.fi.op .ch{transform:rotate(180deg)}

.wl{padding:6rem 1.5rem;background:linear-gradient(160deg,var(--pd),var(--pom));text-align:center;position:relative;overflow:hidden}
.wl::before{content:'';position:absolute;top:-20%;right:-10%;width:45vw;height:45vw;border-radius:50%;background:radial-gradient(circle,rgba(212,168,85,.04) 0%,transparent 50%);pointer-events:none}
.wl>*{position:relative;z-index:1}
.wl h2{font-family:var(--sf);font-size:clamp(1.4rem,3.5vw,2rem);color:var(--iv);font-weight:500;margin-bottom:.4rem}
.ws{font-size:.83rem;color:var(--iv7);margin-bottom:2rem}
.wf{display:flex;gap:.5rem;max-width:370px;margin:0 auto;flex-wrap:wrap;justify-content:center}
.wi{flex:1;min-width:190px;padding:.75rem 1.2rem;border:1px solid rgba(212,168,85,.18);border-radius:50px;font-family:var(--bd);font-size:.83rem;background:rgba(242,236,227,.06);color:var(--iv);outline:none;transition:all .3s}
.wi:focus{border-color:var(--g);background:rgba(242,236,227,.1)}.wi::placeholder{color:var(--iv4)}
.wbt{padding:.75rem 2rem;background:var(--g);color:var(--d1);border:none;border-radius:50px;font-family:var(--bd);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;cursor:pointer;transition:all .3s}
.wbt:hover{background:var(--gb);transform:translateY(-1px)}
.wn{font-size:.7rem;color:var(--iv4);margin-top:1rem}
.wok{display:none;font-family:var(--ac);font-size:1.2rem;color:var(--g);font-style:italic}

footer{padding:3rem 1.5rem 1.5rem;background:var(--d1);text-align:center;border-top:1px solid var(--iv08)}
.ffl{font-family:var(--sc);font-size:1.8rem;font-weight:400;color:var(--g);margin-bottom:.25rem}
.fft{font-family:var(--ac);font-size:.78rem;color:var(--iv15);font-style:italic;margin-bottom:1.5rem}
.ffn{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.2rem}
.ffn a{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--iv4);text-decoration:none;transition:color .3s;cursor:pointer}.ffn a:hover{color:var(--g)}
.ffl2{font-size:.65rem;color:rgba(242,236,227,.35);line-height:2;max-width:350px;margin:0 auto}

@keyframes fu{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.rv.v{opacity:1;transform:none}

/* BACK TO TOP */
.btt{position:fixed;bottom:1.5rem;right:1.5rem;width:40px;height:40px;background:var(--g);color:var(--d1);border:none;border-radius:50%;font-size:1.1rem;cursor:pointer;z-index:90;opacity:0;visibility:hidden;transition:all .3s;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px rgba(0,0,0,.3)}
.btt.show{opacity:1;visibility:visible}
.btt:hover{background:var(--gb);transform:translateY(-2px)}