* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body.community-page { margin:0; background:#fff; color:#253747; font-family:Satoshi,system-ui,sans-serif; }
.community-page main a { text-decoration:none; }
.community-page main a:focus-visible { outline:3px solid #ffaf86; outline-offset:4px; }
.community-page h1,.community-page h2,.community-page h3,.community-page p { margin-top:0; }
.community-page p { line-height:1.63; }
.community-wrap { width:min(920px,calc(100% - 48px)); margin-inline:auto; }
.community-intro { padding:70px 0 0; }
.community-intro h1 { margin-bottom:56px; color:#0b2a44; font-size:clamp(2.5rem,4.5vw,4rem); font-weight:850; letter-spacing:-.055em; }
.community-intro-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:42px; align-items:center; padding-bottom:47px; border-bottom:1px solid #dce5eb; }
.community-intro-copy p { max-width:590px; margin-bottom:14px; color:#4d6170; font-size:1.02rem; }
.community-jump-links { display:grid; gap:6px; margin-top:27px; padding:19px 0; border-top:1px solid #dce5eb; border-bottom:1px solid #dce5eb; }
.community-jump-links a { width:max-content; max-width:100%; color:#657a89; font-size:.91rem; line-height:1.5; text-decoration:underline!important; text-decoration-color:#c8d5df!important; text-underline-offset:3px; }
.community-jump-links a:hover { color:#d95621; text-decoration-color:#d95621!important; }
.community-art { position:relative; display:grid; place-items:center; min-height:310px; }
.community-orbit { position:relative; display:grid; place-items:center; width:235px; height:235px; border:2px dashed #b7d5e7; border-radius:50%; transform:rotate(-11deg); }
.community-orbit::before,.community-orbit::after { content:""; position:absolute; border-radius:50%; }.community-orbit::before { inset:25px; border:1px solid #d9e7ef; }.community-orbit::after { width:142px; height:142px; background:#edf7fc; }
.community-orbit img { position:relative; z-index:1; width:82px; filter:drop-shadow(0 9px 15px rgba(10,83,132,.17)); transform:rotate(11deg); }
.orbit-dot { position:absolute; z-index:2; width:15px; height:15px; border-radius:50%; background:#ff6a2b; }.dot-one { top:8px; left:50px; }.dot-two { right:-8px; top:94px; width:11px; height:11px; background:#47adbb; }.dot-three { bottom:10px; left:44px; width:9px; height:9px; background:#a890d2; }
.art-note { position:absolute; z-index:3; padding:8px 11px; border:1px solid #dce8ef; border-radius:9px; background:#fff; color:#37566b; box-shadow:0 11px 22px rgba(12,56,85,.1); font-size:.67rem; font-weight:850; white-space:nowrap; }.note-one { top:43px; right:-5px; transform:rotate(7deg); }.note-two { left:-4px; bottom:42px; transform:rotate(-5deg); }.art-spark { position:absolute; color:#f37d42; font-size:1.4rem; }.spark-one { left:12px; top:36px; }.spark-two { right:23px; bottom:21px; color:#52adc1; }
.community-section { padding:65px 0 2px; scroll-margin-top:105px; }
.community-section h2 { margin-bottom:10px; color:#0b2a44; font-size:clamp(1.55rem,2.5vw,2.1rem); line-height:1.2; letter-spacing:-.04em; }
.community-section>p { max-width:800px; margin-bottom:17px; color:#4f6474; font-size:1rem; }
.community-channel-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:23px; }
.community-channel-grid a { display:flex; align-items:center; gap:10px; min-height:64px; padding:10px 13px; border:1px solid #dce5eb; border-radius:10px; background:#f9fbfc; color:#29495f; font-size:.87rem; font-weight:750; transition:border-color .2s,transform .2s; }
.community-channel-grid a:hover { border-color:#b5cfdf; transform:translateY(-2px); }.community-channel-grid a>span:nth-child(2) { flex:1; }.community-channel-grid a>span:last-child { color:#8aa4b5; }
.channel-icon { display:grid; place-items:center; width:34px; height:34px; flex:none; border-radius:8px; font-size:1.07rem; }.channel-blue { background:#e6f3fb; color:#2186bd; }.channel-orange { background:#fff0e7; color:#e86526; }.channel-green { background:#e8f8ee; color:#229b68; }
.community-inline-link { display:inline-block; color:#d95621; font-weight:850; text-decoration:underline!important; text-underline-offset:3px; }.community-inline-link:hover { color:#b83d0c; }
.community-event-panel { display:flex; justify-content:space-between; align-items:end; gap:28px; margin-top:21px; padding:30px; border-radius:13px; background:#102a3d; color:#fff; }
.community-event-panel h3 { margin:7px 0; font-size:1.24rem; letter-spacing:-.02em; }.community-event-panel p { margin:0; color:#bcd0dd; font-size:.91rem; }.event-eyebrow { color:#8fd7e1; font-size:.7rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.community-event-panel a { flex:none; display:inline-flex; align-items:center; gap:8px; padding:10px 15px; border-radius:8px; background:#ff6a2b; color:#162f40; font-size:.81rem; font-weight:850; }.community-event-panel a:hover { background:#ff8d5b; }
.community-template-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:23px 0 22px; }
.community-template-grid>div { min-height:143px; padding:19px; border:1px solid #e0e9ef; border-radius:12px; background:#f8fbfd; }.community-template-grid span { display:block; margin-bottom:19px; color:#e86628; font-size:1.35rem; }.community-template-grid strong,.community-template-grid small { display:block; }.community-template-grid strong { margin-bottom:3px; color:#193a50; font-size:.89rem; }.community-template-grid small { color:#7c91a0; font-size:.75rem; }
.community-section-last { padding-bottom:87px; }
@media(max-width:700px) { .community-wrap { width:min(100% - 32px,540px); }.community-intro { padding-top:52px; }.community-intro h1 { margin-bottom:28px; }.community-intro-grid { grid-template-columns:1fr; gap:9px; }.community-art { min-height:235px; order:-1; }.community-orbit { width:175px; height:175px; }.community-orbit::after { width:105px; height:105px; }.community-orbit img { width:62px; }.note-one { right:10px; top:20px; }.note-two { left:5px; bottom:17px; }.community-section { padding-top:54px; }.community-channel-grid { grid-template-columns:1fr; }.community-event-panel { display:block; }.community-event-panel a { margin-top:21px; }.community-template-grid { grid-template-columns:1fr; }.community-template-grid>div { min-height:105px; }.community-section-last { padding-bottom:68px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.community-channel-grid a { transition:none; } }
