@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Montserrat:wght@400;500;600;700;800;900&display=swap');
:root{--green:#00dc66;--teal:#00a6be;--ink:#080808;--deep-green:#007a54;--line:#d8e0dc;--body:'Montserrat',Arial,sans-serif;--display:'Bebas Neue','Arial Narrow',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:#fff;color:var(--ink);font:16px/1.5 var(--body)}.container{max-width:1160px;width:calc(100% - 48px);margin-inline:auto}a{color:inherit;text-underline-offset:4px}a:focus-visible,input:focus-visible,button:focus-visible{outline:3px solid #008374;outline-offset:4px}h1,h2,h3,p{overflow-wrap:break-word}.skip{position:absolute;top:-100px;background:#fff;padding:15px;z-index:9}.skip:focus{top:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
/* Logo and tagline share one left-aligned lockup. */
.header{border-bottom:1px solid #edf0ee;padding:20px 0}.header-inner{display:flex;justify-content:space-between;align-items:center;gap:24px}.brand-lockup{display:flex;align-items:center;gap:26px;min-width:0}.brand-lockup img{display:block;width:110px;height:auto}.brand-lockup p{font-size:14px;line-height:1.5;margin:0}.contact-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 24px;background:linear-gradient(105deg,var(--teal),var(--green));color:var(--ink);font-size:14px;font-weight:700;text-decoration:none;border-radius:3px;flex-shrink:0}.contact-button:hover,.reserve:hover{filter:brightness(.94)}
/* Matched event and membership introductions. */
.event{padding-block:28px 38px}.event-highlight,.membership-highlight{display:grid;grid-template-columns:360px 1fr;max-width:970px;gap:48px;align-items:center;margin:0 auto 32px}.event-highlight>img,.membership-highlight>img{width:100%;height:auto;display:block}.highlight-description{font:400 23px/1.5 var(--body);letter-spacing:-.02em;margin:0 0 16px}.highlight-description strong{font-weight:700}.highlight-location{font-size:14px;line-height:1.6;color:#58615d;margin:0}.membership-highlight .highlight-location{color:#c6d2cb}
/* The form spans both programme rows; networking aligns with its lower edge. */
.participation-band{display:grid;grid-template-columns:1fr 1fr 1fr 1.4fr;grid-template-rows:auto auto;column-gap:24px;row-gap:22px;padding-top:24px;border-top:1px solid var(--line);align-items:start}.schedule-item{min-width:0;border-top:3px solid var(--green);padding-top:12px}.eyebrow{font-size:12px;letter-spacing:.6px;font-weight:700;margin:0 0 12px}.talk-label{display:flex;align-items:center;flex-wrap:wrap;gap:7px;min-height:28px}.talk-label>span:first-child{color:var(--deep-green)}.green-label{display:inline-block;background:linear-gradient(105deg,var(--teal),var(--green));color:var(--ink);padding:5px 9px;border-radius:2px;font-size:12px;font-weight:700;line-height:1.5;letter-spacing:.3px}.time{font-size:14px;color:var(--deep-green);font-weight:700;margin:0 0 10px}.schedule-item h2{font:600 17px/1.4 var(--body);letter-spacing:-.02em;margin:0 0 18px}.schedule-item ul{list-style:none;padding:0;margin:0}.schedule-item li{font-size:14px;line-height:1.45;margin-bottom:11px}.schedule-item li span{display:block;font-size:14px;color:#58615d}.public-event{border-top-color:var(--ink)}.public-event>.eyebrow{display:flex;align-items:center;min-height:28px}.public-event .time{color:#58615d}.public-description{font-size:16px;line-height:1.5;margin:0 0 20px}
.booking{grid-column:4;grid-row:1/3;align-self:stretch;min-width:0;background:#e5faf3;padding:20px;display:flex;flex-direction:column}.booking h2{font:600 22px/1.3 var(--body);letter-spacing:-.025em;margin:0 0 12px}.booking-intro{font-size:14px;line-height:1.6;margin:0 0 22px}.booking-intro strong{color:#006247}.booking form{margin-top:auto}.fields{display:grid;grid-template-columns:1fr;gap:0}label{display:block;font-size:14px;font-weight:600;margin-bottom:13px}input:not([type=checkbox]){display:block;width:100%;min-width:0;padding:11px 10px;border:1px solid #93aaa0;border-radius:0;background:white;color:black;font:400 16px var(--body);margin-top:6px}input::placeholder{font-size:14px;color:#6c726f}.reserve{display:block;background:linear-gradient(105deg,var(--teal),var(--green));color:var(--ink);padding:13px 20px;border:0;width:100%;font:700 16px/1.5 var(--body);cursor:pointer}.form-note{font-size:12px;color:#505b55;line-height:1.6;margin:12px 0 0}.privacy-note{margin:17px 0 22px}.programme-foot{grid-column:1/4;grid-row:2;align-self:end;border-top:1px solid var(--line);padding:18px 0 20px}.programme-foot p{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:14px;line-height:1.6;margin:0}.programme-foot .green-label{font-size:14px}.network-time{font-size:14px;color:var(--deep-green)}.network-description{flex-basis:100%}
/* Membership keeps the supplied artwork and photos on black. */
.membership-dark{width:100%;background:#000;color:white;padding:48px 0}.membership-highlight{margin-bottom:38px}.photo-interlude{margin:0;padding:0 0 34px}.photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.photos img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}.caption{font-size:12px;color:#b9c9c0;margin-top:14px}.membership-intro{font-size:18px;line-height:1.75;max-width:1050px;margin:0 0 44px;color:#d8e2dc}.membership-intro strong{color:white;font-weight:700}.reasons-title{font:400 28px/1.35 var(--body);letter-spacing:-.025em;margin:0 0 32px}.membership-details{display:grid;grid-template-columns:1fr 1fr;gap:60px}.audience{padding-right:20px}.audience .eyebrow,.impacts .eyebrow{color:var(--green)}.audience .stat{font:700 100px/1 var(--body);letter-spacing:-.07em;color:var(--green);margin:10px 0 14px}.stat span{font-size:60px}.stat .stat-prefix{font-size:34px;letter-spacing:-.02em;font-weight:500}.audience h3{font-size:23px;line-height:1.4;font-weight:600;margin:0 0 14px;letter-spacing:-.02em}.audience>p:not(.eyebrow):not(.stat):not(.benchmark){font-size:16px;line-height:1.7;color:#d8e2dc;margin:22px 0 0}.audience .benchmark{font-size:18px;color:var(--green);line-height:1.5;margin:0}.impacts{border-left:1px solid #3d5148;padding-left:40px}.impacts article{padding:24px 0;border-top:1px solid #3d5148}.impacts article:first-child{padding-top:0;border-top:0}.impacts article:last-child{padding-bottom:0}.impacts h3{font:400 32px/1.2 var(--display);margin:0 0 12px}.impacts article>p:last-child{font-size:16px;line-height:1.7;color:#d8e2dc;margin:0}
/* One balanced monochrome row, in the requested company order. */
.members-closing{max-width:1240px;padding-block:46px 50px;background:white}.members-closing h2{font:400 clamp(18px,1.6vw,22px)/1.5 var(--body);letter-spacing:-.03em;text-align:center;margin:0 0 30px}.members-closing h2 strong{font-weight:700}.members-closing h2 span{color:var(--deep-green)}.isolated-logos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));column-gap:38px;align-items:center;padding:14px 0}.member-logo{min-width:0;display:flex;align-items:center;justify-content:center}.logo-window{position:relative;overflow:hidden;width:88%}.logo-window img{position:absolute;max-width:none;height:auto;display:block;filter:grayscale(1)}
/* Original footer copy and centered composition, in the landing palette. */
.site-footer{background:#000;color:#fff;padding:64px 0 48px;text-align:center}.footer-opening{max-width:1050px;margin:0 auto}.footer-mission{font-size:21px;line-height:1.65;margin:0 auto 24px;max-width:990px}.footer-email{display:block;color:#fff;font-size:18px;font-weight:500;line-height:1.3;letter-spacing:-.035em;text-decoration:none;overflow-wrap:anywhere;margin:0 0 38px}.footer-email:hover{text-decoration:underline}.footer-opening h2{font:600 26px/1.6 var(--body);letter-spacing:-.025em;margin:0;color:var(--green)}.footer-socials{display:flex;justify-content:center;align-items:center;gap:20px;margin:32px auto 24px}.footer-socials a{width:52px;height:52px;flex:0 0 52px;display:flex;align-items:center;justify-content:center;border:1px solid #fff;border-radius:50%;text-decoration:none;color:var(--ink);background:#fff;padding:13px}.footer-socials svg{display:block;width:24px;height:24px;flex-shrink:0}.footer-socials a:hover{border-color:var(--green);background:#102018;color:var(--green)}.site-footer a:focus-visible{outline-color:var(--green)}.footer-legal{border-top:1px solid #35463d;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:20px;text-align:left;font-size:12px;line-height:1.7;color:#c6d2cb}.footer-legal p{margin:0}.footer-legal nav{display:flex;gap:20px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:1050px){.participation-band{column-gap:16px;grid-template-columns:1fr 1fr 1fr 1.4fr}.booking{padding:16px}.booking h2{font-size:20px}.event-highlight,.membership-highlight{grid-template-columns:310px 1fr;gap:32px}.schedule-item h2{font-size:16px}.talk-label{align-items:flex-start;flex-direction:column;gap:4px;min-height:50px}.public-event>.eyebrow{min-height:50px;align-items:flex-start;padding-top:4px}.isolated-logos{column-gap:30px}}
@media(max-width:850px){.participation-band{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto auto auto}.booking{grid-column:1/-1;grid-row:3}.booking form{margin-top:0}.booking .fields{grid-template-columns:1fr 1fr;gap:16px}.programme-foot{grid-column:1/-1;grid-row:2;padding-bottom:0}.talk-label{align-items:center;flex-direction:row;min-height:28px}.public-event>.eyebrow{min-height:28px;align-items:center;padding-top:0}.event-highlight,.membership-highlight{grid-template-columns:260px 1fr;gap:26px}.highlight-description{font-size:21px}.membership-details{gap:28px}.audience{padding-right:0}.impacts{padding-left:28px}.audience .stat{font-size:82px}.stat span{font-size:52px}.members-closing h2{font-size:20px}.footer-mission{font-size:19px}.footer-opening h2{font-size:23px}}
@media(max-width:600px){.container{width:calc(100% - 32px)}.header{padding:16px 0}.header-inner{gap:12px}.brand-lockup{gap:12px}.brand-lockup img{width:76px}.brand-lockup p{font-size:12px;max-width:155px}.contact-button{padding:10px 12px;font-size:13px}.event{padding-top:20px}.event-highlight,.membership-highlight{grid-template-columns:1fr;gap:20px;text-align:center;margin-bottom:28px}.event-highlight>img{max-width:310px;margin:auto}.membership-highlight>img{max-width:330px;margin:auto}.highlight-description{font-size:20px}.highlight-location{font-size:14px}.participation-band{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto auto;gap:22px 18px}.public-event{grid-column:1/-1;grid-row:2}.public-event ul{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.public-description{max-width:440px}.booking{grid-column:1/-1;grid-row:4;padding:22px}.booking h2{font-size:24px}.booking-intro{font-size:16px}.booking .fields{grid-template-columns:1fr;gap:0}.programme-foot{grid-row:3}.talk-label{flex-direction:column;align-items:flex-start;gap:4px;min-height:50px}.membership-dark{padding-block:36px}.photos{gap:16px}.membership-intro{font-size:16px;line-height:1.75;margin-bottom:32px}.reasons-title{font-size:25px;margin-bottom:26px}.membership-details{grid-template-columns:1fr;gap:28px}.impacts{padding:28px 0 0;border-left:0;border-top:1px solid #3d5148}.impacts h3{font-size:30px}.members-closing{padding-block:32px}.members-closing h2{font-size:20px;max-width:440px;margin-inline:auto}.isolated-logos{column-gap:16px;grid-template-columns:repeat(6,minmax(0,1fr));row-gap:28px}.member-logo{grid-column:span 2}.member-logo:nth-child(4){grid-column:2/4}.member-logo:nth-child(5){grid-column:4/6}.footer-mission{font-size:17px;line-height:1.7}.footer-opening h2{font-size:20px}.footer-opening h2 br{display:none}.footer-email{margin-bottom:24px;font-size:clamp(14px,4.2vw,18px)}.footer-socials{gap:10px}.footer-socials a{width:48px;height:48px;flex-basis:48px;padding:11px}.footer-legal{flex-direction:column;align-items:flex-start;gap:14px}.footer-legal nav{justify-content:flex-start}.site-footer{padding-block:36px 24px}}
@media(max-width:370px){.brand-lockup{gap:8px}.brand-lockup img{width:62px}.brand-lockup p{font-size:12px;max-width:122px}.contact-button{padding-inline:8px;font-size:12px;max-width:100px;text-align:center}.participation-band{column-gap:12px}.schedule-item h2{font-size:16px}.green-label{font-size:11px;padding-inline:6px}.audience .stat{font-size:76px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Keep the longer company navigation label clear on narrow phones. */
@media(max-width:600px){.header-inner{display:grid;grid-template-columns:1fr auto;gap:10px 16px}.brand-lockup{display:contents}.brand-lockup>a{grid-column:1;grid-row:1}.brand-lockup p{grid-column:1/-1;grid-row:2;max-width:none;font-size:12px}.brand-lockup p br{display:none}.contact-button{grid-column:2;grid-row:1;font-size:13px;padding-inline:14px;max-width:none}.brand-lockup img{width:76px}}

/* Mobile text alignment and swipeable photo gallery. */
@media(max-width:600px){
  .brand-lockup p{text-align:center}
  .tagline-perspective{font-style:italic}
  .event-credit-break{display:none}
  .photos{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain}
  .photos img{flex:0 0 calc((100% - 16px) / 1.5);min-width:0;scroll-snap-align:start}
}

/* Mobile Q&A emphasis and programme order; inherit the shared talk title size. */
@media(max-width:600px){
  .public-event h2{font-weight:800;color:var(--deep-green)}
  .programme-foot{grid-row:2}
  .public-event{grid-row:3}
  .qa-name-break{display:none}
  .qa-guest-name{font-weight:800}
}

/* Q&A uses the same gradient badge and black text as the company talk labels. */
.public-event h2.green-label{color:var(--ink)}

/* Desktop: badge on the event category, original plain Q&A heading. */
@media(min-width:601px){
  .public-event h2.green-label{display:block;background:none;padding:0;border-radius:0}
  .public-event-label{display:inline-block;background:linear-gradient(105deg,var(--teal),var(--green));color:var(--ink);padding:5px 9px;border-radius:2px;font-size:12px;font-weight:700;line-height:1.5;letter-spacing:.3px}
}
