/* NetworkerBridge Public V2 — Premium UAE Business Networking design system.
   Palette: Deep Navy #071C33 · Royal Blue #246BFD · Premium Gold #F4B942 (accent only) ·
   Warm Sand #FFF6E6 · Soft Blue #F4F8FF · White · Charcoal #1A2530 · Cool Gray #6B7280. */
:root{
  --navy:#071C33; --navy-2:#0d2a4a; --royal:#246BFD; --royal-d:#1a56d6; --gold:#F4B942; --gold-d:#d99e2b;
  --sand:#FFF6E6; --soft:#F4F8FF; --white:#fff; --charcoal:#1A2530; --gray:#6B7280;
  --ink:#152233; --muted:#6B7280; --line:#e4eaf3; --sand-line:#f0e2c4;
  --shadow:0 22px 60px rgba(7,28,51,.12); --shadow-sm:0 10px 30px rgba(7,28,51,.07);
  --radius:20px; --radius-lg:28px; --maxw:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}
/* anchor offset so the sticky header never covers a jumped-to section heading */
:where(section,div,article)[id]{scroll-margin-top:88px}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3{color:var(--navy);letter-spacing:-.025em}
.container{width:min(var(--maxw),calc(100% - 40px));margin:0 auto}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-d)}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--gold);border-radius:2px}
.kicker{font-size:.78rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase;color:var(--royal)}
.gold{color:var(--gold-d)}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:12px;padding:14px 22px;font-weight:750;border:1px solid transparent;cursor:pointer;font-size:.96rem;transition:.2s;white-space:normal;text-align:center;max-width:100%;min-height:52px}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--royal);color:#fff;box-shadow:0 12px 26px rgba(36,107,253,.28)}
.btn-primary:hover{background:var(--royal-d)}
.btn-gold{background:var(--gold);color:var(--navy);box-shadow:0 12px 26px rgba(244,185,66,.32);font-weight:850}
.btn-gold:hover{background:var(--gold-d)}
.btn-dark{background:var(--navy);color:#fff}
.btn-outline{border-color:var(--line);background:#fff;color:var(--navy)}
.btn-ghost-light{border-color:rgba(255,255,255,.3);color:#fff;background:rgba(255,255,255,.06)}
.btn-lg{padding:16px 26px;font-size:1.02rem}
/* header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(228,234,243,.9)}
.nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:11px;font-size:1.14rem;font-weight:850;color:var(--navy)}
.brand-mark{width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,var(--navy),var(--royal));display:grid;place-items:center;color:#fff;box-shadow:0 8px 20px rgba(36,107,253,.28);position:relative}
.brand-mark::after{content:"";position:absolute;inset:0;border-radius:11px;border:1.5px solid rgba(244,185,66,.5)}
.brand-mark svg{width:23px;height:23px}
.nav-links{display:flex;align-items:center;gap:24px;color:#38506e;font-size:.93rem;font-weight:650}
.nav-links a:hover{color:var(--royal)}
.nav-actions{display:flex;gap:10px;align-items:center}
.menu-btn{display:none;width:46px;height:46px;flex:0 0 46px;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:12px;font-size:1.4rem;line-height:1;color:var(--navy);cursor:pointer;box-shadow:var(--shadow-sm)}
.menu-btn:focus-visible{outline:3px solid rgba(36,107,253,.4);outline-offset:2px}
.nav-links .nav-cta{display:none}
/* hero */
.hero{position:relative;overflow:hidden;background:linear-gradient(160deg,#071C33 0%,#0d2a4a 55%,#10345c 100%);color:#fff;padding:0}
.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:0;align-items:stretch;min-height:600px}
.hero-left{padding:72px 56px 72px 0;display:flex;flex-direction:column;justify-content:center}
.hero .eyebrow{color:var(--gold)}
.hero h1{color:#fff;font-size:clamp(2.5rem,4.6vw,4.1rem);line-height:1.04;margin:20px 0 20px}
.hero h1 .hl{color:var(--gold)}
.hero-copy{font-size:1.14rem;color:#c7d6e8;max-width:600px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0 22px}
.hero-micro{font-size:.9rem;color:#9fb6d2;margin-top:6px}
.value-row{display:flex;flex-wrap:wrap;gap:8px 10px;margin-top:26px}
.value-row span{display:inline-flex;align-items:center;gap:7px;font-size:.84rem;font-weight:650;color:#dce7f4;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);padding:7px 12px;border-radius:999px}
.value-row span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold)}
.hero-media{position:relative;min-height:600px}
.hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,28,51,.75) 0%,rgba(7,28,51,.15) 35%,transparent 70%)}
.hero-badge{position:absolute;left:-34px;bottom:40px;z-index:3;background:#fff;color:var(--navy);border-radius:16px;padding:15px 18px;box-shadow:var(--shadow);max-width:250px;border-top:3px solid var(--gold)}
.hero-badge strong{display:block;font-size:1rem}
.hero-badge span{font-size:.82rem;color:var(--muted)}
/* sections + rhythm */
.section{padding:88px 0}
.section.sm{padding:64px 0}
.bg-soft{background:var(--soft)}
.bg-sand{background:var(--sand)}
.bg-navy{background:var(--navy);color:#fff}
.bg-navy h2,.bg-navy h3{color:#fff}
.section-head{max-width:780px;margin-bottom:40px}
.section-head.center{text-align:center;margin-inline:auto}
h2{font-size:clamp(1.9rem,3.4vw,2.9rem);line-height:1.1;margin:12px 0 14px}
.section-head p,.lead{color:var(--muted);font-size:1.06rem;margin:0}
.bg-navy .section-head p,.bg-navy .lead{color:#bcd0e8}
.bg-sand .eyebrow{color:var(--gold-d)}
/* featured event */
.featured{display:grid;grid-template-columns:1.1fr .9fr;gap:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow)}
.featured-media{position:relative;min-height:380px}
.featured-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.featured-media .tag{position:absolute;top:16px;left:16px;background:var(--gold);color:var(--navy);font-weight:850;font-size:.74rem;padding:6px 12px;border-radius:999px;letter-spacing:.04em}
.featured-body{padding:34px 36px;display:flex;flex-direction:column}
.featured-body h3{font-size:1.7rem;margin:8px 0 14px}
.efacts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:8px 0 18px}
.efact{display:flex;gap:10px;align-items:flex-start;font-size:.92rem}
.efact .i{color:var(--gold-d);font-size:1.05rem;line-height:1.2}
.efact b{color:var(--navy);display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:750}
.efact span{color:var(--ink);font-weight:600}
.price-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line);flex-wrap:wrap}
.price{font-size:1.5rem;font-weight:850;color:var(--navy)}
.price small{font-size:.78rem;color:var(--muted);font-weight:650}
.featured-note{font-size:.9rem;color:var(--muted);font-style:italic;margin-top:14px}
/* generic cards */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow-sm);transition:.2s}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.card .ic{width:46px;height:46px;border-radius:13px;background:linear-gradient(135deg,#eaf1ff,#dbe8ff);color:var(--royal);display:grid;place-items:center;font-size:1.25rem;font-weight:900;margin-bottom:14px}
.card.gold .ic{background:linear-gradient(135deg,#fff3d6,#ffe9b3);color:var(--gold-d)}
.card h3{font-size:1.12rem;margin:0 0 8px}
.card p{margin:0;color:var(--muted);font-size:.95rem}
.bg-navy .card{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1)}
.bg-navy .card p{color:#b9cde3}
/* chips (who you could meet / industries) */
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:700;font-size:.92rem;color:var(--navy);box-shadow:var(--shadow-sm)}
.chip::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold)}
.bg-sand .chip{background:#fff;border-color:var(--sand-line)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.media-card{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);min-height:420px;position:relative}
.media-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.quote-band{padding:30px 34px;border-radius:var(--radius);background:linear-gradient(135deg,var(--navy),#123c6a);color:#fff;display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center;border-left:5px solid var(--gold)}
.quote-band blockquote{margin:0;font-size:clamp(1.3rem,2.6vw,1.9rem);font-weight:800;line-height:1.25}
.quote-band small{color:#c9d8ea;display:block;margin-top:6px}
.inline-quote{font-size:clamp(1.3rem,2.6vw,1.9rem);font-weight:800;line-height:1.3;color:var(--navy);border-left:4px solid var(--gold);padding-left:20px;margin:0}
.bg-navy .inline-quote{color:#fff}
/* value pillars */
.check-list{display:grid;gap:14px;margin-top:22px}
.check{display:flex;gap:13px;align-items:flex-start}
.check .b{flex:0 0 26px;width:26px;height:26px;border-radius:8px;background:#fff3d6;color:var(--gold-d);display:grid;place-items:center;font-weight:900;font-size:.8rem;margin-top:2px}
.check strong{color:var(--navy)}.check span{color:var(--muted);font-size:.93rem}
.value-panel{background:#fff;border:1px solid var(--sand-line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow-sm)}
.value-panel h3{font-size:1.3rem;margin:0 0 8px}.value-panel p{color:var(--muted);margin:0}
/* month-based events browser */
.month-tabs{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:30px}
.month-tab{padding:11px 20px;border-radius:999px;border:1px solid var(--line);background:#fff;font-weight:800;color:var(--navy);cursor:pointer;font-size:.94rem;transition:.18s;display:inline-flex;gap:8px;align-items:center}
.month-tab .n{font-size:.72rem;font-weight:800;color:var(--muted);background:var(--soft);padding:2px 8px;border-radius:999px}
.month-tab:hover{border-color:var(--royal)}
.month-tab.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.month-tab.active .n{background:var(--gold);color:var(--navy)}
.events-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.event-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:.2s}
.event-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.event-image{height:190px;position:relative;background:#e9eef6}
.event-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.event-image .date-chip{position:absolute;top:12px;left:12px;background:#fff;border-radius:12px;padding:6px 10px;text-align:center;box-shadow:var(--shadow-sm);border-top:2px solid var(--gold)}
.event-image .date-chip b{display:block;font-size:1.1rem;color:var(--navy);line-height:1}
.event-image .date-chip span{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}
.event-image .feat{position:absolute;top:12px;right:12px;background:var(--gold);color:var(--navy);font-weight:850;font-size:.68rem;padding:5px 10px;border-radius:999px}
.event-body{padding:20px;display:flex;flex-direction:column;gap:11px;flex:1}
.badges{display:flex;gap:7px;flex-wrap:wrap}
.badge{padding:5px 9px;border-radius:999px;background:#eef4ff;color:#2254ad;font-size:.71rem;font-weight:800}
.badge.gold{background:#fff3d6;color:var(--gold-d)}
.event-card h3{font-size:1.18rem;margin:0}
.event-meta{display:grid;gap:6px;color:var(--muted);font-size:.88rem}
.event-value{font-size:.9rem;color:var(--ink)}
.event-bottom{margin-top:auto;padding-top:12px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}
.event-fee{font-weight:850;color:var(--navy)}
.event-fee small{font-weight:650;color:var(--muted);font-size:.72rem}
/* how it works timeline */
.timeline{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:20px}
.timeline::before{content:"";position:absolute;top:33px;left:8%;right:8%;height:2px;background:linear-gradient(90deg,var(--royal),var(--gold better));background:linear-gradient(90deg,var(--royal),var(--gold))}
.tl-step{position:relative;text-align:center;padding:0 6px}
.tl-num{width:66px;height:66px;margin:0 auto 16px;border-radius:50%;background:#fff;border:2px solid var(--gold);color:var(--navy);display:grid;place-items:center;font-weight:900;font-size:1.3rem;position:relative;z-index:2;box-shadow:var(--shadow-sm)}
.tl-img{width:100%;height:120px;border-radius:14px;overflow:hidden;margin-bottom:14px;position:relative}
.tl-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tl-step h3{font-size:1.05rem;margin:0 0 6px}
.tl-step p{font-size:.86rem;color:var(--muted);margin:0}
.bg-navy .tl-num{background:rgba(255,255,255,.05);color:#fff}
.bg-navy .tl-step p{color:#b9cde3}
/* insights hub */
.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.article{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:var(--shadow-sm);transition:.2s;display:flex;flex-direction:column}
.article:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.article-img{height:180px;position:relative;background:#e9eef6}
.article-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.article-img .cat{position:absolute;top:12px;left:12px;background:var(--navy);color:#fff;font-weight:800;font-size:.68rem;padding:5px 10px;border-radius:999px}
.article-body{padding:20px;display:flex;flex-direction:column;gap:9px;flex:1}
.article-body h3{font-size:1.1rem;margin:0;line-height:1.3}
.article-body p{margin:0;color:var(--muted);font-size:.9rem}
.article-body .rt{font-size:.78rem;color:var(--gold-d);font-weight:750;margin-top:auto}
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cat-card{border:1px solid var(--line);border-radius:16px;padding:20px;background:#fff;box-shadow:var(--shadow-sm)}
.cat-card .ic{width:40px;height:40px;border-radius:11px;background:#fff3d6;color:var(--gold-d);display:grid;place-items:center;font-weight:900;margin-bottom:12px}
.cat-card h3{font-size:1.02rem;margin:0 0 6px}.cat-card p{margin:0;color:var(--muted);font-size:.88rem}
/* faq */
.faq{display:grid;gap:12px;max-width:880px;margin:0 auto}
.faq details{border:1px solid var(--line);border-radius:14px;background:#fff;padding:18px 20px;box-shadow:var(--shadow-sm)}
.faq summary{font-weight:780;color:var(--navy);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::after{content:"+";color:var(--gold-d);font-weight:900;font-size:1.2rem}
.faq details[open] summary::after{content:"−"}
.faq p{color:var(--muted);margin:12px 0 0}
/* CTA band */
.cta{position:relative;overflow:hidden;border-radius:var(--radius-lg);padding:56px;color:#fff;background:linear-gradient(135deg,var(--navy),#123c6a)}
.cta .bgimg{position:absolute;inset:0;opacity:.22}
.cta .bgimg img{width:100%;height:100%;object-fit:cover}
.cta .inner{position:relative;display:grid;grid-template-columns:1.3fr auto;gap:28px;align-items:center}
.cta h2{color:#fff;margin:0}
.cta p{color:#cdddf0;max-width:640px;margin:10px 0 0}
.cta .actions{display:flex;gap:12px;flex-wrap:wrap}
.member-strip{margin-top:22px;background:var(--sand);border:1px solid var(--sand-line);border-radius:var(--radius);padding:26px 28px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.member-strip h3{margin:0;color:var(--navy)}.member-strip p{margin:4px 0 0;color:var(--muted)}
/* footer */
footer{background:var(--navy);color:#9fb6d2;padding:56px 0 28px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:34px}
.footer-title{color:#fff;font-weight:850;font-size:1.12rem;margin-bottom:6px}
.footer .promise{color:var(--gold);font-weight:800}
.footer-links{display:grid;gap:10px;font-size:.92rem}
.footer-links a:hover{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:22px;font-size:.82rem;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
/* page hero (events / detail / insights) */
.page-hero{background:linear-gradient(160deg,#071C33,#10345c);color:#fff;padding:70px 0}
.page-hero h1{color:#fff;font-size:clamp(2.1rem,4vw,3.4rem);margin:14px 0 14px}
.page-hero p{color:#c7d6e8;max-width:720px;font-size:1.08rem}
.page-hero .eyebrow{color:var(--gold)}
/* event detail */
.detail-banner{height:360px;position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow)}
.detail-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.detail-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,28,51,.6),transparent 60%)}
.detail-layout{display:grid;grid-template-columns:1fr 380px;gap:34px;align-items:start;margin-top:24px;position:relative;z-index:2}
.detail-lead{min-width:0}
.booking-card{position:sticky;top:94px;border:1px solid var(--line);border-radius:var(--radius);padding:26px;background:#fff;box-shadow:var(--shadow);border-top:4px solid var(--gold)}
.detail-prose{max-width:860px}
@media(min-width:1001px){.booking-card{margin-top:-120px}}  /* only the card overlaps the banner; the title stays readable below it */
.booking-card .price{font-size:2rem}
.booking-row{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid #eef1f5;font-size:.92rem}
.booking-row:last-of-type{border-bottom:0}
.booking-row span:first-child{color:var(--muted)}
.booking-row b{color:var(--navy)}
.notice{border-left:4px solid var(--royal);background:var(--soft);padding:14px 16px;border-radius:12px;color:#3f5470;font-size:.9rem}
.reserve-form label{display:block;font-weight:700;font-size:.84rem;color:var(--navy);margin:12px 0 6px}
.reserve-form input{width:100%;border:1px solid var(--line);border-radius:11px;padding:11px 12px;font:inherit;outline:none}
.reserve-form input:focus{border-color:var(--royal);box-shadow:0 0 0 3px rgba(36,107,253,.12)}
.pwa-pill{position:fixed;right:18px;bottom:18px;background:var(--navy);color:#fff;border-radius:999px;padding:11px 16px;font-size:.78rem;font-weight:800;box-shadow:var(--shadow);z-index:40;display:none;border:1px solid rgba(244,185,66,.4)}
/* responsive */
@media(max-width:1000px){
  .hero-grid{grid-template-columns:1fr;min-height:0}
  .hero-left{padding:56px 0 46px}
  .hero-media{min-height:300px;order:-1}
  .hero-media::after{background:linear-gradient(0deg,rgba(7,28,51,.6),transparent 60%)}
  .hero-badge{display:none}
  .featured{grid-template-columns:1fr}.featured-media{min-height:240px}
  .split{grid-template-columns:1fr;gap:28px}
  .grid-3,.events-grid,.article-grid,.cat-grid{grid-template-columns:repeat(2,1fr)}
  .timeline{grid-template-columns:repeat(2,1fr)}.timeline::before{display:none}
  .detail-layout{grid-template-columns:1fr}.booking-card{position:static}
  .cta .inner{grid-template-columns:1fr}
  .nav-links{display:none}.menu-btn{display:inline-flex}
  .nav:has(.menu-btn) .nav-actions .btn{display:none} /* hide header CTAs only where a hamburger replaces them */
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .container{width:min(100% - 28px,var(--maxw))}
  .section{padding:56px 0}
  .grid-3,.grid-2,.events-grid,.article-grid,.cat-grid,.efacts{grid-template-columns:1fr}
  .timeline{grid-template-columns:1fr}
  .quote-band{grid-template-columns:1fr}
  .cta{padding:34px 22px}
  .nav-actions .btn-outline{display:none}
  .member-strip{flex-direction:column;align-items:flex-start}
  .footer-grid{grid-template-columns:1fr}
  .hero h1{font-size:2.3rem}
}
.nav-links[data-open="1"]{display:flex;position:absolute;top:calc(100% + 8px);left:16px;right:16px;flex-direction:column;align-items:stretch;background:#fff;padding:12px;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);gap:4px}
.nav-links[data-open="1"] a{display:flex;align-items:center;min-height:48px;padding:10px 14px;border-radius:12px;font-size:1rem;font-weight:700;color:var(--navy)}
.nav-links[data-open="1"] a:hover,.nav-links[data-open="1"] a:focus-visible{background:var(--soft);color:var(--royal);outline:none}
.nav-links[data-open="1"] .nav-cta{display:flex;justify-content:center;min-height:50px;margin-top:4px}
.nav-links[data-open="1"] .nav-cta.login{border:1px solid var(--line);color:var(--navy)}
.nav-links[data-open="1"] .nav-cta.find{background:var(--royal);color:#fff}
.nav-links[data-open="1"] .nav-cta.find:hover{background:var(--royal-d);color:#fff}
.nav-links[data-open="1"] .nav-divider{height:1px;background:var(--line);margin:6px 2px}
/* month selector: horizontally scrollable + compact on mobile (no layout break) */
@media(max-width:760px){
  /* isolated horizontal scroller — no page overflow, no native scrollbar, December reachable, clear of next section */
  .month-tabs{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;justify-content:flex-start;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scroll-padding-inline:20px;padding:4px 20px 16px;margin:0 0 22px;scrollbar-width:none;-ms-overflow-style:none}
  .month-tabs::-webkit-scrollbar{width:0;height:0;display:none}
  .month-tab{flex:0 0 auto;scroll-snap-align:start;min-height:44px}
}
/* accordion (progressive disclosure) */
.acc{display:grid;gap:12px}
.acc details{border:1px solid var(--line);border-radius:14px;background:#fff;padding:16px 20px;box-shadow:var(--shadow-sm)}
.bg-soft .acc details,.bg-sand .acc details{background:#fff}
.acc summary{font-weight:780;color:var(--navy);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px;align-items:center}
.acc summary::after{content:"+";color:var(--gold-d);font-weight:900;font-size:1.25rem;line-height:1}
.acc details[open] summary::after{content:"−"}
.acc .acc-body{margin-top:14px;color:var(--muted)}
.acc .acc-body ul{margin:8px 0 0;padding-left:18px}.acc .acc-body li{margin:5px 0}
.cmp{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cmp .col{border:1px solid var(--line);border-radius:var(--radius);padding:24px;background:#fff;box-shadow:var(--shadow-sm)}
.cmp .col.lead-col{border-top:4px solid var(--gold)}
.cmp h3{margin:0 0 12px}.cmp ul{margin:0;padding-left:18px;color:var(--muted)}.cmp li{margin:6px 0}
@media(max-width:620px){.cmp{grid-template-columns:1fr}}
/* networking formats imagery strip */
.fmt-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.fmt{position:relative;border-radius:16px;overflow:hidden;min-height:150px;box-shadow:var(--shadow-sm)}
.fmt img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fmt::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,28,51,.82),rgba(7,28,51,.1) 70%)}
.fmt b{position:absolute;left:14px;bottom:12px;right:12px;color:#fff;font-weight:800;font-size:.98rem;z-index:2}
.fmt .tag{position:absolute;top:10px;left:10px;z-index:2;background:var(--gold);color:var(--navy);font-weight:850;font-size:.66rem;padding:4px 9px;border-radius:999px}
@media(max-width:900px){.fmt-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.fmt-grid{grid-template-columns:1fr}}
/* email subscription */
.subscribe{background:linear-gradient(135deg,var(--navy),#123c6a);border-radius:var(--radius-lg);padding:40px;color:#fff;display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center}
.subscribe h2{color:#fff;margin:0 0 8px}.subscribe p{color:#c9d8ea;margin:0}
.sub-form{display:grid;gap:10px}
.sub-row{display:flex;gap:10px;flex-wrap:wrap}
.sub-row input{flex:1;min-width:180px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff;border-radius:11px;padding:13px 14px;font:inherit}
.sub-row input::placeholder{color:#b9cde3}
.consent{display:flex;gap:9px;align-items:flex-start;font-size:.84rem;color:#c9d8ea}
.consent input{margin-top:3px}
.sub-msg{font-size:.86rem;color:var(--gold);min-height:1em}
@media(max-width:820px){.subscribe{grid-template-columns:1fr;padding:30px 24px}}
.sub-row .btn{min-width:160px}

/* ============================================================
   MOBILE RESPONSIVE CORRECTIVE PASS (2026-10-02) — presentation only.
   Goals: zero horizontal page movement, consistent CTA alignment,
   comfortable touch targets, clean section rhythm. No content change. ============================================================ */
/* defensive: nothing inside a grid/flex child may force the page wider */
.container>*{min-width:0}
img,video{height:auto}

/* sticky-header stability: reserve space so opening the menu never shifts width */
.site-header{width:100%}

/* PWA install pill must never cover CTAs or overflow */
.pwa-pill{max-width:calc(100vw - 32px);white-space:normal;text-align:center}

@media(max-width:820px){
  :root{--radius:18px;--radius-lg:22px}
  .section{padding:64px 0}
  .section.sm{padding:48px 0}
  .section-head{margin-bottom:28px}
  /* CTA rows: stack full-width with consistent width + gap (spec §8) */
  /* STANDARD section CTAs: content-sized, left-aligned, stacked — NOT auto full-width (owner CTA policy §18/§43) */
  .hero-actions,.cta .actions,.member-strip{width:100%}
  .hero-actions{flex-direction:column;align-items:flex-start;gap:12px}
  .cta .actions{flex-direction:column;align-items:flex-start;gap:12px}
  .hero-actions .btn,.cta .actions .btn{width:auto;max-width:100%}
  /* FORM / conversion CTAs stay full-width within their card */
  .featured-body .reserve,.featured-body .btn{width:100%}
}

@media(max-width:620px){
  .container{width:min(100% - 32px,var(--maxw))}  /* 16px side gutters */
  .section{padding:52px 0}
  .hero-left{padding:40px 0 38px}
  .hero h1{font-size:clamp(1.9rem,8.5vw,2.4rem);line-height:1.1}
  .hero-copy{font-size:1.02rem}
  .hero-micro{font-size:.84rem}
  h2{font-size:clamp(1.6rem,6.6vw,2rem)}
  .featured-body{padding:24px 22px}
  .featured-body h3{font-size:1.4rem}
  .price-row{align-items:flex-start}
  .quote-band{padding:24px 22px}
  /* event cards: full-width reserve CTA aligned to bottom */
  .event-bottom{flex-direction:column;align-items:stretch;gap:12px}
  .event-bottom .btn,.event-bottom .event-fee{width:100%;text-align:center}
  /* member strip: stacked, Member Login content-sized & left-aligned (§17) */
  .member-strip{flex-direction:column;align-items:flex-start;gap:10px}
  .member-strip .btn{width:auto}
  /* forms: single column, 16px inputs (prevents iOS zoom), big tap targets */
  .reserve-form input,.sub-row input{font-size:16px;min-height:48px}
  .sub-row{flex-direction:column}
  .sub-row input{min-width:0;width:100%}
  .sub-form .btn{width:100%}
  /* FAQ / accordions: comfortable tap area */
  .faq summary,.acc summary{min-height:30px;padding:2px 0}
  .faq details,.acc details{padding:16px 16px}
  /* footer breathing room */
  footer{padding:44px 0 24px}
  .footer-bottom{flex-direction:column;gap:10px}
}

/* tablet: 2-up stays tidy, 3-up collapses handled above; keep gutters comfy */
@media(min-width:621px) and (max-width:900px){
  .container{width:min(100% - 48px,var(--maxw))}
}

/* keyboard focus visibility (accessibility §21) */
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid rgba(36,107,253,.4);outline-offset:2px}

/* respect reduced-motion */
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.btn:hover,.card:hover,.event-card:hover,.article:hover{transform:none}}

/* ============================================================
   FINAL PUBLIC PASS (2026-10-02) — registration, payment UX, QR pass,
   image fallbacks, month-tabs, job note. Presentation only. ============================================================ */
.req{color:#c0392b;font-weight:800}
/* small event-suitability note (not a big warning banner) */
.job-note{margin:14px 0 0;background:var(--soft);border:1px solid var(--line);border-left:4px solid var(--royal);border-radius:12px;padding:12px 15px;font-size:.9rem;color:#3f5470}
/* designed image fallback (never blank grey) */
.img-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:linear-gradient(135deg,#0d2a4a,#10345c 60%,#163f6e);color:#fff;text-align:center;padding:16px}
.img-fallback .fb-mark{width:58px;height:58px;border-radius:16px;background:rgba(255,255,255,.08);border:1.5px solid rgba(244,185,66,.5);display:grid;place-items:center;color:var(--gold)}
.img-fallback .fb-mark svg{width:30px;height:30px}
.img-fallback .fb-txt{font-weight:800;letter-spacing:.02em;font-size:.95rem;color:#dbe8ff}
.event-image.noimg,.featured-media.noimg,.detail-banner.noimg{background:#0d2a4a}
/* month tabs: contained horizontal scroll, no page movement, no ugly scrollbar */
.month-tab{scroll-snap-align:start}
/* registration form */
.reg-form{max-width:900px;margin:0 auto}
.form-section{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;box-shadow:var(--shadow-sm);margin-bottom:16px}
.form-sec-label{font-size:.74rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase;color:var(--royal);margin-bottom:14px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px}
.fld{margin-bottom:4px;min-width:0}
.reg-form label{display:block;font-weight:700;font-size:.86rem;color:var(--navy);margin:12px 0 6px}
.reg-form input,.reg-form select,.reg-form textarea{width:100%;border:1px solid var(--line);border-radius:11px;padding:12px 13px;font:inherit;font-size:16px;outline:none;background:#fff}
.reg-form textarea{min-height:84px;resize:vertical}
.reg-form input:focus,.reg-form select:focus,.reg-form textarea:focus{border-color:var(--royal);box-shadow:0 0 0 3px rgba(36,107,253,.12)}
.reg-form input.invalid,.reg-form select.invalid{border-color:#c0392b;box-shadow:0 0 0 3px rgba(192,57,43,.1)}
.radio-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.radio-row .rc{display:inline-flex;align-items:center;gap:8px;font-weight:650;font-size:.92rem;margin:0;background:var(--soft);border:1px solid var(--line);padding:10px 16px;border-radius:10px;cursor:pointer;min-height:44px}
.radio-row .rc input{width:auto}
.ack{display:flex;gap:10px;align-items:flex-start;font-weight:650;color:var(--ink);font-size:.92rem}
.ack input{width:auto;margin-top:3px;flex:0 0 auto}
.fmsg{font-size:.8rem;color:#c0392b;margin-top:5px;min-height:0}.fmsg:empty{margin:0}
.pay-fee{font-size:1.05rem;color:var(--navy);margin-bottom:4px}.pay-fee b{font-size:1.2rem}
.pay-msg{border-left:4px solid var(--royal);background:var(--soft);padding:12px 15px;border-radius:12px;color:#3f5470;font-size:.9rem;margin-top:8px}
.pay-msg.err{border-left-color:#c0392b;background:#fdf0ee;color:#8f2d22}
/* success + pass */
.reg-success{text-align:center;max-width:620px;margin:0 auto 22px}
.reg-success .sico{width:58px;height:58px;border-radius:50%;background:#eafaf4;color:#14866d;display:grid;place-items:center;font-size:1.7rem;font-weight:800;margin:0 auto 10px}
.reg-success h2{margin:0 0 6px}
.success-grid{display:grid;grid-template-columns:1.4fr .9fr;gap:20px;max-width:900px;margin:0 auto;align-items:start}
.kv2{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}
.kv2>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.kv2>div>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:750}
.kv2>div>b{color:var(--navy);font-weight:750;font-size:.95rem;overflow-wrap:anywhere}
.paystat{display:inline-block;font-weight:850;font-size:.78rem;padding:3px 10px;border-radius:999px}
.paystat.warn{background:#fff3e0;color:#b36b00}.paystat.ok{background:#eafaf4;color:#14866d}
.rowbtns{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.pass{background:linear-gradient(135deg,var(--navy),#123c6a);color:#fff;border-radius:var(--radius);padding:22px;text-align:center;border-top:4px solid var(--gold)}
.pass-head{font-size:.74rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.pass-qr{width:160px;height:160px;background:#fff;border-radius:12px;padding:10px;margin:0 auto;display:block;fill:var(--navy)}
.pass-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.05rem;font-weight:800;letter-spacing:.06em;margin-top:12px;color:#fff;word-break:break-all}
.pass-note{font-size:.78rem;color:#bcd0e8;margin-top:8px}
@media(max-width:760px){ .form-grid{grid-template-columns:1fr} .success-grid{grid-template-columns:1fr} .kv2{grid-template-columns:1fr 1fr} }
/* PWA pill dismissible */
.pwa-pill .pwa-x{margin-left:10px;cursor:pointer;opacity:.7;font-weight:800}
.pwa-pill .pwa-x:hover{opacity:1}

/* ============================================================
   NETWORKING INSIGHTS — hub + article template (2026-10-02). ============================================================ */
a.article{color:inherit}
/* featured article (hub) */
.feature-article{display:grid;grid-template-columns:1.1fr 1fr;gap:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);color:inherit}
.feature-article:hover{transform:translateY(-3px);box-shadow:var(--shadow);transition:.2s}
.fa-media{position:relative;min-height:340px}
.fa-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fa-body{padding:34px 38px;display:flex;flex-direction:column;justify-content:center}
.fa-body h2{font-size:clamp(1.5rem,2.6vw,2.1rem);margin:10px 0 12px}
.fa-body p{color:var(--muted);margin:0 0 16px}
.fa-body .rt{font-size:.9rem;color:var(--gold-d);font-weight:800}
/* article hero */
.article-hero{background:linear-gradient(160deg,#071C33,#10345c);color:#fff;padding:54px 0 48px}
.article-hero .eyebrow{color:var(--gold)}
.article-hero h1{color:#fff;font-size:clamp(1.9rem,4vw,3rem);line-height:1.1;margin:12px 0 14px;max-width:16ch}
.article-hero .lead{color:#c7d6e8;max-width:60ch}
.article-hero .back-link{color:#9fb6d2;font-weight:700;font-size:.9rem;display:inline-block;margin-bottom:12px}
.article-meta{display:flex;gap:10px;align-items:center;margin-top:16px;color:#9fb6d2;font-size:.86rem;font-weight:650}
/* article layout */
.article-wrap{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:40px;align-items:start}
.article-content{min-width:0;max-width:720px}
.article-hero-img{border-radius:var(--radius);overflow:hidden;margin-bottom:26px;aspect-ratio:16/8;background:#0d2a4a}
.article-hero-img img{width:100%;height:100%;object-fit:cover;display:block}
.article-content h2{font-size:clamp(1.4rem,2.4vw,1.8rem);margin:30px 0 12px;scroll-margin-top:96px}
.article-content h3{font-size:1.2rem;margin:22px 0 8px;scroll-margin-top:96px}
.article-content p{color:#33465c;margin:0 0 14px;font-size:1.04rem}
.article-content ul{margin:0 0 16px;padding-left:20px;color:#33465c}
.article-content li{margin:7px 0}
.callout{background:var(--sand);border:1px solid var(--sand-line);border-left:4px solid var(--gold);border-radius:14px;padding:16px 18px;margin:18px 0;font-weight:700;color:var(--navy);font-size:1.05rem}
.takeaway{background:var(--soft);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;margin:26px 0}
.takeaway .tk-h{font-size:.74rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--royal);margin-bottom:8px}
.takeaway p{margin:0;color:var(--navy);font-weight:650}
.article-cta{margin-top:28px;background:linear-gradient(135deg,var(--navy),#123c6a);color:#fff;border-radius:var(--radius-lg);padding:30px;text-align:center}
.article-cta h3{color:#fff;margin:0 0 16px;font-size:1.25rem}
/* article sidebar */
.article-side{position:sticky;top:94px}
.toc{border:1px solid var(--line);border-radius:14px;padding:16px 18px;background:#fff;box-shadow:var(--shadow-sm);margin-bottom:16px}
.toc-h{font-size:.74rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.toc ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.toc a{font-size:.9rem;color:var(--navy);font-weight:650}.toc a:hover{color:var(--royal)}
.related{border:1px solid var(--line);border-radius:14px;padding:16px 18px;background:#fff;box-shadow:var(--shadow-sm);display:grid;gap:12px}
.related a{font-size:.92rem;color:var(--navy);font-weight:700;line-height:1.35}.related a:hover{color:var(--royal)}
@media(max-width:900px){
  .feature-article{grid-template-columns:1fr}.fa-media{min-height:200px}
  .article-wrap{grid-template-columns:1fr;gap:24px}
  .article-side{position:static;order:-1}
  .article-side .related{display:none}
}

/* ============================================================
   FINAL PRECISION PASS (2026-10-02) — CTA policy, event-detail balance, PWA. ============================================================ */
/* very narrow screens: standard section CTAs go full-width only here */
@media(max-width:380px){
  .hero-actions .btn,.cta .actions .btn,.member-strip .btn{width:100%}
  .member-strip{align-items:stretch}
}
/* event-detail desktop balance: cap content width, keep booking card populated & sticky in view */
@media(min-width:1001px){
  .detail-layout{grid-template-columns:minmax(0,1.6fr) minmax(340px,.95fr);gap:40px}
  .booking-card{align-self:start}
}
/* registration section: premium, compact, centered — not a wide admin form */
.reg-form .form-grid{max-width:100%}
#nb-register-section .container{max-width:980px}
/* payment select sits consistently with other fields */
.reg-form select,.reg-form input,.reg-form textarea{appearance:auto}
/* PWA install prompt — compact, safe-area aware, never permanent */
.pwa-pill{display:none;align-items:center;gap:6px;bottom:max(18px,env(safe-area-inset-bottom));right:18px;max-width:min(320px,calc(100vw - 32px))}
.pwa-pill.show{display:inline-flex}
@media(max-width:620px){ .pwa-pill{left:16px;right:16px;max-width:none;justify-content:center;bottom:max(14px,env(safe-area-inset-bottom))} }
