body{margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;background:#fff;color:#2a2a2a;line-height:1.6;overflow-x:hidden}.skip-link{position:absolute;top:-40px;left:0;background:var(--accent);color:#fff;padding:8px 16px;text-decoration:none;font-weight:600;z-index:100;border-radius:0 0 4px 0}.skip-link:focus{top:0;outline:2px solid var(--accent);outline-offset:2px}:root{--accent:#800020;--section-bg:transparent;--navbar-bg:hsla(0,0%,100%,.95);--navbar-link:#666;--navbar-link-active:#800020;--border:#e0e0e0;--footer-bg:#fff;--footer-color:#666}.site-container{width:100%;max-width:820px;margin:0 auto;padding:24px 18px 0;overflow-x:visible}nav{background:var(--navbar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:10}.navbar-inner,nav{width:100%;height:64px;display:flex;align-items:center}.navbar-inner{justify-content:space-between;max-width:820px;margin:0 auto;padding:0 18px}nav .nav-title{font-size:1rem;font-weight:600;color:#2a2a2a;letter-spacing:.02em;margin-right:3rem;text-decoration:none;transition:color .2s ease,opacity .2s ease;display:flex;align-items:center;gap:.75rem;flex-shrink:1}.nav-logo{flex-shrink:0;border-radius:4px}.nav-title-text{white-space:nowrap}nav .nav-title:focus,nav .nav-title:hover{color:var(--navbar-link-active);opacity:.9}nav .nav-title:focus{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}nav .nav-links{display:flex;gap:.2rem;align-items:center}nav .nav-links a{color:var(--navbar-link);padding:7px 17px;font-weight:500;font-family:inherit;font-size:.95rem;background:none;text-decoration:none;border:0;display:inline-block;border-radius:0;position:relative;transition:color .2s ease;white-space:nowrap}nav .nav-links a.active,nav .nav-links a[aria-current=page]{color:var(--navbar-link-active);font-weight:600}nav .nav-links a.active:after,nav .nav-links a[aria-current=page]:after{content:"";display:block;height:1px;margin-top:6px;width:60%;background:var(--accent);border-radius:0;margin-left:20%}nav .nav-links a:focus,nav .nav-links a:hover{color:var(--navbar-link-active)}nav .nav-links a:focus{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.hero{text-align:center;background:var(--section-bg);padding:80px 0 64px;margin-bottom:64px;margin-left:-18px;margin-right:-18px;overflow:visible;position:relative;width:calc(100% + 36px)}.hero h1{color:var(--accent);font-size:2.75rem;margin:0 0 32px;font-weight:600;letter-spacing:-.02em;line-height:1.2;text-transform:none;white-space:nowrap}.hero-image-container{margin:0 auto 32px;background:transparent;position:relative;left:50%;transform:translateX(-50%);width:130%;max-width:1800px}.about-page .hero-image-container{width:94%;max-width:1296px;margin-left:auto;margin-right:auto;left:auto;transform:none}.hero-image{width:100%;height:auto;border-radius:4px;display:block;background:transparent;mix-blend-mode:normal}.hero-image-container :global(img),.hero-image-container img{width:100%!important;height:auto!important;position:relative!important}.hero .tagline{color:#2a2a2a;font-size:1.15rem;margin:0 0 32px}.hero .mission,.hero .tagline{font-weight:400;letter-spacing:-.01em}.hero .mission{margin:0 0 12px;color:#4a4a4a;font-size:1rem;font-style:normal;line-height:1.6}.hero .mission:last-of-type{margin-bottom:0;color:#666;font-size:.95rem}main{min-height:60vh;background:transparent}.card,.section{margin-bottom:3rem}.card{background:transparent;border:none;box-shadow:none;padding:0}.card h2{color:var(--accent);font-size:1.25rem;margin:0 0 16px;font-weight:600;letter-spacing:-.01em}ul{padding-left:1.5rem;color:#4a4a4a;line-height:1.8}footer{background:var(--footer-bg);color:var(--footer-color);border-top:1px solid var(--border);padding:3rem 0 2rem;margin-top:5rem;font-size:.9rem;text-align:center}footer a{color:var(--accent);text-decoration:none;transition:opacity .2s ease,outline .2s ease}footer a:hover{opacity:.8;text-decoration:underline}footer a:focus{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}h1,h2,h3,h4,h5,h6{color:#2a2a2a;font-weight:600;letter-spacing:-.01em}p{color:#4a4a4a;line-height:1.7}a{color:var(--accent);text-decoration:none;transition:opacity .2s ease,outline .2s ease}a:hover{opacity:.8}a:focus:not(:focus-visible){outline:none}a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.contact-form{margin-top:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;color:#2a2a2a;font-size:.95rem;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group textarea{width:100%;padding:12px 16px;background:#f9f9f9;border:1px solid var(--border);border-radius:4px;color:#2a2a2a;font-family:inherit;font-size:1rem;transition:border-color .2s ease,background .2s ease;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent);background:#fff}.form-group input.error,.form-group input.error:focus,.form-group textarea.error,.form-group textarea.error:focus{border-color:#ff6b6b}.error-message{display:block;color:#ff6b6b;font-size:.85rem;margin-top:.5rem}.form-group textarea{resize:vertical;min-height:120px}.submit-button{background:var(--accent);color:#fff;border:none;padding:14px 32px;font-size:1rem;font-weight:600;border-radius:4px;cursor:pointer;transition:opacity .2s ease,transform .2s ease;font-family:inherit}.submit-button:hover{opacity:.9;transform:translateY(-1px)}.submit-button:active{transform:translateY(0)}.submit-button:focus{outline:2px solid var(--accent);outline-offset:2px}.form-success{margin-top:1.5rem;padding:1.5rem;background:rgba(128,0,32,.1);border:1px solid var(--accent);border-radius:4px;text-align:center}.form-success p{color:var(--accent);margin:0;font-weight:500}.form-error{margin-bottom:1.5rem;padding:1.5rem;background:hsla(0,100%,71%,.1);border:1px solid #ff6b6b;border-radius:4px;text-align:center}.form-error p{color:#ff6b6b;margin:0;font-weight:500}.submit-button:disabled{cursor:not-allowed}.submit-button:disabled,.submit-button:disabled:hover{opacity:.6;transform:none}.host-partners{flex-direction:row;justify-content:center;gap:3rem;margin-top:1.5rem;flex-wrap:nowrap}.host-partner,.host-partners{display:flex;align-items:center}.host-partner{text-align:center;flex-direction:column}.host-partner-logo{width:280px;height:175px;margin:0 auto 12px;background:transparent;border:none;border-radius:4px;display:flex;align-items:center;justify-content:center;padding:0}.host-partner-logo-image{max-width:100%;height:140px;width:auto;object-fit:contain;object-position:center;border-radius:4px}.host-partner-name{color:#4a4a4a;font-size:.95rem;font-weight:500}.expect-sections{margin-top:1.5rem}.expect-item{margin-bottom:2rem}.expect-item:last-child{margin-bottom:0}.expect-item h3{font-size:1.1rem;margin:0 0 .75rem;color:var(--accent);font-weight:600}.expect-item p{margin:0}.home-images-row{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1rem;gap:1rem;margin-top:2rem}.home-image{width:100%;height:auto;border-radius:4px;border:1px solid var(--border);transition:transform .2s ease,border-color .2s ease}.home-images-row :global(img),.home-images-row img{width:100%!important;height:auto!important;position:relative!important}.home-image:hover{transform:translateY(-2px);border-color:var(--accent)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:1.5rem;gap:1.5rem;margin-top:2rem}.gallery-swiper-container{margin-top:2rem;position:relative}.gallery-swiper{padding-bottom:3rem}.gallery-swiper :global(.swiper-slide){height:auto;display:flex}.gallery-swiper :global(.swiper-pagination){position:absolute;bottom:0;left:0;width:100%;text-align:center;color:#fff!important}.gallery-swiper :global(.swiper-pagination) *{color:#fff!important}.gallery-swiper :global(.swiper-pagination-fraction){font-size:.95rem;font-weight:500;bottom:.5rem;color:#fff!important;text-shadow:0 1px 3px rgba(0,0,0,.5);user-select:none!important;-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;-webkit-touch-callout:none!important;-webkit-tap-highlight-color:transparent!important}.gallery-swiper :global(.swiper-pagination-fraction *),.gallery-swiper :global(.swiper-pagination-fraction .swiper-pagination-current),.gallery-swiper :global(.swiper-pagination-fraction .swiper-pagination-total),.gallery-swiper :global(.swiper-pagination-fraction span){color:#fff!important;text-shadow:0 1px 3px rgba(0,0,0,.5);user-select:none!important;-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important}.gallery-swiper :global(.swiper-pagination-fraction .swiper-pagination-current),.gallery-swiper :global(.swiper-pagination-fraction .swiper-pagination-total){font-size:.95rem;font-weight:500}.gallery-swiper :global(.swiper-button-next),.gallery-swiper :global(.swiper-button-prev){color:var(--accent);width:44px;height:44px;margin-top:-22px}.gallery-swiper :global(.swiper-button-next:after),.gallery-swiper :global(.swiper-button-prev:after){font-size:24px;font-weight:700}.gallery-swiper :global(.swiper-button-next:hover),.gallery-swiper :global(.swiper-button-prev:hover){opacity:.8}.gallery-swiper :global(.swiper-button-disabled){opacity:.3;cursor:not-allowed}.gallery-item{position:relative;width:100%;aspect-ratio:3/2;overflow:hidden;border:1px solid var(--border);transition:transform .2s ease,border-color .2s ease,outline .2s ease;cursor:pointer;outline:none}.gallery-item:hover{transform:translateY(-4px);border-color:var(--accent)}.gallery-item:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.gallery-image{width:100%;height:100%;object-fit:cover;transition:opacity .2s ease}.gallery-item :global(img),.gallery-item img{width:100%!important;height:100%!important;object-fit:cover!important;position:relative!important}.gallery-item:hover .gallery-image{opacity:.9}.gallery-loading{text-align:center;padding:3rem 0;color:#666}.gallery-error{text-align:center;padding:2rem;background:hsla(0,100%,71%,.1);border:1px solid #ff6b6b;border-radius:4px;color:#ff6b6b}.gallery-error p{margin:.5rem 0;color:#ff6b6b}.retry-button{margin-top:1rem;padding:10px 24px;background:var(--accent);color:#fff;border:none;border-radius:4px;font-weight:600;cursor:pointer;font-family:inherit;transition:opacity .2s ease}.retry-button:hover{opacity:.9}.retry-button:focus{outline:2px solid var(--accent);outline-offset:2px}.lightbox-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:hsla(0,0%,100%,.98);z-index:1000;padding:2rem;cursor:pointer}.lightbox-content,.lightbox-overlay{display:flex;align-items:center;justify-content:center}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;cursor:default}.lightbox-image{display:block;max-width:100%;max-height:85vh;width:auto;height:auto;object-fit:contain;border-radius:4px}.lightbox-close{position:fixed;top:2rem;right:2rem;background:hsla(0,0%,100%,.95);border:2px solid var(--accent);color:var(--accent);width:48px;height:48px;border-radius:50%;font-size:2rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1001;transition:background .2s ease,transform .2s ease}.lightbox-close:hover{background:#fff;transform:scale(1.1)}.lightbox-close:focus{outline:2px solid var(--accent);outline-offset:2px}.lightbox-nav{position:fixed;top:50%;transform:translateY(-50%);background:hsla(0,0%,100%,.95);border:2px solid var(--accent);color:var(--accent);width:56px;height:56px;border-radius:50%;font-size:2rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1001;transition:background .2s ease,transform .2s ease}.lightbox-nav:hover{background:#fff;transform:translateY(-50%) scale(1.1)}.lightbox-nav:focus{outline:2px solid var(--accent);outline-offset:2px}.lightbox-prev{left:2rem}.lightbox-next{right:2rem}.lightbox-counter{position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);background:hsla(0,0%,100%,.95);color:var(--accent);padding:.5rem 1rem;border-radius:4px;font-size:.9rem;font-weight:500}@media (max-width:700px){.lightbox-nav{width:44px;height:44px;font-size:1.5rem}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}.lightbox-close{top:1rem;right:1rem;width:40px;height:40px;font-size:1.5rem}.lightbox-content{max-width:95vw;max-height:85vh}}@media (max-width:900px){nav .nav-title{margin-right:1.5rem}nav .nav-links a{padding:7px 12px;font-size:.9rem}}@media (max-width:700px){.navbar-inner,.site-container{padding-left:18px;padding-right:18px}.hero{padding:48px 18px 40px;margin-bottom:48px;margin-left:0;margin-right:0;width:100%}.hero h1,.hero-image-container{margin-bottom:24px}.hero h1{font-size:1.5rem;white-space:normal}.hero .tagline{font-size:1rem;margin-bottom:24px}.hero .mission{font-size:.9rem;margin-bottom:10px}.hero .mission:last-of-type{font-size:.85rem}.host-partners{flex-direction:column;gap:2rem}.host-partner-logo{width:250px;height:160px}.host-partner-logo-image{max-height:140px;max-height:220px}.home-images-row{grid-template-columns:repeat(2,1fr);gap:.75rem}nav{height:56px}.navbar-inner{height:56px;padding:0 12px}nav .nav-title{font-size:.875rem;margin-right:.5rem;gap:.5rem;flex:0 1 auto;min-width:0}.nav-title-text{display:none}.nav-logo{width:28px;height:28px}nav .nav-links{gap:0;flex-wrap:nowrap;overflow:visible}nav .nav-links a{font-size:.85rem;padding:6px 8px;white-space:nowrap}nav .nav-links a.active:after,nav .nav-links a[aria-current=page]:after{margin-top:4px;width:50%}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}}@media print{*{background:#fff!important;color:#000!important;box-shadow:none!important}body{background:#fff;color:#000;font-size:12pt;line-height:1.5}.gallery-item,.home-images-row,.skip-link,.submit-button,footer,nav{display:none!important}h1,h2,h3,h4,h5,h6{color:#000;page-break-after:avoid}a{color:#000;text-decoration:underline}a[href^=http]:after{content:" (" attr(href) ")";font-size:.9em}.site-container{max-width:100%;padding:0}.section{margin-bottom:1rem}.section,img{page-break-inside:avoid}img{max-width:100%!important}}