@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400 700;font-display:swap;src:url('../fonts/playfair-normal.woff2') format('woff2')}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400 500;font-display:swap;src:url('../fonts/playfair-italic.woff2') format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300 500;font-display:swap;src:url('../fonts/cormorant-normal.woff2') format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:300 400;font-display:swap;src:url('../fonts/cormorant-italic.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:300 700;font-display:swap;src:url('../fonts/inter-normal.woff2') format('woff2')}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --navy:#1C3A52;
  --navy-mid:#28516F;
  --deep:#0B1B26;
  --gold:#D9A441;
  --gold-light:#F0C878;
  --cream:#FBF6EC;
  --white:#FFFDF8;
  --text:#1A2226;
  --text-muted:#5C6B72;
  --border:rgba(217,164,65,0.25);
}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background:var(--white);color:var(--text);overflow-x:hidden;cursor:none}

/* CURSOR */
.cur{position:fixed;width:8px;height:8px;background:var(--gold);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:transform .15s ease}
.cur-f{position:fixed;width:36px;height:36px;border:1px solid var(--gold);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width .3s,height .3s,opacity .3s;opacity:.55}

/* NAV */
nav{position:fixed;inset:0 0 auto 0;z-index:1000;padding:1.5rem 4rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;transition:all .5s ease}
nav.on{background:rgba(251,246,236,.96);backdrop-filter:blur(18px);padding:.8rem 4rem;box-shadow:0 1px 0 var(--border)}
.logo{display:flex;align-items:center;gap:.7rem;text-decoration:none;margin-right:auto}
.logo img{height:44px;width:44px;object-fit:contain;transition:height .5s,width .5s}
nav.on .logo img{height:36px;width:36px}
.logo-txt{font-family:'Playfair Display',serif;font-size:.95rem;font-weight:500;color:#fff;letter-spacing:.02em;line-height:1.25;transition:color .5s}
nav.on .logo-txt{color:var(--navy)}
.nav-ul{display:flex;align-items:center;gap:2.2rem;list-style:none}
.nav-ul a{font-size:.8rem;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.85);text-decoration:none;transition:color .3s}
nav.on .nav-ul a{color:var(--text-muted)}
.nav-ul a:hover,nav.on .nav-ul a:hover{color:var(--gold)}
.nav-btn{padding:.6rem 1.35rem;border:1px solid rgba(255,255,255,.5);border-radius:2px;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:#fff;text-decoration:none;transition:all .3s;white-space:nowrap}
.nav-btn:hover{background:rgba(255,255,255,.12)}
nav.on .nav-btn{border-color:var(--navy);color:var(--navy)}
nav.on .nav-btn:hover{background:var(--navy);color:#fff}

/* LANG SWITCHER */
.lang-switcher{position:relative}
.lang-trigger{padding:.5rem .9rem;border:1px solid rgba(255,255,255,.4);border-radius:2px;font-size:.72rem;font-weight:600;letter-spacing:.12em;color:#fff;background:none;cursor:none;transition:all .3s}
nav.on .lang-trigger{border-color:var(--border);color:var(--text-muted)}
.lang-trigger:hover{border-color:var(--gold);color:var(--gold)}
.lang-menu{position:absolute;top:calc(100% + .7rem);left:50%;transform:translateX(-50%);min-width:150px;background:var(--white);border:1px solid var(--border);border-radius:2px;box-shadow:0 20px 50px rgba(11,27,38,.18);padding:.35rem;display:none;flex-direction:column;z-index:1001}
.lang-switcher.open .lang-menu{display:flex}
.lang-menu button{width:100%;text-align:left;padding:.55rem .7rem;font-family:'Inter',sans-serif;font-size:.82rem;color:var(--text-muted);background:none;border:none;cursor:none;border-radius:2px;transition:background .2s,color .2s}
.lang-menu button:hover{background:var(--cream);color:var(--navy)}
.lang-menu li[aria-selected="true"] button{color:var(--gold);font-weight:600}

/* HERO */
.hero{position:relative;height:100vh;min-height:680px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:url('../img/hero/hero-guaira.jpg') center 38%/cover;transform:scale(1.06);transition:transform 7s ease-out}
.hero-bg.rdy{transform:scale(1)}
.hero-ov{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(8,17,24,.35) 0%,rgba(8,17,24,.4) 38%,rgba(8,20,28,.85) 72%,var(--deep) 100%)}
.hero-c{position:relative;text-align:center;color:#fff;padding:0 2rem;max-width:820px}
.hero-logo{width:64px;height:64px;object-fit:contain;margin:0 auto 1.4rem;display:block;border-radius:6px;opacity:0;transform:translateY(18px) scale(.92);animation:fu 1s .1s forwards;filter:drop-shadow(0 6px 22px rgba(0,0,0,.35))}
.eyebrow{font-size:.8rem;font-weight:400;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-light);margin-bottom:1.4rem;opacity:0;transform:translateY(18px);animation:fu 1s .3s forwards}
.eyebrow-break{display:none}
.hero-h1{font-family:'Playfair Display',serif;font-size:clamp(3rem,7vw,6rem);font-weight:400;line-height:1.08;letter-spacing:-.01em;margin-bottom:1.4rem;opacity:0;transform:translateY(28px);animation:fu 1.2s .5s forwards}
.hero-h1 em{font-style:italic;color:var(--gold-light)}
.hero-sub{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:300;font-style:italic;color:rgba(255,255,255,.86);margin-bottom:2.6rem;line-height:1.5;opacity:0;transform:translateY(18px);animation:fu 1s .8s forwards}
.hero-btns{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;opacity:0;transform:translateY(18px);animation:fu 1s 1s forwards}
.btn-g{padding:.9rem 2.4rem;background:var(--gold);color:#221703;font-size:.85rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border-radius:2px;transition:all .3s}
.btn-g:hover{background:var(--gold-light);transform:translateY(-2px)}
.btn-o{padding:.9rem 2.4rem;border:1px solid rgba(255,255,255,.5);color:#fff;font-size:.85rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border-radius:2px;transition:all .3s}
.btn-o:hover{background:rgba(255,255,255,.12)}
.scroll-ind{position:absolute;bottom:2.2rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.45rem;color:rgba(255,255,255,.55);font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;opacity:0;animation:fi 1s 1.5s forwards}
.scroll-ln{width:1px;height:48px;background:linear-gradient(to bottom,rgba(255,255,255,.55),transparent);animation:sl 2s ease-in-out infinite}

/* BAND */
.band{background:var(--deep);padding:4.5rem 0 5rem}
.band-inner{max-width:680px;margin:0 auto;text-align:center}
.band-q{font-family:'Cormorant Garamond',serif;font-size:clamp(1.4rem,3vw,2.3rem);font-weight:300;font-style:italic;color:var(--gold-light);line-height:1.55;margin-bottom:1.5rem}
.orn{display:flex;align-items:center;justify-content:center;gap:1.4rem;margin:.8rem auto}
.orn-l{height:1px;width:70px;background:linear-gradient(to right,transparent,var(--gold))}
.orn-r{height:1px;width:70px;background:linear-gradient(to left,transparent,var(--gold))}
.orn-start{justify-content:flex-start}
.orn-m1{margin:1.2rem 0 1.8rem}
.orn-m2{margin:1.2rem 0 2.2rem}
.orn-l-sm{width:40px}
.band-cite{font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.4);font-style:normal}

/* SECTIONS */
section,.credits{padding:7rem 0}
.wrap{max-width:1200px;margin:0 auto;padding:0 4rem}
.lbl{font-size:.78rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:1.1rem}
.sec-h{font-family:'Playfair Display',serif;font-size:clamp(2.1rem,4vw,3.2rem);font-weight:400;line-height:1.18;color:var(--navy)}
.sec-h em{font-style:italic;color:var(--text)}
.sec-h-light{color:var(--gold-light)}
.sec-h-light em{color:#fff}

/* ABOUT */
.about{background:var(--cream)}
.about-g{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.img-wrap{position:relative}
.img-wrap img{width:100%;height:560px;object-fit:cover;border-radius:2px;display:block}
.img-frame{position:absolute;top:-18px;left:-18px;right:18px;bottom:18px;border:1px solid rgba(217,164,65,.4);border-radius:2px;pointer-events:none}
.img-badge{position:absolute;bottom:-1.2rem;right:-1.2rem;width:120px;height:120px;background:var(--gold);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.15rem;padding:0 .6rem}
.img-badge b{font-family:'Playfair Display',serif;font-size:1.18rem;font-weight:600;color:var(--deep);line-height:1.15}
.img-badge small{font-size:.56rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--deep);margin-top:.2rem}
.about-g p{font-family:'Cormorant Garamond',serif;font-size:1.18rem;line-height:1.85;color:var(--text-muted);margin-bottom:1.3rem}
.about-g strong{color:var(--navy);font-weight:700;font-style:normal}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.6rem;padding-top:2.3rem;border-top:1px solid var(--border)}
.stat-item{text-align:center}
.stat-v{font-family:'Playfair Display',serif;font-size:1.32rem;font-weight:500;color:var(--navy);display:block;line-height:1.25}
.stat-l{font-size:.72rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-top:.35rem;display:block}

/* AYUDA / MENU-STYLE LIST */
.menu-sec{background:var(--white)}
.menu-hd{text-align:center;max-width:600px;margin:0 auto 3.5rem}
.menu-hd p{font-family:'Cormorant Garamond',serif;font-size:1.18rem;font-style:italic;color:var(--text-muted);margin-top:.9rem;line-height:1.7}
.tabs{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-bottom:2.5rem}
.tab{padding:.65rem 1.5rem;border:1px solid var(--border);background:transparent;font-family:'Inter',sans-serif;font-size:.8rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);cursor:none;border-radius:2px;transition:all .3s}
.tab.on,.tab:hover{background:var(--navy);border-color:var(--navy);color:#fff}
.panel{display:none}
.panel.on{display:block;animation:fi .35s ease}
.mgrid{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}
.mi{background:var(--white);border:1px solid var(--border);border-radius:6px;overflow:hidden;flex:1 1 300px;max-width:340px;text-align:center;transition:background .25s,border-color .25s,transform .3s}
.mi:hover{background:var(--cream);border-color:var(--gold);transform:translateY(-3px)}
.mi-img{width:100%;aspect-ratio:16/10;overflow:hidden;background:var(--cream)}
.mi-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.mi:hover .mi-img img{transform:scale(1.06)}
.mi-n{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:500;color:var(--text);line-height:1.3;margin:1.3rem 1.6rem .5rem;display:block}
.mi-d{font-family:'Cormorant Garamond',serif;font-size:1.02rem;font-style:italic;color:var(--text-muted);line-height:1.6;padding:0 1.6rem 1.6rem}
.menu-note{text-align:center;margin-top:2.3rem;padding:1.5rem;border:1px solid var(--border);background:var(--cream)}
.menu-note p{font-family:'Cormorant Garamond',serif;font-size:1.12rem;font-weight:700;font-style:normal;color:var(--navy)}

/* GALLERY */
.gal{background:var(--deep);padding:7rem 0}
.gal-hd{text-align:center;margin-bottom:2.2rem}
.tabs-light{margin-bottom:1rem}
.tabs-light .tab{border-color:rgba(255,255,255,.22);color:rgba(255,255,255,.65)}
.tabs-light .tab.on,.tabs-light .tab:hover{background:var(--gold);border-color:var(--gold);color:#221703}

/* BENTO GALLERY */
.bento-wrap{overflow:hidden}
.bento-track{
  display:grid;grid-auto-flow:column dense;
  grid-auto-columns:minmax(230px,1fr);grid-template-rows:repeat(2,215px);
  gap:1rem;overflow-x:auto;scroll-snap-type:x proximity;
  padding:0 clamp(1.25rem,4vw,4rem) 1.5rem;cursor:grab;
}
.bento-track.dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.bento-track::-webkit-scrollbar{height:6px}
.bento-track::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:3px}
.bento-item{position:relative;overflow:hidden;border-radius:6px;scroll-snap-align:start;cursor:pointer;background:#000}
.bento-item.big{grid-column:span 2;grid-row:span 2}
.bento-item.tall{grid-row:span 2}
.bento-item.wide{grid-column:span 2}
.bento-item.is-hidden{display:none}
.bento-item img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;transition:transform .6s cubic-bezier(.4,0,.2,1),filter .5s;filter:brightness(.88)}
.bento-item:hover img{transform:scale(1.05);filter:brightness(1)}
.bento-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,17,24,.85) 0%,rgba(8,17,24,.15) 45%,transparent 70%);opacity:0;transition:opacity .4s;display:flex;align-items:flex-end;padding:1.1rem;pointer-events:none}
.bento-item:hover .bento-ov{opacity:1}
.bento-ov span{font-family:'Playfair Display',serif;font-style:normal;font-weight:500;color:var(--gold-light);font-size:1rem;line-height:1.3;transform:translateY(6px);transition:transform .4s;display:block}
.bento-item:hover .bento-ov span{transform:none}
.bento-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;transition:transform .3s;pointer-events:none}
.bento-item:hover .bento-play{transform:translate(-50%,-50%) scale(1.08)}

/* GALLERY MODAL */
.gmodal{position:fixed;inset:0;z-index:1200;display:none;flex-direction:column;align-items:center;justify-content:center;background:rgba(8,17,24,.94);backdrop-filter:blur(4px);padding:2rem}
.gmodal.open{display:flex}
.gmodal-stage{max-width:92vw;max-height:80vh;display:flex;align-items:center;justify-content:center}
.gmodal-stage img,.gmodal-stage video{max-width:92vw;max-height:80vh;border-radius:4px;display:block}
.gmodal-caption{margin-top:1.2rem;font-family:'Cormorant Garamond',serif;font-style:normal;font-weight:500;color:var(--gold-light);font-size:1.15rem;text-align:center;max-width:70ch}
.gmodal-close{position:absolute;top:1.5rem;right:1.5rem;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.3);color:#fff;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.05);cursor:pointer;transition:all .3s}
.gmodal-close:hover{border-color:var(--gold);color:var(--gold)}

/* LETTER */
.letter{background:var(--deep)}
.letter-in{max-width:760px;margin:0 auto;text-align:center}
.letter-body p{font-family:'Cormorant Garamond',serif;font-size:clamp(1.1rem,1.7vw,1.3rem);font-style:italic;color:rgba(255,255,255,.78);line-height:1.75;margin-bottom:1.4rem}
.letter-body strong{color:var(--gold-light);font-weight:700;font-style:normal}
.letter-closing{margin-top:1.8rem;font-family:'Playfair Display',serif;font-style:italic;font-size:clamp(1.2rem,2vw,1.5rem);color:var(--gold-light)}

/* DONAR / RESERVE-STYLE */
.res{background:var(--cream)}
.res-g{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.info-b{margin-bottom:1.8rem}
.info-lbl{font-size:.76rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:.5rem;display:block}
.info-b p{font-family:'Cormorant Garamond',serif;font-size:1.12rem;color:var(--text-muted);line-height:1.7}
.form-box{background:#fff;padding:2.8rem;border:1px solid var(--border);border-radius:2px;text-align:center}
.form-box h3{font-family:'Playfair Display',serif;font-size:1.05rem;font-weight:500;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:1rem}
.goal-amount{font-family:'Playfair Display',serif;font-size:2.6rem;font-weight:500;color:var(--navy);margin-bottom:1.8rem}
.btn-sub{display:block;width:100%;padding:1rem;background:var(--navy);color:#fff;font-family:'Inter',sans-serif;font-size:.85rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border:none;border-radius:2px;cursor:none;transition:background .3s,transform .2s}
.btn-sub:hover{background:var(--navy-mid);transform:translateY(-1px)}
.form-msg{margin-top:1.2rem;font-family:'Cormorant Garamond',serif;font-size:1rem;font-style:italic;text-align:center;color:var(--text-muted)}

/* CREDITS */
.credits{background:var(--cream);border-top:1px solid var(--border);padding:3.5rem 0}
.credits-in{
  position:relative; overflow:hidden;
  display:flex;align-items:center;justify-content:center;gap:2rem;flex-wrap:wrap;text-align:left;
  max-width:820px;margin:0 auto;background:var(--deep);border:1px solid rgba(255,255,255,.08);border-radius:8px;
  padding:2rem 2.4rem;box-shadow:0 12px 40px rgba(11,27,38,.18);
  text-decoration:none;cursor:pointer;will-change:transform;
  transform-style:preserve-3d;transition:transform .2s ease-out,box-shadow .3s ease-out;
}
.credits-in:hover{box-shadow:0 20px 55px rgba(11,27,38,.3)}
.credits-in:active{transform:scale(.97);box-shadow:0 8px 24px rgba(11,27,38,.25)}
.credits-in img{height:56px;width:auto;flex-shrink:0;position:relative;z-index:2}
.credits-text{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;position:relative;z-index:2}
.credits-in p{max-width:46ch;font-family:'Cormorant Garamond',serif;font-style:italic;color:rgba(255,255,255,.78);font-size:1.15rem;line-height:1.65;margin:0}
.credits-cta{
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.65rem 1.5rem;background:var(--gold);color:#221703;
  font-family:'Inter',sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  border-radius:2px;transition:background .3s,transform .2s;
}
.credits-cta::after{content:"→";transition:transform .2s}
.credits-in:hover .credits-cta{background:var(--gold-light)}
.credits-in:hover .credits-cta::after{transform:translateX(4px)}
.credits-in:active .credits-cta{transform:translateY(1px)}

/* FOOTER */
footer{background:var(--text);padding:4rem 0 2rem}
.ft-g{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.07)}
.ft-brand-name{font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:400;color:var(--gold-light)}
.ft-brand p{font-family:'Cormorant Garamond',serif;font-size:1.03rem;font-style:italic;color:rgba(255,255,255,.45);line-height:1.8;margin-top:.9rem;max-width:280px}
.ft-col h4{font-size:.76rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:1.2rem}
.ft-col ul{list-style:none}
.ft-col li,.ft-col li a{font-family:'Cormorant Garamond',serif;font-size:1.03rem;color:rgba(255,255,255,.5);margin-bottom:.6rem;line-height:1.6;text-decoration:none;transition:color .25s;display:block}
.ft-col li a:hover{color:var(--gold)}
.ft-bot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.ft-bot p{font-size:.76rem;color:rgba(255,255,255,.24);letter-spacing:.04em}
.socials{display:flex;gap:.75rem}
.soc{width:34px;height:34px;border:1px solid rgba(255,255,255,.12);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.4);text-decoration:none;transition:all .3s}
.soc:hover{border-color:var(--gold);color:var(--gold)}

/* ANIMATIONS */
@keyframes fu{to{opacity:1;transform:translateY(0)}}
@keyframes fi{from{opacity:0}to{opacity:1}}
@keyframes sl{0%,100%{opacity:1;transform:scaleY(1)}50%{opacity:.3;transform:scaleY(.5)}}
.rv{opacity:0;transform:translateY(32px);transition:opacity .8s ease,transform .8s ease}
.rv.vis{opacity:1;transform:translateY(0)}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}

/* HAMBURGER */
.ham{display:none;flex-direction:column;justify-content:space-between;width:44px;height:44px;background:none;border:none;padding:13px 10px;cursor:pointer;flex-shrink:0}
.ham span{display:block;height:1.5px;background:var(--navy);border-radius:2px;transition:transform .38s cubic-bezier(.23,1,.32,1),opacity .25s,width .3s}
.ham span:nth-child(1){width:100%}
.ham span:nth-child(2){width:65%;align-self:flex-end}
.ham span:nth-child(3){width:100%}
.ham.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.ham.open span:nth-child(2){opacity:0;width:0}
.ham.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

/* DRAWER */
.drawer-wrap{position:fixed;inset:0;z-index:1002;pointer-events:none}
.drawer-wrap.open{pointer-events:all}
.drawer-backdrop{position:absolute;inset:0;background:rgba(8,17,24,.55);opacity:0;transition:opacity .4s ease;backdrop-filter:blur(2px)}
.drawer-wrap.open .drawer-backdrop{opacity:1}
.drawer{position:absolute;top:0;left:0;right:0;max-height:100vh;overflow-y:auto;background:var(--cream);display:flex;flex-direction:column;transform:translateY(-100%);transition:transform .5s cubic-bezier(.4,0,.15,1);box-shadow:0 8px 40px rgba(0,0,0,.16)}
.drawer-wrap.open .drawer{transform:translateY(0)}
.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:1.4rem 1.4rem 1.2rem;border-bottom:1px solid var(--border)}
.drawer-brand{display:flex;align-items:center;gap:.6rem}
.drawer-brand img{width:32px;height:32px;object-fit:contain}
.drawer-brand span{font-family:'Playfair Display',serif;font-size:.92rem;font-weight:500;color:var(--navy);line-height:1.25}
.drawer-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--border);border-radius:50%;color:var(--text-muted);cursor:pointer;transition:border-color .2s,color .2s;flex-shrink:0}
.drawer-close:hover{border-color:var(--gold);color:var(--navy)}
.drawer-nav{position:static;display:flex;flex-direction:column;padding:1rem 0;z-index:auto}
.d-link{display:flex;align-items:center;gap:1rem;padding:1.1rem 1.6rem;text-decoration:none;border-bottom:1px solid rgba(217,164,65,.14);opacity:0;transform:translateY(-10px);transition:opacity .35s,transform .35s,background .2s}
.drawer-wrap.open .d-link:nth-child(1){opacity:1;transform:none;transition-delay:.2s}
.drawer-wrap.open .d-link:nth-child(2){opacity:1;transform:none;transition-delay:.27s}
.drawer-wrap.open .d-link:nth-child(3){opacity:1;transform:none;transition-delay:.34s}
.drawer-wrap.open .d-link:nth-child(4){opacity:1;transform:none;transition-delay:.41s}
.d-link:hover{background:rgba(217,164,65,.08)}
.d-num{font-family:'Inter',sans-serif;font-size:.65rem;font-weight:500;letter-spacing:.1em;color:var(--gold);width:18px;flex-shrink:0}
.d-txt{font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:400;color:var(--text)}
.drawer-foot{padding:1.4rem 1.6rem;border-top:1px solid var(--border);opacity:0;transform:translateY(-8px);transition:opacity .35s .46s,transform .35s .46s}
.drawer-wrap.open .drawer-foot{opacity:1;transform:none}
.drawer-cta{display:block;text-align:center;padding:.85rem;background:var(--navy);color:#fff;font-family:'Inter',sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border-radius:2px;margin-bottom:1rem;transition:background .3s}
.drawer-cta:hover{background:var(--navy-mid)}
.drawer-langs{display:flex;gap:.4rem;justify-content:center;margin-bottom:1rem}
.drawer-langs button{padding:.4rem .7rem;border:1px solid var(--border);background:none;border-radius:2px;font-size:.72rem;font-weight:600;letter-spacing:.06em;color:var(--text-muted);cursor:pointer}
.drawer-langs button.on{background:var(--gold);border-color:var(--gold);color:#221703}
.drawer-info{font-family:'Cormorant Garamond',serif;font-size:.92rem;font-style:italic;color:var(--text-muted);text-align:center;line-height:1.7}

/* MOBILE */
@media(max-width:860px){
  .eyebrow-break{display:inline}
  nav{padding:1rem 1.2rem !important;justify-content:space-between;z-index:1004;background:rgba(251,246,236,.6);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 1px 0 var(--border);transition:background .4s}
  nav.on{padding:1rem 1.2rem !important;background:rgba(251,246,236,.82)}
  .logo img{height:38px;width:38px}
  .logo-txt{color:var(--navy) !important;font-size:.85rem}
  .nav-ul,.lang-switcher,.nav-btn{display:none !important}
  .ham{display:flex}
  .ham span{background:var(--navy)}
  .wrap{padding:0 1.2rem}
  section,.credits{padding:4.2rem 0}
  .about-g,.res-g{grid-template-columns:1fr;gap:2.3rem}
  .about-g,.res-g{text-align:center}
  .about-g .orn-start,.res-g .orn-start{justify-content:center}
  .info-b{text-align:center}
  .img-wrap img{height:340px}
  .bento-track{grid-template-rows:repeat(2,145px);grid-auto-columns:minmax(150px,1fr);padding:0 1.2rem 1.2rem}
  .bento-item.big,.bento-item.wide{grid-column:span 1}
  .gmodal-caption{font-size:1rem}
  .stats{grid-template-columns:1fr;justify-items:center;gap:1.6rem}
  .stat-v{font-size:1.5rem}
  .mi{flex:1 1 100%}
  .ft-g{grid-template-columns:1fr;gap:2rem;text-align:center}
  .ft-brand p{max-width:100%;margin-left:auto;margin-right:auto}
  .ft-col ul{padding:0}
  .ft-bot{flex-direction:column;gap:1.2rem;text-align:center}
  .socials{justify-content:center}
  .credits-in{flex-direction:column;text-align:center;padding:1.6rem 1.4rem}
  .credits-text{align-items:center}
  body{cursor:auto}
  .cur,.cur-f{display:none}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .rv{opacity:1 !important;transform:none !important;transition:none !important}
  .hero-logo,.eyebrow,.hero-h1,.hero-sub,.hero-btns,.scroll-ind{animation:none !important;opacity:1 !important;transform:none !important}
  .scroll-ln{animation:none !important}
  .hero-bg{transition:none !important;transform:none !important}
}
