@font-face{font-family:Quicksand;src:url('assets/fonts/Quicksand-700.woff') format('woff');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Inter;src:url('assets/fonts/Inter-400.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('assets/fonts/Inter-600.woff') format('woff');font-style:normal;font-weight:600;font-display:swap}
:root{--black:#161616;--red:#d5252a;--yellow:#f5c029;--gray:#585858;--line:#e3e3e3;--white:#fff;--soft:#f7f7f7;--radius:26px;--heading:Quicksand,Arial,sans-serif;--body:Inter,Arial,sans-serif}
*{box-sizing:border-box}html{--header-height:116px;--footer-height:140px;--anchor-offset:calc(var(--header-height) + 24px);scroll-behavior:smooth;scroll-padding-top:var(--anchor-offset)}body{margin:0;color:var(--black);background:var(--white);font-family:var(--body);font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit}img{display:block;max-width:100%;height:auto}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid var(--red);outline-offset:6px}::selection{background:var(--yellow);color:var(--black)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--heading);font-weight:700;line-height:1.12;letter-spacing:-.045em}p{overflow-wrap:break-word}.shell{width:min(1180px,calc(100% - 96px));margin-inline:auto}.section-space{padding-block:104px}.eyebrow{font-size:.8125rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;line-height:1.5}.text-red{color:var(--red)}.skip-link{position:absolute;top:-100px;left:20px;background:var(--black);color:white;padding:12px 20px;z-index:100}.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:20;background:var(--white);border-bottom:1px solid var(--line)}.header-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:30px;min-height:100px;padding-block:20px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;text-decoration:none}.brand-symbol{width:56px;height:56px;object-fit:contain;flex-shrink:0;border-radius:6px}.logo-window{width:214px;height:40px;display:block;position:relative;overflow:hidden;background:white}.logo-window img{position:absolute;width:116.2%;max-width:none;height:auto;left:-8.2%;top:-26px}nav{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:30px}nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:.875rem;font-weight:600;white-space:nowrap;transition:color .18s}nav a:hover{color:var(--red)}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:15px 24px;border:1px solid transparent;border-radius:8px;background:var(--red);color:white;text-decoration:none;font-size:.9375rem;font-weight:600;line-height:1.4;min-height:52px;transition:background .18s,transform .18s}.button span{font-size:1.35rem;line-height:1}.button:hover{background:#b71920;transform:translateY(-2px)}.button-small{min-height:44px;padding:11px 18px;font-size:.875rem;gap:20px}
h1{font-size:clamp(2.65rem,4.65vw,4.1rem);letter-spacing:-.052em;line-height:1.08}h1 span{color:var(--red)}
.services{background:var(--soft);border-block:1px solid #ededed}.services-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.section-intro .eyebrow{margin-bottom:20px}h2{font-size:clamp(2.3rem,3.3vw,3rem);line-height:1.15}.section-intro>p:last-child{color:var(--gray);max-width:320px;line-height:1.55;margin-top:25px}.service-row{display:grid;grid-template-columns:33px 1fr;gap:22px;padding-block:27px;border-bottom:1px solid #dadada}.service-row:first-child{padding-top:0}.service-row:last-child{border-bottom:0;padding-bottom:0}.service-number{font-size:.75rem;font-weight:600;color:var(--red);padding-top:8px;letter-spacing:.06em}.service-row h3{font-size:1.5rem;letter-spacing:-.035em;line-height:1.25}.service-row p{font-size:1rem;line-height:1.55;color:var(--gray);margin-top:13px}.service-row .service-details{font-size:.8125rem;font-weight:600;line-height:1.55;margin-top:13px;color:#505050}
.about{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px;align-items:start}.about-heading .eyebrow{margin-bottom:20px}.highlight{position:relative;isolation:isolate;white-space:nowrap}.highlight:after{content:"";position:absolute;left:0;right:0;bottom:5px;height:10px;background:var(--yellow);z-index:-1}.name-equation{margin-top:32px;font-size:.9375rem;font-weight:600}.name-equation span{color:var(--red);margin-inline:9px}.about-story{padding-top:38px}.about-story p{color:var(--gray);margin-top:19px;font-size:1.025rem;line-height:1.55}.about-story .story-lead{margin:0;color:var(--black);font-family:var(--heading);font-weight:700;font-size:1.65rem;line-height:1.5;letter-spacing:-.035em}
.approach{background:var(--black);color:white;padding-block:77px 86px}.approach-header{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px;align-items:start}.approach-header .eyebrow{color:var(--yellow);padding-top:10px}.approach-header h2{font-size:2.75rem}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:58px}.approach-grid article{padding-top:23px;border-top:1px solid #4a4a4a}.step-label{font-size:.8125rem;color:var(--yellow)}.approach-grid h3{font-size:1.375rem;line-height:1.3;margin-top:13px;letter-spacing:-.025em}.approach-grid p{font-size:1rem;color:#c6c6c6;line-height:1.55;margin-top:13px}
.contact{padding-bottom:72px}.contact-panel{padding:57px 60px;background:var(--yellow);border-radius:var(--radius);display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}.contact-panel .eyebrow{margin-bottom:20px}.contact h2{font-size:3.15rem;line-height:1.1}.contact h2 span{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}.contact-panel p:last-child{margin-top:22px;max-width:445px;font-size:1rem;line-height:1.55}.contact-action{display:flex;flex-direction:column;gap:16px;align-items:center}.button-dark{background:var(--black)}.button-dark:hover{background:#343434}.email-link{font-size:.9375rem;text-underline-offset:5px}.site-footer{display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid var(--line);padding-block:30px 35px;gap:25px}.footer-brand .logo-window{width:180px;height:34px}.footer-brand .logo-window img{top:-22px}.footer-brand .brand-symbol{width:46px;height:46px}.site-footer p{font-size:.8125rem;margin-top:13px;color:var(--gray)}.copyright{white-space:nowrap}


.header-brand .brand-name{display:flex;flex-direction:column;gap:6px;width:280px;min-width:0}
.header-brand .logo-window{width:100%;height:auto;aspect-ratio:214/40}
.header-brand .logo-window img{top:-65%}
.brand-tagline{font-size:.875rem;font-weight:400;line-height:1.45;letter-spacing:-.025em;color:var(--black)}

.hero{padding-block:56px 80px;text-align:left}
.hero-copy{max-width:940px;margin-inline:0}

.hero h1{font-size:clamp(2.7rem,5.4vw,4.6rem);max-width:880px;margin-inline:0;line-height:1.1}
.hero-description{font-size:1.125rem;line-height:1.55;color:var(--gray);max-width:760px;margin:25px 0 0}
.hero-actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:25px;margin-top:31px}
.event-examples{margin-top:76px;padding-top:64px;border-top:1px solid #dadada}
.event-examples-heading{max-width:770px}
.event-examples-heading .eyebrow{margin-bottom:17px}
.event-examples-heading>p:last-child{margin-top:20px;color:var(--gray);max-width:660px}
.event-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:36px}
.event-example{margin:0;min-width:0}
.event-image{aspect-ratio:4/3;padding:12px;background:white;border:1px solid var(--line);border-radius:18px;display:flex;align-items:center;justify-content:center}.event-image>img{width:100%;height:100%;object-fit:contain;border-radius:inherit}
.event-example figcaption{padding-top:22px}
.event-example h3{font-size:1.5rem;letter-spacing:-.025em;line-height:1.3}
.event-example figcaption p{margin-top:10px;color:var(--gray);font-size:1rem;line-height:1.55;max-width:510px}

@media(max-width:1100px){.shell{width:calc(100% - 64px)}.header-inner{gap:20px}nav{gap:23px}.header-cta{display:none}.services-layout,.about,.approach-header{gap:55px;grid-template-columns:.8fr 1.2fr}.contact-panel{padding:42px;gap:30px}.contact h2{font-size:2.8rem}}
@media(max-width:800px){.brand-symbol{width:50px;height:50px}.hero{padding-block:35px 60px}.hero h1{font-size:clamp(2.6rem,7.8vw,4rem)}.hero-description{font-size:1.0625rem}.hero-actions{gap:22px;margin-top:25px}.event-examples{margin-top:55px;padding-top:45px}.event-gallery{grid-template-columns:1fr;gap:36px}.event-image{max-height:none}.event-examples-heading h2{font-size:2.3rem}html{--header-height:131px}.shell{width:calc(100% - 44px)}.section-space{padding-block:70px}.header-inner{flex-wrap:wrap;row-gap:16px;justify-content:center;padding-block:16px}.logo-window{width:195px;height:36px}.logo-window img{top:-24px}nav{gap:24px}nav a{font-size:.875rem}h1{font-size:clamp(2.6rem,7.8vw,4rem);max-width:650px}.services-layout,.about{grid-template-columns:1fr;gap:38px}.section-intro>p:last-child{max-width:560px;margin-top:20px}.section-intro h2 br,.about-heading h2 br{display:none}.service-row{grid-template-columns:27px 1fr;gap:16px}.service-row h3{font-size:1.4rem}.service-row p{font-size:1rem}.service-row .service-details{font-size:.875rem}.about-story{padding:0}.about-story .story-lead{font-size:1.6rem}.name-equation{margin-top:23px}.approach{padding-block:65px}.approach-header{grid-template-columns:1fr;gap:17px}.approach-header .eyebrow{padding:0}.approach-header h2{font-size:2.5rem}.approach-header h2 br{display:none}.approach-grid{grid-template-columns:1fr;gap:30px;margin-top:32px}.approach-grid h3{font-size:1.4rem}.approach-grid p{font-size:1rem;max-width:610px}.contact-panel{grid-template-columns:1fr;padding:35px 28px;gap:32px;border-radius:20px}.contact-action{align-items:flex-start}.contact h2{font-size:2.8rem}.contact-panel p:last-child{max-width:540px}.site-footer{padding-bottom:28px}.site-footer p{font-size:.8125rem}}
@media(max-width:480px){.header-brand .brand-name{width:calc(100vw - 102px);max-width:280px}.brand{gap:10px}.brand-symbol{width:46px;height:46px}.hero h1{font-size:2.6rem}.hero-description{font-size:1rem}.hero-actions{gap:20px}.event-example figcaption{padding-top:17px}html{--header-height:141px}.shell{width:calc(100% - 36px)}.header-inner{row-gap:12px;padding-block:14px}.logo-window{width:185px;height:35px}.logo-window img{top:-23px}nav{width:100%;justify-content:space-between;gap:12px}nav a{font-size:.875rem}h1{font-size:2.8rem}.hero-actions .button{padding:14px 18px;gap:15px;font-size:.875rem}.section-space{padding-block:59px}h2{font-size:2.3rem}.service-row h3{font-size:1.35rem}.service-row .service-details{font-size:.8125rem}.about-story .story-lead{font-size:1.4rem}.about-story p{font-size:1rem}.approach-header h2{font-size:2.3rem}.contact-panel{padding:30px 23px}.contact h2{font-size:2.55rem}.contact-panel .eyebrow{font-size:.75rem}.button-dark{gap:20px;padding-inline:19px}.site-footer{align-items:flex-start;flex-direction:column;gap:15px}.copyright{margin-top:0!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,nav a{transition:none}.button:hover{transform:none}}

/* Intrinsic wordmark sizing preserves the descender at every viewport width. */
.brand .logo-window{height:auto;aspect-ratio:1700/332;overflow:visible}
.brand .logo-window img{position:static;width:100%;max-width:100%;height:auto;inset:auto}
.header-brand{display:grid;grid-template-columns:56px minmax(0,280px);column-gap:12px;row-gap:6px;max-width:100%}
.header-brand .brand-name{display:contents}
.header-brand .brand-symbol{grid-column:1;grid-row:1;align-self:center;width:56px;height:56px}
.header-brand .logo-window{grid-column:2;grid-row:1;width:100%;align-self:center}
.header-brand .brand-tagline{grid-column:2;grid-row:2}
@media(max-width:800px){.header-brand{grid-template-columns:50px minmax(0,280px)}.header-brand .brand-symbol{width:50px;height:50px}}
@media(max-width:480px){.header-brand{grid-template-columns:46px minmax(0,280px);column-gap:10px}.header-brand .brand-symbol{width:46px;height:46px}}

/* Keep the brand on a solid white surface while scrolling. */
.brand .logo-window{background:transparent}
.brand-symbol,.brand .logo-window img{filter:contrast(1.04)}

/* Focused photography supports groups of related services. */
.services-layout{display:block}
.section-intro{display:grid;grid-template-columns:1.05fr 1fr;column-gap:70px;align-items:end}
.section-intro .eyebrow{grid-column:1/-1;margin-bottom:18px}
.section-intro h2 br{display:none}
.section-intro>p:last-child{max-width:500px;margin:0;line-height:1.55}
.service-group{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start;margin-top:54px;padding-top:48px;border-top:1px solid #dadada}
.service-visual{margin:0;min-width:0}
.service-visual figcaption{font-family:var(--heading);font-weight:700;font-size:1.625rem;line-height:1.3;letter-spacing:-.035em;margin-bottom:22px}
.service-visual img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:12px;background:#e8e8e8}
.service-visual img[src*="podcast-production"]{object-position:center 40%}
.service-row,.service-row:first-child,.service-row:last-child{display:block;min-width:0}
.service-copy{display:block}
.service-row .service-details{font-size:.875rem}
.event-examples{margin-top:65px;padding-top:48px}
.event-formats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:35px}
.event-example{padding-top:22px;border-top:3px solid var(--yellow)}
.event-example h3{font-size:1.35rem}
.event-example p{color:var(--gray);font-size:1rem;line-height:1.55;margin-top:12px}
@media(max-width:1100px){.service-group{gap:40px}.section-intro{column-gap:40px}}
@media(max-width:800px){.section-intro{display:block}.section-intro>p:last-child{margin-top:20px}.service-group{gap:30px;grid-template-columns:.8fr 1.2fr}.service-visual figcaption{font-size:1.4rem}.event-formats{gap:24px}}
@media(max-width:600px){.service-group{grid-template-columns:1fr;gap:28px;margin-top:36px;padding-top:32px}.service-visual img{aspect-ratio:3/2}.service-visual figcaption{font-size:1.6rem;margin-bottom:18px}.event-formats{grid-template-columns:1fr;gap:25px}}

/* Pair one image with each service area; alternate sides on wider screens. */
.service-group{align-items:center}
.service-group--reverse{grid-template-columns:1.15fr .85fr}
.service-group--reverse .service-visual{order:2}
.service-group--reverse .service-list{order:1}
@media(max-width:800px) and (min-width:601px){.service-group--reverse{grid-template-columns:1.2fr .8fr}}
@media(max-width:600px){.service-group--reverse{grid-template-columns:1fr}.service-group--reverse .service-visual,.service-group--reverse .service-list{order:initial}}

/* Compact editorial service rows with a single title beside each image. */
.service-group{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;margin-top:32px;padding:28px;background:var(--white);border:1px solid var(--line);border-radius:18px}
.service-group--reverse{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.service-visual img{aspect-ratio:4/3;border-radius:10px}
.service-list{min-width:0}
.service-row h3{font-size:1.65rem;line-height:1.25}
.service-row p{margin-top:12px;max-width:56ch;word-spacing:normal;letter-spacing:normal}
.service-row .service-details{font-size:.875rem;line-height:1.5;margin-top:16px;padding-top:14px;border-top:2px solid var(--yellow)}
.about-story p{line-height:1.5;margin-top:16px;max-width:60ch;word-spacing:normal;letter-spacing:normal}
.about-story .story-lead{line-height:1.35}
.event-formats{gap:24px}
.event-example{padding:0;border:1px solid var(--line);border-radius:16px;background:var(--white);overflow:hidden}
.event-image{padding:12px;aspect-ratio:4/3;border:0;border-radius:0}
.event-image>img{object-fit:contain;border-radius:0}
.event-caption{padding:22px 24px 26px;border-top:3px solid var(--yellow)}
.event-example p{line-height:1.5;margin-top:10px}
@media(max-width:800px){.service-group,.service-group--reverse{gap:28px;padding:22px}.service-row h3{font-size:1.4rem}.event-formats{gap:16px}.event-caption{padding:18px}.event-example h3{font-size:1.25rem}}
@media(max-width:600px){.service-group,.service-group--reverse{grid-template-columns:1fr;gap:24px;padding:20px;margin-top:24px}.service-visual img{aspect-ratio:3/2}.service-row h3{font-size:1.5rem}.event-formats{grid-template-columns:1fr;gap:24px}.event-caption{padding:22px}.event-example h3{font-size:1.4rem}}

/* Service collection: three focused visual introductions, then concise capabilities. */
.services{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.service-showcase{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:42px}
.offering{min-width:0}
.offering-photo{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:10px;background:var(--soft)}
.offering-body{padding-top:22px}
.offering .offering-label{font-size:.8125rem;color:var(--red);font-weight:600;margin:0 0 10px;line-height:1.3}
.offering h3{font-size:1.55rem;line-height:1.2;letter-spacing:-.03em;max-width:23ch}
.offering p{font-size:1rem;line-height:1.5;color:var(--gray);margin-top:14px}
.offering .offering-details{font-size:.875rem;line-height:1.5;margin-top:18px;color:var(--black);font-weight:600}
.service-capabilities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:56px;row-gap:30px;margin-top:44px;padding:32px;background:var(--soft);border-radius:12px}
.offering-compact{padding-top:18px;border-top:2px solid var(--yellow)}
.offering-compact h3{font-size:1.3rem;max-width:none}
.offering-compact p{margin-top:10px;max-width:58ch}
.offering-compact .offering-details{margin-top:12px}
@media(max-width:900px){.service-showcase{gap:22px}.offering h3{font-size:1.35rem}.service-capabilities{gap:28px;padding:26px}}
@media(max-width:700px){.service-showcase{grid-template-columns:1fr;gap:34px;margin-top:30px}.offering-featured{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:24px}.offering-body{padding:0}.offering-photo{aspect-ratio:1;align-self:start}.service-capabilities{grid-template-columns:1fr;padding:24px;margin-top:34px}.offering h3{font-size:1.45rem}}
@media(max-width:480px){.offering-featured{display:block}.offering-photo{aspect-ratio:3/2}.offering-body{padding-top:20px}.service-capabilities{padding:22px}.offering h3{font-size:1.5rem}}

@media(min-width:701px){.offering-featured{display:flex;flex-direction:column}.offering-body{display:flex;flex:1;flex-direction:column}.offering-featured h3{min-height:2.4em}.offering-featured .offering-details{margin-top:auto;padding-top:18px}}

.offering-photo[src*="websites"]{object-position:50% 60%}

/* Events lead the story; compact paragraph rhythm carries through the page. */
.events-primary{background:var(--soft);border-top:1px solid var(--line)}
.event-primary-intro{max-width:850px}
.event-primary-intro .eyebrow{color:var(--red);margin-bottom:14px}
.event-primary-intro h2{max-width:800px}
.event-primary-intro>p:not(.eyebrow){margin-top:14px;max-width:76ch;color:var(--gray)}
.event-primary-intro .event-scope{font-size:.875rem;font-weight:600;color:var(--black)}
.supporting-services{padding-block:70px}
.supporting-services .section-intro h2{font-size:clamp(2rem,3vw,2.6rem)}
.supporting-services .service-capabilities{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
main p,main .hero-description,main .section-intro>p:last-child,main .offering p,main .offering .offering-details,main .event-example p,main .about-story p,main .approach-grid p,main .contact-panel p:last-child{line-height:1.4;word-spacing:normal;letter-spacing:normal}
main .about-story .story-lead{line-height:1.3}
main .about-story p{margin-top:10px}
main .offering p,main .event-example p,main .approach-grid p{margin-top:10px}
main .offering .offering-details{margin-top:12px;padding-top:0}
main .offering .offering-label{margin-top:0;margin-bottom:8px}
@media(max-width:800px){.supporting-services .service-capabilities{grid-template-columns:1fr}.supporting-services{padding-block:55px}}

/* One consistent grid keeps supporting offerings visually connected. */
.supporting-services .service-showcase{gap:20px;margin-top:30px;align-items:stretch}
.supporting-services .offering{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;gap:0}
.supporting-services .offering-photo{border-radius:0;aspect-ratio:16/9}
.supporting-services .offering-body{padding:22px;display:flex;flex-direction:column;flex:1}
.supporting-services .offering h3{min-height:0;max-width:none;font-size:1.4rem;line-height:1.2}
.supporting-services .offering-compact{padding:22px;border-top:3px solid var(--yellow);background:var(--soft)}
.supporting-services .offering-includes{list-style:none;margin:18px 0 0;padding:14px 0 0;border-top:1px solid var(--line);display:grid;gap:7px;font-size:.875rem;line-height:1.35;color:var(--black);font-weight:600}
.supporting-services .offering-includes li{position:relative;padding-left:14px}
.supporting-services .offering-includes li:before{content:"";position:absolute;left:0;top:.45em;width:5px;height:5px;background:var(--red);border-radius:50%}
@media(min-width:701px){.supporting-services .offering-body>p:not(.offering-label){flex:1}.supporting-services .offering-compact>p{flex:1}}
@media(max-width:900px) and (min-width:601px){.supporting-services .service-showcase{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.supporting-services .service-showcase{grid-template-columns:1fr;gap:18px}.supporting-services .offering-body,.supporting-services .offering-compact{padding:20px}}

/* Lead with the belief behind Gatherithm. */
main .hero-belief{max-width:760px;margin:0 0 24px;font-size:clamp(1.125rem,2vw,1.4rem);line-height:1.35;color:var(--black);text-wrap:balance}
.hero-belief strong{font-weight:600}
@media(max-width:480px){main .hero-belief{margin-bottom:20px;font-size:1.125rem}}

/* Carry the same white card treatment through the supporting offerings. */
.supporting-services .offering-compact{background:var(--white);border:1px solid var(--line);padding:22px}
.supporting-services .offering-compact>p{flex:0 1 auto}
.supporting-services .offering-compact .offering-includes{margin-top:16px;padding-top:12px;gap:6px;font-weight:400}
.supporting-services .offering-compact h3{font-size:1.3rem;line-height:1.25}
@media(max-width:600px){.supporting-services .offering-compact{padding:20px}}

/* Supporting offerings return to blocks with restrained brand-color accents. */
.supporting-services .offering-compact{display:flex;flex-direction:column;grid-column:auto;gap:0;padding:22px;border:1px solid var(--line);border-top:4px solid var(--card-accent);border-radius:12px;background:var(--card-tint);overflow:hidden}
.supporting-services .offering-compact:nth-child(4){--card-accent:var(--red);--card-tint:#fff2f2}
.supporting-services .offering-compact:nth-child(5){--card-accent:var(--yellow);--card-tint:#fff9e6}
.supporting-services .offering-compact:nth-child(6){--card-accent:var(--black);--card-tint:#f2f3f4}
.supporting-services .offering-compact .offering-includes li:before{background:var(--card-accent)}
@media(max-width:600px){.supporting-services .offering-compact{padding:20px}}

/* Align the three lists along the bottom of each equal-height card. */
@media(min-width:601px){.supporting-services .offering-compact>p{flex:1 1 auto}}
.supporting-services .offering-compact .offering-includes{line-height:1.35;gap:6px}

/* Bring Why Gatherithm closer to the supporting offerings. */
.supporting-services{padding-bottom:32px}
.supporting-services + .about{padding-top:40px}
@media(max-width:600px){.supporting-services{padding-bottom:24px}.supporting-services + .about{padding-top:30px}}

/* Final page rhythm: compact sections, readable columns, and resilient contact links. */
.hero{padding-block:44px 56px}
.events-primary{padding-block:64px}
.supporting-services{padding-top:64px;padding-bottom:32px}
.supporting-services + .about{padding-top:40px;padding-bottom:64px}
.approach{padding-block:60px}
.approach-grid{margin-top:32px;gap:30px}
.approach-grid article{padding-top:20px;min-width:0}
.contact{padding-top:64px;padding-bottom:48px}
.about>*{min-width:0}
.about-story .story-lead{margin-top:0}
.supporting-services .offering h3{line-height:1.25}
.supporting-services .offering-includes{font-weight:400;gap:6px;line-height:1.35}
.contact-panel>*{min-width:0}
.contact-action{max-width:100%}
.email-link{overflow-wrap:anywhere;text-align:center}
@media(min-width:601px){.supporting-services .offering-body>p{flex:1 1 auto}}
@media(max-width:800px){.hero{padding-block:32px 44px}.events-primary{padding-block:48px}.supporting-services{padding-top:48px}.supporting-services + .about{padding-bottom:48px}.about{gap:26px}.approach{padding-block:48px}.approach-grid{gap:24px}.contact{padding-top:48px;padding-bottom:36px}.email-link{text-align:left}}
@media(max-width:600px){.supporting-services{padding-bottom:24px}.supporting-services + .about{padding-top:30px}}
@media(max-width:380px){.hero h1{font-size:2.25rem}.brand-tagline{font-size:.8125rem}.contact h2{font-size:2.25rem}.contact-panel .button{padding-inline:14px;gap:10px}.highlight{white-space:normal}}

/* Start every menu destination 24px below the measured sticky header.
   Give the last destination enough scroll room, with the footer at the bottom. */
.contact{--contact-top-space:64px;min-height:calc(100vh - var(--anchor-offset) - var(--footer-height) + var(--contact-top-space));min-height:calc(100dvh - var(--anchor-offset) - var(--footer-height) + var(--contact-top-space))}
@media(max-width:800px){.contact{--contact-top-space:48px}}

/* Event introduction: a balanced headline and story, followed by three clear offerings. */
.event-primary-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:64px;row-gap:28px;align-items:center;max-width:none}
/* Fragment destinations are content regions, not interactive controls. */
#services:focus,#about:focus,#contact:focus,#top:focus,#main:focus{outline:none}
.event-intro-heading,.event-intro-copy{min-width:0}
.event-primary-intro .eyebrow{font-size:.875rem;letter-spacing:.08em;line-height:1.4;margin:0 0 14px;color:var(--red)}
.event-primary-intro h2{font-size:clamp(2.1rem,3.7vw,3rem);line-height:1.12;max-width:18ch;text-wrap:balance}
.event-primary-intro h2 .text-red{white-space:nowrap}
.event-intro-copy{border-left:3px solid var(--yellow);padding-left:24px}
.event-intro-copy p{font-size:1rem;line-height:1.45;color:var(--gray);max-width:55ch}
.event-intro-copy p+p{margin-top:12px}
.event-intro-copy strong{font-weight:600;color:var(--black)}
.event-capabilities{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;list-style:none;padding:0;margin:0}
.event-capabilities li{display:flex;align-items:center;padding:16px 20px;min-width:0;border:1px solid var(--line);border-top:3px solid var(--red);border-radius:8px;background:var(--white);font-size:.9375rem;font-weight:600;line-height:1.35}
.event-capabilities li:nth-child(2){border-top-color:var(--yellow)}
.event-capabilities li:nth-child(3){border-top-color:var(--black)}
@media(max-width:900px){.event-primary-intro{column-gap:32px}.event-capabilities li{padding:14px 16px}}
@media(max-width:700px){.event-primary-intro{grid-template-columns:1fr;row-gap:20px;align-items:start}.event-primary-intro h2{max-width:20ch}.event-intro-copy{padding-left:18px}.event-capabilities{gap:10px;grid-template-columns:1fr}.event-capabilities li{border-top:1px solid var(--line);border-left:3px solid var(--red);padding:12px 16px}.event-capabilities li:nth-child(2){border-top-color:var(--line);border-left-color:var(--yellow)}.event-capabilities li:nth-child(3){border-top-color:var(--line);border-left-color:var(--black)}}

/* A shorter mobile header leaves more room for the opening message. */
@media(max-width:800px){
  .site-header .header-inner{min-height:0;padding-block:8px 6px;row-gap:4px}
  .header-brand{row-gap:3px}
  .site-header nav a{display:inline-flex;align-items:center;min-height:32px}
}

/* Keep event equipment fully visible at its natural proportions. */
.event-image{position:relative;aspect-ratio:4/3;padding:0;overflow:hidden}
.event-image>img{position:absolute;inset:0;width:100%;height:100%;padding:12px;object-fit:contain;object-position:center}

/* Mobile navigation stays readable and easy to tap, including in landscape. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media(max-width:800px){
  .site-header nav{display:flex;flex-wrap:wrap;width:100%;max-width:380px;gap:0 8px}
  .site-header nav a{flex:1 1 auto;min-width:0;min-height:44px;justify-content:center;text-align:center;white-space:normal;line-height:1.25;padding-block:6px}
  .hero h1,.event-primary-intro h2,.about h2,.approach h2,.contact h2{overflow-wrap:break-word}
  .about .highlight{white-space:normal}
}
@media(max-width:700px){
  .event-formats{grid-template-columns:minmax(0,1fr);gap:24px}
}
@media(max-width:600px){
  .hero-actions .button{width:100%;max-width:24rem;text-align:center}
  .contact-action{width:100%;align-items:stretch}
  .contact-action .button{width:100%;text-align:center}
}
@media(max-width:480px){
  .hero h1{font-size:clamp(2.125rem,9.6vw,2.6rem)}
}

/* Keep the approach label and headline together above the three steps. */
.approach .approach-header{display:block;text-align:left}
.approach .approach-header .eyebrow{padding:0;margin-bottom:12px}
.approach .approach-grid{margin-top:24px}

/* Explain each experience and connect the examples to custom development. */
.event-work-intro{margin-top:28px;max-width:78ch;color:var(--gray)}
.event-work-intro+.event-formats{margin-top:20px}
.event-concept-note{display:block;margin-top:14px;font-size:.875rem;line-height:1.4;color:var(--gray)}
.event-customization{margin-top:28px;padding:24px 25px 0;border-top:1px solid var(--line)}
.event-customization h3{font-size:1.5rem;line-height:1.25;letter-spacing:-.025em}
.event-customization p{margin-top:10px;max-width:78ch;color:var(--gray)}
.event-customization p+p{margin-top:18px}
.event-customization strong{font-weight:600;color:var(--black)}
/* Match each card caption's inset, including its one-pixel outer border. */
@media(max-width:800px){.event-customization{padding-inline:19px}}
@media(max-width:700px){.event-customization{margin-top:24px;padding-top:20px}}
@media(max-width:600px){.event-customization{padding-inline:23px}}

/* A shared left edge and tighter type hierarchy keep the mobile opening together. */
@media(max-width:600px){
  .site-header .header-inner{padding-block:12px 6px;row-gap:6px}
  .header-brand{width:min(100%,320px);grid-template-columns:42px minmax(0,1fr);column-gap:10px;row-gap:6px}
  .header-brand .brand-symbol{width:42px;height:42px}
  .header-brand .brand-tagline{grid-column:1/-1;text-align:center;font-size:.875rem;line-height:1.4;text-wrap:balance}
  .hero{padding-block:28px 36px;text-align:left}
  .hero-copy{max-width:35rem}
  main .hero-belief{max-width:none;margin:0 0 18px;font-size:1rem;line-height:1.45;text-wrap:pretty}
  .hero h1{max-width:none;margin:0;font-size:clamp(2rem,8.8vw,2.75rem);line-height:1.12;letter-spacing:-.045em}
  main .hero-description{max-width:none;margin:18px 0 0;font-size:1rem;line-height:1.5;text-wrap:pretty}
}

/* Let the page use the full screen on short landscape or zoomed viewports. */
@media(max-height:520px){.site-header{position:static}html{--header-height:0px}}
