@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Noto+Sans+Gujarati:wght@400;500;600;700;800&display=swap');

:root{
  --navy:#0b2b55;--navy2:#173e6c;--green:#2ca34a;--green2:#198b38;--text:#172033;
  --muted:#64748b;--line:#e7edf4;--soft:#f8fbfd;--shadow:0 12px 34px rgba(15,23,42,.07);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,"Noto Sans Gujarati","Nirmala UI",sans-serif;color:var(--text);background:#fff}
a{text-decoration:none;color:inherit}
button,input{font:inherit}
.container{width:min(1440px,calc(100% - 64px));margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid #eef2f6}
.nav-wrap{min-height:82px;display:flex;align-items:center;gap:32px}
.brand{position:relative;display:grid;line-height:1;width:190px;flex:0 0 auto}
.brand-word{font-size:24px;font-weight:800;letter-spacing:.8px;color:var(--navy)}
.brand small{font-size:8px;letter-spacing:2px;font-weight:800;margin-top:6px;color:#1f2937}
.brand-leaf{position:absolute;left:88px;top:-14px;font-size:18px}
.main-nav{display:flex;align-items:center;gap:32px;margin:auto;font-size:14px;font-weight:600}
.main-nav a:hover{color:var(--green)}
.nav-actions{display:flex;align-items:center;gap:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:11px 18px;font-weight:700;border:1px solid transparent;cursor:pointer;transition:.2s}
.btn:hover{transform:translateY(-1px)}
.btn-login{background:#fff;border-color:#94a3b8;color:#0f2745}
.btn-primary{background:linear-gradient(135deg,var(--green),var(--green2));color:white;box-shadow:0 6px 16px rgba(44,163,74,.2)}
.btn-outline{background:#fff;border-color:#59a76c;color:var(--green2)}
.btn-large{padding:14px 22px;min-height:50px}
.menu-btn{display:none;border:0;background:transparent;font-size:26px;color:var(--navy);cursor:pointer}

.hero{padding:58px 0 52px;border-bottom:1px solid #f0f3f6}
.hero-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(560px,1.1fr);gap:70px;align-items:center}
.eyebrow{color:var(--green2);font-size:19px;font-weight:700;margin:0 0 14px}
.hero h1{font-size:56px;line-height:1.08;letter-spacing:-1.7px;color:var(--navy);margin:0 0 22px;font-weight:800}
.hero-text{font-size:17px;line-height:1.85;max-width:690px;margin:0 0 28px}
.hero-points{display:flex;gap:28px;flex-wrap:wrap;color:#4b5563;font-size:13px;font-weight:600;margin-bottom:30px}
.hero-points span:before{color:var(--green)}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap}
.micro-trust{display:flex;gap:30px;flex-wrap:wrap;margin-top:28px;font-size:13px;font-weight:600;color:#303948}

.hero-visual{position:relative;min-height:500px;display:flex;align-items:center;justify-content:center}
.laptop{width:650px;max-width:100%;position:relative}
.laptop-screen{height:385px;border:8px solid #111;border-bottom-width:11px;border-radius:18px 18px 8px 8px;background:white;overflow:hidden;box-shadow:0 14px 24px rgba(2,6,23,.16)}
.laptop-base{height:18px;background:linear-gradient(#d9dde2,#aeb5bd);border-radius:2px 2px 14px 14px;width:108%;margin-left:-4%;box-shadow:0 8px 12px rgba(15,23,42,.15)}
.dash-top{height:48px;display:grid;grid-template-columns:110px 1fr 60px;align-items:center;border-bottom:1px solid #eef2f7;padding:0 13px;gap:14px;font-size:8px}
.dash-logo{font-weight:800;color:var(--navy);letter-spacing:.5px}
.search{background:#fafafa;border:1px solid #f1f5f9;border-radius:5px;padding:8px 12px;color:#a0a8b4}
.dash-icons{text-align:right}
.dash-body{display:grid;grid-template-columns:140px 1fr;height:calc(100% - 48px)}
.dash-side{padding:14px 10px;border-right:1px solid #eef2f7;display:flex;flex-direction:column;gap:14px;font-size:8px;color:#5f6773}
.dash-side b{background:#f5f7f9;padding:8px;border-radius:5px;color:#334155}
.dash-content{padding:16px;background:#fbfcfd}
.welcome{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#eef3fb,#f7fafc);border-radius:7px;padding:16px;font-size:10px}
.welcome strong{font-size:12px}.welcome p{margin:5px 0 0;color:#667085}.plant{font-size:38px}
.mini-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}
.mini-cards div{min-height:65px;background:white;border:1px solid #edf1f5;border-radius:6px;padding:10px 8px;display:grid;gap:3px;font-size:9px}
.mini-cards b{font-size:8px}.mini-cards small{font-size:7px;color:#7b8490}
.popular{background:white;border:1px solid #edf1f5;border-radius:6px;padding:12px;font-size:8px}
.popular-head{display:flex;justify-content:space-between}.popular p{padding:7px 0;margin:0;border-bottom:1px solid #f3f4f6}.popular p:last-child{border:0}
.phone{position:absolute;right:-7px;bottom:55px;width:132px;height:282px;border:8px solid #101010;border-radius:26px;background:#fff;box-shadow:0 14px 28px rgba(15,23,42,.22);padding:17px 9px 10px;z-index:3}
.phone-notch{position:absolute;top:5px;left:39px;width:43px;height:6px;background:#111;border-radius:8px}
.phone-brand{font-size:7px;font-weight:800;color:var(--navy);padding-bottom:12px;border-bottom:1px solid #eef2f6}
.phone-menu{display:flex;flex-direction:column;gap:10px;font-size:5.5px;color:#58616d;padding-top:10px}
.phone-menu b{color:#25364c}

.section{padding:28px 0 34px}
.section-title{text-align:center;color:var(--navy);font-size:30px;margin:0 0 28px;font-weight:800;position:relative}
.section-title:after{content:"";display:block;width:44px;height:2px;background:var(--green);margin:10px auto 0}
.section-title.left{text-align:left}.section-title.left:after{margin-left:0}
.feature-grid{display:grid;gap:16px}
.feature-grid.eight{grid-template-columns:repeat(8,1fr)}
.feature-card{background:#fff;border:1px solid #edf1f5;border-radius:12px;padding:20px 14px;box-shadow:0 4px 14px rgba(15,23,42,.03);text-align:center;min-height:190px}
.feature-card h3{font-size:14px;line-height:1.45;margin:14px 0 12px;color:#102747}
.feature-card p{font-size:12px;line-height:1.7;margin:0;color:#3f4854}
.feature-card.compact{min-height:178px}
.icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;margin:auto;font-size:25px;background:#eef5ff;color:#2664a7}
.icon.green{background:#eef9f1;color:#2e9b4b}.icon.purple{background:#f5efff;color:#7a3ec8}.icon.orange{background:#fff5e9;color:#f09a22}.icon.pink{background:#fff0f3;color:#e85578}.icon.red{background:#fff1f1;color:#e64d4d}.icon.teal{background:#ecf9f7;color:#249c91}.icon.sky{background:#eef8ff;color:#2388c7}
.useful-section{background:#f7fbf7;border-top:1px solid #eef6ee;border-bottom:1px solid #eef6ee}
.split-section{padding-top:20px}
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.course-card,.preview-card{border-radius:12px;padding:28px 34px;min-height:390px}
.course-card{background:linear-gradient(135deg,#f4f9fd,#edf6fc);border:1px solid #e3edf5}
.course-card>p{line-height:1.8;font-size:13px;margin:0 0 32px}
.flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:10px;text-align:center}
.flow>span{font-size:22px;color:#354154}
.flow>div{font-size:11px;line-height:1.6}
.flow-icon{width:62px;height:62px;border-radius:50%;background:white;border:1px solid #e2edf5;display:grid;place-items:center;margin:0 auto 10px;font-size:30px;color:#2a71a5;box-shadow:0 8px 20px rgba(30,64,175,.06)}
.flow-trust{margin-top:28px;background:white;border-radius:8px;padding:11px;display:flex;justify-content:space-around;gap:10px;font-size:10px;color:#5b6572}
.preview-card{background:#fffaf3;border:1px solid #f7ede0}
.preview-heading{text-align:center;margin:0 0 16px;color:var(--navy);font-size:18px}
.preview-inner{background:white;border:1px solid #f0e6d8;border-radius:9px;padding:18px;box-shadow:0 6px 18px rgba(15,23,42,.04)}
.client-line{font-weight:700;font-size:14px;border-bottom:1px solid #edf0f2;padding-bottom:12px;margin:0 0 7px}
.preview-row{display:grid;grid-template-columns:28px 1fr;gap:10px;padding:8px 0;border-bottom:1px solid #f0f2f4}
.preview-row b{font-size:11px}.preview-row p{font-size:10px;margin:3px 0 0;color:#5e6670}
.pv-icon{font-size:18px}.pv-icon.green{color:#3a9d50}.pv-icon.teal{color:#219a91}.pv-icon.red{color:#db4c4c}
.full-preview{display:block;text-align:center;background:var(--navy);color:white;font-size:11px;font-weight:700;border-radius:5px;padding:10px;margin-top:10px}

.journey-section{padding-top:4px}
.journey{display:flex;align-items:center;justify-content:center;gap:25px}
.journey div{text-align:center;min-width:95px}.journey span{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#f2f6fb;margin:auto auto 9px;font-size:28px}.journey b{font-size:11px;color:#243247;line-height:1.35}.journey i{font-style:normal;font-size:22px}
.journey-note{text-align:center;color:#3d9a55;font-size:12px;font-weight:700;margin-top:20px}

.pricing-band{padding:22px 0;background:#fbfdfb;border-top:1px solid #eef3ef;border-bottom:1px solid #eef3ef}
.pricing-grid{display:grid;grid-template-columns:230px 1fr 340px;align-items:center;gap:42px}
.price-block{display:grid;text-align:center}.price-block small{font-weight:700;color:#263a55}.price-block strong{font-size:40px;line-height:1;color:var(--green2);margin:8px 0 5px}.price-block span{font-size:11px}
.benefits{display:grid;grid-template-columns:1fr 1fr;gap:9px 28px;font-size:11px;color:#435161}.benefits span:before{color:var(--green)}
.pricing-cta{display:grid;gap:7px;text-align:center}.pricing-cta small{font-size:10px}
.trust-footer{padding:18px 0}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center;font-size:10px;color:#3f4854}

.modal{position:fixed;inset:0;background:rgba(15,23,42,.6);z-index:100;display:none;align-items:center;justify-content:center;padding:20px}
.modal.open{display:flex}
.modal-card{width:min(420px,100%);background:white;border-radius:18px;padding:28px;box-shadow:0 24px 80px rgba(2,6,23,.25);position:relative}
.modal-close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:28px;cursor:pointer}
.modal-logo{font-weight:800;color:var(--navy);letter-spacing:1px}.modal-card h2{margin:18px 0 4px}.modal-card>p{margin:0 0 20px;color:#64748b;font-size:13px}
.modal-card form{display:grid;gap:14px}.modal-card label{display:grid;gap:6px;font-size:12px;font-weight:700}.modal-card input{border:1px solid #d7dee7;border-radius:8px;padding:12px}.modal-note{display:block;text-align:center;color:#94a3b8;margin-top:12px}

@media(max-width:1200px){
  .main-nav{gap:18px;font-size:12px}.container{width:min(1180px,calc(100% - 40px))}
  .hero-grid{grid-template-columns:1fr 1fr;gap:36px}.hero h1{font-size:46px}
  .feature-grid.eight{grid-template-columns:repeat(4,1fr)}
  .journey{gap:12px}.journey div{min-width:76px}
}
@media(max-width:900px){
  .nav-wrap{min-height:72px}.main-nav{position:absolute;top:72px;left:0;right:0;background:white;border-bottom:1px solid #e9eef4;display:none;flex-direction:column;align-items:flex-start;padding:20px 28px;gap:18px}.main-nav.open{display:flex}
  .menu-btn{display:block}.nav-cta{display:none}.brand{width:160px}.brand-word{font-size:21px}
  .hero{padding-top:34px}.hero-grid{grid-template-columns:1fr}.hero-copy{text-align:center}.hero-text{margin-left:auto;margin-right:auto}.hero-points,.hero-actions,.micro-trust{justify-content:center}
  .hero-visual{min-height:430px}.laptop{width:620px}
  .split-grid{grid-template-columns:1fr}
  .journey{flex-wrap:wrap}.journey i{display:none}
  .pricing-grid{grid-template-columns:1fr;text-align:center;gap:22px}.benefits{max-width:520px;margin:auto}.pricing-cta{max-width:420px;margin:auto;width:100%}
}
@media(max-width:620px){
  .container{width:calc(100% - 28px)}
  .nav-actions{gap:8px}.btn-login{padding:8px 11px;font-size:12px}
  .hero h1{font-size:39px}.eyebrow{font-size:16px}.hero-text{font-size:14px}
  .hero-actions{display:grid}.hero-actions .btn{width:100%}.micro-trust{gap:13px;font-size:10px}
  .hero-visual{min-height:310px}.laptop-screen{height:260px;border-width:5px}.dash-body{grid-template-columns:86px 1fr}.dash-side{font-size:5px;gap:8px;padding:8px 5px}.dash-top{height:32px;grid-template-columns:65px 1fr 35px;padding:0 7px}.dash-content{padding:8px}.welcome{padding:8px;font-size:6px}.welcome strong{font-size:7px}.plant{font-size:22px}.mini-cards{gap:4px;margin:6px 0}.mini-cards div{min-height:38px;padding:4px;font-size:5px}.mini-cards b{font-size:5px}.popular{padding:6px;font-size:5px}.popular p{padding:4px 0}.phone{width:82px;height:176px;right:-2px;bottom:31px;border-width:5px;border-radius:18px;padding:12px 6px}.phone-notch{left:24px;width:25px;height:4px}.phone-menu{gap:5px;font-size:3.5px}.phone-brand{font-size:4.5px}
  .section-title{font-size:24px}.feature-grid.eight{grid-template-columns:repeat(2,1fr)}.feature-card{min-height:175px;padding:16px 10px}.feature-card h3{font-size:12px}.feature-card p{font-size:10px}
  .course-card,.preview-card{padding:22px 16px}.flow{grid-template-columns:1fr 1fr;gap:18px}.flow>span{display:none}.flow-trust{flex-wrap:wrap}
  .journey{display:grid;grid-template-columns:repeat(4,1fr);gap:20px 7px}.journey div{min-width:0}.journey span{width:52px;height:52px;font-size:22px}.journey b{font-size:9px}
  .benefits{grid-template-columns:1fr;text-align:left;max-width:230px}.trust-grid{grid-template-columns:1fr 1fr;gap:14px}
}

/* BUILD 158: Advisor Login / Sign Up / Forgot Password */
.auth-modal-card{max-height:92vh;overflow:auto}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}.auth-tab{border:1px solid #dbe4e0;background:#f8faf9;border-radius:9px;padding:10px;font-weight:800;cursor:pointer}.auth-tab.active{background:var(--navy);color:#fff;border-color:var(--navy)}.auth-panel{display:none}.auth-panel.active{display:block}.auth-panel h2{margin:8px 0 4px}.auth-panel>p{margin:0 0 16px;color:#64748b;font-size:13px}.auth-link{border:0;background:transparent;color:var(--green);font-weight:800;cursor:pointer;padding:4px;text-align:center}.auth-message{display:none;border-radius:8px;padding:9px 10px;margin:8px 0;font-size:12px;font-weight:700}.auth-message.show{display:block}.auth-message.error{background:#fff1f2;color:#be123c}.auth-message.success{background:#ecfdf5;color:#047857}.auth-panel button[disabled]{opacity:.65;cursor:wait}.pricing-grid.js-signup-open{cursor:pointer}.pricing-grid.js-signup-open:focus{outline:3px solid rgba(35,139,69,.22);outline-offset:4px}

/* Build 161: logged-in advisor profile */
.profile-nav-btn{display:inline-flex;align-items:center;gap:8px;border:1px solid #dbe4e0;background:#fff;border-radius:999px;padding:5px 12px 5px 5px;font-weight:800;color:var(--navy);cursor:pointer}.profile-nav-btn[hidden]{display:none!important}.profile-nav-avatar,.profile-avatar-large{display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;font-weight:900;overflow:hidden}.profile-nav-avatar{width:32px;height:32px}.profile-avatar-large{width:68px;height:68px;font-size:24px;flex:0 0 auto}.profile-nav-avatar img,.profile-avatar-large img{width:100%;height:100%;object-fit:cover}.profile-modal-card{width:min(480px,100%)}.profile-head{display:flex;align-items:center;gap:14px;margin:8px 0 18px}.profile-head h2{margin:0}.profile-head p{margin:3px 0 0;color:#64748b;font-size:13px}.profile-details{display:grid;gap:10px;margin-bottom:16px}.profile-details>div{border:1px solid #e5ebe8;border-radius:10px;padding:10px 12px;display:grid;gap:3px}.profile-details small{color:#64748b}.profile-details strong{overflow-wrap:anywhere}.profile-form{display:grid;gap:10px;margin:12px 0}.profile-form label{display:grid;gap:6px;font-size:12px;font-weight:700}.profile-form label span{font-weight:500;color:#64748b}.profile-form input{border:1px solid #d7dee7;border-radius:8px;padding:11px}.profile-edit-block{border-top:1px solid #e5ebe8;padding:12px 0}.profile-edit-block summary{font-weight:800;cursor:pointer;color:var(--navy)}.profile-logout{width:100%;margin-top:8px}@media(max-width:700px){.profile-nav-btn #profileNavName{display:none}.profile-nav-btn{padding-right:5px}.profile-modal-card{max-height:92vh;overflow:auto}}

#loginOpen[hidden],#signupOpen[hidden]{display:none!important}

/* Build 165: compact, viewport-safe advisor profile modal */
.profile-modal-card{
  width:min(440px,calc(100vw - 32px));
  max-height:min(86vh,760px);
  overflow-y:auto;
  overscroll-behavior:contain;
  padding:22px 22px 20px;
  scrollbar-gutter:stable;
}
.profile-modal-card .modal-close{position:sticky;float:right;right:0;top:0;z-index:3;margin:-10px -8px -34px 0;width:34px;height:34px;border-radius:50%;background:#fff;box-shadow:0 2px 10px rgba(15,23,42,.08)}
.profile-modal-card .profile-head{gap:12px;margin:2px 42px 14px 0}
.profile-modal-card .profile-avatar-large{width:56px;height:56px;font-size:20px}
.profile-modal-card .profile-head h2{font-size:20px;line-height:1.2}
.profile-modal-card .profile-head p{font-size:11px}
.profile-modal-card .profile-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}
.profile-modal-card .profile-details>div{padding:8px 10px;border-radius:9px;min-width:0}
.profile-modal-card .profile-details small{font-size:11px}
.profile-modal-card .profile-details strong{font-size:13px;line-height:1.35}
.profile-modal-card .profile-form{gap:8px;margin:9px 0}
.profile-modal-card .profile-form input{padding:9px 10px}
.profile-modal-card .profile-edit-block{padding:9px 0}
.profile-modal-card .profile-edit-block summary{font-size:13px}
.profile-modal-card .profile-learning,.profile-modal-card .profile-logout{min-height:40px;padding:9px 14px}
.profile-photo-actions{display:flex;gap:8px;flex-wrap:nowrap}
.profile-photo-actions .btn{flex:1 1 0;padding:9px 10px;min-width:0}
@media(max-width:700px){
  .profile-modal-card{width:min(94vw,420px);max-height:88vh;padding:18px 16px 16px;border-radius:14px}
  .profile-modal-card .profile-details{grid-template-columns:1fr;gap:7px}
  .profile-modal-card .profile-head{margin-right:38px}
  .profile-modal-card .profile-avatar-large{width:50px;height:50px;font-size:18px}
  .profile-photo-actions{flex-direction:column}
  .profile-photo-actions .btn{width:100%}
}
@media(max-height:700px) and (min-width:701px){
  .profile-modal-card{max-height:90vh}
  .profile-modal-card .profile-head{margin-bottom:10px}
  .profile-modal-card .profile-details{gap:6px}
  .profile-modal-card .profile-details>div{padding:7px 9px}
}



/* BUILD 166 — Content Preview image slider + lightbox */
.content-preview-card{position:relative;overflow:hidden}.content-preview-slider{position:relative;padding:8px 48px 4px}.cp-stage{min-height:260px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e3ebe6;border-radius:14px;overflow:hidden}.cp-stage img{display:block;width:100%;max-height:430px;object-fit:contain;cursor:zoom-in}.cp-loading{padding:80px 20px;color:#738078}.cp-nav{position:absolute;top:45%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:1px solid #dfe7e2;background:#fff;color:#0d3766;font-size:34px;line-height:1;cursor:pointer;box-shadow:0 5px 16px rgba(12,50,34,.08);z-index:2}.cp-prev{left:0}.cp-next{right:0}.cp-meta{display:flex;justify-content:space-between;gap:12px;color:#6a7780;font-size:13px;padding:8px 4px 0}.subscriber-preview-link{margin:10px auto 0;border:0;background:transparent;color:#0e3b6f;text-decoration:underline;text-underline-offset:3px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;font-size:14px}.subscriber-only-note{display:block;text-align:center;color:#78857d;margin-top:5px}.cp-lightbox{position:fixed;inset:0;background:rgba(13,25,38,.82);z-index:10050;display:none;align-items:center;justify-content:center;padding:28px 74px}.cp-lightbox.open{display:flex}.cp-lightbox-stage{position:relative;max-width:min(1180px,92vw);max-height:88vh;display:flex;align-items:center;justify-content:center}.cp-lightbox-stage img{max-width:100%;max-height:84vh;object-fit:contain;background:#fff;border-radius:12px;box-shadow:0 18px 55px rgba(0,0,0,.28)}.cp-lightbox-close{position:fixed;top:18px;right:24px;width:46px;height:46px;border:0;border-radius:50%;background:#fff;color:#0b2f5d;font-size:30px;cursor:pointer;z-index:2}.cp-lightbox-nav{position:fixed;top:50%;transform:translateY(-50%);width:52px;height:52px;border:0;border-radius:50%;background:#fff;color:#0d3766;font-size:40px;cursor:pointer}.cp-lightbox-prev{left:20px}.cp-lightbox-next{right:20px}.cp-lightbox-count{position:absolute;left:50%;bottom:-30px;transform:translateX(-50%);color:#fff;font-weight:700}.cp-nav[disabled],.cp-lightbox-nav[disabled]{opacity:.35;cursor:default}
@media(max-width:700px){.content-preview-slider{padding:6px 36px 2px}.cp-stage{min-height:180px}.cp-stage img{max-height:310px}.cp-nav{width:34px;height:34px;font-size:28px}.subscriber-preview-link{font-size:12px;line-height:1.4}.cp-lightbox{padding:62px 42px 50px}.cp-lightbox-nav{width:38px;height:38px;font-size:30px}.cp-lightbox-prev{left:6px}.cp-lightbox-next{right:6px}.cp-lightbox-close{top:10px;right:10px;width:40px;height:40px}.cp-meta{font-size:12px}}

/* BUILD 167: Razorpay payment button */
.profile-payment{width:100%;margin-top:8px}.profile-payment[hidden]{display:none!important}

/* BUILD 168: Prevent old landing-page flash while CMS content loads */
html.lp-loading body {
  visibility: hidden !important;
}

html.lp-ready body {
  visibility: visible !important;
}

/* BUILD 174 — Grow Your Business Journey: Admin Modules -> public dynamic carousel */
.journey-carousel{position:relative;display:flex;align-items:center;gap:10px;max-width:100%;margin:0 auto}
.journey-carousel[hidden]{display:none!important}
.journey-viewport{width:100%;overflow:hidden;padding:2px 0}
.journey-track{display:flex;align-items:stretch;width:100%;transition:transform .5s ease;will-change:transform}
.journey-track.no-transition{transition:none!important}
.journey-item{position:relative;flex:0 0 12.5%;max-width:12.5%;min-width:0;padding:0 19px 0 8px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}
.journey-step{text-align:center;width:100%;min-width:0}
.journey-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#f2f6fb;margin:0 auto 9px;font-size:26px;color:#234f7c}
.journey-step b{display:block;font-size:11px;color:#243247;line-height:1.35;min-height:30px;overflow-wrap:anywhere}
.journey-number{white-space:nowrap}
.journey-separator{position:absolute;right:-3px;top:25px;transform:translateY(-50%);font-style:normal;font-size:22px;color:#354154}
.journey-nav{flex:0 0 34px;width:34px;height:34px;border-radius:50%;border:1px solid #dce6df;background:#fff;color:#173b63;font-size:25px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 12px rgba(15,23,42,.08);z-index:2;padding:0}
.journey-nav:hover{background:#f6faf7}
.journey-nav[hidden]{display:none!important}
@media(max-width:1199px){.journey-item{padding-left:10px;padding-right:22px}}
@media(max-width:899px){.journey-icon{width:58px;height:58px;font-size:24px}.journey-step b{font-size:11px}}
@media(max-width:599px){.journey-carousel{gap:5px}.journey-nav{flex-basis:30px;width:30px;height:30px;font-size:22px}.journey-item{padding:0 18px 0 6px}.journey-icon{width:52px;height:52px;font-size:22px}.journey-step b{font-size:10px}.journey-separator{right:-2px;top:23px;font-size:19px}}
/* =========================================================
   GROWISCO MOBILE RESPONSIVE LAYER
   Mobile-only safety/responsiveness. Desktop styles untouched.
   Added 2026-09-13.
========================================================= */

@media (max-width: 900px) {
  html, body {
    max-width: 100%;
    overflow-x: hidden !important;
  }

  img, svg, video, canvas, iframe {
    max-width: 100% !important;
    height: auto;
  }

  table {
    max-width: 100%;
  }

  pre, code {
    max-width: 100%;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  /* ---------- Landing page ---------- */
  .site-header,
  .hero,
  .section,
  .pricing-band,
  .trust-footer {
    max-width: 100%;
    overflow-x: clip;
  }

  .nav-wrap {
    width: calc(100% - 28px) !important;
    gap: 10px !important;
  }

  .brand {
    min-width: 0;
  }

  .nav-actions {
    margin-left: auto;
    flex: 0 0 auto;
  }

  .main-nav {
    max-height: calc(100vh - 72px);
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .hero-grid,
  .split-grid,
  .pricing-grid {
    min-width: 0;
  }

  .hero-copy,
  .hero-visual,
  .laptop,
  .laptop-screen,
  .dash-content,
  .course-card,
  .preview-card,
  .pricing-cta {
    min-width: 0;
    max-width: 100%;
  }

  .hero-visual {
    width: 100%;
    margin-inline: auto;
    overflow: visible;
  }

  .laptop {
    width: min(620px, 100%) !important;
    max-width: 100% !important;
  }

  .laptop-base {
    width: 100% !important;
    margin-left: 0 !important;
  }

  .phone {
    right: 0 !important;
  }

  .hero h1,
  .hero-text,
  .section-title,
  .feature-card h3,
  .feature-card p,
  .course-card,
  .preview-card,
  .pricing-band,
  .trust-grid {
    overflow-wrap: anywhere;
  }

  /* ---------- Main learning website ---------- */
  body:has(.main-wrapper) {
    width: 100%;
    max-width: 100%;
  }

  .sidebar,
  .main-wrapper,
  .navbar,
  .content-body,
  .center-column,
  .right-column,
  .tab-content,
  .accordion-container,
  .accordion-item,
  .accordion-content,
  .cms-generated-module,
  .cms-module-hero,
  .cms-topic-card,
  .cms-topic-body,
  .cms-content-item,
  .qa-topic-card,
  .qa-category,
  .qa-question-row {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .center-column {
    width: 100% !important;
  }

  .navbar,
  .nav-right,
  .profile-widget {
    min-width: 0;
  }

  .nav-right {
    width: 100%;
    flex-wrap: wrap;
    gap: 10px !important;
  }

  .profile-widget {
    margin-left: auto;
  }

  .search-container {
    max-width: 100%;
  }

  .search-container input {
    min-width: 0;
  }

  .header-banner,
  .cms-module-hero {
    width: 100% !important;
    min-width: 0 !important;
  }

  .header-banner > div:first-child,
  .cms-module-hero__content,
  .cms-topic-copy,
  .cms-topic-toggle__left,
  .qa-topic-title,
  .qa-question-title {
    min-width: 0 !important;
  }

  .header-banner h1,
  .header-banner p,
  .cms-module-hero h1,
  .cms-module-hero p,
  .cms-topic-copy strong,
  .cms-topic-copy small,
  .qa-topic-title,
  .qa-question-title,
  .cms-section-box,
  .gm-popup-section,
  .gm-category-intro__section {
    overflow-wrap: anywhere !important;
    word-break: normal;
  }

  .cms-section-box,
  .gm-popup-section,
  .gm-category-intro__section,
  .formula-box,
  .box-style,
  .question-item,
  .quote-box,
  .timeline-box,
  .chain-box {
    max-width: 100% !important;
  }

  .qa-modal-card,
  .gm-question-modal-box,
  .modal-content,
  .gm-details-card,
  .gm-details-modal > * {
    max-width: calc(100vw - 20px) !important;
  }

  .qa-modal-body,
  .gm-question-modal-body,
  .modal-body,
  .gm-details-content {
    overflow-wrap: anywhere;
  }

  .cms-section-box table,
  .gm-popup-section table,
  .accordion-content table,
  .qa-modal-body table,
  .gm-question-modal-body table {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 620px) {
  /* ---------- Landing page: phone-perfect ---------- */
  .container {
    width: calc(100% - 28px) !important;
    max-width: 100% !important;
  }

  .nav-wrap {
    min-height: 66px !important;
  }

  .brand {
    width: 132px !important;
  }

  .brand-word {
    font-size: 18px !important;
  }

  .brand small {
    font-size: 6.5px !important;
    letter-spacing: 1.3px !important;
  }

  .brand-leaf {
    left: 67px !important;
    top: -12px !important;
    font-size: 15px !important;
  }

  .hero {
    padding: 28px 0 30px !important;
  }

  .hero-grid {
    gap: 22px !important;
  }

  .hero h1 {
    font-size: clamp(31px, 9vw, 38px) !important;
    letter-spacing: -0.8px !important;
  }

  .hero-text {
    line-height: 1.7 !important;
  }

  .hero-points {
    gap: 9px 14px !important;
    margin-bottom: 22px !important;
  }

  .micro-trust {
    margin-top: 18px !important;
  }

  .hero-visual {
    min-height: 0 !important;
    padding: 6px 12px 28px !important;
  }

  .laptop {
    width: 100% !important;
  }

  .laptop-screen {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 650 / 385;
    min-height: 0 !important;
    border-width: 5px !important;
    border-bottom-width: 7px !important;
    border-radius: 12px 12px 6px 6px !important;
  }

  .laptop-base {
    height: 12px !important;
    border-radius: 2px 2px 10px 10px !important;
  }

  .dash-top {
    height: 28px !important;
    grid-template-columns: 56px minmax(0,1fr) 28px !important;
    gap: 5px !important;
    padding: 0 5px !important;
    font-size: 5px !important;
  }

  .search {
    min-width: 0;
    padding: 5px 6px !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .dash-body {
    grid-template-columns: 72px minmax(0,1fr) !important;
    height: calc(100% - 28px) !important;
  }

  .dash-side {
    gap: 5px !important;
    padding: 6px 4px !important;
    font-size: 4px !important;
    overflow: hidden;
  }

  .dash-side b {
    padding: 5px 3px !important;
  }

  .dash-content {
    padding: 6px !important;
    min-width: 0;
    overflow: hidden;
  }

  .welcome {
    padding: 6px !important;
    font-size: 4.5px !important;
    gap: 4px;
  }

  .welcome strong { font-size: 5.5px !important; }
  .welcome p { margin-top: 2px !important; }
  .plant { font-size: 16px !important; }

  .mini-cards {
    grid-template-columns: repeat(4, minmax(0,1fr)) !important;
    gap: 3px !important;
    margin: 4px 0 !important;
  }

  .mini-cards div {
    min-width: 0 !important;
    min-height: 30px !important;
    padding: 3px !important;
    font-size: 4px !important;
  }

  .mini-cards b { font-size: 4px !important; }
  .mini-cards small { font-size: 3.5px !important; }

  .popular {
    padding: 4px !important;
    font-size: 3.8px !important;
  }

  .popular p {
    padding: 2.5px 0 !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .phone {
    width: 70px !important;
    height: 148px !important;
    right: 0 !important;
    bottom: 10px !important;
    border-width: 4px !important;
    border-radius: 15px !important;
    padding: 10px 5px 6px !important;
  }

  .phone-notch {
    top: 4px !important;
    left: 20px !important;
    width: 22px !important;
    height: 3px !important;
  }

  .phone-brand { font-size: 3.8px !important; padding-bottom: 7px !important; }
  .phone-menu { gap: 4px !important; font-size: 3px !important; padding-top: 6px !important; }

  .section {
    padding: 24px 0 28px !important;
  }

  .section-title {
    font-size: 22px !important;
    line-height: 1.35 !important;
    margin-bottom: 20px !important;
  }

  .feature-grid.eight {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .feature-card,
  .feature-card.compact {
    min-height: 0 !important;
    padding: 17px 15px !important;
  }

  .feature-card h3 { font-size: 14px !important; margin: 10px 0 7px !important; }
  .feature-card p { font-size: 12px !important; }
  .icon { width: 46px !important; height: 46px !important; font-size: 21px !important; }

  .course-card,
  .preview-card {
    min-height: 0 !important;
    padding: 20px 14px !important;
  }

  .flow {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .flow > span { display: none !important; }
  .flow-icon { width: 52px !important; height: 52px !important; font-size: 24px !important; }
  .flow-trust { display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px !important; text-align: center; }

  .preview-inner { padding: 14px !important; }

  .journey {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 16px 10px !important;
  }

  .journey div { min-width: 0 !important; }
  .journey span { width: 52px !important; height: 52px !important; }
  .journey b { font-size: 10px !important; }

  .pricing-grid { gap: 18px !important; }
  .price-block strong { font-size: 36px !important; }
  .benefits { max-width: none !important; width: 100% !important; }
  .pricing-cta { max-width: none !important; }

  .trust-grid {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .modal { padding: 10px !important; }
  .modal-card { padding: 22px 16px !important; border-radius: 14px !important; }

  /* ---------- Main learning website: phone-perfect ---------- */
  body:has(.main-wrapper) {
    display: block !important;
    height: auto !important;
    min-height: 100vh;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  .sidebar {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    padding: 14px 12px !important;
    overflow: visible !important;
  }

  .logo-section {
    margin-bottom: 12px !important;
  }

  .focus-box {
    margin-bottom: 14px !important;
  }

  .menu-section {
    margin-bottom: 14px !important;
  }

  .menu-heading {
    margin-bottom: 7px !important;
  }

  .menu-section .menu-item {
    padding: 9px 10px !important;
    font-size: 13px !important;
    margin-bottom: 5px !important;
  }

  .sidebar-footer-card {
    margin-top: 8px !important;
  }

  .main-wrapper {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .navbar {
    width: 100% !important;
    padding: 12px !important;
  }

  .nav-right {
    justify-content: flex-start !important;
  }

  .btn-ask {
    flex: 1 1 auto;
    justify-content: center;
    min-height: 40px;
  }

  .profile-widget {
    margin-left: 0 !important;
  }

  .profile-info p,
  .profile-info span {
    white-space: normal;
  }

  .content-body {
    display: block !important;
    width: 100% !important;
    overflow: visible !important;
  }

  .center-column {
    padding: 12px !important;
    overflow: visible !important;
  }

  .right-column {
    display: none !important;
  }

  .header-banner,
  .cms-module-hero {
    padding: 16px 14px !important;
    gap: 10px !important;
    border-radius: 10px !important;
  }

  .header-banner h1,
  .cms-module-hero h1 {
    font-size: 20px !important;
    line-height: 1.35 !important;
  }

  .header-banner p,
  .cms-module-hero p {
    font-size: 13px !important;
    line-height: 1.55 !important;
  }

  .header-banner .target-icon-vector,
  .cms-module-hero__icon {
    flex: 0 0 44px !important;
    width: 44px !important;
    height: 44px !important;
  }

  .accordion-header,
  .cms-topic-toggle,
  .cms-premium-topic .cms-topic-toggle,
  .qa-topic-head,
  .qa-category-head {
    padding: 12px !important;
  }

  .accordion-title-block,
  .cms-topic-copy,
  .qa-topic-title {
    min-width: 0 !important;
  }

  .accordion-content,
  .cms-topic-body,
  .cms-content-item,
  .qa-topic-body,
  .qa-category-body {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .cms-section-box,
  .gm-popup-section,
  .gm-category-intro__section,
  .formula-box,
  .box-style,
  .question-item,
  .quote-box,
  .timeline-box,
  .chain-box {
    padding: 13px !important;
    border-radius: 10px !important;
  }

  .qa-question-row {
    grid-template-columns: auto minmax(0,1fr) auto !important;
    gap: 7px !important;
  }

  .qa-question-title {
    font-size: 12.5px !important;
    line-height: 1.5 !important;
  }

  .gm-question-preview-card {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .gm-view-details-btn,
  .gm-btn,
  .btn-details {
    max-width: 100%;
    white-space: normal;
  }

  .qa-modal,
  .gm-question-modal,
  .gm-details-modal {
    padding: 6px !important;
  }

  .qa-modal-card,
  .gm-question-modal-box,
  .gm-details-card,
  .modal-content {
    width: 100% !important;
    max-width: calc(100vw - 12px) !important;
    max-height: 96vh !important;
    border-radius: 12px !important;
  }

  .qa-modal-card > header,
  .gm-question-modal-header,
  .modal-header {
    padding: 14px 12px !important;
  }

  .qa-modal-body,
  .gm-question-modal-body,
  .gm-details-content,
  .modal-body {
    padding: 12px !important;
    max-width: 100% !important;
  }

  .gm-popup-grid,
  .gm-five-info-grid,
  .gm-popup-two-column,
  .gm-answer-followup-card,
  .gm-checklist-grid,
  .gm-actions {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 380px) {
  .container { width: calc(100% - 20px) !important; }
  .hero h1 { font-size: 29px !important; }
  .nav-wrap { width: calc(100% - 20px) !important; }
  .btn-login { padding-inline: 8px !important; }
  .menu-btn { font-size: 23px !important; }
  .center-column { padding: 9px !important; }
  .header-banner,
  .cms-module-hero { padding: 14px 11px !important; }
}

/* === Updated First Page V2 isolated additions === */
:root{--v2-primary:#09a63a;--v2-navy:#0b3558;--v2-page-bg:#fff;--v2-text:#334155;--v2-radius:12px;--v2-border:#e7ebef;--v2-body-size:16px}
body.v2-page{background:var(--v2-page-bg);color:var(--v2-text);font-size:var(--v2-body-size)}
.v2-section{background:var(--section-bg,#fff);color:var(--section-text,#334155);font-size:var(--section-font,16px)}
.v2-section .section-title{color:var(--section-heading,#0b3558)}
.v2-dynamic-card{background:var(--card-bg,#fff)!important;border-color:var(--card-border,#e7ebef)!important;font-size:var(--card-font,14px)}
.v2-dynamic-card h3{color:var(--card-title,#0f2f4f)!important}.v2-dynamic-card p{color:var(--card-text,#52606d)!important}.v2-dynamic-card .icon{color:var(--icon-color,#0b5ea8)!important;background:var(--icon-bg,#eef6ff)!important}
.v2-dynamic-card-link{display:block;color:inherit;text-decoration:none;height:100%}
.v2-footer{border-top:1px solid var(--v2-border);background:#fff;padding:14px 0 20px}.v2-footer-row{display:flex;gap:24px;justify-content:space-between;align-items:center;flex-wrap:wrap}.v2-footer-item{appearance:none;border:0;background:transparent;color:#667085;text-decoration:none;cursor:pointer;padding:7px 4px;font:inherit}.v2-footer-item:hover{text-decoration:underline}.v2-footer-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(3,18,31,.54);z-index:10000}.v2-footer-modal.open{display:flex}.v2-footer-modal-card{width:min(760px,96vw);max-height:82vh;overflow:auto;background:#fff;border-radius:16px;border:1px solid #e5e7eb;padding:22px;position:relative}.v2-footer-modal-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:28px;cursor:pointer}.v2-footer-modal-card h2{margin:0 36px 14px 0;color:var(--v2-navy)}.v2-footer-modal-content{white-space:pre-wrap;line-height:1.65;color:#344054}
.v2-journey-track{display:flex;transition:transform .45s ease;will-change:transform}.v2-journey-track.no-transition{transition:none}.v2-journey-item{display:flex;align-items:center;justify-content:center;min-width:0;box-sizing:border-box;position:relative}.v2-journey-step{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;min-width:0}.v2-journey-step b{font-size:12px;color:#18344f;line-height:1.25}.v2-journey-icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#f1f5fb;color:#0d5b8f;font-size:17px}.v2-journey-sep{margin:0 2px;color:#8695a4}.v2-journey-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;border:1px solid #d7dfe7;background:#fff;border-radius:50%;width:30px;height:30px;cursor:pointer;color:#667085}.v2-journey-prev{left:0}.v2-journey-next{right:0}.v2-journey-wrap{position:relative;padding:0 34px}.v2-journey-viewport{overflow:hidden}
@media(max-width:700px){.v2-footer-row{justify-content:center;gap:10px 18px}.v2-footer-modal-card{padding:18px}.v2-journey-wrap{padding:0 28px}.v2-journey-step b{font-size:10px}.v2-journey-icon{width:40px;height:40px}}

/* V2-002: stable first paint for Journey before JavaScript enhancement. */
.v2-journey-item{flex:0 0 12.5%;max-width:12.5%}
@media(max-width:1199px) and (min-width:900px){.v2-journey-item{flex-basis:20%;max-width:20%}}
@media(max-width:899px) and (min-width:600px){.v2-journey-item{flex-basis:33.333333%;max-width:33.333333%}}
@media(max-width:599px){.v2-journey-item{flex-basis:50%;max-width:50%}}

/* V2-004: wire existing card Font Size admin control to rendered title/body text. */
.v2-dynamic-card h3{
  font-size:var(--card-font,14px)!important;
}
.v2-dynamic-card p{
  font-size:calc(var(--card-font,14px) * 0.8571428571)!important;
}
