.video{position:relative;width:100%;max-width:800px;margin:0 auto;aspect-ratio:16 / 9;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border);background:var(--color-bg-sunken)}.video__iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video__player{width:100%;height:100%;object-fit:contain}.announcement-banner{background:var(--color-brand);color:#fff;overflow:hidden;animation:banner-slide-down .4s ease both}.announcement-banner__inner{max-width:var(--max-width);margin:0 auto;padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:center;gap:var(--space-4)}.announcement-banner__message{margin:0;font-family:Raleway,sans-serif;font-size:var(--font-size-sm);font-weight:600;letter-spacing:var(--letter-spacing-wide);text-align:center}.announcement-banner__link{color:#fff;text-decoration:underline;text-underline-offset:2px;font-weight:700;transition:opacity .2s ease}.announcement-banner__link:hover{opacity:.85}.announcement-banner__close{flex-shrink:0;background:none;border:none;color:#fff;font-size:1.35rem;line-height:1;cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:background .2s ease}.announcement-banner__close:hover{background:#fff3}@keyframes banner-slide-down{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:80px}}@media(prefers-reduced-motion:reduce){.announcement-banner{animation:none}}.hero{position:relative;min-height:450px;display:flex;align-items:center;justify-content:center;text-align:center;background:url(/images/hero-bg.avif) center / cover no-repeat;padding:var(--space-12) var(--space-4)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#00000059,#0000008c)}.hero__content{position:relative;z-index:1;max-width:720px;color:#fff}.hero__title{font-family:var(--font-family-heading);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:#fff;margin-bottom:var(--space-4);letter-spacing:var(--letter-spacing-tight);animation:fade-up .6s ease both}.hero__subtitle{font-size:var(--font-size-lg);color:#ffffffeb;line-height:var(--line-height-relaxed);animation:fade-up .6s ease .1s both}.hero__blurb{color:#ffffffd9;margin-top:var(--space-3);animation:fade-up .6s ease .2s both}.hero__btn{display:inline-flex;align-items:center;gap:var(--space-2);margin-top:var(--space-6);padding:var(--space-3) var(--space-8);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:#fff;background:var(--color-brand);border:2px solid rgba(255,255,255,.3);border-radius:var(--radius-md);text-decoration:none;animation:fade-up .6s ease .3s both;transition:background .3s ease,border-color .3s ease,transform .2s ease,box-shadow .3s ease}.hero__btn:hover{background:var(--color-brand-light);border-color:#ffffff80;color:#fff;text-decoration:none;transform:translateY(-2px);box-shadow:0 6px 24px #71984359}.poster{max-width:var(--max-width);margin:0 auto;padding:var(--space-10) var(--space-4)}.poster__inner{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);background:var(--color-bg-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);text-align:left;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.poster__inner:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-border-strong)}.poster__image{width:100%;max-width:420px;border-radius:var(--radius-md);transition:transform .3s ease}.poster__inner:hover .poster__image{transform:scale(1.02)}.poster__text h3{margin-bottom:var(--space-3)}.poster__text p{margin-bottom:var(--space-2)}@media(min-width:768px){.hero{min-height:520px}.hero__title{font-size:var(--font-size-4xl)}.poster__inner{flex-direction:row;align-items:center;padding:var(--space-8);gap:var(--space-8)}.poster__image{flex-shrink:0}}.polaroid{display:inline-block;background:var(--color-bg-raised);padding:8px 8px 28px;border:0;border-radius:2px;box-shadow:var(--shadow-md);transition:transform .25s ease,box-shadow .25s ease;text-align:center;text-decoration:none;font:inherit;color:var(--color-text);width:190px}.polaroid--clickable{cursor:pointer}.polaroid:hover{transform:scale(1.2) rotate(0)!important;box-shadow:var(--shadow-xl);z-index:5;position:relative}.polaroid__image{width:100%;height:170px;object-fit:cover;display:block}.polaroid__caption{margin-top:8px;font-family:Marker Felt,Reenie Beanie,cursive;font-size:.85rem;color:var(--color-text-secondary);line-height:1.3}.polaroids{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:var(--space-8);list-style:none;padding:var(--space-4) 0;max-width:calc(190px * 3 + var(--space-8) * 2);margin:0 auto}.polaroids .polaroid:nth-child(odd){transform:rotate(-2deg)}.polaroids .polaroid:nth-child(2n){transform:rotate(2deg)}.polaroids .polaroid:nth-child(3n){transform:rotate(0);position:relative;top:-5px}.polaroids .polaroid:nth-child(5n){transform:rotate(5deg)}.polaroids .polaroid:nth-child(7n){transform:rotate(-3deg)}.polaroids .polaroid:nth-child(4n){transform:rotate(-4deg);position:relative;top:3px}.modal-overlay{position:fixed;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:modal-fade-in .25s ease}.modal{position:relative;max-width:640px;width:100%;max-height:85vh;overflow-y:auto;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:var(--space-8);animation:modal-scale-in .25s ease}.modal__close{position:absolute;top:var(--space-3);right:var(--space-3);background:none;border:none;font-size:1.75rem;line-height:1;color:var(--color-text-muted);cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);transition:color .2s ease,background .2s ease}.modal__close:hover{color:var(--color-text);background:var(--color-bg-sunken)}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-scale-in{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.board-modal{max-width:560px}.board-modal__header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-3);margin-bottom:var(--space-6)}.board-modal__photo{width:100px;height:100px;object-fit:cover;border-radius:var(--radius-lg);border:2px solid var(--color-border);flex-shrink:0}.board-modal__name{margin:0;font-size:var(--font-size-xl)}.board-modal__role{margin:var(--space-1) 0 0;color:var(--color-brand);font-family:var(--font-family-heading, Raleway, sans-serif);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.board-modal__bio p{font-size:var(--font-size-base);line-height:1.7;margin-bottom:var(--space-4)}.board-modal__bio p:last-child{margin-bottom:0}.gallery-grid{margin-top:var(--space-6)}.gallery-card{overflow:hidden;padding:0;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.gallery-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-xl);border-color:var(--color-border-strong)}.gallery-card__image{width:100%;height:240px;object-fit:cover;transition:transform .3s ease}.gallery-card:hover .gallery-card__image{transform:scale(1.03)}.gallery-card .card__title,.gallery-card .card__meta{padding:0 var(--space-5)}.gallery-card .card__title{padding-top:var(--space-4)}.gallery-card .card__meta{padding-bottom:var(--space-5)}.docs-section{margin-top:var(--space-8);text-align:left}.docs-section__title{margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:2px solid var(--color-brand-lighter)}.doc-card{overflow:hidden;padding:0}.doc-card__image{width:100%;height:200px;object-fit:cover;transition:transform .3s ease}.doc-card:hover .doc-card__image{transform:scale(1.03)}.doc-card__body{padding:var(--space-4) var(--space-5) var(--space-5)}.doc-card__badge-row{margin-bottom:var(--space-2)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-raised);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.theme-toggle:hover{background:var(--color-bg-sunken);border-color:var(--color-border-strong)}.theme-toggle__icon{font-size:1.2rem;line-height:1;color:var(--color-text)}.header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--color-bg-raised) 80%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid color-mix(in srgb,var(--color-border) 60%,transparent)}.header__inner{max-width:var(--max-width);margin:0 auto;padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.brand{text-decoration:none;color:var(--color-text);display:inline-flex;flex-direction:column;line-height:1.1;gap:2px}.brand:hover{text-decoration:none;color:var(--color-text)}.brand__title{font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);font-size:1.1rem;letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.brand__subtitle{font-family:var(--font-family-body);font-size:var(--font-size-xs);color:var(--color-text-muted);letter-spacing:.3px}.nav{display:flex;align-items:center;gap:var(--space-2)}.nav-link{text-decoration:none;color:var(--color-text);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);transition:background .2s ease,color .2s ease,transform .2s ease}.nav-link:hover{background:var(--color-bg-sunken);text-decoration:none;color:var(--color-text);transform:translateY(-1px)}.nav-link--active{background:var(--color-brand-lighter);color:var(--color-brand-dark)}.nav-link--button{border:1px solid var(--color-border);background:var(--color-bg-raised)}.nav--desktop{display:none;white-space:nowrap}.header__mobile-controls{display:flex;align-items:center;gap:var(--space-2)}.menu-button{position:relative;display:inline-flex;flex-direction:column;gap:4px;border:1px solid var(--color-border);background:var(--color-bg-raised);border-radius:var(--radius-lg);padding:var(--space-3);cursor:pointer;transition:background var(--transition-fast)}.menu-button:hover{background:var(--color-bg-sunken)}.menu-button__bar{width:18px;height:2px;background:var(--color-text);display:block;border-radius:2px;transition:transform .16s ease,opacity .16s ease}.mobile-menu{position:relative;z-index:60;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-4);overflow:hidden;max-height:0;transition:max-height .18s ease}.mobile-menu--open{max-height:420px}.nav--mobile{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2);padding:var(--space-3) 0 var(--space-3) 0}.nav--mobile .nav-link{width:100%}.menu-button--open .menu-button__bar:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu-button--open .menu-button__bar:nth-child(2){opacity:0}.menu-button--open .menu-button__bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.overlay{position:fixed;inset:0;background:var(--color-bg-overlay);border:0;padding:0;cursor:default;z-index:40}@media(min-width:1024px){.nav--desktop{display:flex}.header__mobile-controls,.mobile-menu,.overlay{display:none}}.lightbox{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:#000000e0;cursor:zoom-out;animation:lightbox-fade-in .25s ease both}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.lightbox__image{max-width:90vw;max-height:85vh;border-radius:var(--radius-md);box-shadow:0 8px 40px #00000080;cursor:default;animation:lightbox-zoom-in .25s ease both}@keyframes lightbox-zoom-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.lightbox__close{position:absolute;top:var(--space-4);right:var(--space-6);background:none;border:none;color:#fff;font-size:2.5rem;cursor:pointer;line-height:1;opacity:.7;transition:opacity .2s ease}.lightbox__close:hover{opacity:1}.about-section{margin-top:var(--space-8)}.about-section h3{margin-bottom:var(--space-4)}.about-section p{font-size:var(--font-size-base);line-height:1.7;margin-bottom:var(--space-4)}.about-section ul{list-style-type:disc;list-style-position:outside;padding-left:1.3em;text-align:left;max-width:800px;margin:var(--space-4) auto}.about-section ul li{margin-bottom:12px;line-height:1.7;font-size:var(--font-size-base)}.about-section .caption{font-style:italic;color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-top:var(--space-2)}.about-section__flex{display:flex;flex-direction:column;gap:var(--space-6);align-items:flex-start}@media(min-width:768px){.about-section__flex{flex-direction:row;align-items:center;gap:var(--space-8)}.about-section__flex .about-image-card{flex-shrink:0;width:320px;margin:0}.about-section__text{flex:1;min-width:0;text-align:center}}.about-image-card{display:block;width:100%;font:inherit;color:inherit;background:var(--color-bg-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3);max-width:420px;margin:var(--space-6) auto;cursor:zoom-in;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.about-image-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-border-strong)}.about-image-card img{width:100%;border-radius:var(--radius-md);transition:transform .3s ease}.about-image-card:hover img{transform:scale(1.02)}.events-tabs{display:inline-flex;gap:var(--space-2);margin-top:var(--space-6);border-bottom:2px solid var(--color-border);display:flex;justify-content:center;border-bottom:none}.events-tab{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5) var(--space-3);background:none;border:none;font-family:inherit;font-size:var(--font-size-sm);font-weight:600;text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:var(--color-text-muted);cursor:pointer;border-bottom:2px solid transparent}.events-tab:hover{color:var(--color-text)}.events-tab--active{color:var(--color-brand);border-bottom-color:var(--color-brand)}.events-tab__count{font-size:.7rem;background:var(--color-brand-lighter);color:var(--color-brand);padding:1px 7px;border-radius:999px;font-weight:700}.events-tab--active .events-tab__count{background:var(--color-brand);color:#fff}.events-empty{text-align:center;color:var(--color-text-muted);font-style:italic;margin-top:var(--space-8)}.events-grid{margin-top:var(--space-6)}.event-card{overflow:hidden;padding:0;text-align:left}.event-card__image{width:100%;height:240px;object-fit:cover;transition:transform .3s ease}.event-card:hover .event-card__image{transform:scale(1.03)}.event-card__body{padding:var(--space-4) var(--space-5) var(--space-5)}.event__location{font-style:italic;color:var(--color-text-secondary);margin-bottom:var(--space-2)}.event__description{white-space:pre-wrap}.resource-section{margin-top:var(--space-8);text-align:left}.resource-section__title{margin-bottom:var(--space-2);padding-bottom:var(--space-2);border-bottom:2px solid var(--color-brand-lighter)}.resource-section__desc{color:var(--color-text-secondary);margin-bottom:var(--space-4)}.resource-grid{display:grid;gap:var(--space-4);grid-template-columns:1fr}@media(min-width:640px){.resource-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}.resource-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) var(--space-5);background:var(--color-bg-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-decoration:none;color:var(--color-text);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}a.resource-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-brand-light);text-decoration:none;color:var(--color-text)}.resource-card__title{font-family:var(--font-family);font-size:var(--font-size-base)}.resource-card__desc{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.resource-card__action{font-family:var(--font-family);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-brand);margin-top:auto}.resource-card__details{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.resource-card__note{font-style:italic;color:var(--color-text-muted);font-size:var(--font-size-xs)}.footer{border-top:1px solid var(--color-border);margin-top:var(--space-12);padding:var(--space-10) var(--space-4);background:var(--color-bg-sunken)}.footer__inner{max-width:var(--max-width);margin:0 auto}.footer__content{display:flex;flex-direction:column;align-items:center;gap:var(--space-8);text-align:center}.footer__info{max-width:480px}.footer__title{margin-top:0;margin-bottom:var(--space-3)}.footer__contact{margin-top:var(--space-4)}.footer__contact p{margin-bottom:var(--space-3)}.footer__badge{display:flex;align-items:center;justify-content:center}.footer__badge img{width:280px;height:auto}.footer__copyright{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center}@media(min-width:768px){.footer__content{flex-direction:row;align-items:center;justify-content:center;gap:var(--space-12);text-align:left}.footer__badge img{width:320px}}:root,[data-theme=light]{--color-brand: #719843;--color-brand-light: #8db35a;--color-brand-lighter: #e8f0da;--color-brand-dark: #5a7a35;--color-accent-warm: #c48b2c;--color-accent-rust: #b5654a;--color-accent-teal: #3d7d7c;--color-bg: #faf8f4;--color-bg-raised: #ffffff;--color-bg-sunken: #f0ede6;--color-bg-overlay: rgba(0, 0, 0, .06);--color-border: #ddd8cc;--color-border-strong: #c5bfb0;--color-text: #2a2622;--color-text-secondary: #635d54;--color-text-muted: #978f83;--color-text-inverse: #faf8f4;--color-link: #5a7a35;--color-link-hover: #719843;--color-success: #719843;--color-warning: #c48b2c;--color-error: #b5654a;--color-info: #3d7d7c;--shadow-sm: 0 1px 3px rgba(42, 38, 34, .06);--shadow-md: 0 2px 10px rgba(42, 38, 34, .08);--shadow-lg: 0 8px 24px rgba(42, 38, 34, .1);--shadow-xl: 0 12px 40px rgba(42, 38, 34, .12);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--font-family: "Raleway", sans-serif;--font-family-body: "Fraunces", serif;--font-family-heading: "Raleway", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.7;--letter-spacing-tight: -.01em;--letter-spacing-wide: .05em;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--max-width: 1100px}[data-theme=dark]{--color-brand: #8db35a;--color-brand-light: #a3c878;--color-brand-lighter: #2d3a1f;--color-brand-dark: #719843;--color-accent-warm: #daa54e;--color-accent-rust: #d4856c;--color-accent-teal: #5aadac;--color-bg: #1c1a17;--color-bg-raised: #28251f;--color-bg-sunken: #141210;--color-bg-overlay: rgba(0, 0, 0, .35);--color-border: #3d3830;--color-border-strong: #544d42;--color-text: #e8e4dc;--color-text-secondary: #ada69a;--color-text-muted: #706b60;--color-text-inverse: #1c1a17;--color-link: #a3c878;--color-link-hover: #8db35a;--color-success: #8db35a;--color-warning: #daa54e;--color-error: #d4856c;--color-info: #5aadac;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .25);--shadow-md: 0 2px 10px rgba(0, 0, 0, .35);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .4);--shadow-xl: 0 12px 40px rgba(0, 0, 0, .5)}*,*:before,*:after{box-sizing:border-box;margin:0}body,.header,.footer,.badge,.modal,.polaroid,.resource-card,.announcement-banner{transition:background-color var(--transition-normal),color var(--transition-normal),border-color var(--transition-normal)}html{font-family:var(--font-family);font-size:16px;line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-family-body);font-size:var(--font-size-base)}a{color:var(--color-link);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-link-hover);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--color-text)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}ul,ol{padding-left:1.3em;list-style-position:outside}ul{list-style-type:disc}li{margin-bottom:var(--space-3);line-height:var(--line-height-relaxed)}p{line-height:var(--line-height-relaxed)}::selection{background:var(--color-brand-lighter);color:var(--color-brand-dark)}@media(min-width:768px){h1{font-size:2.75rem}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}}.page-wrapper{max-width:var(--max-width);margin:0 auto;padding:var(--space-10) var(--space-4);text-align:center}.page-wrapper>h1{margin-block-start:0;margin-bottom:var(--space-2)}.page-wrapper>p:first-of-type{font-size:var(--font-size-lg);color:var(--color-text-secondary);max-width:720px;margin-left:auto;margin-right:auto}.page-wrapper>*+*{margin-top:var(--space-6)}@media(min-width:768px){.page-wrapper{padding:var(--space-12) var(--space-8)}}.section-divider{border:0;height:1px;background:var(--color-border);margin:var(--space-10) 0}#main{scroll-margin-top:var(--space-16);outline:none}:focus-visible{outline:3px solid var(--color-brand);outline-offset:2px;border-radius:var(--radius-sm)}.skip-link{position:absolute;left:var(--space-4);top:var(--space-4);z-index:100;padding:var(--space-3) var(--space-4);background:var(--color-bg-raised);color:var(--color-text);border:2px solid var(--color-brand);border-radius:var(--radius-md);font-family:var(--font-family);font-weight:var(--font-weight-semibold);transform:translateY(-200%);transition:transform var(--transition-fast)}.skip-link:focus{transform:translateY(0);text-decoration:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.card:hover,.btn:hover,.nav-link:hover{transform:none}}@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in-right{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.animate-fade-up{animation:fade-up .5s ease both}.animate-fade-in{animation:fade-in .5s ease both}.animate-slide-in-right{animation:slide-in-right .5s ease both}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.reveal--visible{opacity:1;transform:translateY(0)}.card{background:var(--color-bg-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);text-align:left;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background-color var(--transition-normal),color var(--transition-normal)}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-border-strong)}.card__title{margin-top:0;margin-bottom:var(--space-2)}.card__meta{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-3)}.card__body{color:var(--color-text)}.card__body p{margin-bottom:var(--space-2)}.card__image{width:100%;max-height:260px;object-fit:cover;border-radius:var(--radius-md);margin-bottom:var(--space-4)}.card__actions{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-4)}.grid{display:grid;gap:var(--space-6);grid-template-columns:1fr}@media(min-width:640px){.grid--2{grid-template-columns:repeat(2,1fr)}.grid--auto{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media(min-width:1024px){.grid--3{grid-template-columns:repeat(3,1fr)}}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;border-radius:var(--radius-md);text-decoration:none;cursor:pointer;border:1.5px solid var(--color-border);background:var(--color-bg-raised);color:var(--color-text);transition:background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease,color var(--transition-normal)}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);border-color:var(--color-border-strong);text-decoration:none;color:var(--color-text)}.btn:active{transform:translateY(0);box-shadow:none}.btn--primary{background:var(--color-brand);color:var(--color-text-inverse);border-color:var(--color-brand)}.btn--primary:hover{background:var(--color-brand-light);border-color:var(--color-brand-light);color:var(--color-text-inverse)}.input{padding:var(--space-3) var(--space-4);font-family:var(--font-family-body);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-bg-raised);border:1.5px solid var(--color-border);border-radius:var(--radius-md);transition:border-color .2s ease,box-shadow .2s ease,background-color var(--transition-normal),color var(--transition-normal)}.input:focus,.input:focus-visible{outline:none;border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-lighter)}.input::placeholder{color:var(--color-text-muted)}.badge{display:inline-block;padding:var(--space-1) var(--space-3);font-family:var(--font-family);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;border-radius:var(--radius-full);background:var(--color-brand-lighter);color:var(--color-brand-dark)}.filter-bar{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-6);justify-content:center}
