:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#1c2330;background:#fff;font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}
body.gw-public{margin:0;color:#1c2330;background:#fff;line-height:1.6}
.gw-public a{color:var(--gw-primary,#2457c5);text-decoration-thickness:.08em;text-underline-offset:.18em}
.gw-public a:hover{text-decoration-thickness:.14em}
.gw-site{max-width:1180px;margin:0 auto;padding:1.5rem clamp(1rem,4vw,3rem) 4rem}
.gw-site h1,.gw-site h2,.gw-site h3{line-height:1.13;letter-spacing:-.025em}
.gw-site h1{font-size:clamp(2.4rem,6vw,5.5rem);margin:.35em 0}
.gw-site h2{font-size:clamp(1.5rem,3vw,2.4rem)}
.gw-site p{max-width:70ch}
.gw-eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gw-primary)}
.gw-logo{width:3rem;height:3rem;object-fit:contain}
.gw-logo-letter{display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:50%;color:#fff;background:var(--gw-primary);font-weight:800}
.gw-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.8rem;padding:.65rem 1.15rem;border-radius:999px;background:var(--gw-primary);color:#fff!important;text-decoration:none!important;font-weight:750}
.gw-hero-image{display:block;width:100%;max-height:28rem;object-fit:cover;border-radius:1.25rem}
.gw-footer{display:flex;justify-content:space-between;gap:1rem;max-width:1180px;margin:0 auto;padding:1.5rem clamp(1rem,4vw,3rem);border-top:1px solid #e8ebf0;color:#647084;font-size:.85rem}
.gw-group-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:2rem;max-width:1180px;margin:0 auto;padding:1.5rem clamp(1rem,4vw,3rem)}
.gw-public .gw-group-details nav{display:block}
.gw-sponsors{display:flex;flex-wrap:wrap;gap:1rem;list-style:none;padding:0}
.gw-sponsors li{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}
.gw-sponsors img{max-width:160px;height:64px;object-fit:contain}
.gw-gathering-nav,.gw-studio-nav,.gw-summit-nav,.gw-minimal header{display:flex;align-items:center;gap:1rem;min-height:4rem}
.gw-gathering-nav strong,.gw-studio-nav strong,.gw-summit-nav strong{margin-right:auto}
.gw-public nav{display:flex;gap:1.25rem}
.gw-public nav a{text-decoration:none;font-weight:650}
.gw-gathering-nav>.gw-button{margin-left:auto}
.gw-gathering-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,6vw,5rem);align-items:center;padding:clamp(3rem,9vw,8rem) 0}
.gw-gathering-hero>div{max-width:38rem}
.gw-gathering-hero>img{max-height:25rem}
.gw-gathering-lower{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(2rem,6vw,5rem);padding:2rem 0}
.gw-gathering-lower>article{border-top:5px solid var(--gw-accent);padding-top:1.25rem}
.gw-studio{max-width:1300px}
.gw-studio-nav{border-bottom:1px solid #e7eaf0}
.gw-studio-nav nav{margin-left:auto}
.gw-studio-hero{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;padding:5rem 0}
.gw-studio-hero>div{padding:clamp(1rem,4vw,3.5rem);border-left:6px solid var(--gw-accent)}
.gw-studio-hero>img{height:27rem}
.gw-studio-about{padding:2rem 0 3rem;max-width:60rem}
.gw-studio-events{border-top:1px solid #e3e7ed;padding-top:1.5rem}
.gw-summit{max-width:none;padding:0 0 3rem}
.gw-summit-nav{max-width:1180px;margin:auto;padding:0 2rem}
.gw-summit-nav a{margin-left:auto}
.gw-summit-cover{position:relative;display:grid;min-height:32rem;align-items:end;overflow:hidden;background:linear-gradient(90deg,#10192be8,#10192b66),var(--gw-primary);color:#fff}
.gw-summit-cover>img{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;opacity:.55}
.gw-summit-cover>div{position:relative;z-index:1;max-width:1180px;width:100%;margin:auto;padding:clamp(2rem,7vw,6rem)}
.gw-summit-cover .gw-button{background:var(--gw-accent);color:#151515!important}
.gw-summit-content{max-width:1180px;margin:3rem auto;padding:0 2rem;display:grid;grid-template-columns:1fr 1fr;gap:4rem}
.gw-community{max-width:none;padding:0 0 3rem}
.gw-community-nav{display:flex;align-items:center;gap:1rem;max-width:1180px;margin:auto;padding:1rem 2rem;flex-wrap:wrap}
.gw-community-nav strong{margin-right:auto}
.gw-community-cover{position:relative;overflow:hidden;background:#152838;color:#fff;border-bottom:.5rem solid var(--gw-accent)}
.gw-community-cover>.gw-hero-image{position:absolute;inset:0;height:100%;max-height:none;opacity:.3;border-radius:0}
.gw-community-cover>div{position:relative;max-width:1180px;margin:auto;padding:clamp(3rem,8vw,7rem) 2rem}
.gw-community-cover .gw-eyebrow{color:#fff}
.gw-button-light{background:#fff;color:#1c2330!important}
.gw-community-about{display:grid;grid-template-columns:1fr 1.4fr;gap:3rem;max-width:1180px;margin:auto;padding:3rem 2rem}
.gw-community-events{max-width:1180px;margin:auto;padding:0 2rem;border-top:1px solid #e6e9ef}
.gw-minimal{max-width:1100px;padding-top:2rem}
.gw-minimal header span{margin-right:auto}
.gw-minimal-lead{padding:clamp(3rem,7vw,6rem) 1.5rem;text-align:center;background:#f7fafc;border-block:3px solid var(--gw-primary);margin-top:1.5rem}
.gw-minimal-lead p{margin-inline:auto}
.gw-minimal-lead h1{font-size:clamp(2.5rem,6vw,5rem)}
.gw-minimal-lead>.gw-hero-image{margin:2rem auto 0;max-height:22rem}
.gw-minimal>hr{border:0;border-top:1px solid #dfe3e9}
.gw-minimal-about{display:grid;grid-template-columns:1fr 2fr;gap:2rem;padding:3rem 0}
.gw-events{padding:1rem 0 2rem}
.gw-studio-events>.gw-events{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1.25rem}
.gw-studio-events .gw-events>h2,.gw-studio-events .gw-events>nav,.gw-studio-events .gw-events>a{grid-column:1/-1}
.gw-studio-events .gw-event-card{padding:1.25rem;border:1px solid #e2e6ec;border-top:4px solid var(--gw-primary);border-radius:.5rem;background:#f8fafc}
.gw-events>h2{margin-bottom:1.5rem}
.gw-event-card{padding:1.2rem 0;border-top:1px solid #e2e6ec}
.gw-featured{display:inline-block;margin:0 0 .45rem;padding:.2rem .55rem;border-radius:99px;background:var(--gw-accent);color:#171717;font-size:.75rem;font-weight:800}
.gw-event-card-image{display:block;position:relative;width:100%;aspect-ratio:16/9;margin:.75rem 0 1rem;overflow:hidden;border-radius:.85rem;background:#edf1f5}
.gw-public .gw-event-card-image .gw-event-social-image{display:block;width:100%;max-width:none;height:auto;max-height:none;aspect-ratio:16/9;object-fit:contain}
.gw-event-social-image{display:block;width:100%;max-width:640px;aspect-ratio:16/9;object-fit:cover;border-radius:.75rem}
.gw-event-detail-image{display:block;width:100%;height:auto;max-height:34rem;aspect-ratio:16/9;object-fit:contain;border-radius:1rem;margin:1.5rem auto}
.gw-gathering .gw-event-card-image,.gw-studio-events .gw-event-card-image,.gw-summit-content .gw-event-card-image,.gw-community-events .gw-event-card-image,.gw-minimal .gw-event-card-image{margin:.75rem 0 1rem}
.gw-studio-events .gw-event-social-image{max-height:13rem;border-radius:.45rem}
.gw-summit-content .gw-event-social-image,.gw-community-events .gw-event-social-image{max-height:15rem}
.gw-gathering .gw-event-detail-image,.gw-studio .gw-event-detail-image,.gw-summit .gw-event-detail-image,.gw-community .gw-event-detail-image,.gw-minimal .gw-event-detail-image{max-height:34rem}
.gw-event-card time,.gw-event-detail .gw-eyebrow{font-size:.85rem;color:#596579}
.gw-event-card h3{margin:.45rem 0}
.gw-cancelled{display:inline-block;color:#a12323;font-weight:750}
.gw-event-detail{max-width:850px;margin:3rem auto}
.gw-event-detail h1{font-size:clamp(2.5rem,6vw,4.5rem)}
.gw-event-description{white-space:normal;overflow-wrap:anywhere}
.gw-site .gw-event-detail>.gw-event-description p{max-width:none}
.gw-talk{padding:1rem 0;border-top:1px solid #e2e6ec}
.gw-talk h3{margin-bottom:.25rem}
.gw-speaker{font-weight:750}
.gw-video{margin:2rem 0;padding:1rem;border:1px solid #dfe3e9;border-radius:.75rem}
.gw-video summary{cursor:pointer;font-weight:750}
.gw-video iframe{display:block;width:min(100%,800px);aspect-ratio:16/9;border:0;margin:1rem 0}
.gw-transcript{white-space:pre-wrap}
.gw-preview-shell{--gw-primary:#2457c5;--gw-accent:#f2a900;border:1px solid #dfe3e9;border-radius:1rem;padding:1rem;background:#fff}
.gw-preview{min-height:22rem;border-radius:.7rem;overflow:hidden;color:#1c2330;background:#fff}
.gw-preview h2{font-size:clamp(1.35rem,3vw,2rem);line-height:1.1}
.gw-preview p{color:#596579}
.gw-preview-cta{display:inline-block;border:0;border-radius:99px;background:var(--gw-primary);color:#fff;padding:.55rem .9rem;font-weight:700}
.gw-preview header,.gw-preview nav,.gw-preview footer{padding:1rem}
.gw-preview-studio nav{display:flex;justify-content:space-between;border-bottom:1px solid #eee}
.gw-studio-body{display:grid;grid-template-columns:1fr .7fr;align-items:center;gap:1rem;padding:1.5rem}
.gw-studio-body img,.gw-gathering-main img{width:100%;height:10rem;object-fit:cover;border-radius:.5rem}
.gw-studio-body small,.gw-preview small{color:var(--gw-primary);font-weight:800}
.gw-preview-studio footer{background:#f5f7fa}
.gw-preview-meetups{padding:1rem}
.gw-preview-meetups>div{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.75rem}
.gw-preview-meetups article{border-top:3px solid var(--gw-primary);padding:1rem;background:#f5f7fa}
.gw-preview-summit header{display:flex;justify-content:space-between}
.gw-summit-banner{padding:2rem;background:linear-gradient(120deg,var(--gw-primary),#172239);color:#fff}
.gw-summit-banner p{color:#fff}
.gw-summit-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1rem}
.gw-summit-columns article{padding:1rem;background:#f5f7fa}
.gw-preview-community header{display:flex;justify-content:space-between;gap:1rem}
.gw-preview-network-cover{position:relative;overflow:hidden;padding:1.5rem;background:#152838;color:#fff;border-bottom:5px solid var(--gw-accent)}
.gw-preview-network-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.3}
.gw-preview-network-cover>div{position:relative}
.gw-preview-network-cover p,.gw-preview-network-cover small{color:#fff}
.gw-preview-network-cover .gw-preview-cta{background:#fff;color:#1c2330}
.gw-preview-network-mission{display:grid;grid-template-columns:1fr 2fr;gap:1rem;padding:1rem}
.gw-preview-community footer{background:#f5f7fa}
.gw-preview-minimal header{display:flex;justify-content:space-between;border-bottom:1px solid #eee}
.gw-preview-minimal main{max-width:32rem;margin:2rem auto;padding:1rem}
.gw-preview-developer-banner{text-align:center;background:#f7fafc;border-block:3px solid var(--gw-primary);padding:1.5rem}
.gw-preview-minimal hr{margin-top:2rem}
.gw-preview-gathering header{display:flex;align-items:center;gap:1rem}
.gw-preview-gathering header .gw-preview-cta{margin-left:auto}
.gw-gathering-main{display:grid;grid-template-columns:1fr .8fr;gap:1rem;padding:2rem;background:#f4f6fb}
.gw-preview-gathering footer{display:grid;grid-template-columns:1fr 2fr;gap:0 1rem}
@media(max-width:700px){.gw-gathering-hero,.gw-gathering-lower,.gw-studio-hero,.gw-summit-content,.gw-minimal-about,.gw-community-about,.gw-preview-network-mission{grid-template-columns:1fr}.gw-studio-hero>img{height:16rem}.gw-gathering-nav,.gw-studio-nav,.gw-summit-nav,.gw-minimal>header{flex-wrap:wrap}.gw-public nav{flex-wrap:wrap}.gw-community-about{gap:1rem}.gw-summit-cover{min-height:27rem}.gw-footer{flex-direction:column}.gw-summit-columns,.gw-preview-meetups>div{grid-template-columns:1fr}.gw-preview-gathering footer{grid-template-columns:1fr}.gw-preview nav{gap:.4rem;font-size:.8rem}}
@media(max-width:700px){.gw-event-card-image,.gw-event-social-image,.gw-event-detail-image{width:100%;max-width:100%;aspect-ratio:16/9;max-height:20rem;border-radius:.65rem}.gw-event-card-image{margin:.5rem 0 .75rem}.gw-event-detail-image{margin:1rem auto}.gw-studio-events .gw-event-social-image,.gw-summit-content .gw-event-social-image,.gw-community-events .gw-event-social-image{max-height:20rem}}

/* Public website theme and community-wide sections. */
.gw-public{--gw-surface:#fff;--gw-surface-raised:#f3f6fa;--gw-text:#1c2330;--gw-muted:#475569;--gw-border:#ccd4df;background:var(--gw-surface);color:var(--gw-text);min-height:100vh}
.gw-public.gw-dark{--gw-surface:#111827;--gw-surface-raised:#202c3e;--gw-text:#f3f6fb;--gw-muted:#c4cfdf;--gw-border:#536176}
.gw-public a{color:inherit}
.gw-public .gw-eyebrow{color:var(--gw-text)}
.gw-public .gw-button,.gw-public .gw-summit-cover .gw-button,.gw-public .gw-button-light{background:var(--gw-button);color:var(--gw-button-text)!important}
.gw-logo-letter{background:var(--gw-button);color:var(--gw-button-text)}
.gw-public .gw-minimal-lead,.gw-public .gw-studio-events .gw-event-card{background:var(--gw-surface-raised)}
.gw-public .gw-event-card time,.gw-public .gw-event-detail .gw-eyebrow{color:var(--gw-muted)}
.gw-public.gw-dark .gw-cancelled{color:#ffb4b4}
.gw-public .gw-featured{background:var(--gw-surface-raised);color:var(--gw-text);border:1px solid var(--gw-border)}
.gw-public .gw-summit-cover,.gw-public .gw-community-cover{background:#152838;color:#fff}
.gw-public .gw-summit-cover .gw-eyebrow,.gw-public .gw-community-cover .gw-eyebrow{color:#fff}
.gw-public .gw-summit-cover>img,.gw-public .gw-community-cover>.gw-hero-image{opacity:.2}
.gw-public .gw-footer{color:var(--gw-muted);border-color:var(--gw-border)}
.gw-public .gw-footer nav{flex-wrap:wrap}
.gw-involvement{width:100%;background:var(--gw-surface-raised);border-block:1px solid var(--gw-border)}
.gw-group-details{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));padding-block:3rem}
.gw-group-details h2,.gw-group-details h3{margin-top:0}
.gw-social-links{display:grid;gap:.65rem;list-style:none;padding:0}
.gw-social-links a{display:inline-flex;align-items:center;gap:.6rem}
.gw-social-icon{width:1.35rem;height:1.35rem;flex:none}
.gw-sponsors img{background:#fff;border-radius:.35rem;padding:.3rem}
.gw-information{max-width:70rem;margin:3rem auto;overflow-wrap:anywhere}
.gw-cfs-text{white-space:pre-wrap}
.gw-open-dates{padding-left:1.5rem}
.gw-creative{max-width:1280px}
.gw-creative-nav{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem 0;border-top:5px solid var(--gw-primary);border-bottom:1px solid var(--gw-border)}
.gw-creative-nav strong{margin-right:auto}
.gw-creative-nav nav{flex-wrap:wrap}
.gw-beacon-mast{display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;align-items:center;padding:4rem 0;border-bottom:8px solid var(--gw-secondary)}
.gw-beacon-mast h1{font-size:clamp(3rem,8vw,7rem);text-transform:uppercase;line-height:.98}
.gw-beacon-columns{display:grid;grid-template-columns:.75fr 1.25fr;gap:5rem;padding:3rem 0}
.gw-beacon-columns>section:first-child{border-top:4px solid var(--gw-secondary)}
.gw-canvas-cover{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:3rem 0}
.gw-canvas-cover>.gw-hero-image{grid-column:2;grid-row:1;height:33rem;max-height:none}
.gw-canvas-cover>div{grid-column:1;grid-row:1;position:relative;z-index:1;background:var(--gw-surface-raised);padding:clamp(2rem,5vw,5rem);margin-right:-4rem}
.gw-canvas-story{display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding:4rem 0}
.gw-canvas-events{padding:2rem clamp(1rem,4vw,3rem);background:var(--gw-surface-raised)}
.gw-timeline-lead{max-width:58rem;padding:4rem 0 3rem;border-bottom:1px solid var(--gw-border)}
.gw-timeline-columns{display:grid;grid-template-columns:1.3fr .7fr;gap:5rem;padding:2rem 0}
.gw-timeline-events{border-left:3px solid var(--gw-secondary);padding-left:2rem}
.gw-timeline-columns aside{padding:2rem;background:var(--gw-surface-raised);align-self:start}
.gw-orbit-lead{text-align:center;padding:4rem 1rem}
.gw-orbit-lead p{margin-inline:auto}
.gw-orbit-ring{display:grid;place-items:center;width:8rem;height:8rem;margin:auto;border:3px solid var(--gw-secondary);border-radius:50%;box-shadow:0 0 0 1rem var(--gw-surface-raised)}
.gw-orbit-ring .gw-logo,.gw-orbit-ring .gw-logo-letter{width:4rem;height:4rem}
.gw-orbit-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.gw-orbit-grid>section{padding:2rem;background:var(--gw-surface-raised);border-radius:1.5rem}
.gw-commons-cover{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;padding:3rem;background:var(--gw-surface-raised);margin-top:2rem;border-radius:2rem 2rem 0 0}
.gw-commons-cover img{border-radius:50% 50% 1rem 1rem;height:28rem}
.gw-commons-story,.gw-commons-events{display:grid;grid-template-columns:.5fr 1fr 2fr;gap:2rem;align-items:start;padding:3rem 0;border-bottom:1px solid var(--gw-border)}
.gw-commons-number{font-weight:800;font-size:.8rem}
.gw-commons-events .gw-events{grid-column:2/-1;padding:0}
.gw-main-nav{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:center}
.gw-main-nav a{white-space:nowrap}
.gw-public header{flex-wrap:wrap;gap:1rem}
.gw-event-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:1rem}
.gw-event-description h1{font-size:1.75rem}
.gw-event-description h2{font-size:1.5rem}
.gw-event-description h3{font-size:1.25rem}
.gw-event-description p,.gw-event-description ul,.gw-event-description ol{margin-bottom:1rem}
.gw-event-description pre{white-space:pre-wrap;overflow-wrap:anywhere}
.gw-archive .gw-events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;padding:2rem 0}
.gw-archive .gw-events>h2,.gw-archive .gw-events>p,.gw-archive .gw-events>nav{grid-column:1/-1}
.gw-archive .gw-event-card{padding:1.25rem;border:1px solid var(--gw-border);border-radius:1rem}
@media(max-width:700px){
 .gw-archive .gw-events{grid-template-columns:1fr}
 .gw-creative-nav nav{width:100%;gap:1rem}
 .gw-beacon-mast,.gw-beacon-columns,.gw-canvas-story,.gw-timeline-columns,.gw-orbit-grid,.gw-commons-cover,.gw-commons-story,.gw-commons-events{grid-template-columns:1fr;gap:1.5rem}
 .gw-canvas-cover{display:flex;flex-direction:column;padding:2rem 0}
 .gw-canvas-cover>.gw-hero-image{height:15rem;order:0}
 .gw-canvas-cover>div{order:1;margin:0;padding:2rem;width:100%}
 .gw-commons-cover{padding:2rem}.gw-commons-cover img{height:16rem}
 .gw-commons-events .gw-events{grid-column:1}
 .gw-footer nav{gap:.75rem}
}
.gw-speaker-profile{display:flex;align-items:flex-start;gap:1.5rem;padding:1.5rem 0;border-bottom:1px solid var(--gw-border);text-align:left}
.gw-speaker-profile>img{width:10rem;height:10rem;object-fit:cover;border-radius:1rem;flex-shrink:0}
.gw-speaker-profile>div{min-width:0;flex:1}
@media(max-width:600px){.gw-speaker-profile{flex-direction:column}.gw-speaker-profile>img{width:7rem;height:7rem}}
