@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,100%{transform:translate(0, 0) scale(1)}33%{transform:translate(12px, -18px) scale(1.05)}66%{transform:translate(-8px, 10px) scale(0.95)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.animate-in>*{animation:fadeUp .75s .35s cubic-bezier(0.4, 0, 0.2, 1) backwards}.animate-in>*:nth-child(1){animation-delay:.1s}.animate-in>*:nth-child(2){animation-delay:.17s}.animate-in>*:nth-child(3){animation-delay:.24s}.animate-in>*:nth-child(4){animation-delay:.31s}.animate-in>*:nth-child(5){animation-delay:.38s}@media(prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}html{scroll-behavior:auto}}*,*::before,*::after{box-sizing:border-box}html{font-size:18px;scroll-behavior:smooth;min-height:100%}body{margin:0;min-height:100vh;display:flex;flex-direction:column;font-family:"Source Sans 3",system-ui,-apple-system,sans-serif;color:#0f172a;line-height:1.65;background-color:#f0f4f8;background-image:radial-gradient(ellipse 80% 50% at 20% -10%, rgba(13, 148, 136, 0.12), transparent),radial-gradient(ellipse 60% 40% at 90% 10%, rgba(249, 115, 22, 0.08), transparent);background-attachment:fixed}h1,h2,h3,h4{font-family:"Fraunces",Georgia,"Times New Roman",serif;line-height:1.2;margin-top:0;font-weight:700;letter-spacing:-0.02em}h1{font-size:clamp(2rem,5vw,2.75rem)}h2{font-size:clamp(1.4rem,3vw,1.75rem);margin-bottom:.75rem}.section-title{display:block;width:100%}.section-title::after{content:"";display:block;width:3rem;height:4px;margin-top:.5rem;border-radius:2px;background:linear-gradient(90deg, #0d9488, #f97316)}h3{font-size:1.2rem}p{margin:0 0 1rem}a{color:#0d9488;text-decoration-thickness:1px;text-underline-offset:3px;transition:color .2s ease}a:hover{color:#0f766e}img{max-width:100%;height:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.site-header{background:hsla(0,0%,100%,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(203,213,225,.6);position:sticky;top:0;z-index:100;box-shadow:0 1px 0 hsla(0,0%,100%,.8) inset}.header-inner{max-width:1100px;margin:0 auto;padding:.85rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.site-logo{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:#0f172a;font-weight:700;font-size:1.15rem;font-family:"Fraunces",Georgia,"Times New Roman",serif;transition:transform .2s ease}.site-logo:hover{color:#0f172a;transform:translateY(-1px)}.site-logo img,.site-logo svg{width:42px;height:42px;flex-shrink:0;filter:drop-shadow(0 2px 8px rgba(13, 148, 136, 0.35))}.site-nav{display:flex;flex-wrap:wrap;gap:.25rem .5rem;list-style:none;margin:0;padding:0}.site-nav a{text-decoration:none;font-weight:600;font-size:.95rem;color:#475569;padding:.35rem .65rem;border-radius:999px;transition:color .2s ease,background .2s ease}.site-nav a:hover{color:#0d9488;background:rgba(13,148,136,.08)}.site-nav a.active{color:#fff;background:linear-gradient(135deg, #0d9488, #2563eb);box-shadow:0 2px 10px rgba(13,148,136,.35)}main{flex:1 1 auto;width:100%;display:flex;flex-direction:column}.container{max-width:1100px;margin:0 auto;padding:2rem 1.25rem 3rem}.container--narrow{max-width:720px}.page-header{padding:2.5rem 1.25rem 2rem;background:linear-gradient(135deg, rgba(13, 148, 136, 0.15) 0%, rgba(37, 99, 235, 0.1) 50%, rgba(249, 115, 22, 0.08) 100%);background-size:200% 200%;animation:gradientShift 12s ease infinite;border-bottom:1px solid #cbd5e1}.page-header h1{margin:0;max-width:20ch}.page-inner main{min-height:0}.page-content{flex:1 1 auto;padding-top:1.5rem;padding-bottom:3rem}.site-footer{background:linear-gradient(160deg, #0f172a 0%, #134e4a 55%, #1e3a5f 100%);color:#e2e8f0;padding:2.5rem 1.25rem;font-size:.9rem;margin-top:auto;flex-shrink:0}.site-footer a{color:#5eead4}.site-footer a:hover{color:#99f6e4}.site-footer .footer-inner{max-width:1100px;margin:0 auto}.site-footer p{margin-bottom:.5rem}.hero{position:relative;overflow:hidden;padding:4rem 1.25rem 4.5rem;border-bottom:none}.hero-bg{position:absolute;inset:0;pointer-events:none;background:linear-gradient(145deg, #ccfbf1 0%, #e0f2fe 35%, #fff7ed 70%, #f0f4f8 100%);background-size:200% 200%;animation:gradientShift 14s ease infinite}.hero-blob{position:absolute;border-radius:50%;filter:blur(50px);opacity:.55;animation:float 14s ease-in-out infinite}.hero-blob--1{width:280px;height:280px;background:rgba(13,148,136,.45);top:-80px;right:10%;animation-delay:0s}.hero-blob--2{width:220px;height:220px;background:rgba(249,115,22,.4);bottom:-40px;left:5%;animation-delay:-4s}.hero-blob--3{width:180px;height:180px;background:rgba(37,99,235,.35);top:40%;left:45%;animation-delay:-7s}.hero-inner{position:relative;z-index:1;max-width:1100px;margin:0 auto}.hero h1{max-width:16ch;margin-bottom:1rem;background:linear-gradient(135deg, #0f172a 0%, #0f766e 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0)}.hero .lead{font-size:1.2rem;color:#475569;max-width:50ch;margin-bottom:1.75rem}.section{padding:3rem 0}.section--alt{background:linear-gradient(180deg, rgba(255, 255, 255, 0.9) 0%, rgba(240, 244, 248, 0.5) 100%);border-top:1px solid rgba(203,213,225,.5);border-bottom:1px solid rgba(203,213,225,.5)}.section--topics{background:radial-gradient(ellipse at 50% 0%, rgba(13, 148, 136, 0.06), transparent 70%)}@media(max-width: 640px){.site-nav{width:100%}.hero{padding:2.5rem 1.25rem 3rem}}.btn{display:inline-block;padding:.7rem 1.35rem;border-radius:999px;font-weight:700;text-decoration:none;font-size:.95rem;border:2px solid rgba(0,0,0,0);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg, #0d9488 0%, #2563eb 100%);color:#fff !important;border-color:rgba(0,0,0,0);box-shadow:0 4px 16px rgba(13,148,136,.4)}.btn-primary:hover{box-shadow:0 8px 24px rgba(13,148,136,.45);color:#fff !important}.btn-secondary{background:#fff;color:#0d9488 !important;border-color:#0d9488;box-shadow:0 4px 24px rgba(15,23,42,.08)}.btn-secondary:hover{background:#ccfbf1;color:#0f766e !important}.btn-group{display:flex;flex-wrap:wrap;gap:.85rem}.card-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));gap:1.35rem;margin-top:1.5rem}.card{background:#fff;border:1px solid #cbd5e1;border-radius:20px;padding:1.5rem;box-shadow:0 4px 24px rgba(15,23,42,.08);transition:transform .35s cubic-bezier(0.4, 0, 0.2, 1),box-shadow .35s cubic-bezier(0.4, 0, 0.2, 1),border-color .2s ease}.card:hover{transform:translateY(-6px);box-shadow:0 12px 40px rgba(15,23,42,.14);border-color:rgba(13,148,136,.35)}.card h3{margin-bottom:.5rem}.card--topic{border-top:4px solid var(--card-accent, #0d9488);position:relative;overflow:hidden}.card--topic::before{content:"";position:absolute;top:0;right:0;width:100px;height:100px;background:var(--card-accent, #0d9488);opacity:.08;border-radius:0 0 0 100%}.card-icon{font-size:2rem;line-height:1;display:block;margin-bottom:.75rem}.card-link{font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:.25rem;margin-top:.5rem}.card-link span{transition:transform .2s ease}.card-link:hover span{transform:translateX(4px)}.card .meta{font-size:.85rem;color:#475569;margin-bottom:.75rem}.badge{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.35rem .75rem;border-radius:999px;background:linear-gradient(135deg, rgba(13, 148, 136, 0.2), rgba(37, 99, 235, 0.15));color:#0f766e;border:1px solid rgba(13,148,136,.25);margin-bottom:1rem}.badge--soon{background:linear-gradient(135deg, #fef3c7, #fde68a);color:#92400e;border-color:#fcd34d}.grade{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:8px;font-weight:800;font-size:1.25rem;line-height:1}.grade--pending{background:#f1f5f9;color:#475569;font-size:1rem;font-weight:600}.grade-a{background:#bbf7d0;color:#14532d}.grade-b{background:#a5f3fc;color:#164e63}.grade-c{background:#fde68a;color:#78350f}.grade-c-minus{background:#fed7aa;color:#7c2d12}.grade-f{background:#fecaca;color:#7f1d1d}table{width:100%;border-collapse:collapse;margin:1rem 0 1.5rem;font-size:.95rem;background:#fff;border:1px solid #cbd5e1;border-radius:12px;overflow:hidden;box-shadow:0 4px 24px rgba(15,23,42,.08)}th,td{padding:.85rem 1.1rem;text-align:left;border-bottom:1px solid #cbd5e1;vertical-align:top}th{background:linear-gradient(180deg, #f0fdfa, #e0f2fe);font-weight:700}tr:last-child td{border-bottom:none}tr:hover td{background:rgba(13,148,136,.04)}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.callout{background:linear-gradient(135deg, rgba(204, 251, 241, 0.8), rgba(224, 242, 254, 0.6));border-left:4px solid #0d9488;padding:1.15rem 1.35rem;margin:1.5rem 0;border-radius:0 12px 12px 0;box-shadow:0 4px 24px rgba(15,23,42,.08)}.partner-list{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill, minmax(260px, 1fr))}.partner-list li{background:#fff;border:1px solid #cbd5e1;border-radius:20px;padding:1.25rem 1.35rem;transition:transform .2s ease,box-shadow .2s ease}.partner-list li:hover{transform:translateY(-3px);box-shadow:0 4px 24px rgba(15,23,42,.08)}.partner-list .org-name{font-weight:700;margin:0 0 .25rem}.partner-list .org-note{margin:0;font-size:.9rem;color:#475569}.status-banner{text-align:center;padding:2rem 1.5rem;background:linear-gradient(135deg, #fff7ed, #fef3c7);border:2px dashed #fbbf24;border-radius:20px;margin:1.5rem 0;box-shadow:inset 0 0 0 1px rgba(251,191,36,.2)}.status-banner p{margin:0 auto;color:#78350f;max-width:40ch;font-weight:600}.contact-panel{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 4px 24px rgba(15,23,42,.08);border:1px solid #cbd5e1;margin-top:1rem}.contact-email{font-size:1.35rem;font-weight:700;margin:1rem 0 1.5rem}.contact-email a{text-decoration:none;color:#2563eb}.contact-email a:hover{text-decoration:underline}.contact-note{font-size:.9rem;color:#475569;margin-top:1.25rem}/*# sourceMappingURL=main.css.map */