/* Jyoti Web access + gated membership pages */
:root{
  --web-sage:#728c69;
  --web-dark:#103c2f;
  --web-ink:#14181b;
  --web-muted:#57636c;
  --web-bg:#f0f1e8;
  --web-cream:#fffaf1;
  --web-yellow:#f4d96b;
  --web-soft:#e5eadf;
}

.web-access-banner{background:linear-gradient(110deg,#103c2f,#728c69);color:#fff;border-bottom:1px solid rgba(255,255,255,.16)}
.web-access-banner .container{display:flex;align-items:center;justify-content:space-between;gap:22px;padding-top:14px;padding-bottom:14px}
.web-access-copy{display:flex;align-items:center;gap:14px;min-width:0}
.web-access-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(255,255,255,.13);font-size:23px;flex:0 0 auto}
.web-access-copy strong{display:block;font-size:1.05rem;line-height:1.2}.web-access-copy span{display:block;color:rgba(255,255,255,.82);font-size:.92rem;margin-top:3px}
.web-access-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.web-access-actions a{white-space:nowrap}
.web-app-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--web-yellow);color:#172016!important;padding:11px 16px;border-radius:12px;font-weight:800;text-decoration:none;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.web-app-secondary{display:inline-flex;align-items:center;justify-content:center;color:#fff!important;border:1px solid rgba(255,255,255,.45);padding:10px 14px;border-radius:12px;font-weight:700;text-decoration:none}

.web-page-hero{padding:72px 0 54px;background:radial-gradient(circle at 85% 5%,rgba(114,140,105,.18),transparent 34%),linear-gradient(180deg,#fafbf5,#f0f1e8)}
.web-page-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(480px,.98fr);gap:52px;align-items:center}
.web-kicker{display:inline-flex;align-items:center;gap:8px;background:#e2e9dd;color:#103c2f;border-radius:999px;padding:8px 12px;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.web-page-hero h1{font-size:clamp(2.55rem,5.2vw,5.2rem);line-height:.98;letter-spacing:-.055em;margin:18px 0;color:#14181b}.web-page-hero h1 em{font-style:normal;color:#728c69}
.web-page-hero .lead{max-width:690px;font-size:1.16rem;line-height:1.65;color:#57636c}
.web-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.web-cta-main{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:#103c2f;color:#fff!important;text-decoration:none;padding:14px 20px;border-radius:14px;font-weight:800}.web-cta-alt{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:#fff;color:#103c2f!important;text-decoration:none;border:1px solid rgba(16,60,47,.15);padding:13px 19px;border-radius:14px;font-weight:800}
.web-note{margin-top:18px;font-size:.9rem;color:#6b756f;max-width:650px}.web-note strong{color:#103c2f}
.device-stage{position:relative;min-height:520px;display:grid;place-items:center}.desktop-shell{width:min(100%,620px);background:#1b211f;border-radius:24px;padding:12px;box-shadow:0 30px 70px rgba(16,60,47,.20);transform:rotate(-1deg)}.desktop-top{height:28px;display:flex;align-items:center;gap:7px;padding:0 8px}.desktop-top i{width:8px;height:8px;border-radius:50%;background:#809087}.desktop-screen{border-radius:16px;overflow:hidden;background:#f3f4eb;border:1px solid rgba(255,255,255,.1);min-height:345px;display:grid;grid-template-columns:180px 1fr;gap:0}.desktop-side{background:#103c2f;padding:22px 16px;color:#fff}.desktop-side img{width:96px;height:auto;margin-bottom:28px}.desktop-side span{display:block;padding:9px 10px;border-radius:10px;margin:6px 0;background:rgba(255,255,255,.07);font-size:.78rem}.desktop-side span.active{background:#728c69}.desktop-main{padding:24px;background:linear-gradient(135deg,#f7f8f1,#e8ecdf)}.desktop-welcome{font-size:1.05rem;font-weight:800;color:#103c2f;margin-bottom:14px}.desktop-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.desktop-card{background:#fff;border-radius:14px;padding:10px;box-shadow:0 8px 18px rgba(16,60,47,.06)}.desktop-card img{display:block;width:100%;height:155px;object-fit:cover;border-radius:10px}.desktop-card b{display:block;font-size:.72rem;color:#103c2f;margin-top:7px}.desktop-card small{display:block;font-size:.62rem;color:#6b756f;margin-top:2px}.floating-device{position:absolute;background:#fff;border:7px solid #fff;border-radius:22px;overflow:hidden;box-shadow:0 22px 45px rgba(16,60,47,.19)}.floating-device img{display:block;width:100%;height:100%;object-fit:cover}.floating-device.phone{width:128px;height:275px;right:-10px;bottom:5px;transform:rotate(5deg)}.floating-device.tablet{width:190px;height:255px;left:-18px;bottom:0;transform:rotate(-5deg)}.floating-device.badge{width:auto;height:auto;border:0;background:#f4d96b;color:#172016;border-radius:999px;padding:10px 14px;right:45px;top:16px;font-weight:900;font-size:.78rem}

.web-benefits{padding:72px 0}.web-section-title{text-align:center;max-width:820px;margin:0 auto 36px}.web-section-title h2{font-size:clamp(2rem,3.2vw,3.4rem);line-height:1.04;letter-spacing:-.035em;margin:10px 0;color:#14181b}.web-section-title p{color:#57636c;font-size:1.06rem;line-height:1.6}.web-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.web-benefit-card{background:#fff;border:1px solid rgba(16,60,47,.11);border-radius:20px;padding:24px;box-shadow:0 12px 28px rgba(16,60,47,.05)}.web-benefit-card .icon{width:46px;height:46px;border-radius:14px;background:#e5eadf;display:grid;place-items:center;color:#103c2f;font-size:22px;margin-bottom:17px}.web-benefit-card h3{font-size:1.08rem;color:#103c2f;margin:0 0 8px}.web-benefit-card p{margin:0;color:#57636c;line-height:1.55;font-size:.94rem}
.web-how{padding:72px 0;background:#103c2f;color:#fff}.web-how .web-section-title h2,.web-how .web-section-title p{color:#fff}.web-how .web-section-title p{opacity:.82}.web-step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.web-step{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:26px}.web-step-num{width:36px;height:36px;border-radius:50%;background:#f4d96b;color:#172016;display:grid;place-items:center;font-weight:900;margin-bottom:15px}.web-step h3{margin:0 0 8px;font-size:1.1rem}.web-step p{margin:0;color:rgba(255,255,255,.78);line-height:1.55}.web-store-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:30px}
.web-gallery{padding:72px 0;background:#f0f1e8}.web-gallery-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:22px}.web-gallery-main,.web-gallery-stack>div{background:#fff;border-radius:22px;padding:16px;box-shadow:0 16px 35px rgba(16,60,47,.07)}.web-gallery-main img{width:100%;height:440px;object-fit:cover;border-radius:16px}.web-gallery-stack{display:grid;gap:22px}.web-gallery-stack img{width:100%;height:205px;object-fit:cover;border-radius:15px}.web-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 2px 1px}.web-caption strong{color:#103c2f}.web-caption span{color:#6b756f;font-size:.86rem}
.web-final{padding:68px 0}.web-final-card{background:linear-gradient(125deg,#728c69,#103c2f);color:#fff;border-radius:28px;padding:38px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px}.web-final-card h2{font-size:clamp(2rem,3vw,3.1rem);margin:0 0 8px;letter-spacing:-.035em}.web-final-card p{margin:0;color:rgba(255,255,255,.85);max-width:690px;line-height:1.55}.web-final-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}

/* Embedded gate page: deliberately has no site navigation. */
.gate-body{margin:0;background:#f0f1e8;color:#14181b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.gate-shell{min-height:100vh;display:flex;flex-direction:column}.gate-top{padding:14px 24px;background:#fff;border-bottom:1px solid rgba(16,60,47,.09);display:flex;align-items:center;justify-content:space-between;gap:18px}.gate-top img{width:116px;height:auto}.gate-top-note{font-size:.86rem;color:#57636c;text-align:right}.gate-main{flex:1;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(430px,.97fr);gap:28px;align-items:stretch;padding:28px;max-width:1440px;width:100%;margin:0 auto;box-sizing:border-box}.gate-copy{background:linear-gradient(135deg,#728c69,#4f624a);color:#fff;border-radius:28px;padding:38px;display:flex;flex-direction:column;justify-content:center;min-height:560px}.gate-pill{align-self:flex-start;background:#f4d96b;color:#172016;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:900}.gate-copy h1{font-size:clamp(2.4rem,4.8vw,5rem);line-height:.96;letter-spacing:-.055em;margin:18px 0 16px}.gate-copy p{font-size:1.04rem;line-height:1.6;color:rgba(255,255,255,.9);max-width:680px}.gate-store-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.gate-store{display:flex;align-items:center;gap:10px;background:#151918;color:#fff!important;text-decoration:none;padding:10px 14px;border-radius:13px;min-width:188px}.gate-store svg{width:26px;height:26px;fill:#fff}.gate-store small{display:block;font-size:.64rem;color:#c8ceca}.gate-store strong{display:block;font-size:1rem}.gate-small{margin-top:15px;font-size:.78rem!important;color:rgba(255,255,255,.72)!important}.gate-visual{display:grid;grid-template-rows:auto auto;gap:18px}.gate-price-card{background:#fff;border-radius:24px;padding:24px;border:1px solid rgba(16,60,47,.1)}.gate-price-card h2{margin:0 0 5px;color:#103c2f}.gate-price-card>p{margin:0;color:#57636c}.gate-prices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.gate-price{border-radius:16px;padding:18px;background:#f7f8f3;border:1px solid rgba(16,60,47,.1);text-align:center}.gate-price.featured{background:#e5eadf;border-color:#728c69}.gate-price strong{display:block;font-size:.85rem;color:#103c2f}.gate-price b{display:block;font-size:1.5rem;margin:7px 0;color:#14181b}.gate-price small{color:#57636c}.gate-device-card{position:relative;background:#103c2f;border-radius:24px;padding:18px;min-height:345px;overflow:hidden}.gate-monitor{background:#edf0e8;border:7px solid #242a27;border-radius:15px;overflow:hidden;display:grid;grid-template-columns:120px 1fr;min-height:265px}.gate-monitor-side{background:#728c69;padding:16px 10px}.gate-monitor-side img{width:76px}.gate-monitor-main{padding:16px;display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.gate-monitor-main div{background:#fff;border-radius:10px;padding:7px}.gate-monitor-main img{width:100%;height:140px;object-fit:cover;border-radius:7px}.gate-phone{position:absolute;width:92px;height:198px;right:22px;bottom:8px;border:5px solid #fff;border-radius:18px;overflow:hidden;transform:rotate(5deg);box-shadow:0 18px 35px rgba(0,0,0,.25)}.gate-phone img{width:100%;height:100%;object-fit:cover}.gate-links{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 24px 20px;max-width:1440px;width:100%;margin:0 auto;box-sizing:border-box}.gate-links-left,.gate-socials{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.gate-links a{color:#103c2f;text-decoration:none;font-weight:750;font-size:.82rem;background:#fff;border:1px solid rgba(16,60,47,.10);padding:8px 11px;border-radius:999px}.gate-socials a{width:34px;height:34px;padding:0;display:grid;place-items:center}.gate-socials svg{width:17px;height:17px;fill:#103c2f;stroke:#103c2f}.gate-disclaimer{font-size:.75rem;color:#6a746e;max-width:650px}.gate-external-note{display:inline-flex;align-items:center;gap:7px;background:#e5eadf;color:#103c2f;padding:7px 10px;border-radius:999px;font-size:.73rem;font-weight:800;margin-top:16px}

@media (max-width:1050px){.web-page-grid{grid-template-columns:1fr}.device-stage{min-height:500px}.web-benefit-grid{grid-template-columns:repeat(2,1fr)}.gate-main{grid-template-columns:1fr}.gate-copy{min-height:auto}.gate-visual{grid-template-columns:1fr 1fr;grid-template-rows:auto}.gate-device-card{min-height:330px}}
@media (max-width:760px){.web-access-banner .container{align-items:flex-start;flex-direction:column}.web-page-hero{padding:52px 0 40px}.desktop-shell{width:100%}.desktop-screen{grid-template-columns:95px 1fr}.desktop-side{padding:16px 8px}.desktop-side img{width:70px}.desktop-card-grid{grid-template-columns:1fr 1fr}.desktop-card:nth-child(3){display:none}.floating-device.tablet{display:none}.floating-device.phone{width:100px;height:220px}.web-benefit-grid,.web-step-grid,.web-gallery-grid,.web-final-card{grid-template-columns:1fr}.web-final-actions{justify-content:flex-start}.gate-top{padding:12px 16px}.gate-main{padding:14px;gap:14px}.gate-copy{padding:24px;border-radius:22px}.gate-prices{grid-template-columns:1fr}.gate-visual{grid-template-columns:1fr}.gate-links{padding:12px 16px 18px}.gate-monitor{grid-template-columns:85px 1fr}.gate-monitor-main{grid-template-columns:1fr 1fr}.gate-monitor-main div:nth-child(3){display:none}}

/* =========================================================
   V20.1 embedded web membership gate refresh
   ========================================================= */
.gate2-body{margin:0;background:#f0f1e8;color:#172016;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.gate2-body *{box-sizing:border-box}.gate2-shell{min-height:100vh;background:linear-gradient(180deg,#fafbf6 0,#f0f1e8 42%,#f6f7f1 100%)}
.gate2-top{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:14px clamp(18px,4vw,56px);background:#fff;border-bottom:1px solid rgba(16,60,47,.1);position:relative}.gate2-brand img{display:block;width:136px;height:auto}.gate2-tagline{text-align:right}.gate2-tagline strong{display:block;color:#103c2f;font-size:clamp(1rem,1.5vw,1.35rem);letter-spacing:-.02em}.gate2-tagline span{display:block;margin-top:3px;color:#657168;font-size:.78rem}
.gate2-hero{max-width:1480px;margin:0 auto;padding:30px clamp(18px,4vw,56px) 24px;display:grid;grid-template-columns:minmax(0,1.16fr) minmax(360px,.84fr);gap:24px;align-items:stretch}.gate2-hero-copy{background:linear-gradient(135deg,#728c69 0%,#4f624a 100%);color:#fff;border-radius:30px;padding:clamp(28px,4.3vw,58px);display:flex;flex-direction:column;justify-content:center;box-shadow:0 20px 50px rgba(16,60,47,.12)}.gate2-pill,.gate2-eyebrow{display:inline-flex;align-self:flex-start;color:#103c2f;background:#f4d96b;border-radius:999px;padding:7px 11px;font-size:.73rem;font-weight:900;letter-spacing:.055em}.gate2-hero-copy h1{font-size:clamp(2.25rem,4.25vw,4.75rem);line-height:.98;letter-spacing:-.052em;margin:18px 0 14px}.gate2-lead{font-size:clamp(1rem,1.3vw,1.14rem);line-height:1.65;color:rgba(255,255,255,.94);max-width:850px}.gate2-device-pills{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.gate2-device-pills span{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:7px 10px;font-size:.76rem;font-weight:750}.gate2-subscription-note{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.17);border-radius:18px;padding:14px 16px;margin:4px 0 0}.gate2-subscription-note strong{display:block;font-size:.92rem}.gate2-subscription-note span{display:block;margin-top:5px;color:rgba(255,255,255,.84);font-size:.83rem;line-height:1.5}.gate2-store-row{display:flex;gap:11px;flex-wrap:wrap;margin-top:18px}.gate2-store{display:flex;align-items:center;gap:10px;background:#151918;color:#fff!important;text-decoration:none;padding:10px 14px;border-radius:13px;min-width:190px;box-shadow:0 8px 18px rgba(0,0,0,.12)}.gate2-store svg{width:26px;height:26px;fill:#fff}.gate2-store small{display:block;font-size:.63rem;color:#c8ceca}.gate2-store strong{display:block;font-size:1rem}.gate2-check-note{margin:14px 0 0;color:rgba(255,255,255,.84);font-size:.82rem;line-height:1.5}.gate2-external-note{align-self:flex-start;margin-top:10px;background:#e5eadf;color:#103c2f;border-radius:999px;padding:7px 10px;font-size:.71rem;font-weight:850}
.gate2-teacher{background:#fff;border:1px solid rgba(16,60,47,.1);border-radius:30px;overflow:hidden;display:grid;grid-template-rows:minmax(300px,1.18fr) auto;box-shadow:0 20px 50px rgba(16,60,47,.08)}.gate2-teacher-photo{position:relative;min-height:0;overflow:hidden;background:#dfe6da}.gate2-teacher-photo img{display:block;width:100%;height:100%;min-height:390px;object-fit:cover;object-position:center 18%;image-rendering:auto}.gate2-photo-badge{position:absolute;left:18px;bottom:18px;background:#f4d96b;color:#172016;border-radius:999px;padding:9px 13px;font-size:.82rem;font-weight:900;box-shadow:0 7px 18px rgba(0,0,0,.12)}.gate2-teacher-copy{padding:24px 26px 26px}.gate2-teacher-copy .gate2-eyebrow{background:#e5eadf}.gate2-teacher-copy h2{margin:12px 0 8px;font-size:2rem;color:#103c2f;letter-spacing:-.035em}.gate2-teacher-copy p{margin:8px 0;color:#59665e;line-height:1.58;font-size:.94rem}
.gate2-features{max-width:1480px;margin:0 auto;padding:42px clamp(18px,4vw,56px)}.gate2-section-heading{max-width:820px;margin:0 auto 24px;text-align:center}.gate2-section-heading>span{font-size:.74rem;color:#728c69;font-weight:900;letter-spacing:.08em}.gate2-section-heading h2{font-size:clamp(2rem,3.4vw,3.65rem);line-height:1.02;letter-spacing:-.045em;margin:8px 0 10px;color:#172016}.gate2-section-heading p{margin:0;color:#657168;line-height:1.55}.gate2-feature-grid{display:grid;grid-template-columns:1.15fr .925fr .925fr;gap:18px}.gate2-feature-card{background:#fff;border:1px solid rgba(16,60,47,.1);border-radius:24px;padding:20px;display:grid;grid-template-rows:auto 1fr;gap:16px;min-width:0;box-shadow:0 12px 28px rgba(16,60,47,.05)}.gate2-feature-wide{grid-template-columns:minmax(0,.88fr) minmax(220px,1.12fr);grid-template-rows:1fr;gap:18px}.gate2-feature-copy{min-width:0}.gate2-feature-number{display:inline-flex;width:34px;height:34px;border-radius:50%;align-items:center;justify-content:center;background:#e5eadf;color:#103c2f;font-size:.78rem;font-weight:900}.gate2-feature-copy h3{margin:10px 0 8px;color:#103c2f;font-size:1.35rem}.gate2-feature-copy p{margin:0;color:#5b675f;line-height:1.55;font-size:.92rem}.gate2-feature-copy ul{margin:12px 0 0;padding-left:18px;color:#435047;font-size:.86rem;line-height:1.55}.gate2-mini-copy{margin-top:9px!important;font-size:.82rem!important;color:#728078!important}.gate2-shot{align-self:end;background:#edf0e8;border-radius:18px;padding:10px;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:280px}.gate2-shot img{display:block;max-width:100%;width:auto;height:min(390px,40vw);object-fit:contain;border-radius:12px;image-rendering:auto}.gate2-shot-large{min-height:390px}.gate2-shot-large img{height:min(430px,34vw);max-height:430px}
.gate2-access{max-width:1480px;margin:0 auto 36px;padding:30px clamp(18px,4vw,56px);display:grid;grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr);gap:26px;align-items:center}.gate2-access-copy{padding:12px 4px}.gate2-access-copy .gate2-eyebrow{background:#e5eadf}.gate2-access-copy h2{font-size:clamp(2rem,3vw,3.4rem);line-height:1.02;letter-spacing:-.042em;margin:13px 0 10px}.gate2-access-copy>p{color:#5c6861;line-height:1.62;font-size:1rem}.gate2-access-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.gate2-access-cards div{background:#fff;border:1px solid rgba(16,60,47,.09);border-radius:16px;padding:14px}.gate2-access-cards strong{display:block;color:#103c2f;font-size:.9rem}.gate2-access-cards span{display:block;color:#667269;font-size:.77rem;line-height:1.45;margin-top:4px}
.gate2-device-showcase{position:relative;min-height:440px;background:linear-gradient(135deg,#103c2f,#728c69);border-radius:28px;padding:28px;overflow:hidden}.gate2-desktop{position:absolute;left:28px;right:88px;top:42px;background:#1f2523;border-radius:18px;padding:10px;box-shadow:0 24px 45px rgba(0,0,0,.25)}.gate2-browser-dots{height:20px;display:flex;align-items:center;gap:6px;padding:0 5px}.gate2-browser-dots i{width:7px;height:7px;border-radius:50%;background:#809087}.gate2-desktop-content{display:grid;grid-template-columns:92px 1fr 1fr;gap:9px;background:#eef1e9;border-radius:11px;padding:10px;min-height:275px}.gate2-desktop-side{background:#728c69;border-radius:9px;padding:12px 8px}.gate2-desktop-side img{display:block;width:68px;height:auto}.gate2-desktop-shot{background:#fff;border-radius:9px;padding:6px;display:flex;align-items:center;justify-content:center;overflow:hidden}.gate2-desktop-shot img{display:block;max-width:100%;height:250px;width:auto;object-fit:contain;image-rendering:auto}.gate2-tablet{position:absolute;width:155px;height:245px;left:18px;bottom:12px;background:#fff;border:6px solid #fff;border-radius:18px;overflow:hidden;transform:rotate(-5deg);box-shadow:0 18px 34px rgba(0,0,0,.25)}.gate2-phone{position:absolute;width:105px;height:225px;right:20px;bottom:10px;background:#fff;border:6px solid #fff;border-radius:20px;overflow:hidden;transform:rotate(5deg);box-shadow:0 18px 34px rgba(0,0,0,.25)}.gate2-tablet img,.gate2-phone img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;image-rendering:auto}
.gate2-pricing{max-width:1368px;margin:0 auto 30px;background:#fff;border:1px solid rgba(16,60,47,.1);border-radius:24px;padding:24px 28px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}.gate2-pricing .gate2-eyebrow{background:#e5eadf}.gate2-pricing h2{margin:9px 0 5px;color:#103c2f;font-size:1.7rem;letter-spacing:-.025em}.gate2-pricing p{margin:0;color:#667269;line-height:1.5}.gate2-prices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gate2-price{min-width:190px;text-align:center;background:#f7f8f3;border:1px solid rgba(16,60,47,.1);border-radius:16px;padding:14px}.gate2-price.featured{background:#e5eadf;border-color:#728c69}.gate2-price strong{display:block;color:#103c2f;font-size:.77rem}.gate2-price b{display:block;font-size:1.55rem;margin:5px 0}.gate2-price small{color:#68746c;font-size:.74rem}
.gate2-footer{max-width:1480px;margin:0 auto;padding:0 clamp(18px,4vw,56px) 28px;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}.gate2-footer-links,.gate2-socials{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.gate2-footer a{color:#103c2f;text-decoration:none;background:#fff;border:1px solid rgba(16,60,47,.1);border-radius:999px;padding:8px 11px;font-size:.8rem;font-weight:800}.gate2-socials a{width:34px;height:34px;padding:0;display:grid;place-items:center}.gate2-socials svg{width:17px;height:17px;fill:#103c2f;stroke:#103c2f}.gate2-footer p{grid-column:1/-1;margin:0;color:#6d776f;font-size:.72rem;line-height:1.45}
@media (max-width:1180px){.gate2-hero{grid-template-columns:1fr .72fr}.gate2-feature-grid{grid-template-columns:1fr 1fr}.gate2-feature-wide{grid-column:1/-1}.gate2-access{grid-template-columns:1fr}.gate2-device-showcase{min-height:470px}.gate2-pricing{margin-left:18px;margin-right:18px}}
@media (max-width:850px){.gate2-top{align-items:flex-start}.gate2-tagline span{display:none}.gate2-hero{grid-template-columns:1fr}.gate2-teacher{grid-template-columns:180px 1fr;grid-template-rows:1fr}.gate2-teacher-photo img{min-height:340px}.gate2-feature-grid{grid-template-columns:1fr}.gate2-feature-wide{grid-template-columns:1fr}.gate2-shot-large img{height:420px}.gate2-access-cards{grid-template-columns:1fr}.gate2-pricing{grid-template-columns:1fr}.gate2-prices{grid-template-columns:1fr 1fr}.gate2-footer{grid-template-columns:1fr}.gate2-device-showcase{min-height:420px}.gate2-desktop{right:60px}.gate2-desktop-content{grid-template-columns:78px 1fr 1fr}.gate2-desktop-shot img{height:220px}}
@media (max-width:580px){.gate2-top{padding:11px 14px;gap:12px}.gate2-brand img{width:104px}.gate2-tagline strong{font-size:.95rem}.gate2-hero{padding:14px}.gate2-hero-copy{padding:24px;border-radius:22px}.gate2-hero-copy h1{font-size:2.3rem}.gate2-store{width:100%;justify-content:center}.gate2-teacher{grid-template-columns:1fr}.gate2-teacher-photo img{min-height:420px}.gate2-features{padding:32px 14px}.gate2-shot img,.gate2-shot-large img{height:390px;max-height:390px}.gate2-access{padding:22px 14px}.gate2-device-showcase{min-height:360px;padding:12px}.gate2-desktop{left:12px;right:48px;top:26px}.gate2-desktop-content{grid-template-columns:58px 1fr;min-height:220px}.gate2-desktop-shot:nth-child(3){display:none}.gate2-desktop-side img{width:45px}.gate2-desktop-shot img{height:200px}.gate2-tablet{width:118px;height:190px}.gate2-phone{width:82px;height:175px;right:10px}.gate2-pricing{margin:0 14px 22px;padding:20px}.gate2-prices{grid-template-columns:1fr}.gate2-price{min-width:0}.gate2-footer{padding:0 14px 22px}.gate2-footer-links{align-items:stretch;flex-direction:column}.gate2-footer-links a{text-align:center}.gate2-socials{justify-content:center}}

/* V20.2 compact desktop web gate — designed to fit a 14-inch MacBook viewport */
.gate3-body{margin:0;background:#f0f1e8;color:#172016;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.gate3-body *{box-sizing:border-box}.gate3-shell{min-height:100vh;background:linear-gradient(180deg,#fbfcf7 0%,#f0f1e8 100%);display:grid;grid-template-rows:auto 1fr auto;overflow:auto}.gate3-top{height:68px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:9px clamp(18px,3vw,44px);background:#fff;border-bottom:1px solid rgba(16,60,47,.1)}.gate3-logo{width:132px;height:auto;display:block}.gate3-top-message{text-align:right;min-width:0}.gate3-top-message strong{display:block;color:#103c2f;font-size:clamp(1.05rem,1.5vw,1.4rem);letter-spacing:-.025em}.gate3-top-message span{display:block;margin-top:2px;color:#68746c;font-size:clamp(.66rem,.8vw,.78rem)}
.gate3-main{width:min(1320px,calc(100% - 34px));margin:0 auto;padding:14px 0 10px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);gap:14px;min-height:0}.gate3-message-card,.gate3-visual-card{min-width:0;border-radius:24px;overflow:hidden}.gate3-message-card{background:linear-gradient(135deg,#728c69 0%,#4f624a 100%);color:#fff;padding:clamp(22px,2.6vw,36px);display:flex;flex-direction:column;justify-content:center;box-shadow:0 14px 32px rgba(16,60,47,.13)}.gate3-kicker{display:inline-flex;align-self:flex-start;background:#f4d96b;color:#172016;border-radius:999px;padding:6px 10px;font-size:.68rem;font-weight:900;letter-spacing:.055em}.gate3-message-card h1{margin:12px 0 10px;font-size:clamp(1.85rem,3vw,3.15rem);line-height:1.01;letter-spacing:-.045em}.gate3-message-card h1 em{font-style:normal;color:#f4d96b}.gate3-lead{margin:0;color:rgba(255,255,255,.94);font-size:clamp(.85rem,1vw,1rem);line-height:1.46;max-width:760px}.gate3-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:13px 0}.gate3-steps>div{display:flex;gap:8px;align-items:flex-start;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:13px;padding:9px}.gate3-steps b{width:25px;height:25px;flex:0 0 25px;border-radius:50%;display:grid;place-items:center;background:#f4d96b;color:#172016;font-size:.75rem}.gate3-steps span{min-width:0}.gate3-steps strong{display:block;font-size:.78rem}.gate3-steps small{display:block;margin-top:2px;color:rgba(255,255,255,.74);font-size:.66rem;line-height:1.3}.gate3-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gate3-store{display:flex;align-items:center;gap:8px;min-width:154px;background:#151918;color:#fff!important;text-decoration:none;border-radius:11px;padding:7px 10px}.gate3-store svg{width:22px;height:22px;fill:#fff;flex:0 0 auto}.gate3-store small{display:block;color:#c7ceca;font-size:.55rem;line-height:1}.gate3-store strong{display:block;margin-top:2px;font-size:.86rem;line-height:1}.gate3-help{color:#103c2f!important;background:#f4d96b;text-decoration:none;border-radius:11px;padding:10px 12px;font-size:.72rem;font-weight:900}.gate3-universal{margin-top:12px;background:#fff;color:#172016;border-radius:13px;padding:10px 12px}.gate3-universal strong{display:block;color:#103c2f;font-size:.83rem}.gate3-universal span{display:block;margin-top:2px;color:#59665e;font-size:.72rem;line-height:1.38}.gate3-check{margin:10px 0 0;color:rgba(255,255,255,.84);font-size:.72rem;line-height:1.4}
.gate3-visual-card{background:#fff;border:1px solid rgba(16,60,47,.1);padding:14px;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:10px;box-shadow:0 12px 28px rgba(16,60,47,.06)}.gate3-screen-heading span{display:block;color:#728c69;font-size:.63rem;font-weight:900;letter-spacing:.07em}.gate3-screen-heading strong{display:block;margin-top:2px;color:#103c2f;font-size:clamp(.9rem,1.2vw,1.08rem)}.gate3-screens{min-height:0;display:grid;grid-template-columns:repeat(3,1fr);gap:9px;align-items:center;justify-items:center}.gate3-screens figure{margin:0;text-align:center;min-width:0}.gate3-phone{width:min(100%,128px);aspect-ratio:820/1779;background:#111;border:5px solid #161a18;border-radius:18px;overflow:hidden;box-shadow:0 7px 16px rgba(0,0,0,.14)}.gate3-phone img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;image-rendering:auto}.gate3-screens figcaption{margin-top:4px;color:#4f624a;font-size:.65rem;font-weight:800}.gate3-teacher{display:grid;grid-template-columns:92px 1fr;gap:11px;align-items:center;background:#e5eadf;border-radius:15px;padding:9px}.gate3-teacher img{display:block;width:92px;height:90px;object-fit:cover;object-position:center 18%;border-radius:11px}.gate3-teacher span{display:block;color:#728c69;font-size:.58rem;font-weight:900;letter-spacing:.07em}.gate3-teacher h2{margin:2px 0 2px;color:#103c2f;font-size:1rem}.gate3-teacher p{margin:0;color:#59665e;font-size:.69rem;line-height:1.35}.gate3-feature-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.gate3-feature-strip span{background:#f5f7f1;border:1px solid rgba(16,60,47,.08);border-radius:10px;padding:7px;color:#657168;font-size:.61rem;line-height:1.28}.gate3-feature-strip b{display:block;color:#103c2f;font-size:.68rem;margin-bottom:1px}
.gate3-footer{width:min(1320px,calc(100% - 34px));margin:0 auto;padding:4px 0 10px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:#6b766e;font-size:.67rem}.gate3-footer>div{display:flex;gap:7px;flex-wrap:wrap}.gate3-footer a{color:#103c2f;text-decoration:none;background:#fff;border:1px solid rgba(16,60,47,.1);border-radius:999px;padding:6px 9px;font-weight:800}.gate3-footer p{margin:0;text-align:right}
@media (min-width:900px) and (min-height:660px){.gate3-shell{height:100vh;min-height:100vh;overflow:hidden}}
@media (min-width:1500px) and (min-height:900px){.gate3-main{width:min(1480px,calc(100% - 60px));gap:22px;padding:22px 0 16px}.gate3-message-card{padding:44px}.gate3-phone{width:150px}.gate3-teacher{grid-template-columns:112px 1fr;padding:12px}.gate3-teacher img{width:112px;height:108px}.gate3-feature-strip span{font-size:.7rem}.gate3-footer{width:min(1480px,calc(100% - 60px));font-size:.73rem}}
@media (min-width:900px) and (max-height:760px){.gate3-top{height:58px;padding-top:6px;padding-bottom:6px}.gate3-logo{width:116px}.gate3-main{padding:9px 0 6px;gap:10px}.gate3-message-card{padding:18px 22px}.gate3-message-card h1{font-size:clamp(1.7rem,2.6vw,2.55rem);margin:9px 0 7px}.gate3-lead{font-size:.78rem}.gate3-steps{margin:9px 0;gap:6px}.gate3-steps>div{padding:7px}.gate3-universal{margin-top:8px;padding:8px 10px}.gate3-check{margin-top:7px}.gate3-visual-card{padding:10px;gap:7px}.gate3-phone{width:106px}.gate3-teacher{grid-template-columns:78px 1fr;padding:7px}.gate3-teacher img{width:78px;height:75px}.gate3-feature-strip span{padding:5px;font-size:.55rem}.gate3-footer{padding-bottom:6px;font-size:.61rem}.gate3-footer a{padding:4px 7px}}
@media (max-width:899px){.gate3-shell{display:block;overflow:auto}.gate3-top{height:auto;min-height:64px}.gate3-main{grid-template-columns:1fr;width:min(760px,calc(100% - 28px));padding:14px 0}.gate3-message-card{padding:24px}.gate3-visual-card{padding:14px}.gate3-phone{width:135px}.gate3-footer{width:min(760px,calc(100% - 28px));padding-bottom:18px;align-items:flex-start;flex-direction:column}.gate3-footer p{text-align:left}}
@media (max-width:560px){.gate3-top{padding:9px 14px}.gate3-logo{width:105px}.gate3-top-message span{display:none}.gate3-top-message strong{font-size:.95rem}.gate3-main{width:calc(100% - 20px);padding:10px 0}.gate3-message-card{padding:20px;border-radius:20px}.gate3-message-card h1{font-size:2rem}.gate3-steps{grid-template-columns:1fr}.gate3-actions{align-items:stretch}.gate3-store,.gate3-help{width:100%;justify-content:center;text-align:center}.gate3-screens{gap:5px}.gate3-phone{width:100%;border-width:3px;border-radius:12px}.gate3-screens figcaption{font-size:.58rem}.gate3-teacher{grid-template-columns:76px 1fr}.gate3-teacher img{width:76px;height:78px}.gate3-feature-strip{grid-template-columns:1fr}.gate3-footer{width:calc(100% - 20px)}}

/* Public desktop-access help page */
.web-help-hero{padding:70px 0 48px;background:linear-gradient(180deg,#f7f8f2,#eef1e9)}.web-help-hero .container{max-width:1120px}.web-help-hero .web-kicker{display:inline-block}.web-help-hero h1{max-width:850px;margin:10px 0 14px;font-size:clamp(2.6rem,5vw,5rem);line-height:.98;letter-spacing:-.055em;color:#103c2f}.web-help-hero p{max-width:850px;font-size:1.12rem;line-height:1.65;color:#5b675f}.web-help-alert{margin-top:22px;background:#fff6c7;border:1px solid rgba(176,139,0,.18);border-radius:18px;padding:16px 18px;color:#4b4020}.web-help-alert strong{color:#103c2f}.web-help-steps{padding:54px 0}.web-help-step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.web-help-step{background:#fff;border:1px solid rgba(16,60,47,.1);border-radius:20px;padding:22px}.web-help-step b{display:grid;width:40px;height:40px;place-items:center;border-radius:50%;background:#728c69;color:#fff}.web-help-step h2{font-size:1.08rem;margin:14px 0 8px;color:#103c2f}.web-help-step p{margin:0;color:#637067;line-height:1.55;font-size:.92rem}.web-help-note{padding:0 0 54px}.web-help-note-card{background:#e5eadf;border-radius:24px;padding:28px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.web-help-note-card h2{margin:0 0 8px;color:#103c2f;font-size:1.6rem}.web-help-note-card p{margin:0;color:#59665e;line-height:1.55}.web-help-troubleshoot{padding:52px 0;background:#f7f8f3}.web-help-troubleshoot .container{max-width:1050px}.web-help-troubleshoot h2{color:#103c2f;font-size:2rem;margin:0 0 18px}.web-help-troubleshoot details{background:#fff;border:1px solid rgba(16,60,47,.1);border-radius:14px;padding:14px 16px;margin:9px 0}.web-help-troubleshoot summary{cursor:pointer;font-weight:800;color:#103c2f}.web-help-troubleshoot details p{color:#5f6c63;line-height:1.55;margin:10px 0 0}.web-help-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
@media (max-width:900px){.web-help-step-grid{grid-template-columns:1fr 1fr}.web-help-note-card{grid-template-columns:1fr}}
@media (max-width:560px){.web-help-hero{padding:44px 0 34px}.web-help-step-grid{grid-template-columns:1fr}.web-help-steps,.web-help-troubleshoot{padding:38px 0}.web-help-note{padding-bottom:38px}}


/* =========================================================
   V20.3 BETA positioning + embedded WebView fixes
   ========================================================= */
.web-access-icon{background:#fff;border:1px solid rgba(16,60,47,.09);padding:4px;overflow:hidden}
.web-access-icon img{display:block;width:100%;height:100%;object-fit:contain}
.mobile-web-beta,.web-mobile-beta-entry{display:none}
.gate3-desktop-promise{margin:0 0 9px;color:#fff;font-size:clamp(.76rem,.95vw,.92rem);line-height:1.38;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:8px 10px}
.gate3-desktop-promise strong{color:#fff}
.gate3-teacher{grid-template-columns:108px 1fr}
.gate3-teacher img{width:108px;height:100px;object-fit:cover;object-position:center center;border-radius:11px}

@media (max-width:760px){
  /* Mobile/iOS/Android visitors should see the store-first journey, not a web-BETA promo at the top. */
  .web-access-banner{display:none}
  .web-beta-hero-open{display:none!important}
  .mobile-web-beta{display:block;padding:34px 0;background:#f7f8f3}
  .mobile-web-beta-card{background:#fff;border:1px solid rgba(16,60,47,.1);border-radius:22px;padding:20px;display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:start}
  .mobile-web-beta-card>img{width:72px;height:auto;background:#fff;border-radius:12px}
  .mobile-web-beta-label{font-size:.7rem;letter-spacing:.07em;font-weight:900;color:#728c69}
  .mobile-web-beta-card h2{margin:5px 0 7px;color:#103c2f;font-size:1.3rem;line-height:1.12}
  .mobile-web-beta-card p{margin:0;color:#5f6b63;line-height:1.5;font-size:.9rem}
  .mobile-web-beta-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.mobile-web-beta-actions a{font-size:.84rem}
  .web-mobile-beta-entry{display:block;padding:36px 0;background:#f0f1e8}
  .web-mobile-beta-entry-card{background:#fff;border:1px solid rgba(16,60,47,.1);border-radius:22px;padding:22px}
  .web-mobile-beta-entry-card h2{color:#103c2f;margin:10px 0 8px;font-size:1.6rem}.web-mobile-beta-entry-card p{color:#5f6b63;line-height:1.55;margin:0 0 16px}
  .mobile-panel a[href="/web-app.html"]{order:80;background:#f0f1e8;color:#103c2f}
  .mobile-panel .nav-cta{order:-10}
}
@media (max-width:520px){
  .mobile-web-beta-card{grid-template-columns:1fr}.mobile-web-beta-card>img{width:84px}
}
@media (min-width:900px) and (max-height:760px){
  .gate3-desktop-promise{font-size:.7rem;padding:6px 8px;margin-bottom:6px}
  .gate3-teacher{grid-template-columns:88px 1fr}.gate3-teacher img{width:88px;height:82px}
}

/* V20.4: account navigation inside embedded Desktop BETA membership gate. */
.gate3-account{margin-top:12px;padding:13px 14px;border:1px solid rgba(255,255,255,.26);background:rgba(12,45,29,.15);border-radius:14px}
.gate3-account h2{margin:0 0 5px;color:#fff;font-size:clamp(.94rem,1.2vw,1.14rem);line-height:1.2}
.gate3-account p{margin:0 0 10px;font-size:.75rem;line-height:1.4;color:rgba(255,255,255,.9)}
.gate3-account-links{display:flex;flex-wrap:wrap;gap:8px}
.gate3-account-links a{display:inline-flex;justify-content:center;align-items:center;text-align:center;min-height:39px;border-radius:10px;text-decoration:none;font-size:.75rem;font-weight:850;padding:10px 13px;transition:filter .15s ease}
.gate3-account-links a:hover,.gate3-account-links a:focus-visible{filter:brightness(1.08)}
.gate3-account-login{background:#f4d96b;color:#103c2f!important}
.gate3-account-secondary{background:rgba(255,255,255,.95);color:#103c2f!important}
/* Allow extra account controls to scroll rather than being clipped on shorter desktop displays. */
@media (min-width:900px) and (min-height:660px){.gate3-shell{height:auto;overflow:auto}.gate3-main{min-height:0}}
@media (max-width:560px){.gate3-account-links{flex-direction:column}.gate3-account-links a{width:100%}}
