*{margin:0;padding:0;box-sizing:border-box}body,html{background:#e8e2d6}body{font-family:Gowun Batang,serif;color:#3a352f;-webkit-font-smoothing:antialiased}.en{font-family:Cormorant Garamond,serif}.script{font-family:Parisienne,cursive}.page{background:#e8e2d6;min-height:100vh;display:flex;justify-content:center}.card{position:relative;width:100%;max-width:480px;background:#faf7f1;color:#3a352f;overflow:hidden;box-shadow:0 0 80px rgba(58,53,47,.12)}@keyframes kenburns{0%{transform:scale(1)}to{transform:scale(1.12)}}@keyframes softpulse{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(6px)}}.reveal{opacity:0;transform:translateY(26px);transition:opacity 1.1s ease,transform 1.1s ease}.reveal.shown{opacity:1;transform:none}.section-script{font-family:Parisienne,cursive;font-size:30px;color:#b0a084}.section-caption{font-family:Cormorant Garamond,serif;font-size:12px;letter-spacing:4px;text-transform:uppercase;color:#a39b8f;margin-top:4px}.vline{width:1px;height:46px;background:#d9cfbd;margin:30px auto}.diamond{display:inline-block;width:6px;height:6px;transform:rotate(45deg);background:#c2ad84}.hero{position:relative;height:100svh;min-height:620px;width:100%;overflow:hidden}.hero img{width:100%;height:100%;object-fit:cover;object-position:center 28%;animation:kenburns 18s ease-out forwards}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,hsla(40,47%,96%,.18) 0,hsla(40,47%,96%,0) 26%,hsla(40,47%,96%,0) 52%,hsla(40,47%,96%,.82) 84%,#faf7f1)}.bgm-btn{position:absolute;top:18px;right:18px;z-index:40;width:42px;height:42px;border-radius:50%;border:1px solid hsla(38,22%,60%,.5);background:hsla(40,47%,96%,.7);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#8a7b5e;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px;margin-top:30px}.gallery-item{aspect-ratio:1/1;overflow:hidden;cursor:pointer;background-color:#efe8db;background-size:cover;background-position:50%;transition:transform .6s ease}.gallery-item:hover{transform:scale(1.04)}.map-links{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-top:14px}.map-links a{text-decoration:none;padding:12px 4px;border:1px solid #e1d6c2;border-radius:6px;background:#faf7f1;color:#5a534a;font-size:13px}.info-block{border-top:1px solid #e6dcca;padding-top:16px}.info-label{font-size:13px;letter-spacing:2px;color:#a08d6a;margin-bottom:6px}.info-text{font-size:14px;color:#4a443c;line-height:1.7}.info-sub{color:#9a9184;font-size:13px}.contact-row{justify-content:space-between;border:1px solid #ece4d4;border-radius:8px;padding:16px 18px}.contact-icon,.contact-row{display:flex;align-items:center}.contact-icon{text-decoration:none;width:40px;height:40px;border-radius:50%;background:#f1ebdf;color:#8a7b5e;justify-content:center;font-size:16px}.acc-toggle{cursor:pointer;background:#faf7f1;border:1px solid #ece4d4;padding:16px 20px;align-items:center;justify-content:space-between}.acc-list,.acc-toggle{border-radius:8px;display:flex}.acc-list{flex-direction:column;gap:1px;background:#ece4d4;overflow:hidden}.acc-row{background:#faf7f1;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px}.copy-btn{flex-shrink:0;border:1px solid #d9cebb;background:#fff;color:#8a7b5e;font-size:12px;border-radius:5px;padding:7px 12px;cursor:pointer}.gb-form{margin-top:26px;display:flex;flex-direction:column;gap:10px}.gb-form input,.gb-form textarea{font-family:Gowun Batang,serif;border:1px solid #e2d9c7;border-radius:7px;padding:12px 14px;font-size:14px;color:#3a352f;background:#faf7f1;outline:none;resize:none}.gb-form button{font-family:Gowun Batang,serif;border:none;background:#c2ad84;color:#fff;border-radius:7px;padding:13px;font-size:14px;letter-spacing:2px;cursor:pointer}.gb-msg{text-align:left;background:#f4efe6;border-radius:8px;padding:15px 18px}.lightbox{position:fixed;inset:0;z-index:60;background:rgba(28,25,21,.92);display:flex;align-items:center;justify-content:center;padding:20px}.lightbox-img{width:92vw;max-width:460px;height:86vh;background-size:contain;background-position:50%;background-repeat:no-repeat;border-radius:3px}.lightbox button{position:absolute;border:none;border-radius:50%;background:hsla(0,0%,100%,.14);color:#fff;cursor:pointer}.toast{position:fixed;left:50%;bottom:40px;transform:translateX(-50%);z-index:70;background:rgba(58,53,47,.94);color:#fff;font-size:13px;letter-spacing:1px;padding:11px 22px;border-radius:30px}