@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300;font-display:swap;src:url('/fonts/cormorant-garamond-light.woff2') format('woff2')}
@font-face{font-family:'Great Vibes';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/great-vibes.woff2') format('woff2')}
:root{--sakura:#F6D6DE;--sakura-2:#F3C6D0;--sakura-d:#E8A7B8;--sakura-ink:#B5677B;--ivory:#f8f4ee;--paper:#fdfbf7;--blush:#efe1db;--rose:#c98a8f;--ink:#151312;--muted:#5f5852;--line:#d9cfc1;--gold:#b2925e;--gold-d:#7a5f35;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Montserrat',Arial,sans-serif;--script:'Great Vibes',cursive}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:300 15px/1.7 var(--sans)}a{color:inherit}
.skip{position:absolute;left:-999px}.ann{background:var(--blush);text-align:center;font-size:11px;letter-spacing:.25em;text-transform:uppercase;padding:9px}
.hd{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:16px 40px;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:5}
.hd nav a,.nr>a:not(.btn),.lang a{font-size:11px;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;margin-right:20px}
.nr{display:flex;justify-content:flex-end;align-items:center}.lang{font-size:11px;margin-right:18px;color:var(--muted)}.lang a{margin:0 6px}.lang .on{color:var(--gold-d);font-weight:500}
.logo{font:300 32px/1 'Cormorant Garamond',Georgia,serif;text-align:center;text-decoration:none;letter-spacing:.10em}.logo span{display:block;font:400 10px var(--sans);letter-spacing:.45em;text-transform:uppercase;margin-top:6px;color:var(--gold-d)}
.btn{display:inline-block;background:var(--sakura-d);color:#fff;border:0;padding:11px 20px;font:500 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;cursor:pointer}.btn.lg{padding:16px 34px}
.hero{position:relative;height:720px;background:center 30%/cover;display:flex;align-items:center;justify-content:center;text-align:center}
.hero .ov{background:rgba(253,251,247,.82);padding:44px 60px;max-width:640px}
.script{font:400 40px/1 var(--script);color:var(--rose);margin:0}
.hero h1{font:300 58px/1.05 var(--serif);text-transform:uppercase;letter-spacing:.08em;margin:6px 0 12px}.sub{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--muted);margin-bottom:24px}.walk{font-size:12px;color:var(--muted);margin-top:10px}
.tag{position:absolute;right:10px;bottom:10px;background:rgba(0,0,0,.55);color:#fff;font-size:10px;padding:3px 8px;letter-spacing:.05em}
.panels{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:6px}.pn{position:relative;height:640px;background:center/cover;display:flex;align-items:flex-end;justify-content:center;text-decoration:none;text-align:center}
.pn.ev{background:linear-gradient(160deg,var(--blush),#e3cfc6 60%,var(--gold))}.pn div{background:rgba(253,251,247,.88);padding:22px 34px;margin-bottom:40px;min-width:70%}
.pn h2{font:300 36px var(--serif);text-transform:uppercase;letter-spacing:.14em;margin:0}.pn p:not(.script){font-size:12px;letter-spacing:.1em;margin:4px 0 0;color:var(--muted)}.pn .script{font-size:30px}
.more{display:flex;justify-content:center;gap:34px;padding:22px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;border-bottom:1px solid var(--line)}.more a{text-decoration:none}
.sec{padding:70px 40px;text-align:center}.alt{background:var(--ivory)}.t{font:300 38px var(--serif);text-transform:uppercase;letter-spacing:.12em;margin:0 0 30px}.t em{font:400 46px var(--script);text-transform:none;letter-spacing:0;color:var(--rose)}
.row{display:flex;justify-content:space-between;align-items:baseline;max-width:1300px;margin:auto}.lnk{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-d)}
.scroll{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;max-width:1300px;margin:auto;padding-bottom:12px}.card{flex:0 0 240px;scroll-snap-align:start;text-align:left}
.ph{background:repeating-linear-gradient(45deg,var(--blush),var(--blush) 10px,#f3e8e3 10px,#f3e8e3 20px);height:340px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.cn{font:500 18px var(--serif);margin:10px 0 0}.cs{font-size:11px;color:var(--muted);margin:0}
.story,.exp{display:grid;grid-template-columns:320px 1fr;gap:60px;align-items:center;max-width:1100px;margin:auto;padding:80px 40px}.exp{grid-template-columns:1fr 1fr}
.badge{width:260px;height:260px;border-radius:999px;border:2px solid var(--gold);outline:1px solid var(--gold);outline-offset:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;font:300 40px/1.1 var(--serif);letter-spacing:.15em;text-align:center;color:var(--gold-d)}.badge span{font:400 32px var(--script);letter-spacing:0;color:var(--rose)}
.story .t,.exp .t{text-align:left}.note{color:var(--rose);font-size:12px}.h3{font:500 22px var(--serif);margin:24px 0 6px}.ph.tall{height:520px}
.icons{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;max-width:1100px;margin:auto}.icons svg{width:52px;height:52px;fill:none;stroke:var(--gold);stroke-width:1.4}.icons h3{font:400 20px var(--serif);text-transform:uppercase;letter-spacing:.15em;margin:12px 0 6px}.icons p{font-size:13px;color:var(--muted);margin:0}
.check{background:var(--blush);text-align:center;padding:70px 20px}.check h2{font:300 38px var(--serif);text-transform:uppercase;letter-spacing:.12em;margin:4px 0}.check form{display:flex;justify-content:center;gap:0;margin-top:18px}.check input{padding:12px 16px;border:1px solid var(--gold);width:300px;font:14px var(--sans)}
.soc{display:flex;justify-content:center;gap:24px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:24px}.feed{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;max-width:1300px;margin:auto}.ph.sq{height:auto;aspect-ratio:1}
.visit{display:grid;grid-template-columns:1fr 1fr;background:var(--ivory)}.visit iframe{width:100%;height:460px;border:0}.visit>div{padding:50px}.visit .t{text-align:left}.small{font-size:12px;color:var(--muted)}
.ft{text-align:center;padding:50px 20px;border-top:1px solid var(--line)}.ft nav a{font-size:11px;letter-spacing:.2em;text-transform:uppercase;margin:0 12px;text-decoration:none}
.fab{position:fixed;right:20px;bottom:20px;background:var(--gold);color:#fff;padding:12px 18px;border-radius:30px;font-size:12px;letter-spacing:.1em;text-decoration:none;box-shadow:0 4px 14px rgba(0,0,0,.2);z-index:9;text-align:center}.fab small{display:block;font-size:9px}
@media(max-width:800px){.hd{grid-template-columns:1fr;padding:12px;gap:8px;text-align:center}.hd nav{display:flex;flex-wrap:wrap;justify-content:center}.hd nav a{margin:0 8px}.nr{justify-content:center}.nr>a:not(.btn){display:none}
.hero{height:600px}.hero .ov{padding:28px 20px;margin:0 16px}.hero h1{font-size:36px}.panels{grid-template-columns:1fr}.pn{height:440px}.more{flex-direction:column;gap:10px;text-align:center}
.story,.exp,.visit{grid-template-columns:1fr;padding:50px 20px;gap:30px}.badge{margin:auto;width:200px;height:200px;font-size:30px}.icons{grid-template-columns:1fr}.feed{grid-template-columns:repeat(3,1fr)}.check form{flex-direction:column;align-items:center}.check input{width:90%}.sec{padding:50px 16px}.ph.tall{height:340px}}

.btn:hover{background:var(--sakura-ink)}.ann{background:var(--sakura)}.script,.t em,.badge span{color:var(--sakura-ink)}
.lang .on{color:var(--sakura-ink)}.lnk{color:var(--sakura-ink)}.check{background:var(--sakura)}.check input{border-color:var(--sakura-d)}
.fab{background:var(--sakura-d)}.pn.ev{background:linear-gradient(160deg,var(--sakura),var(--blush) 55%,var(--sakura-2))}
.hero:after{content:"";position:absolute;inset:auto 0 0 0;height:45%;background:linear-gradient(to top,rgba(232,167,184,.55),transparent)}.hero .ov{position:relative;z-index:1}
.es{display:block;font:400 11px var(--sans);letter-spacing:.25em;text-transform:uppercase;color:var(--muted);margin-top:-18px;margin-bottom:26px}
.band{background:var(--sakura);display:grid;grid-template-columns:1fr 1fr;align-items:center}.band .ph{height:460px}.band>div:last-child{padding:50px 60px}
.band h2{font:italic 300 44px/1.1 var(--serif);margin:0 0 14px}.icons svg{stroke:var(--sakura-d)}.badge{border-color:var(--sakura-d);outline-color:var(--sakura-d)}
.ph{background:repeating-linear-gradient(45deg,var(--sakura),var(--sakura) 10px,#fbe9ee 10px,#fbe9ee 20px)}
@media(max-width:800px){.band{grid-template-columns:1fr}.band>div:last-child{padding:36px 20px}}

.soon{max-width:720px;margin:auto;border:1px solid var(--sakura-2);background:var(--paper);padding:40px 30px;box-shadow:0 0 0 8px var(--sakura) inset}.soon .script{font-size:38px;color:var(--sakura-ink)}.soon .lead{font:400 22px/1.4 var(--serif);margin:10px 0}.soon p{margin:8px 0}.es-line{font-size:12px;color:var(--muted);font-style:italic}
.atmos{background:linear-gradient(180deg,var(--paper),var(--sakura) 140%)}.atmos-grid{max-width:760px;margin:auto}.atmos-grid>p:first-child{font:400 21px/1.5 var(--serif)}.atmos-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:22px 0}.atmos-list li{border:1px solid var(--sakura-d);color:var(--sakura-ink);padding:8px 16px;border-radius:30px;font-size:12px;letter-spacing:.08em;background:#fff}

/* Poster section + placeholder hero (no product photos) */
.hero{background-color:var(--blush)}
.poster-sec{padding:70px 40px;text-align:center;background:var(--ivory);border-bottom:1px solid var(--line)}
.poster-sec .t{margin-bottom:10px}
.poster-sec .poster-lead{color:var(--muted);margin:0 auto 18px;max-width:520px}
.poster-sec img{max-width:480px;width:100%;height:auto;margin:0 auto 20px;display:block;box-shadow:0 10px 36px rgba(21,19,18,.12);background:#fff}
.poster-sec .poster-follow{font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px}
.poster-sec .poster-follow a{text-decoration:none;color:var(--sakura-ink)}
.poster-sec .poster-dl{font-size:13px;margin:0}
.poster-sec .poster-dl a{color:var(--muted)}
@media(max-width:800px){.poster-sec{padding:50px 16px}.poster-sec img{max-width:100%}}

.park-hero{display:inline-flex;align-items:center;gap:10px;margin-top:16px;padding:10px 18px;border:1.5px solid #A3214F;border-radius:999px;background:#fff;color:#2A211C;font-size:14px;font-weight:500;line-height:1.4;text-align:left}.park-hero strong{color:#A3214F;font-weight:700;letter-spacing:.02em}.park-p{flex:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;background:#A3214F;color:#fff;font:700 15px/1 Montserrat,Arial,sans-serif}@media(max-width:600px){.park-hero{font-size:13px;padding:9px 14px;border-radius:14px}}
