 .auth-page{padding:52px 20px 80px;background:#f7f5ef;min-height:65vh}.auth-card{max-width:520px;margin:auto;padding:32px;background:#fffdf8;border:1px solid #e4dfd2;border-radius:20px;box-shadow:0 10px 35px #25364b09;color:#25364b;overflow-wrap:anywhere}.auth-card h1{font-size:28px;margin:8px 0 20px}.auth-eyebrow{font-size:11px;letter-spacing:.12em;color:#697d69}.auth-field{display:grid;gap:8px;margin:20px 0;font-weight:600}.auth-field input{box-sizing:border-box;width:100%;min-width:0;padding:12px;border:1px solid #bcbeb4;border-radius:8px;background:white;color:#25364b;font:inherit}.auth-card .button{margin:20px 0;max-width:100%;white-space:normal;cursor:pointer}.auth-card .button:disabled{opacity:.5;cursor:wait}.auth-card small,.auth-card p{line-height:1.9}.auth-card a{color:#375f53}.auth-free{border-top:1px solid #e4dfd2;padding-top:18px}.auth-card [role=status]{color:#365b4d}.auth-card .secondary{background:#edf0e8;color:#25364b}.self-header-actions a[data-auth-link]{font:inherit;color:inherit;text-decoration:none;white-space:nowrap;padding:8px} [data-account] button{margin-right:12px}@media(max-width:640px){.auth-page{padding:24px 14px 50px}.auth-card{padding:24px 20px}.auth-card h1{font-size:24px}}

body:is([data-page=register],[data-page=login],[data-page=account]) .header-inner{max-width:1380px;gap:24px}
body:is([data-page=register],[data-page=login],[data-page=account]) .desktop-nav{gap:17px}
body:is([data-page=register],[data-page=login],[data-page=account]) .desktop-nav a{font-size:12px}
@media(max-width:1100px){
body:is([data-page=register],[data-page=login],[data-page=account]) .header-inner>.self-header-actions{display:none}
body:is([data-page=register],[data-page=login],[data-page=account]) .desktop-nav{display:none}
body:is([data-page=register],[data-page=login],[data-page=account]) .header-inner{justify-content:space-between;position:relative;gap:10px}
body:is([data-page=register],[data-page=login],[data-page=account]) .mobile-nav{display:block}
}

/* Registration/login only. Account, callback, LP and reading forms retain their styles. */
.auth-entry, .auth-entry * { box-sizing: border-box; }
.auth-entry { display: flex; justify-content: center; align-items: center; padding: 48px 20px 64px; background: #F5F2EA; }
.auth-entry .auth-entry-card { display: flex; flex-direction: column; width: 100%; max-width: 420px; min-width: 0; margin: 0; padding: 32px; border: 1px solid #e8e2d6; border-radius: 16px; background: #FFFFFF; color: #173B49; box-shadow: 0 8px 28px #173b490b; }
.auth-entry .auth-entry-logo { display: block; flex: none; width: 224px; max-width: 100%; height: auto; margin: 0 auto 24px; }
.auth-entry h1 { margin: 0 0 14px; text-align: center; color: #173B49; font-size: 26px; line-height: 1.5; }
.auth-entry .auth-entry-description { margin: 0 0 28px; text-align: center; font-size: 14px; line-height: 1.9; }
.auth-entry .auth-entry-form { display: flex; flex-direction: column; align-items: stretch; width: 100%; min-width: 0; margin: 0; padding: 0; gap: 18px; }
.auth-entry .auth-field { display: flex; flex-direction: column; width: 100%; min-width: 0; gap: 8px; margin: 0; padding: 0; font-size: 14px; line-height: 1.6; }
.auth-entry .auth-field input { display: block; width: 100%; max-width: 100%; min-width: 0; height: 48px; padding: 10px 12px; border: 1px solid #bdc7c4; border-radius: 8px; background: #FFFFFF; color: #173B49; font: inherit; font-size: 16px; }
.auth-entry .auth-field input:focus-visible { outline: 2px solid #B69A60; outline-offset: 2px; }
.auth-entry .auth-entry-hint { margin-top: -10px; color: #58696b; font-size: 12px; line-height: 1.8; }
.auth-entry .button { display: flex; align-items: center; justify-content: center; width: 100%; min-width: 0; max-width: 100%; min-height: 48px; margin: 8px 0 0; padding: 12px 14px; border: 1px solid #176457; border-radius: 8px; background: #176457; color: #FFFFFF; font-size: 16px; line-height: 1.5; }
.auth-entry .button:hover:not(:disabled) { background: #125246; }
.auth-entry .button:disabled { background: #176457; opacity: .55; }
.auth-entry [data-auth-message]:not(:empty) { margin-top: 18px; font-size: 14px; }
.auth-entry [data-resend]:not([hidden]) { margin-top: 16px; font-size: 13px; }
.auth-entry .auth-entry-links { display: flex; flex-direction: column; gap: 12px; margin-top: 24px; text-align: center; font-size: 14px; }
.auth-entry a { color: #176457; text-underline-offset: 4px; }
.auth-entry a:hover { text-decoration: underline; }
.auth-entry .auth-entry-unavailable { color: #6d7674; font-size: 13px; }
.auth-entry .auth-free { margin-top: 24px; padding-top: 20px; border-top: 1px solid #e8e2d6; text-align: center; font-size: 13px; }
@media(max-width:640px) {
 .auth-entry { padding: 28px 16px 40px; }
 .auth-entry .auth-entry-card { padding: 28px 24px; }
 .auth-entry .auth-entry-logo { width: 208px; margin-bottom: 22px; }
 .auth-entry h1 { font-size: 24px; }
 .auth-entry .auth-entry-description { font-size: 13px; }
}

/* Member account only; public pages and registration/login retain their styles. */
.member-page{background:#F5F5EF;padding:40px 24px 64px}
.member-page .member-wrapper{max-width:1180px;width:100%;padding:0;border:0;background:transparent;box-shadow:none;margin:auto}
.member-page .member-wrapper>.auth-eyebrow,.member-page .member-wrapper>h1{display:none}
.member-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:28px;align-items:start}
.member-sidebar,.member-panel{background:#fff;border:1px solid #e1e7df;border-radius:16px;box-shadow:0 5px 20px #194c4007;padding:24px}
.member-sidebar{position:sticky;top:20px;padding:18px;max-height:calc(100vh - 40px);overflow:auto}
.member-layout nav{display:flex;flex-direction:column;gap:6px}
.member-layout nav a,.member-layout nav button{display:flex;align-items:center;gap:7px;width:100%;text-align:left;min-height:44px;border:0;border-radius:8px;padding:10px;background:transparent;color:#194C40;font:inherit;font-size:14px;text-decoration:none}
.member-layout nav [aria-current=page]{background:#E8F3EC;font-weight:700}
.member-layout nav a:hover,.member-layout nav button:hover{background:#E8F3EC}
.member-group{font-size:11px;color:#75837b;letter-spacing:.08em;padding:14px 10px 4px}
.member-layout nav small{font-size:10px;color:#7c754f;margin-left:auto;white-space:nowrap}
.member-content{min-width:0;outline-offset:5px}
.member-welcome{background:#194C40;color:white;border-radius:18px;padding:36px;margin-bottom:24px}
.member-welcome>p:first-child{color:#dfc995;font-size:13px;letter-spacing:.18em}
.member-welcome h2{font-size:28px;margin:14px 0}
.member-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.member-panel{min-width:0;overflow-wrap:anywhere}
.member-panel h2,.member-panel h3{color:#194C40;margin-bottom:16px}
.member-panel p{margin:14px 0}.member-panel a{color:#194C40;text-decoration:underline}
.member-pending{display:inline-block;background:#f5efdf;color:#776038;border-radius:20px;padding:3px 12px;font-size:12px;margin:8px 0}
.member-panel dt{font-size:13px;color:#64766a;margin:16px 0 6px}.member-panel dd{margin:0;overflow-wrap:anywhere}
.member-page [data-member-logout] .button{width:100%;font-size:14px;min-height:44px;background:transparent;color:#194C40;border:1px solid #cad8cf;border-radius:8px;margin:24px 0 0}
.member-menu-toggle{display:none}.member-dialog{border:0;border-radius:16px;width:min(330px,calc(100% - 40px));max-height:85vh;padding:20px;color:#194C40;background:#fff;overflow:auto}
.member-dialog::backdrop{background:#173b4955}.member-close,.member-menu-toggle,[data-mobile-logout]{min-height:44px;border:1px solid #cad8cf;background:#fff;color:#194C40;border-radius:8px;padding:10px 16px;font:inherit}
.member-close{display:block;margin-left:auto}.member-dialog [data-mobile-logout]{margin-top:20px;width:100%}
@media(max-width:700px){.member-page{padding:24px 16px 40px}.member-layout{grid-template-columns:minmax(0,1fr);gap:18px}.member-sidebar{display:none}.member-menu-toggle{display:block;justify-self:start}.member-grid{grid-template-columns:1fr}.member-welcome{padding:26px 22px}.member-welcome h2{font-size:24px}.member-panel{padding:24px}}

.member-page:has(.login-settings){background:#F7F5EF}
.login-settings{color:#194C40}.login-settings>h2{font-size:27px;margin:0 0 8px}.login-settings>p{font-size:14px;color:#62756e;margin-bottom:28px}
.login-settings-card{background:#fff;border:1px solid #e2e4da;border-radius:14px;padding:28px}.login-settings-card>h3{font:700 15px var(--sans);margin:0 0 18px}.login-settings-card>section{padding:20px 0}.login-settings-card>section+section{border-top:1px solid #e1e6df}.login-settings h4{font-size:15px;margin:0 0 8px}.login-settings p{font-size:14px;line-height:1.85;overflow-wrap:anywhere}.login-settings button{min-height:44px;border:1px solid #194C40;border-radius:7px;background:#194C40;color:white;padding:10px 16px;font:600 13px var(--sans);margin-top:12px;cursor:pointer}.login-settings button:disabled{opacity:.5;cursor:wait}.login-settings .settings-cancel{background:white;color:#194C40;border-color:#ccd7cf}.login-settings label{display:flex;flex-direction:column;gap:8px;font-size:13px;margin-top:18px}.login-settings input{box-sizing:border-box;width:100%;max-width:480px;min-height:44px;padding:10px;border:1px solid #b9c7bf;border-radius:6px;font:16px var(--sans)}.settings-notice{background:#EEF5F1;border-radius:7px;max-width:480px;padding:14px;font-size:12px;margin-top:16px;line-height:1.9}.settings-notice strong{display:block;overflow-wrap:anywhere}.settings-actions{display:flex;flex-wrap:wrap;gap:10px}.login-settings [role=status]{margin-top:12px}.auth-entry-form[hidden]{display:none!important}@media(max-width:640px){.login-settings-card{padding:20px}.login-settings>h2{font-size:24px}.settings-actions button{flex:1}.login-settings input{max-width:100%}}

/* Member home only. */
.member-page:has(.member-dashboard){background:#F7F5EF}
.member-dashboard>section>h3{color:#194C40;font-size:21px;margin:0 0 18px}
.dashboard-menu-grid,.dashboard-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.dashboard-menu-card{display:flex;gap:14px;align-items:flex-start;padding:22px;background:#fff;border:1px solid #e1e7df;border-radius:14px;box-shadow:0 4px 16px #194c4007;color:#194C40;text-decoration:none;min-width:0}
.dashboard-menu-card:hover{border-color:#B99B61;background:#fdfcf7}.dashboard-menu-card h4{font-size:18px;margin:0 0 8px}.dashboard-menu-card p{font-size:13px;line-height:1.8;color:#62746c;margin:0}.dashboard-icon{font-size:24px;line-height:1.3;color:#B99B61;flex:none}.dashboard-arrow{margin-left:auto;color:#B99B61;flex:none}.dashboard-menu-card>div{min-width:0}.dashboard-menu-card .member-pending{margin-bottom:0}
.dashboard-history-grid{margin-top:24px}.dashboard-history-grid .member-panel{padding:24px}.dashboard-history-grid a{display:block;margin-top:10px;font-size:13px}
@media(max-width:700px){.dashboard-menu-grid,.dashboard-history-grid{grid-template-columns:minmax(0,1fr);gap:14px}.dashboard-menu-card{padding:20px}.member-dashboard>section>h3{font-size:20px}}

/* Approved raster banner. Frame only its external margins; never stretch its contents. */
.member-dashboard-hero{margin:0 0 24px;border-radius:18px;overflow:hidden}
.member-hero-desktop{position:relative;width:100%;aspect-ratio:2147/530;overflow:hidden}
.member-hero-desktop img{display:block;position:absolute;top:0;left:0;width:calc(2172 / 2147 * 100%);height:auto;max-width:none;transform:translate(-.644567%, -16.574586%)}
.member-hero-mobile{display:none;background:#194C40;color:#fff;padding:26px 24px}
.member-hero-eyebrow{color:#d8c28d;font-size:13px;letter-spacing:.16em;margin:12px 0 0}
.member-hero-art{display:block;float:right;width:140px;height:118px;overflow:hidden;margin:-12px -12px 12px 8px;position:relative}
.member-hero-art img{position:absolute;max-width:none;width:543px;height:auto;left:-340px;top:-40px}
.member-hero-mobile h2{clear:both;font-size:24px;line-height:1.65;margin:0 0 16px;color:#fff}
.member-hero-mobile>p:last-child{font-size:14px;line-height:1.9;margin:0;color:#fff}
@media(max-width:700px){.member-hero-desktop{display:none}.member-hero-mobile{display:block}}

/* Reference-based advisor design, restricted to this member page. */
.member-page:has(.member-advisor){background:#F7F5EF}
.member-advisor{color:#173F38;max-width:900px;margin:0 auto;overflow-wrap:anywhere}
.advisor-page-heading>h2{color:#173F38;font-size:31px;line-height:1.5;letter-spacing:.12em;margin:0 0 24px}
.advisor-card{background:#fffdf8;border:1px solid #B99B61;border-radius:20px;padding:28px 30px 30px;box-shadow:0 10px 28px #194c4010,inset 0 0 0 3px #fffdf8}
.advisor-sample-note{display:flex;align-items:center;gap:16px;margin-bottom:26px;color:#425349}
.advisor-sample-note>span{flex:none;display:inline-block;background:#194C40;color:#f4e8bb;border:1px solid #B99B61;box-shadow:inset 0 0 0 2px #fff9df55;border-radius:24px;padding:4px 15px;font:600 13px/1.7 var(--serif);letter-spacing:.05em}
.advisor-sample-note>p{border-left:1px solid #B99B61;padding-left:16px;font-size:11px;line-height:1.85;margin:0}
.advisor-summary{position:relative;display:grid;grid-template-columns:190px minmax(0,1fr);gap:32px;align-items:center;isolation:isolate}
.advisor-floral{position:absolute;right:-22px;top:-14px;width:222px;height:auto;opacity:.5;z-index:-1;pointer-events:none}
.advisor-summary figure{margin:0;position:relative}.advisor-summary figure img{display:block;width:190px;max-width:100%;height:auto;border:1px solid #B99B61;border-radius:13px;padding:3px;background:#fffdf8;box-shadow:0 5px 12px #194c401a}
.advisor-summary figcaption{text-align:center;font-size:10px;color:#847246;margin-top:6px;letter-spacing:.08em}
.advisor-identity{min-width:0;position:relative}.advisor-reading{font:600 13px/1.8 var(--serif);letter-spacing:.12em;margin:0 0 3px}
.advisor-identity h3{color:#173F38;font-size:40px;margin:0 0 4px;line-height:1.5;letter-spacing:.14em}
.advisor-title{font:500 17px/1.8 var(--serif);margin:0 0 15px}
.advisor-catchcopy{font:600 21px/1.8 var(--serif);letter-spacing:.02em;margin:0;border-top:1px solid #B99B61;padding-top:17px;text-wrap:pretty}
.advisor-section{padding-top:0;margin-top:30px}
.advisor-section h3{display:flex;align-items:center;gap:12px;color:#173F38;font-size:22px;line-height:1.6;margin:0 0 12px;letter-spacing:.05em}
.advisor-section h3:after{content:'';height:1px;background:#B99B61;flex:1;min-width:16px;margin-left:4px}
.advisor-section-icon{display:block;width:36px;height:36px;object-fit:contain;flex:none}
.advisor-section p,.advisor-message p,.advisor-section li{font:400 14px/1.95 var(--serif)}
.advisor-section p,.advisor-section li{color:#173F38}
.advisor-section>p{margin:8px 0 0 48px}.advisor-section .advisor-disclaimer{font:12px/1.9 var(--sans);color:#637067}
.advisor-section ul{padding-left:18px;margin:8px 0 0 48px}.advisor-section li{padding-left:3px;margin:3px 0}.advisor-section li::marker{color:#B99B61}
.advisor-message{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);gap:18px;margin-top:30px;padding:24px;color:#fff8e4;background:#194C40 url('../assets/design/advisor-message-pattern.png') no-repeat right bottom;background-size:164px 78px;border:1px solid #B99B61;border-radius:14px;box-shadow:inset 0 0 0 3px #194C40,inset 0 0 0 4px #b99b6180;overflow:hidden}
.advisor-quill{width:34px;height:auto;margin-top:10px}.advisor-message>div{min-width:0;border-left:1px solid #b99b6180;padding-left:18px}
.advisor-message h3{color:#f1e2ab;font-size:21px;line-height:1.65;letter-spacing:.04em;border-bottom:1px solid #b99b6170;padding-bottom:8px;margin:0 0 9px}
.advisor-message p{color:#fff8e4;margin:5px 0}.advisor-message>div>p:last-child{margin-bottom:0}
@media(max-width:700px){.advisor-page-heading>h2{font-size:26px;margin-bottom:18px}.advisor-card{padding:22px 18px;border-radius:16px}.advisor-sample-note{display:block;margin-bottom:24px}.advisor-sample-note>p{border-left:0;padding:0;margin-top:12px;font-size:11px}.advisor-summary{grid-template-columns:minmax(0,1fr);gap:18px}.advisor-summary figure{width:190px;justify-self:center}.advisor-floral{width:140px;top:24px;right:-12px;opacity:.25}.advisor-reading{text-align:center;font-size:12px}.advisor-identity h3{font-size:34px;text-align:center;letter-spacing:.1em}.advisor-title{text-align:center;font-size:16px;margin-bottom:15px}.advisor-catchcopy{font-size:18px;text-align:center;padding-top:16px}.advisor-section{margin-top:25px}.advisor-section h3{font-size:20px;gap:10px}.advisor-section-icon{width:32px;height:32px}.advisor-section>p{margin-left:0}.advisor-section ul{margin-left:0}.advisor-section p,.advisor-section li{font-size:14px;line-height:1.95}.advisor-message{grid-template-columns:minmax(0,1fr);gap:10px;padding:24px 19px}.advisor-quill{width:25px;height:34px;object-fit:contain;margin:0}.advisor-message>div{border-left:0;padding-left:0}.advisor-message h3{font-size:18px;letter-spacing:0}.advisor-message p{font-size:13px;line-height:2}}
