:root{--card:#fff;--mut:#00000007;--line:#0000001a}html[data-theme=dark]{--bg:#14110f;--tx:#ece6df;--card:#201b18;--mut:#ffffff0d;--line:#ffffff1f}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}
body{font-family:var(--f);background:var(--bg);color:var(--tx);line-height:1.8;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--fh);font-weight:600;line-height:1.25}
.wrap{max-width:1200px;margin:auto;padding:clamp(56px,8vw,110px) 20px}.narrow{max-width:820px}.c{text-align:center}
.eb,.sh small{display:block;letter-spacing:.32em;text-transform:uppercase;color:var(--c2);font-size:.78rem;font-weight:600;margin-bottom:10px}
h2{font-size:clamp(1.9rem,4.5vw,3rem);color:var(--c1);font-weight:500}html[data-theme=dark] h2{color:var(--c2)}
.orn{display:block;width:70px;height:1px;background:var(--c2);margin:18px auto 22px;position:relative}.orn:after{content:"";position:absolute;left:50%;top:-3px;width:7px;height:7px;background:var(--c2);transform:translateX(-50%) rotate(45deg)}.orn.l{margin-left:0}.orn.l:after{left:0;transform:rotate(45deg)}
.sh{text-align:center;max-width:720px;margin:0 auto 46px}.sh p{opacity:.8}
.btn{display:inline-block;margin-top:18px;padding:14px 36px;background:var(--c2);color:#fff;border:1px solid var(--c2);font:600 .8rem var(--f);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:.3s}.btn:hover{background:transparent;color:var(--c2)}
/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:20px clamp(16px,4vw,52px);color:#fff;transition:background .35s,padding .35s,box-shadow .35s}
.nav.sc{background:var(--c1);padding-top:10px;padding-bottom:10px;box-shadow:0 4px 24px #0004}
.brand{display:flex;align-items:center;gap:10px;font:600 1.4rem var(--fh);position:relative;z-index:120}.brand img{height:56px;width:auto;transition:.35s}.nav.sc .brand img{height:44px}
.nav nav{display:flex;gap:clamp(14px,2vw,30px);align-items:center;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase}.nav nav>a:hover,.dd>a:hover{color:var(--c2)}
.rsv{border:1px solid var(--c2);padding:10px 22px;transition:.3s}.rsv:hover{background:var(--c2);color:#111!important}
.tools{display:flex;gap:10px;align-items:center}.tools .lang{border:1px solid #fff7;padding:1px 10px;border-radius:20px}.tools button{background:none;border:0;color:inherit;font-size:1.05rem;cursor:pointer}
.dd{position:relative}.menu{display:none;position:absolute;left:-16px;top:100%;padding-top:18px}.menu:before{content:"";position:absolute;inset:18px 0 0;background:var(--c1);box-shadow:0 14px 30px #0005;z-index:-1}
.dd:hover .menu{display:block}.menu a{display:block;padding:11px 24px;white-space:nowrap;min-width:230px}.menu a:hover{color:var(--c2);background:#ffffff12}
.burger{display:none;background:none;border:0;color:#fff;font-size:2rem;cursor:pointer;position:relative;z-index:120}
/* hero */
.hero{position:relative;min-height:560px;background:var(--c1);overflow:hidden}
.slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;padding:90px 70px 110px;opacity:0;transition:opacity 1.4s;overflow:hidden}.slide.on{opacity:1;z-index:1}
.slide .bg{position:absolute;inset:0;background:var(--c1) center/cover}.slide.on .bg{animation:kb 11s ease-out forwards}@keyframes kb{from{transform:scale(1)}to{transform:scale(1.09)}}
.slide:after{content:"";position:absolute;inset:0;background:linear-gradient(#0006,#0003 40%,#0008)}
.sc{position:relative;z-index:2;max-width:920px}.slide.on .sc>*{animation:up 1.1s both}.slide.on .sc>.sub{animation-delay:.25s}.slide.on .sc>.btn,.slide.on .sc>br{animation-delay:.5s}@keyframes up{from{opacity:0;transform:translateY(26px)}}
.hero h1,.ph h1{font-size:clamp(2.2rem,6.4vw,4.8rem);font-weight:500;letter-spacing:.01em}
.sub{display:block;letter-spacing:.34em;text-transform:uppercase;font-size:clamp(.72rem,1.5vw,.95rem);margin-top:20px;opacity:.92}
.prev,.next{position:absolute;top:50%;z-index:3;transform:translateY(-50%);background:none;color:#fff;border:1px solid #fff6;width:48px;height:48px;border-radius:50%;font-size:1.8rem;cursor:pointer;transition:.3s}.prev:hover,.next:hover{background:var(--c2);border-color:var(--c2)}.prev{left:22px}.next{right:22px}
.dots{position:absolute;bottom:34px;left:0;right:0;z-index:3;display:flex;justify-content:center;gap:10px}.dots i{width:9px;height:9px;border-radius:50%;border:1px solid #fff;cursor:pointer;transition:.3s}.dots i.on{background:var(--c2);border-color:var(--c2);width:30px;border-radius:6px}
.scroll{position:absolute;left:50%;bottom:86px;z-index:3;color:#fff;font-size:1.6rem;animation:bn 2s infinite}@keyframes bn{50%{transform:translate(-50%,10px)}0%,100%{transform:translate(-50%,0)}}.scroll{transform:translateX(-50%)}
.ph{position:relative;background:var(--c1) center/cover;color:#fff;text-align:center;padding:clamp(130px,16vw,210px) 20px clamp(60px,9vw,110px)}.ph:before{content:"";position:absolute;inset:0;background:linear-gradient(#0008,#0005)}.ph>div{position:relative}.big{font-size:2.6rem;color:var(--c2)}
/* booking bar */
.bk{margin-top:-74px;position:relative;z-index:6;padding:0 16px}
.bkf{max-width:1180px;margin:auto;background:var(--card);box-shadow:0 24px 60px #0004;display:grid;grid-template-columns:1.5fr 1fr 1fr .8fr 1fr auto;align-items:stretch}
.bkt{background:var(--c1);color:#fff;padding:24px 28px}.bkt h3{color:var(--c2);font-size:1.5rem}.bkt p{font-size:.82rem;opacity:.85;line-height:1.5;margin-top:4px}
.bkf label{display:flex;flex-direction:column;justify-content:center;padding:14px 20px;border-right:1px solid var(--line)}.bkf label span{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--c2);font-weight:600}
.bkf input,.bkf select{border:0;background:none;font:inherit;color:var(--tx);padding:4px 0;outline:0;width:100%;min-width:0}.bkf .btn{margin:0;height:100%;min-height:64px;padding:0 38px}
/* about */
.about{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,90px);align-items:center}.about.solo{grid-template-columns:1fr;max-width:860px;text-align:center}.about .orn{margin-left:0}.about.solo .orn{margin-left:auto}
.ab-i{position:relative;padding:0 0 70px}.i1{width:78%;aspect-ratio:4/5;object-fit:cover}.i2{position:absolute;right:0;bottom:0;width:52%;aspect-ratio:1;object-fit:cover;border:12px solid var(--bg)}
.rev{display:inline-flex;gap:10px;align-items:center;margin-top:22px;border:1px solid var(--c2);padding:9px 20px;font-size:.9rem}.rev i{color:var(--c2);font-size:.8rem}
.rt{font-size:1.05rem}.rt p,.rt ul,.rt ol,.rt h2,.rt h3{margin-bottom:16px}.rt ul,.rt ol{padding-left:26px}.rt img{margin:18px auto}.rt iframe{width:100%;aspect-ratio:16/9;border:0}.rt a{color:var(--c2);text-decoration:underline}
.ql-align-center{text-align:center}.ql-align-right{text-align:right}.ql-align-justify{text-align:justify}
/* stays / cards */
.alt{background:var(--mut)}.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:22px}
.stay{position:relative;display:block;overflow:hidden;color:#fff;background:var(--c1)}.stay img,.stay .noimg{aspect-ratio:3/4;width:100%;object-fit:cover;transition:transform 1s}.stay:hover img{transform:scale(1.08)}
.stay:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,#000c)}.sl{position:absolute;left:0;right:0;bottom:0;padding:30px;z-index:2}.sl>i{font-size:1.6rem;color:var(--c2)}.sl h3{font-size:1.85rem;font-weight:500}.sl span{opacity:.85;font-size:.92rem}
.sl em{display:block;margin-top:12px;font-style:normal;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--c2);opacity:0;transform:translateY(10px);transition:.4s}.stay:hover em{opacity:1;transform:none}
.noimg{display:grid;place-items:center;background:linear-gradient(135deg,var(--c1),var(--c2));color:#fff;font-size:3rem;aspect-ratio:4/3;width:100%}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:26px}.card{background:var(--card);display:block;overflow:hidden;box-shadow:0 6px 24px #00000012;transition:.35s}.card:hover{transform:translateY(-6px);box-shadow:0 18px 40px #0002}
.card img,.card .noimg{aspect-ratio:16/10;object-fit:cover;width:100%}.cb{padding:22px}.cb h3{font-size:1.4rem;margin:4px 0}.cb small{color:var(--c2);letter-spacing:.1em}.cb p{opacity:.8;font-size:.95rem}
/* promos */
.pr{display:grid;grid-template-columns:1fr 1fr;align-items:center;margin-bottom:70px;background:var(--card);box-shadow:0 10px 40px #0000000f}.pr:nth-of-type(even) .pi{order:2}.pi img,.pi .noimg{aspect-ratio:4/3;width:100%;object-fit:cover}
.pt{padding:clamp(26px,5vw,70px)}.pt h3{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:500;color:var(--c1)}html[data-theme=dark] .pt h3{color:var(--c2)}.pt h4{color:var(--c2);font-size:1.25rem;letter-spacing:.06em;margin:8px 0 14px}
/* stats */
.stats{background:var(--c1);color:#fff}.stats .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:24px;text-align:center;padding-top:56px;padding-bottom:56px}
.st i{font-size:1.9rem;color:var(--c2)}.st b{display:block;font:500 2.7rem var(--fh)}.st span{opacity:.85;letter-spacing:.08em}
/* gallery */
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.gal a{overflow:hidden;display:block}.gal img{aspect-ratio:1;object-fit:cover;width:100%;transition:.6s}.gal a:hover img{transform:scale(1.1)}
.lb{position:fixed;inset:0;background:#000e;z-index:200;display:none;align-items:center;justify-content:center}.lb.on{display:flex}.lb img{max-height:90vh;max-width:90vw}.lb button{position:absolute;background:#fff2;color:#fff;border:0;width:46px;height:46px;border-radius:50%;font-size:1.8rem;cursor:pointer}.lb .x{top:16px;right:16px}.lb .pv{left:14px}.lb .nx{right:14px}
/* contact */
.cband{background:var(--c1) center/cover;color:#fff;padding:20px 0}.cband .wrap{padding-top:60px;padding-bottom:60px}.big2{display:block;font:500 clamp(2rem,6vw,3.8rem) var(--fh);color:var(--c2);margin:6px 0}.cband p{opacity:.9}.cband .ad{margin-top:6px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,70px);align-items:start}.map{width:100%;height:340px;border:0;margin-top:10px}
.cf{display:grid;gap:12px}.cf input,.cf textarea{padding:14px 16px;border:1px solid var(--line);background:var(--card);color:var(--tx);font:inherit;width:100%;border-radius:0}.cf input:focus,.cf textarea:focus{outline:1px solid var(--c2)}.hp{position:absolute;left:-9999px}.cf .btn{justify-self:start}
.ok,.er{padding:12px 16px}.ok{background:#d4f5dd;color:#155d27}.er{background:#fde2e2;color:#8a1c1c}
.info p{margin:8px 0}.info i{color:var(--c2);margin-right:6px}.box2{background:var(--card);padding:20px 26px;margin:24px 0;box-shadow:0 6px 24px #0000000f}.box2 i{color:var(--c2);margin-right:6px}

/* footer */
footer{background:var(--c1);color:#fff}footer .wrap{padding-bottom:40px}.fb{justify-content:center;font-size:1.7rem}.fb img{height:70px}.fa{margin:16px 0;opacity:.8}
.fl{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 28px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;margin:18px 0}.fl a:hover{color:var(--c2)}
.soc{display:flex;gap:12px;justify-content:center;margin-top:18px}.soc a{width:42px;height:42px;border:1px solid #fff4;border-radius:50%;display:grid;place-items:center;transition:.3s}.soc a:hover{background:var(--c2);border-color:var(--c2)}
.copy{text-align:center;padding:18px;border-top:1px solid #ffffff1a;font-size:.85rem;opacity:.75}
.fab{position:fixed;right:18px;bottom:18px;z-index:60;display:flex;flex-direction:column;gap:10px}.fab a,.fab button{width:48px;height:48px;border-radius:50%;background:var(--c2);color:#fff;border:0;display:grid;place-items:center;font-size:1.3rem;box-shadow:0 6px 18px #0005;cursor:pointer}.fab button{display:none;background:var(--c1)}
.pop{position:fixed;inset:0;background:#000b;z-index:150;display:flex;align-items:center;justify-content:center;padding:16px}.pop[hidden]{display:none}
.pop .box{background:var(--card);max-width:480px;width:100%;position:relative;text-align:center;padding-bottom:26px;animation:pp .45s;border-top:4px solid var(--c2);max-height:92vh;overflow:auto}.pop .x{position:absolute;right:10px;top:8px;font-size:1.8rem;background:#fffd;border:0;border-radius:50%;width:38px;height:38px;cursor:pointer;color:#000}
.pop h3{padding:18px 22px 0;color:var(--c1);font-size:1.7rem}html[data-theme=dark] .pop h3{color:var(--c2)}.pop p{padding:6px 22px 0}@keyframes pp{from{transform:scale(.88);opacity:0}}
#ck{position:fixed;left:12px;right:12px;bottom:12px;z-index:140;background:#222;color:#fff;padding:12px 18px;display:flex;gap:12px;align-items:center;justify-content:space-between;max-width:640px;margin:auto}#ck[hidden]{display:none}#ck button{background:var(--c2);border:0;color:#fff;padding:7px 20px;cursor:pointer;font-family:inherit}
.pop .btn{padding:8px 22px;margin-top:12px;font-size:.7rem;letter-spacing:.12em}.pop .x{width:32px;height:32px;font-size:1.4rem;right:8px;top:8px;z-index:2}.pop h3{font-size:1.45rem;padding-top:14px}.pop p{font-size:.95rem}.ptn{background:var(--mut)}.ptn .wrap{padding-top:clamp(40px,6vw,70px);padding-bottom:clamp(40px,6vw,70px)}.ptn .sh{margin-bottom:30px}.ptn h2{font-size:clamp(1.3rem,2.6vw,1.8rem)}
.plogos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:26px clamp(28px,5vw,64px)}
.pl{display:flex;align-items:center;justify-content:center;height:64px;min-width:90px;filter:grayscale(1);opacity:.65;transition:.35s;font-weight:600;color:var(--tx);flex-shrink:0}.pl:hover{filter:none;opacity:1;transform:scale(1.06)}.pl img{max-height:100%;max-width:170px;width:auto;object-fit:contain}
.pm{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.pt2{display:flex;width:max-content;animation:mq 35s linear infinite}.pt2 .pl{margin-right:clamp(28px,5vw,64px)}.pm:hover .pt2{animation-play-state:paused}@keyframes mq{to{transform:translateX(-50%)}}
.card.ev{display:flex;flex-direction:column}.card.ev .cb{flex:1}
.cimg{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--mut)}.cimg:before{content:"";position:absolute;inset:-24px;background:var(--bi,none) center/cover;filter:blur(18px) brightness(.88);transform:scale(1.1)}
.card.ev .cimg img{position:relative;display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:contain}.card.ev .cimg .noimg{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto}
.card.ev .cb h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.5em}.card.ev .cb p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:5.4em}
.pop .box{width:min(440px,100%)}.pop .cimg{width:min(100%,calc(62vh*.8));margin:0 auto}.pp .cimg img{position:relative;display:block;width:100%;height:100%;max-height:none;object-fit:contain}
.grid{grid-template-columns:repeat(auto-fill,minmax(190px,230px));justify-content:center;gap:20px}
.card.ev .cb{padding:14px 14px 16px}.card.ev .cb h3{font-size:1.02rem;line-height:1.35;min-height:2.7em}.card.ev .cb small{font-size:.74rem}.card.ev .cb p{font-size:.82rem;line-height:1.6;min-height:4.8em}
@media(max-width:600px){.grid{grid-template-columns:repeat(2,1fr);gap:12px}.card.ev .cb{padding:10px 10px 12px}.card.ev .cb h3{font-size:.95rem}}
.nav-solid .nav{background:var(--c1);padding-top:10px;padding-bottom:10px;box-shadow:0 4px 24px #0004}.nav-solid .brand img{height:44px}
.nav-solid .hero{margin-top:68px;height:calc(var(--hh,100vh) - 68px)}.nav-solid .ph{padding-top:clamp(110px,13vw,170px)}.nav-solid .scroll{bottom:96px}
.pager{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;margin-top:clamp(44px,6vw,72px);padding-top:30px;border-top:1px solid var(--line)}
.pager a{display:inline-grid;place-items:center;min-width:44px;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:50%;font-weight:600;font-size:.92rem;transition:.25s;color:var(--tx)}
.pager a:hover{border-color:var(--c2);color:var(--c2);transform:translateY(-2px)}.pager a.on{background:var(--c2);border-color:var(--c2);color:#fff;box-shadow:0 6px 18px color-mix(in srgb,var(--c2) 40%,transparent)}.pager a.pn{border-radius:50%;font-size:1.05rem}
.evimg{display:block;width:auto;max-width:100%;max-height:80vh;height:auto;margin:0 auto 30px;box-shadow:0 12px 40px #0002}
.pp{display:none}.pp.on{display:block;animation:fi2 .4s}.pp img{width:100%;max-height:58vh;object-fit:cover}@keyframes fi2{from{opacity:0}}
.pd{display:flex;justify-content:center;align-items:center;gap:12px;padding-top:12px}.pd button{background:none;border:1px solid var(--line);width:28px;height:28px;font-size:1rem;border-radius:50%;cursor:pointer;color:var(--tx);font-size:1.2rem;line-height:1}.pd button:hover{background:var(--c2);color:#fff;border-color:var(--c2)}
.dt{display:flex;gap:8px}.dt i{width:8px;height:8px;border-radius:50%;background:#0003;cursor:pointer;transition:.3s}.dt i.on{background:var(--c2);width:24px;border-radius:6px}
.rv{opacity:0;transform:translateY(28px);transition:opacity .9s,transform .9s}.rv.in{opacity:1;transform:none}
@media(max-width:1000px){.bkf{grid-template-columns:1fr 1fr}.bkt{grid-column:1/-1}.bkf label{border-bottom:1px solid var(--line)}.bkf .btn{grid-column:1/-1;min-height:56px}}
@media(max-width:900px){.burger{display:block}.nav nav{position:fixed;inset:0;background:var(--c1);flex-direction:column;justify-content:center;gap:18px;font-size:.95rem;transform:translateX(100%);transition:transform .4s;z-index:110;overflow:auto;padding:80px 20px}
 body.open .nav nav{transform:none}body.open{overflow:hidden}.menu{display:block;position:static;padding:0;text-align:center}.menu:before{display:none}.menu a{padding:6px;min-width:0;font-size:.8rem;opacity:.8}
 .about,.two,.pr{grid-template-columns:1fr}.pr:nth-of-type(even) .pi{order:0}.slide{padding:90px 54px 110px}.ab-i{max-width:480px}.about{text-align:center}.about .orn{margin-left:auto}.hero{min-height:520px}}
.pop{background:#000a;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.pop .box{background:var(--cream);color:#2b2420;border-top:0;width:min(460px,100%);padding:36px 28px 24px;max-height:94vh;overflow:auto;animation:none}
.pop .box:after{content:"";position:absolute;inset:0;background:var(--c1);z-index:4;pointer-events:none;animation:wipe 1s .1s cubic-bezier(.77,0,.18,1) forwards}@keyframes wipe{to{transform:translateX(-101%)}}
.pop .x{color:#2b2420;background:none;width:30px;height:30px;font-size:1.5rem;right:12px;top:10px;z-index:3}
.pmark{display:flex;justify-content:center;margin-bottom:12px}.pmark img{height:36px;width:auto}.pmark i{font-size:1.7rem;color:var(--c2)}
.pop h3,html[data-theme] .pop h3{font:400 clamp(1.8rem,5vw,2.5rem)/1.15 var(--fh);color:#2b2420;padding:0}.pop h3 em{font-style:italic}
.phl{color:var(--c2);font:600 .72rem var(--f);letter-spacing:.2em;text-transform:uppercase;margin:10px 0 18px}
.pop .cimg{width:min(100%,calc(40vh*.8));margin:0 auto 14px}.pop p{padding:0 6px;font-size:.88rem;opacity:.85}
.pop .pd button{color:#2b2420;border-color:#0003}.dt i{background:#0003}
@media(prefers-reduced-motion:reduce){*:not(.pt2):not(.et){transition:none!important;animation:none!important}.rv{opacity:1;transform:none}}

#pre{position:fixed;inset:0;z-index:3000;background:var(--cream);display:grid;place-items:center;transition:transform 1s cubic-bezier(.77,0,.18,1);animation:prefail .8s 9s forwards}@keyframes prefail{to{transform:translateY(-100%);visibility:hidden}}
#pre .pi2{display:flex;flex-direction:column;align-items:center;gap:22px;animation:pin 1s cubic-bezier(.2,.7,.2,1) both;transition:transform .9s cubic-bezier(.77,0,.18,1),opacity .6s}
#pre .pi2 img{max-height:96px;max-width:min(62vw,280px);width:auto}#pre .pi2 span{font:600 clamp(1.6rem,5vw,2.6rem) var(--fh);color:#2b2420;text-align:center}
#pre .pi2:after{content:"";display:block;width:120px;height:2px;background:linear-gradient(90deg,transparent,var(--c2),transparent);background-size:200% 100%;animation:pbar 1.3s linear infinite}
#pre.out{transform:translateY(-100%)}#pre.out .pi2{transform:translateY(-70px);opacity:0}
@keyframes pin{from{opacity:0;transform:translateY(18px) scale(.96)}}@keyframes pbar{from{background-position:200% 0}to{background-position:-200% 0}}
body.pre-on{overflow:hidden}body.pre-on .slide.on .bg,body.pre-on .slide.on .sc>*{animation-play-state:paused}

/* curtain slider (no zoom) */
.slide{opacity:1;visibility:hidden;clip-path:inset(0 0 0 100%);transition:clip-path 1.2s cubic-bezier(.77,0,.18,1),visibility 0s linear 1.2s;z-index:0}
.slide.lv{visibility:visible;clip-path:inset(0);z-index:1;transition:none}
.slide.on{opacity:1;visibility:visible;clip-path:inset(0);z-index:2;transition:clip-path 1.2s cubic-bezier(.77,0,.18,1),visibility 0s}
.slide.on .bg{animation:none}.slide .bgv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
/* videos */
.vg{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:28px;max-width:1040px;margin:0 auto}.vg.one{grid-template-columns:minmax(0,880px);justify-content:center}
.vw{position:relative;aspect-ratio:16/9;background:#000;overflow:hidden;box-shadow:0 14px 40px #0003}.vw video,.vw iframe,.vw .vplay{position:absolute;inset:0;width:100%;height:100%;border:0;background-color:#000}
.vplay{cursor:pointer;background:var(--bi,none) center/cover #000;display:grid;place-items:center;color:#fff;padding:0}.vplay:before{content:"";position:absolute;inset:0;background:#0004;transition:.3s}.vplay:hover:before{background:#0002}
.vplay i{position:relative;font-size:2.4rem;width:76px;height:76px;border-radius:50%;background:var(--c2);display:grid;place-items:center;padding-left:4px;box-shadow:0 8px 24px #0006;transition:.3s}.vplay:hover i{transform:scale(1.08)}
.vt{padding:14px 4px 0;font:500 1.15rem var(--fh);text-align:center}
/* cookie */
#ck a{color:var(--c2);text-decoration:underline;margin-left:4px;white-space:nowrap}
.pop.cp .box{width:min(580px,100%);text-align:left;padding:38px 28px 26px}.pop.cp h3{text-align:center;padding:0 0 14px}.pop .cpb{max-height:52vh;overflow:auto;padding:0 8px 0 0;font-size:.95rem}.pop .cpb h3{font:600 1.15rem var(--fh);text-align:left;margin:16px 0 6px;padding:0;color:#2b2420}.pop .cpb p,.pop .cpb li{padding:0;margin-bottom:8px}.pop.cp .btn{display:block;margin:18px auto 0}

/* events loop marquee */
.em{overflow:hidden;padding:8px 0 14px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.et{display:flex;width:max-content;animation:evm 48s linear infinite}.em:hover .et{animation-play-state:paused}
.eh{display:flex;gap:20px;padding-right:20px}.eh .card{flex:0 0 clamp(190px,17vw,240px);width:clamp(190px,17vw,240px)}
@keyframes evm{to{transform:translateX(-50%)}}

/* mobile menu */
.menu .all,.mq{display:none}
@media(max-width:900px){
 .nav nav{align-items:stretch;justify-content:center;gap:0;padding:96px 28px 40px;font-size:1rem;letter-spacing:.22em;background-image:radial-gradient(circle at 50% -10%,#ffffff24,transparent 58%)}
 .nav nav>a,.nav nav .dd>a{display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 0;border-bottom:1px solid #ffffff1c;max-width:340px;width:100%;margin:0 auto;text-align:center}
 .nav nav .dd{width:100%;display:block}.nav nav .dd>a i{transition:transform .35s}.nav nav .dd.open>a i{transform:rotate(180deg)}.nav nav .dd.open>a{color:var(--c2)}
 .nav nav .dd .menu{display:block;position:static;max-width:340px;margin:0 auto;padding:0;max-height:0;overflow:hidden;background:none;box-shadow:none;border-radius:12px;transition:max-height .5s cubic-bezier(.77,0,.18,1),margin .3s,padding .3s}
 .nav nav .dd.open .menu{max-height:640px;background:#00000030;margin-top:10px;padding:6px}
 .nav nav .menu:before{display:none}
 .nav nav .menu a{display:block;padding:12px 14px;min-width:0;white-space:normal;font-size:.76rem;letter-spacing:.14em;opacity:.92;border-radius:8px;text-align:center;border:0}
 .nav nav .menu a:hover{background:#ffffff1c;color:var(--c2)}.nav nav .menu a.all{display:block;color:var(--c2);font-weight:700;border-bottom:1px solid #ffffff1c;border-radius:8px 8px 0 0;margin-bottom:4px}
 .nav nav .tools{justify-content:center;margin:20px 0 4px}
 .nav nav>a.rsv{border:1px solid var(--c2);margin-top:18px;padding:14px 22px;border-radius:40px;max-width:260px}
 .mq{display:flex;gap:10px;justify-content:center;margin-top:24px;flex-wrap:wrap}.mq a{display:inline-flex;gap:8px;align-items:center;padding:10px 18px;border-radius:30px;background:#ffffff1f;font-size:.8rem;letter-spacing:.04em;text-transform:none}
 body.open .nav nav>*{animation:mi .55s both}body.open .nav nav>*:nth-child(1){animation-delay:.06s}body.open .nav nav>*:nth-child(2){animation-delay:.11s}body.open .nav nav>*:nth-child(3){animation-delay:.16s}body.open .nav nav>*:nth-child(4){animation-delay:.21s}body.open .nav nav>*:nth-child(5){animation-delay:.26s}body.open .nav nav>*:nth-child(6){animation-delay:.31s}body.open .nav nav>*:nth-child(7){animation-delay:.36s}body.open .nav nav>*:nth-child(n+8){animation-delay:.41s}
}
@keyframes mi{from{opacity:0;transform:translateY(14px)}}

/* fab all icons */
.fab{gap:9px;max-height:calc(100vh - 28px)}
.fab a,.fab button{width:46px;height:46px;font-size:1.25rem}
.fab a{transition:transform .2s}.fab a:hover{transform:scale(1.1)}
.fab .f-line{background:#06c755;color:#fff}.fab .f-facebook{background:#1877f2;color:#fff}.fab .f-instagram{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fd5949 45%,#d6249f 60%,#285aeb 90%);color:#fff}.fab .f-youtube{background:#f00;color:#fff}.fab .f-tiktok{background:#000;color:#fff}.fab .f-mail{background:var(--c1);color:#fff}
@media(max-width:600px){.fab{right:12px;bottom:12px;gap:7px}.fab a,.fab button{width:42px;height:42px;font-size:1.1rem}}
@media(max-height:520px){.fab{gap:5px}.fab a,.fab button{width:36px;height:36px;font-size:1rem}}

/* fab v4 */
.fab{position:fixed;right:18px;bottom:18px;z-index:60;display:flex;flex-direction:column-reverse;align-items:flex-end;gap:0;pointer-events:none}
.fab .totop{pointer-events:none;position:relative;right:auto;bottom:auto;z-index:auto;display:grid!important;place-items:center;width:46px;height:46px;margin:12px 6px 0 0;border-radius:50%;border:0;padding:0;cursor:pointer;color:#fff;font-size:1.2rem;background:var(--c1);box-shadow:0 8px 20px #0005;visibility:hidden;opacity:0;transform:translateY(10px);animation:none;transition:opacity .3s,transform .3s,visibility 0s .3s,background .25s}
.fab .totop.show{visibility:visible;opacity:1;transform:none;pointer-events:auto;transition-delay:0s}
.fab .totop.show:hover{transform:translateY(-3px);background:var(--c2)}
.fab .fg{display:flex;flex-direction:column-reverse;align-items:flex-end;pointer-events:none}
.fab .fm{pointer-events:auto;position:relative;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;border:0;padding:0;cursor:pointer;color:#fff;font-size:1.5rem;background:linear-gradient(135deg,var(--c2),color-mix(in srgb,var(--c2) 62%,#000));box-shadow:0 10px 28px #0006,inset 0 1px 0 #ffffff55;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}
.fab .fm:hover{transform:scale(1.08)}
.fab .fm:before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--c2);animation:fping 2.4s ease-out infinite;pointer-events:none}
.fab .fm i{grid-area:1/1;transition:transform .35s,opacity .25s}.fab .fm .x{opacity:0;transform:rotate(-90deg) scale(.5);font-size:1.2rem}
@keyframes fping{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.75);opacity:0}}
.fab .fl2{display:flex;flex-direction:column;align-items:flex-end;gap:9px;padding:6px 0 12px;pointer-events:none}
.fab .fl2>a{position:relative;display:grid;place-items:center;width:50px;height:50px;border-radius:50%;border:0;padding:0;color:#fff;font-size:1.3rem;cursor:pointer;background:var(--c2);box-shadow:0 8px 20px #0005;opacity:0;transform:translateY(14px) scale(.5);transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .2s}
.fab .fl2>.f-line{background:#06c755}.fab .fl2>.f-facebook{background:#1877f2}.fab .fl2>.f-instagram{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fd5949 45%,#d6249f 60%,#285aeb 90%)}.fab .fl2>.f-youtube{background:#f00}.fab .fl2>.f-tiktok{background:#000}.fab .fl2>.f-mail{background:var(--c1)}
.fab .fl2 span{position:absolute;right:calc(100% + 12px);top:50%;transform:translate(8px,-50%);background:#161616ee;color:#fff;font:600 .78rem/1 var(--f);padding:8px 12px;border-radius:8px;white-space:nowrap;max-width:min(60vw,320px);overflow:hidden;text-overflow:ellipsis;opacity:0;pointer-events:none;transition:.2s}
.fab .fl2>a:hover span{opacity:1;transform:translate(0,-50%)}.fab .fl2>a:hover{transform:scale(1.1)}
.fab .fl2>a:nth-last-child(1){--d:.02s}.fab .fl2>a:nth-last-child(2){--d:.06s}.fab .fl2>a:nth-last-child(3){--d:.10s}.fab .fl2>a:nth-last-child(4){--d:.14s}.fab .fl2>a:nth-last-child(5){--d:.18s}.fab .fl2>a:nth-last-child(6){--d:.22s}.fab .fl2>a:nth-last-child(7){--d:.26s}
.fab.open .fl2{pointer-events:auto}.fab.open .fl2>a{opacity:1;transform:none;transition-delay:var(--d,0s)}.fab.open .fl2>a:hover{transform:scale(1.1);transition-delay:0s}
.fab.open .fm:before{animation:none;opacity:0}.fab.open .fm .x{opacity:1;transform:none}.fab.open .fm .c{opacity:0;transform:rotate(90deg) scale(.5)}
.fab .fm:focus-visible~.fl2{pointer-events:auto}.fab .fm:focus-visible~.fl2>a{opacity:1;transform:none;transition-delay:var(--d,0s)}
@media(hover:none){.fab .fl2 span{display:none}}
@media(max-width:600px){.fab{right:12px;bottom:12px}.fab .fm{width:54px;height:54px}.fab .totop{width:42px;height:42px;margin:10px 6px 0 0}.fab .fl2>a{width:44px;height:44px;font-size:1.15rem}}
@media(max-height:640px){.fab .fl2{gap:7px;padding-bottom:10px}.fab .fl2>a{width:40px;height:40px;font-size:1.05rem}.fab .totop{width:38px;height:38px;margin:8px 9px 0 0}}

/* hero-mobile + popup916 */
.hero .dots{bottom:20px;left:50%;right:auto;transform:translateX(-50%);width:auto;max-width:calc(100% - 32px);padding:9px 16px;border-radius:30px;background:#00000055;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffff22;display:flex;align-items:center;justify-content:center;gap:8px}
.hero .dots i{width:7px;height:7px;border:0;background:#ffffff80;border-radius:50%;cursor:pointer;transition:.35s}
.hero .dots i.on{width:26px;border-radius:6px;background:var(--c2)}
.hero .dots.many i{display:none}
.hero .hcnt,.hero .hbar{display:none}
.hero .dots.many .hcnt{display:inline;font:600 .82rem var(--f);letter-spacing:.14em;color:#fff;white-space:nowrap}
.hero .hcnt em{opacity:.55;font-style:normal;margin:0 4px}
.hero .dots.many .hbar{display:block;width:70px;height:3px;border-radius:3px;background:#ffffff40;overflow:hidden}
.hero .hbf{display:block;height:100%;background:var(--c2);transform-origin:left;animation:hprog 5.5s linear forwards}
@keyframes hprog{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:700px){
 .hero{height:min(76vh,560px)!important;min-height:400px}
 .slide .bg{background-size:cover;filter:blur(26px) brightness(.72) saturate(1.1);transform:scale(1.2)}
 .slide:before{content:"";position:absolute;inset:0;z-index:1;background:var(--bi,none) center/contain no-repeat}
 .slide:after{z-index:2;background:linear-gradient(#0000004d,transparent 35%,#00000073)}
 .slide .sc{z-index:3;text-shadow:0 2px 14px #0009}
 .slide .bgv{z-index:1}
 .prev,.next{width:38px;height:38px;font-size:1.4rem;background:#00000040;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid #ffffff44;z-index:4}.prev{left:10px}.next{right:10px}
 .scroll{display:none}
 .hero .dots{bottom:16px}
}
/* popup 9:16 */
#pop .box{width:min(92vw,calc(90vh*9/16));aspect-ratio:9/16;max-width:none;max-height:none;height:auto;padding:0;overflow:hidden;background:#000;border:0;border-radius:18px;text-align:left}
#pop .pmark{display:none!important}
#pop .pw,#pop .pps{height:100%}#pop .pps{align-items:stretch}
#pop .pp{position:relative;isolation:isolate;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:0 22px 26px;background:var(--c1)}
#pop .pp .cimg{position:absolute;inset:0;z-index:-2;width:100%;margin:0;aspect-ratio:auto;background:none}
#pop .pp .cimg:before{display:none}
#pop .pp .cimg img{width:100%;height:100%;max-height:none;object-fit:cover}
#pop .pp:has(h3:not(:empty)):after,#pop .pp:has(p:not(:empty)):after{content:"";position:absolute;inset:auto 0 0 0;height:60%;background:linear-gradient(transparent,#000000cc);z-index:-1;pointer-events:none}
#pop .pp h3,#pop .pp p,#pop .pp h4{color:#fff;padding:0;margin:0;text-shadow:0 2px 12px #0008}
#pop .pp h3{font-size:clamp(1.4rem,5.2vw,1.9rem);margin-top:6px}
#pop .pp p{font-size:.92rem;margin-top:6px;opacity:.95}
#pop .pp .btn{align-self:flex-start;margin-top:12px}
#pop .x{top:12px;right:12px;width:36px;height:36px;font-size:1.3rem;background:#00000066;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:8}
#pop .pd{position:absolute;inset:0;padding:0;pointer-events:none;display:block;z-index:7}
#pop .pd button{pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;background:#00000055;color:#fff;border:1px solid #ffffff44;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
#pop .pd .pv2{left:10px}#pop .pd .nx2{right:10px}
#pop .pd .dt{position:absolute;top:18px;left:16px;right:60px;display:flex;gap:5px;pointer-events:auto}
#pop .pd .dt i{flex:1;width:auto;height:3px;border-radius:3px;background:#ffffff66}
#pop .pd .dt i.on{width:auto;background:#fff}

/* hero-auto + popup-fit */
@media(max-width:700px){
 .hero{height:var(--hmob,56.25vw)!important;min-height:0!important;transition:height .45s ease}
 .slide .bg{filter:none!important;transform:none!important;background-size:cover!important;background-position:center}
 .slide:before{display:none!important}
 .slide .bgv{z-index:auto}
 .hero .dots{bottom:12px}
}
.pop{z-index:2100!important}
#pop .box{width:min(80vw,340px);aspect-ratio:auto;max-width:none;max-height:none;height:auto;padding:0;overflow:hidden;background:#101010;border:0;border-radius:16px;text-align:left}
#pop .pmark{display:none!important}
#pop .pw,#pop .pps{height:auto}#pop .pps{align-items:stretch}
#pop .pp{position:relative;isolation:auto;height:auto;display:flex;flex-direction:column;justify-content:center;padding:0;background:#101010}
#pop .pp .cimg{position:relative;inset:auto;z-index:auto;width:100%;margin:0;aspect-ratio:auto;background:none}
#pop .pp .cimg:before{display:none}
#pop .pp .cimg img{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain}
#pop .pp:after{display:none!important}
#pop .pp h3,#pop .pp p,#pop .pp h4{padding:0 18px;margin:0;text-shadow:none;color:#fff}
#pop .pp h3:empty,#pop .pp p:empty,#pop .pp h4:empty{display:none}
#pop .pp h3{padding-top:14px;font-size:1.25rem}#pop .pp h3:not(:empty){padding-bottom:4px}
#pop .pp p{padding-top:6px;font-size:.9rem}#pop .pp p:not(:empty){padding-bottom:14px}
#pop .pp .btn{align-self:center;margin:6px 0 16px}
#pop .x{top:8px;right:8px;width:38px;height:38px;font-size:1.35rem;background:#000000b3;color:#fff;border:1px solid #ffffff55;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:9}
#pop .pd{position:absolute;inset:0;padding:0;pointer-events:none;display:block;z-index:7}
#pop .pd button{pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;background:#00000066;color:#fff;border:1px solid #ffffff44;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
#pop .pd .pv2{left:8px}#pop .pd .nx2{right:8px}
#pop .pd .dt{position:absolute;top:16px;left:14px;right:56px;display:flex;gap:5px;pointer-events:auto}
#pop .pd .dt i{flex:1;width:auto;height:3px;border-radius:3px;background:#ffffff66}
#pop .pd .dt i.on{width:auto;background:#fff}
