:root{color:#1f2937;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f4f7fc;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}body{color:#1f2937;background:#f4f7fc;min-width:320px;margin:0}a{color:inherit;text-decoration:none}:root{--bg:#f4f7fc;--surface:#fff;--text:#132c57;--text-muted:#516a8f;--border:#d8e3f2;--brand:#1f4f97;--brand-dark:#183d75;--brand-light:#5ea0ea;--cta:#2ec4c7;--cta-dark:#1ea8ab}.site-shell{min-height:100vh;color:var(--text)}.utility-bar{color:#c8d9ee;background:#0f253f;border-bottom:1px solid #203955;font-size:.78rem}.utility-inner{justify-content:space-between;gap:.75rem;width:min(1180px,94vw);margin:0 auto;padding:.42rem 0;display:flex}.site-header{z-index:40;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1rem;width:min(1180px,94vw);margin:0 auto;padding:.85rem 0;display:flex}.brand-wrap{align-items:center;gap:.65rem;display:flex}.logo-mark{background:linear-gradient(140deg, var(--brand) 0%, #1a7bb4 100%);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-weight:800;display:inline-flex}.brand{color:var(--brand-dark);margin:0;font-size:.98rem;font-weight:700}.brand-subtitle{letter-spacing:.08em;text-transform:uppercase;color:#8ea4c4;margin:0;font-size:.74rem;font-weight:700}.mobile-nav-toggle{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:9px;padding:.45rem .68rem;font-weight:700;display:none}.main-nav{align-items:center;gap:.75rem;display:flex}.nav-list{gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.nav-link{color:#5e7598;border-radius:9px;padding:.5rem .75rem;font-size:.9rem;font-weight:600}.nav-link:hover,.nav-link.active{color:var(--brand-dark);background:#e9f1fc}.main-content{width:min(1180px,94vw);margin:0 auto;padding:1.7rem 0 2.6rem}.page-renderer{gap:1rem;display:grid}.cms-section{border:1px solid var(--border);background:var(--surface);border-radius:14px}.section-shell{padding:1.1rem}.cms-section h1,.cms-section h2,.cms-section h3,.cms-section p{margin:0}.hero-section{border-color:#2d5b96;min-height:330px;position:relative;overflow:hidden}.hero-image{background-position:50%;background-size:cover;position:absolute;inset:0}.hero-overlay{background:radial-gradient(circle at 100%,#5ea0ea61,#0000 48%),linear-gradient(130deg,#113e80eb,#1959aadb);position:absolute;inset:0}.hero-content{z-index:2;max-width:760px;padding:2.2rem;position:relative}.hero-content h2{color:#f3f8ff;max-width:14ch;font-size:clamp(2rem,5.5vw,4rem);line-height:1.05}.rich-content{color:inherit;margin-top:.85rem}.rich-content ul,.rich-content ol{margin:.5rem 0 0;padding-left:1.1rem}.rich-content p+p{margin-top:.45rem}.button-row{flex-wrap:wrap;gap:.65rem;margin-top:1.2rem;display:flex}.button{border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;padding:.64rem 1rem;font-size:.9rem;font-weight:700;display:inline-flex}.button.button-primary{color:var(--brand-dark);background:#fff}.button.button-primary:hover{background:#f3f8ff}.button.button-secondary{color:#fff;background:0 0;border-color:#ffffff94}.button.button-secondary:hover{background:#ffffff24}.section-image{object-fit:cover;border:1px solid var(--border);border-radius:10px;width:100%;max-height:360px;margin-top:.8rem}.contact-form-panel .section-shell{background:#fff}.contact-form{gap:.4rem;margin-top:.75rem;display:grid}.contact-form label{color:var(--text);margin-top:.5rem;font-size:.88rem;font-weight:700}.contact-form input,.contact-form textarea{width:100%;font:inherit;color:#132c57;background:#fff;border:1px solid #bfd1ea;border-radius:8px;padding:.6rem .68rem}.contact-form input:focus,.contact-form textarea:focus{border-color:#5d92d1;outline:none;box-shadow:0 0 0 3px #4884ca24}.contact-form textarea{resize:vertical;min-height:130px}.contact-form .button{background:var(--brand);color:#fff;margin-top:.8rem}.contact-form .button:hover{background:var(--brand-dark)}.site-footer{border-top:1px solid var(--border);background:#fff;margin-top:auto}.footer-inner{color:#6c82a2;width:min(1180px,94vw);margin:0 auto;padding:1rem 0;font-size:.84rem}.admin-page{gap:1rem;width:min(1180px,94vw);margin:1.6rem auto 2.4rem;display:grid}.admin-card{border:1px solid var(--border);background:#fff;border-radius:12px;padding:1rem}.admin-card h1,.admin-card h2{color:var(--brand-dark);margin:0}.admin-card p{color:#5a7193}.admin-header{border:1px solid var(--border);background:#fff;border-radius:12px;padding:1rem}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.admin-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.admin-grid label,.admin-row label{color:#35557d;gap:.3rem;font-size:.84rem;font-weight:700;display:grid}.admin-grid input,.admin-grid select,.admin-row input,.admin-row select,.admin-card textarea{width:100%;font:inherit;color:#14345e;background:#fff;border:1px solid #bfd1ea;border-radius:8px;padding:.55rem .62rem}.admin-grid .span-2{grid-column:span 2}.auth-badge{color:#2c4e78;background:#edf4ff;border:1px solid #c9daf0;border-radius:999px;align-items:center;padding:.3rem .62rem;font-size:.78rem;font-weight:700;display:inline-flex}.auth-error{color:#972e2e;background:#fff0f0;border:1px solid #e5b8b8;border-radius:8px;padding:.5rem}.editor-panel{gap:.9rem;margin-top:.9rem;display:grid}.rich-editor-toolbar{flex-wrap:wrap;align-items:center;gap:.42rem;display:flex}.toolbar-button{color:#224773;background:#fff;border:1px solid #b7cbeb;border-radius:8px;padding:.42rem .58rem;font-size:.8rem;font-weight:700}.toolbar-button:hover{background:#edf4ff}.toolbar-inline{color:#35557d;align-items:center;gap:.35rem;font-size:.8rem;font-weight:700;display:inline-flex}.toolbar-inline select,.toolbar-inline input{color:#224773;background:#fff;border:1px solid #b7cbeb;border-radius:8px;padding:.35rem .45rem}.rich-editor{color:#14345e;background:#fff;border:1px solid #bfd1ea;border-radius:10px;min-height:200px;padding:.7rem}.rich-editor:focus{border-color:#5d92d1;outline:none;box-shadow:0 0 0 3px #4884ca29}.admin-login-card{max-width:460px;margin:0 auto}.admin-login-tabs{background:#f2f7ff;border:1px solid #bfd1ea;border-radius:10px;margin:.8rem 0 .9rem;display:inline-flex;overflow:hidden}.admin-login-tab{color:#35557d;background:0 0;border:0;padding:.5rem .9rem;font-size:.83rem;font-weight:700}.admin-login-tab.active{color:#1e4f8a;background:#fff}.admin-login-form{gap:.7rem;margin-top:.7rem;display:grid}.admin-login-form label{color:#35557d;gap:.28rem;font-size:.83rem;font-weight:700;display:grid}.admin-login-form input{width:100%;font:inherit;color:#14345e;background:#fff;border:1px solid #bfd1ea;border-radius:8px;padding:.55rem .62rem}.admin-note{color:#3a5b84;background:#f8fbff;border:1px dashed #bfd1ea;border-radius:8px;padding:.65rem;font-size:.8rem}.inline-edit-hint{color:#6f85a4;font-size:.74rem}.inline-edit-actions{flex-wrap:wrap;gap:.55rem;margin-top:.7rem;display:flex}.inline-button{color:#224773;background:#fff;border:1px solid #b7cbeb;border-radius:8px;padding:.42rem .58rem;font-size:.8rem;font-weight:700}.inline-button:hover{background:#edf4ff}.inline-button.primary{background:var(--brand);color:#fff;border-color:var(--brand)}.inline-button.primary:hover{background:var(--brand-dark)}.inline-button.warn{color:#7d5b17;background:#fff9ec;border-color:#e0c688}.inline-button.warn:hover{background:#fef0cf}@media (width<=960px){.utility-bar{display:none}.mobile-nav-toggle{justify-content:center;align-items:center;display:inline-flex}.main-nav{border-bottom:1px solid var(--border);background:#fff;flex-direction:column;align-items:flex-start;padding:.65rem 4vw .85rem;display:none;position:absolute;top:calc(100% + 1px);left:0;right:0}.main-nav.open{display:flex}.nav-list{flex-direction:column;gap:.28rem;width:100%}.nav-link{width:100%;display:inline-flex}.hero-content{padding:1.2rem}.admin-grid,.admin-row{grid-template-columns:1fr}.admin-grid .span-2{grid-column:auto}}
