/* WeddingOS private invitation access — sage botanical edition */
.access-shell{position:relative;min-height:100svh;display:grid;place-items:center;overflow:hidden;padding:36px 20px;background:radial-gradient(circle at 18% 12%,rgba(255,255,255,.88),transparent 30%),radial-gradient(circle at 86% 18%,rgba(174,185,168,.28),transparent 34%),linear-gradient(145deg,#f7f3eb,#edf0e8 72%);color:#414536;font-family:var(--sans,"Manrope",system-ui,sans-serif)}
.access-shell::before{content:"";position:absolute;inset:18px;border:1px solid rgba(104,113,83,.16);border-radius:30px;pointer-events:none}.access-light{position:absolute;width:64vw;height:64vw;max-width:760px;max-height:760px;left:-18vw;top:-22vw;border-radius:50%;background:radial-gradient(circle,rgba(255,250,241,.96),rgba(183,190,168,.16) 54%,transparent 72%);pointer-events:none}.access-card{position:relative;z-index:2;width:min(620px,100%);padding:clamp(34px,7vw,64px);text-align:center;border:1px solid rgba(104,113,83,.16);border-radius:30px;background:rgba(255,250,241,.94);box-shadow:0 28px 80px rgba(65,69,54,.11);animation:access-arrive .7s cubic-bezier(.22,1,.36,1) both}.access-card::before,.access-card::after{content:"";position:absolute;width:56px;height:56px;pointer-events:none;opacity:.7}.access-card::before{left:18px;top:18px;border-left:1px solid rgba(165,138,87,.46);border-top:1px solid rgba(165,138,87,.46);border-radius:16px 0 0 0}.access-card::after{right:18px;bottom:18px;border-right:1px solid rgba(165,138,87,.46);border-bottom:1px solid rgba(165,138,87,.46);border-radius:0 0 16px 0}.access-neutral{max-width:560px}.access-monogram{width:68px;height:68px;margin:0 auto 24px;display:grid;place-items:center;border:1px solid rgba(104,113,83,.28);border-radius:50%;font-family:var(--display,"Cormorant Garamond",serif);font-size:1.25rem;color:#687153;background:rgba(231,235,226,.72)}.access-kicker{margin:0 0 15px;color:#7d8870;font-size:.69rem;font-weight:700;letter-spacing:.28em}.access-card h1{margin:0;color:#414536;font-family:var(--display,"Cormorant Garamond",serif);font-size:clamp(2.8rem,8vw,5rem);font-weight:500;line-height:.96;letter-spacing:-.03em}.access-card>p:not(.access-kicker){max-width:490px;margin:22px auto 0;color:#687064;line-height:1.75}.access-form{display:grid;gap:12px;margin:30px auto 0;text-align:left}.access-form label{font-size:.75rem;font-weight:700;letter-spacing:.07em;color:#58624f}.access-form input{width:100%;min-height:54px;padding:0 17px;border:1px solid rgba(104,113,83,.22);border-radius:14px;background:#fff;color:#414536;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.access-form input::placeholder{color:#929889}.access-form input:focus{border-color:#8f9981;box-shadow:0 0 0 4px rgba(143,153,129,.12)}.access-button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:0 24px;background:#687153;color:#fffaf1;font-weight:800;text-decoration:none;box-shadow:0 12px 28px rgba(104,113,83,.16);transition:transform .2s ease,box-shadow .2s ease}.access-button:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(104,113,83,.2)}.access-button.secondary{margin-top:28px;border:1px solid rgba(104,113,83,.24);background:#fffaf1;color:#58624f}.access-button:disabled{opacity:.6;cursor:wait}.access-message{min-height:22px;margin:2px 0 0!important;color:#8b5750!important;font-size:.84rem;line-height:1.4!important}.access-hint{display:block;margin-top:12px;color:#7b8475}.access-line{width:min(260px,70%);height:1px;margin:28px auto 18px;background:linear-gradient(90deg,transparent,#ad905f,transparent);opacity:.55}.access-card small{color:#7f8878;line-height:1.5}.access-branch{position:absolute;width:330px;height:560px;opacity:.2;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 330 560' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%238f9981' stroke-width='2'%3E%3Cpath d='M15 550 C80 460 58 330 145 254 C222 187 218 92 312 12'/%3E%3Cpath d='M78 438 C40 420 22 391 12 350 M117 352 C154 338 181 309 199 276 M149 252 C117 228 96 199 82 164 M222 166 C258 151 283 127 299 94'/%3E%3C/g%3E%3Cg fill='%23aeb7a0'%3E%3Cellipse cx='51' cy='405' rx='24' ry='9' transform='rotate(38 51 405)'/%3E%3Cellipse cx='171' cy='323' rx='25' ry='10' transform='rotate(-28 171 323)'/%3E%3Cellipse cx='111' cy='210' rx='24' ry='9' transform='rotate(38 111 210)'/%3E%3Cellipse cx='273' cy='129' rx='26' ry='10' transform='rotate(-30 273 129)'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;pointer-events:none}.access-branch.left{left:-70px;bottom:-80px}.access-branch.right{right:-70px;top:-70px;transform:scaleX(-1)}
@keyframes access-arrive{from{opacity:0;transform:translateY(18px) scale(.99)}to{opacity:1;transform:none}}
@media(max-width:620px){.access-shell{padding:22px 14px}.access-shell::before{inset:9px;border-radius:22px}.access-card{padding:38px 24px;border-radius:24px}.access-card h1{font-size:clamp(2.55rem,14vw,4.1rem)}.access-branch{width:240px;height:420px;opacity:.13}}
@media(prefers-reduced-motion:reduce){.access-card{animation:none!important}.access-button{transition:none}}
