:root{color:#fff8eb;background:#062f38;font-family:Arial,sans-serif}body{background:linear-gradient(150deg,#041f27,#0f5a66 60%,#062f38);min-height:100vh;margin:0}a{color:inherit}.topbar{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#031e24f0;border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:2rem;padding:1rem clamp(1rem,4vw,4rem);display:flex;position:sticky;top:0}.brand{letter-spacing:.08em;white-space:nowrap;font-weight:700;text-decoration:none}.topnav{align-items:center;gap:1.5rem;display:flex}.topnav a{text-decoration:none}.topnav a:hover{color:#f0c979}.full-menu{align-items:center;gap:clamp(.8rem,2vw,1.8rem);font-size:.9rem;font-weight:700;display:flex}.nav-link,.admin-link,.nav-group summary{cursor:pointer;text-decoration:none}.nav-group{position:relative}.nav-group summary{padding:.6rem .1rem;list-style:none}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary:after{content:" ▾";font-size:.75em}.nav-dropdown{background:#052f38;border:1px solid #f0c97947;border-radius:12px;min-width:215px;padding:.5rem;display:grid;position:absolute;top:calc(100% + .45rem);left:50%;transform:translate(-50%);box-shadow:0 18px 45px #00000059}.nav-dropdown a{border-radius:8px;padding:.72rem .8rem;text-decoration:none}.nav-dropdown a:hover{color:#f0c979;background:#ffffff14}.admin-link{color:#f0c979;border:1px solid #f0c97980;border-radius:999px;padding:.55rem .75rem}.hero-banner{object-fit:cover;width:100%;max-height:68vh;display:block}.home-copy{text-align:center;padding:4rem 1.5rem 5rem}.eyebrow{color:#f0c979;letter-spacing:.24em;text-transform:uppercase;margin:0 0 .75rem;font-size:.78rem;font-weight:700}.home-copy h1,.room-intro h1,.placeholder h1{letter-spacing:-.005em;margin:0;font:500 clamp(2rem,5vw,4rem)/1.05 Georgia,serif}.tagline{letter-spacing:.14em;font-size:1.2rem}.muted{color:#fff8ebb8}.room-intro{text-align:center;width:min(1000px,92vw);margin:auto;padding:4.5rem 0 3rem}.room-intro .muted{max-width:700px;margin:1.2rem auto;line-height:1.6}.placeholder{text-align:center;width:min(850px,90vw);margin:0 auto;padding:clamp(5rem,15vh,10rem) 0}.placeholder p{color:#fff8ebc2;max-width:650px;margin:1.5rem auto;font-size:1.1rem;line-height:1.7}.gold-button{color:#082f38;background:#f0c979;border-radius:999px;margin-top:1rem;padding:.8rem 1.1rem;font-weight:800;text-decoration:none;display:inline-block}.carousel{background:#031d23;border:1px solid #ffffff26;border-radius:24px;width:min(1180px,94vw);margin:0 auto 5rem;overflow:hidden;box-shadow:0 30px 80px #00000059}.viewport{touch-action:pan-y;overflow:hidden}.track{transition:transform .5s;display:flex}.slide{min-width:100%}.photo-frame{background:#02191f;place-items:center;height:clamp(390px,61vw,700px);padding:1rem;display:grid;position:relative}.photo-frame img{object-fit:contain;width:100%;height:100%}.caption{white-space:pre-line;background:#fff;min-height:230px;max-height:430px;padding:2rem clamp(1.25rem,5vw,4rem);line-height:1.65;overflow:auto}.caption-text{color:#fff8eb;background:#03232ae0;border-radius:14px;padding:1.25rem 1.5rem;box-shadow:0 10px 30px #0000002e}.controls{justify-content:space-between;align-items:center;gap:1rem;padding:1rem 2rem;display:flex}.arrow{color:#fff;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff4d;border-radius:50%;width:46px;height:46px;font-size:1.4rem}.dots{gap:.5rem;display:flex}.dot{background:#ffffff59;border:0;border-radius:50%;width:10px;height:10px;padding:0}.dot.active{background:#f0c979;border-radius:99px;width:28px}.counter{color:#ffffffa6;font-size:.8rem}.admin-page{width:min(1100px,94vw);margin:0 auto;padding:3rem 0 5rem}.admin-head{justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:2rem;display:flex}.admin-grid{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.panel{background:#02191fb3;border:1px solid #ffffff26;border-radius:18px;padding:1.5rem}.panel.full{grid-column:1/-1}.field{gap:.4rem;margin-bottom:1rem;display:grid}.field label{color:#f0c979;font-size:.82rem;font-weight:700}.field input,.field textarea{color:#fff;width:100%;font:inherit;background:#082f38;border:1px solid #fff3;border-radius:10px;padding:.8rem}.field textarea{resize:vertical;min-height:140px}.field textarea.long{min-height:300px}.save{color:#082f38;cursor:pointer;background:#f0c979;border:0;border-radius:99px;padding:.9rem 1.25rem;font-weight:800}.status{color:#bfecc7;min-height:1.4rem}.signin-card{color:#123;background:#fff;border-radius:18px;width:min(560px,90vw);margin:12vh auto;padding:2rem}.signin-card a{color:#fff;background:#0f5a66;border-radius:99px;margin-top:1rem;padding:.8rem 1rem;text-decoration:none;display:inline-block}@media (max-width:760px){.topbar{flex-direction:column;align-items:flex-start;gap:.6rem}.full-menu{flex-wrap:wrap;align-items:flex-start;gap:.6rem 1rem;width:100%}.nav-dropdown{width:auto;position:fixed;top:auto;left:1rem;right:1rem;transform:none}.admin-link{margin-left:auto}.hero-banner{object-position:43% center;height:46vh}.admin-grid{grid-template-columns:1fr}.panel.full{grid-column:auto}.admin-head{display:block}.photo-frame{height:54vh}.caption{max-height:48vh}.dots{gap:.3rem}.dot{width:8px;height:8px}.dot.active{width:18px}}.home-copy h1{white-space:pre-line}.caption{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:12px;width:fit-content;max-width:calc(100% - 40px);display:inline-block;color:#fff8eb!important;background:#03232a40!important;padding:16px 50px!important}
