/* Graphic systems composed in MagicPath. Scope stays inside the association. */
.sc-theme-picker{margin-block:24px}.sc-theme-sample{border:1px solid #cbd6e5;padding:24px;margin-block:18px;background:#f6f8fc}.sc-theme-sample strong{display:block;font-size:26px;line-height:1.2}.sc-theme-sample p{margin:12px 0 0;max-width:64ch}.sc-theme-swatches{display:flex;gap:10px;margin-top:20px}.sc-theme-swatches span{width:32px;height:32px;border-radius:50%;border:1px solid #0003}
.sites-association.st-graphic{background:var(--st-cream);color:var(--st-ink)}
.sites-association.st-graphic :is(h1,h2,h3,h4),.sites-association.st-graphic .st-hero .st-title{font-family:var(--st-heading-font);letter-spacing:-.025em}
.sites-association.st-graphic .st-hero{position:relative;background-color:var(--st-hero);color:var(--st-hero-text);border-block:1px solid var(--st-line)}
.sites-association.st-graphic .st-hero-inner{position:relative;z-index:1;align-items:center;gap:44px;padding-block:56px}
.sites-association.st-graphic .st-hero .st-title{font-size:clamp(36px,4.7vw,68px);font-weight:700;max-width:16ch;line-height:1.08}
.sites-association.st-graphic .st-hero-copy>.st-eyebrow{color:inherit;letter-spacing:.14em;font-size:11px}
.sites-association.st-graphic .st-hero .st-hero-mission{max-width:42ch;font-size:16px}
.sites-association.st-graphic .st-primary,.sc-preview-section .sites-association.st-graphic .st-primary{background:var(--st-accent);color:var(--st-button-text)!important;border-radius:var(--st-radius);padding:14px 20px;border:1px solid transparent}
.sites-association.st-graphic .st-hero-photo{background:var(--st-paper);padding:10px;border:1px solid var(--st-line);border-radius:var(--st-radius);color:var(--st-ink)}
.sites-association.st-graphic .st-hero-photo img{border-radius:var(--st-radius)}
.sites-association[style].st-graphic .st-hero .st-hero-photo figcaption{color:var(--st-ink);padding:4px 6px}
.sites-association.st-graphic .st-next-event{border-radius:var(--st-radius);background:var(--st-paper);border:1px solid var(--st-line);border-left:5px solid var(--st-primary);padding:28px}
.sites-association.st-graphic .st-next-event .st-eyebrow{color:var(--st-accent-text)}
.sites-association.st-graphic .st-home-involvement{background:var(--st-cream);border:0;gap:48px;padding-block:52px}
.sites-association.st-graphic .st-home-involvement>.st-home-involvement-options{background:var(--st-paper);border:1px solid var(--st-line);border-radius:var(--st-radius);padding:26px}
.sites-association.st-graphic .st-home-highlights{gap:24px;padding-bottom:32px}
.sites-association.st-graphic .st-home-teaser{padding:28px!important;border:1px solid var(--st-line);background:var(--st-paper);border-radius:var(--st-radius);margin:0!important}
.sites-association.st-graphic .st-office-note{background:var(--st-hero);color:var(--st-hero-text);border:0}
.sites-association.st-graphic .st-office-note :is(p,h2,a){color:inherit}
.sites-association.st-graphic .st-footer{background:var(--st-footer);border:0;gap:24px}
.sites-association.st-graphic .st-footer,.sites-association.st-graphic .st-footer :is(p,a,strong,button){color:var(--st-footer-text)}
.sites-association.st-graphic .st-project-panel{border-radius:var(--st-radius);background:var(--st-cream);color:var(--st-ink)}
/* Motifs stay subtle and never carry content. */
.st-graphic.st-pattern-grid .st-hero{background-image:linear-gradient(#8888880b 1px,transparent 1px),linear-gradient(90deg,#8888880b 1px,transparent 1px);background-size:32px 32px}
.st-graphic.st-pattern-dots .st-hero{background-image:radial-gradient(#88888820 1px,transparent 1px);background-size:18px 18px}
.st-graphic.st-pattern-lines .st-hero{background-image:repeating-linear-gradient(90deg,transparent 0 79px,#88888812 79px 80px)}
.st-graphic.st-pattern-contours .st-hero{background-image:repeating-radial-gradient(ellipse at 105% 120%,transparent 0 39px,#88888813 40px 41px,transparent 42px 65px)}
/* Six composition families, independent of the chosen RGB identity. */
.sites-association.st-layout-editorial .st-hero-inner{grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);gap:64px}
.sites-association.st-layout-editorial .st-hero-photo{padding:0;border-radius:0;background:transparent;border:0;border-top:5px solid var(--st-primary)}
.sites-association.st-layout-editorial .st-hero-photo img{border-radius:0}
.sites-association[style].st-graphic.st-layout-editorial .st-hero .st-hero-photo figcaption{color:var(--st-hero-text)}
.sites-association.st-layout-editorial .st-home-highlights{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.sites-association.st-layout-studio .st-hero-inner{grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);align-items:start}
.sites-association.st-layout-studio .st-hero-photo{margin-top:36px;box-shadow:12px 12px 0 var(--st-line)}
.sites-association.st-layout-studio .st-hero .st-title{font-weight:850;letter-spacing:-.05em}
.sites-association.st-layout-studio .st-home-involvement{border-bottom:8px solid var(--st-primary)}
.sites-association.st-layout-technical .st-hero-inner{border-inline:1px solid var(--st-line)}
.sites-association.st-layout-technical .st-hero-copy{border-top:3px solid var(--st-primary);padding-top:24px}
.sites-association.st-layout-technical .st-hero .st-title{font-size:clamp(32px,3.8vw,52px);letter-spacing:-.065em}
.sites-association.st-layout-technical .st-hero-photo{padding:16px;border-radius:0}
.sites-association.st-layout-technical .st-date-mark{border:1px solid var(--st-line);border-radius:0}
.sites-association.st-layout-organic .st-hero-photo{border-radius:80px 24px 80px 24px;padding:14px}
.sites-association.st-layout-organic .st-hero-photo img{border-radius:68px 16px 68px 16px}
.sites-association.st-layout-organic .st-home-involvement>.st-home-involvement-options{border-radius:32px 8px 32px 8px}
.sites-association.st-layout-organic .st-next-event{border-radius:28px 6px 28px 6px}
.sites-association.st-layout-human .st-hero-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}
.sites-association.st-layout-human .st-hero-photo{padding:0;border:0;background:transparent}
.sites-association.st-layout-human .st-hero-photo img{border-radius:var(--st-radius)}
.sites-association[style].st-graphic.st-layout-human .st-hero .st-hero-photo figcaption{color:var(--st-hero-text)}
.sites-association.st-layout-human .st-home-involvement{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.sites-association.st-layout-stage .st-hero-inner{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:32px}
.sites-association.st-layout-stage .st-hero .st-title{font-size:clamp(40px,5.8vw,80px);line-height:1;letter-spacing:-.05em}
.sites-association.st-layout-stage .st-hero-photo{border-radius:0;padding:8px;transform:rotate(-2deg);margin:16px}
.sites-association.st-layout-stage .st-hero-photo img{border-radius:0}
.sites-association.st-layout-stage .st-next-event{border-top:7px solid var(--st-accent)}
@media(max-width:699px){
 .sites-association.st-graphic .st-hero-inner{grid-template-columns:minmax(0,1fr);padding-block:36px;gap:26px}
 .sites-association.st-graphic .st-hero .st-title{font-size:36px;max-width:18ch}
 .sites-association.st-graphic .st-home-involvement,.sites-association.st-graphic .st-home-highlights{grid-template-columns:minmax(0,1fr);gap:20px}
 .sites-association.st-graphic .st-home-involvement{padding-block:32px}
 .sites-association.st-graphic .st-home-teaser{padding:22px!important}
 .sites-association.st-layout-studio .st-hero-photo{margin:0 8px 8px 0;box-shadow:8px 8px 0 var(--st-line)}
 .sites-association.st-layout-stage .st-hero-photo{margin:8px;transform:none}
 .sites-association.st-layout-technical .st-hero .st-title{font-size:32px}
 .sites-association.st-graphic .st-next-event{padding:24px}
}
/* Stickers & chrome: a visual universe around clear central content. */
.sites-association.st-classic-portal{--st-heading-font:system-ui,sans-serif;--st-radius:18px;--st-primary:var(--st-hero);--st-footer:var(--st-hero);--st-footer-text:var(--st-hero-text)}
.sites-association.st-classic-portal .st-demo-banner{position:static!important}
.sites-association.st-layout-portal .st-nav-group.is-active>summary{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.sites-association[style].st-graphic.st-classic-portal .st-hero{color:var(--st-ink);background:transparent}
.sites-association[style].st-graphic.st-classic-portal .st-hero :is(.st-title,.st-hero-mission,.st-hero-copy>.st-eyebrow){color:var(--st-ink)}
.sc-theme-sample{position:relative;overflow:hidden;isolation:isolate;min-height:160px}
.sc-universe-sample-art{display:block;width:100%;height:180px;object-fit:contain;pointer-events:none;grid-column:2;grid-row:1/4}
.sc-theme-sample:has(.sc-universe-sample-art){display:grid;grid-template-columns:minmax(0,1fr) 220px;column-gap:24px;align-items:start}
.sc-theme-sample:has(.sc-universe-sample-art)>:not(img){grid-column:1;max-width:100%}
@media(max-width:699px){.sc-theme-sample:has(.sc-universe-sample-art){grid-template-columns:minmax(0,1fr)}.sc-universe-sample-art{grid-column:1;grid-row:auto;height:220px;margin-bottom:16px}}

.sites-association.st-universe{overflow:clip}
.sites-association.st-layout-portal{position:relative;isolation:isolate;background:var(--st-cream)}
.st-universe-art{position:absolute;z-index:-1;pointer-events:none;user-select:none;inset:80px auto auto 50%;transform:translateX(-50%);width:100%;min-width:640px;max-width:1200px;height:auto;opacity:.94}
.sites-association.st-layout-portal .st-demo-banner{background:#ffffffb8;position:relative}
.sites-association.st-layout-portal .st-header{position:relative;max-width:640px;margin:auto;background:transparent;border:0;padding-top:48px;display:flex;flex-direction:column;gap:20px;align-items:center;text-align:center}
.sites-association.st-layout-portal .st-wordmark{flex-direction:column;gap:16px;font-size:23px;max-width:430px}
.sites-association.st-layout-portal .st-original-mark{border-radius:50%;width:92px;height:92px;background:#fff;border:3px solid var(--st-primary);font-size:25px;box-shadow:0 8px 28px #20212410}
.sites-association.st-layout-portal .st-original-logo{width:112px;height:112px;object-fit:contain;background:#fff;border-radius:50%;padding:8px}
.sites-association.st-layout-portal .st-socials{width:100%;justify-content:center;gap:14px}
.sites-association.st-layout-portal .st-social-note{width:100%;text-align:center}
.sites-association.st-layout-portal .st-header nav{justify-content:center;width:100%;max-width:100%;min-width:0}
.sites-association.st-layout-portal .st-header :is(.st-nav-group,.st-nav-panel){max-width:100%;overflow-wrap:anywhere}
.sites-association.st-layout-portal .st-header>nav{background:#fff;color:var(--st-ink);padding:12px 16px;border:1px solid var(--st-line);border-radius:18px;box-shadow:0 6px 20px #20212408}
.sites-association.st-layout-portal .st-header .st-nav-panel{background:#fff;color:var(--st-ink)}
.sites-association.st-layout-portal .st-header nav :is(a,button,summary){color:var(--st-ink)}
.sites-association.st-layout-portal .st-hero{background:transparent;border:0}
.sites-association.st-layout-portal .st-hero-inner{max-width:640px;grid-template-columns:1fr;gap:28px;padding-top:24px;padding-bottom:32px}
.sites-association.st-layout-portal .st-hero-copy{text-align:center;background:var(--st-cream);padding:20px 14px;border-radius:24px}
.sites-association.st-layout-portal .st-hero .st-title{font-size:clamp(30px,4vw,48px);max-width:20ch;margin:12px auto 20px;line-height:1.1}
.sites-association.st-layout-portal .st-hero .st-hero-mission{max-width:40ch;margin-inline:auto}
.sites-association.st-layout-portal .st-hero-actions{justify-content:center}
.sites-association.st-layout-portal .st-hero-actions .st-primary{background:var(--st-accent);border-radius:99px}
.st-portal-links{display:grid;gap:16px;margin-top:28px;text-align:left}
.sites-association.st-layout-portal .st-portal-links :is(a,button){width:100%;min-height:68px;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #fff;background:#fff;color:var(--st-ink);border-radius:var(--st-radius);font:inherit;font-size:17px;font-weight:650;text-decoration:none;box-shadow:0 6px 20px #20212406;cursor:pointer}
.sites-association.st-layout-portal .st-portal-links :is(a,button):hover{border-color:var(--st-primary);transform:translateY(-2px)}
.sites-association.st-layout-portal .st-portal-links :is(a,button):focus-visible{outline:3px solid var(--st-primary);outline-offset:4px}
.sites-association.st-layout-portal .st-hero-photo{padding:12px;border-radius:22px;background:#fff}
.sites-association.st-layout-portal .st-next-event-wrap{max-width:640px;position:relative}
.sites-association.st-layout-portal .st-next-event-wrap .st-next-event{grid-template-columns:1fr;gap:16px;background:#fff}
.sites-association.st-layout-portal .st-home-content{max-width:960px;margin-inline:auto;position:relative}
.sites-association.st-layout-portal .st-footer{position:relative}
.sites-association.st-layout-portal .st-page-content{position:relative;max-width:900px;background:#fffffff2;border-radius:24px;margin:28px auto;padding:24px}
@media(max-width:699px){
 .sites-association.st-layout-portal .st-header{padding-top:28px;gap:14px}
 .sites-association.st-universe .st-universe-art{min-width:0;width:100%;top:52px}
 .sites-association.st-layout-portal .st-hero-inner{padding-top:16px;padding-inline:5%}
 .sites-association.st-layout-portal .st-hero-copy{padding:16px 10px}
 .sites-association.st-layout-portal .st-hero .st-title{font-size:32px}
 .sites-association.st-layout-portal .st-portal-links :is(a,button){padding:18px;min-height:64px;font-size:16px}
 .sites-association.st-layout-portal .st-next-event-wrap{margin-top:0}
 .sites-association.st-layout-portal .st-page-content{margin:16px;padding:12px}
}
