:root{
  --navy:#102d4f;
  --ink:#182d2b;
  --green:#245847;
  --green-dark:#173f34;
  --gold:#b88a2d;
  --cream:#fffdf8;
  --line:rgba(22,58,51,.22);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Georgia,'Times New Roman',serif;color:var(--ink)}
body{min-height:100vh;overflow-x:hidden;background:#f5f7f5}
.background{position:fixed;inset:0;display:flex;z-index:-3;overflow:hidden;background:#f7f9f8}
.bg-left,.bg-right{width:50%;height:100%;background-repeat:no-repeat;background-size:cover;background-position:center 50%;filter:saturate(.78) contrast(.98)}
.bg-left{background-image:url('/left-scene.jpg')}
.bg-right{background-image:url('/right-scene.jpg')}
.bg-wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.62) 0%,rgba(255,255,255,.82) 25%,rgba(255,255,255,.95) 50%,rgba(255,255,255,.82) 75%,rgba(255,255,255,.62) 100%)}
.bg-vignette{position:absolute;inset:0;background:linear-gradient(180deg,rgba(245,248,247,.90) 0%,rgba(255,255,255,.42) 22%,rgba(255,255,255,.18) 70%,rgba(231,239,235,.72) 100%)}
.topbar{height:116px;padding:20px 24px 0;display:flex;align-items:flex-start;justify-content:center;position:relative;text-align:center;color:var(--navy);z-index:2}
.title-wrap{max-width:1200px}
.topbar h1{margin:0;font-size:clamp(30px,3.35vw,55px);line-height:1.02;letter-spacing:.025em;font-weight:700;text-shadow:0 1px 0 #fff,0 3px 8px rgba(19,45,64,.12)}
.subtitle{margin-top:8px;color:var(--green-dark);font-size:clamp(11px,1.05vw,16px);letter-spacing:.30em;font-weight:700}
.brand-mark{position:absolute;left:28px;top:25px;width:55px;height:55px;border:2px solid rgba(184,138,45,.9);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.82);box-shadow:0 3px 14px rgba(30,54,50,.13)}
.brand-mark span{color:var(--gold);font-size:20px}
.page-shell{min-height:calc(100vh - 210px);display:flex;align-items:center;justify-content:center;padding:8px 20px 24px}
.glass-frame{width:min(930px,92vw);padding:9px;border:2px solid rgba(37,88,71,.35);border-radius:24px;background:rgba(255,255,255,.36);box-shadow:0 18px 50px rgba(25,51,46,.18),inset 0 0 0 1px rgba(255,255,255,.8);backdrop-filter:blur(2px)}
.access-card{background:rgba(255,254,249,.97);border:1.5px solid #c79a3d;border-radius:20px;padding:34px 52px 30px;text-align:center;box-shadow:0 12px 30px rgba(25,51,46,.16)}
.lock-ring{width:76px;height:76px;margin:-6px auto 10px;border:2px solid #b88a2d;border-radius:50%;display:grid;place-items:center;background:#fffdf5;box-shadow:0 2px 8px rgba(25,51,46,.10)}
.lock-ring span{font-family:Arial,sans-serif;font-size:32px}
.access-card h2{margin:0;color:var(--green-dark);font-size:clamp(34px,4vw,50px);line-height:1.05;font-weight:700}
.ornament{display:flex;align-items:center;justify-content:center;gap:10px;margin:10px auto 18px;color:var(--gold)}
.ornament i{display:block;width:78px;height:2px;background:var(--gold)}.ornament b{font-size:11px}
.lead{max-width:720px;margin:0 auto 24px;font-size:clamp(17px,1.55vw,22px);line-height:1.55;color:#344a45}
.notice{max-width:760px;margin:0 auto 22px;padding:19px 22px;border:1px solid #d3ad5d;border-radius:13px;background:#f7f3e5;text-align:left;box-shadow:inset 0 1px rgba(255,255,255,.95)}
.notice strong{font-family:Arial,sans-serif;font-size:18px;color:var(--green-dark)}.notice p{margin:9px 0 0;font-family:Arial,sans-serif;font-size:16px;line-height:1.65;color:#3f4e49}
.instruction{max-width:760px;margin:0 auto;color:#29463e;font-size:17px;line-height:1.6}.instruction p{margin:0}.instruction strong{color:var(--green-dark)}
.small-note{max-width:740px;margin:20px auto 0;font-family:Arial,sans-serif;font-size:13px;line-height:1.55;color:#66756f}
.bottom-strip{width:min(1080px,90vw);margin:0 auto 20px;padding:14px 18px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:0;color:var(--green-dark);text-align:center}
.feature{display:flex;justify-content:center;align-items:center;gap:12px;min-height:50px;padding:5px 18px}.feature+.feature{border-left:1px solid rgba(36,88,71,.25)}
.feature-icon{width:38px;height:38px;border:1px solid rgba(184,138,45,.75);border-radius:50%;display:grid;place-items:center;color:var(--green-dark);background:rgba(255,255,255,.72);font-family:Arial,sans-serif;font-weight:700;font-size:19px}
.feature strong{display:block;font-family:Arial,sans-serif;font-size:12px;letter-spacing:.11em;color:var(--navy)}.feature small{display:block;margin-top:3px;font-family:Arial,sans-serif;font-size:12px;color:#596a65}
footer{padding:11px 20px 17px;display:flex;justify-content:space-between;gap:20px;color:#4d615b;font-family:Arial,sans-serif;font-size:11px;letter-spacing:.04em;text-align:center}
@media(max-width:800px){
 .topbar{height:94px;padding-top:13px}.brand-mark{display:none}.subtitle{letter-spacing:.15em}
 .page-shell{min-height:calc(100vh - 244px);padding:5px 13px 18px}.glass-frame{width:100%;border-radius:19px;padding:6px}
 .access-card{padding:27px 22px 25px;border-radius:15px}.lock-ring{width:65px;height:65px}.lock-ring span{font-size:27px}.access-card h2{font-size:35px}
 .lead{font-size:17px;line-height:1.45}.notice{padding:16px}.notice p{font-size:14px}.instruction{font-size:15px}.small-note{font-size:12px}
 .bottom-strip{width:94vw;grid-template-columns:1fr;padding:8px 0;margin-bottom:5px}.feature{min-height:44px;padding:7px}.feature+.feature{border-left:0;border-top:1px solid rgba(36,88,71,.20)}
 footer{flex-direction:column;padding-bottom:12px;font-size:10px}.bg-left,.bg-right{background-position:center}.bg-wash{background:linear-gradient(90deg,rgba(255,255,255,.72),rgba(255,255,255,.88))}.bg-vignette{background:linear-gradient(180deg,rgba(245,248,247,.88),rgba(255,255,255,.30) 55%,rgba(231,239,235,.72))}
}
@media(max-width:430px){.topbar h1{font-size:27px}.subtitle{font-size:9px;letter-spacing:.10em}.access-card h2{font-size:31px}.ornament i{width:48px}.lead{font-size:16px}.notice strong{font-size:16px}.notice p{font-size:13px}}
