.section{padding:3rem 0;position:relative}.section--compact{padding:2rem 0}.section--spacious{padding:4rem 0}.section--border-bottom{border-bottom:none;position:relative}.section--border-bottom::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:60px;height:3px;background:linear-gradient(90deg,transparent,var(--brand-primary),transparent);border-radius:2px}.section--alt-bg{background:var(--bg-secondary);border-radius:0}.section--alt-bg::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--border-light),transparent)}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.row--padded{margin-bottom:2rem}.row--padded:last-child{margin-bottom:0}.section h2{margin-bottom:2rem;text-align:center;position:relative}.section h2::after{content:'';position:absolute;bottom:-.75rem;left:50%;transform:translateX(-50%);width:40px;height:2px;background:var(--brand-primary);border-radius:1px}.section h2.calendar-title::after{display:none}.card-deck{margin-bottom:0}@media(max-width:768px){.section{padding:2rem 0}.section--compact{padding:1.5rem 0}.section--spacious{padding:2.5rem 0}.container{padding:0 .75rem}.row--padded{margin-bottom:1.5rem}.section h2{margin-bottom:1.5rem}}@media(max-width:480px){.section{padding:1.5rem 0}.container{padding:0 .5rem}}.rad-showcase{padding:4rem 0}.section:not(.rad-showcase){padding:3rem 0}.section{transition:background-color .3s ease}.section-separator{height:1px;background:linear-gradient(90deg,transparent 0%,var(--border-light) 20%,var(--border-light) 80%,transparent 100% );margin:2rem 0;border:none}.section-separator--dots{height:1px;background:repeating-linear-gradient( 90deg,transparent,transparent 8px,var(--border-light) 8px,var(--border-light) 12px );margin:2rem 0;border:none}.section--hero{background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.section--accent{background:var(--bg-secondary)}.section--brand{background:var(--brand-primary-10)}@media(prefers-reduced-motion:reduce){.section{transition:none}}@media print{.section{padding:1rem 0;page-break-inside:avoid}.section--border-bottom::after{display:none}}