:root {
  --gwai-primary: #075c35;
  --gwai-primary-dark: #043d25;
  --gwai-primary-soft: #0c7848;
  --gwai-secondary: #37d44a;
  --gwai-accent: #ef2b2d;
  --gwai-ink: #101827;
  --gwai-muted: #616b7b;
  --gwai-border: rgba(16, 24, 39, 0.12);
  --gwai-surface: #f4f6f3;
  --gwai-white: #fff;
  --gwai-shadow: 0 24px 70px rgba(4, 61, 37, 0.13);
  --gwai-shadow-soft: 0 14px 40px rgba(16, 24, 39, 0.08);
  --gwai-radius: 24px;
  --gwai-radius-sm: 15px;
  --gwai-container: 1180px;
  --gwai-transition: 180ms ease;
}

html { scroll-behavior: smooth; }
*, *::before, *::after { box-sizing: border-box; }
body {
  margin: 0;
  color: var(--gwai-ink);
  background: var(--gwai-white);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.gwai-menu-open { overflow: hidden; }
img { max-width: 100%; height: auto; }
a { color: var(--gwai-primary); text-underline-offset: 0.2em; }
a:hover { color: var(--gwai-primary-dark); }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
svg { width: 1em; height: 1em; vertical-align: middle; }
::selection { color: var(--gwai-white); background: var(--gwai-primary); }

.screen-reader-text {
  border: 0; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); height: 1px;
  margin: -1px; overflow: hidden; padding: 0; position: absolute!important; width: 1px;
  word-wrap: normal!important;
}
.screen-reader-text:focus, .gwai-skip-link:focus {
  clip: auto!important; clip-path: none; height: auto; width: auto; top: 10px; left: 10px;
  z-index: 100000; background: #fff; color: #000; padding: .8rem 1rem; border-radius: 8px;
  box-shadow: var(--gwai-shadow-soft);
}
:focus-visible { outline: 3px solid color-mix(in srgb, var(--gwai-secondary) 70%, white); outline-offset: 4px; }

.gwai-container { width: min(calc(100% - 40px), var(--gwai-container)); margin-inline: auto; }
.gwai-main { min-height: 55vh; }
.gwai-section { position: relative; padding: clamp(72px, 8vw, 118px) 0; }
.gwai-section--surface { background: var(--gwai-surface); }
.gwai-section--dark { color: #fff; background: var(--gwai-primary-dark); }
.gwai-prose { width: min(100%, 820px); }
.gwai-prose > *:first-child { margin-top: 0; }
.gwai-prose > *:last-child { margin-bottom: 0; }
.gwai-prose h2, .gwai-prose h3, .gwai-prose h4 { margin-top: 1.8em; line-height: 1.18; }
.gwai-prose p, .gwai-prose li { color: #384151; }
.gwai-prose img { border-radius: var(--gwai-radius); }
.gwai-prose blockquote { margin: 2rem 0; padding: 1.5rem 1.75rem; border-left: 5px solid var(--gwai-secondary); background: var(--gwai-surface); border-radius: 0 var(--gwai-radius-sm) var(--gwai-radius-sm) 0; }
.alignwide { width: min(1180px, calc(100vw - 40px)); max-width: none; margin-inline: calc((min(100vw - 40px, 1180px) - min(100%, 760px)) / -2); }
.alignfull { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); }

.gwai-eyebrow {
  margin: 0 0 13px; color: var(--gwai-accent); font-size: .76rem; font-weight: 850;
  letter-spacing: .13em; line-height: 1.2; text-transform: uppercase;
}
.gwai-eyebrow--light { color: var(--gwai-secondary); }
.gwai-section h2, .gwai-page-hero h1, .gwai-error-page h1 {
  margin: 0; color: var(--gwai-ink); font-size: clamp(2.15rem, 4.2vw, 4rem); font-weight: 790;
  letter-spacing: -.045em; line-height: 1.06;
}
.gwai-section-heading { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(260px, .55fr); gap: 3.5rem; align-items: end; margin-bottom: 48px; }
.gwai-section-heading > p { margin: 0 0 5px; color: var(--gwai-muted); font-size: 1.03rem; }
.gwai-section-heading--compact { grid-template-columns: 1fr; }
.gwai-page-intro { max-width: 780px; margin: 0 0 40px; color: var(--gwai-muted); font-size: 1.08rem; }
.gwai-page-intro > *:last-child { margin-bottom: 0; }

/* Buttons */
.gwai-button-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.gwai-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 50px;
  padding: 12px 20px; border: 1px solid transparent; border-radius: 999px; color: #fff;
  font-size: .94rem; font-weight: 780; line-height: 1.2; text-decoration: none;
  transition: transform var(--gwai-transition), background var(--gwai-transition), color var(--gwai-transition), border-color var(--gwai-transition), box-shadow var(--gwai-transition);
}
.gwai-button svg, .gwai-text-link svg, .gwai-announcement a svg { width: 18px; height: 18px; transition: transform var(--gwai-transition); }
.gwai-button:hover { transform: translateY(-2px); color: #fff; box-shadow: 0 12px 30px rgba(4, 61, 37, .16); }
.gwai-button:hover svg, .gwai-text-link:hover svg, .gwai-announcement a:hover svg { transform: translateX(4px); }
.gwai-button--primary { background: var(--gwai-primary); }
.gwai-button--primary:hover { background: var(--gwai-primary-dark); }
.gwai-button--accent { background: var(--gwai-accent); }
.gwai-button--accent:hover { background: #d91920; }
.gwai-button--light { color: var(--gwai-primary-dark); background: #fff; }
.gwai-button--light:hover { color: var(--gwai-primary-dark); background: #f3fff4; }
.gwai-button--ghost { color: #fff; background: transparent; border-color: rgba(255,255,255,.38); }
.gwai-button--ghost:hover { background: rgba(255,255,255,.1); border-color: #fff; }
.gwai-button--outline { color: var(--gwai-primary); background: transparent; border-color: rgba(7,92,53,.3); }
.gwai-button--outline:hover { color: #fff; background: var(--gwai-primary); border-color: var(--gwai-primary); }
.gwai-text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--gwai-primary); font-weight: 780; text-decoration: none; }

/* Announcement + header */
.gwai-announcement { position: relative; z-index: 1001; color: #fff; background: var(--gwai-primary-dark); }
.gwai-announcement__inner { min-height: 38px; display: flex; align-items: center; justify-content: center; gap: 9px; font-size: .78rem; }
.gwai-announcement p { margin: 0; }
.gwai-announcement a { display: inline-flex; align-items: center; gap: 5px; color: #fff; font-weight: 800; text-decoration: none; }
.gwai-announcement__dot { width: 7px; height: 7px; border-radius: 999px; background: var(--gwai-secondary); box-shadow: 0 0 0 5px rgba(55,212,74,.12); }
.gwai-site-header { position: sticky; top: 0; z-index: 1000; background: rgba(255,255,255,.94); backdrop-filter: blur(18px); border-bottom: 1px solid transparent; transition: box-shadow var(--gwai-transition), border-color var(--gwai-transition); }
.admin-bar .gwai-site-header { top: 32px; }
.gwai-site-header.is-scrolled { border-color: var(--gwai-border); box-shadow: 0 10px 35px rgba(16,24,39,.08); }
.gwai-site-header__inner { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.gwai-brand { flex: 0 0 auto; }
.custom-logo-link { display: flex; align-items: center; }
.custom-logo { display: block; width: auto; max-width: 220px; max-height: 54px; }
.gwai-wordmark { display: inline-flex; align-items: center; gap: 11px; color: var(--gwai-ink); text-decoration: none; }
.gwai-wordmark:hover { color: var(--gwai-ink); }
.gwai-wordmark__mark { position: relative; width: 46px; height: 46px; display: grid; place-items: center; overflow: hidden; border-radius: 15px; color: #fff; background: var(--gwai-primary); box-shadow: inset 0 0 0 1px rgba(255,255,255,.15); }
.gwai-wordmark__mark b { position: relative; z-index: 2; font-size: .72rem; letter-spacing: -.03em; }
.gwai-wordmark__mark i { position: absolute; width: 5px; height: 5px; border-radius: 50%; background: var(--gwai-secondary); }
.gwai-wordmark__mark i:nth-child(1) { left: 7px; top: 9px; }
.gwai-wordmark__mark i:nth-child(2) { right: 7px; top: 8px; }
.gwai-wordmark__mark i:nth-child(3) { right: 6px; bottom: 8px; }
.gwai-wordmark__mark i:nth-child(4) { left: 8px; bottom: 7px; }
.gwai-wordmark__text { display: flex; flex-direction: column; line-height: 1.05; }
.gwai-wordmark__text strong { font-size: 1rem; font-weight: 850; letter-spacing: -.025em; }
.gwai-wordmark__text small { margin-top: 5px; color: var(--gwai-muted); font-size: .62rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.gwai-primary-nav { display: flex; align-items: center; gap: 20px; }
.gwai-primary-nav ul { display: flex; align-items: center; gap: 2px; margin: 0; padding: 0; list-style: none; }
.gwai-primary-nav li { position: relative; }
.gwai-primary-nav a:not(.gwai-button) { display: block; padding: 12px 10px; color: var(--gwai-ink); font-size: .86rem; font-weight: 700; text-decoration: none; }
.gwai-primary-nav a:not(.gwai-button):hover, .gwai-primary-nav .current-menu-item > a { color: var(--gwai-primary); }
.gwai-primary-nav .sub-menu { position: absolute; top: calc(100% + 8px); left: 0; min-width: 210px; display: none; padding: 9px; background: #fff; border: 1px solid var(--gwai-border); border-radius: 14px; box-shadow: var(--gwai-shadow-soft); }
.gwai-primary-nav li:hover > .sub-menu, .gwai-primary-nav li:focus-within > .sub-menu { display: block; }
.gwai-primary-nav .sub-menu a { padding: 9px 10px; border-radius: 8px; }
.gwai-primary-nav .sub-menu a:hover { background: var(--gwai-surface); }
.gwai-header-cta { min-height: 44px; padding: 10px 17px; font-size: .84rem; }
.gwai-menu-toggle { display: none; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 12px; color: var(--gwai-ink); background: var(--gwai-surface); }
.gwai-menu-toggle svg { width: 23px; height: 23px; }
.gwai-menu-toggle__close { display: none; }
.gwai-menu-toggle[aria-expanded="true"] .gwai-menu-toggle__open { display: none; }
.gwai-menu-toggle[aria-expanded="true"] .gwai-menu-toggle__close { display: inline; }

/* Hero */
.gwai-hero { position: relative; min-height: 760px; display: flex; align-items: center; overflow: hidden; color: #fff; background:
  linear-gradient(106deg, rgba(4,61,37,.98) 0%, rgba(7,92,53,.95) 55%, rgba(7,92,53,.82) 100%),
  var(--gwai-hero-image, none) center/cover no-repeat; }
.gwai-hero::before { content: ""; position: absolute; inset: 0; opacity: .18; background-image: radial-gradient(circle at 1px 1px, #fff 1px, transparent 0); background-size: 36px 36px; mask-image: linear-gradient(to right, #000, transparent 78%); }
.gwai-hero::after { content: ""; position: absolute; width: 560px; height: 560px; right: -230px; top: -250px; border: 1px solid rgba(55,212,74,.4); border-radius: 50%; box-shadow: 0 0 0 70px rgba(55,212,74,.05), 0 0 0 140px rgba(55,212,74,.03); }
.gwai-hero__grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(360px, .7fr); gap: clamp(42px, 6vw, 88px); align-items: center; padding-top: 84px; padding-bottom: 84px; }
.gwai-status-pill { width: fit-content; display: inline-flex; align-items: center; gap: 10px; margin-bottom: 27px; padding: 8px 13px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; color: rgba(255,255,255,.9); background: rgba(255,255,255,.08); font-size: .78rem; font-weight: 750; }
.gwai-status-pill span { width: 8px; height: 8px; border-radius: 999px; background: var(--gwai-secondary); box-shadow: 0 0 0 5px rgba(55,212,74,.14); }
.gwai-hero h1 { max-width: 780px; margin: 0; color: #fff; font-family: Georgia, "Times New Roman", serif; font-size: clamp(4rem, 8vw, 7.6rem); font-weight: 700; letter-spacing: -.065em; line-height: .88; }
.gwai-hero__tagline { max-width: 690px; margin: 29px 0 0; color: rgba(255,255,255,.84); font-size: clamp(1.2rem, 2.2vw, 1.75rem); line-height: 1.38; }
.gwai-hero__meta { display: flex; flex-wrap: wrap; gap: 18px 32px; margin-top: 37px; }
.gwai-hero__meta > div { display: flex; align-items: center; gap: 11px; }
.gwai-hero__meta svg { width: 22px; height: 22px; color: var(--gwai-secondary); }
.gwai-hero__meta span { display: flex; flex-direction: column; }
.gwai-hero__meta small { color: rgba(255,255,255,.57); font-size: .66rem; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.gwai-hero__meta strong { margin-top: 1px; color: #fff; font-size: .89rem; }
.gwai-hero-panel { position: relative; overflow: hidden; padding: 30px; border: 1px solid rgba(255,255,255,.2); border-radius: 28px; background: rgba(255,255,255,.96); color: var(--gwai-ink); box-shadow: 0 40px 90px rgba(0,0,0,.2); backdrop-filter: blur(14px); }
.gwai-hero-panel::before { content: ""; position: absolute; width: 190px; height: 190px; right: -70px; top: -90px; border-radius: 50%; background: radial-gradient(circle, rgba(55,212,74,.24), transparent 70%); }
.gwai-hero-panel__top { position: relative; }
.gwai-hero-panel h2 { margin: 0; color: var(--gwai-ink); font-size: clamp(1.8rem, 3vw, 2.6rem); letter-spacing: -.045em; line-height: 1.08; }
.gwai-countdown { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin: 26px 0; }
.gwai-countdown__item { padding: 14px 7px; border: 1px solid var(--gwai-border); border-radius: 14px; text-align: center; background: var(--gwai-surface); }
.gwai-countdown__item strong { display: block; color: var(--gwai-primary); font-size: 1.65rem; line-height: 1; }
.gwai-countdown__item span { display: block; margin-top: 7px; color: var(--gwai-muted); font-size: .58rem; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.gwai-countdown__live { grid-column: 1 / -1; padding: 14px; border-radius: 14px; color: #fff; background: var(--gwai-primary); text-align: center; font-weight: 800; }
.gwai-hero-panel__venue { display: flex; flex-direction: column; padding: 17px 0; border-top: 1px solid var(--gwai-border); border-bottom: 1px solid var(--gwai-border); }
.gwai-hero-panel__venue span { color: var(--gwai-muted); font-size: .68rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.gwai-hero-panel__venue strong { margin-top: 2px; font-size: 1rem; }
.gwai-panel-link { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 18px; color: var(--gwai-primary); font-size: .84rem; font-weight: 800; text-decoration: none; }
.gwai-hero__mesh { position: absolute; inset: 0; pointer-events: none; }
.gwai-hero__mesh span { position: absolute; width: 10px; height: 10px; border-radius: 50%; background: var(--gwai-secondary); box-shadow: 0 0 20px rgba(55,212,74,.7); }
.gwai-hero__mesh span::after { content: ""; position: absolute; left: 5px; top: 5px; width: 150px; height: 1px; transform-origin: left; background: linear-gradient(to right, rgba(55,212,74,.6), transparent); }
.gwai-hero__mesh span:nth-child(1) { top: 12%; left: 8%; }
.gwai-hero__mesh span:nth-child(1)::after { transform: rotate(28deg); }
.gwai-hero__mesh span:nth-child(2) { top: 24%; right: 8%; }
.gwai-hero__mesh span:nth-child(2)::after { transform: rotate(142deg); }
.gwai-hero__mesh span:nth-child(3) { bottom: 15%; left: 20%; }
.gwai-hero__mesh span:nth-child(3)::after { transform: rotate(-25deg); }
.gwai-hero__mesh span:nth-child(4) { bottom: 18%; right: 18%; }
.gwai-hero__mesh span:nth-child(4)::after { transform: rotate(194deg); }
.gwai-hero__mesh span:nth-child(5) { top: 44%; left: 50%; opacity: .45; }
.gwai-hero__mesh span:nth-child(5)::after { transform: rotate(65deg); }
.gwai-hero__mesh span:nth-child(6) { top: 8%; left: 45%; opacity: .35; }
.gwai-hero__mesh span:nth-child(6)::after { transform: rotate(115deg); }
.gwai-hero__mesh span:nth-child(7) { bottom: 6%; right: 42%; opacity: .4; }
.gwai-hero__mesh span:nth-child(7)::after { transform: rotate(160deg); }

/* Pillar strip */
.gwai-pillar-strip { position: relative; z-index: 3; border-bottom: 1px solid var(--gwai-border); background: #fff; box-shadow: 0 15px 45px rgba(16,24,39,.05); }
.gwai-pillar-strip__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.gwai-pillar-strip__grid > div { min-height: 105px; display: flex; align-items: center; gap: 16px; padding: 21px 24px; border-right: 1px solid var(--gwai-border); }
.gwai-pillar-strip__grid > div:first-child { border-left: 1px solid var(--gwai-border); }
.gwai-pillar-strip b { color: var(--gwai-accent); font-size: .72rem; }
.gwai-pillar-strip span { display: flex; flex-direction: column; }
.gwai-pillar-strip strong { font-size: .95rem; }
.gwai-pillar-strip small { color: var(--gwai-muted); font-size: .7rem; line-height: 1.4; }

/* Section layouts */
.gwai-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(40px, 7vw, 100px); align-items: start; }
.gwai-split--wide { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); }
.gwai-lead-copy { color: var(--gwai-muted); font-size: clamp(1.08rem, 1.8vw, 1.35rem); }
.gwai-lead-copy p:first-child { margin-top: 0; }
.gwai-lead-copy p:last-of-type { margin-bottom: 26px; }
.gwai-feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.gwai-feature-grid--four { grid-template-columns: repeat(4, 1fr); }
.gwai-feature-card { position: relative; min-height: 295px; padding: 30px; overflow: hidden; border: 1px solid var(--gwai-border); border-radius: var(--gwai-radius); background: #fff; box-shadow: 0 10px 30px rgba(16,24,39,.035); transition: transform var(--gwai-transition), box-shadow var(--gwai-transition), border-color var(--gwai-transition); }
.gwai-feature-card::after { content: ""; position: absolute; width: 120px; height: 120px; right: -75px; bottom: -75px; border: 1px solid rgba(55,212,74,.4); border-radius: 50%; box-shadow: 0 0 0 18px rgba(55,212,74,.05); }
.gwai-feature-card:hover { transform: translateY(-5px); border-color: rgba(7,92,53,.25); box-shadow: var(--gwai-shadow-soft); }
.gwai-feature-card > span { width: 44px; height: 44px; display: grid; place-items: center; margin-bottom: 50px; border-radius: 13px; color: #fff; background: var(--gwai-accent); font-size: .72rem; font-weight: 850; }
.gwai-feature-card h3 { margin: 0 0 13px; font-size: clamp(1.3rem, 2vw, 1.65rem); letter-spacing: -.03em; line-height: 1.15; }
.gwai-feature-card p { margin: 0; color: var(--gwai-muted); line-height: 1.62; }

/* Audience */
.gwai-audience-section { overflow: hidden; color: #fff; background: var(--gwai-primary-dark); }
.gwai-audience-section::after { content: ""; position: absolute; width: 630px; height: 630px; left: -330px; bottom: -420px; border: 1px solid rgba(55,212,74,.28); border-radius: 50%; box-shadow: 0 0 0 80px rgba(55,212,74,.03), 0 0 0 160px rgba(55,212,74,.02); }
.gwai-audience-grid { position: relative; z-index: 2; display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(50px, 7vw, 100px); align-items: center; }
.gwai-audience-copy h2 { color: #fff; }
.gwai-audience-copy > p:not(.gwai-eyebrow) { color: rgba(255,255,255,.72); font-size: 1.05rem; }
.gwai-audience-list { border-top: 1px solid rgba(255,255,255,.18); }
.gwai-audience-list > div { display: flex; align-items: center; gap: 24px; min-height: 74px; border-bottom: 1px solid rgba(255,255,255,.18); }
.gwai-audience-list span { color: var(--gwai-secondary); font-size: .7rem; font-weight: 800; }
.gwai-audience-list strong { font-size: clamp(1.03rem, 1.8vw, 1.35rem); }

/* Programme */
.gwai-schedule { border-top: 1px solid var(--gwai-border); }
.gwai-session-card { display: grid; grid-template-columns: 160px 1fr 150px; gap: 28px; align-items: center; min-height: 132px; padding: 24px 0; border-bottom: 1px solid var(--gwai-border); transition: padding var(--gwai-transition), background var(--gwai-transition); }
.gwai-session-card:hover { padding-inline: 18px; background: var(--gwai-surface); }
.gwai-session-time { display: flex; flex-direction: column; color: var(--gwai-primary); }
.gwai-session-time strong { font-size: 1.02rem; }
.gwai-session-time span { color: var(--gwai-muted); font-size: .78rem; }
.gwai-session-body { min-width: 0; }
.gwai-pill { display: inline-flex; margin-bottom: 6px; padding: 5px 9px; border-radius: 999px; color: var(--gwai-primary); background: rgba(7,92,53,.09); font-size: .62rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.gwai-session-body h3 { margin: 0; font-size: clamp(1.22rem, 2vw, 1.65rem); letter-spacing: -.03em; line-height: 1.18; }
.gwai-session-body p { margin: 5px 0 0; color: var(--gwai-muted); }
.gwai-session-speaker { font-weight: 700; }
.gwai-session-venue { color: var(--gwai-muted); font-size: .8rem; text-align: right; }

/* Showcase */
.gwai-showcase-section { overflow: hidden; color: #fff; background: linear-gradient(135deg, var(--gwai-primary-dark), var(--gwai-primary)); }
.gwai-showcase-section h2 { color: #fff; }
.gwai-showcase-section p:not(.gwai-eyebrow) { color: rgba(255,255,255,.72); font-size: 1.08rem; }
.gwai-showcase-grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1fr) minmax(330px, .75fr); gap: clamp(50px, 8vw, 110px); align-items: center; }
.gwai-showcase-categories { display: flex; flex-wrap: wrap; gap: 10px; }
.gwai-showcase-categories span { padding: 11px 15px; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; color: rgba(255,255,255,.87); background: rgba(255,255,255,.07); font-size: .78rem; }
.gwai-showcase-orbit { position: absolute; width: 630px; height: 630px; right: -310px; top: -250px; border: 1px solid rgba(55,212,74,.3); border-radius: 50%; box-shadow: 0 0 0 85px rgba(55,212,74,.035), 0 0 0 170px rgba(55,212,74,.025); }

/* Speakers */
.gwai-card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.gwai-speaker-card { overflow: hidden; border: 1px solid var(--gwai-border); border-radius: var(--gwai-radius); background: #fff; transition: transform var(--gwai-transition), box-shadow var(--gwai-transition); }
.gwai-speaker-card:hover { transform: translateY(-5px); box-shadow: var(--gwai-shadow-soft); }
.gwai-speaker-card__image { position: relative; aspect-ratio: 1 / .88; overflow: hidden; background: linear-gradient(135deg, var(--gwai-primary-dark), var(--gwai-primary)); }
.gwai-speaker-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.gwai-speaker-card:hover .gwai-speaker-card__image img { transform: scale(1.035); }
.gwai-speaker-placeholder { position: relative; width: 100%; height: 100%; display: grid; place-items: center; overflow: hidden; }
.gwai-speaker-placeholder > span { position: relative; z-index: 2; width: 90px; height: 90px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.3); border-radius: 50%; color: #fff; background: rgba(255,255,255,.08); font-family: Georgia, serif; font-size: 3rem; }
.gwai-speaker-placeholder i { position: absolute; width: 10px; height: 10px; border-radius: 50%; background: var(--gwai-secondary); }
.gwai-speaker-placeholder i:nth-of-type(1) { left: 18%; top: 22%; }
.gwai-speaker-placeholder i:nth-of-type(2) { right: 14%; top: 32%; }
.gwai-speaker-placeholder i:nth-of-type(3) { left: 37%; bottom: 14%; }
.gwai-speaker-card__session { position: absolute; left: 15px; bottom: 15px; max-width: calc(100% - 30px); padding: 8px 11px; border-radius: 999px; color: #fff; background: rgba(4,61,37,.84); backdrop-filter: blur(8px); font-size: .66rem; font-weight: 750; }
.gwai-speaker-card__body { padding: 24px; }
.gwai-speaker-card h3 { margin: 0; font-size: 1.45rem; letter-spacing: -.035em; line-height: 1.15; }
.gwai-speaker-card__role { margin: 7px 0 12px; color: var(--gwai-primary); font-size: .8rem; font-weight: 750; }
.gwai-speaker-card__body > p:not(.gwai-speaker-card__role) { color: var(--gwai-muted); font-size: .88rem; }
.gwai-speaker-card__links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--gwai-border); }
.gwai-speaker-card__links a { font-size: .74rem; font-weight: 750; text-decoration: none; }

/* Partnership */
.gwai-tier-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; }
.gwai-tier-card { position: relative; min-height: 280px; display: flex; flex-direction: column; padding: 27px; overflow: hidden; border: 1px solid var(--gwai-border); border-radius: var(--gwai-radius); background: #fff; }
.gwai-tier-card::after { content: ""; position: absolute; width: 140px; height: 140px; right: -95px; top: -85px; border-radius: 50%; background: rgba(55,212,74,.1); }
.gwai-tier-card--featured { color: #fff; background: var(--gwai-primary-dark); border-color: var(--gwai-primary-dark); }
.gwai-tier-card > span { color: var(--gwai-accent); font-size: .7rem; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.gwai-tier-card--featured > span { color: var(--gwai-secondary); }
.gwai-tier-card > strong { margin-top: auto; font-size: clamp(1.35rem, 2vw, 1.8rem); letter-spacing: -.035em; }
.gwai-tier-card > p { margin: 10px 0 0; color: var(--gwai-muted); font-size: .84rem; }
.gwai-tier-card--featured > p { color: rgba(255,255,255,.7); }
.gwai-tier-card ul { margin: 20px 0 0; padding: 0; list-style: none; }
.gwai-tier-card li { position: relative; padding: 7px 0 7px 18px; border-top: 1px solid var(--gwai-border); color: var(--gwai-muted); font-size: .8rem; }
.gwai-tier-card li::before { content: ""; position: absolute; left: 0; top: 15px; width: 6px; height: 6px; border-radius: 50%; background: var(--gwai-secondary); }
.gwai-tier-card--featured li { color: rgba(255,255,255,.76); border-color: rgba(255,255,255,.13); }
.gwai-tier-grid--detailed .gwai-tier-card { min-height: 430px; }
.gwai-centred-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 34px; }
.gwai-logo-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.gwai-partner-card { min-height: 170px; display: flex; flex-direction: column; justify-content: space-between; padding: 20px; border: 1px solid var(--gwai-border); border-radius: 18px; color: var(--gwai-ink); background: #fff; text-decoration: none; transition: transform var(--gwai-transition), box-shadow var(--gwai-transition); }
.gwai-partner-card:hover { transform: translateY(-3px); color: var(--gwai-ink); box-shadow: var(--gwai-shadow-soft); }
.gwai-partner-card__tier { color: var(--gwai-accent); font-size: .6rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.gwai-partner-card__logo { min-height: 78px; display: grid; place-items: center; }
.gwai-partner-card__logo img { max-height: 70px; width: auto; object-fit: contain; }
.gwai-partner-card__logo strong { color: var(--gwai-primary); font-size: 1.15rem; text-align: center; }
.gwai-partner-card small { color: var(--gwai-muted); font-size: .7rem; }

/* Final CTA */
.gwai-final-cta { overflow: hidden; color: #fff; background: var(--gwai-primary); }
.gwai-final-cta::after { content: ""; position: absolute; width: 500px; height: 500px; right: -220px; top: -270px; border: 1px solid rgba(55,212,74,.45); border-radius: 50%; box-shadow: 0 0 0 70px rgba(55,212,74,.045), 0 0 0 140px rgba(55,212,74,.03); }
.gwai-final-cta__inner { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr); gap: 50px; align-items: center; }
.gwai-final-cta h2 { color: #fff; }
.gwai-final-cta p:not(.gwai-eyebrow) { max-width: 670px; color: rgba(255,255,255,.75); }
.gwai-final-cta__actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }

/* Page hero */
.gwai-page-hero { position: relative; overflow: hidden; color: #fff; background: linear-gradient(125deg, var(--gwai-primary-dark), var(--gwai-primary)); }
.gwai-page-hero::after { content: ""; position: absolute; width: 460px; height: 460px; right: -180px; top: -250px; border: 1px solid rgba(55,212,74,.38); border-radius: 50%; box-shadow: 0 0 0 65px rgba(55,212,74,.04), 0 0 0 130px rgba(55,212,74,.025); }
.gwai-page-hero__mesh { position: absolute; inset: 0; opacity: .16; background-image: radial-gradient(circle at 1px 1px, #fff 1px, transparent 0); background-size: 34px 34px; mask-image: linear-gradient(to right, #000, transparent); }
.gwai-page-hero__inner { position: relative; z-index: 2; min-height: 450px; display: grid; grid-template-columns: minmax(0, 1fr) 240px; gap: 60px; align-items: center; padding-top: 70px; padding-bottom: 70px; }
.gwai-page-hero h1 { max-width: 850px; color: #fff; font-size: clamp(2.8rem, 6vw, 5.7rem); }
.gwai-page-hero__description { max-width: 760px; margin: 22px 0 0; color: rgba(255,255,255,.76); font-size: clamp(1.05rem, 1.8vw, 1.3rem); }
.gwai-page-hero__fact { width: 220px; min-height: 220px; display: flex; flex-direction: column; justify-content: flex-end; padding: 24px; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; background: rgba(255,255,255,.07); }
.gwai-page-hero__fact > span { width: 43px; height: 43px; display: grid; place-items: center; margin-bottom: auto; border-radius: 50%; color: var(--gwai-primary-dark); background: var(--gwai-secondary); }
.gwai-page-hero__fact small { color: rgba(255,255,255,.6); font-size: .7rem; }
.gwai-page-hero__fact strong { color: #fff; font-size: .9rem; }

/* Forms/applications */
.gwai-application-layout { display: grid; grid-template-columns: minmax(280px, .36fr) minmax(0, .64fr); gap: clamp(35px, 6vw, 80px); align-items: start; }
.gwai-application-sidebar { position: sticky; top: 120px; }
.gwai-application-sidebar h2 { font-size: clamp(2rem, 3vw, 3rem); }
.gwai-application-sidebar > p:not(.gwai-eyebrow) { color: var(--gwai-muted); }
.gwai-check-list { display: grid; gap: 13px; margin: 26px 0; padding: 0; list-style: none; }
.gwai-check-list li { display: flex; align-items: flex-start; gap: 11px; color: var(--gwai-muted); }
.gwai-check-list svg { flex: 0 0 22px; width: 22px; height: 22px; margin-top: 2px; padding: 4px; border-radius: 50%; color: #fff; background: var(--gwai-primary); }
.gwai-notice-card { display: flex; flex-direction: column; gap: 4px; padding: 19px; border-left: 4px solid var(--gwai-accent); border-radius: 0 14px 14px 0; background: var(--gwai-surface); }
.gwai-notice-card strong { color: var(--gwai-primary); }
.gwai-notice-card span { color: var(--gwai-muted); font-size: .8rem; }
.gwai-form-shell { overflow: hidden; border: 1px solid var(--gwai-border); border-radius: var(--gwai-radius); background: #fff; box-shadow: var(--gwai-shadow-soft); }
.gwai-form-toolbar { display: flex; justify-content: space-between; gap: 20px; align-items: center; padding: 15px 20px; border-bottom: 1px solid var(--gwai-border); background: var(--gwai-surface); }
.gwai-form-toolbar p { margin: 0; color: var(--gwai-muted); font-size: .75rem; }
.gwai-form-toolbar a { flex: 0 0 auto; font-size: .72rem; }
.gwai-iframe-wrap { min-height: 850px; background: #fff; }
.gwai-iframe-wrap iframe { display: block; width: 100%; min-height: 1100px; border: 0; }
.gwai-form-placeholder { min-height: 570px; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(35px, 7vw, 80px); background: radial-gradient(circle at 85% 10%, rgba(55,212,74,.16), transparent 32%), #fff; }
.gwai-form-placeholder h3 { max-width: 550px; margin: 0; font-size: clamp(1.7rem, 3vw, 2.6rem); line-height: 1.15; }
.gwai-form-placeholder p { max-width: 550px; color: var(--gwai-muted); }

/* Venue, contact, FAQ */
.gwai-venue-grid, .gwai-contact-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .82fr); gap: clamp(40px, 7vw, 90px); align-items: start; }
.gwai-map-shell { min-height: 520px; overflow: hidden; border-radius: var(--gwai-radius); background: var(--gwai-surface); box-shadow: var(--gwai-shadow-soft); }
.gwai-map-shell iframe { width: 100%; height: 520px; border: 0; }
.gwai-map-placeholder { min-height: 520px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 35px; text-align: center; }
.gwai-map-placeholder > span { width: 65px; height: 65px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--gwai-primary); }
.gwai-map-placeholder svg { width: 28px; height: 28px; }
.gwai-map-placeholder h3 { margin: 20px 0 5px; }
.gwai-map-placeholder p { margin: 0; color: var(--gwai-muted); }
.gwai-contact-cards { display: grid; gap: 10px; margin-top: 30px; }
.gwai-contact-cards article { display: flex; flex-direction: column; padding: 18px 20px; border: 1px solid var(--gwai-border); border-radius: 14px; background: #fff; }
.gwai-contact-cards small { color: var(--gwai-muted); font-size: .68rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.gwai-contact-cards strong, .gwai-contact-cards a { margin-top: 3px; color: var(--gwai-ink); font-weight: 800; text-decoration: none; }
.gwai-contact-panel { padding: clamp(30px, 5vw, 55px); border-radius: var(--gwai-radius); background: var(--gwai-surface); }
.gwai-contact-panel h3 { margin: 0; font-size: clamp(1.7rem, 3vw, 2.5rem); line-height: 1.15; }
.gwai-faq-layout { display: grid; grid-template-columns: minmax(280px, .36fr) minmax(0, .64fr); gap: clamp(40px, 7vw, 90px); align-items: start; }
.gwai-faq-layout h2 { font-size: clamp(2rem, 3.4vw, 3.2rem); }
.gwai-accordion { border-top: 1px solid var(--gwai-border); }
.gwai-accordion details { border-bottom: 1px solid var(--gwai-border); }
.gwai-accordion summary { display: flex; justify-content: space-between; gap: 20px; padding: 24px 0; cursor: pointer; font-size: 1.05rem; font-weight: 780; list-style: none; }
.gwai-accordion summary::-webkit-details-marker { display: none; }
.gwai-accordion summary span { width: 30px; height: 30px; flex: 0 0 30px; display: grid; place-items: center; border-radius: 50%; color: var(--gwai-primary); background: var(--gwai-surface); transition: transform var(--gwai-transition); }
.gwai-accordion details[open] summary span { transform: rotate(45deg); }
.gwai-accordion details > div { padding: 0 50px 24px 0; color: var(--gwai-muted); }
.gwai-accordion details > div p { margin: 0; }
.gwai-chip-cloud { display: flex; flex-wrap: wrap; gap: 11px; }
.gwai-chip-cloud span { padding: 12px 16px; border: 1px solid rgba(7,92,53,.16); border-radius: 999px; color: var(--gwai-primary); background: #fff; font-size: .82rem; font-weight: 700; }
.gwai-impact-band { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--gwai-border); border-radius: var(--gwai-radius); overflow: hidden; }
.gwai-impact-band > div { min-height: 210px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 30px; text-align: center; border-right: 1px solid var(--gwai-border); }
.gwai-impact-band > div:last-child { border-right: 0; }
.gwai-impact-band strong { color: var(--gwai-primary); font-family: Georgia, serif; font-size: 4.7rem; line-height: 1; }
.gwai-impact-band span { max-width: 180px; color: var(--gwai-muted); font-size: .78rem; }

/* Blog */
.gwai-post-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.gwai-post-card { overflow: hidden; border: 1px solid var(--gwai-border); border-radius: var(--gwai-radius); background: #fff; }
.gwai-post-card__image { display: block; aspect-ratio: 16/10; overflow: hidden; background: var(--gwai-surface); }
.gwai-post-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.gwai-post-card:hover .gwai-post-card__image img { transform: scale(1.04); }
.gwai-post-card__body { padding: 23px; }
.gwai-post-card__meta { color: var(--gwai-accent); font-size: .65rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.gwai-post-card h2 { margin: 8px 0 10px; font-size: 1.45rem; }
.gwai-post-card h2 a { color: var(--gwai-ink); text-decoration: none; }
.gwai-post-card p { color: var(--gwai-muted); font-size: .88rem; }
.gwai-featured-image { margin: 0 0 38px; }
.gwai-featured-image img { width: 100%; border-radius: var(--gwai-radius); }
.gwai-post-meta { margin-top: 35px; padding-top: 20px; border-top: 1px solid var(--gwai-border); color: var(--gwai-muted); font-size: .8rem; }
.navigation.pagination { margin-top: 45px; }
.nav-links { display: flex; flex-wrap: wrap; gap: 7px; }
.page-numbers { min-width: 42px; min-height: 42px; display: grid; place-items: center; padding: 6px 10px; border: 1px solid var(--gwai-border); border-radius: 10px; text-decoration: none; }
.page-numbers.current, .page-numbers:hover { color: #fff; background: var(--gwai-primary); border-color: var(--gwai-primary); }
.gwai-empty-state { padding: 45px; border: 1px dashed rgba(7,92,53,.3); border-radius: var(--gwai-radius); text-align: center; background: rgba(244,246,243,.55); }
.gwai-empty-state h2, .gwai-empty-state h3 { margin-top: 0; }
.gwai-empty-state p { color: var(--gwai-muted); }
.gwai-error-page { position: relative; min-height: 72vh; display: flex; align-items: center; overflow: hidden; color: #fff; background: var(--gwai-primary-dark); }
.gwai-error-page__mesh { position: absolute; inset: 0; opacity: .16; background-image: radial-gradient(circle at 1px 1px,#fff 1px,transparent 0); background-size: 34px 34px; }
.gwai-error-page__inner { position: relative; z-index: 2; padding-top: 80px; padding-bottom: 80px; }
.gwai-error-page__inner > span { display: block; color: rgba(55,212,74,.3); font-family: Georgia, serif; font-size: clamp(8rem, 24vw, 18rem); line-height: .7; }
.gwai-error-page h1 { max-width: 760px; color: #fff; }
.gwai-error-page p:not(.gwai-eyebrow) { color: rgba(255,255,255,.7); }
.gwai-comments { margin-top: 60px; padding-top: 40px; border-top: 1px solid var(--gwai-border); }
.gwai-search-form { display: flex; gap: 8px; }
.gwai-search-form label { flex: 1; }
.gwai-search-form input { width: 100%; min-height: 48px; padding: 10px 14px; border: 1px solid var(--gwai-border); border-radius: 12px; }
.gwai-search-form button { padding: 10px 18px; border: 0; border-radius: 12px; color: #fff; background: var(--gwai-primary); font-weight: 750; }

/* Footer */
.gwai-site-footer { position: relative; overflow: hidden; padding: 78px 0 24px; color: #fff; background: #032f1d; }
.gwai-footer-orbit { position: absolute; width: 500px; height: 500px; right: -290px; bottom: -300px; border: 1px solid rgba(55,212,74,.24); border-radius: 50%; box-shadow: 0 0 0 70px rgba(55,212,74,.025), 0 0 0 140px rgba(55,212,74,.018); }
.gwai-footer-top { position: relative; z-index: 2; display: grid; grid-template-columns: 1.2fr .75fr .75fr; gap: 70px; padding-bottom: 55px; }
.gwai-wordmark--footer { color: #fff; }
.gwai-wordmark--footer:hover { color: #fff; }
.gwai-wordmark--footer .gwai-wordmark__text small { color: rgba(255,255,255,.55); }
.gwai-footer-brand > p { max-width: 480px; color: rgba(255,255,255,.62); }
.gwai-footer-top h3 { margin: 0 0 16px; color: #fff; font-size: .78rem; letter-spacing: .09em; text-transform: uppercase; }
.gwai-footer-nav ul { margin: 0; padding: 0; list-style: none; columns: 2; }
.gwai-footer-nav li { break-inside: avoid; }
.gwai-footer-nav a, .gwai-footer-contact > a { display: block; padding: 4px 0; color: rgba(255,255,255,.7); font-size: .84rem; text-decoration: none; }
.gwai-footer-nav a:hover, .gwai-footer-contact > a:hover { color: #fff; }
.gwai-social-links { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 14px; }
.gwai-social-links a { padding: 5px 9px; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; color: rgba(255,255,255,.72); font-size: .66rem; text-decoration: none; }
.gwai-footer-widgets { display: grid; grid-template-columns: repeat(3,1fr); gap: 25px; padding: 35px 0; border-top: 1px solid rgba(255,255,255,.12); }
.gwai-footer-bottom { position: relative; z-index: 2; display: flex; justify-content: space-between; gap: 30px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.47); font-size: .7rem; }
.gwai-footer-bottom p { margin: 0; }
.gwai-footer-bottom > div { display: flex; flex-wrap: wrap; gap: 18px; }
.gwai-footer-bottom a { color: rgba(255,255,255,.55); text-decoration: none; }
.gwai-footer-bottom a:hover { color: #fff; }

/* WordPress + Elementor compatibility */
.elementor-page .gwai-section, .gwai-elementor-content .elementor-section, .gwai-elementor-content .e-con { --container-max-width: 1180px; }
.gwai-elementor-content { min-height: 50vh; }
.wp-block-button__link { transition: transform var(--gwai-transition), box-shadow var(--gwai-transition); }
.wp-block-button__link:hover { transform: translateY(-2px); box-shadow: var(--gwai-shadow-soft); }
.wp-block-image img { border-radius: 16px; }
.wp-caption, .wp-caption-text, .gallery-caption { color: var(--gwai-muted); font-size: .78rem; }
.sticky { position: relative; }
.bypostauthor { outline: 0; }

@media (max-width: 1100px) {
  .gwai-primary-nav { gap: 10px; }
  .gwai-primary-nav a:not(.gwai-button) { padding-inline: 7px; font-size: .79rem; }
  .gwai-hero__grid { grid-template-columns: 1fr .72fr; gap: 45px; }
  .gwai-feature-grid--four, .gwai-tier-grid { grid-template-columns: repeat(2, 1fr); }
  .gwai-logo-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 900px) {
  .admin-bar .gwai-site-header { top: 46px; }
  .gwai-menu-toggle { display: grid; place-items: center; }
  .gwai-primary-nav { position: fixed; inset: auto 0 0; top: var(--gwai-mobile-menu-top, 114px); display: none; flex-direction: column; align-items: stretch; gap: 16px; overflow-y: auto; padding: 24px 20px 35px; background: #fff; border-top: 1px solid var(--gwai-border); box-shadow: 0 20px 50px rgba(16,24,39,.14); }
  .gwai-primary-nav.is-open { display: flex; }
  .gwai-primary-nav ul { flex-direction: column; align-items: stretch; gap: 0; }
  .gwai-primary-nav a:not(.gwai-button) { padding: 12px 4px; border-bottom: 1px solid var(--gwai-border); font-size: .96rem; }
  .gwai-primary-nav .sub-menu { position: static; display: block; padding: 0 0 0 15px; border: 0; box-shadow: none; }
  .gwai-header-cta { width: 100%; }
  .gwai-hero { min-height: auto; }
  .gwai-hero__grid { grid-template-columns: 1fr; padding-top: 70px; padding-bottom: 70px; }
  .gwai-hero__content { max-width: 760px; }
  .gwai-hero-panel { max-width: 650px; }
  .gwai-pillar-strip__grid { grid-template-columns: repeat(2, 1fr); }
  .gwai-pillar-strip__grid > div:nth-child(odd) { border-left: 1px solid var(--gwai-border); }
  .gwai-section-heading, .gwai-split, .gwai-split--wide, .gwai-audience-grid, .gwai-showcase-grid, .gwai-final-cta__inner, .gwai-application-layout, .gwai-venue-grid, .gwai-contact-layout, .gwai-faq-layout { grid-template-columns: 1fr; }
  .gwai-section-heading { gap: 18px; }
  .gwai-feature-grid { grid-template-columns: repeat(2, 1fr); }
  .gwai-card-grid { grid-template-columns: repeat(2, 1fr); }
  .gwai-application-sidebar { position: static; }
  .gwai-final-cta__actions { justify-content: flex-start; }
  .gwai-page-hero__inner { grid-template-columns: 1fr; min-height: 400px; }
  .gwai-page-hero__fact { display: none; }
  .gwai-footer-top { grid-template-columns: 1fr 1fr; }
  .gwai-footer-brand { grid-column: 1 / -1; }
  .gwai-post-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 700px) {
  .gwai-container { width: min(calc(100% - 28px), var(--gwai-container)); }
  .gwai-announcement__inner { justify-content: flex-start; overflow: hidden; }
  .gwai-announcement p { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .gwai-announcement a { margin-left: auto; white-space: nowrap; }
  .gwai-site-header__inner { min-height: 68px; }
  .custom-logo { max-width: 175px; max-height: 46px; }
  .gwai-wordmark__text small { display: none; }
  .gwai-hero h1 { font-size: clamp(3.7rem, 20vw, 6rem); }
  .gwai-hero__tagline { font-size: 1.08rem; }
  .gwai-hero__meta { flex-direction: column; gap: 14px; }
  .gwai-hero-panel { padding: 22px; border-radius: 22px; }
  .gwai-pillar-strip__grid { grid-template-columns: 1fr; }
  .gwai-pillar-strip__grid > div { min-height: 82px; border-left: 1px solid var(--gwai-border); }
  .gwai-section { padding: 70px 0; }
  .gwai-section h2 { font-size: clamp(2.1rem, 11vw, 3.25rem); }
  .gwai-feature-grid, .gwai-feature-grid--four, .gwai-card-grid, .gwai-tier-grid, .gwai-logo-grid, .gwai-post-grid { grid-template-columns: 1fr; }
  .gwai-feature-card { min-height: auto; }
  .gwai-feature-card > span { margin-bottom: 35px; }
  .gwai-session-card { grid-template-columns: 1fr; gap: 9px; padding: 22px 0; }
  .gwai-session-card:hover { padding-inline: 10px; }
  .gwai-session-venue { text-align: left; }
  .gwai-page-hero__inner { padding-top: 58px; padding-bottom: 58px; }
  .gwai-page-hero h1 { font-size: clamp(2.7rem, 13vw, 4.3rem); }
  .gwai-button-row, .gwai-centred-actions { align-items: stretch; }
  .gwai-button-row .gwai-button, .gwai-centred-actions .gwai-button { width: 100%; }
  .gwai-countdown__item strong { font-size: 1.35rem; }
  .gwai-form-toolbar { flex-direction: column; align-items: flex-start; }
  .gwai-iframe-wrap iframe { min-height: 1300px; }
  .gwai-impact-band { grid-template-columns: 1fr; }
  .gwai-impact-band > div { min-height: 160px; border-right: 0; border-bottom: 1px solid var(--gwai-border); }
  .gwai-impact-band > div:last-child { border-bottom: 0; }
  .gwai-footer-top { grid-template-columns: 1fr; gap: 35px; }
  .gwai-footer-brand { grid-column: auto; }
  .gwai-footer-bottom { flex-direction: column; }
  .gwai-footer-widgets { grid-template-columns: 1fr; }
  .alignwide { width: calc(100vw - 28px); margin-inline: calc((100vw - 28px - min(100%, 760px)) / -2); }
}

@media (max-width: 420px) {
  .gwai-wordmark__mark { width: 41px; height: 41px; border-radius: 13px; }
  .gwai-wordmark__text strong { font-size: .9rem; }
  .gwai-countdown { grid-template-columns: repeat(2, 1fr); }
  .gwai-announcement a svg { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms!important; animation-iteration-count: 1!important; transition-duration: .01ms!important; scroll-behavior: auto!important; }
}

.gwai-organiser-strip { background: #eef4ef; border-bottom: 1px solid var(--gwai-border); }
.gwai-organiser-strip__inner { min-height: 54px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 9px 12px; color: var(--gwai-muted); font-size: .75rem; }
.gwai-organiser-strip__inner span { text-transform: uppercase; letter-spacing: .08em; font-size: .6rem; font-weight: 800; }
.gwai-organiser-strip__inner strong { color: var(--gwai-primary); }
.gwai-organiser-strip__inner i { width: 5px; height: 5px; border-radius: 50%; background: var(--gwai-accent); }
.gwai-footer-organiser { display: block; margin-top: 12px; color: rgba(255,255,255,.45); font-size: .68rem; }
@media(max-width:700px){.gwai-organiser-strip__inner{justify-content:flex-start;padding-top:12px;padding-bottom:12px}.gwai-organiser-strip__inner i{display:none}.gwai-organiser-strip__inner span:nth-of-type(2){margin-left:100%}}
