:root{--primary-color: #115930;--secondary-color: #0fa8a1;--accent-color: #178D44;--link: #5a93a3;--text-color: #0b1e24;--text-muted: #4b5563;--bg: radial-gradient( 900px 600px at 15% 10%, rgba(43, 191, 106, .22), transparent 60% ), + radial-gradient( 800px 500px at 85% 0%, rgba(26, 161, 119, .2), transparent 60% ), + radial-gradient( 700px 550px at 50% 90%, rgba(14, 107, 59, .18), transparent 60% );--surface: #ffffff;--surface-2: #ffffff;--border: rgba(11, 30, 36, .12);--border-strong: rgba(11, 30, 36, .18);--shadow: 0 10px 28px rgba(0, 0, 0, .08);--radius: 16px;--container: 1200px;--pad: clamp(12px, 2vw, 24px);--fs-body: clamp(1rem, .25vw + .95rem, 1.1rem);--fs-small: clamp(.9rem, .2vw + .85rem, 1rem);--fs-3: clamp(1.15rem, .7vw + 1rem, 1.5rem);--fs-2: clamp(1.35rem, 1vw + 1.1rem, 1.9rem);--fs-1: clamp(1.7rem, 1.6vw + 1.3rem, 2.6rem);--fs-hero: clamp(1.7rem, 1.6vw + 1.3rem, 2.6rem)}@media (max-width: 640px){:root{--fs-body: clamp(.98rem, .35vw + .92rem, 1.05rem);--fs-3: clamp(1.08rem, .6vw + .98rem, 1.35rem);--fs-2: clamp(1.25rem, .9vw + 1.05rem, 1.65rem);--fs-1: clamp(1.45rem, 1.1vw + 1.2rem, 2.05rem);--fs-hero: clamp(1.35rem, 2.2vw + 1.1rem, 1.9rem)}}*,*:before,*:after{box-sizing:border-box;scroll-margin-top:80px}html,body,#root{height:100vh}html:focus-within{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text-color);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Nunito,Lato,Noto Sans,sans-serif;line-height:1.6;text-rendering:optimizeLegibility}.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:9999;padding:.6rem 1rem;background:var(--primary-color);color:#fff;font-weight:800;border-radius:0 0 8px;text-decoration:none}.skip-link:focus{position:fixed;top:0;left:0;width:auto;height:auto;overflow:visible}*:focus-visible{outline:3px solid var(--secondary-color);outline-offset:2px}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:clamp(12px,3vw,24px)}.site-header{background:#fff;border-bottom:1px solid var(--border)}.site-header .container{display:flex;align-items:center;justify-content:center;padding-block:12px;padding:30px}.logo{height:150px;width:auto}a{color:var(--link);font-weight:700;text-decoration:underline;text-underline-offset:3px;transition:color .16s ease,text-underline-offset .16s ease}a:hover{color:var(--accent-color);text-underline-offset:5px}.card,.panel,.section-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}h1,h2,h3,h4{color:var(--primary-color);font-weight:800;line-height:1.2;letter-spacing:.01em;text-shadow:none;margin:0 0 .6em;font-family:Lato,system-ui,sans-serif}h1{font-size:var(--fs-1)}h2{font-size:var(--fs-2)}h3{font-size:var(--fs-3)}p,li,dd,dt{font-size:var(--fs-body)}.app{min-height:120vh;display:grid;grid-template-rows:auto 1fr auto auto}.modalOverlay{position:fixed;inset:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000}.modalContent{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--surface);color:var(--text-color);border:1px solid var(--border);border-radius:var(--radius);width:min(560px,92vw);max-height:min(90vh,100dvh - 32px);box-shadow:var(--shadow);z-index:1001;display:grid;grid-template-rows:auto auto 1fr;padding:20px;gap:10px}.modalBody{overflow:auto;-webkit-overflow-scrolling:touch}.modalTitle{font-size:1.1rem;font-weight:800;margin:0 0 4px}.modalDescription{font-size:.95rem;color:var(--text-muted)}.modalFooter{margin-top:12px;display:flex;justify-content:flex-end;gap:8px}.modalClose{padding:8px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-color)}@media (max-width: 640px){.modalContent{top:0;left:0;transform:none;width:100vw;height:100dvh;max-height:100dvh;border-radius:0;padding-top:calc(16px + env(safe-area-inset-top));padding-right:calc(16px + env(safe-area-inset-right));padding-bottom:calc(16px + env(safe-area-inset-bottom));padding-left:calc(16px + env(safe-area-inset-left));grid-template-rows:auto auto 1fr;gap:12px}.modalTitle{font-size:1.05rem}}@supports (height: 100svh){@media (max-width: 640px){.modalContent{height:100svh;max-height:100svh}}}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@keyframes logoFadeIn{0%{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}._error_vyl82_1{margin:20vh auto;width:80%;color:#000;font-weight:400}
