
/* SUN LIFE V2.0.2 — final responsive polish and brand-safe presentation */
.user-site .topbar{min-height:72px;height:auto;padding-top:7px;padding-bottom:7px}
.user-site .topbar .brand{display:flex;align-items:center;justify-content:flex-start;flex:0 0 174px;width:174px;min-width:0;max-width:174px;height:60px;overflow:visible}
.user-site .topbar .brand img{display:block!important;width:170px!important;height:58px!important;max-width:100%;object-fit:contain!important;object-position:center!important;background:#fff;border:1px solid rgba(231,184,63,.18);border-radius:10px;padding:2px 5px!important;mix-blend-mode:normal!important}
.public-nav{min-height:88px;align-items:center}
.public-brand{display:flex;align-items:center;justify-content:flex-start;width:190px;min-width:0;height:74px;overflow:visible}
.public-brand img{display:block!important;width:186px!important;height:70px!important;object-fit:contain!important;object-position:center!important;background:#fff;border:1px solid #e7e6df;border-radius:11px;padding:2px 5px!important}
.footer-brand img,.auth-promo-brand img,.auth-logo,.admin-brand img{object-fit:contain!important;object-position:center!important}
.landing-hero{min-height:580px;background-position:center right!important;background-size:cover!important}
.landing-hero-content{width:min(650px,62%)}
.landing-hero h1{max-width:650px;font-size:clamp(42px,5.3vw,72px);line-height:1.02;text-shadow:0 4px 26px rgba(0,0,0,.22)}
.landing-hero p{max-width:560px;font-size:15px;line-height:1.8}
.landing-hero .hero-orbit-mark{border-color:rgba(238,207,119,.23);color:rgba(238,207,119,.2)}
.auth-promo-panel{background-image:linear-gradient(120deg,rgba(3,35,32,.94) 0%,rgba(4,65,53,.87) 52%,rgba(4,62,53,.36) 100%),url('../images/sunlife-global-hero-v201.webp');background-size:cover;background-position:center right;background-repeat:no-repeat}
.auth-promo-panel:after{content:"";position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(0deg,rgba(2,32,29,.46),transparent);pointer-events:none}
.auth-promo-panel>*{position:relative;z-index:1}
.auth-promo-brand{display:inline-flex;align-items:center;background:#fff;border-radius:12px;padding:3px;box-shadow:0 8px 22px rgba(0,0,0,.12)}
.auth-promo-brand img{display:block;width:176px;height:70px;object-fit:contain!important;background:#fff;border-radius:9px;padding:2px 5px}
.auth-shell{background:linear-gradient(145deg,#fff,#fbfdfb)}
.auth-shell .auth-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}
.auth-shell h1{font-size:clamp(30px,3vw,40px);letter-spacing:-.045em}
.auth-shell .stack label{display:block;line-height:1.5}
.auth-shell .stack input,.auth-shell .stack select{width:100%;min-height:52px;padding:13px 15px;border-radius:13px}
.auth-shell .login-identifier-row,.auth-shell .phone-country-row{display:grid;grid-template-columns:minmax(116px,150px) minmax(0,1fr);gap:9px}
.auth-shell .login-identifier-row select,.auth-shell .phone-country-row select{width:100%;min-width:0;max-width:none}
.auth-form-options{display:flex;align-items:center;justify-content:space-between;gap:12px}
.auth-register-callout{border:1px solid #e6eadf;background:#f8faf6;border-radius:14px;padding:14px 16px;margin-top:15px;display:flex;justify-content:center;gap:5px;flex-wrap:wrap;font-size:12px}
.finance-page-shell{max-width:900px}
.finance-method-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.finance-method-choice{min-height:92px;padding:15px 16px;border-radius:18px;background:linear-gradient(145deg,#fff,#f7faf8);box-shadow:0 7px 24px rgba(9,55,41,.045)}
.finance-method-choice .method-logo{width:48px;height:48px;flex-basis:48px;border:1px solid rgba(20,60,48,.07);border-radius:15px;font-size:18px}
.finance-method-choice b{font-size:14px;letter-spacing:-.02em}
.finance-method-choice small{font-size:10px}
.deposit-current-credit,.withdraw-balance-card-v201{min-height:132px}
.withdraw-balance-card-v201{background:radial-gradient(circle at 88% 12%,rgba(235,198,93,.25),transparent 28%),linear-gradient(125deg,#052d2a,#087253);}
.saved-account-inline-v201{padding:17px 19px;border-radius:18px}
.saved-account-copy b{font-size:13px}
.withdraw-request-form-v201{max-width:100%}
.finance-amount-input input{font-size:20px}
.finance-withdraw-breakdown{background:#f8fbf9}
.finance-withdraw-breakdown .finance-net-payout b{font-size:21px}
.payout-account-form{max-width:760px}
.payout-method-grid .finance-method-choice{min-height:85px}
.account-page-v202{max-width:1040px;margin:0 auto}
.account-hero-v202{padding:26px;border:1px solid rgba(235,200,106,.26);border-radius:24px;background:radial-gradient(circle at 90% 0%,rgba(231,196,93,.22),transparent 30%),linear-gradient(130deg,#062d29,#087153);color:#fff;box-shadow:0 18px 42px rgba(4,50,38,.14)}
.account-identity-v202{display:flex;align-items:center;gap:15px}
.account-avatar-v202{width:58px;height:58px;border:2px solid rgba(246,220,142,.72);border-radius:18px;background:linear-gradient(145deg,#f6df9c,#d8ad3b);color:#143e32;display:grid;place-items:center;font-size:25px;font-weight:900}
.account-identity-v202 .eyebrow{color:#efd98e}
.account-identity-v202 h1{margin:2px 0;color:#fff;font-size:25px}
.account-identity-v202 p{margin:0;color:#d1e4d8;font-size:11px}
.account-balance-v202{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px;padding:17px 19px;border:1px solid #ffffff23;border-radius:17px;background:#ffffff0d}
.account-balance-v202 small,.account-balance-v202 strong,.account-balance-v202 span{display:block}
.account-balance-v202 small{color:#e6d693;font-size:9px;font-weight:900;letter-spacing:.14em}
.account-balance-v202 strong{margin:3px 0;font-size:31px;letter-spacing:-.045em;color:#fff}
.account-balance-v202 span{color:#c5ddd0;font-size:10px}
.account-metrics-v202{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:15px 0 27px}
.account-metrics-v202>div{padding:16px;border:1px solid #dfe9e3;border-radius:16px;background:#fff;box-shadow:0 7px 20px rgba(10,58,42,.04)}
.account-metrics-v202 small,.account-metrics-v202 b{display:block}
.account-metrics-v202 small{color:#82938b;font-size:10px}
.account-metrics-v202 b{margin-top:4px;color:#123e32;font-size:18px}
.account-menu-section-v202 h2{font-size:23px;color:#153d32}
.account-menu-grid-v202{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.account-menu-grid-v202>a{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid #e1eae4;border-radius:16px;background:linear-gradient(145deg,#fff,#f8fbf8);box-shadow:0 7px 20px rgba(10,58,42,.035);min-width:0}
.account-menu-grid-v202>a:hover{transform:translateY(-2px);border-color:#c7dfd0;box-shadow:0 13px 25px rgba(10,58,42,.08)}
.account-menu-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#f9e8b5,#e8c65f);color:#155240;font-size:19px}
.account-menu-grid-v202>a>span:nth-child(2){display:block;flex:1;min-width:0}
.account-menu-grid-v202 b,.account-menu-grid-v202 small{display:block}
.account-menu-grid-v202 b{font-size:12px;color:#173d32}
.account-menu-grid-v202 small{margin-top:3px;color:#82928b;font-size:9px;line-height:1.45}
.account-menu-grid-v202 i{font-style:normal;color:#0a7658;font-size:18px}
.account-plans-v202{margin-top:24px}
@media(max-width:760px){
 .user-site .topbar{min-height:66px;padding:3px 12px}
 .user-site .topbar .brand{flex:0 0 126px;width:126px;max-width:126px;height:58px}
 .user-site .topbar .brand img{width:124px!important;height:55px!important;padding:2px 4px!important}
 .public-nav{width:calc(100% - 24px);min-height:70px}
 .public-brand{width:132px;height:61px;flex:0 0 132px}
 .public-brand img{width:130px!important;height:59px!important;padding:2px 4px!important}
 .landing-hero{min-height:530px;padding:32px 21px;background-position:68% center!important}
 .landing-hero-content{width:100%;max-width:520px}
 .landing-hero h1{max-width:430px;font-size:clamp(35px,9vw,49px)}
 .landing-hero p{max-width:340px;font-size:12px}
 .auth-promo-panel{min-height:290px;background-position:68% center}
 .auth-promo-brand img{width:145px;height:59px}
 .auth-shell .login-identifier-row,.auth-shell .phone-country-row{grid-template-columns:120px minmax(0,1fr)}
 .finance-method-grid{grid-template-columns:1fr;gap:10px}
 .finance-method-choice{min-height:76px;padding:12px 14px}
 .finance-method-choice .method-logo{width:45px;height:45px;flex-basis:45px}
 .account-hero-v202{padding:19px;border-radius:20px}
 .account-balance-v202{align-items:flex-start;flex-direction:column}
 .account-metrics-v202{gap:7px}
 .account-metrics-v202>div{padding:11px}
 .account-metrics-v202 b{font-size:15px}
 .account-menu-grid-v202{grid-template-columns:1fr;gap:8px}
}
@media(max-width:390px){
 .user-site .topbar .brand{flex-basis:116px;width:116px;max-width:116px}
 .user-site .topbar .brand img{width:114px!important}
 .public-brand{width:120px;flex-basis:120px}
 .public-brand img{width:118px!important}
 .public-nav-actions{gap:4px}
 .public-login-link{padding:8px 9px}
 .public-register-link{padding:8px 10px}
 .account-identity-v202 h1{font-size:21px}
}
@media(prefers-reduced-motion:reduce){.account-menu-grid-v202>a{transition:none!important}.account-menu-grid-v202>a:hover{transform:none}}

/* V2.0.2 responsive international header and clearer finance flows */
.public-nav{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;flex-wrap:nowrap!important}
.public-brand{flex:0 0 174px!important;width:174px!important;height:78px!important;min-width:0!important;overflow:visible!important}
.public-brand img{width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center!important;background:#fff!important}
.public-nav-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;flex:1 1 auto!important;min-width:0!important;gap:9px!important;flex-wrap:wrap!important}
.public-nav-actions>*{flex-shrink:0}
.public-register-link{white-space:nowrap!important;min-width:145px}
.user-site .topbar .brand{flex-basis:160px!important;width:160px!important;max-width:160px!important;height:66px!important}
.user-site .topbar .brand img{width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center!important}
.auth-promo-panel h2{max-width:560px;font-size:clamp(29px,3.1vw,43px);line-height:1.12;letter-spacing:-.035em}
.auth-promo-panel p{max-width:480px;line-height:1.75}
.auth-shell .login-identifier-row,.auth-shell .phone-country-row{grid-template-columns:minmax(132px,145px) minmax(0,1fr);gap:9px}
.auth-shell .login-identifier-row select,.auth-shell .phone-country-row select{width:100%;min-width:0;font-size:12px;padding-left:10px;padding-right:24px}
.auth-shell .auth-form{max-width:520px;width:100%;margin-left:auto;margin-right:auto}
.auth-shell .auth-submit{min-height:54px;letter-spacing:.02em}
.finance-page-shell{width:100%;max-width:900px}
.deposit-page-v201 .finance-form-card{padding:clamp(20px,3vw,30px);border-radius:24px;border:1px solid #dfeae3;box-shadow:0 16px 42px rgba(9,57,43,.065);background:linear-gradient(145deg,#fff,#fbfdfb)}
.deposit-page-v201 .finance-method-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.deposit-page-v201 .finance-method-choice{min-height:112px;display:grid;grid-template-columns:54px minmax(0,1fr) 16px;align-items:center;gap:12px;padding:17px;border-radius:19px;border:1.5px solid #e0e9e3;background:linear-gradient(145deg,#fff,#f8fbf9);box-shadow:0 7px 23px rgba(8,58,42,.045)}
.deposit-page-v201 .finance-method-choice .method-logo{width:52px;height:52px;flex-basis:52px;border-radius:16px;font-size:18px;font-weight:950;box-shadow:inset 0 0 0 1px #fff9}
.deposit-page-v201 .finance-method-choice b{font-size:15px;line-height:1.25}
.deposit-page-v201 .finance-method-choice small{font-size:10px;line-height:1.35}
.deposit-page-v201 .finance-method-choice:has(input:checked){border-color:#11815d;background:linear-gradient(145deg,#eff9f3,#fff);box-shadow:0 0 0 3px #0a855a15,0 13px 27px #0c5a3d10}
.deposit-page-v201 .finance-section-heading{margin-top:8px}
.deposit-page-v201 .finance-info-panel{border-radius:16px;background:linear-gradient(110deg,#edf6f2,#f8faf8);border-color:#dcebe2}
.deposit-page-v201 .finance-submit{min-height:54px;font-size:13px}
.withdraw-page-v201 .withdraw-balance-card-v201{min-height:164px;padding:29px 32px;border-radius:24px;background:radial-gradient(circle at 90% 12%,rgba(240,207,115,.28),transparent 27%),linear-gradient(120deg,#062c28 0%,#075a47 58%,#0b7554 100%)}
.withdraw-page-v201 .withdraw-balance-card-v201 strong{font-size:clamp(36px,5vw,48px);letter-spacing:-.055em}
.withdraw-page-v201 .saved-account-inline-v201{padding:19px 21px;border-radius:19px;background:linear-gradient(120deg,#fff,#f7fbf8);border-color:#d9e8de}
.withdraw-page-v201 .saved-account-inline-v201>a{padding:9px 13px;border:1px solid #d7e8df;border-radius:11px;background:#fff;white-space:nowrap}
.withdraw-page-v201 .finance-form-card{padding:25px;border-radius:22px}
.withdraw-page-v201 .finance-withdraw-breakdown{border-radius:17px}
.withdraw-page-v201 .finance-net-payout{background:linear-gradient(100deg,#e8f5ed,#f8fbf8)!important}
.withdraw-page-v201 .finance-submit{min-height:54px}
.payout-accounts-page-v202 .payout-account-list-v202{margin:15px 0 23px}
.payout-account-grid-v202{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.payout-account-option-v202{padding:19px;border:1px solid #e0e9e3;border-radius:19px;background:linear-gradient(145deg,#fff,#f8fbf9);box-shadow:0 9px 26px rgba(8,58,42,.045);min-width:0}
.payout-account-option-v202.is-active{border-color:#81c7a4;box-shadow:0 0 0 3px rgba(35,153,92,.08),0 10px 28px rgba(8,58,42,.06)}
.payout-account-option-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}
.payout-account-option-v202>small{display:block;color:#81938b;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}
.payout-account-option-v202 h3{margin:6px 0;color:#173d32;font-size:16px;overflow-wrap:anywhere}
.payout-account-mask-v202{display:block;color:#254e40;font-size:18px;letter-spacing:.08em}
.payout-active-caption-v202{display:inline-flex;margin-top:12px;padding:7px 10px;border-radius:9px;background:#e8f6ed;color:#197249;font-size:10px;font-weight:850}
.payout-account-option-v202 .btn{margin-top:15px;min-height:42px}
.payout-empty-state-v202{padding:28px;border:1px dashed #cbded2;border-radius:20px;background:linear-gradient(145deg,#fbfdfb,#f1f7f3);text-align:center;margin:15px 0 20px}
.payout-empty-state-v202>span{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 12px;border-radius:18px;background:#f5e3a9;color:#174737;font-size:24px}
.payout-empty-state-v202 h2{margin:0 0 6px;color:#164033}
.payout-empty-state-v202 p{max-width:520px;margin:0 auto;color:#74857d;font-size:12px;line-height:1.7}
.payout-account-form-v202{margin-top:16px}
.payout-account-form-v202 .finance-method-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){
 .public-nav{display:grid!important;grid-template-columns:minmax(108px,132px) minmax(0,1fr)!important;gap:7px!important;width:calc(100% - 24px)!important;min-height:74px!important;padding:6px 0!important;align-items:center!important}
 .public-brand{width:100%!important;min-width:0!important;flex-basis:auto!important;height:67px!important}
 .public-brand img{width:100%!important;height:100%!important}
 .public-nav-actions{display:grid!important;grid-template-columns:minmax(58px,1fr) minmax(52px,auto) minmax(104px,auto)!important;gap:5px!important;min-width:0!important}
 .public-nav-actions .language-pill{font-size:8px;padding:8px 6px;min-width:0;justify-content:center}
 .public-login-link{padding:9px 8px!important;text-align:center;white-space:nowrap}
 .public-register-link{min-width:0!important;padding:9px 8px!important;font-size:9px!important;text-align:center;white-space:nowrap!important}
 .public-register-link span{display:none}
 .user-site .topbar{display:flex;justify-content:space-between;gap:8px;min-height:66px;height:auto;padding:4px 10px!important}
 .user-site .topbar .brand{flex:0 0 126px!important;width:126px!important;max-width:126px!important;height:67px!important}
 .user-site .topbar .brand img{width:100%!important;height:100%!important}
 .user-site .top-actions{flex:0 1 auto;min-width:0;gap:4px}
 .user-site .top-actions .language-pill{font-size:8px;padding:7px 7px;white-space:nowrap}
 .auth-login-layout,.auth-register-layout,.auth-layout{width:calc(100% - 16px);margin:8px auto 18px}
 .auth-promo-panel{min-height:270px;padding:23px 20px;background-position:70% center}
 .auth-promo-brand img{width:154px!important;height:68px!important}
 .auth-promo-panel h2{font-size:clamp(24px,6.4vw,31px);max-width:100%;line-height:1.14}
 .auth-promo-panel p{font-size:12px;max-width:96%}
 .auth-shell{padding:23px 19px 28px}
 .auth-shell .login-identifier-row,.auth-shell .phone-country-row{grid-template-columns:132px minmax(0,1fr);gap:7px}
 .auth-shell .login-identifier-row select,.auth-shell .phone-country-row select{font-size:10px;padding:10px 19px 10px 8px}
 .deposit-page-v201 .finance-method-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .deposit-page-v201 .finance-method-choice{min-height:94px;grid-template-columns:40px minmax(0,1fr);gap:8px;padding:11px;border-radius:15px}
 .deposit-page-v201 .finance-method-choice .method-logo{width:40px;height:40px;flex-basis:40px;border-radius:13px;font-size:14px}
 .deposit-page-v201 .finance-method-choice b{font-size:12px}
 .deposit-page-v201 .finance-method-choice small{font-size:9px}
 .deposit-page-v201 .finance-method-choice>i{position:absolute;right:8px;top:8px;width:12px;height:12px;flex-basis:12px}
 .withdraw-page-v201 .withdraw-balance-card-v201{padding:22px 19px;min-height:140px;border-radius:19px}
 .withdraw-page-v201 .saved-account-inline-v201{align-items:flex-start;gap:10px;padding:14px}
 .withdraw-page-v201 .saved-account-copy b{overflow-wrap:anywhere}
 .withdraw-page-v201 .saved-account-inline-v201>a{padding:8px 9px;font-size:10px}
 .withdraw-page-v201 .finance-form-card{padding:18px 15px}
 .payout-account-grid-v202{grid-template-columns:1fr;gap:9px}
 .payout-account-option-v202{padding:15px}
 .payout-account-form-v202 .finance-method-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 .payout-account-form-v202 .payout-method-grid .finance-method-choice{min-height:87px;padding:8px 4px}
}
@media(max-width:390px){
 .public-nav{grid-template-columns:minmax(96px,112px) minmax(0,1fr)!important;width:calc(100% - 18px)!important;gap:5px!important}
 .public-brand{height:62px!important}
 .public-nav-actions{grid-template-columns:minmax(54px,1fr) minmax(48px,auto) minmax(94px,auto)!important;gap:4px!important}
 .public-nav-actions .language-pill{font-size:7px}
 .public-login-link{font-size:9px!important;padding:8px 5px!important}
 .public-register-link{font-size:8px!important;padding:8px 5px!important}
 .user-site .topbar .brand{flex-basis:112px!important;width:112px!important;max-width:112px!important;height:60px!important}
 .auth-shell .login-identifier-row,.auth-shell .phone-country-row{grid-template-columns:116px minmax(0,1fr)}
 .deposit-page-v201 .finance-method-choice{grid-template-columns:34px minmax(0,1fr);padding:9px 8px}
 .deposit-page-v201 .finance-method-choice .method-logo{width:34px;height:34px;flex-basis:34px;font-size:12px}
}
