@font-face{font-family:Francisco;src:url('/gate/francisco-regular.ttf') format('truetype');font-display:swap}
:root{--green:#1b251d;--sage:#c2cda6;--paper:#eeeee3;--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}body{margin:0;background:var(--green);color:var(--paper);font:16px/1.5 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;min-height:100svh;overflow-x:hidden}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button{cursor:pointer}button:disabled{cursor:wait}button:focus-visible,a:focus-visible{outline:2px solid var(--sage);outline-offset:6px}[hidden]{display:none!important}h1,h2,p{margin:0}::selection{background:var(--sage);color:var(--green)}
.gate-header{height:124px;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;position:relative;z-index:2}.gate-header a{display:block;line-height:0}.gate-header img{width:225px;height:auto}.private-label{font-size:13px;color:var(--sage);display:flex;gap:12px;align-items:center}.private-label>span{height:6px;width:6px;background:var(--sage);border-radius:50%;box-shadow:0 0 0 5px #c2cda60c}
.entrance{display:grid;grid-template-columns:1.2fr 1fr;min-height:calc(100svh - 225px);max-width:1700px;margin:auto;align-items:center;padding:35px 9vw 65px 6vw;gap:9vw}.invitation{position:relative;min-height:510px;display:flex;align-items:center;isolation:isolate}.invitation-copy{position:relative;z-index:2;padding-top:18px;animation:arrive 1.2s var(--ease) both}.eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--sage);margin-bottom:30px}.invitation h1{font:clamp(70px,8.2vw,130px)/.88 Francisco,Georgia,serif;letter-spacing:-.045em}.invitation h1 em{font-style:normal;color:var(--sage)}.invitation-note{font-size:15px;line-height:1.6;margin-top:36px;color:#c5ccbd}
.doorway{position:absolute;inset:0 -12% -3% 21%;z-index:-1;perspective:900px;transform:translate(var(--dx,0px),var(--dy,0px));transition:transform 1.8s var(--ease);opacity:.6;pointer-events:none}.door-frame{position:absolute;border:1px solid #c2cda640;border-radius:170px 170px 0 0;transform:rotate(-12deg)}.frame-one{inset:0 0 7% 0}.frame-two{inset:4% 5% 7% 5%}.frame-three{inset:8% 10% 7% 10%}.door-light{position:absolute;inset:4% 3% 7%;border-radius:50% 50% 0 0;background:radial-gradient(ellipse at 80% 28%,#bcc89a40,transparent 61%);filter:blur(17px)}.door-leaf{position:absolute;inset:12% 15% 7%;border-radius:140px 140px 0 0;background:linear-gradient(105deg,#a4b18a12 0,#a4b18a0a 55%,#c2cda652 100%);border:1px solid #c2cda629;transform-origin:left center;transform:rotate(-12deg) rotateY(-34deg);box-shadow:14px 2px 44px #a6b58c0c;animation:door-breathe 12s ease-in-out infinite alternate}.door-shadow{position:absolute;inset:72% -40% -14% 0;transform:rotate(-12deg);background:linear-gradient(170deg,#bac99b16,transparent 61%);clip-path:polygon(12% 0,68% 0,100% 100%,0 100%)}
.entry-panel{width:100%;max-width:410px;justify-self:end;position:relative;padding-top:8px;animation:arrive 1.3s .12s var(--ease) both}.entry-mark{font-size:31px;color:var(--sage);line-height:1;margin-bottom:29px}.entry-panel h2{font:clamp(44px,4.4vw,65px)/1 Francisco,Georgia,serif;letter-spacing:-.035em}.entry-intro{font-size:16px;color:#bdc5b5;margin-top:19px;line-height:1.6}form{margin-top:37px}label{display:block;font-size:13px;margin-bottom:11px;color:#d9dfcf}.password-field{display:flex;align-items:center;border:1px solid #cad4b547;background:#ffffff03;transition:border-color .2s,background .2s;min-height:60px}.password-field:focus-within{border-color:var(--sage);background:#c2cda608;box-shadow:0 0 0 3px #c2cda60b}.password-field:has(input[aria-invalid=true]){border-color:#dfac97}.password-field input{min-width:0;width:100%;height:58px;padding:14px 17px;background:transparent;border:0;color:var(--paper);outline:0;font-size:18px;letter-spacing:.06em;border-radius:0}.password-field input[type=password]{letter-spacing:.18em}.password-field button{flex:none;border:0;background:transparent;color:var(--sage);font-size:12px;padding:17px 18px}.password-field button:focus-visible{outline-offset:-7px}.form-message{min-height:43px;padding-top:10px;font-size:12px;line-height:1.4;color:#e8b9a4}.caps-lock{font-size:12px;color:var(--sage);padding-top:7px}.enter-button{border:0;background:var(--sage);color:var(--green);min-height:59px;padding:14px 20px;display:flex;justify-content:space-between;align-items:center;width:100%;font-size:15px;transition:background .25s,transform .3s}.enter-button:hover{background:#d3ddbd}.enter-button:active{transform:translateY(1px)}.button-arrow{font-size:27px;line-height:1;transition:transform .4s var(--ease)}.enter-button:hover .button-arrow{transform:translate(3px,-3px)}.enter-button:disabled{opacity:.8}.entry-status{font-size:12px;min-height:22px;margin-top:8px;color:var(--sage)}.request-access{font-size:12px;color:#9ba792;margin-top:27px}.request-access a{display:inline-block;margin-left:7px;color:var(--paper);text-decoration:none;border-bottom:1px solid #cad4b54a;padding-bottom:3px}.request-access a span{padding-left:7px}.gate-footer{margin:0 6vw;padding:22px 0 27px;border-top:1px solid #c2cda624;display:flex;align-items:end;justify-content:space-between;color:#9eaa93;font-size:11px;letter-spacing:.02em}.gate-footer>span:last-child{text-align:right}.gate-footer br{display:none}
body.entering .entry-panel,body.entering .invitation-copy{opacity:0;transform:translateY(-12px);transition:opacity .45s,transform .6s var(--ease);animation:none}body.entering .door-leaf{animation:none;transform:rotate(-12deg) rotateY(-85deg);transition:transform .65s var(--ease)}body.entering .door-light{opacity:1;filter:blur(5px);transition:filter .6s}
@keyframes arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes door-breathe{to{transform:rotate(-12deg) rotateY(-50deg);opacity:.65}}
@media(max-width:950px) and (min-width:701px){.entrance{gap:5vw;padding-right:6vw;grid-template-columns:1fr 1fr}.invitation h1{font-size:9vw}.invitation-note{max-width:220px}.eyebrow{max-width:190px}.doorway{inset:5% -10% 4% 8%}.entry-panel h2{font-size:46px}.gate-header img{width:205px}}
@media(max-width:700px){.gate-header{height:100px;padding:0 7vw}.gate-header img{width:180px}.private-label{font-size:11px;gap:9px}.entrance{display:block;padding:27px 7vw 42px;min-height:0}.invitation{min-height:245px;align-items:start}.invitation-copy{padding:0}.invitation h1{font-size:64px;line-height:.96}.invitation h1 br{display:initial}.invitation h1 em{display:inline}.eyebrow{font-size:10px;margin-bottom:22px}.invitation-note{font-size:13px;margin-top:23px;max-width:260px}.doorway{inset:-14% -6% -4% 37%;opacity:.6}.door-frame{border-radius:140px 140px 0 0}.entry-panel{max-width:none;padding-top:57px}.entry-mark{display:none}.entry-panel h2{font-size:40px}.entry-intro{margin-top:12px;font-size:14px}.entry-intro br{display:none}form{margin-top:27px}.request-access{margin-top:22px}.gate-footer{margin:0 7vw;font-size:10px;padding:21px 0 26px;gap:30px;align-items:start}.gate-footer br{display:block}.gate-footer>span:last-child{max-width:120px}.password-field{min-height:56px}.password-field input{height:54px}.enter-button{min-height:55px}}
.entrance{overflow:clip}
@media(max-width:370px){.gate-header img{width:157px}.private-label{font-size:10px;max-width:75px}.entrance{padding-top:18px}.invitation h1{font-size:56px}.invitation{min-height:235px}.entry-panel{padding-top:43px}.entry-panel h2{font-size:37px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.doorway{transform:none}}
