/* ─── TOKENS — exact match to styles.css / architlohia.com ─── */
:root{
  --navy:#1B365D;--navy-deep:#0F1F38;--navy-soft:#2A4A78;
  --orange:#F39200;--orange-deep:#DB7E00;--orange-soft:#FFE9C9;
  --paper:#FAF6EE;--paper-2:#F2ECDF;
  --ink:#1A1F2E;--ink-2:#4A5063;--ink-3:#7B8194;
  --line:rgba(27,54,93,.14);--line-s:rgba(27,54,93,.32);
  --serif:'montserrat',system-ui,sans-serif;
  --sans:'montserrat',system-ui,sans-serif;
  --mono:'montserrat',system-ui,sans-serif;
  --wrap:1240px;
  --ease:cubic-bezier(.4,0,.2,1);
  --shadow-md:0 4px 14px rgba(27,54,93,.08),0 1px 2px rgba(27,54,93,.06);
  --shadow-lg:0 24px 60px rgba(15,31,56,.18),0 4px 12px rgba(15,31,56,.08);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);font-size:17px;line-height:1.55;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
ul{list-style:none;padding:0}
em{font-style:italic;font-weight:700}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
.sec{padding:0 0 72px}
.sec.dark{background:var(--paper-2)}

/* ─── TYPE — exact sizes from styles.css ─── */
.display{font-family:var(--serif);font-weight:800;font-size:clamp(56px,7.5vw,110px);line-height:1.02;letter-spacing:-.02em;color:var(--navy-deep)}
.h2{font-family:var(--serif);font-weight:700;font-size:clamp(36px,4.4vw,58px);line-height:1.08;letter-spacing:-.02em;color:var(--navy-deep)}
.h2 em,.display em{color:var(--orange)}
.body-lg{font-size:18px;color:var(--ink-2);line-height:1.65}

/* ─── BUTTONS — pill shape (border-radius:999px per styles.css) ─── */
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 22px;border-radius:999px;font-weight:600;font-size:15px;letter-spacing:.005em;transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s,color .2s;white-space:nowrap;border:none;cursor:pointer}
.btn-primary{background:var(--orange);color:#fff;box-shadow:0 8px 22px rgba(243,146,0,.28)}
.btn-primary:hover{background:var(--orange-deep);transform:translateY(-1px)}
.btn-ghost{color:#fff;border:1.5px solid rgba(255,255,255,.55)}
.btn-ghost:hover{background:rgba(255,255,255,.1)}
.btn-dark{color:var(--navy-deep);border:1.5px solid var(--line-s)}
.btn-dark:hover{background:var(--navy-deep);color:#fff;border-color:var(--navy-deep)}

/* ─── REVEAL ─── */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s var(--ease),transform .65s var(--ease)}
.reveal.in{opacity:1;transform:none}

/* ─── READING BAR ─── */
#rbar{position:fixed;top:0;left:0;z-index:999;height:3px;width:0;background:linear-gradient(90deg,var(--orange),#ffba4d);pointer-events:none}

/* ══════════════════════════════════════════════
   NAV
══════════════════════════════════════════════ */
#nav{position:fixed;top:0;left:0;right:0;z-index:300;transition:background .3s,box-shadow .3s; background-color: #ffffffa3;}
#nav.scrolled{background:rgba(250,246,238,.97);box-shadow:0 1px 0 var(--line),0 4px 24px rgba(27,54,93,.07);backdrop-filter:blur(12px)}
.nav-inner{max-width:var(--wrap);margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;height:68px}
.nav-logo img{height:60px;width:auto}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a{font-size:14px;font-weight:600;color:var(--orange);letter-spacing:.04em;text-transform:uppercase;transition:color .2s}
.nav-links a:hover,.nav-links a.act{color:var(--ink-2)}
.burger{display:none;flex-direction:column;gap:5px;padding:4px;cursor:pointer}
.burger span{width:22px;height:2px;background:var(--ink);border-radius:2px;transition:all .3s}

/* ══════════════════════════════════════════════
   HERO
══════════════════════════════════════════════ */
#hero{
  min-height:100vh;display:flex;flex-direction:column;
  background:#fff;position:relative;overflow:hidden;
  padding-top:68px;
}
/* ─── Hero background image rotation ─── */
.hero-bg-layer{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.hero-bg-img{
  position:absolute;inset:0;
  width:100%;height:100%;object-fit:cover;
  opacity:0;
  transform:scale(1.06);
  transition:opacity 1.4s var(--ease),transform 6s var(--ease);
}
/* New: frosted panel behind the left text content */
.hero-body > div:first-child{
  position:relative;
  z-index:2;
  padding:32px;
  border-radius:16px;
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(14px);
  background:rgba(255,255,255,.35);
}
.hero-bg-img.act{opacity:1;transform:scale(1)} 
//.hero-bg-tint{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.6) 40%,rgba(255,255,255,.15) 70%,rgba(255,255,255,0) 100%)}
.blob{position:absolute;border-radius:50%;pointer-events:none;z-index:0}
.blob-1{top:-15%;right:-8%;width:640px;height:640px;background:radial-gradient(circle,rgba(243,146,0,.09) 0%,transparent 65%)}
.blob-2{bottom:-10%;left:-12%;width:520px;height:520px;background:radial-gradient(circle,rgba(27,54,93,.07) 0%,transparent 60%)}
.blob-3{top:30%;left:40%;width:300px;height:300px;background:radial-gradient(circle,rgba(243,146,0,.04) 0%,transparent 60%)}

#hero > .wrap{flex:1;display:flex;flex-direction:column;justify-content:center}
.hero-body{
  display:grid;grid-template-columns:1fr 1fr;
  gap:56px;align-items:center;
  position:relative;z-index:2;
  padding:40px 0 28px;
}

/* ROTATOR — grid-area:1/1 overlap trick (same as styles.css) */
.rotator{display:grid}
.rotator__line{
  grid-area:1/1;
  font-family:var(--serif);font-weight:800;
  font-size:clamp(38px,5.5vw,80px);
  line-height:1.05;letter-spacing:-.025em;
  color:#2f4470;text-wrap:balance;
  opacity:0;transform:translateY(22px);filter:blur(4px);
  transition:opacity .7s var(--ease),transform .7s var(--ease),filter .6s var(--ease);
  pointer-events:none;
}
.rotator__line.act{opacity:1;transform:none;filter:blur(0);pointer-events:auto}
.rotator__line em{color:var(--orange)}

.hero-sub{font-size:17px;color:var(--navy);line-height:1.7;margin-top:28px;max-width:460px}
.hero-sub strong{color:var(--navy);font-weight:700}
.hero-btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}

/* Person carousel — frameless, blends into white background */
.hero-right{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-end;
  min-height:320px;
}
.person-carousel{
 // position:relative;
  width:460px;max-width:100%;
  height:calc(100vh - 240px);
  min-height:420px;max-height:580px;
}
/* Stacked fade overlays — white gradients that blend the figure into the section */
.person-fade-b{
  position:absolute;bottom:0;left:0;right:0;
  height:55%;
  background:linear-gradient(to top,#fff 18%,rgba(255,255,255,.7) 55%,transparent 100%);
  z-index:3;pointer-events:none;
}
.person-fade-l{
  position:absolute;top:0;left:0;bottom:0;
  width:35%;
  background:linear-gradient(to right,#fff 0%,rgba(255,255,255,.6) 50%,transparent 100%);
  z-index:3;pointer-events:none;
}
.person-fade-t{
  position:absolute;top:0;left:0;right:0;
  height:22%;
  background:linear-gradient(to bottom,#fff 0%,rgba(255,255,255,.6) 60%,transparent 100%);
  z-index:3;pointer-events:none;
}
.person-fade-r{
  position:absolute;top:0;right:0;bottom:0;
  width:30%;
  background:linear-gradient(to left,#fff 0%,rgba(255,255,255,.6) 50%,transparent 100%);
  z-index:3;pointer-events:none;
}
.person-card{
  position:absolute;inset:0;
  opacity:0;
  transition:opacity 1s var(--ease);
  pointer-events:none;
}
.person-card.act{opacity:1;pointer-events:auto}
.person-card img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:top center;
  /* No frame, no shadow, no radius — pure blended figure */
  border-radius:0;box-shadow:none;display:block;
}

/* Caption text — bottom-right, syncs with rotator */
.hero-caption{
  position:relative;z-index:4;
  display:grid;
  text-align:right;
  max-width:380px;
  margin-left:auto;
  margin-top:auto;
}
.hero-caption__line{
  grid-area:1/1;
  font-size:16px;font-weight:600;color:#f39200;
  line-height:1.6;
  opacity:0;transform:translateY(10px);
  transition:opacity .7s var(--ease),transform .7s var(--ease);
  pointer-events:none;
}
.hero-caption__line.act{opacity:1;transform:none;pointer-events:auto}
.hero-caption{display:grid}
/* Offerings strip — icon above text, cool hover */
.offerings{background:var(--navy);border-top:3px solid var(--orange);position:relative;z-index:2}
.off-grid{display:grid;grid-template-columns:repeat(5,1fr)}
.off-item{
  display:flex;flex-direction:column;
  padding:22px 20px 20px;
  border-right:1px solid rgba(255,255,255,.07);
  cursor:default;position:relative;overflow:hidden;
  transition:background .32s var(--ease);
}
.off-item:last-child{border-right:none}
/* Sliding orange underline from center */
.off-item::after{
  content:'';position:absolute;bottom:0;left:0;right:0;
  height:2.5px;background:var(--orange);
  transform:scaleX(0);transform-origin:center;
  transition:transform .42s cubic-bezier(.22,.68,0,1.2);
}
.off-item:hover{background:rgba(255,255,255,.07)}
.off-item:hover::after{transform:scaleX(1)}
/* Icon pops up with overshoot on hover */
.off-ico{
  font-size:2.2rem;
  line-height:1;
  margin-bottom:14px;
  display:block;
  color:#f79225;
}
.off-item:hover .off-ico{transform:translateY(-6px) scale(1.18);filter:drop-shadow(0 4px 8px rgba(243,146,0,.35))}
.off-txt strong{display:block;font-size:14px;font-weight:700;color:#fff;line-height:1.35;margin-bottom:3px;transition:color .28s}
.off-item:hover .off-txt strong{color:rgba(255,255,255,.95)}
.off-txt span{font-size:13px;color:#fff;line-height:1.4}

/* Marquee */
.mq-bar{overflow:hidden;background:var(--orange);padding:10px 0}
.mq-track{display:flex;animation:mq 32s linear infinite;width:max-content;white-space:nowrap}
.mq-track span{display:inline-block;padding:0 20px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#fff}
.mq-track .dot{padding:0 4px;opacity:.5}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ══════════════════════════════════════════════
   OPPORTUNITY
══════════════════════════════════════════════ */

/* ══════════════════════════════════════════════
   CAREER PATHS — animated salary bars
══════════════════════════════════════════════ */
#careers{background:linear-gradient(155deg,#eef3ff 0%,#f4f0ff 50%,#fff5ee 100%);position:relative;overflow:hidden}
#careers::after{content:'';position:absolute;bottom:-80px;right:-80px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(243,146,0,.1) 0%,transparent 70%);pointer-events:none}
#careers > .wrap{position:relative;z-index:1}
.career-head{text-align:center;margin-bottom:52px}
.tracks{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.track-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--line)}
.track-hdr{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;background:var(--navy);flex-wrap:wrap;gap:8px}
.track-hdr h3{font-family:var(--serif);font-size:17px;font-weight:400;color:#fff;font-style:italic}
.track-badge{background:var(--orange);color:#fff;padding:4px 14px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.06em}
.sal-list{padding:24px}
.sal-row{margin-bottom:22px}
.sal-row:last-child{margin-bottom:0}
.sal-meta{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}
.sal-role{font-size:15px;font-weight:700;color:var(--navy)}
.sal-yr{font-family:var(--mono);font-size:10px;color:#1b365d;letter-spacing:.06em; font-weight: 900;}
.sal-amt{font-family:var(--serif);font-size:17px;color:var(--orange-deep);margin-bottom:5px}
.bar-wrap{height:7px;background:rgba(27,54,93,.08);border-radius:4px;overflow:hidden}
.bar{height:100%;border-radius:4px;width:0;transition:width 1.4s cubic-bezier(.4,0,.2,1);background:linear-gradient(90deg,var(--orange),#ffba4d)}
.sal-levels{display:flex;gap:4px;margin-top:5px}
.sal-pip{flex:1;height:3px;border-radius:2px;background:rgba(27,54,93,.08)}
.sal-pip.filled{background:var(--orange);opacity:.5}

/* ── Career background chart ── */
.career-bg-chart{
  position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;
  display:flex;align-items:flex-end;gap:1.2%;padding:0 3%;
}
.cgb-bar{
  flex:1;border-radius:4px 4px 0 0;
  background:linear-gradient(to top,rgba(27,54,93,.09) 0%,rgba(27,54,93,.025) 100%);
  height:var(--h);
  transform:scaleY(0);transform-origin:bottom center;
  animation:cgbRise 1.2s cubic-bezier(.22,.68,0,1) forwards;
  animation-delay:var(--d);
}
@keyframes cgbRise{to{transform:scaleY(1)}}
.cgb-svg{position:absolute;inset:0;width:100%;height:100%}
.cgb-svg polyline{
  fill:none;stroke:rgba(27,54,93,.14);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round;
  stroke-dasharray:1000;stroke-dashoffset:1000;
  animation:cgbDraw 2s cubic-bezier(.4,0,.2,1) .5s forwards;
}
@keyframes cgbDraw{to{stroke-dashoffset:0}}
.cgb-svg circle{fill:rgba(27,54,93,.22);opacity:0;animation:cgbDot .25s ease forwards}
.cgb-svg circle:nth-child(2){animation-delay:1.15s}
.cgb-svg circle:nth-child(3){animation-delay:1.3s}
.cgb-svg circle:nth-child(4){animation-delay:1.45s}
.cgb-svg circle:nth-child(5){animation-delay:1.6s}
.cgb-svg circle:nth-child(6){animation-delay:1.75s}
.cgb-svg circle:nth-child(7){animation-delay:1.9s}
.cgb-svg circle:nth-child(8){animation-delay:2.05s}
.cgb-svg circle:nth-child(9){animation-delay:2.2s}
.cgb-svg circle:nth-child(10){animation-delay:2.35s}
.cgb-svg circle:nth-child(11){animation-delay:2.5s}
@keyframes cgbDot{to{opacity:1}}

/* ══════════════════════════════════════════════
   MEMBERSHIP — plan cards, no blocks / no table
══════════════════════════════════════════════ */
/* MEMBERSHIP BENEFITS - comparison matrix */
/* MEMBERSHIP BENEFITS - comparison matrix */
.cmp{margin-top:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;position:relative;background:#fff;box-shadow:var(--shadow-md)}

/* header row */
.cmp-head{display:grid;grid-template-columns:1.5fr 1fr 1fr;align-items:stretch;background:#fff}
.cmp-head .col{padding:24px 28px;border-left:1px solid var(--line)}
.cmp-head .col:first-child{border-left:none;display:flex;flex-direction:column;justify-content:center;gap:6px}
.cmp-head .col:first-child .tier{margin-bottom:2px}
.cmp-head .lede{font-family:var(--serif);font-style:italic;font-size:1.1rem;color:var(--navy-deep);line-height:1.3}
.cmp-head .col:first-child .sub{font-size:.8rem;color:var(--fg-mut);line-height:1.5;margin-top:2px}
.cmp-head .tier{font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--orange)}
.cmp-head h3{font-family:var(--serif);font-weight:700;font-size:1.5rem;letter-spacing:-.01em;color:var(--navy-deep);margin:4px 0 2px}
.cmp-head .for{font-size:.84rem;color:var(--fg-mut)}
.cmp-head .master{position:relative;background:var(--navy-deep);color:#fff}
.cmp-head .master h3,.cmp-head .master .for{color:#fff}
.cmp-head .master .for{color:rgba(255,255,255,.55)}
.cmp-head .master .ribbon{position:absolute;top:0;right:0;background:var(--orange);color:#fff;font-family:var(--mono);font-size:.56rem;letter-spacing:.16em;text-transform:uppercase;padding:6px 13px;border-bottom-left-radius:10px;font-weight:600}

/* pillar group label — icon banner spanning full width */
.cmp-group{display:grid;grid-template-columns:1fr;border-top:1px solid var(--line);background:var(--navy-deep)}
.cmp-group .glabel{
  display:flex;align-items:center;gap:10px;
  padding:12px 28px;
  font-family:var(--mono);font-size:.7rem;font-weight:700;
  letter-spacing:.22em;text-transform:uppercase;
  color:#fff;
}
.cmp-group .glabel i{color:var(--orange);font-size:13px;width:16px;text-align:center}

/* feature row */
.cmp-row{display:grid;grid-template-columns:1.5fr 1fr 1fr;align-items:center;border-top:1px solid var(--line)}
.cmp-row .feat{padding:16px 28px;font-size:.93rem;color:var(--fg);line-height:1.4}
.cmp-row .feat small{ color:var(--fg-mut);font-size:.78rem;margin-top:2px; margin-left: 10px;}
.cmp-row .cell{padding:5px 28px;text-align:center;border-left:1px solid var(--line);align-self:stretch;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:.82rem;font-weight:500}
.cmp-row .cell.master{background:var(--navy-deep);color:#fff}
.cmp-row .val{color:var(--fg)}
.cmp-row .cell.master .val{color:#ffba4d}

.cmp-mark{width:26px;height:26px;border-radius:50%;display:inline-grid;place-items:center;font-size:.8rem;font-weight:700}
.cmp-yes{background:rgba(243,146,0,.16);color:var(--orange-deep)}
.cmp-row .cell.master .cmp-yes{background:rgba(255,186,77,.22);color:#ffba4d}
.cmp-no{color:var(--fg-mut);opacity:.4;font-size:1rem}

/* footer CTA row */
.cmp-foot{display:grid;grid-template-columns:1.5fr 1fr 1fr;border-top:1px solid var(--line)}
.cmp-foot .feat{padding:22px 28px;font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-mut);display:flex;align-items:center}
.cmp-foot .cell{padding:22px 24px;border-left:1px solid var(--line);text-align:center;background:#fafafa}
.cmp-foot .cell.master{background:var(--navy-deep)}
.cmp-foot .btn{width:100%;justify-content:center}
.cmp-foot .btn-line{background:transparent;color:var(--navy-deep);border:1.5px solid var(--orange)}
.cmp-foot .btn-line:hover{background:rgba(243,146,0,.06)}

/* mobile stacked tier cards */
.cmp-cards{display:none;margin-top:48px;gap:20px;grid-template-columns:1fr}
.tcard{border:1px solid var(--line);border-radius:16px;padding:30px 26px;background:#fff;position:relative}
.tcard.master{background:var(--navy-deep);color:#fff}
.tcard .ribbon{position:absolute;top:18px;right:22px;background:var(--orange);color:#fff;font-family:var(--mono);font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;padding:5px 11px;border-radius:999px;font-weight:600}
.tcard .tier{font-family:var(--mono);font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--orange)}
.tcard h3{font-family:var(--serif);font-weight:700;font-size:1.7rem;margin:6px 0 2px;color:var(--navy-deep)}
.tcard.master h3{color:#fff}
.tcard .for{font-size:.84rem;color:var(--fg-mut);margin-bottom:18px}
.tcard .grp{font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--orange);margin:16px 0 8px;display:flex;align-items:center;gap:8px}
.tcard .grp i{font-size:12px}
.tcard ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.tcard li{display:grid;grid-template-columns:auto 1fr;gap:11px;font-size:.9rem;align-items:start;color:var(--fg)}
.tcard.master li{color:#fff}
.tcard li.off{color:var(--fg-mut);opacity:.55}
.tcard li .m{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:.66rem;flex:none;margin-top:2px}
.tcard li .m.y{background:rgba(243,146,0,.16);color:var(--orange-deep)}
.tcard li .m.n{color:var(--fg-mut)}
.tcard .btn{width:100%;justify-content:center;margin-top:22px}

@media(max-width:1024px){
  .cmp-wrap{display:none}
  .cmp-cards{display:grid}
}

/* ══════════════════════════════════════════════
   SPEAKERS
══════════════════════════════════════════════ */
#speakers{background:var(--navy-deep);position:relative;overflow:hidden}
#speakers::before{content:'';position:absolute;top:-100px;right:-100px;width:400px;height:400px;border-radius:50%;border:60px solid rgba(243,146,0,.06);pointer-events:none}
.spk-head{margin-bottom:48px}
.spk-head .h2{color:#fff}
.spk-head p{color:rgba(255,255,255,.6);margin-top:14px;font-size:17px}
.spk-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.webinar-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:32px;backdrop-filter:blur(8px);position:relative;overflow:hidden}
.webinar-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--orange),#ffba4d)}
.live-pill{display:inline-flex;align-items:center;gap:7px;background:rgba(243,146,0,.15);border:1px solid rgba(243,146,0,.3);color:var(--orange);border-radius:999px;padding:5px 14px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:20px}
.live-dot{width:6px;height:6px;background:#f87171;border-radius:50%;animation:blink 1.4s ease-in-out infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.1}}
.w-title{font-family:var(--serif);font-size:clamp(20px,2.5vw,28px);color:#fff;line-height:1.2;margin-bottom:12px}
.w-sub{font-size:14px;color:rgba(255,255,255,.55);line-height:1.65;margin-bottom:24px}
.w-meta{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:22px}
.w-meta span{font-size:12px;color:rgba(255,255,255,.5);display:flex;align-items:center;gap:6px}
.w-meta strong{color:rgba(255,255,255,.85)}
.notify-card{background:rgba(255,255,255,.04);border:1px dashed rgba(255,255,255,.15);border-radius:18px;padding:36px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}
.n-ico{font-size:2.6rem;margin-bottom:16px}
.n-title{font-family:var(--serif);font-size:22px;color:#fff;margin-bottom:8px}
.n-sub{font-size:14px;color:rgba(255,255,255,.5);max-width:260px;line-height:1.6;margin-bottom:24px}
.n-form{display:flex;gap:8px;width:100%;max-width:320px;flex-wrap:wrap;justify-content:center}
.n-input{flex:1;min-width:160px;padding:11px 14px;background:rgba(255,255,255,.08);border:1.5px solid rgba(255,255,255,.15);border-radius:999px;color:#fff;font-family:var(--sans);font-size:14px;outline:none;transition:border-color .2s}
.n-input:focus{border-color:var(--orange)}
.n-input::placeholder{color:rgba(255,255,255,.28)}

/* =========================
   WEBINAR / SPEAKERS SECTION  (accordion style)
========================= */

.webinar-section{
  background:#0e1c39;
  position:relative;
  overflow:hidden;
  padding:80px 0;
  color:#fff;
}

.webinar-section::before{
  content:'';
  position:absolute;
  top:-120px;
  right:-120px;
  width:420px;
  height:420px;
  border:70px solid rgba(243,146,0,.05);
  border-radius:50%;
  pointer-events:none;
}

/* Heading sits on its own; small margin pulls controls row close */
.webinar-heading{ margin-bottom:20px; }

.webinar-heading h2{
  color:#fff;
  font-size:clamp(36px,5vw,64px);
  line-height:1.02;
  font-weight:800;
  letter-spacing:-.02em;
  margin:0;
}

.webinar-heading em{ color:var(--orange); font-style:italic; }

/* Controls row: notify group (left) + Upcoming/Past tabs (right), single flex line */
.wb-controls-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-bottom:20px;
  flex-wrap:wrap;
}

/* All notify elements (icon + label + form) laid out horizontally */
.notify-inline{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

/* Compact bell icon for the inline controls row */
.notify-icon-sm{
  width:34px; height:34px;
  border-radius:50%;
  background:rgba(243,146,0,.12);
  display:flex; align-items:center; justify-content:center;
  font-size:15px; color:var(--orange);
  flex:none;
}

/* "Get Notified" label text, inline beside the icon */
.notify-label{
  color:#fff;
  font-size:14px;
  font-weight:700;
  white-space:nowrap;
}

/* Email form: centre-align since it now lives in a single-line row */
.notify-form{
  display:flex;
  align-items:center; /* was flex-start */
  gap:10px;
}

.notify-form input{
  width:240px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.15);
  border-radius:999px;
  padding:13px 20px;
  color:#fff;
  font-size:14px;
  outline:none;
  transition:border-color .2s;
}
.notify-form input:focus{ border-color:var(--orange); }
.notify-form input::placeholder{ color:rgba(255,255,255,.35); }

.notify-form button{
  background:var(--orange);
  border:none; border-radius:999px;
  padding:13px 22px;
  color:#1a1205;
  font-weight:700; font-size:14px;
  cursor:pointer; white-space:nowrap;
  transition:filter .2s;
}
.notify-form button:hover{ filter:brightness(1.1); }

/* tab bar row */
.wb-bar-row{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:20px;
  margin-bottom:20px;
  flex-wrap:wrap;
}

.wb-tabs{
  display:inline-flex;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  border-radius:999px;
  padding:5px;
}

.wb-tab{
  background:transparent;
  border:none; border-radius:999px;
  padding:9px 24px;
  color:rgba(154,171,198,1);
  font-weight:700; font-size:14px;
  cursor:pointer;
  transition:background .2s, color .2s;
  font-family:var(--sans);
}
.wb-tab.active{
  background:var(--orange);
  color:#1a1205;
}

/* event list */
.wb-list{ display:flex; flex-direction:column; gap:12px; }

/* card */
.wb-card{
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.1);
  border-radius:18px;
  overflow:hidden;
  transition:border-color .2s;
}

/* card header */
.wb-card-hdr{
  display:flex;
  align-items:center;
  gap:20px;
  padding:18px 24px;
  cursor:pointer;
  transition:background .15s;
}
.wb-card-hdr:hover{ background:rgba(255,255,255,.03); }

.wb-date-box{
  width:62px; height:66px;
  border-radius:12px;
  display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  flex:none;
  transition:background .2s, color .2s;
}
.wb-day{ font-weight:800; font-size:24px; line-height:1; }
.wb-mon{ font-weight:700; font-size:10px; letter-spacing:.12em; opacity:.85; margin-top:3px; }

.wb-meta{ flex:1; min-width:0; }

.wb-title-row{
  display:flex; align-items:center;
  gap:10px; margin-bottom:4px;
  flex-wrap:wrap;
}
.wb-title{ font-weight:700; font-size:17px; }
.wb-chip{
  font-size:10px; font-weight:700;
  letter-spacing:.06em; text-transform:uppercase;
  padding:3px 10px; border-radius:999px;
}
.wb-topic{
  color:#9aabc6; font-size:14px;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}

.wb-hdr-right{
  display:flex; align-items:center;
  gap:14px; flex:none;
}
.wb-time{ color:#9aabc6; font-size:14px; font-weight:500; white-space:nowrap; }
.wb-chevron{ color:#9aabc6; transition:transform .25s; }

/* card body — accordion */
.wb-body{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);
  gap:36px;
  padding:6px 24px 28px;
  animation:wbAccIn .28s ease;
}
@keyframes wbAccIn{ from{opacity:0;transform:translateY(-5px)} to{opacity:1;transform:translateY(0)} }

/* Banner: natural aspect ratio so the image is never cropped */
.wb-banner{
  border-radius:14px; overflow:hidden;
  background:rgba(255,255,255,.05);
  /* height removed — image determines its own height */
}
.wb-banner img{ width:100%; height:auto; display:block; /* object-fit:cover removed */ }

/* detail grid */
.wb-detail-grid{ display:flex; flex-direction:column; gap:16px; }
.wb-detail-row{
  display:grid; grid-template-columns:110px 1fr;
  gap:10px; font-size:15px;
}
.wb-detail-row > span:first-child{
  color:#cdd8ea; font-weight:700;
  font-family:var(--sans);
}
.wb-detail-val{ color:#fff; line-height:1.45; }
.wb-detail-val.mono{ font-variant-numeric:tabular-nums; letter-spacing:.04em; }

/* speaker row */
.wb-speaker-row{
  display:flex; align-items:center;
  gap:14px;
  margin-top:24px; padding-top:20px;
  border-top:1px solid rgba(255,255,255,.08);
}
.wb-avatar{
  width:50px; height:50px;
  border-radius:50%; object-fit:cover;
  background:rgba(255,255,255,.07);
  object-fit:contain;
  flex:none;
}
.wb-spk-label{
  font-size:10px; font-weight:700;
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--orange); margin-bottom:2px;
}
.wb-spk-name{ font-weight:700; font-size:15px; }
.wb-spk-title{ color:#9aabc6; font-size:12.5px; }

.wb-cta-btn{
  margin-left:auto;
  border:none; border-radius:999px;
  padding:13px 24px;
  font-weight:700; font-size:14px;
  cursor:pointer;
  font-family:var(--sans);
  transition:filter .2s;
  white-space:nowrap;
}
.wb-cta-btn:hover{ filter:brightness(1.08); }

/* ── responsive ── */
@media(max-width:1024px){
  .wb-body{ grid-template-columns:1fr; }
  /* .wb-banner height removed — natural sizing now applies at all breakpoints */
}
@media(max-width:640px){
  /* Controls row stacks vertically on mobile */
  .wb-controls-row{ flex-direction:column; align-items:flex-start; gap:14px; }
  /* Notify group wraps onto multiple lines if needed */
  .notify-inline{ flex-wrap:wrap; }
  .notify-form{ flex-direction:column; width:100%; }
  .notify-form input{ width:100%; }
  .wb-card-hdr{ gap:14px; padding:14px 16px; }
  .wb-topic{ white-space:normal; }
  .wb-hdr-right .wb-time{ display:none; }
  .wb-body{ padding:8px 16px 22px; gap:20px; }
  .wb-detail-row{ grid-template-columns:1fr; gap:3px; }
  .wb-speaker-row{ flex-wrap:wrap; }
}
/* ══════════════════════════════════════════════
   CURRICULUM — visual syllabus
══════════════════════════════════════════════ */
#curriculum{background:#f2ecdf;position:relative;overflow:hidden}
#curriculum::before{content:'';position:absolute;top:0;right:0;width:600px;height:600px;border-radius:0 0 0 100%;background:rgba(27,54,93,.03);pointer-events:none}
.curr-hdr .h2{color:var(--navy-deep)}
.curr-stats-row{display:flex;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;box-shadow:var(--shadow-md)}
.cstat{flex:1;padding:18px 22px;text-align:center;border-right:1px solid var(--line)}
.cstat:last-child{border-right:none}
.cstat-n{font-family:var(--serif);font-weight:700;font-size:26px;color:var(--orange)}
.cstat-l{font-family:var(--mono);font-size:9px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.12em;margin-top:4px}

.mod-cards{display:flex;flex-direction:column;gap:16px}
.modcard{border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow-md)}
.modcard-hdr{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:18px 22px;background:#fff;cursor:pointer;transition:background .2s}
.modcard-hdr:hover{background:rgba(27,54,93,.03)}
.modcard.open .modcard-hdr{background:rgba(243,146,0,.06);border-bottom:1px solid var(--line)}

.mod-num{font-family:var(--mono);font-size:9px;font-weight:500;color:var(--orange);background:rgba(243,146,0,.12);border:1px solid rgba(243,146,0,.28);padding:4px 12px;border-radius:4px;letter-spacing:.08em;white-space:nowrap}
.mod-info .mod-name{font-weight:700;font-size:14px;color:var(--navy-deep)}
.mod-info .mod-hrs{font-family:var(--mono);font-size:10px;color:var(--ink-3);margin-top:3px;letter-spacing:.04em}
.mod-tog{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--line-s);display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--ink-3);flex-shrink:0;transition:all .28s;line-height:1}
.modcard.open .mod-tog{background:var(--orange);border-color:var(--orange);color:#fff;transform:rotate(45deg)}

.modcard-body{max-height:0;overflow:hidden;transition:max-height .42s var(--ease)}
.modcard.open .modcard-body{max-height:600px}

.mod-progress{padding:14px 22px 4px;display:flex;align-items:center;gap:10px}
.mp-fill{height:3px;flex:1;background:rgba(27,54,93,.08);border-radius:2px;overflow:hidden}
.mp-fill-bar{height:100%;background:linear-gradient(90deg,var(--orange),#ffba4d);border-radius:2px}
.mp-lbl{font-family:var(--mono);font-size:9px;color:var(--ink-3);letter-spacing:.06em;white-space:nowrap}

.topics-grid{padding:8px 22px 24px;display:flex;flex-wrap:wrap;gap:8px}
.topic{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:8px;font-size:12px;font-weight:600;line-height:1.3;background:rgba(27,54,93,.04);border:1px solid var(--line);color:var(--ink-2);transition:all .2s;cursor:default}
.topic:hover{background:rgba(243,146,0,.1);border-color:rgba(243,146,0,.3);color:var(--orange-deep)}
.topic-dot{width:5px;height:5px;border-radius:50%;background:var(--orange);flex-shrink:0}

/* ══════════════════════════════════════════════
   FOUNDER
══════════════════════════════════════════════ */
#founder{background:var(--navy-deep);position:relative;overflow:hidden}
#founder::before{content:'';position:absolute;bottom:-60px;right:-60px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(243,146,0,.08) 0%,transparent 70%);pointer-events:none}

.founder-copy .h2{color:#fff}
.founder-copy p{font-size:16px;color:rgba(255,255,255,.6);line-height:1.75;margin-bottom:14px}
.founder-copy p strong{color:#fff}.founder-grid{display:grid;grid-template-columns:360px 1fr;gap:72px;align-items:center}
.founder-fig{position:relative}
.founder-fig img{width:100%;height:480px;object-fit:cover;object-position:top center;border-radius:20px;box-shadow:var(--shadow-lg)}
.founder-chip{position:absolute;bottom:-18px;left:16px;right:16px;background:var(--navy);border-radius:12px;padding:13px 18px;text-align:center}
.founder-chip strong{display:block;font-size:14px;font-weight:700;color:#fff}
.founder-chip span{font-size:11px;color:rgba(255,255,255,.55);margin-top:3px;display:block}
.founder-creds{margin:20px 0;display:flex;flex-direction:column;gap:8px}

.founder-creds li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:rgba(255,255,255,.6)}
.founder-creds li::before{content:'▸';color:var(--orange);flex-shrink:0;margin-top:2px}

.f-contact{display:flex;gap:14px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);flex-wrap:wrap}
.f-contact a{font-size:14px;font-weight:600;color:#fff;display:flex;align-items:center;gap:7px;transition:color .2s}
.f-contact a:hover{color:var(--orange)}

/* ══════════════════════════════════════════════
   CLIENTELE
══════════════════════════════════════════════ */
#clientele{background:#f2ecdf;position:relative;overflow:hidden}
#clientele::before{content:'9K+';position:absolute;right:-20px;top:50%;transform:translateY(-50%);font-family:var(--serif);font-size:clamp(180px,18vw,280px);color:rgba(27,54,93,.04);line-height:1;pointer-events:none;white-space:nowrap}
.cli-head{margin-bottom:44px}
.industry-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:48px}
.ind-chip{padding:8px 20px;border:1.5px solid var(--line);border-radius:999px;font-size:13px;font-weight:600;color:var(--ink-2);background:#fff;transition:all .22s;cursor:default}
.ind-chip:hover{border-color:var(--orange);color:var(--orange-deep);background:rgba(243,146,0,.06);transform:translateY(-2px)}
.logowall{/*position:relative;*/overflow:hidden;padding:24px 0}
.lf,.lr{position:absolute;top:0;bottom:0;width:90px;z-index:2;pointer-events:none}
.lf{left:0;background:linear-gradient(90deg,#fff,transparent)}
.lr{right:0;background:linear-gradient(-90deg,#fff,transparent)}
.lrow{overflow:hidden;margin-bottom:16px}
.lrow:last-of-type{margin-bottom:0}
.ltrack{display:flex;width:max-content}
.lrow--a .ltrack{animation:scrollL 34s linear infinite}
.lrow--b .ltrack{animation:scrollR 40s linear infinite}
@keyframes scrollL{to{transform:translateX(-50%)}}
@keyframes scrollR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.logo-i{padding:0 22px;flex-shrink:0;display:flex;align-items:center;justify-content:center;height:52px;opacity:.45;transition:opacity .22s;filter:grayscale(20%)}
.logo-i:hover{opacity:1;filter:none}
.logo-i img{height:28px;width:auto;max-width:100px;object-fit:contain}

/* ══════════════════════════════════════════════
   ENROLL
══════════════════════════════════════════════ */
#enroll{background:linear-gradient(145deg,var(--navy-deep) 0%,var(--navy) 100%);position:relative;overflow:hidden}
#enroll::after{content:'';position:absolute;bottom:-150px;right:-150px;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(243,146,0,.08) 0%,transparent 60%);pointer-events:none}
.enroll-inner{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;position:relative;z-index:2}
.enroll-form{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:36px;backdrop-filter:blur(8px)}
.enroll-form h3{font-family:var(--serif);font-size:clamp(22px,2.5vw,30px);color:#fff;margin-bottom:24px;font-weight:400}
.ef-label{display:block;margin-bottom:14px}
.ef-label>span{display:block;font-family:var(--mono);font-size:10px;font-weight:500;color:rgba(255,255,255,.45);margin-bottom:5px;letter-spacing:.1em;text-transform:uppercase}
.ef-label input,.ef-label select{width:100%;padding:11px 14px;background:rgba(255,255,255,.07);border:1.5px solid rgba(255,255,255,.12);border-radius:10px;color:#fff;font-family:var(--sans);font-size:14px;outline:none;transition:border-color .22s}
.ef-label input:focus,.ef-label select:focus{border-color:var(--orange)}
.ef-label input::placeholder{color:rgba(255,255,255,.25)}
.ef-label select option{background:var(--navy-deep)}
.radio-row{display:flex;gap:16px;flex-wrap:wrap}
.radio-row label{display:flex;align-items:center;gap:7px;font-size:14px;color:rgba(255,255,255,.75);cursor:pointer;font-weight:500;margin:0}

/* ══════════════════════════════════════════════
   FOOTER
══════════════════════════════════════════════ */
footer{background:var(--navy-deep);border-top:3px solid var(--orange);padding:60px 0 0}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:48px;margin-bottom:48px}
.foot-logo{height:76px;margin-bottom:14px;display:block}
.foot-tag{font-size:13px;color:rgba(255,255,255,.45);line-height:1.65;max-width:240px;margin-bottom:20px}
.foot-socials{display:flex;gap:8px}
.soc{width:34px;height:34px;border-radius:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:12px;color:rgba(255,255,255,.45);transition:all .22s;font-style:normal}
.soc:hover{background:var(--orange);border-color:var(--orange);color:#fff}
.foot-col h4{font-family:var(--mono);font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange);font-weight:850;margin-bottom:16px}
.foot-col ul{display:flex;flex-direction:column;gap:10px}
.foot-col ul li a{font-size:15px;color:rgba(255,255,255,.45);transition:color .2s}
.foot-col ul li a:hover{color:#fff}
.foot-addr{font-size:13px;color:rgba(255,255,255,.4);line-height:1.7;margin-bottom:10px;font-style:normal}
.foot-link{display:block;font-size:13px;color:rgba(255,255,255,.4);margin-bottom:6px;transition:color .2s}
.foot-link:hover{color:var(--orange)}
.foot-bar{border-top:1px solid rgba(255,255,255,.07);padding:20px 0}
.foot-bar-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.foot-bar-row p{font-size:12px;color:rgba(255,255,255,.22)}

/* ══════════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════════ */
@media(max-width:1024px){
  .founder-grid{grid-template-columns:280px 1fr;gap:44px}
  .opp-grid{grid-template-columns:1fr}
  .tracks{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .enroll-inner{grid-template-columns:1fr;gap:44px}
  .hero-body{gap:36px}
  .cmp-wrap{display:none}
  .cmp-cards{display:grid}
}
@media(max-width:768px){
  body{font-size:16px}
  .sec{padding:0 0 52px}
  .nav-links,#nav-cta{display:none}
  .nav-links.open{display:flex;flex-direction:column;gap:18px;position:fixed;top:68px;left:0;right:0;background:rgba(250,246,238,.98);padding:24px 28px;border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(27,54,93,.09);z-index:299}
  .burger{display:flex}
  .hero-body{grid-template-columns:1fr;padding:40px 0 28px}
  .hero-right{align-items:flex-start;min-height:auto;margin-top:20px}
  .hero-caption{text-align:left;max-width:100%;margin-left:0}
  .hero-right{display:none}
  .hero-right{margin-right:0}
  .off-grid{grid-template-columns:1fr 1fr}
  .off-item:nth-child(5){grid-column:1/-1}
  .plans{grid-template-columns:1fr}
  .spk-grid{grid-template-columns:1fr}
  .founder-grid{grid-template-columns:1fr}
  .founder-fig{max-width:280px;margin:0 auto}
  .tracks{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
  .curr-hdr{flex-direction:column;align-items:flex-start}
  .plan--pro::after{display:none}
}
@media(max-width:480px){
  .off-grid{grid-template-columns:1fr}
  .wrap{padding:0 20px}
}

/* INDUSTRY OPPORTUNITY */
.opp{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;margin-top:54px}
.opp-bullets{display:flex;flex-direction:column;gap:22px;margin-top:12px}
.opp-b{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start}
.opp-b .ic{width:42px;height:42px;border-radius:10px;background:rgba(238,144,21,.12);color:var(--orange);display:grid;place-items:center;font-family:var(--serif);font-style:italic;font-size:1.2rem;flex:none}
.opp-b b{font-size:1.02rem;color:var(--fg)}
.opp-b span{display:block;color:var(--fg-mut);font-size:.92rem;margin-top:3px;line-height:1.55}
.opp-panel{background-color:#f39200 !important;border-radius:18px;padding:42px 38px;color:var(--navy-900);position:relative;overflow:hidden}
.opp-panel::before{content:"";position:absolute;top:-30%;right:-20%;width:240px;height:240px;border:1px solid rgba(15,31,56,.25);border-radius:50%}
.opp-panel::after{content:"";position:absolute;top:-20%;right:-10%;width:160px;height:160px;border:1px solid rgba(15,31,56,.25);border-radius:50%}
.opp-panel .pq{font-family:var(--serif);font-style:italic;font-weight:400;font-size:1.5rem;line-height:1.32;position:relative;z-index:2}
.opp-panel .big{font-family:var(--serif);font-size:4.2rem;font-weight:300;line-height:1;margin:28px 0 4px;position:relative;z-index:2}
.opp-panel .biglbl{font-family:var(--mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(15,31,56,.75);position:relative;z-index:2}
.opp-panel .src{margin-top:26px;font-family:var(--mono);font-size:.66rem;letter-spacing:.06em;color:rgba(15,31,56,.7);position:relative;z-index:2}

/* FAQ */
.faq{max-width:840px;margin:48px auto 0}
.faq details{border:1px solid var(--line);border-radius:12px;margin-bottom:12px;background:var(--card);overflow:hidden;transition:border-color .25s}
.faq details[open]{border-color:var(--line2)}
.faq summary{list-style:none;cursor:pointer;padding:22px 26px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-family:var(--serif);font-size:1.12rem;color:var(--fg)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pl{color:var(--orange);font-size:1.5rem;line-height:1;transition:transform .3s;flex:none;font-weight:300}
.faq details[open] summary .pl{transform:rotate(45deg)}
.faq .ans{padding:0 26px 22px;color:var(--fg-mut);font-size:.95rem;line-height:1.65;}

.sec{padding:24px 0 72px}
@media(max-width:768px){
  .sec{padding:16px 0 52px}
}
#curriculum{padding-top:40px}
.radio-row label{
    display:inline-flex;
    align-items:center;
    gap:7px;
    white-space: nowrap;
}

/* WHY AIF-PMS */
#why{
  background:var(--paper);
}

.why-head{
  text-align:center;
  /* max-width:760px; */
  margin:0 auto 56px;
}

.why-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;

  font-size:11px;
  font-weight:700;
  letter-spacing:.30em;
  color:var(--orange);
}

.why-eyebrow::before,
.why-eyebrow::after{
  content:'';
  width:28px;
  height:1px;
  background:var(--orange);
}

.why-title{
  margin-top:18px;

  font-family:var(--serif);
  font-weight:700;
  /* font-size:clamp(42px,5vw,74px); */
  font-size:clamp(41px,5vw,40px);
  line-height:1.05;
  letter-spacing:-.03em;

  color:var(--navy-deep);
}

.why-title em{
  color:var(--orange);
  font-style:italic;
}

.why-highlight{
  background:var(--orange);
  color:#fff;
  padding:0 .18em;
  display:inline-block;
}

.why-sub{
  margin:22px auto 0;

  max-width:680px;

  font-size:18px;
  line-height:1.75;
  color:var(--ink-2);
}
/* WHY SECTION */

.why-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}

.why-card{
    background:#fff;
    border:1px solid var(--line);
    border-radius:22px;

    padding:28px 26px;

    box-shadow:var(--shadow-md);

    display:flex;
    flex-direction:column;

    transition:.3s ease;
}

.why-card:hover{
    transform:translateY(-4px);
}

.why-icon{
    display:flex;
    align-items:flex-start;

    gap:16px;

    margin-bottom:22px;
}

/* icon box */
.why-icon img{
    width:64px;
    height:64px;

    min-width:64px;

    object-fit:contain;

    background:var(--paper-2);

    padding:12px;

    border-radius:18px;
}

/* heading beside icon */
.why-icon h3{
    margin:0;

    color:var(--navy-deep);

    font-size:18px;

    font-weight:700;

    line-height:1.2;

    max-width:140px;

    min-height:48px;

    display:flex;

    align-items:center;
}

/* description */
.why-card p{
    margin:0;

    font-size:16px;

    line-height:1.8;

    color:var(--ink-2);
}

/* tablet */
@media(max-width:1024px){

    .why-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

/* mobile */
@media(max-width:640px){

    .why-grid{
        grid-template-columns:1fr;
    }

    .why-card{
        min-height:auto;
    }

    .why-icon h3{
        max-width:none;
    }

}

.ribbon {
    position: absolute;
    top: 0;
    right: 0;
    background: var(--orange);
    color: var(--navy-900);
    font-family: var(--mono);
    font-size: .56rem;
    letter-spacing: .16em;
    text-transform: uppercase;
    padding: 6px 13px;
    border-bottom-left-radius: 10px;
    font-weight: 600;
}

/* Container for the new images */
.why-icon {
  width: 60px;          /* Adjust this based on how large you want the images */
  height: 60px;         /* Keeps the container uniform */
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: flex-start; /* Aligns image to the left, change to center if needed */
}

/* Styling for the images themselves */
.why-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;  /* Prevents the image from distorting */
  display: block;
}

/* Ensure the FAQ section can contain the absolute positioned icon */
#faq {
  position: relative;
  overflow: hidden; /* Prevents the large icon from creating horizontal scrollbars */
}

/* Create the large background "?" icon */
#faq::before {
  content: "?";
  position: absolute;
  top: -40px;            /* Adjust vertical position */
  right: -20px;          /* Adjust horizontal position */
  font-size: 500px;      /* Make it massive like a background graphic */
  font-weight: 800;
  line-height: 1;
  font-family: var(--font-main, 'Montserrat', sans-serif);
  
  /* Make it very subtle. Adjust the rgba values based on your exact background color */
  color: rgb(32 55 88 / 14%); 
  
  z-index: 0;            /* Push it to the background */
  pointer-events: none;  /* Crucial: Prevents the icon from blocking clicks on your FAQ toggles */
  
  /* Optional: Give it a slight tilt for a more dynamic look */
  transform: rotate(15deg); 
  user-select: none;     /* Prevents users from highlighting the text */
}

/* Ensure your actual FAQ content sits on top of the background icon */
#faq .wrap {
  position: relative;
  z-index: 1;
}

/* ==========================
   DROPDOWN MENU
========================== */

.nav-links li {
    position: relative;
}

.dropdown > a {
    display: flex;
    align-items: center;
    gap: 6px;
}

.dropdown-arrow {
    font-size: 12px;
    transition: transform .3s ease;
}

.submenu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 220px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
    border-radius: 8px;
    padding: 10px 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all .3s ease;
    z-index: 1000;
}

.submenu li {
    width: 100%;
}

.submenu a {
    display: block;
    padding: 10px 18px;
    font-size: 14px;
    text-transform: none;
    color: var(--navy);
}

.submenu a:hover {
    background: rgba(243,146,0,.08);
    color: var(--orange);
}

/* Desktop Hover */
@media (min-width: 1025px) {
    .dropdown:hover .submenu {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }

    .dropdown:hover .dropdown-arrow {
        transform: rotate(180deg);
    }
}

/* Mobile */
@media (max-width: 1024px) {

    .nav-links.open {
        display: flex;
        flex-direction: column;
    }

    .submenu {
        position: static;
        box-shadow: none;
        background: transparent;
        padding: 0;
        margin-top: 8px;
        max-height: 0;
        overflow: hidden;
        opacity: 1;
        visibility: visible;
        transform: none;
        transition: max-height .3s ease;
    }

    .dropdown.active .submenu {
        max-height: 200px;
    }

    .dropdown.active .dropdown-arrow {
        transform: rotate(180deg);
    }

    .submenu a {
        padding: 10px 15px 10px 25px;
    }
}

@media (max-width: 768px) {
    .cstat {
        padding: 8px 0;
    }
}

.hero-sub-rotator{
    position:relative;
    min-height:70px; /* important */
    margin-top:5px;
    max-width:460px;
}

.hero-sub-line{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    opacity:0;
    transform:translateY(15px);
    transition:opacity .7s ease, transform .7s ease;
    pointer-events:none;
}

.hero-sub-line.act{
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
}

.rotator__line:nth-child(2){
    font-size: clamp(34px, 5vw, 68px);
}

/* ===================================================
   BENEFITS SECTION - PREMIUM COMPARISON TABLE
   Inspired by redesign + screenshot
=================================================== */

.cmp-wrap{
    max-width:1280px;
    margin:0 auto;
}

.cmp{
    background:#fff;
    border:1px solid #EAE0CC;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 2px 8px rgba(16,42,76,.05);
}

/* ======================================
   HEADER
====================================== */

.cmp-head{
    display:grid;
    grid-template-columns:1.7fr 180px 180px;
    align-items:end;
    background:#fff;
    padding:24px 28px 18px;
}

.cmp-head .col{
    padding:0;
    text-align:center;
    position:relative;
}

.cmp-head .col:first-child{
    text-align:left;
}

.cmp-head .tier{
    font-size:11px;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:#F39200;
    margin-bottom:6px;
}

.cmp-head .lede{
    font-family:var(--serif);
    font-size:16px;
    font-style:italic;
    font-weight:600;
    color:#102A4C;
    line-height:1.3;
}

.cmp-head h3{
    font-size:22px;
    font-weight:700;
    margin:0;
    color:#102A4C;
    line-height:1.1;
}

.cmp-head .for{
    font-size:12px;
    color:#8A93A3;
    margin-top:4px;
}

/* PRO COLUMN */

.cmp-head .col:last-child{
    background:rgba(243,146,0,.07);
    border-top:2px solid #F39200;
    border-radius:12px 12px 0 0;
    padding:12px 0 10px;
}

.cmp-head .col:last-child .for{
    color:#B07A12;
}

/* RECOMMENDED BADGE */

.cmp-head .ribbon{
    position:absolute;
    top:-14px;
    left:50%;
    transform:translateX(-50%);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#F39200;
    color:#fff;
    padding:5px 12px;
    border-radius:999px;
    font-size:10px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.12em;
    white-space:nowrap;
    box-shadow:0 4px 10px rgba(243,146,0,.32);
}

/* ======================================
   GROUP HEADERS
====================================== */

.cmp-group{
    background:#F7F3EA;
    border-top:1px solid #F0E9DA;
    border-bottom:1px solid #F0E9DA;
}

.cmp-group .glabel{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px 28px;
    color:#5A6B82;
    font-size:11px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.cmp-group .glabel i{
    color:#F39200;
    font-size:14px;
}

/* ======================================
   ROWS
====================================== */

.cmp-row{
    display:grid;
    grid-template-columns:1.7fr 180px 180px;
    align-items:center;
    border-bottom:1px solid #F4EFE3;
}

.cmp-row .feat{
    padding:16px 28px;
    color:#14294A;
    font-size:15px;
    font-weight:600;
    line-height:1.35;
}

.cmp-row .feat small{ 
    margin-top:3px;
    color:#8A93A3;
    font-size:12px;
    font-weight:400;
}

.cmp-row .cell{
    text-align:center;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
}

/* PRO COLUMN BACKGROUND */

.cmp-row .cell:last-child{
    background:rgba(243,146,0,.07);
}

/* ======================================
   VALUES
====================================== */

.val{
    font-size:14px;
    font-weight:600;
    color:#14294A;
}

.cmp-row .cell:last-child .val{
    color:#B07A12;
    font-weight:700;
}

/* ======================================
   CHECK ICONS
====================================== */

.cmp-mark{
    width:32px;
    height:32px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    font-weight:700;
}

.cmp-yes{
    background:#F39200;
    color:#fff;
}

/* ======================================
   NO VALUE
====================================== */

.cmp-no{
    color:#CBD2DC;
    font-size:20px;
    font-weight:400;
}

/* ======================================
   FOOTER
====================================== */

.cmp-foot{
    display:grid;
    grid-template-columns:1.7fr 180px 180px;
    align-items:center;
    padding:22px 28px;
}

.cmp-foot .feat{
    font-size:11px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:#8A93A3;
}

.cmp-foot .cell{
    text-align:center;
}

.cmp-foot .cell:last-child{
    background:rgba(243,146,0,.07);
    padding:12px 0;
    border-radius:0 0 12px 12px;
}

.cmp-foot .btn{
    justify-content:center;
    white-space:nowrap;
}

.cmp-foot .btn-line{
    background:#fff;
    color:#F39200;
    border:1.5px solid #F39200;
}

.cmp-foot .btn-line:hover{
    background:rgba(243,146,0,.06);
}

.cmp-foot .btn-primary{
    background:#F39200;
    box-shadow:0 8px 18px rgba(243,146,0,.30);
}

/* ======================================
   MOBILE
====================================== */

@media(max-width:1024px){

    .cmp-wrap{
        display:none;
    }

    .cmp-cards{
        display:grid;
    }
}

/* =========================
   RECOMMENDED BADGE
========================= */

.cmp-head .col:last-child{
    position:relative;
    overflow:visible;
}

.cmp-head .ribbon{
    position:absolute;
    top:-16px;
    left:50%;
    transform:translateX(-50%);

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;

    min-width:125px;      /* important */
    height:28px;

    padding:0 16px;

    background:#F39200;
    color:#fff;

    border-radius:999px;

    font-size:12px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;

    white-space:nowrap;

    box-shadow:0 6px 14px rgba(243,146,0,.35);

    z-index:999;
}

/* Star */

.cmp-head .ribbon::before{
    content:"★";
    font-size:11px;
    color:#fff;
    line-height:1;
}

/* HEADER */
.cmp-head{
    display:grid;
    grid-template-columns:minmax(0,1.7fr) 180px 180px;
    align-items:center;
    background:#fff;
    padding:0;
}

/* BODY ROWS */
.cmp-row{
    display:grid;
    grid-template-columns:minmax(0,1.7fr) 180px 180px;
    align-items:center;
}

/* FOOTER */
.cmp-foot{
    display:grid;
    grid-template-columns:minmax(0,1.7fr) 180px 180px;
    align-items:center;
    padding:0;
}

.cmp-foot .feat{
    padding:24px 28px;
    display:flex;
    align-items:center;
}

.cmp-foot .cell{
    min-height:72px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-left:1px solid #D8D8D8;
}

.cmp-foot .cell:last-child{
    background:rgba(243,146,0,.07);
}

.cmp-head .col{
    padding:24px 28px;
    position:relative;
}

.cmp-head .col:first-child{
    text-align:left;
}

.cmp-head .col:nth-child(2),
.cmp-head .col:nth-child(3){
    text-align:center;
}

.cmp-row .feat{
    padding:16px 28px;
}

.cmp-row .cell{ 
    border-left:1px solid #D8D8D8;
}


.cmp-no{
    display:inline-block;
    width:18px;
    height:2px;
    background:#CFCFCF;
    border-radius:999px;
    font-size:0;
}



/* ==========================
JOIN COMMUNITY
========================== */

.join-community-page{
    background:#f4efe6;
    padding:120px 0 80px;
}

.join-header{
    text-align:center;
    max-width:850px;
    margin:0 auto 50px;
}

.join-header h1{
    font-size:clamp(42px,5vw,72px);
    color:#1b365d;
    margin-bottom:15px;
    font-weight:800;
}

.join-header em{
    color:#f7a600;
    font-style:italic;
}

.join-header p{
    font-size:18px;
    color:#555;
    line-height:1.8;
}

.join-card{
    max-width:900px;
    margin:auto;
    background:#fff;
    padding:50px;
    border-radius:20px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
    margin-bottom:25px;
}

.field label{
    display:block;
    margin-bottom:8px;
    font-weight:600;
    color:#1b365d;
}

.field input,
.field select{
    width:100%;
    height:58px;
    border:1px solid #d6dce5;
    border-radius:10px;
    padding:0 16px;
    font-size:15px;
    outline:none;
}

.field input:focus,
.field select:focus{
    border-color:#f7a600;
}

.join-btn{
    width:100%;
    justify-content:center;
    height:60px;
    font-size:16px;
    margin-top:10px;
}

@media(max-width:768px){

    .form-row{
        grid-template-columns:1fr;
    }

    .join-card{
        padding:30px;
    }
}

#responseMsg{
    margin-top:20px;
    padding:15px;
    border-radius:8px;
    display:block;
    font-weight:600;
}

#responseMsg.success{
    background:#dcfce7;
    color:#166534;
    border:1px solid #86efac;
}

#responseMsg.error{
    background:#fee2e2;
    color:#991b1b;
    border:1px solid #fca5a5;
}

#responseMsg{
    display:none;
    margin-top:20px;
    padding:15px 20px;
    border-radius:10px;
    font-size:15px;
    font-weight:600;
}

#responseMsg.success{
    display:block;
    background:#dcfce7;
    border:1px solid #86efac;
    color:#166534;
}

#responseMsg.error{
    display:block;
    background:#fee2e2;
    border:1px solid #fca5a5;
    color:#991b1b;
}

.join-community-page{
    position:relative;
    overflow:hidden;
}

.join-community-page::after{
    content:"\f0c0"; /* fa-users */
    font-family:"Font Awesome 6 Free";
    font-weight:900;
    position:absolute;
    right:-60px;
    top:50%;
    transform:translateY(-50%) rotate(-10deg);
    font-size:24rem;
    color:rgba(27,54,93,.05);
    line-height:1;
    pointer-events:none;
    z-index:0;
}

.join-community-page .wrap{
    position:relative;
    z-index:1;
}
#benefits .sec-head{
    text-align:center;
    max-width:800px;
    margin:0 auto 50px;
}

#benefits .sec-head p{
    margin-left:auto;
    margin-right:auto;
}
#curriculum .curr-hdr{
    text-align:center;
    margin:0 auto 60px;
}

#curriculum .curr-hdr p{
    margin-left:auto;
    margin-right:auto;
}
#faq .sec-head{
    text-align:center;
    max-width:850px;
    margin:0 auto 50px;
}

#faq .sec-head p{
    margin-left:auto;
    margin-right:auto;
}

.success {
    display: block; 
    color: #f39200;;
}

.success1 {
    display: block;
    background: #f39200;
    border: 1px solid #3c2503;
    color: #000;
	padding-left: 5px;
}