/* Mission Assurance Group — site styles */

@font-face {
  font-family: "Fraunces";
  src: url("/assets/fonts/fraunces.woff2") format("woff2-variations"), url("/assets/fonts/fraunces.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face { font-family: "Public Sans"; src: url("/assets/fonts/public-sans-400.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Public Sans"; src: url("/assets/fonts/public-sans-500.woff2") format("woff2"); font-weight: 500; font-display: swap; }
@font-face { font-family: "Public Sans"; src: url("/assets/fonts/public-sans-600.woff2") format("woff2"); font-weight: 600; font-display: swap; }

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body { margin: 0; background: #F8F5EF; color: #1C2A4E; }
img { max-width: 100%; height: auto; }

/* Zero-specificity defaults so each element's own colors win */
:where(a) { color: #1C2A4E; }
:where(a:hover) { color: #2E7D6E; }
:where(summary) { cursor: pointer; }
:focus-visible { outline: 3px solid #2E7D6E; outline-offset: 3px; border-radius: 4px; }

.skip-link {
  position: absolute; left: 16px; top: -60px; z-index: 10;
  background: #1C2A4E; color: #FFFFFF; padding: 10px 16px; border-radius: 8px;
  font-family: "Public Sans", system-ui, sans-serif; font-weight: 600;
}
.skip-link:focus { top: 16px; color: #FFFFFF; }

/* Text pages (privacy, 404) */
.prose { max-width: 760px; margin: 0 auto; padding: 72px 24px 96px; }
.prose h1 { font-family: "Fraunces", Georgia, serif; font-weight: 500; font-size: clamp(36px, 5vw, 52px); line-height: 1.1; margin: 0 0 16px; }
.prose h2 { font-family: "Fraunces", Georgia, serif; font-weight: 500; font-size: 26px; margin: 40px 0 12px; }
.prose p, .prose li { color: #46506A; }
.prose p { margin: 0 0 14px; }
.prose ul { padding-left: 20px; }
.prose a { font-weight: 600; }

/* Generated from the design canvas: one class per inline style */
.s903167{background: #F8F5EF; color: #1C2A4E; font-family: 'Public Sans', system-ui, sans-serif; font-size: 17px; line-height: 1.6}
.s70a2a8{background: #1C2A4E; color: #FFFFFF; font-size: 14px}
.s277438{max-width: 1180px; margin: 0 auto; padding: 8px 24px; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px 24px}
.s637bc9{color: #FFFFFF; font-weight: 600}
.s711ebe{border-bottom: 1px solid #E6E0D4; background: #F8F5EF}
.sd005ef{max-width: 1180px; margin: 0 auto; padding: 18px 24px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px}
.s3ecb8f{display: flex; align-items: center; gap: 12px; text-decoration: none; color: #1C2A4E}
.s83b4af{font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 19px}
.sf33caa{display: flex; flex-wrap: wrap; align-items: center; gap: 8px 26px; font-size: 15px; font-weight: 500}
.s190f09{text-decoration: none}
.s4c1677{text-decoration: none; background: #2E7D6E; color: #FFFFFF; padding: 11px 20px; border-radius: 999px; min-height: 44px; box-sizing: border-box; display: inline-flex; align-items: center}
.sd80b8f{max-width: 1180px; margin: 0 auto; padding: 88px 24px 96px; display: flex; flex-wrap: wrap; align-items: center; gap: 56px}
.s32b32d{flex: 1 1 520px; min-width: 0}
.sda983d{margin: 0 0 20px; font-size: 14px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #2E7D6E}
.sd81a08{margin: 0 0 24px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: clamp(40px, 5.2vw, 68px); line-height: 1.05; letter-spacing: -0.02em}
.seec3b9{margin: 0 0 36px; font-size: 20px; line-height: 1.55; color: #46506A; max-width: 560px}
.s2c086e{display: flex; flex-wrap: wrap; gap: 14px}
.s9ef851{text-decoration: none; background: #2E7D6E; color: #FFFFFF; font-weight: 600; padding: 15px 28px; border-radius: 999px; min-height: 44px; box-sizing: border-box; display: inline-flex; align-items: center}
.s759ed8{text-decoration: none; color: #1C2A4E; font-weight: 600; padding: 15px 28px; border-radius: 999px; border: 1.5px solid #1C2A4E; min-height: 44px; box-sizing: border-box; display: inline-flex; align-items: center}
.sc7e103{flex: 1 1 380px; min-width: 0}
.sb8506a{aspect-ratio: 4 / 5; border-radius: 24px; background: #1C2A4E; overflow: hidden}
.sbc11aa{display: block; width: 100%; height: 100%}
.s694427{background: #FFFFFF; border-top: 1px solid #E6E0D4; border-bottom: 1px solid #E6E0D4}
.s5b25fd{max-width: 1180px; margin: 0 auto; padding: 88px 24px}
.sb017d5{margin: 0 0 12px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 40px; line-height: 1.15}
.sdb505c{margin: 0 0 44px; color: #46506A; max-width: 640px}
.s92759b{display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 24px}
.s542c72{background: #F8F5EF; border-radius: 20px; padding: 32px}
.s48f16a{margin: 0 0 12px; font-family: 'Fraunces', Georgia, serif; font-size: 22px; line-height: 1.3}
.sa2c64f{margin: 0; color: #46506A; font-size: 16px}
.sf3d36f{max-width: 1180px; margin: 0 auto; padding: 96px 24px}
.sdc6cf0{display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px; margin-bottom: 44px}
.sb44302{margin: 0 0 12px; font-size: 14px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #2E7D6E}
.s277e1e{margin: 0; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 40px; line-height: 1.15; max-width: 640px}
.s21a1be{font-weight: 600}
.s68c883{display: grid; grid-template-columns: repeat(auto-fit, minmax(330px, 1fr)); gap: 24px}
.sb19a9a{display: block; text-decoration: none; color: #1C2A4E; background: #1C2A4E; border-radius: 20px; padding: 36px}
.s7aa647{margin: 0 0 8px; font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #8FD3C3}
.scffe40{margin: 0 0 10px; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 26px; color: #FFFFFF}
.sedccb8{margin: 0 0 18px; color: #D5DBE8; font-size: 16px}
.s07f342{margin: 0; color: #FFFFFF; font-weight: 600; font-size: 15px}
.s77b9d3{display: block; text-decoration: none; color: #1C2A4E; background: #FFFFFF; border: 1px solid #E6E0D4; border-radius: 20px; padding: 36px}
.s6905ab{margin: 0 0 8px; font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #2E7D6E}
.sa2ff67{margin: 0 0 10px; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 26px}
.s990e82{margin: 0 0 18px; color: #46506A; font-size: 16px}
.s8e681f{margin: 0; font-weight: 600; font-size: 15px}
.sf0283f{display: flex; flex-direction: column; justify-content: center; text-decoration: none; color: #1C2A4E; background: #E4EEE9; border: 1.5px dashed #5DB3A0; border-radius: 20px; padding: 36px}
.s51ae4d{margin: 0; font-weight: 600; font-size: 15px; color: #2E7D6E}
.s774229{background: #EFE9DD}
.sbc3e2f{margin: 0 0 48px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 40px; line-height: 1.15; max-width: 720px}
.s565b17{display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 36px}
.s4225de{margin: 0 0 8px; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 22px}
.s114d71{margin: 0 0 40px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 40px; line-height: 1.15}
.s6b5e12{display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px}
.s21ef18{background: #FFFFFF; border: 1px solid #E6E0D4; border-radius: 16px; padding: 24px}
.s37853a{margin: 0 0 6px; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 20px}
.s8b09d9{margin: 0; color: #46506A; font-size: 15px}
.saf5c04{background: #1C2A4E; color: #FFFFFF}
.s7f95ec{max-width: 1180px; margin: 0 auto; padding: 88px 24px; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 32px}
.sc4615e{margin: 0; color: #D5DBE8; font-size: 18px}
.sf067db{text-decoration: none; background: #8FD3C3; color: #1C2A4E; font-weight: 600; padding: 15px 28px; border-radius: 999px; min-height: 44px; box-sizing: border-box; display: inline-flex; align-items: center}
.s412982{display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px; margin-bottom: 40px}
.sae7e04{margin: 0; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 40px; line-height: 1.15}
.sc23741{display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px}
.sdf5d55{background: #FFFFFF; border: 1px solid #E6E0D4; border-radius: 20px; overflow: hidden}
.s7d4f34{aspect-ratio: 16 / 9; background: #E9E2D3}
.sac532f{padding: 24px}
.sf0e511{margin: 0 0 8px; font-size: 13px; font-weight: 600; color: #2E7D6E; text-transform: uppercase; letter-spacing: 0.06em}
.s0b02d6{margin: 0; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 21px; line-height: 1.3}
.s31035f{background: #FFFFFF; border-top: 1px solid #E6E0D4}
.s505aa3{max-width: 1180px; margin: 0 auto; padding: 96px 24px; display: flex; flex-wrap: wrap; align-items: center; gap: 56px}
.seb4f2b{flex: 1 1 280px; min-width: 0}
.sb9a442{aspect-ratio: 1 / 1; border-radius: 24px; background: #E9E2D3; display: flex; align-items: center; justify-content: center; color: #6B6455; font-size: 15px}
.saafc75{margin: 0 0 20px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 40px; line-height: 1.15}
.se99ee5{margin: 0 0 16px; color: #46506A}
.sd5b582{margin: 0 0 24px; color: #46506A}
.s13270b{max-width: 860px; margin: 0 auto; padding: 104px 24px; text-align: center}
.s509719{margin: 0 0 16px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: clamp(34px, 4vw, 48px); line-height: 1.1}
.s37f951{margin: 0 0 36px; color: #D5DBE8; font-size: 19px}
.s915251{text-decoration: none; background: #8FD3C3; color: #1C2A4E; font-weight: 600; padding: 16px 32px; border-radius: 999px; min-height: 44px; box-sizing: border-box; display: inline-flex; align-items: center}
.s939659{background: #F8F5EF}
.s381f8d{max-width: 1180px; margin: 0 auto; padding: 56px 24px 32px; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 32px; font-size: 15px}
.s14383d{margin: 0 0 8px; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 18px}
.s056214{margin: 0; color: #46506A}
.sd08feb{display: flex; flex-direction: column; gap: 6px}
.s69649c{margin: 0 0 4px; font-weight: 600}
.sea3188{max-width: 1180px; margin: 0 auto; padding: 0 24px 40px; font-size: 14px; color: #46506A}
.s843aba{max-width: 1180px; margin: 0 auto; padding: 8px 24px; display: flex; justify-content: flex-end}
.sefbc5d{border-bottom: 1px solid #E6E0D4}
.sb310c3{text-decoration: underline; text-underline-offset: 6px; color: #2E7D6E}
.s8fc558{max-width: 1180px; margin: 0 auto; padding: 80px 24px 64px}
.sfe116b{margin: 0 0 16px; font-size: 14px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #2E7D6E}
.sf7dc24{margin: 0 0 20px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: clamp(38px, 4.6vw, 60px); line-height: 1.08; letter-spacing: -0.02em; max-width: 820px}
.safd184{margin: 0; font-size: 20px; color: #46506A; max-width: 680px}
.seb736b{max-width: 1180px; margin: 0 auto; padding: 0 24px 80px}
.sa35abf{list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px}
.s880e2f{margin: 0 0 4px; font-weight: 600; color: #2E7D6E; font-size: 14px}
.s549a4e{margin: 0; font-family: 'Fraunces', Georgia, serif; font-size: 20px}
.sc34c00{background: #1C2A4E; color: #FFFFFF; border-radius: 16px; padding: 24px}
.s8e04a8{margin: 0 0 4px; font-weight: 600; color: #8FD3C3; font-size: 14px}
.sd29751{display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 24px}
.s3a8a66{background: #F8F5EF; border-radius: 20px; padding: 36px}
.sb82f14{margin: 0 0 6px; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 24px}
.sdb85cf{margin: 0 0 16px; font-family: 'Fraunces', Georgia, serif; font-size: 19px; color: #2E7D6E}
.s1c211b{max-width: 1180px; margin: 0 auto; padding: 96px 24px; display: flex; flex-direction: column; gap: 24px}
.s741095{margin: 0 0 16px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 40px; line-height: 1.15}
.sa74e0f{background: #1C2A4E; color: #FFFFFF; border-radius: 20px; padding: 40px; display: flex; flex-wrap: wrap; gap: 32px}
.s76cad0{flex: 1 1 420px; min-width: 0}
.s18e67f{margin: 0 0 12px; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 30px}
.s62d0bb{margin: 0 0 20px; color: #D5DBE8}
.s4f90ab{flex: 1 1 300px; min-width: 0; margin: 0; padding-left: 20px; color: #D5DBE8; font-size: 16px; display: flex; flex-direction: column; gap: 6px}
.s710055{background: #FFFFFF; border: 1px solid #E6E0D4; border-radius: 20px; padding: 40px; display: flex; flex-wrap: wrap; gap: 32px}
.sf309e4{margin: 0 0 20px; color: #46506A}
.s447b0e{flex: 1 1 300px; min-width: 0; margin: 0; padding-left: 20px; color: #46506A; font-size: 16px; display: flex; flex-direction: column; gap: 6px}
.s31ee06{display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px}
.s1375d8{background: #EFE9DD; border-radius: 999px; padding: 4px 12px; font-size: 14px; font-weight: 500}
.s3d4750{max-width: 860px; margin: 0 auto; padding: 96px 24px; text-align: center}
.sa5b43a{margin: 0 0 16px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: clamp(32px, 4vw, 44px); line-height: 1.1}
.s763d4d{margin: 0 0 32px; color: #D5DBE8; font-size: 19px}
.s0b64a2{max-width: 1180px; margin: 0 auto; padding: 40px 24px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px; font-size: 14px; color: #46506A}
.s5edc67{display: flex; flex-wrap: wrap; gap: 8px 24px}
.sb9dc65{max-width: 1180px; margin: 0 auto; padding: 56px 24px 88px}
.saca3b5{font-size: 14px; color: #46506A; margin-bottom: 32px}
.sc3f4ec{display: flex; flex-wrap: wrap; gap: 56px; align-items: center}
.se8db70{flex: 1 1 560px; min-width: 0}
.sba1766{margin: 0 0 20px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: clamp(38px, 4.6vw, 60px); line-height: 1.08; letter-spacing: -0.02em}
.s1bb637{margin: 0 0 32px; font-size: 20px; color: #46506A; max-width: 600px}
.s3bfff0{flex: 1 1 340px; min-width: 0; background: #FFFFFF; border: 1px solid #E6E0D4; border-radius: 20px; padding: 32px}
.sd3b8b6{margin: 0 0 16px; font-weight: 600}
.se9d3e5{margin: 0; padding-left: 20px; color: #46506A; font-size: 16px; display: flex; flex-direction: column; gap: 10px}
.s9b997e{display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 32px 40px}
.sf4db65{margin: 0 0 6px; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 21px}
.s43c693{margin: 48px 0 0; padding-top: 24px; border-top: 1px solid #E6E0D4; color: #46506A; font-size: 16px}
.s9a5dd9{margin: 0 0 40px; color: #46506A; max-width: 640px}
.sf15ba8{list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 24px}
.sabfcc8{background: #FFFFFF; border: 1px solid #E6E0D4; border-radius: 20px; padding: 32px}
.s433943{margin: 0 0 6px; font-weight: 600; color: #2E7D6E; font-size: 14px}
.sb07048{max-width: 860px; margin: 0 auto; padding: 96px 24px}
.s1644bc{margin: 0 0 32px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 40px; line-height: 1.15}
.sa4aea4{display: flex; flex-direction: column; gap: 12px}
.scb15c6{background: #FFFFFF; border: 1px solid #E6E0D4; border-radius: 16px; padding: 20px 24px}
.s93be6f{margin: 12px 0 0; color: #46506A}
.s0e959a{max-width: 1180px; margin: 0 auto; padding: 0 24px 96px}
.s15895b{display: flex; flex-wrap: wrap; gap: 12px}
.saa5778{text-decoration: none; background: #FFFFFF; border: 1px solid #E6E0D4; border-radius: 999px; padding: 10px 18px; font-weight: 500}
.s027ee4{list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 24px}
.sfa0bfc{background: #FFFFFF; border: 1px solid #E6E0D4; border-radius: 20px; padding: 28px}
.s640032{max-width: 860px; margin: 0 auto; padding: 0 24px 96px}
.s85dd8e{margin: 0 0 40px; color: #46506A; max-width: 680px}
.s8c3b9d{display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px}
.s240bfb{background: #F8F5EF; border-radius: 16px; padding: 24px}
.s2e0f03{margin: 0 0 4px; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 21px}
.sbeddc5{background: #FFFFFF; border-radius: 20px; padding: 28px}
.s9a2958{max-width: 1180px; margin: 0 auto; padding: 80px 24px 56px}
.sd83a3c{margin: 0; font-size: 20px; color: #46506A; max-width: 700px}
.s41faf9{max-width: 1180px; margin: 0 auto; padding: 0 24px 72px}
.s59badd{background: #E4EEE9; border-radius: 20px; padding: 28px 32px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px}
.sbcdfb5{margin: 0 0 4px; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 22px}
.sfd37fb{margin: 0; font-size: 15px; color: #2E7D6E; font-weight: 600}
.s5b8f62{background: #F8F5EF; border-radius: 20px; padding: 36px; display: flex; flex-direction: column; gap: 16px}
.s749cc7{margin: 0 0 4px; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 24px}
.s2ed5e1{margin: 0; font-family: 'Fraunces', Georgia, serif; font-size: 40px; line-height: 1}
.s5e20fa{font-family: 'Public Sans', sans-serif; font-size: 16px; color: #46506A}
.s606aad{margin: 0; padding-left: 20px; color: #46506A; font-size: 16px; display: flex; flex-direction: column; gap: 6px}
.se05049{background: #1C2A4E; color: #FFFFFF; border-radius: 20px; padding: 36px; display: flex; flex-direction: column; gap: 16px}
.s0053dc{margin: 0 0 10px; display: inline-block; background: #8FD3C3; color: #1C2A4E; border-radius: 999px; padding: 2px 12px; font-size: 13px; font-weight: 600}
.s78e0fd{margin: 0; color: #D5DBE8; font-size: 15px}
.sea9a4a{font-family: 'Public Sans', sans-serif; font-size: 16px; color: #D5DBE8}
.s2b3252{margin: 0; padding-left: 20px; color: #D5DBE8; font-size: 16px; display: flex; flex-direction: column; gap: 6px}
.s5a0169{margin: 24px 0 0; font-size: 15px}
.sc04c2f{background: #FFFFFF; border: 1px solid #E6E0D4; border-radius: 20px; padding: 36px}
.sce000f{margin: 0 0 8px; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 24px}
.s7b3e61{margin: 0 0 20px; color: #46506A; font-size: 16px}
.s2902f8{display: flex; flex-direction: column; gap: 10px; font-size: 16px}
.s83fc1e{display: flex; justify-content: space-between; gap: 16px; border-top: 1px solid #E6E0D4; padding-top: 10px}
.s1cd2ee{white-space: nowrap}
.s8ee5b3{margin: 16px 0 0; color: #46506A; font-size: 14px}
.s12edfa{background: #FFFFFF; border-radius: 20px; padding: 12px 36px}
.s3e1aca{display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; padding: 20px 0; border-bottom: 1px solid #E6E0D4}
.sc147a4{margin: 0; font-weight: 600}
.se194ef{font-family: 'Fraunces', Georgia, serif; font-size: 22px}
.s1651ff{display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; padding: 20px 0}
.s0c8a50{max-width: 1180px; margin: 0 auto; padding: 80px 24px 96px; display: flex; flex-wrap: wrap; gap: 56px; align-items: center}
.sa524ff{margin: 0 0 24px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: clamp(38px, 4.6vw, 60px); line-height: 1.08; letter-spacing: -0.02em}
.sc6f807{margin: 0; font-size: 20px; color: #46506A}
.saab7eb{flex: 1 1 360px; min-width: 0}
.sba3efd{aspect-ratio: 4 / 5; border-radius: 24px; background: #E9E2D3; display: flex; align-items: center; justify-content: center; color: #6B6455; font-size: 15px}
.sd9423a{max-width: 760px; margin: 0 auto; padding: 96px 24px}
.s3f7f84{margin: 0 0 24px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 40px; line-height: 1.15}
.s748984{margin: 0 0 18px; color: #46506A}
.s906d16{margin: 0 0 48px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 40px; line-height: 1.15}
.sf82eed{max-width: 1180px; margin: 0 auto; padding: 88px 24px; display: flex; flex-wrap: wrap; gap: 48px}
.s3ca6a7{flex: 1 1 340px; min-width: 0}
.sf94992{margin: 0 0 16px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 32px; line-height: 1.2}
.sa274ed{margin: 0; padding-left: 20px; color: #46506A; font-size: 16px; display: flex; flex-direction: column; gap: 8px}
.s31bb07{display: flex; flex-direction: column; gap: 8px; font-size: 16px}
.sc39afe{background: #1C2A4E; color: #FFFFFF; border-radius: 24px; padding: 40px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 32px}
.s811716{margin: 0 0 10px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 32px; line-height: 1.2}
.s892c46{margin: 0; color: #D5DBE8; font-size: 17px}
.s6b64b1{display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 32px}
.s83ba8f{font: inherit; font-size: 15px; font-weight: 600; background: #1C2A4E; color: #FFFFFF; border: 0; border-radius: 999px; padding: 10px 18px; min-height: 44px}
.s34ff12{font: inherit; font-size: 15px; font-weight: 500; background: #FFFFFF; color: #1C2A4E; border: 1px solid #E6E0D4; border-radius: 999px; padding: 10px 18px; min-height: 44px}
.s2c7021{display: block; text-decoration: none; color: #1C2A4E; background: #FFFFFF; border: 1px solid #E6E0D4; border-radius: 20px; padding: 32px}
.s6affad{margin: 0 0 10px; font-size: 13px; font-weight: 600; color: #2E7D6E; text-transform: uppercase; letter-spacing: 0.06em}
.s5a10ac{margin: 0 0 10px; font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 22px; line-height: 1.3}
.s97024a{max-width: 860px; margin: 0 auto; padding: 80px 24px; text-align: center}
.sdaf44d{margin: 0 0 12px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 32px; line-height: 1.2}
.sabc535{margin: 0 0 28px; color: #46506A}
.s8a9e39{text-decoration: none; background: #2E7D6E; color: #FFFFFF; font-weight: 600; padding: 12px 24px; border-radius: 999px; min-height: 48px; box-sizing: border-box; display: inline-flex; align-items: center}
.sb3c95f{max-width: 1180px; margin: 0 auto; padding: 72px 24px; display: flex; flex-wrap: wrap; gap: 48px; align-items: center}
.s2501c6{margin: 0 0 16px; font-size: 14px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #8FD3C3}
.s272f31{margin: 0 0 20px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: clamp(36px, 4.4vw, 56px); line-height: 1.08; letter-spacing: -0.02em}
.sb731e9{margin: 0; font-size: 19px; color: #D5DBE8; max-width: 600px}
.s7bf1b9{flex: 1 1 340px; min-width: 0; background: #FFFFFF; color: #1C2A4E; border-radius: 20px; padding: 32px}
.s1e6e47{margin: 0 0 6px; font-weight: 600}
.se573ae{margin: 0 0 4px; font-family: 'Fraunces', Georgia, serif; font-size: 28px}
.s2c8c5f{margin: 0 0 16px}
.s198387{list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 20px}
.s2c5867{background: #FFFFFF; border: 1px solid #E6E0D4; border-radius: 20px; padding: 28px; display: flex; gap: 18px}
.se9c408{margin: 0; flex: 0 0 40px; width: 40px; height: 40px; border-radius: 999px; background: #1C2A4E; color: #FFFFFF; display: flex; align-items: center; justify-content: center; font-family: 'Fraunces', Georgia, serif}
.sc4d71c{flex: 1 1 480px; min-width: 0}
.s62789b{margin: 0 0 16px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 36px; line-height: 1.2}
.s413172{flex: 1 1 400px; min-width: 0; background: #F8F5EF; border-radius: 20px; padding: 32px}
.se9276a{max-width: 860px; margin: 0 auto; padding: 88px 24px; text-align: center}
.s0dbc4f{max-width: 1180px; margin: 0 auto; padding: 40px 24px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px; font-size: 14px; color: #46506A; border-top: 1px solid #E6E0D4}

/* MAG v3 additions */
.mag-h2{margin:0 0 8px;font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:32px;line-height:1.2;color:#1C2A4E}
.mag-sub{margin:0 0 32px;color:#46506A}
.mag-form{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;max-width:520px;margin:0 auto}
.mag-input{flex:1 1 260px;min-width:0;font:inherit;font-size:16px;padding:12px 18px;min-height:48px;box-sizing:border-box;border:1.5px solid #C9C2B4;border-radius:999px;background:#F8F5EF;color:#1C2A4E}
.mag-input:focus{outline:2px solid #2E7D6E;outline-offset:2px}
.mag-btn{border:0;cursor:pointer;font:inherit;font-weight:600}
.mag-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mag-hp{position:absolute;left:-9999px}
.mag-photo-wrap{overflow:hidden;padding:0}
.mag-photo{display:block;width:100%;height:100%;object-fit:cover}
