/* Scoped company profile; native editable blocks, no global theme changes. */
body.fom-about-template #page,
body.fom-about-template .site.grid-container,
body.fom-about-template #primary { float: none; margin: 0; max-width: none; width: 100%; }
body.fom-about-template #content { display: block; padding: 0; width: 100%; }
.fom-about-content { color: #132c39; margin: 0; }
.fom-about-content *, .fom-about-content *::before, .fom-about-content *::after { box-sizing: border-box; }
body.fom-about-template .fom-about-content > .wp-block-group__inner-container,
.fom-about-content > section > .wp-block-group__inner-container { margin: 0; max-width: none; width: 100%; }
.fom-about-content .fom-about-wrap { margin-inline: auto; max-width: 1280px; padding-inline: 32px; width: 100%; }
.fom-about-content .fom-about-wrap > .wp-block-group__inner-container { max-width: none; }
.fom-about-content .fom-about-section { margin: 0; padding-block: 56px; }
.fom-about-content .fom-about-hero { background: #071827; color: #fff; margin: 0; padding-block: 48px; }
.fom-about-content .fom-about-soft { background: #f2f6f7; }
.fom-about-content .fom-about-navy { background: #0b2233; color: #fff; }
.fom-about-content h1, .fom-about-content h2, .fom-about-content h3 { color: inherit; font-weight: 750; letter-spacing: -.025em; margin: 0 0 18px; }
.fom-about-content h1 { font-size: clamp(2.1rem, 3.6vw, 3.2rem); line-height: 1.1; }
.fom-about-content h2 { font-size: clamp(1.7rem, 2.6vw, 2.4rem); line-height: 1.2; max-width: 940px; }
.fom-about-content h3 { font-size: 1.08rem; line-height: 1.35; }
.fom-about-content p { color: #586d78; font-size: .97rem; line-height: 1.75; margin: 0 0 20px; }
.fom-about-content .fom-about-wrap > p { max-width: 960px; }
.fom-about-content .fom-about-hero p,
.fom-about-content .fom-about-navy p { color: #bdd0da; }
.fom-about-content a { color: #007f83; text-underline-offset: 4px; }
.fom-about-content .fom-about-navy a { color: #25c8ca; }
.fom-about-content a:focus-visible { outline: 3px solid #18b7bb; outline-offset: 4px; }
.fom-about-content .wp-block-columns { display: grid; gap: 30px 40px; margin: 28px 0 0; }
.fom-about-content .wp-block-column { min-width: 0; }
.fom-about-content .fom-about-split { align-items: center; gap: 50px; grid-template-columns: 1.15fr 1fr; margin: 0; }
.fom-about-content .fom-about-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.fom-about-content .fom-about-three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.fom-about-content .fom-about-two > .wp-block-column,
.fom-about-content .fom-about-three > .wp-block-column { border-top: 1px solid #d8e2e6; padding-top: 22px; }
.fom-about-content .wp-block-column > p:last-child { margin-bottom: 0; }
.fom-about-content .wp-block-image { margin: 0; }
.fom-about-content .wp-block-image img { display: block; height: auto; max-height: 380px; object-fit: contain; width: 100%; }
.fom-about-content .fom-about-hero .wp-block-image img { aspect-ratio: 3/2; object-fit: cover; }
.fom-about-content figcaption { color: #586d78; font-size: .76rem; line-height: 1.5; margin-top: 12px; }
.fom-about-content .fom-about-hero figcaption,
.fom-about-content .fom-about-navy figcaption { color: #bdd0da; }
.fom-about-content .wp-block-buttons { display: flex; flex-wrap: wrap; gap: 12px; margin: 26px 0 0; }
.fom-about-content .wp-block-button__link { border: 1px solid transparent; border-radius: 0; font-size: .88rem; font-weight: 750; line-height: 1.5; padding: 14px 22px; text-decoration: none; }
.fom-about-content .fom-about-primary .wp-block-button__link { background: #25c8ca; color: #071827; }
.fom-about-content .fom-about-secondary .wp-block-button__link { background: transparent; border-color: #67818f; color: #fff; }
@media (max-width: 1024px) {
    .fom-about-content .fom-about-three { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .fom-about-content .fom-about-split { gap: 30px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .fom-about-content .fom-about-wrap { padding-inline: 26px; }
}
@media (max-width: 767px) {
    .fom-about-content .fom-about-wrap { padding-inline: 20px; }
    .fom-about-content .fom-about-section, .fom-about-content .fom-about-hero { padding-block: 38px; }
    .fom-about-content .wp-block-columns { grid-template-columns: 1fr; gap: 26px; }
    .fom-about-content .wp-block-image img { max-height: 300px; }
    .fom-about-content h1 { font-size: 2.05rem; }
    .fom-about-content .wp-block-button { flex: 1 1 160px; }
    .fom-about-content .wp-block-button__link { width: 100%; text-align: center; }
}
