@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Montserrat:wght@400;500;600&display=swap');
:root{--navy:#0E142E;--gold:#C99A28;--cream:#F7F4EC;--text:#26314B}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;background:var(--navy);font-family:Montserrat,Arial,sans-serif}body{overflow:hidden}
.hero{position:relative;width:100%;height:100%;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(201,154,40,.08),transparent 38%),var(--navy)}
.logo{width:min(88vw,1280px);max-height:78vh;object-fit:contain;opacity:0;transform:scale(.985);filter:drop-shadow(0 18px 42px rgba(0,0,0,.35));animation:reveal 4.8s cubic-bezier(.22,.61,.36,1) .45s forwards}
.copyright{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);width:92%;text-align:center;color:rgba(247,244,236,.46);font-size:11px;letter-spacing:.08em;opacity:0;animation:fade .8s ease 5.2s forwards}
.menu-button{position:fixed;top:24px;right:28px;width:60px;height:60px;border:1px solid rgba(201,154,40,.25);border-radius:50%;background:rgba(14,20,46,.66);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;cursor:pointer;z-index:40;opacity:0;backdrop-filter:blur(10px);animation:fade .8s ease 5.1s forwards}
.menu-button span{width:28px;height:2px;background:#E1BE64;border-radius:2px;transition:.3s}.menu-button[aria-expanded=true] span:nth-child(1){transform:translateY(9px) rotate(45deg)}.menu-button[aria-expanded=true] span:nth-child(2){opacity:0}.menu-button[aria-expanded=true] span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}
.scrim{position:fixed;inset:0;background:rgba(0,0,0,.48);backdrop-filter:blur(3px);z-index:20}
.menu{position:fixed;top:0;right:0;width:min(370px,88vw);height:100%;padding:118px 36px 40px;background:rgba(8,14,34,.98);border-left:1px solid rgba(201,154,40,.2);box-shadow:-20px 0 60px rgba(0,0,0,.35);transform:translateX(102%);transition:transform .42s cubic-bezier(.22,.61,.36,1);z-index:30}.menu.open{transform:translateX(0)}
.menu-brand{font-family:'Cormorant Garamond',serif;color:var(--gold);font-size:38px;margin:0 0 26px 8px}.menu button{display:block;width:100%;padding:21px 8px;border:0;border-top:1px solid rgba(255,255,255,.09);background:none;color:var(--cream);text-align:left;font-size:24px;cursor:pointer;transition:.2s}.menu button:last-child{border-bottom:1px solid rgba(255,255,255,.09)}.menu button:hover{color:#E1BE64;transform:translateX(5px)}
.panel{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:26px;background:rgba(14,20,46,.965);opacity:0;visibility:hidden;transform:translateY(14px);transition:.32s}.panel.open{opacity:1;visibility:visible;transform:none}
.card{width:min(900px,100%);max-height:82vh;overflow:auto;padding:52px 58px;background:rgba(255,255,255,.97);border:1px solid rgba(201,154,40,.25);border-radius:22px;color:var(--text);box-shadow:0 30px 80px rgba(0,0,0,.45)}.narrow{width:min(700px,100%)}
.close{position:fixed;top:22px;right:27px;width:54px;height:54px;border-radius:50%;border:1px solid rgba(201,154,40,.35);background:rgba(14,20,46,.7);color:#E1BE64;font-size:34px;cursor:pointer}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:600;color:#87681D}h1{margin:4px 0 0;font-family:'Cormorant Garamond',serif;font-size:clamp(50px,7vw,78px);line-height:1;color:var(--navy)}.rule{width:80px;height:3px;background:var(--gold);margin:26px 0 32px}.card p{font-size:clamp(18px,2vw,23px);line-height:1.75;margin:0 0 22px}
form{display:grid;gap:12px}label{margin-top:6px;font-size:15px;font-weight:600}input{width:100%;padding:16px 17px;border:1px solid #CDD3DF;border-radius:10px;font-size:18px;outline:none}input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,154,40,.16)}
.primary{display:inline-flex;align-items:center;justify-content:center;width:max-content;margin-top:12px;padding:15px 24px;border:0;border-radius:10px;background:var(--gold);color:#10162B;text-decoration:none;font-weight:700;cursor:pointer}.inline{margin-top:24px}.email{display:block;font-size:clamp(22px,3vw,34px);color:#74540E;text-decoration:none;font-weight:600}.note{font-size:14px!important;color:#6A7182!important;margin-top:10px!important}
@keyframes reveal{to{opacity:1;transform:scale(1)}}@keyframes fade{to{opacity:1}}
@media(max-width:700px){.logo{width:94vw;max-height:70vh}.panel{padding:14px}.card{padding:38px 24px;border-radius:16px}.menu-button{top:17px;right:17px}.copyright{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
