@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=Inter:wght@400;500;600;700;800&family=Amiri:wght@400;700&family=Noto+Naskh+Arabic:wght@400;600;700&family=Noto+Sans+Arabic:wght@400;600;800&display=swap');

:root{--navy:#17345f;--navy-2:#0f2747;--teal:#2c8c82;--coral:#e97b63;--sand:#f5efe6;--ivory:#fcfaf7;--sky:#eaf4ff;--sage:#e7f4f1;--line:#d8e2ea;--ink:#213247;--muted:#66768a;--white:#fff;--shadow:0 24px 55px rgba(15,39,71,.10);--radius:28px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:radial-gradient(circle at top right,rgba(234,244,255,.9),transparent 30rem),radial-gradient(circle at bottom left,rgba(245,239,230,.9),transparent 28rem),var(--ivory)}a{color:inherit}
.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem clamp(1rem,4vw,4rem);background:rgba(252,250,247,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(23,52,95,.08)}
.brand{display:flex;align-items:center;gap:.85rem;text-decoration:none;color:var(--navy)}.brand-mark{width:52px;height:52px;border-radius:18px;background:linear-gradient(145deg,var(--teal),var(--navy));color:#fff;display:grid;place-items:center;font-size:2rem;font-weight:900;box-shadow:0 16px 30px rgba(15,39,71,.16)}.brand strong{display:block;font-size:1.2rem}.brand small{display:block;color:var(--muted);font-size:.8rem}
.nav{display:flex;gap:.85rem;font-weight:850;font-size:.9rem;color:var(--navy);align-items:center}.nav a,.nav-cta{text-decoration:none}.nav a{padding:.5rem .65rem;border-radius:999px}.nav a.active,.nav a:hover{background:white;box-shadow:0 8px 18px rgba(15,39,71,.06)}.nav-cta{padding:.75rem 1rem;border-radius:999px;background:var(--navy);color:white;font-weight:900}
.menu-toggle{display:none;width:46px;height:46px;border:1px solid rgba(23,52,95,.12);border-radius:14px;background:#fff;cursor:pointer;padding:10px}.menu-toggle span{display:block;height:2px;background:var(--navy);margin:5px 0;border-radius:999px}
.section{padding:clamp(3rem,6vw,6rem) clamp(1rem,4vw,4rem)}.hero{min-height:76vh;display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center}.page-hero{padding-bottom:2rem}.eyebrow{color:var(--teal);font-weight:950;text-transform:uppercase;letter-spacing:.09em;font-size:.82rem;margin:0 0 .8rem}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.8rem,6vw,5.5rem);line-height:.96;letter-spacing:-.055em;color:var(--navy-2);margin-bottom:1.2rem}h2{font-size:clamp(2rem,4vw,3.1rem);line-height:1.02;letter-spacing:-.04em;color:var(--navy-2);margin-bottom:.9rem}h3{color:var(--navy-2)}.lead{font-size:1.25rem;line-height:1.65;color:var(--muted);max-width:46rem}.hero-actions{display:flex;gap:.85rem;flex-wrap:wrap;margin:1.6rem 0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border-radius:999px;padding:.85rem 1.15rem;text-decoration:none;font-weight:950;border:0;cursor:pointer}.primary{background:var(--navy);color:white;box-shadow:0 16px 28px rgba(15,39,71,.17)}.secondary{background:white;color:var(--navy)}.ghost{background:white;color:var(--navy);border:1px solid rgba(23,52,95,.13)}
.trust-row{display:flex;flex-wrap:wrap;gap:.7rem}.trust-row span{padding:.65rem .8rem;border-radius:999px;background:white;border:1px solid rgba(23,52,95,.10);font-weight:800;font-size:.9rem;color:var(--muted)}
.learning-board{width:min(100%,440px);min-height:600px;border-radius:44px;background:linear-gradient(180deg,#fff,#f6fbff);border:1px solid rgba(23,52,95,.12);box-shadow:var(--shadow);padding:1.4rem;position:relative;overflow:hidden}.learning-board:before{content:"";position:absolute;right:-70px;bottom:-80px;width:260px;height:260px;background:rgba(44,140,130,.14);border-radius:50%}.mini-brand{display:flex;align-items:center;gap:.6rem;color:var(--navy)}.mini-brand span{width:38px;height:38px;border-radius:14px;background:var(--teal);color:white;display:grid;place-items:center;font-weight:900;font-size:1.5rem}.board-card{margin-top:3rem;background:white;border:1px solid var(--line);border-radius:28px;padding:1.5rem;position:relative;z-index:2;box-shadow:0 20px 35px rgba(15,39,71,.08)}.board-card small{color:var(--coral);font-weight:950;text-transform:uppercase}.board-card h3{font-size:2rem;margin:.7rem 0}.board-card p{font-family:"Noto Sans Arabic",system-ui;font-size:2rem;color:var(--teal);font-weight:950}.board-card em{color:var(--muted)}.board-row{position:absolute;bottom:2rem;left:1.4rem;right:1.4rem;display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;z-index:2}.board-row div{background:var(--sand);border-radius:20px;padding:1rem;text-align:center}.board-row b{font-family:"Noto Sans Arabic",system-ui;font-size:1.35rem;color:var(--navy)}.board-row span{display:block;color:var(--muted);font-weight:800;font-size:.8rem}
.section-head{max-width:850px;margin:0 auto 2rem;text-align:center}.section-head p{color:var(--muted);line-height:1.6}.path-grid,.library-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.path-card,.orientation-card,.grammar-card,.exercise-card,.product-card,.sample-card,details,.sound-card,.word-card,.theme-intro,.theme-list,.legal-body{background:rgba(255,255,255,.96);border:1px solid rgba(23,52,95,.11);border-radius:var(--radius);padding:1.35rem;box-shadow:var(--shadow)}.path-card{text-decoration:none;transition:.16s}.path-card:hover{transform:translateY(-4px);border-color:var(--teal)}.path-card span,.orientation-card>span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--navy);color:white;font-weight:950}.path-card h3,.orientation-card h3{margin:1rem 0 .45rem}.path-card p,.orientation-card p{color:var(--muted);line-height:1.55;margin-bottom:0}
.orientation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.mini-compare{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1rem}.mini-compare div,.pattern-demo,.root-demo,.compare div,.root-box{background:var(--sky);border-radius:18px;padding:1rem}.mini-compare small,.compare small,.root-box span{display:block;color:var(--coral);font-weight:950;text-transform:uppercase;font-size:.7rem}.mini-compare b,.compare b,.root-box b{display:block;color:var(--navy);font-size:1.1rem;margin:.3rem 0}.mini-compare b[lang=ar],.root-demo b,.root-demo span,.pattern-demo p,.compare b[lang=ar],.story-lines-grid b{font-family:"Noto Sans Arabic",system-ui}.mini-compare em,.pattern-demo em,.compare em{color:var(--muted);font-size:.85rem}.root-demo{display:grid;gap:.55rem;text-align:center}.root-demo>b{font-size:2.5rem;color:var(--navy)}.root-demo div{display:flex;justify-content:space-between;align-items:center;background:white;border-radius:14px;padding:.65rem .85rem}.root-demo span{font-size:1.25rem;font-weight:950;color:var(--teal)}.register-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-top:1rem}.register-row span{background:var(--sand);color:var(--navy);border-radius:999px;padding:.55rem .4rem;text-align:center;font-size:.75rem;font-weight:900}.pattern-demo p{color:var(--teal);font-size:1.5rem;font-weight:950;margin:.45rem 0}
.grammar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.grammar-card p{color:var(--muted);line-height:1.55}.compare{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:1rem 0}.root-box{text-align:center}.root-box b{font-size:2.2rem}
.vocab-tabs,.theme-tabs{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center;margin-bottom:1.4rem}.vocab-tabs button,.theme-tabs button{border:1px solid var(--line);background:white;border-radius:999px;padding:.7rem .95rem;font-weight:900;color:var(--navy);cursor:pointer}.vocab-tabs button.active,.theme-tabs button.active{background:var(--navy);color:white}.vocab-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.word-card b{font-family:"Noto Sans Arabic",system-ui;font-size:1.55rem;color:var(--navy)}.word-card .trans{display:block;color:var(--teal);font-weight:900;margin:.35rem 0}.word-card small{display:block;color:var(--muted);line-height:1.4}
.theme-content{display:grid;grid-template-columns:.9fr 1.1fr;gap:1.25rem;align-items:start}.theme-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.theme-word{background:var(--sky);border-radius:18px;padding:1rem}.theme-word b{display:block;font-family:"Noto Sans Arabic",system-ui;color:var(--navy);font-size:1.35rem}.theme-word span{display:block;color:var(--teal);font-weight:900;margin:.35rem 0}.theme-word small{color:var(--muted)}
.phrase-builder{display:grid;grid-template-columns:.35fr .65fr;gap:1rem;max-width:1000px;margin:0 auto}.pattern-list{display:grid;gap:.75rem}.pattern{border:1px solid var(--line);background:white;border-radius:18px;padding:1rem;font-weight:950;color:var(--navy);cursor:pointer;text-align:left}.pattern.active{background:var(--navy);color:white}.phrase-output{background:white;border:1px solid var(--line);border-radius:28px;padding:1.5rem;box-shadow:var(--shadow);display:grid;gap:1rem}.phrase-example{background:var(--sky);border-radius:20px;padding:1rem}.phrase-example p{font-family:"Noto Sans Arabic",system-ui;font-size:1.45rem;color:var(--teal);font-weight:950;margin:.45rem 0}.phrase-example em{color:var(--muted)}
.exercise-grid,.product-grid,.sample-grid,.story-lines-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.badge{display:inline-flex;border-radius:999px;padding:.45rem .7rem;background:rgba(44,140,130,.12);color:var(--teal);font-size:.8rem;font-weight:950}.quiz-options{display:grid;gap:.7rem;margin:1rem 0}.quiz-options button,.fill-box button{border:1px solid var(--line);border-radius:16px;background:#fff;padding:.9rem 1rem;text-align:center;font-family:"Noto Sans Arabic",system-ui;font-size:1.2rem;font-weight:950;cursor:pointer}.quiz-options button.correct,.fill-box button.correct{border-color:var(--teal);background:var(--sage)}.quiz-options button.wrong,.fill-box button.wrong{border-color:var(--coral);background:#fff1ed}.quiz-feedback,.fill-feedback,.answer-reveal{color:var(--muted);line-height:1.6}.fill-box{display:grid;gap:.8rem}.fill-box span{font-family:"Noto Sans Arabic",system-ui;font-size:1.6rem;font-weight:950;color:var(--navy)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.method-list{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}.method-list div{background:white;border:1px solid rgba(23,52,95,.10);border-radius:22px;padding:1.2rem;box-shadow:0 16px 32px rgba(15,39,71,.06)}.method-list b{display:block;color:var(--navy)}.method-list span{color:var(--muted)}
.paper-stack{position:relative;min-height:420px}.paper-stack article{position:absolute;width:82%;border-radius:28px;background:white;border:1px solid var(--line);box-shadow:var(--shadow);padding:1.5rem;transform:rotate(-3deg)}.paper-stack article:nth-child(2){top:120px;left:60px;transform:rotate(4deg);background:#fbfdff}.paper-stack article:nth-child(3){top:240px;left:20px;transform:rotate(-1deg);background:#fffaf3}.paper-stack small,.sample-card span{color:var(--coral);font-weight:950}.paper-stack p{font-family:"Noto Sans Arabic",system-ui;color:var(--teal);font-size:1.7rem;font-weight:950}
.product-card{display:flex;flex-direction:column;min-height:460px}.product-card.featured{background:linear-gradient(145deg,var(--navy),var(--teal));color:white}.product-card.featured h3,.product-card.featured .price{color:white}.featured .badge{background:rgba(255,255,255,.16);color:white}.product-card p,.product-card li,.sample-card p{color:inherit;opacity:.78;line-height:1.55}.price{font-size:1.35rem;font-weight:950;color:var(--navy);margin-top:auto;margin-bottom:1rem}.card-actions{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap}.sample-link{font-weight:950;color:var(--teal);text-decoration:none}.sample-card{text-decoration:none}.footer{padding:2rem clamp(1rem,4vw,4rem);display:flex;justify-content:space-between;gap:1rem;align-items:center;background:var(--navy);color:white}.footer p{margin:.25rem 0 0;opacity:.72}.footer nav{display:flex;gap:1rem;flex-wrap:wrap}.footer a{color:white;text-decoration:none;opacity:.86}.legal-body{max-width:900px;margin:0 auto;color:var(--muted);line-height:1.8}
@media(max-width:1100px){.menu-toggle{display:inline-block;order:3}.site-header{flex-wrap:wrap}.nav{display:none;order:5;width:100%;flex-direction:column;align-items:stretch;gap:.4rem;background:white;border:1px solid rgba(23,52,95,.1);border-radius:22px;padding:.8rem;box-shadow:var(--shadow)}.nav.open{display:flex}.nav a{padding:.9rem 1rem;border-radius:14px;background:rgba(234,244,255,.55)}.nav-cta{margin-left:auto}.orientation-grid,.grammar-grid,.vocab-grid,.path-grid,.exercise-grid,.product-grid,.sample-grid,.story-lines-grid{grid-template-columns:repeat(2,1fr)}.theme-content{grid-template-columns:1fr}}
@media(max-width:760px){.hero,.split,.phrase-builder{grid-template-columns:1fr}.orientation-grid,.grammar-grid,.vocab-grid,.path-grid,.exercise-grid,.product-grid,.sample-grid,.story-lines-grid,.theme-list,.mini-compare,.compare{grid-template-columns:1fr}h1{font-size:3.05rem}.footer{flex-direction:column;align-items:flex-start}.paper-stack{min-height:360px}.learning-board{min-height:520px}}

/* ===== Premium type & accents (added) ===== */
:root{--gold:#c79a3b;--gold-deep:#a87f23;--gold-soft:#f6edd8}
h1,h2,h3{font-family:"Fraunces",Georgia,serif}
[lang="ar"]{font-family:"Noto Naskh Arabic","Amiri","Noto Sans Arabic",serif}
.btn.gold{background:linear-gradient(145deg,var(--gold),var(--gold-deep));color:#fff;box-shadow:0 16px 28px rgba(199,154,59,.30)}
.btn.gold:hover{filter:brightness(1.04)}
svg.ic{width:24px;height:24px;display:block}

/* hero stats */
.stats{display:flex;gap:2.2rem;flex-wrap:wrap;margin-top:1.6rem}
.stats div b{font-family:"Fraunces",serif;font-size:1.9rem;color:var(--navy-2);display:block;line-height:1}
.stats div span{color:var(--muted);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.calli-badge{position:absolute;top:-18px;right:-10px;width:84px;height:84px;border-radius:24px;background:linear-gradient(145deg,var(--gold),var(--gold-deep));color:#fff;display:grid;place-items:center;font-family:"Amiri",serif;font-size:3.2rem;box-shadow:0 18px 34px rgba(199,154,59,.4);z-index:5}
.learning-board{position:relative}

/* feature cards with icons */
.feat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.feat-card{background:#fff;border:1px solid rgba(23,52,95,.1);border-radius:24px;padding:1.6rem;box-shadow:0 18px 40px rgba(15,39,71,.07);transition:.16s}
.feat-card:hover{transform:translateY(-4px);border-color:var(--teal)}
.feat-ic{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:var(--sage);color:var(--teal);margin-bottom:1rem}
.feat-ic svg{width:28px;height:28px}
.feat-card h3{font-size:1.2rem;margin:.1rem 0 .45rem}
.feat-card p{color:var(--muted);line-height:1.55;font-size:.94rem;margin:0}

/* path-card icons */
.path-head{display:flex;align-items:center;justify-content:space-between}
.path-card .pic{width:48px;height:48px;border-radius:14px;background:var(--navy);color:#fff;display:grid;place-items:center}
.path-card .pic svg{width:24px;height:24px}
.path-card .pnum{font-family:"Fraunces",serif;font-weight:700;font-size:1.5rem;color:var(--line)}

/* culture / imagery band */
.culture{position:relative;border-radius:var(--radius);overflow:hidden;background:linear-gradient(145deg,var(--navy-2),var(--teal));color:#fff;padding:clamp(2rem,5vw,3.6rem);display:grid;grid-template-columns:1.05fr .95fr;gap:2.2rem;align-items:center}
.culture .pattern{position:absolute;inset:0;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='84'%3E%3Cpath d='M42 6 L51 33 L78 42 L51 51 L42 78 L33 51 L6 42 L33 33 Z' fill='none' stroke='white' stroke-width='1.3'/%3E%3Ccircle cx='42' cy='42' r='9' fill='none' stroke='white' stroke-width='1.3'/%3E%3C/svg%3E");background-size:84px 84px}
.culture>*{position:relative;z-index:2}
.culture .eyebrow{color:var(--gold-soft)}
.culture h2{color:#fff}
.culture p{color:rgba(255,255,255,.86);line-height:1.7}
.culture-points{display:grid;gap:.7rem;margin-top:1.2rem}
.culture-points div{display:flex;gap:.7rem;align-items:flex-start;font-weight:700}
.culture-points svg{flex:none;width:22px;height:22px;color:var(--gold-soft);margin-top:2px}
.culture-art{display:grid;gap:.8rem}
.culture-chip{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:1rem 1.2rem;display:flex;justify-content:space-between;align-items:center;backdrop-filter:blur(4px)}
.culture-chip b{font-family:"Noto Naskh Arabic",serif;font-size:1.6rem}
.culture-chip span{opacity:.85;font-weight:700}

/* product teaser with real cover images */
.prod-teaser{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:stretch}
.prod-card{background:#fff;border:1px solid rgba(23,52,95,.1);border-radius:24px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}
.prod-cover{aspect-ratio:3/4;background:var(--sand) center/cover no-repeat;border-bottom:1px solid var(--line)}
.prod-body{padding:1.3rem;display:flex;flex-direction:column;flex:1}
.prod-body h3{font-size:1.15rem;margin:0 0 .3rem}
.prod-body p{color:var(--muted);font-size:.92rem;line-height:1.5;margin:0 0 .8rem}
.prod-body .price{font-family:"Fraunces",serif;font-size:1.3rem;color:var(--navy-2);margin:auto 0 .9rem}
.prod-actions{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}

/* testimonial */
.quote{max-width:840px;margin:0 auto;text-align:center}
.quote-mark{font-family:"Fraunces",serif;font-size:4rem;color:var(--gold);line-height:.6}
.quote p{font-family:"Fraunces",serif;font-size:1.5rem;line-height:1.5;color:var(--navy-2);margin:.4rem 0 1rem}
.quote small{color:var(--muted);font-weight:800}

@media(max-width:1100px){.feat-grid{grid-template-columns:repeat(2,1fr)}.culture{grid-template-columns:1fr}.prod-teaser{grid-template-columns:1fr}}
@media(max-width:760px){.feat-grid{grid-template-columns:1fr}.calli-badge{width:64px;height:64px;font-size:2.4rem}}

/* ===== Organized dropdown nav (added) ===== */
.nav .has-dd{position:relative}
.dd-toggle{border:0;background:none;font:inherit;font-weight:850;color:var(--navy);cursor:pointer;display:inline-flex;align-items:center;gap:.3rem;padding:.5rem .65rem;border-radius:999px}
.dd-toggle svg{width:14px;height:14px;transition:.15s}
.has-dd:hover .dd-toggle,.dd-toggle:focus{background:#fff;box-shadow:0 8px 18px rgba(15,39,71,.06)}
.dd-menu{position:absolute;top:calc(100% + .5rem);left:0;min-width:230px;background:#fff;border:1px solid rgba(23,52,95,.1);border-radius:18px;box-shadow:var(--shadow);padding:.5rem;display:none;flex-direction:column;gap:.15rem;z-index:30}
.has-dd:hover .dd-menu,.has-dd:focus-within .dd-menu{display:flex}
.dd-menu a{padding:.7rem .85rem;border-radius:12px;font-weight:800;color:var(--navy)}
.dd-menu a:hover{background:var(--sage)}
.nav a.current,.dd-menu a.current{background:var(--navy);color:#fff}

/* ===== Daily lessons module (added) ===== */
.streak-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;background:linear-gradient(145deg,var(--navy-2),var(--teal));color:#fff;border-radius:var(--radius);padding:1.4rem 1.6rem;box-shadow:var(--shadow);margin-bottom:1.8rem}
.streak-flame{display:flex;align-items:center;gap:.8rem}
.streak-flame .fire{font-size:2.4rem;line-height:1}
.streak-flame b{font-family:"Fraunces",serif;font-size:2rem;display:block;line-height:1}
.streak-flame span{opacity:.85;font-weight:700;font-size:.85rem}
.streak-goal{font-weight:700;opacity:.92;max-width:30ch}
.day-rail{display:grid;grid-template-columns:repeat(7,1fr);gap:.7rem;margin-bottom:1.8rem}
.day-pill{position:relative;border:1.5px solid var(--line);background:#fff;border-radius:18px;padding:1rem .5rem;text-align:center;cursor:pointer;font-weight:900;color:var(--navy);transition:.14s}
.day-pill:hover{border-color:var(--teal);transform:translateY(-3px)}
.day-pill small{display:block;color:var(--muted);font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}
.day-pill .dn{font-family:"Fraunces",serif;font-size:1.5rem}
.day-pill.done{background:var(--sage);border-color:var(--teal)}
.day-pill.done::after{content:"✓";position:absolute;top:.4rem;right:.5rem;color:var(--teal);font-weight:900}
.day-pill.current{outline:3px solid rgba(44,140,130,.3)}
.lesson-card{background:#fff;border:1px solid rgba(23,52,95,.1);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(1.4rem,3vw,2.2rem);max-width:760px;margin:0 auto}
.lesson-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.4rem}
.lesson-top .badge{background:rgba(44,140,130,.12);color:var(--teal)}
.lesson-card h2{margin:.4rem 0 .2rem}
.lesson-sub{color:var(--muted);margin-bottom:1.2rem}
.play-all{display:inline-flex;align-items:center;gap:.5rem;border:0;background:var(--navy);color:#fff;font-weight:900;border-radius:999px;padding:.7rem 1.1rem;cursor:pointer;margin-bottom:1.2rem}
.play-all svg{width:16px;height:16px}
.line-list{display:grid;gap:.7rem}
.line{display:flex;align-items:center;gap:1rem;border:1px solid var(--line);border-radius:18px;padding:.9rem 1rem;transition:.14s}
.line.speaking{border-color:var(--teal);background:var(--sage)}
.line .listen{flex:none;width:46px;height:46px;border-radius:50%;border:0;background:var(--teal);color:#fff;cursor:pointer;display:grid;place-items:center;box-shadow:0 8px 18px rgba(44,140,130,.3)}
.line .listen:hover{background:var(--navy)} .line .listen svg{width:20px;height:20px}
.line .txt{flex:1;min-width:0}
.line .ar{font-family:"Noto Naskh Arabic",serif;font-size:1.6rem;color:var(--navy-2);direction:rtl;line-height:1.4}
.line .tr{color:var(--teal);font-weight:800;font-size:.95rem}
.line .en{color:var(--muted);font-size:.95rem}
.lesson-foot{margin-top:1.6rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.complete-btn{border:0;background:linear-gradient(145deg,var(--gold),var(--gold-deep));color:#fff;font-weight:950;border-radius:999px;padding:.95rem 1.5rem;cursor:pointer;box-shadow:0 16px 28px rgba(199,154,59,.3);font-size:1rem}
.complete-btn.done{background:var(--sage);color:var(--teal);box-shadow:none;cursor:default}
.celebrate{text-align:center;padding:1rem 0}
.celebrate .big{font-size:3rem}
.celebrate h3{font-family:"Fraunces",serif;font-size:1.6rem;margin:.4rem 0}
.celebrate p{color:var(--muted)}
@media(max-width:760px){.day-rail{grid-template-columns:repeat(4,1fr)}.line .ar{font-size:1.35rem}.dd-menu{position:static;box-shadow:none;border:0;padding:0;display:flex;background:transparent}.has-dd .dd-toggle{display:none}}

.has-dd.dd-open .dd-menu{display:flex}

/* week-grouped day map (added) */
.day-week{margin-bottom:1.6rem}
.day-week-label{font-family:"Fraunces",serif;font-weight:700;color:var(--navy-2);font-size:1.05rem;margin-bottom:.7rem}
.week-row{display:grid;grid-template-columns:repeat(7,1fr);gap:.7rem}
@media(max-width:760px){.week-row{grid-template-columns:repeat(4,1fr)}}


/* ===== Motion pass restored from uploaded modules ===== */
:root{--motion:cubic-bezier(.2,.75,.25,1)}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeScale{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes floatSoft{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes shineSweep{0%{transform:translateX(-120%)}100%{transform:translateX(220%)}}
.hero-copy{animation:fadeUp .75s var(--motion) both}
.hero-art{animation:fadeScale .9s var(--motion) .08s both}
.section-head,.culture,.quote,.streak-banner,.lesson-card{animation:fadeUp .75s var(--motion) both}
.feat-card,.path-card,.orientation-card,.grammar-card,.exercise-card,.product-card,.sample-card,.prod-card,.sound-card,.word-card,.theme-intro,.theme-list,details{animation:fadeUp .7s var(--motion) both}
.feat-grid > *:nth-child(2),.path-grid > *:nth-child(2),.product-grid > *:nth-child(2),.prod-teaser > *:nth-child(2){animation-delay:.06s}
.feat-grid > *:nth-child(3),.path-grid > *:nth-child(3),.product-grid > *:nth-child(3),.prod-teaser > *:nth-child(3){animation-delay:.12s}
.feat-grid > *:nth-child(4),.path-grid > *:nth-child(4){animation-delay:.18s}
.learning-board:after{content:"";position:absolute;top:-20%;left:-30%;width:40%;height:140%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:translateX(-120%);animation:shineSweep 5.5s ease-in-out infinite;pointer-events:none}
.calli-badge,.prod-card{animation:floatSoft 5s ease-in-out infinite}
.prod-card:nth-child(2){animation-delay:.8s}.prod-card:nth-child(3){animation-delay:1.4s}
.prod-card:hover .prod-cover,.product-card:hover .prod-cover{transform:scale(1.025)}
.prod-cover{transition:transform .35s ease}
.btn,.nav a,.nav-cta,.dd-toggle,.quiz-options button,.fill-box button,.play-all,.day-pill,.pattern,.line,.feat-card,.prod-card,.product-card,.path-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,color .18s ease}
.btn:hover,.nav-cta:hover,.play-all:hover,.day-pill:hover,.pattern:hover{transform:translateY(-2px)}
@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none !important;transition:none !important}}
