:root{
  --bg:#080808; --bg2:#111111; --card:#0d0d0d; --gold:#C9A24A; --gold2:#E0C078; --white:#fff; --gray:#A5A5A5;
  --line:rgba(201,162,74,.35); --hdr:72px;
  --font:'Cairo',system-ui,-apple-system,'Segoe UI',Tahoma,sans-serif;
  --disp:'Amiri','Cairo',serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--hdr);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--white);font-family:var(--font);font-size:17px;line-height:1.85;overflow-x:hidden}
img,video,svg{max-width:100%}
img{height:auto;display:block}
a{color:var(--gold2);text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,.track:focus-visible{outline:2px solid var(--gold2);outline-offset:3px}
ul{list-style:none;margin:0;padding:0}
h1,h2,h3{margin:0;line-height:1.35}
.wrap{width:min(1200px,100% - 32px);margin-inline:auto}
.narrow{width:min(820px,100% - 32px)}
.skip{position:absolute;inset-inline-start:-999px;top:8px;background:var(--gold);color:#000;padding:8px 14px;z-index:200}
.skip:focus{inset-inline-start:8px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 28px;border-radius:2px;font:700 1rem var(--font);cursor:pointer;border:1px solid var(--gold);transition:background .25s,color .25s,box-shadow .25s}
.btn.sm{min-height:42px;padding:0 20px;font-size:.95rem}
.btn-gold{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#0a0a0a}
.btn-gold:hover{box-shadow:0 0 22px rgba(201,162,74,.45)}
.btn-ghost{background:transparent;color:var(--gold2)}
.btn-ghost:hover{background:rgba(201,162,74,.12)}

/* header */
.site-header{position:fixed;inset:0 0 auto 0;height:var(--hdr);z-index:100;background:rgba(8,8,8,.9);backdrop-filter:blur(10px);border-bottom:1px solid rgba(201,162,74,.22)}
.hdr{display:flex;align-items:center;justify-content:space-between;height:100%;gap:16px}
.brand{display:flex;align-items:center;gap:12px;color:var(--white)}
.brand img{border-radius:50%}
.brand-txt{display:flex;flex-direction:column;line-height:1.25}
.brand-txt strong{font-size:1.05rem}
.brand-txt small{color:var(--gold);font-size:.75rem}
.nav-desktop{display:none}
.nav-desktop ul{display:flex;gap:4px}
.nav-desktop a{display:block;padding:8px 10px;color:#ddd;font-size:.92rem;font-weight:600;position:relative;white-space:nowrap}
.nav-desktop a::after{content:"";position:absolute;inset-inline:10px;bottom:2px;height:2px;background:var(--gold);transform:scaleX(0);transition:transform .3s}
.nav-desktop a:hover,.nav-desktop a.on{color:var(--gold2)}
.nav-desktop a:hover::after,.nav-desktop a.on::after{transform:scaleX(1)}
.burger{width:46px;height:46px;background:none;border:1px solid var(--line);border-radius:2px;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:0 12px;cursor:pointer}
.burger span{height:2px;background:var(--gold2);display:block}
@media(min-width:1100px){.nav-desktop{display:block}.burger{display:none}}
@media(max-width:1279px) and (min-width:1100px){.brand-txt small{display:none}.nav-desktop a{padding:8px 7px;font-size:.86rem}}

/* drawer (slides from the right in RTL) */
.drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:140;opacity:0;transition:opacity .3s}
.drawer-overlay.show{opacity:1}
.drawer{position:fixed;top:0;bottom:0;right:0;width:min(84vw,340px);background:var(--bg2);border-inline-start:1px solid var(--line);z-index:150;transform:translateX(100%);transition:transform .35s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;padding:16px 0 calc(16px + env(safe-area-inset-bottom));overflow-y:auto;visibility:hidden}
.drawer.open{transform:none;visibility:visible}
.drawer-top{display:flex;align-items:center;justify-content:space-between;padding:0 20px 14px;border-bottom:1px solid var(--line)}
.drawer-top img{border-radius:50%}
.drawer-close{width:44px;height:44px;background:none;border:1px solid var(--line);color:var(--gold2);cursor:pointer;display:grid;place-items:center}
.drawer ul{padding:8px 0;flex:1}
.drawer li a{display:block;padding:14px 24px;color:var(--white);font-weight:600;border-inline-start:3px solid transparent}
.drawer li a:hover,.drawer li a:active{background:rgba(201,162,74,.1);color:var(--gold2);border-inline-start-color:var(--gold)}
.drawer-foot{margin:0;padding:12px 24px 0;color:var(--gray);font-size:.85rem;text-align:start}
body.lock{overflow:hidden}

/* hero */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:calc(var(--hdr) + 24px) 0 120px;overflow:hidden;
  background:radial-gradient(900px 520px at 22% 48%,rgba(201,162,74,.16),transparent 65%),linear-gradient(180deg,#0c0c0c,#080808)}
.hero-bg{position:absolute;inset:0}
.hero-bg video,.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-bg::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.55) 60%,rgba(0,0,0,.75))}
.ridge{position:absolute;inset:auto 0 -1px 0;width:100%;height:clamp(110px,22vw,260px);z-index:2}
.hero-grid{position:relative;z-index:3;display:grid;gap:28px;align-items:center}
.hero-names{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 14px;color:var(--gold2);font-weight:700}
.hero-names span+span{color:var(--gold);font-weight:600;font-size:.95rem}
.hero h1{font-family:var(--disp);font-size:clamp(2.1rem,6.4vw,4.1rem);font-weight:700;line-height:1.3}
.slogan{margin:14px 0 0;color:var(--gold2);font-weight:600;font-size:1.05rem}
.hero-desc{margin:14px 0 26px;color:#d6d6d6;max-width:60ch}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.hero-crest{justify-self:center;width:min(60vw,440px)}
.hero-crest img{width:100%;border-radius:50%;box-shadow:0 0 60px rgba(201,162,74,.28),0 0 0 1px var(--line);animation:crest 1.2s ease-out both}
@keyframes crest{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}
@media(min-width:900px){.hero-grid{grid-template-columns:1.25fr .75fr}.hero-crest{width:min(36vw,470px)}}
@media(max-width:899px){.hero{padding-bottom:90px;align-items:flex-start}.hero-crest{order:-1;width:min(46vw,200px)}}

/* sections */
.sec{padding:clamp(48px,7vw,88px) 0}
.sec.alt{background:var(--bg2)}
.inner{padding:calc(var(--hdr) + 40px) 0 60px;min-height:70vh}
.sec-head{margin-bottom:clamp(24px,4vw,42px);max-width:760px}
.sec-en{display:block;color:var(--gold);font-size:.9rem;font-weight:600;margin-bottom:2px}
.sec-head h2{font-family:var(--disp);font-size:clamp(1.9rem,4.6vw,3rem);color:var(--gold2)}
.rule{display:block;width:72px;height:2px;margin:12px 0;background:linear-gradient(90deg,var(--gold),transparent)}
.sec-head p{margin:0;color:#cfcfcf}
.notice{padding:18px;border:1px dashed var(--line);color:var(--gray)}
.card{background:var(--card);border:1px solid var(--line);padding:22px 22px 24px}
.card h3{color:var(--gold2);font-size:1.25rem;margin-bottom:6px}
.card p{margin:0;color:#d4d4d4}

/* about */
.about-body{display:flex;justify-content:center;gap:24px}
.about-text{width:min(850px,100%);margin-inline:auto;text-align:center}.about-text p{margin:0 auto;color:#dcdcdc;max-width:70ch}

/* carousel (scroll-snap, touch-swipe friendly, RTL aware) */
.carousel{position:relative}
.track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:4px 2px 8px;overscroll-behavior-x:contain}
.track::-webkit-scrollbar{display:none}
.slide{flex:0 0 78%;scroll-snap-align:start;background:var(--card);border:1px solid var(--line);min-width:0;transition:border-color .3s,box-shadow .3s}
.slide:hover{border-color:var(--gold);box-shadow:0 0 26px rgba(201,162,74,.14)}
@media(min-width:640px){.slide{flex-basis:calc((100% - 14px)/2)}}
@media(min-width:960px){.track{gap:20px}.slide{flex-basis:calc((100% - 40px)/3)}}
@media(min-width:1200px){.slide.logo-card,.slide.service{flex-basis:calc((100% - 60px)/4)}}
.car-ctl{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:16px}
.car-btn{width:44px;height:44px;border:1px solid var(--gold);background:transparent;color:var(--gold2);cursor:pointer;display:grid;place-items:center;transition:background .2s}
.car-btn:hover:not(:disabled){background:rgba(201,162,74,.15)}
.car-btn:disabled{opacity:.3;cursor:default}
.dots{display:flex;gap:8px;align-items:center}
.dots button{width:9px;height:9px;padding:0;border-radius:50%;border:1px solid var(--gold);background:transparent;cursor:pointer;transition:width .25s,background .25s}
.dots button.on{width:24px;border-radius:5px;background:var(--gold)}
.car-ctl.single{display:none}

/* course */
.course .thumb{display:block;aspect-ratio:4/3;background:#151515;overflow:hidden}
.course .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.course:hover .thumb img{transform:scale(1.04)}
.course .body{padding:18px 18px 20px;display:flex;flex-direction:column;gap:8px}
.course h3{font-size:1.15rem}
.course h3 a{color:var(--white)}
.course p{margin:0;color:#c9c9c9;font-size:.98rem}
.price{color:var(--gold2)!important;font-weight:700;font-size:1.1rem!important}
.course .actions{margin-top:6px}
.ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100%;height:100%;min-height:120px;color:var(--gold);background:repeating-linear-gradient(135deg,#121212 0 12px,#161616 12px 24px)}
.ph em{font-style:normal;font-size:.85rem;color:var(--gray)}
.gem{color:var(--gold)}

/* logo cards (partners) */
.logo-card{padding:18px;text-align:center}
.logo-link{display:block;color:inherit}
.logo-box{aspect-ratio:3/2;display:grid;place-items:center;background:#0a0a0a;border-bottom:1px solid var(--line);margin:-18px -18px 14px;overflow:hidden}
.logo-box img{max-height:78%;max-width:78%;width:auto;object-fit:contain}
.logo-card h3{font-size:1.05rem;color:var(--white)}
.logo-card.is-ph{border-style:dashed}

/* services */
.service{padding:24px 20px}
.svc-ico{width:52px;height:52px;display:grid;place-items:center;border:1px solid var(--line);margin-bottom:14px;color:var(--gold);overflow:hidden}
.svc-ico img{width:100%;height:100%;object-fit:cover}
.service h3{font-size:1.15rem;color:var(--gold2);margin-bottom:6px}
.service p{margin:0;color:#cfcfcf;font-size:.98rem}

/* advisors */
.advisor .portrait{aspect-ratio:5/6;background:#141414;overflow:hidden}
.advisor .portrait img{width:100%;height:100%;object-fit:cover}
.advisor .body{padding:16px 16px 20px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.advisor h3{font-size:1.1rem}
.role{margin:0;color:var(--gold);font-size:.95rem}

/* chairman */
.chair{display:grid;gap:24px;align-items:start}
.chair-photo{margin:0;border:1px solid var(--gold);padding:8px;background:#0a0a0a;max-width:320px;width:100%;justify-self:center}
.chair-photo img{width:100%;aspect-ratio:5/6;object-fit:cover}
.chair-photo .ph{aspect-ratio:5/6}
blockquote{margin:0;padding-inline-start:20px;border-inline-start:2px solid var(--gold)}
blockquote p{margin:0 0 14px;color:#e2e2e2;font-size:1.08rem;max-width:62ch}
.who{display:flex;flex-direction:column;margin:18px 0}
.who strong{color:var(--gold2);font-size:1.2rem}
.who span{color:var(--gray)}
@media(min-width:860px){.chair{grid-template-columns:320px 1fr;gap:48px}}

/* locations */
.geo{display:grid;gap:14px;padding:20px;border:1px solid var(--line);background:radial-gradient(circle at 1px 1px,rgba(201,162,74,.22) 1px,transparent 1.5px) 0 0/22px 22px,var(--card)}
@media(min-width:760px){.geo{grid-template-columns:repeat(2,1fr);padding:28px}}
.loc{display:flex;gap:14px;background:rgba(8,8,8,.88);border:1px solid var(--line);padding:18px}
.loc.is-ph{border-style:dashed;grid-column:1/-1}
.pin{flex:none;color:var(--gold)}
.loc h3{font-size:1.15rem;color:var(--gold2)}
.loc p{margin:4px 0 10px;color:#cfcfcf}
.loc .addr{color:var(--white)}

/* contact */
.contact-grid{display:grid;gap:24px}
@media(min-width:900px){.contact-grid{grid-template-columns:1.4fr 1fr;gap:40px}}
.cform{display:grid;gap:14px;background:var(--card);border:1px solid var(--line);padding:clamp(16px,3vw,28px)}
.cform label{display:grid;gap:6px;font-weight:600;font-size:.95rem;color:#e6e6e6}
.cform input,.cform textarea{width:100%;background:#080808;color:var(--white);border:1px solid #3a3a3a;padding:12px 14px;font:inherit;border-radius:2px}
.cform input:focus,.cform textarea:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px rgba(201,162,74,.18)}
.row2{display:grid;gap:14px}
@media(min-width:620px){.row2{grid-template-columns:1fr 1fr}}
.hp{position:absolute;inset-inline-start:-9999px;height:0;overflow:hidden}
.cform .btn{justify-self:start}
.flash{margin:0;padding:12px 14px;border:1px solid;font-weight:600}
.flash.ok{border-color:#4caf7a;color:#8fe0b0}
.flash.err{border-color:#d9534f;color:#ff9b97}
.cinfo{padding:clamp(16px,3vw,28px);border:1px solid var(--line);background:var(--card);align-self:start}
.cinfo h3{color:var(--gold2);margin-bottom:12px}
.cinfo li{display:flex;flex-direction:column;padding:10px 0;border-bottom:1px solid #222}
.cinfo li span{color:var(--gray);font-size:.85rem}
.cinfo b{font-weight:600}
.social{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.social a{display:inline-block;padding:6px 14px;border:1px solid var(--line);font-size:.9rem}
.social a:hover{background:rgba(201,162,74,.12)}

/* footer */
.site-footer{background:#050505;border-top:1px solid var(--gold);padding-top:44px}
.foot-grid{display:grid;gap:28px;padding-bottom:30px}
.foot-brand img{border-radius:50%;margin-bottom:12px}
.foot-brand p{margin:0;color:var(--gray);font-size:.95rem;max-width:42ch}
.site-footer h3{color:var(--gold2);font-size:1.05rem;margin-bottom:10px}
.site-footer li{margin:4px 0}
.site-footer li a{color:#cfcfcf;font-size:.95rem}
.site-footer li a:hover{color:var(--gold2)}
.site-footer h3~h3{margin-top:18px}
@media(min-width:760px){.foot-grid{grid-template-columns:1.3fr 1fr 1fr 1fr}}
.foot-copy{border-top:1px solid #1d1d1d;padding:16px 0 calc(16px + env(safe-area-inset-bottom));text-align:center}
.foot-copy p{margin:0;color:var(--gray);font-size:.88rem}

/* inner pages */
.entry h1{font-family:var(--disp);color:var(--gold2);font-size:2.2rem;margin-bottom:16px}
.entry h1 a{color:inherit}
.entry-body{color:#dcdcdc}
.entry-thumb{max-width:320px;margin-bottom:18px;border:1px solid var(--gold);padding:6px}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* ---------------------------------------------------------------
   Centered corporate layout refinement — Saryat Al Jabal
   Keeps the existing brand palette and responsive carousel behavior.
---------------------------------------------------------------- */
.sec-head{
  width:min(860px,100%);
  max-width:860px;
  margin:0 auto clamp(28px,4.5vw,48px);
  text-align:center;
}
.sec-en{ text-align:center; letter-spacing:.08em; }
.sec-head h2{ text-align:center; }
.rule{ margin:14px auto 16px; }
.sec-head p{ max-width:72ch; margin-inline:auto; text-align:center; }

/* Center section content without forcing long paragraphs into narrow columns. */
.about-body{ width:min(1040px,100%); margin-inline:auto; }
.about-text{ text-align:center; }
.about-text p{ max-width:78ch; margin:0 auto 14px; }
.vm{ align-items:stretch; }
.vm .card{ text-align:center; }
.values{ justify-items:center; }
.values li{ padding-inline:20px; }
.values li::before{ inset-inline-start:4px; }

/* Card copy and imagery are visually centered in every carousel. */
.course .body{ align-items:center; text-align:center; }
.course .body > p{ max-width:48ch; }
.course .actions{ justify-content:center; }
.service{ text-align:center; display:flex; flex-direction:column; align-items:center; }
.service p{ max-width:38ch; }
.svc-ico{ margin:0 auto 16px; width:76px; height:76px; }
.logo-card{ text-align:center; }
.advisor .body{ align-items:center; text-align:center; }
.advisor .portrait{ width:100%; }

/* Keep the chairman's message balanced and centered rather than pushed to one side. */
.chair{ width:min(1000px,100%); margin-inline:auto; justify-items:center; text-align:center; }
.chair-photo{ max-width:300px; }
.chair-text{ width:100%; display:flex; flex-direction:column; align-items:center; }
.chair-text blockquote{ width:min(760px,100%); padding:0; border:0; }
.chair-text blockquote p{ max-width:70ch; margin-inline:auto; }
.who{ align-items:center; }

/* Locations and contact form sit in the visual center of their sections. */
.geo{ width:min(1000px,100%); margin-inline:auto; }
.loc{ align-items:center; }
.contact-grid{ width:min(1040px,100%); margin-inline:auto; }
.cform{ width:100%; }
.cform .btn{ justify-self:center; min-width:180px; }
.cinfo{ text-align:center; }
.cinfo li{ align-items:center; }
.social{ justify-content:center; }

/* Hero copy is centered on small screens; desktop keeps the cinematic two-column composition. */
@media(max-width:899px){
  .hero-copy{ text-align:center; }
  .hero-names,.hero .actions{ justify-content:center; }
  .hero-desc{ margin-inline:auto; }
}
@media(max-width:639px){
  .sec{ padding:52px 0; }
  .sec-head{ margin-bottom:28px; }
  .sec-head h2{ font-size:clamp(1.8rem,8vw,2.35rem); }
  .slide{ flex-basis:84%; }
  .chair-photo{ max-width:240px; }
  .loc{ flex-direction:column; text-align:center; }
  .loc .btn{ margin-inline:auto; }
  .row2{ grid-template-columns:1fr; }
}
.about-brand-mark{display:flex;justify-content:center;align-items:center;margin:0 auto 8px;}
.about-brand-mark img{width:clamp(112px,18vw,190px);height:auto;aspect-ratio:1;object-fit:contain;border-radius:50%;filter:drop-shadow(0 0 22px rgba(201,162,74,.2));}
@media(min-width:900px){.about-brand-mark{grid-column:1/-1;margin-bottom:0;}}


/* ---------------------------------------------------------------
   Global RTL + true centered layout fix
   Ensures the entire theme is anchored correctly for Arabic content.
---------------------------------------------------------------- */
html, body { direction: rtl; }
body { text-align: center; }
.site-header, .hdr, .nav-desktop, .nav-desktop ul,
.drawer, .drawer-top, .drawer ul { direction: rtl; }

/* Center every main section's inner content and prevent left drift. */
.sec > .wrap,
.inner > .wrap,
.hero > .wrap,
.site-footer > .wrap {
  width: min(1200px, calc(100% - 32px));
  margin-left: auto;
  margin-right: auto;
}
.sec, .sec .wrap { text-align: center; }
.sec-head { margin-left: auto !important; margin-right: auto !important; text-align: center !important; }
.sec-head > *, .sec-head h2, .sec-head p { text-align: center !important; }
.about-body, .vm, .chair, .contact-grid, .geo { margin-left: auto !important; margin-right: auto !important; }
.about-text, .about-text p, .vm .card, .vm .card p,
.course, .course .body, .service, .advisor, .advisor .body,
.chair, .chair-text, .chair-text blockquote, .chair-text blockquote p,
.geo, .loc, .contact-grid, .cform, .cinfo, .site-footer { text-align: center; }

/* Center grid/flex children rather than letting RTL alignment pin them to an edge. */
.vm .card, .course .body, .service, .advisor .body,
.chair-text, .cinfo, .cform { align-items: center; }
.course .actions, .hero .actions, .social, .hero-names { justify-content: center; }
.hero-copy { text-align: center; }
.hero-desc { margin-left: auto; margin-right: auto; }
.hero-grid { direction: rtl; }
.hero-crest { justify-self: center; }

/* Keep Arabic form controls readable while keeping the form itself centered. */
.cform label { text-align: center; width: 100%; }
.cform input, .cform textarea { direction: rtl; text-align: right; }
.cform .btn { justify-self: center; }
.cinfo li { align-items: center; }

/* Carousel tracks retain correct RTL scrolling and centered cards. */
.carousel, .track { direction: rtl; }
.slide { text-align: center; }
.logo-card, .logo-card h3, .service h3, .service p,
.advisor h3, .advisor .role, .course h3, .course p { text-align: center; }

/* Footer columns and all inner-page content stay centered. */
.foot-grid { justify-items: center; text-align: center; }
.foot-brand, .site-footer section, .site-footer nav { text-align: center; }
.entry, .entry-body { text-align: center; }
.entry-thumb { margin-left: auto; margin-right: auto; }


/* Featured single training course: centered below international partnerships */
.course-feature-section .course-feature-card{
  width:min(620px,100%);
  margin:0 auto;
  overflow:hidden;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius, 2px);
  text-align:center;
  transition:border-color .3s,box-shadow .3s;
}
.course-feature-section .course-feature-card:hover{
  border-color:var(--gold);
  box-shadow:0 0 28px rgba(201,162,74,.16);
}
.course-feature-thumb{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#151515;
}
.course-feature-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.course-feature-card:hover .course-feature-thumb img{transform:scale(1.035)}
.course-feature-body{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 26px 28px;text-align:center}
.course-feature-body h3{font-size:clamp(1.2rem,2.5vw,1.55rem);margin:0}
.course-feature-body h3 a{color:var(--white)}
.course-feature-body p{max-width:58ch;margin:0 auto;color:#d0d0d0;line-height:1.9}
.course-feature-body .price{color:var(--gold2)!important;font-weight:700;font-size:1.15rem!important}
.course-feature-body .actions{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}
@media(max-width:639px){
 .course-feature-body{padding:19px 16px 22px}
 .course-feature-thumb{aspect-ratio:4/3}
}


/* ===============================================================
   Clickable detail cards + editable single-item detail pages
   =============================================================== */
.card-detail-link{
  display:flex;
  width:100%;
  height:100%;
  flex-direction:column;
  align-items:center;
  color:inherit;
  text-decoration:none;
}
.card-detail-link:hover,
.card-detail-link:focus{color:inherit;text-decoration:none}
.card-more{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:12px;
  color:var(--gold2);
  font-size:.9rem;
  font-weight:700;
  transition:gap .2s,color .2s;
}
.card-detail-link:hover .card-more{color:#fff;gap:6px}
.service-card-link{display:flex;flex-direction:column;align-items:center;height:100%;color:inherit;text-decoration:none}
.service-card-link:hover{color:inherit}
.service-card-link .svc-ico{margin-inline:auto 0}
.service-card-link h3,.service-card-link p{text-align:center}
.advisor-card-link .body{align-items:center;text-align:center}
.advisor-card-link .portrait{width:100%}
.location-card-link{display:flex;align-items:flex-start;gap:14px;width:100%;height:100%;color:inherit;text-decoration:none}
.location-card-link:hover{color:inherit}
.location-card-link img{width:100%;height:auto;max-height:190px;object-fit:cover;margin-bottom:12px}
.location-card-link h3{text-align:right;color:var(--gold2)}
.location-card-link p{text-align:right}
.logo-card .logo-link{display:flex;flex-direction:column;align-items:center;height:100%;width:100%;color:inherit;text-decoration:none}
.logo-card .logo-link:hover{color:inherit}

/* Detail pages for services, partners, advisors and locations */
.detail-page{background:radial-gradient(ellipse at 50% 0,rgba(201,162,74,.09),transparent 48%),var(--bg)}
.detail-wrap{max-width:1040px}
.detail-card{
  max-width:900px;
  margin:0 auto;
  padding:clamp(22px,5vw,54px);
  background:linear-gradient(145deg,#151515,#0b0b0b);
  border:1px solid var(--line);
  box-shadow:0 24px 70px rgba(0,0,0,.28);
  text-align:center;
}
.detail-kicker{color:var(--gold);font-size:.78rem;letter-spacing:.18em;font-weight:700;direction:ltr;margin-bottom:12px}
.detail-card h1{color:var(--gold2);font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.45;margin:0 auto}
.detail-rule{display:block;width:88px;height:2px;margin:18px auto 26px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.detail-thumb{max-width:720px;margin:0 auto 26px;border:1px solid var(--line);padding:8px;background:#090909}
.detail-thumb img{display:block;width:100%;max-height:480px;object-fit:contain;margin:auto}
.detail-role{font-size:1.05rem;margin:0 0 14px}
.detail-address{color:var(--gold2);margin:0 0 18px}
.detail-content{max-width:760px;margin:0 auto;color:#e0e0e0;font-size:1.06rem;line-height:2.05;text-align:center}
.detail-content p{margin:0 auto 1em}
.detail-content ul,.detail-content ol{display:inline-block;text-align:right;margin:0 auto 1em}
.detail-actions{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin-top:30px}
.detail-actions .btn{min-width:150px}

/* Highlighted single course card on the homepage */
.course-feature-section{position:relative}
.course-feature-section .course-feature-card{
  position:relative;
  width:min(760px,100%);
  border:1px solid #e4c477;
  background:linear-gradient(135deg,#e1c27b 0%,#c49a42 48%,#9f772b 100%);
  box-shadow:0 18px 55px rgba(201,162,74,.16),inset 0 1px 0 rgba(255,255,255,.35);
}
.course-feature-section .course-feature-card:hover{
  border-color:#f4dc9d;
  box-shadow:0 22px 65px rgba(201,162,74,.25);
}
.course-card-hit{position:absolute;inset:0;z-index:1;border-radius:inherit}
.course-feature-thumb,.course-feature-body{position:relative;z-index:2}
.course-feature-thumb{border-bottom:1px solid rgba(0,0,0,.2)}
.course-feature-body{color:#17130b}
.course-feature-body h3,.course-feature-body h3 a{color:#17130b!important;font-weight:800}
.course-feature-body p{color:#272014!important}
.course-feature-body .price{color:#17130b!important}
.course-feature-body .btn-ghost{border-color:#211a0d;color:#211a0d}
.course-feature-body .btn-ghost:hover{background:#211a0d;color:#f4dfaa}
.course-feature-body .btn-gold{background:#17130b;border-color:#17130b;color:#e8cb86}
.course-feature-body .btn-gold:hover{background:#30230d;color:#fff}
.course-feature-body .actions a{position:relative;z-index:3}

/* Shopify-inspired WooCommerce course/product page */
.sj-product-inner{padding-top:calc(var(--hdr) + 34px)}
.sj-product-topline{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.sj-breadcrumb{margin:0;color:#aaa;font-size:.88rem}
.sj-breadcrumb a{color:var(--gold2)}
.sj-product-brand{color:var(--gold);font-size:.76rem;letter-spacing:.16em;direction:ltr}
.sj-product-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(24px,5vw,64px);align-items:start;padding:clamp(18px,3vw,34px);background:linear-gradient(145deg,#151515,#0b0b0b);border:1px solid var(--line);box-shadow:0 20px 65px rgba(0,0,0,.3)}
.sj-product-gallery{min-width:0}
.sj-product-gallery .woocommerce-product-gallery{float:none!important;width:100%!important;max-width:none!important;margin:0!important}
.sj-product-gallery .woocommerce-product-gallery__wrapper{border:1px solid var(--line);background:#080808}
.sj-product-gallery .woocommerce-product-gallery__image img{width:100%;height:auto;object-fit:contain}
.sj-product-gallery .flex-control-thumbs{display:flex;gap:10px;margin-top:12px!important}
.sj-product-gallery .flex-control-thumbs li{width:78px!important;border:1px solid var(--line);padding:3px}
.sj-product-gallery .flex-control-thumbs img{opacity:.72}
.sj-product-gallery .flex-control-thumbs img.flex-active{opacity:1;border:1px solid var(--gold)}
.sj-product-summary{float:none!important;width:auto!important;margin:0!important;color:#e7e1d4}
.sj-product-label{display:inline-block;padding:7px 13px;margin-bottom:14px;background:rgba(201,162,74,.13);border:1px solid var(--line);color:var(--gold2);font-size:.82rem}
.sj-product-summary .product_title{color:var(--gold2);font-size:clamp(1.65rem,3.5vw,2.5rem);line-height:1.5;margin:0 0 16px}
.sj-product-summary .price{color:var(--gold2)!important;font-size:1.4rem!important;margin:18px 0}
.sj-product-summary .woocommerce-product-details__short-description{color:#d0d0d0;line-height:2;font-size:1rem}
.sj-product-summary .stock{color:var(--gold2)}
.sj-product-summary form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:24px 0!important;padding:20px;background:rgba(201,162,74,.07);border:1px solid var(--line)}
.sj-product-summary form.cart .quantity{margin:0!important}
.sj-product-summary .quantity .qty{height:48px;min-width:72px;background:#090909;color:#fff;border:1px solid var(--line);border-radius:0}
.sj-product-summary .single_add_to_cart_button,.sj-product-summary .button{
  min-height:48px!important;padding:12px 26px!important;background:var(--gold)!important;color:#111!important;border:1px solid var(--gold)!important;border-radius:0!important;font-weight:800!important
}
.sj-product-summary .single_add_to_cart_button:hover,.sj-product-summary .button:hover{background:var(--gold2)!important;color:#080808!important}
.sj-product-summary .product_meta{border-top:1px solid var(--line);padding-top:16px;color:#aaa;font-size:.9rem}
.sj-product-summary .product_meta a{color:var(--gold2)}
.sj-product-summary .woocommerce-product-rating a{color:var(--gold2)}
.sj-product-trust{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.sj-product-trust span{padding:9px 12px;border:1px solid var(--line);color:#c9c0ad;font-size:.82rem}
.sj-product-extra{margin-top:36px}
.sj-product-extra .woocommerce-tabs{padding:26px;background:#101010;border:1px solid var(--line)}
.sj-product-extra .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 20px!important}
.sj-product-extra .woocommerce-tabs ul.tabs:before{border-color:var(--line)!important}
.sj-product-extra .woocommerce-tabs ul.tabs li{background:#171717!important;border:1px solid var(--line)!important;border-radius:0!important}
.sj-product-extra .woocommerce-tabs ul.tabs li.active{background:#252014!important;border-bottom-color:#252014!important}
.sj-product-extra .woocommerce-tabs ul.tabs li a{color:var(--gold2)!important}
.sj-product-extra .woocommerce-Tabs-panel{color:#ddd;line-height:2}
.sj-product-extra .related>h2,.sj-product-extra .upsells>h2{color:var(--gold2);text-align:center}
@media(max-width:800px){
 .sj-product-layout{grid-template-columns:1fr;padding:16px}
 .sj-product-gallery{max-width:100%}
 .sj-product-summary form.cart{align-items:stretch}
 .sj-product-summary .single_add_to_cart_button{flex:1}
 .sj-product-topline{justify-content:center}
 .sj-product-trust{justify-content:center}
}
@media(max-width:520px){
 .detail-card{padding:22px 16px}
 .detail-actions{flex-direction:column}
 .detail-actions .btn{width:100%}
 .course-feature-section .course-feature-card{width:100%}
 .course-feature-body .actions{width:100%}
 .course-feature-body .actions .btn{flex:1}
}

.course-feature-body{pointer-events:none}
.course-feature-body a{pointer-events:auto}
