/* Shared site styles (added on top of each approved page's own styles). */
a.lk{text-decoration:none}
.menu a.lk{color:inherit}.menu a.lk.on{color:var(--w,#6A0B23)}
a.lk.btn,a.lk.btn2,a.lk.zbtn2,a.lk.cta{display:inline-block;text-decoration:none}
[data-toast],[data-print]{cursor:pointer}
.v-err{color:#9a1b33;font-size:12.5px;line-height:1.7;margin:-6px 4px 10px;font-weight:500}
.v-err a{color:#6A0B23;font-weight:700;text-decoration:underline;margin-inline-start:6px}
.v-bad{border-color:#c0392b!important;background:#fff6f5!important}
.nl2 .f input.in,.nl3 .f input.in{border:0;outline:0;font-family:inherit;color:#3d0f1b}
.nl3{flex-wrap:wrap}.nl3 .v-err{flex-basis:100%;text-align:center}
.nl2 .v-err,.nl3 .v-err{margin:8px 0 0;color:#ffd6dc;text-align:center}
.nl2 .v-err a,.nl3 .v-err a{color:#fff}
.pvcur{font-size:12.5px;line-height:1.8;color:#8a6a72;font-weight:400;margin:6px 0 0}
.zpricebox .pvcur{color:inherit;opacity:.85;font-size:12.5px}
.bt+.pvcur,.row+.pvcur{margin:8px 0 0}
.h .nn-logo{display:inline-flex}
:focus-visible{outline:3px solid #6A0B23;outline-offset:2px}
.skip{position:absolute;right:-9999px}.skip:focus{right:12px;top:12px;z-index:100000;background:#6A0B23;color:#F5F0ED;padding:8px 14px;border-radius:10px}

/* announcement bar */
.nn-ann{background:#6A0B23;color:#F5F0ED;text-align:center;font:500 13.5px 'Readex Pro',sans-serif;padding:9px 16px;line-height:1.7}

/* mobile menu */
.nn-burger{display:none;width:42px;height:42px;border-radius:12px;border:2px solid #efc3cb;background:transparent;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:0}
.nn-burger span{display:block;width:18px;height:2.4px;border-radius:2px;background:#6A0B23}
.nn-drawer{background:#F5F0ED;border-bottom:2px solid #efc3cb;padding:8px 16px 16px}
.nn-drawer nav{display:flex;flex-direction:column}
.nn-drawer a{display:block;padding:13px 6px;font:500 16px 'Readex Pro',sans-serif;color:#3d0f1b;text-decoration:none;border-bottom:1px solid #efc3cb}
.nn-drawer a.on{color:#6A0B23;font-weight:700}
.nn-drawer a:last-child{border-bottom:0;color:#6A0B23;font-weight:700}
@media(max-width:760px){.nn-burger{display:inline-flex}.h .pill{display:none}}
@media(min-width:761px){.nn-drawer{display:none!important}}

/* optional page banner (admin «الصور» > واجهات الصفحات) */
.nn-banner{height:300px;border-radius:32px;background-size:cover;background-repeat:no-repeat;margin:0 0 28px}
@media(max-width:760px){.nn-banner{height:190px;border-radius:24px;margin-bottom:20px}}

/* toast */
#nn-toast{position:fixed;bottom:84px;left:50%;transform:translateX(-50%);background:#3f0615;color:#F5F0ED;padding:10px 18px;border-radius:99px;font:400 13.5px 'Readex Pro',sans-serif;z-index:100001;opacity:0;transition:opacity .3s;pointer-events:none;max-width:90vw;text-align:center}

/* WhatsApp help button */
.nn-wa{position:fixed;bottom:18px;left:18px;z-index:9990;width:58px;height:58px;border-radius:50%;background:#6A0B23;display:grid;place-items:center;box-shadow:0 6px 18px rgba(63,6,21,.3);text-decoration:none}
.nn-wa svg{width:30px;height:30px;fill:#F5F0ED}
.nn-wa span{position:absolute;left:66px;white-space:nowrap;background:#F5F0ED;color:#6A0B23;border:2px solid #efc3cb;border-radius:99px;padding:5px 12px;font:600 12.5px 'Readex Pro',sans-serif;opacity:0;transform:translateX(6px);transition:.2s;pointer-events:none}
.nn-wa:hover span,.nn-wa:focus span{opacity:1;transform:none}
@media print{.nn-wa,#nn-cookie,.nn-pop,#nn-toast{display:none!important}}

/* cookie banner (board «Cookies») */
#nn-cookie{position:fixed;right:24px;left:24px;bottom:24px;z-index:99995;background:#FBF8F6;border:2px solid #efc3cb;border-radius:22px;box-shadow:0 18px 44px rgba(63,6,21,.18);padding:20px 22px;display:flex;gap:24px;align-items:center;font-family:'Readex Pro',sans-serif;max-width:1100px;margin:0 auto;direction:rtl}
#nn-cookie p{margin:0;flex:1;font-size:14.5px;line-height:1.9;color:#4a2530;font-weight:300}
#nn-cookie p a{color:#6A0B23;font-weight:600}
#nn-cookie .bt{display:flex;gap:10px;flex:none}
@media(max-width:760px){#nn-cookie{right:12px;left:12px;bottom:12px;flex-direction:column;align-items:stretch;gap:14px;padding:18px}#nn-cookie .bt button{flex:1}}

/* buttons used by injected UI */
.nn-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#6A0B23;color:#F5F0ED;font:700 15px 'Readex Pro',sans-serif;padding:12px 22px;border:0;border-radius:16px;box-shadow:0 4px 0 #3f0615;text-decoration:none;cursor:pointer;min-height:46px;min-width:110px}
.nn-btn.o{background:#F5F0ED;color:#6A0B23;border:2px solid #6A0B23;box-shadow:none}
.nn-btn.block{display:flex;width:100%}
.nn-btn[disabled]{opacity:.6;cursor:wait}

/* pop-ups (gift, course details PDF, short-course interest) */
.nn-pop{position:fixed;inset:0;background:rgba(61,15,27,.45);display:flex;align-items:center;justify-content:center;padding:16px;z-index:99999;overflow:auto}
.nn-pop[hidden]{display:none}
.nn-pop .box{position:relative;background:#FBF8F6;border:2px solid #efc3cb;border-radius:28px;width:100%;max-width:440px;overflow:hidden;box-shadow:0 24px 60px rgba(63,6,21,.3);direction:rtl;text-align:right;font-family:'Readex Pro',sans-serif;color:#3d0f1b;max-height:94vh;overflow-y:auto}
.nn-pop .top{background:#6A0B23;padding:18px 26px}
.nn-pop .top img{height:40px;display:block}
.nn-pop .bd{padding:24px 26px 26px}
.nn-pop h2,.nn-pop h3{margin:0 0 8px;font-size:22px;font-weight:700;line-height:1.5}
.nn-pop p{margin:0 0 14px;font-size:14.5px;font-weight:300;line-height:1.9;color:#6b4a52}
.nn-pop .x{position:absolute;top:12px;left:14px;width:34px;height:34px;border-radius:99px;border:0;background:#F9D0D6;color:#6A0B23;font-size:20px;cursor:pointer;line-height:1}
.nn-pop .top+.x,.nn-pop .x.on-wine{background:rgba(255,255,255,.18);color:#fff}
.nn-pop label.f{display:block;font-size:14px;font-weight:600;margin:0 0 6px}
.nn-pop input[type=email],.nn-pop input[type=text],.nn-pop input[type=tel]{width:100%;font:300 15px 'Readex Pro',sans-serif;background:#F5F0ED;border:2px solid #efc3cb;border-radius:14px;padding:13px 16px;color:#3d0f1b;min-height:48px;margin-bottom:12px}
.nn-pop input:focus{outline:0;border-color:#6A0B23}
.nn-pop .line{font-size:12.5px;color:#6b4a52;line-height:1.8;margin:0 0 14px;font-weight:300}
.nn-pop .no{display:block;text-align:center;margin-top:12px;font-size:13px;color:#6b4a52;background:none;border:0;cursor:pointer;width:100%;font-family:inherit}
.nn-pop .codebox{background:#F9D0D6;border-radius:16px;padding:14px;text-align:center;font-weight:700;font-size:22px;color:#6A0B23;letter-spacing:2px;direction:ltr;margin:0 0 14px}
.nn-pop .err{color:#9a1b33;font-size:13px;margin:-6px 0 10px;font-weight:500}

/* home hero rotation */
.hero3 img.wm{transition:opacity .6s}

/* blog filter/search */
.nn-hide{display:none!important}
.nn-empty{text-align:center;color:#6b4a52;padding:30px 0;font-weight:300}

/* mobile: inline two-column grids from the design collapse to one column */
@media(max-width:760px){
 .pg [style*="grid-template-columns"]{grid-template-columns:1fr!important}
 .zsum{order:-1}
}
footer .bar nav a{color:inherit;text-decoration:none}
footer .bar nav a:hover,footer .col a:hover{text-decoration:underline}

/* ===================== Mobile layer for the approved desktop design ===================== */
@media(max-width:760px){
 body{overflow-x:hidden}
 .wrap{padding-left:16px!important;padding-right:16px!important}
 .band{padding-top:40px!important;padding-bottom:46px!important}
 h1.zbig,.zart h1,.ah h1,.ph1 h1,.hero h1,.ex-start h1{font-size:30px!important;line-height:1.45}
 .zlead,.ex-start .lead{font-size:15px!important}
 .sh h2{font-size:26px!important}.sh p{font-size:14.5px}
 /* grids -> one column */
 .ab,.ab2 .ab,.ag,.ah,.big,.big .a,.cards,.care-teaser,.cg,.cg.rev,.cg3,.cg3.c4,.g2,.gd,.grid,.hbox,.hero,.how,.num,.pd,.ph1,.pil,.story,.tc,.tg2,.two,.vg,.wa,.zcg,.zfeat,.zg2,.zg3,.zg4,.zgr,.zhero2,.zrel,.ztc-facts,.ztcg,.zart,.zcta1,.ex-rules,.shn,.zfg3,.zfg4{grid-template-columns:1fr!important;gap:16px!important}
 .pil{grid-template-columns:1fr 1fr!important}
 .zfg2{grid-template-columns:1fr 1fr!important}
 .num{grid-template-columns:repeat(var(--n,3),1fr)!important;gap:8px!important}.nm{padding:16px 8px!important}.nm b{font-size:22px!important}.nm span{font-size:12px!important}
 .cols{grid-template-columns:1fr 1fr!important}
 /* home hero (absolute layout on desktop) */
 .hero3{height:auto!important;padding:26px 16px 0;display:flex;flex-direction:column}
 .hero3 .tx{position:static!important;text-align:right;padding:0;order:1}
 .hero3 h1{font-size:34px!important}
 .hero3 p{font-size:15px!important;margin-bottom:18px!important}
 .hero3 .bs{flex-wrap:wrap}
 .hero3 .wm{position:relative!important;left:auto!important;top:auto!important;height:340px!important;align-self:center;order:2;margin-top:10px}
 .hero3 .stats{position:relative!important;order:3;grid-template-columns:1fr 1fr!important;margin:0 -16px}
 .hero3 .stats div{border-left:0!important;border-bottom:2px solid rgba(245,240,237,.9);padding:14px 8px!important;font-size:12.5px!important}
 .hero3 .stats b{font-size:22px!important}
 .hero3 .stats div:last-child:nth-child(odd){grid-column:1/-1}
 .hero3:after,.hero3:before{display:none}
 /* social bar */
 .sb .in{grid-template-columns:1fr!important;padding:20px 16px!important;gap:10px!important}
 .sb .tt2{padding-left:0!important}
 /* service cards */
 .sc .pic{height:220px!important}
 .mc{flex-direction:column!important}.mc .cv{width:100%!important;min-height:200px!important}
 .big .cov{height:260px!important;margin:12px!important}
 .shn{padding:24px 20px!important;text-align:center}.shn .big2{font-size:40px!important}
 .ab .im2,.ab2 .im2{height:340px!important}.ab .im{height:300px!important}
 .ah{padding:24px 0 30px!important}.ah .im{height:380px!important}
 .ah .bs,.ph1 .bs,.hbox .bs,.zbtns{display:flex;flex-wrap:wrap;gap:10px}
 .ph1{padding:24px 0!important}.ph1 .im{height:240px!important}
 .hero{padding:24px 0!important}.hero .ph{height:240px!important}
 .zhero2 .zimg{height:300px!important;border-radius:28px!important}
 .zcover{height:230px!important;border-radius:22px!important}
 .zfig .zp1,.zfig .zph2,.zfg2 .zph2{height:220px!important}.zfig .zpp{height:340px!important}
 .zfeat .ztx{padding:22px 20px!important}
 .zfeat .zim{min-height:220px!important}
 .ztc,.zprice,.vc,.zform,.bx,.rs-letter,.ex-card{padding:22px 18px!important;border-radius:24px!important}
 .zpricebox b,.zprice .zpb,.vp b{font-size:32px!important}
 .zcta1{padding:24px 20px!important;text-align:center}
 .zsear{flex-direction:column}
 .zside{order:2}
 .ztb td:first-child{width:auto!important}
 .ztw,.ztb{display:block;overflow-x:auto;max-width:100%}
 .nl3{flex-direction:column;align-items:stretch;padding:22px 18px!important}.nl3 h3{white-space:normal!important;text-align:center}
 .nl2 .f,.nl3 .f,.nl .f{flex-direction:column}
 .nl2{padding:44px 16px!important}
 .st{flex-direction:column;align-items:stretch;text-align:center}
 .prom h2{font-size:24px!important}
 .gd .tx{padding:26px 20px!important}
 .zletter{transform:none!important}
 .zstp{flex-wrap:wrap;gap:8px}
 .ex-opt{padding:14px 14px!important;font-size:14.5px!important}
 .pd{padding:18px!important}
 .hbox h1{font-size:34px!important}.hbox .tx{padding:28px 20px 30px!important}
 .stats{position:relative!important;grid-template-columns:1fr 1fr!important}
 .zrow span{width:auto!important}
 table{max-width:100%}
 img{max-width:100%}
}
/* live prices keep the look of the approved price text */
[data-p]{font-size:inherit!important;font-weight:inherit!important;color:inherit!important;display:inline!important;margin:0!important;padding:0!important;background:none!important;line-height:inherit!important}

/* review 2026-10-16: hidden always hides; code field placeholder fits on small phones */
[hidden]{display:none!important}
#pv-code:placeholder-shown,#c:placeholder-shown{direction:rtl}
@media(max-width:480px){#pv-apply{padding:14px 16px!important}#pv-code{min-width:0}}
/* review 2026-10-16: on phones the order summary / side column scrolls with the page
   (a sticky card covered the name and code fields on the test checkout) */
@media(max-width:760px){ .zsum,.zside{position:static!important;top:auto!important} }
