/* Embedded, licensed substitutes: Nimbus Sans (UI), Geist variable (display).
   This is a static composition. Login and Google buttons do not authenticate. */
@font-face{font-family:'FreeSans';src:url('../fonts/Tethr-Regular.woff2') format('woff2');font-weight:400;font-display:block;}
@font-face{font-family:'FreeSans';src:url('../fonts/Tethr-Bold.woff2') format('woff2');font-weight:700;font-display:block;}
@font-face{font-family:'Eloquia';src:url('../fonts/Eloquia-200-800-h-2.woff2') format('woff2-variations');font-weight:200 800;font-display:block;}
:root{
--W:1464;--H:949;--photoW:836;--paneW:628;--cardW:613;--cardH:922;
--h1-top:65.00px;--h1-fs:42.55px;--h1-ls:-2.553px;--h1-ws:1.300px;--h1-wght:584;
--sub-top:120.00px;--sub-fs:20.41px;--sub-ls:-0.245px;--sub-ws:-2.000px;--sub-fw:400;--sub-fwb:700;--fieldpad:19px;
--eph-fs:15.68px;--eph-ls:-0.188px;--eph-left:17.0px;--eph-fw:400;--eph-ws:0px;--pph-fs:17.29px;--pph-ls:-0.698px;--pph-left:18px;--pph-fw:400;
--login-fs:16.38px;--login-fw:400;--login-ls:0.200px;--login-gap:10px;--login-dy:0.00px;--login-padl:-12.00px;--arrow-w:13.2px;
--div-top:477px;--or-fs:11.5px;--or-fw:700;--or-ls:0.8px;--or-dy:2.00px;--or-dx:0.00px;--or-line-l:205px;--or-line-r:204px;
--g-gap:17px;--g-icon:18.5px;--gt-fs:18.10px;--gt-fw:400;--gt-ls:-0.217px;--gt-ws:-1.000px;--gt-dy:1.00px;
--bt-top:611.00px;--bt-fs:16.37px;--bt-fw:400;--bt-ls:-0.196px;--bt-ws:-2.060px;--bt-fwb:700;--bt-uo:3px;
--card-shadow:1px 10px 14px rgba(10,14,20,0.14),0 1px 3px rgba(10,14,20,0.05);--cs:1;
--ink:#000;--h1-color:#2c3343;--sub-grey:#797979;--ph:#606060;--or:#5a5a5b;--gtext:#232424;--bottom:#0a0a0a;
--btn1:#c7ff35;--btn2:#bcee32;--inputFill:#fafafa;--inputBorder:#acacae;--pwFill:#f9f9f9;--gBorder:#c8c8ca;--divider:#b1b1b2;--page:#fefefe;--signal:#c7ff35;
}
*{box-sizing:border-box;}html,body{height:100%;background:var(--page);}body{margin:0;font-family:'FreeSans',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;overflow:hidden;}button,input{font:inherit;}button,a{-webkit-tap-highlight-color:transparent;}button{cursor:pointer;}button, input{outline-offset:2px;}p,h1{margin:0;}svg{display:block;}::selection{background:var(--signal);color:#111;}:focus-visible{outline:2px solid #526f00;outline-offset:2px;}
.stage{position:fixed;inset:0;overflow:hidden;}.photo{position:absolute;left:0;top:0;height:100%;width:57.1038%;overflow:hidden;background:#0b0b0c;}

.pane{position:absolute;left:57.1038%;right:0;top:0;bottom:0;}.card{position:absolute;left:1px;top:14px;width:613px;height:922px;border-radius:26px;overflow:hidden;background:rgba(254,254,254,.90);backdrop-filter:blur(28px) saturate(160%);border:1px solid rgba(0,0,0,.036);box-shadow:var(--card-shadow);}.card-in{position:absolute;left:0;top:0;width:613px;height:922px;transform-origin:left top;}.col{position:absolute;left:62px;width:488px;}.center{text-align:center;}#h1{top:var(--h1-top);font-family:'Eloquia',sans-serif;font-variation-settings:'wght' var(--h1-wght);font-size:var(--h1-fs);letter-spacing:var(--h1-ls);word-spacing:var(--h1-ws);line-height:1.15;color:var(--h1-color);}#sub{top:var(--sub-top);font-size:var(--sub-fs);letter-spacing:var(--sub-ls);word-spacing:var(--sub-ws);font-weight:var(--sub-fw);line-height:1.3;color:var(--sub-grey);}#sub b{font-weight:var(--sub-fwb);}
.field{position:absolute;left:62px;width:489px;display:flex;align-items:center;border-radius:12px;}.field input{width:100%;height:100%;min-width:0;color:#20251e;background:transparent;border:0;border-radius:inherit;padding:0 var(--fieldpad);}.field input::placeholder{color:var(--ph);opacity:1;}#email{top:203px;height:61px;background:var(--inputFill);border:1.5px solid var(--inputBorder);}#email input{padding-left:var(--eph-left);font-size:var(--eph-fs);letter-spacing:var(--eph-ls);font-weight:var(--eph-fw);word-spacing:var(--eph-ws);}#pw{top:273.5px;height:59px;background:var(--pwFill);border:0;}#pw input{padding-left:var(--pph-left);font-size:var(--pph-fs);letter-spacing:var(--pph-ls);font-weight:var(--pph-fw);}
#loginBtn{position:absolute;left:62px;top:366px;width:489px;height:65.5px;border:0;border-radius:999px;background:linear-gradient(180deg,var(--btn1),var(--btn2));color:#17200b;display:flex;align-items:center;justify-content:center;gap:var(--login-gap);padding-left:0;padding-right:4px;box-shadow:0 8px 20px rgba(18,26,34,.16),0 2px 5px rgba(18,26,34,.10);font-size:var(--login-fs);font-weight:var(--login-fw);letter-spacing:var(--login-ls);transition:transform .18s cubic-bezier(.2,.7,.3,1),box-shadow .18s ease,filter .18s ease;}#loginBtn span{margin-left:var(--login-padl);transform:translateY(var(--login-dy));}#loginBtn svg{width:var(--arrow-w);height:var(--arrow-w);}#loginBtn:hover{filter:brightness(1.12);}#loginBtn:active{transform:translateY(1px);}
.divider{position:absolute;left:63px;top:var(--div-top);width:487px;display:flex;align-items:center;justify-content:center;}.divider i{height:1.5px;background:var(--divider);}.divider i:first-child{flex:0 0 var(--or-line-l);}.divider i:last-child{flex:0 0 var(--or-line-r);}.divider b{flex:1 1 auto;text-align:center;color:var(--or);font-size:var(--or-fs);font-weight:var(--or-fw);letter-spacing:var(--or-ls);transform:translate(var(--or-dx),var(--or-dy));}
#gBtn{position:absolute;left:62px;top:535px;width:489px;height:59.5px;border:1.5px solid var(--gBorder);border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 1px 2px rgba(0,0,0,.03);display:flex;align-items:center;justify-content:center;gap:var(--g-gap);color:var(--gtext);transition:background .18s ease,box-shadow .18s ease,transform .18s cubic-bezier(.2,.7,.3,1);}#gBtn svg{width:var(--g-icon);height:var(--g-icon);}#gBtn span{font-size:var(--gt-fs);font-weight:var(--gt-fw);letter-spacing:var(--gt-ls);word-spacing:var(--gt-ws);transform:translateY(var(--gt-dy));}#gBtn:hover{background:#fff;box-shadow:0 3px 10px rgba(0,0,0,.07);}#gBtn:active{transform:translateY(1px);}
.entry-pending :is(.card,#h1,#sub,#email,#pw,#loginBtn,.divider,#gBtn){opacity:0;will-change:transform,opacity,clip-path;}.entry-pending .card{transform:translateY(12px) scale(.988);}.entry-pending :is(#h1,#sub){transform:translateY(10px);}.entry-pending :is(#email,#pw,#loginBtn,.divider,#gBtn){transform:translateY(8px);}
/* Tablet portrait: fluid card, living-word masthead. */
body.tabport .photo{width:100%;height:var(--band-h);}body.tabport .card-in{position:absolute;inset:0;width:100%;height:100%;transform:none;}body.tabport #h1{top:var(--tp-h1-top);font-size:var(--tp-h1-fs);letter-spacing:calc(var(--h1-ls) / var(--h1-fs) * var(--tp-h1-fs));}body.tabport #sub{top:var(--tp-sub-top);font-size:var(--tp-sub-fs);letter-spacing:calc(var(--sub-ls) / var(--sub-fs) * var(--tp-sub-fs));}body.tabport #email{top:var(--tp-em-top);height:var(--tp-em-h);border-radius:var(--tp-em-r);}body.tabport #pw{top:var(--tp-pw-top);height:var(--tp-pw-h);border-radius:var(--tp-em-r);}body.tabport .field input{font-size:max(16px,var(--tp-eph-fs))!important;padding-left:var(--tp-eph-pad)!important;}body.tabport #loginBtn{top:var(--tp-btn-top);height:var(--tp-btn-h);font-size:var(--tp-btn-fs);gap:var(--tp-btn-gap);}body.tabport #loginBtn svg{width:var(--tp-arrow);height:var(--tp-arrow);}body.tabport .divider{top:var(--tp-div-top);left:var(--tp-pad);width:calc(100% - 2 * var(--tp-pad));}body.tabport .divider i{flex:1 1 0;height:var(--tp-div-h);}body.tabport .divider b{flex:0 0 auto;padding:0 var(--tp-or-pad);font-size:var(--tp-or-fs);}body.tabport #gBtn{top:var(--tp-g-top);height:var(--tp-g-h);gap:var(--tp-g-gap);}body.tabport #gBtn svg{width:var(--tp-g-icon);height:var(--tp-g-icon);}body.tabport #gBtn span{font-size:var(--tp-gt-fs);}
/* Phone also applies without JavaScript. */
@media(max-width:699px){
:root{--mobile-hero-h:clamp(260px,34svh,320px);}body{height:auto;min-height:100%;overflow-y:auto;background:#fff;}.stage{position:relative;display:flex;flex-direction:column;min-height:100svh;overflow:hidden;}.photo{position:relative;width:100%;height:var(--mobile-hero-h);flex:none;}.pane{position:relative;left:auto;right:auto;top:auto;bottom:auto;}.card{position:relative;left:0;top:0;width:100%;height:auto;margin:-28px 0 0;border-radius:28px 28px 0 0;background:#fff;border:0;box-shadow:0 -10px 28px rgba(20,28,36,.10);min-height:calc(100svh - var(--mobile-hero-h) + 28px);}.card-in{position:relative;width:100%;height:auto;max-width:500px;margin:0 auto;padding:36px clamp(24px,7vw,38px) max(30px,env(safe-area-inset-bottom));display:flex;flex-direction:column;justify-content:center;transform:none;}.card-in>*{position:static!important;width:100%!important;}#h1{font-size:clamp(31px,8.8vw,38px);letter-spacing:-.045em;}#sub{font-size:15px;word-spacing:0;margin-top:10px;margin-bottom:28px;}#email,#pw{height:56px;flex:none;}#pw{margin-top:10px;}.field input{font-size:16px!important;}#loginBtn{height:58px;margin-top:24px;flex:none;}.divider{margin:27px 0;}.divider i:first-child,.divider i:last-child{flex:1 1 0;}.divider b{flex:0 0 auto;padding:0 22px;}#gBtn{height:56px;flex:none;}#gBtn span{font-size:16px;}.entry-pending .card{transform:translateY(14px);}
}
@media(max-width:370px){:root{--mobile-hero-h:260px;}.card-in{padding:28px 22px 30px;}}
@media(max-height:520px) and (orientation:landscape) and (max-width:699px){:root{--mobile-hero-h:208px;}.card-in{justify-content:flex-start;}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;}.entry-pending :is(.card,#h1,#sub,#email,#pw,#loginBtn,.divider,#gBtn){opacity:1;transform:none;clip-path:none;will-change:auto;}}
/* Platform entry: explicit choices. */

.home-link{position:absolute;left:62px;top:25px;display:flex;align-items:center;gap:8px;width:max-content;color:#5b6257;text-decoration:none;font-size:13px;}.home-link:hover{color:#17200b;}.home-link svg{width:15px;height:15px;}
#platforms{position:absolute;left:62px;top:174px;width:489px;min-width:0;border:0;padding:0;margin:0;}#platforms legend{padding:0;margin-bottom:13px;font-size:14px;color:#333b2d;font-weight:700;}.platform-grid{display:flex;flex-direction:column;gap:8px;}.platform-choice{position:relative;display:flex;align-items:center;gap:12px;padding:0 16px;min-height:56px;border:1px solid #d8dcd2;border-radius:12px;background:#f8f9f5;cursor:pointer;transition:background .18s,border-color .18s;}.platform-choice input{appearance:none;flex:none;width:17px;height:17px;margin:0;border:1px solid #929a89;border-radius:50%;background:transparent;}.platform-choice input:checked{border:5px solid var(--signal);background:#20251e;}.platform-choice>span{flex:1;min-width:0;display:flex;align-items:baseline;justify-content:space-between;gap:12px;}.platform-choice:has(input:checked){background:#fff;border-color:#20251e;box-shadow:inset 0 0 0 1px #20251e;}.platform-choice strong{display:block;font-size:17px;line-height:1.2;}.platform-choice small{display:block;font-size:12px;line-height:1.25;color:#656d5e;text-align:right;}.platform-choice:hover{border-color:#687652;}.platform-note{font-size:12px;color:#626a5b;line-height:1.4;margin-top:12px;}
#email{top:426px;}#pw{top:497px;}#loginBtn{top:584px;}.divider{top:677px;}#gBtn{top:720px;}
body.tabport .card{overflow-y:auto;}body.tabport .card-in{position:relative;inset:auto;height:auto;min-height:100%;padding:28px 44px 32px;display:flex;flex-direction:column;max-width:660px;margin:auto;}body.tabport .card-in>*{position:static!important;width:100%!important;flex:none;}body.tabport #h1{font-size:38px;letter-spacing:-1.5px;margin-top:24px;}body.tabport #sub{font-size:16px;word-spacing:0;margin-top:10px;}body.tabport #platforms{margin:28px 0;}body.tabport #email,body.tabport #pw{height:56px;border-radius:12px;}body.tabport #pw{margin-top:10px;}body.tabport #loginBtn{height:58px;font-size:17px;margin-top:24px;}body.tabport .divider{margin:24px 0;}body.tabport .divider i{height:1px;}body.tabport .divider b{font-size:12px;padding:0 24px;}body.tabport #gBtn{height:56px;}body.tabport #gBtn span{font-size:17px;}
@media(max-width:699px){#platforms{margin:0 0 26px;}.home-link{margin-bottom:24px;}.platform-choice{padding:0 12px;gap:10px;}.platform-choice strong{font-size:16px;}.platform-choice small{font-size:12px;}}
/* A solid, raised surface: bevel, physical edge, then a broad cast shadow. */
:root{--page:#fcfcf8;}.stage,.pane{background:var(--page);}
.card{background:#fcfcf8;backdrop-filter:none;border-color:#ffffff!important;box-shadow:inset 0 2px 0 #fff,inset -2px 0 2px #e1e4da,0 1px 0 #d4d8cc,0 3px 0 #c7cdbf,0 6px 0 #b4bdab,-12px 18px 25px rgba(27,35,20,.16),-24px 38px 64px rgba(27,35,20,.19);}
.card::before{content:'';position:absolute;z-index:2;pointer-events:none;top:0;left:18%;right:18%;height:2px;background:linear-gradient(90deg,transparent,#c7ff35,transparent);}
.platform-choice{box-shadow:inset 0 1px 0 #fff,0 2px 3px rgba(28,36,20,.035);}.platform-choice:has(input:checked){box-shadow:inset 0 0 0 1px #20251e,0 2px 3px rgba(28,36,20,.06);}
#email,#pw{box-shadow:inset 0 2px 4px rgba(22,30,15,.055),0 1px 0 #fff;}#loginBtn{box-shadow:inset 0 1px 0 #e4ff9d,0 3px 0 #89a92c,0 9px 17px rgba(55,72,20,.17);}#loginBtn:active{box-shadow:inset 0 1px 0 #e4ff9d,0 1px 0 #89a92c,0 4px 9px rgba(55,72,20,.12);}
body.tabport .pane{background:var(--page);}body.tabport .card{box-shadow:inset 0 2px 0 #fff,0 5px 0 #e1e3da,0 17px 30px rgba(27,35,20,.12);}
@media(max-width:699px){body,.pane{background:var(--page);}.card{background:var(--page);box-shadow:inset 0 2px 0 #fff,0 -9px 28px rgba(15,24,10,.22);}.card::before{left:30%;right:30%;}}

/* ---------- Reply-only sign-in (added on top of the design) ---------- */
#loginBtn[disabled]{opacity:.7;cursor:progress;filter:none}
#status{position:absolute;left:62px;top:614px;width:489px;min-height:20px;margin:0;text-align:center;font-size:14px;line-height:1.4;color:#626a5b}
#status.is-error{color:#a3271b}
#status.is-ok{color:#2c5a12}
#status a{color:inherit;font-weight:700;text-underline-offset:3px}
#email[hidden],#pw[hidden],#forgot[hidden]{display:none}#help{position:absolute;left:62px;top:672px;width:489px;margin:0;text-align:center;font-size:14px;color:#626a5b}
#help a{color:#17200b;font-weight:700;text-decoration:underline;text-underline-offset:3px}
/* stacked layouts flow normally: give the new lines spacing */
#status{margin-top:12px}
#help{margin-top:8px}

/* Credential fields are gone (each product signs in on its own site): close the band they left.
   Desktop is absolutely positioned, so everything below the cards moves up by the fields' height;
   stacked/tablet flow layouts just drop the extra margin. */
#pw[hidden]~#loginBtn{margin-top:0}
body:not(.tabport):not(.stacked) #pw[hidden]~#loginBtn{top:470px}
body:not(.tabport):not(.stacked) #pw[hidden]~#status{top:540px}
body:not(.tabport):not(.stacked) #pw[hidden]~#help{top:598px}

/* ---------- Living word panel (canvas particles, js/login-word.js) ---------- */
.photo{--lw-pad:clamp(24px,3.4vw,48px);}
#lwCanvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:pan-y;}
.lw-eyebrow{position:absolute;left:var(--lw-pad);top:var(--lw-pad);margin:0;color:#c6f24e;font-size:12px;font-weight:700;letter-spacing:.28em;line-height:1;pointer-events:none;}
.lw-caption{position:absolute;left:var(--lw-pad);right:var(--lw-pad);bottom:var(--lw-pad);margin:0;pointer-events:none;}
.lw-l1{display:block;font-family:'Eloquia',sans-serif;font-variation-settings:'wght' 600;font-size:clamp(24px,3.1vw,44px);letter-spacing:-.04em;line-height:1.1;color:#f4f4ee;}
.lw-l2{display:block;min-height:1.4em;margin-top:6px;color:#c6f24e;font-size:clamp(15px,1.5vw,20px);line-height:1.4;}
@media(max-width:699px){.lw-caption{bottom:calc(var(--lw-pad) + 28px);}.lw-l1{font-size:26px;}.lw-l2{font-size:15px;}}
/* An empty status line must not hold the card open (it only shows on an error, which Reply/Studio hand-offs never raise). */
body:not(.tabport):not(.stacked) #status:empty{min-height:0}

/* ---------- Events: construction tape across the parked button ---------- */
.tape{display:none;}
#soon{position:absolute;left:62px;top:560px;width:489px;margin:0;text-align:center;}
#soon:empty{display:none;}
.soon-note{margin:0;font-size:12px;line-height:1.4;color:#626a5b;animation:soonIn .16s ease-out;}
body.events-on #loginBtn{overflow:visible;}
body.stacked.events-on #loginBtn,body.tabport.events-on #loginBtn{position:relative!important;top:auto!important;left:auto!important;}
body.events-on #loginBtn[disabled]{opacity:1;cursor:not-allowed;background:#e6e8df;color:#6b7262;box-shadow:inset 0 1px 0 #fff,0 1px 0 #cfd3c6;filter:none;}
body.events-on #loginBtn[disabled] svg{display:none;}
body.events-on .tape{display:flex;align-items:center;justify-content:center;position:absolute;left:-16px;right:-16px;top:50%;height:38px;margin-top:-19px;z-index:3;pointer-events:none;overflow:hidden;white-space:nowrap;transform:rotate(-7deg);font-style:normal;font-size:13px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#111;
  background:repeating-linear-gradient(135deg,#111 0 8px,#f5c518 8px 16px) top/100% 8px no-repeat,repeating-linear-gradient(135deg,#111 0 8px,#f5c518 8px 16px) bottom/100% 8px no-repeat,linear-gradient(180deg,rgba(255,255,255,.38),rgba(255,255,255,0) 48%),#f5c518;
  box-shadow:0 3px 7px rgba(0,0,0,.28),0 1px 0 rgba(0,0,0,.22);animation:tapeUnroll .22s ease-out;}
@keyframes tapeUnroll{from{clip-path:inset(-14px 100% -14px -14px);}to{clip-path:inset(-14px -14px -14px -14px);}}
@keyframes soonIn{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}
.card.card-anim{transition:height .18s ease,top .18s ease;}
body.stacked #soon,body.tabport #soon{margin-top:14px;}
@media(max-width:699px){body.events-on .tape{height:30px;margin-top:-15px;font-size:11px;letter-spacing:.18em;background:repeating-linear-gradient(135deg,#111 0 6px,#f5c518 6px 12px) top/100% 6px no-repeat,repeating-linear-gradient(135deg,#111 0 6px,#f5c518 6px 12px) bottom/100% 6px no-repeat,linear-gradient(180deg,rgba(255,255,255,.38),rgba(255,255,255,0) 48%),#f5c518;}}
