:root {
  --rs-rose:#D4849A;--rs-rose-l:#FAE8EC;--rs-rose-d:#B86A7E;
  --rs-lav:#D9C6E8;--rs-lav-l:#F0EAFC;--rs-lav-d:#9B7EC8;
  --rs-cream:#FDF8F4;--rs-cream-dk:#F7EEE8;
  --rs-deep:#3D2535;--rs-deep2:#5C3A4A;--rs-deep3:#2A1525;
  --rs-muted:#7A5568;--rs-light:#A8849A;
  --rs-fh:'Megiddo',serif;--rs-fb:inherit;
}

/* ─ COURSES WIDGET shared UI ─ */
.rc-wrap { direction:rtl; font-family:var(--rs-fb); color:var(--rs-deep); overflow-x:hidden; }
.rc-wrap * { box-sizing:border-box; margin:0; padding:0; }
.rc-wrap svg { display:block; flex-shrink:0; }
.rc-wrap a { text-decoration:none; }

.rc-btn-primary { background:linear-gradient(135deg,var(--rs-rose),var(--rs-rose-d)); color:white; padding:14px 32px; border-radius:50px; font-size:15px; font-weight:700; display:inline-flex; align-items:center; gap:8px; transition:all .25s; box-shadow:0 6px 24px rgba(180,100,126,.35); border:none; cursor:pointer; font-family:var(--rs-fb); text-decoration:none; }
.rc-btn-primary:hover { transform:translateY(-2px); box-shadow:0 10px 32px rgba(180,100,126,.5); color:white; }
.rc-btn-lg { padding:16px 38px; font-size:16px; }
.rc-btn-full { width:100%; justify-content:center; }
.rc-btn-wa { background:rgba(37,211,102,.12); color:#2E9E5A; padding:13px 22px; border-radius:50px; font-size:14px; font-weight:600; text-decoration:none; display:inline-flex; align-items:center; gap:7px; border:1.5px solid rgba(37,211,102,.35); transition:all .25s; }
.rc-btn-wa:hover { background:rgba(37,211,102,.2); color:#2E9E5A; }

.rc-stag { display:inline-block; font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--rs-rose); margin-bottom:12px; }
.rc-section-title { font-family:var(--rs-fh); font-weight:700; font-size:clamp(26px,3.2vw,42px); color:var(--rs-deep); line-height:1.2; letter-spacing:-.3px; }
.rc-section-title span { color:var(--rs-rose); }
.rc-pinkline { width:52px; height:3px; background:linear-gradient(90deg,var(--rs-rose),var(--rs-lav)); border-radius:3px; margin:14px 0; }
.rc-pinkline.rc-center { margin:14px auto; }

/* Hero */
.rc-hero { background:linear-gradient(145deg,#FAE8EC,#FDF8F4,#F0EAFC); padding:80px 48px; }
.rc-hero-inner { max-width:1350px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.rc-hero-tag { display:inline-block; font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--rs-rose); background:rgba(212,132,154,.1); border:1px solid rgba(212,132,154,.25); padding:6px 16px; border-radius:30px; margin-bottom:18px; }
.rc-hero-h1 { font-family:var(--rs-fh); font-weight:700; font-size:clamp(32px,4.5vw,54px); line-height:1.18; color:var(--rs-deep); margin-bottom:12px; letter-spacing:-.5px; }
.rc-hero-h1 span { color:var(--rs-rose); display:block; }
.rc-hero-lead { font-size:16px; line-height:1.82; color:var(--rs-muted); margin-bottom:28px; font-weight:300; }
.rc-hero-btns { display:flex; gap:12px; flex-wrap:wrap; margin-bottom:24px; }
.rc-trust-row { display:flex; gap:20px; flex-wrap:wrap; }
.rc-trust-item { font-size:13px; color:var(--rs-muted); display:flex; align-items:center; gap:5px; }
.rc-trust-item span { color:var(--rs-rose); font-weight:700; }
.rc-hero-cards { display:flex; flex-direction:column; gap:12px; }
.rc-hero-card { background:white; border-radius:18px; padding:22px; border:1px solid rgba(212,132,154,.2); box-shadow:0 6px 24px rgba(196,122,138,.08); }
.rc-hero-card-dark { background:linear-gradient(135deg,var(--rs-deep),var(--rs-deep2)); border-color:rgba(212,132,154,.2); }
.rc-hc-badge { font-size:10px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:var(--rs-rose); margin-bottom:8px; }
.rc-hero-card-dark .rc-hc-badge { color:rgba(212,132,154,.8); }
.rc-hc-title { font-family:var(--rs-fh); font-weight:700; font-size:16px; color:var(--rs-deep); margin-bottom:8px; }
.rc-hero-card-dark .rc-hc-title { color:white; }
.rc-hc-price { font-family:var(--rs-fh); font-weight:700; font-size:22px; color:var(--rs-rose); }
.rc-hero-card-dark .rc-hc-price { color:rgba(212,132,154,.9); }

/* Courses section */
.rc-courses-section { background:white; padding:84px 48px; }
.rc-courses-inner { max-width:1350px; margin:0 auto; }
.rc-courses-hd { text-align:center; margin-bottom:44px; }
.rc-tab-switcher { display:flex; gap:10px; justify-content:center; margin-bottom:48px; flex-wrap:wrap; }
.rc-tab-btn { padding:12px 26px; border-radius:50px; font-size:15px; font-weight:700; cursor:pointer; border:2px solid rgba(212,148,162,.3); background:transparent; color:var(--rs-muted); transition:all .25s; font-family:var(--rs-fb); }
.rc-tab-btn.active { background:var(--rs-rose); color:white; border-color:var(--rs-rose); box-shadow:0 4px 20px rgba(212,132,154,.3); }
.rc-course-panel { display:none; }
.rc-course-panel.active { display:block; }
.rc-course-grid { display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start; }
.rc-course-img { border-radius:20px; overflow:hidden; aspect-ratio:4/5; max-height:520px; box-shadow:0 16px 48px rgba(196,122,138,.14); }
.rc-course-img img { width:100%; height:100%; object-fit:cover; object-position:center top; }
.rc-img-ph { width:100%; height:100%; min-height:400px; background:linear-gradient(160deg,var(--rs-rose-l),var(--rs-lav-l)); display:flex; align-items:center; justify-content:center; }
.rc-course-title { font-family:var(--rs-fh); font-weight:700; font-size:clamp(22px,2.8vw,36px); color:var(--rs-deep); line-height:1.25; margin-bottom:8px; }
.rc-course-title span { color:var(--rs-rose); }
.rc-course-sub { font-size:15px; color:var(--rs-rose); font-weight:600; margin-bottom:18px; }
.rc-course-desc { font-size:15.5px; line-height:1.85; color:var(--rs-muted); margin-bottom:24px; font-weight:300; }
.rc-course-desc strong { color:var(--rs-deep); font-weight:700; }
/* Modules */
.rc-modules { margin-bottom:22px; }
.rc-mod-item { border:1px solid rgba(212,148,162,.2); border-radius:12px; margin-bottom:8px; overflow:hidden; cursor:pointer; transition:border-color .2s; }
.rc-mod-item:hover { border-color:rgba(212,148,162,.4); }
.rc-mod-header { padding:13px 18px; display:flex; justify-content:space-between; align-items:center; font-size:14px; font-weight:600; color:var(--rs-deep); background:white; user-select:none; gap:8px; }
.rc-mod-num { width:24px; height:24px; border-radius:50%; background:rgba(212,132,154,.15); display:inline-flex; align-items:center; justify-content:center; font-size:11px; font-weight:700; color:var(--rs-rose); flex-shrink:0; margin-left:8px; }
.rc-mod-arrow { font-size:11px; color:var(--rs-rose); transition:transform .25s; flex-shrink:0; }
.rc-mod-item.open .rc-mod-arrow { transform:rotate(180deg); }
.rc-mod-body { max-height:0; overflow:hidden; transition:max-height .3s ease; background:var(--rs-cream); border-top:1px solid rgba(212,148,162,.15); }
.rc-mod-body p { padding:13px 18px; font-size:13.5px; line-height:1.7; color:var(--rs-muted); font-weight:300; }
.rc-mod-item.open .rc-mod-body { max-height:180px; }
/* Feats */
.rc-feats { list-style:none; display:flex; flex-direction:column; gap:8px; margin-bottom:24px; }
.rc-feats li { font-size:13.5px; color:var(--rs-muted); display:flex; align-items:center; gap:8px; font-weight:300; }
.rc-feats li::before { content:''; width:15px; height:15px; border-radius:50%; flex-shrink:0; background:rgba(212,132,154,.15); background-image:url("data:image/svg+xml,%3Csvg width='9' height='7' viewBox='0 0 9 7' fill='none'%3E%3Cpath d='M1 3.5L3 5.5L8 1' stroke='%23D4849A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:center; }
/* Price box */
.rc-price-box { background:linear-gradient(145deg,var(--rs-deep),var(--rs-deep2)); border-radius:18px; padding:24px; border:1px solid rgba(212,132,154,.2); }
.rc-price-label { font-size:12px; color:rgba(255,255,255,.5); text-transform:uppercase; letter-spacing:1.5px; margin-bottom:6px; }
.rc-price-main { font-family:var(--rs-fh); font-weight:700; font-size:36px; color:rgba(212,132,154,.9); line-height:1; margin-bottom:4px; }
.rc-price-main sub { font-size:12px; font-weight:300; color:rgba(255,255,255,.4); font-family:var(--rs-fb); }
.rc-guarantee { display:flex; align-items:center; gap:8px; font-size:12px; color:rgba(255,255,255,.45); margin-top:14px; }

/* Testimonials */
.rc-testi-section { background:var(--rs-cream); padding:84px 48px; }
.rc-testi-inner { max-width:1350px; margin:0 auto; }
.rc-testi-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:48px; }
.rc-t-card { background:white; border-radius:18px; padding:24px; border:1px solid rgba(212,132,154,.15); transition:transform .22s; }
.rc-t-card:hover { transform:translateY(-3px); }
.rc-t-qm { font-family:var(--rs-fh); font-weight:700; font-size:44px; color:rgba(212,132,154,.2); line-height:1; margin-bottom:-2px; }
.rc-t-stars { display:flex; gap:3px; margin-bottom:10px; }
.rc-t-star { width:12px; height:12px; background:var(--rs-rose); clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%); }
.rc-t-text { font-size:14px; line-height:1.75; color:var(--rs-muted); font-style:italic; font-weight:300; margin-bottom:16px; }
.rc-t-author { display:flex; align-items:center; gap:10px; }
.rc-t-av { width:36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:var(--rs-fh); font-weight:700; font-size:12px; color:white; flex-shrink:0; }
.rc-av1{background:linear-gradient(135deg,var(--rs-rose),var(--rs-rose-d));}
.rc-av2{background:linear-gradient(135deg,var(--rs-lav),#A890CC);}
.rc-av3{background:linear-gradient(135deg,#BDD8C8,#7FAE94);}
.rc-t-info strong { font-size:13px; font-weight:700; color:var(--rs-deep); display:block; font-family:var(--rs-fh); }
.rc-t-info span { font-size:11.5px; color:var(--rs-light); }

/* FAQ */
.rc-faq-section { background:white; padding:84px 48px; }
.rc-faq-inner { max-width:760px; margin:0 auto; }
.rc-faq-item { background:var(--rs-cream); border:1px solid rgba(212,132,154,.2); border-radius:13px; margin-bottom:10px; overflow:hidden; cursor:pointer; transition:border-color .2s; }
.rc-faq-item:hover { border-color:rgba(212,132,154,.4); }
.rc-faq-header { padding:17px 20px; display:flex; justify-content:space-between; align-items:center; font-family:var(--rs-fh); font-weight:700; font-size:15px; color:var(--rs-deep); user-select:none; gap:10px; }
.rc-faq-arrow { font-size:11px; color:var(--rs-rose); transition:transform .25s; flex-shrink:0; }
.rc-faq-item.open .rc-faq-arrow { transform:rotate(180deg); }
.rc-faq-body { max-height:0; overflow:hidden; transition:max-height .35s ease; background:white; }
.rc-faq-body p { padding:0 20px 16px; font-size:14.5px; line-height:1.8; color:var(--rs-muted); font-weight:300; border-top:1px solid rgba(212,132,154,.1); padding-top:14px; }
.rc-faq-item.open .rc-faq-body { max-height:300px; }

/* CTA */
.rc-cta-section { background:linear-gradient(145deg,var(--rs-deep3,#2A1525),var(--rs-deep)); padding:80px 48px; text-align:center; }
.rc-cta-inner { max-width:660px; margin:0 auto; }
.rc-cta-inner h2 { font-family:var(--rs-fh); font-weight:700; font-size:clamp(26px,4vw,40px); color:white; line-height:1.25; margin-bottom:16px; }
.rc-cta-inner h2 span { color:var(--rs-rose); }
.rc-cta-inner p { font-size:16px; line-height:1.88; color:rgba(255,255,255,.62); margin-bottom:28px; font-weight:300; }

/* ─ SEXUALITY WIDGET shared UI ─ */
.rs-wrap { direction:rtl; font-family:var(--rs-fb); color:var(--rs-deep); overflow-x:hidden; }
.rs-wrap * { box-sizing:border-box; margin:0; padding:0; }
.rs-wrap svg { display:block; flex-shrink:0; }
.rs-wrap a { text-decoration:none; }

.rs-btn-primary { background:linear-gradient(135deg,var(--rs-rose),var(--rs-rose-d)); color:white; padding:14px 32px; border-radius:50px; font-size:15px; font-weight:700; display:inline-flex; align-items:center; gap:8px; transition:all .25s; box-shadow:0 6px 24px rgba(180,100,126,.35); border:none; cursor:pointer; font-family:var(--rs-fb); text-decoration:none; }
.rs-btn-primary:hover { transform:translateY(-2px); box-shadow:0 10px 32px rgba(180,100,126,.5); color:white; }
.rs-btn-lg { padding:16px 38px; font-size:16px; }
.rs-btn-wa { background:rgba(37,211,102,.12); color:#2E9E5A; padding:13px 22px; border-radius:50px; font-size:14px; font-weight:600; text-decoration:none; display:inline-flex; align-items:center; gap:7px; border:1.5px solid rgba(37,211,102,.35); transition:all .25s; }
.rs-btn-wa:hover { background:rgba(37,211,102,.2); color:#2E9E5A; }
.rs-stag { display:inline-block; font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--rs-rose); margin-bottom:12px; }
.rs-stag-light { color:rgba(212,132,154,.8) !important; }
.rs-section-title { font-family:var(--rs-fh); font-weight:700; font-size:clamp(24px,3vw,38px); color:var(--rs-deep); line-height:1.2; letter-spacing:-.3px; }
.rs-section-title span { color:var(--rs-rose); }
.rs-title-white { color:white !important; }
.rs-title-white span { color:var(--rs-rose) !important; }
.rs-pinkline { width:52px; height:3px; background:linear-gradient(90deg,var(--rs-rose),var(--rs-lav)); border-radius:3px; margin:14px 0; }
.rs-pinkline.rs-center { margin:14px auto; }

/* Hero */
.rs-hero { min-height:90vh; background:linear-gradient(145deg,#2A1525,var(--rs-deep),#4A2A3A); display:flex; align-items:center; overflow:hidden; position:relative; }
.rs-petal { position:absolute; border-radius:50% 0 50% 0; opacity:.08; animation:rsPetal 12s ease-in-out infinite; }
.rs-p1 { width:180px; height:180px; top:8%; right:5%; background:var(--rs-rose); }
.rs-p2 { width:120px; height:120px; top:60%; left:3%; background:var(--rs-lav); animation-delay:-5s; transform:rotate(45deg); }
@keyframes rsPetal { 0%,100%{transform:translateY(0)}50%{transform:translateY(-18px)} }
.rs-hero-inner { position:relative; z-index:2; max-width:1350px; margin:0 auto; padding:90px 48px 70px; display:grid; grid-template-columns:1fr 380px; gap:60px; align-items:center; width:100%; }
.rs-hero-super { display:inline-flex; align-items:center; gap:7px; background:rgba(212,132,154,.12); border:1px solid rgba(212,132,154,.28); padding:7px 18px; border-radius:40px; font-size:12px; color:var(--rs-rose); font-weight:700; margin-bottom:20px; }
.rs-hero h1 { font-family:var(--rs-fh); font-weight:700; font-size:clamp(36px,5.5vw,64px); line-height:1.1; color:white; margin-bottom:12px; letter-spacing:-.6px; }
.rs-hero h1 em { color:var(--rs-rose); font-style:normal; }
.rs-hero-sub { font-family:var(--rs-fh); font-weight:300; font-size:clamp(16px,2vw,22px); color:rgba(255,255,255,.65); margin-bottom:22px; line-height:1.5; }
.rs-hero-promise { background:rgba(255,255,255,.05); border-right:3px solid var(--rs-rose); border-radius:0 12px 12px 0; padding:16px 20px; margin-bottom:26px; font-size:15.5px; line-height:1.8; color:rgba(255,255,255,.72); font-weight:300; }
.rs-hero-promise strong { color:white; font-weight:700; }
.rs-hero-btns { display:flex; gap:12px; flex-wrap:wrap; margin-bottom:28px; }
.rs-hero-trust { display:flex; gap:20px; flex-wrap:wrap; }
.rs-trust-item { font-size:13px; color:rgba(255,255,255,.5); display:flex; align-items:center; gap:5px; }
.rs-trust-item span { color:var(--rs-rose); font-weight:700; }
.rs-hero-right { position:relative; }
.rs-hero-photo-frame { width:100%; aspect-ratio:3/4; border-radius:140px 140px 35px 35px; overflow:hidden; box-shadow:0 24px 70px rgba(0,0,0,.4); border:2px solid rgba(212,132,154,.2); }
.rs-hero-photo-frame img { width:100%; height:100%; object-fit:cover; object-position:center top; }
.rs-photo-ph { width:100%; height:100%; min-height:380px; background:linear-gradient(160deg,#D4A0B0,#C890A0); display:flex; align-items:center; justify-content:center; }
.rs-price-badge { position:absolute; bottom:-16px; right:50%; transform:translateX(50%); background:rgba(42,21,37,.92); backdrop-filter:blur(10px); border:1px solid rgba(212,132,154,.3); border-radius:50px; padding:11px 24px; text-align:center; white-space:nowrap; box-shadow:0 8px 24px rgba(0,0,0,.3); }
.rs-price-now { font-family:var(--rs-fh); font-weight:700; font-size:24px; color:var(--rs-rose); display:block; line-height:1; }
.rs-price-was { font-size:12px; color:rgba(255,255,255,.4); text-decoration:line-through; margin-left:6px; }
.rs-price-note { font-size:11px; color:rgba(255,255,255,.4); }

/* Intro */
.rs-intro { background:var(--rs-cream); padding:84px 48px; }
.rs-intro-inner { max-width:1350px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:center; }
.rs-intro-visual { border-radius:22px; overflow:hidden; aspect-ratio:4/5; box-shadow:0 16px 48px rgba(196,122,138,.14); }
.rs-intro-visual img { width:100%; height:100%; object-fit:cover; object-position:center top; }
.rs-intro-p { font-size:16px; line-height:1.88; color:var(--rs-muted); margin-bottom:14px; font-weight:300; }
.rs-intro-p strong { color:var(--rs-deep); font-weight:700; }

/* Ruti */
.rs-ruti { background:linear-gradient(145deg,#2A1525,var(--rs-deep)); padding:84px 48px; }
.rs-ruti-inner { max-width:1350px; margin:0 auto; display:grid; grid-template-columns:360px 1fr; gap:72px; align-items:center; }
.rs-ruti-photo { border-radius:80px 24px 80px 24px; overflow:hidden; box-shadow:0 24px 60px rgba(0,0,0,.4); border:2px solid rgba(212,132,154,.2); position:relative; aspect-ratio:3/4; }
.rs-ruti-photo img { width:100%; height:100%; object-fit:cover; object-position:center top; }
.rs-ruti-badge { position:absolute; bottom:20px; right:50%; transform:translateX(50%); background:rgba(28,10,22,.88); border:1px solid rgba(212,132,154,.3); border-radius:40px; padding:9px 20px; text-align:center; white-space:nowrap; }
.rs-ruti-badge strong { font-family:var(--rs-fh); font-weight:700; font-size:13px; color:var(--rs-rose); display:block; }
.rs-ruti-badge span { font-size:11px; color:rgba(255,255,255,.4); }
.rs-ruti-name { font-family:var(--rs-fh); font-weight:700; font-size:clamp(24px,3vw,38px); color:white; line-height:1.2; margin-bottom:5px; }
.rs-ruti-role { font-size:15px; color:var(--rs-rose); margin-bottom:20px; font-weight:300; font-family:var(--rs-fh); }
.rs-ruti-p { font-size:16px; line-height:1.88; color:rgba(255,255,255,.65); margin-bottom:13px; font-weight:300; }
.rs-ruti-p strong { color:white; font-weight:700; }
.rs-ruti-creds { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin:20px 0; }
.rs-cred { display:flex; align-items:center; gap:8px; font-size:13.5px; color:rgba(255,255,255,.62); }
.rs-cred::before { content:''; width:6px; height:6px; border-radius:50%; background:var(--rs-rose); flex-shrink:0; }
.rs-ruti-quote { background:rgba(212,132,154,.08); border-right:3px solid var(--rs-rose); border-radius:0 12px 12px 0; padding:15px 20px; }
.rs-ruti-quote p { font-family:var(--rs-fh); font-weight:300; font-size:15px; font-style:italic; color:rgba(255,255,255,.75); line-height:1.65; }

/* Curriculum */
.rs-curriculum { background:white; padding:84px 48px; }
.rs-curr-inner { max-width:1350px; margin:0 auto; }
.rs-curr-hd { text-align:center; margin-bottom:48px; }
.rs-curr-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.rs-curr-item { background:var(--rs-cream); border-radius:14px; padding:18px 20px; border:1px solid rgba(212,132,154,.15); display:flex; align-items:flex-start; gap:14px; transition:transform .22s,border-color .22s; }
.rs-curr-item:hover { transform:translateY(-2px); border-color:rgba(212,132,154,.35); }
.rs-curr-num { width:34px; height:34px; min-width:34px; border-radius:10px; background:linear-gradient(135deg,rgba(212,132,154,.18),rgba(217,198,232,.14)); display:flex; align-items:center; justify-content:center; font-family:var(--rs-fh); font-weight:700; font-size:12px; color:var(--rs-rose); }
.rs-curr-tag { font-size:10px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:var(--rs-rose-d); background:rgba(212,132,154,.1); padding:2px 8px; border-radius:10px; margin-bottom:6px; display:inline-block; }
.rs-curr-content h4 { font-family:var(--rs-fh); font-weight:700; font-size:14.5px; color:var(--rs-deep); margin-bottom:5px; }
.rs-curr-content p { font-size:13px; color:var(--rs-muted); line-height:1.55; font-weight:300; }

/* Testimonials */
.rs-testi { background:var(--rs-cream); padding:84px 48px; }
.rs-testi-inner { max-width:1350px; margin:0 auto; }
.rs-testi-hd { text-align:center; margin-bottom:44px; }
.rs-testi-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.rs-t-card { background:white; border-radius:18px; padding:22px; border:1px solid rgba(212,132,154,.15); transition:transform .22s; display:flex; flex-direction:column; }
.rs-t-card:hover { transform:translateY(-3px); }
.rs-t-wide { grid-column:1/3; flex-direction:row; gap:20px; align-items:flex-start; }
.rs-t-qm { font-family:var(--rs-fh); font-weight:700; font-size:44px; color:rgba(212,132,154,.22); line-height:1; margin-bottom:-2px; }
.rs-t-stars { display:flex; gap:3px; margin-bottom:10px; }
.rs-t-star { width:12px; height:12px; background:var(--rs-rose); clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%); }
.rs-t-text { font-size:14px; line-height:1.75; color:var(--rs-muted); font-style:italic; font-weight:300; flex:1; margin-bottom:16px; }
.rs-t-wide .rs-t-text { font-size:15.5px; }
.rs-t-author { display:flex; align-items:center; gap:10px; }
.rs-t-av { width:36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:var(--rs-fh); font-weight:700; font-size:12px; color:white; flex-shrink:0; }
.rs-av1{background:linear-gradient(135deg,var(--rs-rose),var(--rs-rose-d));}
.rs-av2{background:linear-gradient(135deg,var(--rs-lav),#A890CC);}
.rs-av3{background:linear-gradient(135deg,#BDD8C8,#7FAE94);}
.rs-av4{background:linear-gradient(135deg,#F7CDBE,#E8A880);}
.rs-av5{background:linear-gradient(135deg,#F5E6C0,#D4B060);}
.rs-t-info strong { font-size:12.5px; font-weight:700; color:var(--rs-deep); display:block; font-family:var(--rs-fh); }
.rs-t-info span { font-size:11px; color:var(--rs-light); }

/* Price */
.rs-price { background:linear-gradient(145deg,#2A1525,var(--rs-deep)); padding:84px 48px; }
.rs-price-inner { max-width:860px; margin:0 auto; }
.rs-price-hd { text-align:center; margin-bottom:32px; }
.rs-urgency { background:rgba(212,132,154,.12); border:1px solid rgba(212,132,154,.2); border-radius:12px; padding:14px 20px; margin-bottom:24px; font-size:13.5px; color:rgba(255,255,255,.75); font-weight:300; }
.rs-urgency span { margin-left:8px; }
.rs-price-card { background:rgba(255,255,255,.05); border:1px solid rgba(212,132,154,.22); border-radius:24px; padding:40px; }
.rs-price-card-inner { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; margin-bottom:28px; }
.rs-price-was-row { font-size:14px; color:rgba(255,255,255,.4); text-decoration:line-through; margin-bottom:4px; }
.rs-price-big { font-family:var(--rs-fh); font-weight:700; font-size:58px; color:white; line-height:1; }
.rs-price-big span { font-size:28px; }
.rs-price-period { font-size:13px; color:rgba(255,255,255,.5); margin-top:6px; }
.rs-price-feats { display:flex; flex-direction:column; gap:10px; }
.rs-pf { display:flex; align-items:center; gap:10px; font-size:14px; color:rgba(255,255,255,.75); font-weight:300; }
.rs-pf-chk { width:20px; height:20px; border-radius:50%; background:rgba(212,132,154,.15); border:1px solid rgba(212,132,154,.35); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.rs-guarantee { display:flex; align-items:center; justify-content:center; gap:8px; font-size:13px; color:rgba(255,255,255,.45); margin-top:14px; }

/* FAQ */
.rs-faq { background:var(--rs-cream); padding:84px 48px; }
.rs-faq-inner { max-width:760px; margin:0 auto; }
.rs-faq-hd { text-align:center; margin-bottom:36px; }
.rs-faq-item { background:white; border:1px solid rgba(212,132,154,.18); border-radius:13px; margin-bottom:9px; overflow:hidden; cursor:pointer; transition:border-color .2s; }
.rs-faq-item:hover { border-color:rgba(212,132,154,.4); }
.rs-faq-header { padding:17px 20px; display:flex; justify-content:space-between; align-items:center; font-family:var(--rs-fh); font-weight:700; font-size:15px; color:var(--rs-deep); user-select:none; gap:10px; }
.rs-faq-arrow { font-size:11px; color:var(--rs-rose); transition:transform .25s; flex-shrink:0; }
.rs-faq-item.open .rs-faq-arrow { transform:rotate(180deg); }
.rs-faq-body { max-height:0; overflow:hidden; transition:max-height .35s ease; }
.rs-faq-body p { padding:0 20px 16px; font-size:14.5px; line-height:1.8; color:var(--rs-muted); font-weight:300; border-top:1px solid rgba(212,132,154,.1); padding-top:14px; }
.rs-faq-item.open .rs-faq-body { max-height:280px; }
.rs-faq-body a { color:var(--rs-rose); font-weight:600; }

/* Final CTA */
.rs-final-cta { background:linear-gradient(155deg,#8B4558,#2A1525,var(--rs-deep)); padding:84px 48px; text-align:center; }
.rs-final-inner { max-width:640px; margin:0 auto; }
.rs-final-icon { font-size:36px; margin-bottom:18px; }
.rs-final-inner h2 { font-family:var(--rs-fh); font-weight:700; font-size:clamp(26px,4vw,42px); color:white; line-height:1.25; margin-bottom:16px; }
.rs-final-inner h2 em { color:var(--rs-rose); font-style:normal; }
.rs-final-inner p { font-size:16px; line-height:1.88; color:rgba(255,255,255,.62); margin-bottom:28px; font-weight:300; }
.rs-final-btns { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* ─ RESPONSIVE ─ */
@media(max-width:1350px) {
  .rc-course-grid,.rs-intro-inner,.rs-ruti-inner { grid-template-columns:1fr; }
  .rc-testi-grid,.rs-testi-grid { grid-template-columns:1fr 1fr; }
  .rs-t-wide { grid-column:1/3; }
  .rs-curr-grid { grid-template-columns:1fr; }
  .rs-price-card-inner { grid-template-columns:1fr; gap:24px; }
  .rs-hero-inner { grid-template-columns:1fr; padding:90px 40px 70px; gap:40px; }
  .rs-ruti-inner { grid-template-columns:1fr; gap:36px; }
  .rs-ruti-photo { max-width:320px; margin:0 auto; }
}
@media(max-width:768px) {
  .rc-hero,.rc-courses-section,.rc-testi-section,.rc-faq-section,.rc-cta-section,
  .rs-hero,.rs-intro,.rs-ruti,.rs-curriculum,.rs-testi,.rs-price,.rs-faq,.rs-final-cta {
    padding-left:20px !important; padding-right:20px !important;
    padding-top:60px !important; padding-bottom:60px !important;
  }
  .rc-hero-inner { grid-template-columns:1fr; }
  .rc-tab-switcher { flex-direction:column; align-items:center; }
  .rc-testi-grid { grid-template-columns:1fr; }
  .rc-course-grid { grid-template-columns:1fr; }
  .rs-testi-grid { grid-template-columns:1fr; }
  .rs-t-wide { grid-column:1; flex-direction:column; }
  .rs-hero h1 { font-size:clamp(32px,9vw,48px); }
  .rs-ruti-creds { grid-template-columns:1fr; }
  .rs-curr-grid { grid-template-columns:1fr; }
  .rs-final-btns { flex-direction:column; align-items:center; }
  .rc-hero-cards { grid-template-columns:1fr; }
}

/* ─ LECTURES WIDGET wrapper & overrides ─ */
.lw-wrap { direction:rtl; font-family:var(--rs-fb,inherit); overflow-x:hidden; }
.lw-wrap * { box-sizing:border-box; }
.lw-wrap svg { display:block; flex-shrink:0; }
.lw-btn-rose { background:linear-gradient(135deg,var(--rs-rose,#D4849A),var(--rs-rose-d,#B86A7E)); color:white; padding:14px 30px; border-radius:50px; font-size:15px; font-weight:700; display:inline-flex; align-items:center; gap:8px; transition:all .25s; box-shadow:0 6px 24px rgba(180,100,126,.35); border:none; cursor:pointer; font-family:inherit; text-decoration:none; }
.lw-btn-rose:hover { transform:translateY(-2px); color:white; }
.lw-btn-lg { padding:16px 38px; font-size:16px; }
.lw-btn-outline { display:inline-flex; align-items:center; gap:7px; background:transparent; color:var(--rs-rose-d,#B86A7E); padding:12px 24px; border-radius:50px; font-size:14px; font-weight:700; border:1.5px solid var(--rs-rose,#D4849A); transition:all .22s; text-decoration:none; }
.lw-btn-outline:hover { background:var(--rs-rose-l,#FAE8EC); }
.lw-btn-wa { background:rgba(37,211,102,.12); color:#2E9E5A; padding:11px 18px; border-radius:50px; font-size:13.5px; font-weight:600; text-decoration:none; display:inline-flex; align-items:center; gap:7px; border:1.5px solid rgba(37,211,102,.32); transition:all .25s; }
.lw-btn-wa:hover { background:rgba(37,211,102,.2); color:#2E9E5A; }
.lw-btn-light { display:inline-flex; align-items:center; gap:7px; background:transparent; color:rgba(255,255,255,.8); padding:12px 22px; border-radius:50px; font-size:14px; font-weight:600; border:1.5px solid rgba(255,255,255,.25); transition:all .22s; text-decoration:none; }
.lw-btn-light:hover { background:rgba(255,255,255,.1); }
.lw-lec-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.lw-lec-card { background:white; border-radius:22px; overflow:hidden; border:1px solid rgba(242,196,206,.18); display:flex; flex-direction:column; transition:transform .25s,box-shadow .25s; }
.lw-lec-card:hover { transform:translateY(-5px); box-shadow:0 14px 44px rgba(196,122,138,.12); }
.lw-lec-feat { grid-column:1/3; flex-direction:row; }
.lw-lec-visual { height:180px; display:flex; align-items:center; justify-content:center; position:relative; flex-shrink:0; }
.lw-lec-feat .lw-lec-visual { width:320px; height:auto; min-height:100%; }
.lw-desc { font-size:15px; color:var(--rs-muted,#7A5568); line-height:1.72; font-weight:300; margin-bottom:18px; }
.lw-img-ph { width:100%; height:100%; min-height:360px; background:linear-gradient(160deg,#F5E0E8,#EDD4E4); display:flex; align-items:center; justify-content:center; }
.lw-div { width:1px; height:36px; background:rgba(212,132,154,.15); }
.lw-si1 { background:linear-gradient(135deg,rgba(242,196,206,.28),rgba(242,196,206,.12)); }
.lw-si2 { background:linear-gradient(135deg,rgba(217,198,232,.3),rgba(217,198,232,.14)); }
.lw-si3 { background:linear-gradient(135deg,rgba(189,216,200,.3),rgba(189,216,200,.14)); }
.lw-si4 { background:linear-gradient(135deg,rgba(247,205,190,.3),rgba(247,205,190,.14)); }
@media(max-width:1350px) { .lw-lec-grid { grid-template-columns:1fr; } .lw-lec-feat { flex-direction:column; grid-column:1; } .lw-lec-feat .lw-lec-visual { width:100%; height:180px; } }
@media(max-width:768px) { .lw-wrap .sp { padding-left:20px!important; padding-right:20px!important; padding-top:60px!important; padding-bottom:60px!important; } }

/* ─ SCHOOL WIDGET wrapper & overrides ─ */
.sw-wrap { direction:rtl; font-family:var(--rs-fb,inherit); overflow-x:hidden; }
.sw-wrap * { box-sizing:border-box; }
.sw-wrap svg { display:block; flex-shrink:0; }
.sw-btn-rose { background:linear-gradient(135deg,var(--rs-rose,#D4849A),var(--rs-rose-d,#B86A7E)); color:white; padding:14px 30px; border-radius:50px; font-size:15px; font-weight:700; display:inline-flex; align-items:center; gap:8px; transition:all .25s; box-shadow:0 6px 24px rgba(180,100,126,.35); border:none; cursor:pointer; font-family:inherit; text-decoration:none; }
.sw-btn-rose:hover { transform:translateY(-2px); color:white; }
.sw-btn-lg { padding:16px 38px; font-size:16px; }
.sw-btn-wa { background:rgba(37,211,102,.12); color:#2E9E5A; padding:11px 18px; border-radius:50px; font-size:13.5px; font-weight:600; text-decoration:none; display:inline-flex; align-items:center; gap:7px; border:1.5px solid rgba(37,211,102,.32); transition:all .25s; }
.sw-btn-wa:hover { background:rgba(37,211,102,.2); color:#2E9E5A; }
.sw-btn-light { display:inline-flex; align-items:center; gap:7px; background:transparent; color:rgba(255,255,255,.8); padding:12px 22px; border-radius:50px; font-size:14px; font-weight:600; border:1.5px solid rgba(255,255,255,.25); transition:all .22s; text-decoration:none; }
.sw-btn-light:hover { background:rgba(255,255,255,.1); }
.sw-img-ph { width:100%; min-height:360px; background:linear-gradient(160deg,#D4A0B0,#C890A0); display:flex; align-items:center; justify-content:center; }
.sw-div { width:1px; height:36px; background:rgba(212,132,154,.15); }
@media(max-width:768px) { .sw-wrap .sp { padding-left:20px!important; padding-right:20px!important; padding-top:60px!important; padding-bottom:60px!important; } }

/* ══════════════════════════════════════════════════════════════
   SHARED — Scroll Arrow (use in any hero section)
══════════════════════════════════════════════════════════════ */
.rs-scroll-arrow{
  position:absolute;bottom:28px;left:50%;transform:translateX(-50%);
  z-index:5;display:flex;flex-direction:column;align-items:center;gap:5px;
  cursor:pointer;text-decoration:none;
}
.rs-scroll-arrow-label{
  font-size:10px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;
  color:rgba(255,255,255,.45);
}
.rs-scroll-arrow-ring{
  width:40px;height:40px;border-radius:50%;
  border:1.5px solid rgba(255,255,255,.22);
  display:flex;align-items:center;justify-content:center;
  animation:rs-bounce 2s ease-in-out infinite;
}
.rs-scroll-arrow-ring svg{color:rgba(255,255,255,.65)}
@keyframes rs-bounce{
  0%,100%{transform:translateY(0);opacity:.65}
  50%{transform:translateY(7px);opacity:1}
}

/* ══════════════════════════════════════════════════════════════
   SHARED — Beautiful Video Section
══════════════════════════════════════════════════════════════ */
.rs-video-section{
  padding:80px 48px;
  background:var(--rs-cream,#FDF6F0);
}
.rs-video-section.dark{
  background:linear-gradient(145deg,#2A1525,#3D2535);
}
.rs-video-inner{max-width:900px;margin:0 auto}
.rs-video-hd{text-align:center;margin-bottom:36px}
.rs-video-tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:#D4849A;background:rgba(212,132,154,.1);border:1px solid rgba(212,132,154,.25);padding:5px 14px;border-radius:50px;margin-bottom:12px}
.rs-video-hd h2{font-family:'Megiddo',serif;font-weight:700;font-size:clamp(24px,3vw,38px);color:#3D2535;line-height:1.2;margin-bottom:8px}
.rs-video-hd h2 span{color:#D4849A}
.rs-video-section.dark .rs-video-hd h2{color:#fff}
.rs-video-hd p{font-size:15px;color:#7A5568;max-width:560px;margin:0 auto;line-height:1.7}
.rs-video-section.dark .rs-video-hd p{color:rgba(255,255,255,.65)}
.rs-video-bar{width:48px;height:3px;background:linear-gradient(90deg,#D4849A,#C9A96E);border-radius:3px;margin:10px auto 20px}

/* Video frame with play overlay */
.rs-video-frame-wrap{position:relative;border-radius:20px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.25);}
.rs-video-frame{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;}
.rs-video-frame iframe,.rs-video-frame video{position:absolute;top:0;left:0;width:100%;height:100%;border:none;}

/* Thumbnail with play button overlay */
.rs-video-thumb-wrap{position:relative;border-radius:20px;overflow:hidden;cursor:pointer;box-shadow:0 20px 60px rgba(0,0,0,.25);}
.rs-video-thumb-wrap img{width:100%;display:block;aspect-ratio:16/9;object-fit:cover;}
.rs-video-thumb-wrap .rs-play-btn{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:rgba(30,10,20,.35);transition:background .3s;
}
.rs-video-thumb-wrap:hover .rs-play-btn{background:rgba(30,10,20,.5)}
.rs-play-circle{
  width:72px;height:72px;border-radius:50%;
  background:linear-gradient(135deg,#D4849A,#B86A7E);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 32px rgba(212,132,154,.5);
  transition:transform .3s;
}
.rs-video-thumb-wrap:hover .rs-play-circle{transform:scale(1.1)}
.rs-play-circle svg{color:#fff;margin-right:-3px}
/* Hidden iframe that replaces thumbnail on click */
.rs-video-embed-container{display:none;position:relative;padding-bottom:56.25%;height:0;border-radius:20px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.25);}
.rs-video-embed-container.active{display:block}
.rs-video-embed-container iframe,.rs-video-embed-container video{position:absolute;top:0;left:0;width:100%;height:100%;border:none;}
.rs-video-thumb-wrap.hidden{display:none}

@media(max-width:768px){
  .rs-video-section{padding:52px 24px}
}

/* ══════════════════════════════════════════════════════════════
   SHARED — Section Background Image Strip
══════════════════════════════════════════════════════════════ */
.rs-bg-strip {
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.rs-bg-strip::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
}
/* Overlay presets */
.rs-bg-dark::before    { background: rgba(30,10,20,.65); }
.rs-bg-darker::before  { background: rgba(15,5,12,.82); }
.rs-bg-light::before   { background: rgba(253,246,240,.82); }
.rs-bg-rose::before    { background: linear-gradient(135deg,rgba(212,132,154,.75),rgba(61,37,53,.8)); }
.rs-bg-plum::before    { background: linear-gradient(145deg,rgba(42,21,37,.88),rgba(74,45,64,.85)); }
/* Content stays above overlay */
.rs-bg-strip > * { position: relative; z-index: 1; }
/* Text color helpers */
.rs-on-dark   { color: rgba(255,255,255,.85) !important; }
.rs-on-dark h2,.rs-on-dark h3 { color: #fff !important; }
.rs-on-dark p  { color: rgba(255,255,255,.72) !important; }

/* ══════════════════════════════════════════════════════════════
   SHARED — Animated section divider
══════════════════════════════════════════════════════════════ */
.rs-divider {
  width: 100%;
  overflow: hidden;
  line-height: 0;
}
.rs-divider svg { display: block; width: 100%; }

/* ══════════════════════════════════════════════════════════════
   SHARED — Counter widget
══════════════════════════════════════════════════════════════ */
.rs-stats-strip {
  display: flex;
  justify-content: center;
  gap: 0;
  flex-wrap: wrap;
}
.rs-stat-item {
  flex: 0 0 auto;
  min-width: 140px;
  text-align: center;
  padding: 20px 28px;
  border-left: 1px solid rgba(255,255,255,.1);
}
.rs-stat-item:last-child { border-left: none; }
.rs-stat-num {
  font-family: 'Megiddo', serif;
  font-weight: 700;
  font-size: 36px;
  color: #D4849A;
  line-height: 1;
  display: block;
  margin-bottom: 4px;
}
.rs-stat-lbl {
  font-size: 12px;
  color: rgba(255,255,255,.55);
  letter-spacing: .5px;
}


/* ── HERO FULL-VIEWPORT FIX ── */
.ab-hero, .wso-hero, .ws-hero, .cl-hero, .sk-hero,
.c-hero, .lp-hero, .pod-hero, .hero {
  box-sizing: border-box;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
/* Prevent Elementor from adding extra padding around full-height sections */
.elementor-section.elementor-section-full_width:has(.ab-hero),
.elementor-section.elementor-section-full_width:has(.wso-hero),
.elementor-section.elementor-section-full_width:has(.ws-hero) {
  padding: 0 !important;
  margin: 0 !important;
}


/* ── GSAP VISIBILITY FALLBACK ──────────────────────────────────────
   Ensures content is visible even if GSAP fails to fire.
   GSAP overrides these with autoAlpha:0 before animation starts.
   The transition prevents flash of invisible content. */
[data-anim], [data-split] {
  opacity: 1;
  visibility: visible;
}

/* ── GLOBAL BREATHING SPACE ───────────────────────────────── */
/* Extra space between section heading and content */
[class*="-hd"] { margin-bottom: 48px; }
[class*="-hd"] + * { margin-top: 0; }
/* Wider line height for all body text */
[class*="-body"], [class*="-desc"], [class*="-lead"], p {
  line-height: 1.85;
}
/* More generous card padding */
[class*="-card"] { padding: 26px 24px; }
/* Increase gap between sections slightly */
section + section { margin-top: 0; }

/* ── ELEGANT HEADING SIZES (global overrides) ── */
.s-title, [class*="-h2"], .slp-h2, .ws-h2, .wso-h2, .cl-h2, .ab-h2, .sk-hero h1 {
  font-size: clamp(22px, 3vw, 36px) !important;
  line-height: 1.22 !important;
}
h1, [class*="-h1"], .slp-hero-title, .hero h1 {
  font-size: clamp(28px, 5vw, 52px) !important;
}
/* Section labels (s-tag / tag) — smaller */
[class*="-tag"]:not([class*="btn"]):not([class*="card"]) {
  font-size: 10px !important;
  letter-spacing: 2.5px !important;
  padding: 4px 12px !important;
}
/* Less visual noise on stat numbers */
[class*="stat-n"], [class*="-stat-n"] {
  font-size: 28px !important;
}
/* Cards: less border radius for elegance */
[class*="-card"]:not([class*="btn"]) {
  border-radius: 14px !important;
}
/* Remove excessive box shadows */
[class*="-card"]:not([class*="btn"]):not([class*="-price"]) {
  box-shadow: 0 2px 16px rgba(61,37,53,.06) !important;
}
