/* SURPRESAAA / paper, light and a little anticipation. Scoped to the access screen. */
.auth-mobile-title{display:none}
.auth-shell{width:min(1160px,calc(100% - 48px));margin:42px auto 70px;display:grid;grid-template-columns:1.06fr 1fr;border:1px solid #eadbd5;border-radius:32px;background:#fffdfb;box-shadow:0 28px 90px #6123390d;isolation:isolate}
.auth-story{position:relative;overflow:hidden;border-radius:31px 0 0 31px;padding:46px 44px 25px;background:radial-gradient(ellipse at 10% 90%,#f5c9bc88,transparent 70%),linear-gradient(140deg,#f5e6de,#f1dcd9);display:flex;flex-direction:column;color:#572437;min-width:0}
.auth-watermark{position:absolute;right:-12px;top:40px;color:#983e5310;font:italic 560px/.95 Georgia;pointer-events:none}
.auth-story-copy{position:relative;z-index:1}.auth-kicker{display:block;font-size:9px;font-weight:700;letter-spacing:.19em;color:#9d4b60;line-height:1.6}
.auth-story h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;letter-spacing:-.045em;font-size:clamp(36px,4.4vw,60px);line-height:1.04;margin:24px 0 20px}.auth-story h1 em,.auth-access h2 em{font-weight:400;color:#a43957}.auth-story-copy>p{font-size:13px;line-height:1.8;max-width:340px;color:#876773}
.auth-letter-scene{position:relative;z-index:2;margin:70px auto 8px;width:min(310px,100%);padding-top:34px}.auth-envelope{height:184px;position:relative;perspective:1000px}.auth-envelope-back{position:absolute;inset:0;border-radius:7px;background:#b56774;box-shadow:0 24px 35px #75243b26;transform:rotate(-5deg)}
.auth-letter{position:absolute;left:8%;width:84%;height:205px;bottom:20px;padding:22px 18px;text-align:center;background:linear-gradient(115deg,#fffdfa,#fff5e7);border:1px solid #fff;border-radius:3px;box-shadow:0 2px 12px #66273b0c;transform:rotate(-5deg);transition:transform .75s cubic-bezier(.2,.65,.25,1);z-index:1;color:#693347}.auth-letter>span{font-size:7px;letter-spacing:.19em;color:#b37d70}.auth-letter p{font:28px/1.06 'Cormorant Garamond',Georgia,serif;margin:17px 0}.auth-letter small{font-size:8px;color:#a27a7d}.auth-letter p em{color:#b35c68}
.auth-envelope-front{position:absolute;inset:0;background:linear-gradient(135deg,#f0cec7,#dcaab0);clip-path:polygon(0 0,50% 54%,100% 0,100% 100%,0 100%);border-radius:7px;transform:rotate(-5deg);z-index:3}.auth-envelope-flap{position:absolute;inset:0;background:linear-gradient(160deg,#f8ded6,#dbabb3);clip-path:polygon(0 0,100% 0,50% 57%);transform:rotate(-5deg);transform-origin:50% 0;z-index:4;transition:transform .6s,opacity .3s}
.auth-seal{position:absolute;z-index:5;left:calc(50% - 26px);top:69px;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;border:3px double #dc96a3;background:radial-gradient(circle at 30% 25%,#c9677d,#8e2345);color:#ffdcd1;box-shadow:0 5px 9px #6e18392b;cursor:pointer;transition:transform .3s,background .3s}.auth-seal svg{width:24px;height:24px}.auth-seal:hover{transform:scale(1.07)}
.auth-envelope.is-open .auth-envelope-flap{transform:rotate(-5deg) rotateX(175deg);z-index:0}.auth-envelope.is-open .auth-letter{transform:translateY(-97px) rotate(-3deg);transition-delay:.12s}.auth-envelope.is-open .auth-seal{transform:translateY(28px) rotate(-9deg)}
.auth-letter-hint{display:block;margin:29px auto 0;border:0;background:none;color:#8d5465;font:500 10px/1.5 'DM Sans',sans-serif;padding:12px 4px;min-height:44px;cursor:pointer}.auth-letter-hint span{margin-left:8px}.auth-story-foot{display:flex;justify-content:space-between;border-top:1px solid #92566c26;padding-top:18px;margin-top:auto;font-size:9px;letter-spacing:.04em;color:#9b7180}
.auth-access{position:relative;min-width:0;padding:44px clamp(26px,4vw,58px);align-self:center}.auth-paper-mark{position:absolute;right:28px;top:22px;transform:rotate(18deg);color:#98395208;pointer-events:none;z-index:-1}.auth-paper-mark svg{width:140px;height:140px}
.auth-tabs{display:flex;padding:5px;background:#f7f0ed;border:1px solid #eee1db;border-radius:16px;margin-bottom:32px;gap:5px}.auth-tabs a{flex:1;text-align:center;padding:13px 8px;min-height:46px;font-size:12px;font-weight:700;border-radius:11px;color:#9b7a84;transition:background .2s,color .2s,box-shadow .2s}.auth-tabs a[aria-current]{background:#fffdfb;color:#842b46;box-shadow:0 3px 12px #6731450d}
.auth-access h2{font:500 clamp(34px,3.4vw,45px)/1.05 'Cormorant Garamond',Georgia,serif;letter-spacing:-.035em;margin:15px 0}.auth-intro{color:#987b85;font-size:12px;line-height:1.8;margin:0 0 26px;max-width:320px}.auth-access .field{margin-bottom:18px;gap:8px}.auth-access .field label{font-size:11px;color:#76525f;font-weight:600}.auth-access .field input{min-height:52px;border-radius:12px;background:#fffaf7;border-color:#e8dcd7;padding:13px 15px;font-size:16px;color:#572437}.auth-access .field input::placeholder{color:#b9a4aa;font-size:13px}.auth-password{position:relative}.auth-password input{padding-right:82px!important}.auth-password>button{position:absolute;right:5px;top:4px;bottom:4px;min-width:65px;border:0;background:transparent;font-size:11px;color:#9a5369;cursor:pointer;border-radius:8px}
.auth-submit{display:flex!important;justify-content:space-between!important;width:100%;gap:14px;min-height:54px;padding:16px 24px!important;font-size:12px!important;box-shadow:0 10px 25px #89264520!important;border-radius:14px!important;margin-top:6px}.auth-submit span:last-child{font-size:20px;line-height:1;transition:transform .2s}.auth-submit:hover span:last-child{transform:translateX(4px)}.auth-submit[aria-busy=true]{opacity:.7;cursor:wait}.auth-fine{color:#a48a90;font-size:10px;line-height:1.7;margin-top:13px}.auth-fine a{text-decoration:underline;text-underline-offset:3px;color:#895069}.auth-benefits{display:flex;flex-wrap:wrap;gap:16px;padding-top:24px;margin-top:27px;border-top:1px solid #eee3df;color:#a1858e;font-size:9px}.auth-benefits span{display:flex;align-items:center;gap:7px}.auth-benefits svg{width:16px;height:16px}.auth-back{display:inline-flex;align-items:center;min-height:44px;font-size:12px;color:#98556b;margin-top:20px}.auth-google{max-width:100%;overflow:clip;margin:18px 0}.auth-divider{display:flex;align-items:center;gap:12px;font-size:10px;color:#ac9099;margin:18px 0}.auth-divider:before,.auth-divider:after{content:'';height:1px;background:#eee1db;flex:1}.auth-shell :focus-visible{outline:3px solid #b75777!important;outline-offset:4px}.auth-shell [hidden]{display:none!important}
@media(max-width:760px){.auth-shell{width:calc(100% - 28px);margin:24px auto 36px;grid-template-columns:1fr;border-radius:24px}.auth-story{border-radius:23px 23px 0 0;padding:28px 26px 22px;min-height:230px}.auth-story h1{font-size:36px;margin:13px 0 12px;max-width:65%}.auth-story-copy>p{font-size:11px;line-height:1.6;max-width:65%}.auth-story .auth-kicker{font-size:8px;max-width:80%}.auth-watermark{font-size:320px;top:-40px;right:-6px}.auth-letter-scene{position:absolute;right:13px;bottom:22px;width:120px;margin:0;padding:0}.auth-envelope{height:84px}.auth-letter{height:110px;bottom:5px;padding:10px 5px}.auth-letter>span{font-size:4px}.auth-letter p{font-size:15px;margin:8px 0}.auth-letter small{display:none}.auth-seal{width:36px;height:36px;left:calc(50% - 18px);top:26px}.auth-seal svg{width:17px;height:17px}.auth-letter-hint{font-size:8px;margin:10px 0 0;padding:8px 0}.auth-letter-hint span{display:none}.auth-envelope.is-open .auth-letter{transform:translateY(-43px) rotate(-3deg)}.auth-envelope.is-open .auth-seal{transform:translateY(10px) rotate(-9deg)}.auth-story-foot{display:none}.auth-access{padding:28px 24px 30px}.auth-tabs{margin-bottom:25px}.auth-access h2{font-size:38px}.auth-intro{margin-bottom:22px}.auth-benefits{gap:14px;font-size:8px}.auth-paper-mark svg{width:110px;height:110px}}
@media(max-width:360px){.auth-story{padding:23px 19px}.auth-story h1{font-size:31px;max-width:68%}.auth-story-copy>p{max-width:61%}.auth-letter-scene{width:104px;right:10px}.auth-access{padding:25px 19px}.auth-access h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){.auth-shell *{animation:none!important;transition:none!important}.auth-submit:hover span:last-child{transform:none}}
@media(max-width:760px){.auth-desktop-title{display:none}.auth-mobile-title{display:inline}.auth-story h1{font-size:30px;max-width:65%}.auth-story-copy>p{max-width:60%;font-size:11px}.auth-seal{width:44px;height:44px;left:calc(50% - 22px);top:22px}.auth-letter-scene{bottom:16px}.auth-letter{overflow:hidden}.auth-letter p{font-size:12px;line-height:1.1;margin:10px 0}}

/* 3.4: one coordinate system for the envelope and reserved space for the open letter. */
.auth-letter-scene{position:relative;z-index:2;width:min(310px,100%);height:425px;margin:12px auto 0;padding:0;flex-shrink:0}
.auth-envelope{position:absolute;left:0;bottom:65px;width:100%;height:184px;transform:rotate(-4deg);perspective:1000px}
.auth-envelope-back{transform:none;border-radius:8px;background:#bd7885;box-shadow:0 24px 35px #75243b22}
.auth-letter{height:215px;bottom:14px;left:8%;width:84%;padding:22px 16px;transform:translateY(48px);opacity:0;overflow:hidden;border-radius:4px;transition:transform .65s cubic-bezier(.2,.65,.25,1),opacity .2s;z-index:1}
.auth-letter p{font-size:28px;line-height:1.08;margin:17px 0}
.auth-envelope-front{transform:none;border-radius:7px;background:linear-gradient(120deg,#efcdc8,#dda8b2);clip-path:polygon(0 0,50% 53%,100% 0,100% 100%,0 100%);z-index:3}
.auth-envelope-flap{transform:none;clip-path:polygon(0 0,100% 0,50% 57%);transform-origin:50% 0;background:linear-gradient(145deg,#f6d9d1,#e4b8bf);backface-visibility:hidden;z-index:4}
.auth-envelope.is-open .auth-envelope-flap{transform:rotateX(180deg);opacity:0;z-index:0}
.auth-envelope.is-open .auth-letter{transform:translateY(-108px);opacity:1;transition-delay:.12s}
.auth-seal{top:70px;left:calc(50% - 26px);width:52px;height:52px}.auth-envelope.is-open .auth-seal{transform:translateY(20px)}
.auth-letter-hint{position:absolute;bottom:5px;left:0;right:0;margin:0;text-align:center}
@media(max-width:760px){.auth-story{min-height:300px;padding-bottom:28px}.auth-story h1{font-size:28px;max-width:calc(100% - 128px);line-height:1.08}.auth-story-copy>p{max-width:calc(100% - 128px);font-size:11px}.auth-letter-scene{position:absolute;right:14px;bottom:16px;width:110px;height:220px;margin:0}.auth-envelope{bottom:45px;height:77px;transform:rotate(-3deg)}.auth-letter{height:123px;bottom:8px;padding:12px 6px;transform:translateY(35px)}.auth-letter p{font-size:12px;line-height:1.14;margin:10px 0}.auth-letter>span{font-size:4px;letter-spacing:.1em}.auth-envelope.is-open .auth-letter{transform:translateY(-62px)}.auth-seal{width:44px;height:44px;left:calc(50% - 22px);top:20px}.auth-envelope.is-open .auth-seal{transform:translateY(5px)}.auth-letter-hint{font-size:8px;bottom:0;padding:7px 0;line-height:1.5}.auth-letter small{display:none}}
@media(prefers-reduced-motion:reduce){.auth-letter,.auth-envelope-flap,.auth-seal{transition:none!important}}
