/* A little stationery boutique: soft paper, tactile cards and room to breathe. */
.welcome{background:radial-gradient(ellipse at 8% 14%,#efe4f7aa,transparent 37%),radial-gradient(ellipse at 92% 25%,#f4e7ddaa,transparent 35%),#fbf9f6}.welcome-header{padding-top:31px;padding-bottom:26px}.welcome-grid{max-width:1320px;grid-template-columns:minmax(0,1.25fr) minmax(350px,.85fr);gap:70px;padding-top:44px}.welcome-kicker{background:#fff9;display:inline-flex;border:1px solid #e9dff0;border-radius:30px;padding:9px 15px;font-size:9px;letter-spacing:1.7px;margin-bottom:26px}.welcome h1{font-size:clamp(43px,4.5vw,65px);line-height:1.14;letter-spacing:-2.4px;color:#3a3044}.welcome h1 em{color:#9470ac}.welcome-lead{font-size:15px;max-width:440px;line-height:1.9;color:#8e7e98;margin-top:28px}.welcome-benefits{color:#8d8294;font-size:11px}.welcome-benefits span::before{color:#99a986}.welcome-hero-actions{display:flex;align-items:center;gap:25px;margin:27px 0 0}.welcome-hero-actions .primary{border-radius:13px;padding:15px 22px;box-shadow:0 6px 16px #7959931a;font-size:12px;display:flex;gap:24px}.welcome-hero-actions a{font-size:11px;color:#a188af;display:flex;gap:11px;align-items:center;text-decoration:none;min-height:44px}.welcome-hero-actions a:hover{text-decoration:underline}.welcome-art{position:relative;margin:8px 0 15px;isolation:isolate;max-width:610px}.welcome-art:before{content:'';position:absolute;z-index:-1;inset:12% 3% 12%;border-radius:50%;background:linear-gradient(120deg,#ede4f0,#f6eddf);transform:rotate(-8deg)}.welcome-art>img{filter:drop-shadow(0 14px 17px #5133460b);width:91%;margin:auto;transform:rotate(-3deg)}.welcome-art figcaption{font-size:12px;color:#ae97b3;margin-top:8px}.art-note{position:absolute;top:11%;left:0;z-index:1;display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:14px;background:#fffdfaeb;box-shadow:0 10px 30px #5133460b;border:1px solid #fff;transform:rotate(-5deg)}.art-note>span{display:grid;place-items:center;width:31px;height:31px;background:#eee5f6;border-radius:10px;color:#ac8cc0;font-size:21px}.art-note strong{display:block;font-size:10px;color:#8a6f9c;font-weight:600}.art-note small{display:block;font-size:8px;color:#b29bc0;margin-top:3px}.hero-swatch-card{position:absolute;right:0;bottom:14%;padding:14px 16px;background:#fffdfbeF;border:1px solid #fff;border-radius:16px;box-shadow:0 12px 35px #51334612;transform:rotate(5deg)}.hero-swatch-card>span{font-size:7px;font-weight:600;letter-spacing:1.3px;color:#aa8cbb}.hero-swatch-card>div{display:flex;gap:6px;margin:9px 0}.hero-swatch-card i{display:block;width:22px;height:30px;background:var(--swatch);border-radius:7px}.hero-swatch-card small{font-size:8px;color:#af9bb8}.guest #authDialog{border:1px solid #e5d8ee;border-radius:27px;padding:34px;background:linear-gradient(150deg,#fffffff8,#fffdfc);box-shadow:0 20px 70px #6e4c8208;position:relative}.guest #authDialog:before{content:'';position:absolute;inset:0 34px auto;height:2px;background:linear-gradient(90deg,#c3abd4,#eac7b7,#c6d2b5);border-radius:5px}.welcome-auth-slot{margin-top:8px}.guest #authTitle{font-size:33px;color:#574264}.guest #authIntro{color:#97859f}.welcome-features{margin-top:20px;max-width:1240px;background:#ffffffa8;border:1px solid #eadff0;border-radius:20px;padding:27px 32px;box-shadow:0 5px 30px #6e4c8203}.welcome-features>div{gap:15px}.welcome-features .feature-icon{border-radius:14px;background:#eee5f6}.welcome-features>div:nth-child(2) .feature-icon{background:#edf1e5;color:#a4b48e}.welcome-features>div:nth-child(3) .feature-icon{background:#f8e9e6;color:#c79b9e}.welcome-journey{padding-top:80px}.journey-grid>article{box-shadow:0 9px 30px #79599305}.welcome-invitation{background:radial-gradient(ellipse at 85% 30%,#e5d6f1,transparent 50%),#f0e8f5;border:1px solid #e2d3ed;border-radius:24px}.welcome-footer{border-top:1px solid #eee6f2;margin-top:25px;padding-top:25px}.welcome-footer a{color:#947da5;text-decoration:none}.welcome-footer a:hover{text-decoration:underline}.dashboard-welcome{position:relative;overflow:hidden;background:radial-gradient(ellipse at 75% 50%,#e6daef99,transparent 55%),linear-gradient(125deg,#f6f0f9,#f9f3ec);border:1px solid #e5d9ed;box-shadow:0 9px 35px #79599305}.dashboard-welcome>div{position:relative;z-index:1}.dashboard-welcome h1{letter-spacing:-1.7px}.dashboard-welcome>img{transform:rotate(-5deg);filter:drop-shadow(0 10px 14px #7e5b8c0c)}.home-member-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.home-member-actions .text-button{font-size:11px;color:#ad8ebf}.home-member-palette{display:flex;align-items:center;gap:6px;margin-top:24px}.home-member-palette i{display:block;width:15px;height:15px;border-radius:50%;background:#c5b2d5}.home-member-palette i:nth-child(2){background:#e4bcaa}.home-member-palette i:nth-child(3){background:#bdcaa9}.home-member-palette i:nth-child(4){background:#e7cf9d}.home-member-palette span{color:#aa97b4;font-size:10px;margin-left:7px}.quick-actions>button{box-shadow:0 5px 20px #79599304}.quick-actions>button:hover{transform:translateY(-2px);border-color:#cfb8df}
@media(max-width:1000px){.welcome-grid{gap:30px;padding-inline:28px}.welcome h1{font-size:48px}.welcome-hero-actions{gap:15px}.welcome-hero-actions .primary{gap:13px;padding-inline:17px}.hero-swatch-card{right:-5px;bottom:12%;padding:11px}.art-note{left:-5px;padding:10px}.guest #authDialog{padding:28px}.welcome-features{margin-inline:28px;padding:22px}.welcome-features strong{font-size:11px}}
@media(max-width:760px){.welcome-grid{display:block;padding:20px 20px 0}.welcome-header{padding:23px 23px 15px}.welcome-story{text-align:center;max-width:540px;margin:auto}.welcome-kicker{font-size:8px;letter-spacing:1.3px;padding:8px 12px;margin-bottom:24px}.welcome h1{font-size:clamp(38px,8vw,54px);letter-spacing:-1.8px}.welcome-lead{font-size:13px;line-height:1.9;margin:25px auto 18px;max-width:350px}.welcome-benefits{justify-content:center;gap:20px;font-size:10px}.welcome-hero-actions{justify-content:center;gap:20px;margin-top:22px}.welcome-hero-actions .primary{padding:13px 17px;font-size:11px;min-height:46px}.welcome-hero-actions a{font-size:10px}.welcome-art{max-width:410px;margin:20px auto 18px}.welcome-art>img{width:92%}.art-note{top:12%;left:0;padding:9px 11px;border-radius:12px;gap:8px}.art-note>span{width:25px;height:25px;font-size:17px;border-radius:8px}.art-note strong{font-size:8px}.art-note small{font-size:7px}.hero-swatch-card{right:1%;bottom:12%;padding:11px 12px;border-radius:12px}.hero-swatch-card i{width:18px;height:25px}.hero-swatch-card>span{font-size:6px}.hero-swatch-card small{font-size:7px}.welcome-auth-slot{max-width:480px;margin:28px auto 0}.guest #authDialog{padding:27px;border-radius:24px}.guest #authTitle{font-size:31px}.welcome-features{margin:24px 20px 0;padding:24px;gap:25px;border-radius:21px}.welcome-features strong{font-size:12px}.welcome-journey{padding-top:55px}.welcome-footer{display:flex;gap:10px;flex-direction:column;font-size:10px;line-height:1.8}.dashboard-welcome{padding:27px 23px 18px;border-radius:22px}.home-member-actions{gap:8px}.home-member-palette{margin-top:18px}.home-member-palette span{font-size:9px}.home-member-actions .text-button{font-size:10px}.dashboard-welcome>img{max-width:260px}.welcome-invitation{border-radius:20px}}
@media(prefers-reduced-motion:reduce){.quick-actions>button:hover{transform:none}}
@media(min-width:761px){.guest .welcome{background:radial-gradient(ellipse at 7% 20%,#eee1f4aa,transparent 40%),radial-gradient(ellipse at 95% 25%,#f1e2d666,transparent 38%),#fbf9f6}.guest .welcome-grid{max-width:1380px;gap:65px;align-items:center}.guest .welcome-art{max-width:565px;margin-top:13px}.guest .welcome-art>img{width:91%;max-height:275px;margin:auto}.guest .welcome-features{max-width:1280px;border:1px solid #e9dfef;background:#fffafbaa;padding:25px 22px;box-shadow:0 7px 25px #79599303}.guest .welcome-kicker{font-size:9px;letter-spacing:1.6px}.guest .welcome-story h1 em{color:#9671af}.guest #welcomeAuth #authDialog{border-radius:28px;box-shadow:0 20px 65px #79599309;background:linear-gradient(140deg,#fff,#fffbfa)}#memberApp .dashboard-welcome{background:radial-gradient(ellipse at 80% 50%,#ede0f499,transparent 50%),linear-gradient(125deg,#f4edf8,#faf3eb);min-height:330px}#memberApp .home-member-actions .text-button{font-size:11px}#memberApp .home-member-palette{margin-top:19px}}
@media(max-width:760px){.guest .welcome-story{display:block}.guest .welcome-header{max-width:540px;justify-content:space-between;padding-inline:23px}.guest .welcome-header nav{display:flex}.guest .welcome-header nav .primary{display:none}.guest .welcome-header .logo-lockup:after{display:none}.guest .welcome-grid{max-width:540px;padding-inline:20px}.guest .welcome-story h1{font-size:39px;line-height:1.15}.guest .welcome-story .welcome-art>img{max-height:205px}.guest .welcome-story .welcome-art{max-width:355px}.guest .welcome-features{display:flex;margin:25px 20px}.guest .welcome-auth-slot{margin-top:29px}.guest .welcome-journey{display:block;padding:48px 22px 25px}.journey-heading{text-align:center;margin-bottom:26px}.journey-heading h2{font:500 31px/1.25 'Playfair Display',Georgia,serif;color:#79568b;margin:13px 0}.journey-heading>p:last-child{font-size:12px;color:#ac93b6;line-height:1.8}.journey-grid{display:grid;gap:14px}.journey-grid article{padding:25px;border:1px solid #e8daef;background:#f3edf7;border-radius:20px;overflow:hidden;position:relative}.journey-grid article:nth-child(2){background:#edf2e6}.journey-grid article:nth-child(3){background:#fbefe7}.journey-grid h3{font:500 25px 'Playfair Display',Georgia,serif;color:#8b689d;margin:12px 0}.journey-grid article>span{font-size:10px;letter-spacing:1px;color:#b89bc6}.journey-grid p{font-size:12px;line-height:1.85;color:#aa90b3}.journey-shape,.journey-hearts{display:none}.welcome-invitation{padding:26px;margin-top:20px}.welcome-invitation h2{font:500 29px/1.25 'Playfair Display',Georgia,serif;color:#886296}.welcome-invitation p:not(.eyebrow){font-size:12px;line-height:1.8;color:#a98bb5}.welcome-invitation .primary{width:100%;font-size:12px}.guest .welcome-footer{gap:8px;padding-top:22px}.guest .welcome-footer>span{display:block}.guest .welcome-grid{flex:initial}}
.welcome h1>svg{right:auto;left:43%;bottom:-9px;width:145px}@media(max-width:760px){.welcome h1>svg{left:51%;width:115px;bottom:-8px}}

.welcome-auth-slot{scroll-margin-top:20px}

/* Mobile opens directly in the account screen; desktop keeps its welcome page. */
@media(max-width:760px){
 .guest .welcome{min-height:100dvh;padding-top:env(safe-area-inset-top);background:radial-gradient(ellipse at 0 0,#e9dcf0a6,transparent 55%),radial-gradient(ellipse at 100% 90%,#f2e8dc80,transparent 48%),#fcfaf8}
 .guest .welcome-header{justify-content:center;max-width:480px;padding:27px 22px 20px;min-height:100px}
 .guest .welcome-header nav,.guest .welcome-story,.guest .welcome-features,.guest .welcome-journey{display:none}
 .guest .welcome-grid{display:block;max-width:480px;width:100%;padding:8px 20px 0;margin:0 auto;flex:1}
 .guest .welcome-auth-slot{margin:0;padding:0;max-width:none;scroll-margin-top:12px}
 .guest #welcomeAuth #authDialog{position:relative;inset:auto;max-height:none;width:100%;margin:0;padding:28px 25px 23px;border:1px solid #e6d8ee;border-radius:28px;background:linear-gradient(145deg,#fff,#fffcff);box-shadow:0 16px 50px #7555890a;overflow:visible}
 .guest #authDialog:before{inset:0 28px auto;height:2px;opacity:.7}
 .guest #authDialog .dialog-top{position:static;padding:9px 0 0;margin:0 0 12px;background:transparent}
 .guest #authDialog .dialog-top h2{font-size:32px!important;line-height:1.2;letter-spacing:-.8px;color:#564263}
 .guest #authDialog #authIntro{font-size:12px!important;line-height:1.8;margin:0 0 20px;max-width:330px}
 .guest #authDialog .auth-tabs{margin:0 0 21px;padding:5px!important;background:#f1ebf6!important;border-radius:15px!important}
 .guest #authDialog .auth-tabs button{min-height:41px;padding:10px;border-radius:11px;font-size:13px}
 .guest #authDialog .auth-tabs button.active{box-shadow:0 2px 7px #74518a0a}
 .guest #authDialog label{font-size:12px;margin:15px 0}
 .guest #authDialog input:not([type=checkbox]){font-size:16px;min-height:49px;border-radius:13px;padding:12px;margin-top:7px;background:#fff}
 .guest #authDialog .remember-label{display:flex;align-items:center;gap:9px;line-height:1.6;font-size:11px;margin:15px 0 13px;min-height:35px}
 .guest #authDialog .remember-label input{width:18px;height:18px;flex-shrink:0;accent-color:#806096}
 .guest #authDialog #authSubmit{min-height:51px;margin-top:2px;border-radius:14px}
 .guest #authDialog #forgotButton{display:block;margin:12px auto 4px;min-height:40px;font-size:12px}
 .guest #authDialog>.small{margin:12px 0 0;padding-top:17px;font-size:10px;line-height:1.7;text-align:center}
 .guest .welcome-footer{margin:0;padding:19px 20px calc(17px + env(safe-area-inset-bottom));border:0;gap:0;align-items:center;font-size:10px}
 .guest .welcome-footer>span{display:none}.guest .welcome-footer .text-button{min-height:36px}
}
@media(max-width:380px){.guest .welcome-grid{padding-inline:15px}.guest #welcomeAuth #authDialog{padding-inline:21px}.guest #authDialog .dialog-top h2{font-size:29px!important}.guest #registerFields:not([hidden]){grid-template-columns:1fr;gap:0}}
@media(max-width:760px) and (max-height:720px){.guest .welcome-header{min-height:79px;padding-top:18px;padding-bottom:12px}.guest #welcomeAuth #authDialog{padding-top:20px;padding-bottom:18px}.guest #authDialog #authIntro{margin-bottom:16px}.guest #authDialog .auth-tabs{margin-bottom:16px}.guest #authDialog label{margin:12px 0}.guest .welcome-footer{padding-top:10px}}
