.csa{--csa-ink:var(--awb-color8,#06283d);--csa-muted:var(--awb-color6,#506777);--csa-accent:#4666df;--csa-border:#d8e2e8;--csa-surface:#f3f6f8;--csa-cta:#06283d;--csa-cta_text:#fff;--csa-button:#fff;--csa-button_text:#06283d;box-sizing:border-box;width:100%;max-width:100%;margin:0 auto;padding:0;color:var(--csa-ink);font-family:inherit;font-size:var(--csa-body-size,var(--body_typography-font-size,16px));line-height:var(--csa-line_height-size,var(--body_typography-line-height,1.8));text-align:left;color-scheme:light}
.csa *{box-sizing:border-box;min-width:0}
.csa :is(h2,h3,h4,p,ul,ol,figure){margin:0;padding:0;color:inherit}
.csa :is(h2,h3,h4){font-family:var(--h2_typography-font-family,inherit);font-weight:var(--h2_typography-font-weight,700);text-transform:var(--h2_typography-text-transform,none);letter-spacing:var(--h2_typography-letter-spacing,-.015em);line-height:1.3;overflow-wrap:anywhere}
.csa p{font-size:inherit;line-height:inherit;font-family:inherit;overflow-wrap:anywhere}
.csa p+p{margin-top:16px}
.csa a,.csa a:is(:hover,:focus,:focus-visible,:active,:visited){text-decoration:none!important;text-underline-offset:0;box-shadow:none;background-image:none}
.csa a{color:var(--csa-ink);transition:color .16s ease,background-color .16s ease;font-family:inherit;overflow-wrap:anywhere}
.csa a:is(:hover,:focus-visible){color:var(--csa-accent)!important;text-decoration:none!important}
.csa a:focus-visible{outline:2px solid var(--csa-accent);outline-offset:5px}
.csa .csa-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.csa .csa-introduction{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(28px,5%,64px);align-items:start}
.csa.csa-without-photo .csa-introduction{grid-template-columns:1fr}
.csa .csa-copy{padding:0}
.csa .csa-eyebrow{font-size:var(--csa-small-size,var(--awb-typography5-font-size,14px));font-weight:700;letter-spacing:.10em;text-transform:uppercase;color:var(--csa-muted);margin-bottom:16px}
.csa h2.csa-title{font-size:var(--csa-title-size,var(--h2_typography-font-size,48px));line-height:1.18;margin-bottom:24px}
.csa .csa-intro{color:var(--csa-ink)}
.csa .csa-body{color:var(--csa-muted)}
.csa .csa-photo{border-radius:var(--csa-radius,16px);overflow:hidden;background:var(--csa-surface);align-self:stretch;min-height:320px}
.csa .csa-photo .csa-image{display:block;width:100%;height:100%;aspect-ratio:1.35;object-fit:cover;object-position:center;margin:0;border:0;border-radius:0;box-shadow:none}
.csa .csa-photo-top .csa-image{object-position:center top}.csa .csa-photo-left .csa-image{object-position:left center}.csa .csa-photo-right .csa-image{object-position:right center}.csa .csa-photo-bottom .csa-image{object-position:center bottom}
.csa :is(.csa-section,.csa-related){margin-top:48px}
.csa .csa-section-title{font-size:var(--csa-section-size,28px);margin-bottom:24px}
.csa .csa-blocks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 32px;list-style:none;--csa-block-rows:2}
.csa .csa-has-block-links{--csa-block-rows:3}
.csa .csa-block{display:grid;grid-template-rows:subgrid;grid-row:span var(--csa-block-rows);row-gap:12px;border-top:2px solid var(--csa-border);padding-top:22px;list-style:none}
.csa .csa-block :is(h3,h4){font-size:var(--csa-card-size,21px);line-height:1.35}
.csa .csa-block-copy{color:var(--csa-muted)}
.csa .csa-block-action:empty{min-height:0}
.csa .csa-text-link{display:inline-block;font-weight:600}
.csa-template-split .csa-layout-steps{grid-template-columns:repeat(4,minmax(0,1fr))}
.csa .csa-step{display:block;font-size:var(--csa-small-size,14px);font-weight:700;letter-spacing:.06em;color:var(--csa-muted);margin-bottom:12px}
.csa .csa-note{background:var(--csa-surface);padding:26px 30px;border-radius:var(--csa-radius,16px);margin-top:36px}
.csa .csa-note h3{font-size:var(--csa-card-size,21px);margin-bottom:10px}
.csa .csa-related ul{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px}
.csa .csa-related li{list-style:none;border-bottom:1px solid var(--csa-border)}
.csa .csa-related a{display:block;font-weight:600;padding:14px 0;line-height:1.5}
/* The banner uses two equally sized light buttons, including hover/visited states. */
.csa .csa-cta{margin-top:44px;padding:30px 34px;background:var(--csa-cta);color:var(--csa-cta_text);border-radius:var(--csa-radius,16px);display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);align-items:center;gap:32px}
.csa .csa-cta h3{font-size:var(--csa-section-size,28px);margin-bottom:10px;color:var(--csa-cta_text)}
.csa .csa-cta p{color:var(--csa-cta_text);max-width:650px}
.csa .csa-actions{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:12px;width:100%;max-width:100%}
.csa .csa-cta a.csa-button,.csa .csa-cta a.csa-button:is(:visited,:active,:focus){display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:12px 22px;border:0!important;border-radius:32px;background:var(--csa-button)!important;color:var(--csa-button_text)!important;font-weight:600;font-size:var(--csa-button-size,var(--button_font_size,16px));line-height:1.45;text-align:center;white-space:normal;text-transform:none;letter-spacing:normal;text-decoration:none!important;box-shadow:none!important}
.csa .csa-cta a.csa-button:is(:hover,:focus-visible){color:var(--csa-accent)!important;background:var(--csa-button)!important;border:0!important;text-decoration:none!important}
.csa .csa-cta a.csa-button:focus-visible{outline:2px solid var(--csa-cta_text);outline-offset:4px}
.csa .csa-fine-print{font-size:var(--csa-small-size,var(--awb-typography5-font-size,14px));color:var(--csa-muted);margin-top:18px}
/* Panorama: centered introduction, panoramic image, then inset cards. */
.csa-template-panorama>.csa-eyebrow{max-width:880px;margin-left:auto;margin-right:auto;text-align:center}
.csa-template-panorama .csa-introduction{display:block;max-width:880px;margin:0 auto 32px;text-align:center}
.csa-template-panorama .csa-copy{padding:0}
.csa-template-panorama .csa-description{max-width:760px;margin:0 auto}
.csa-template-panorama>.csa-photo{min-height:0;max-height:410px}
.csa-template-panorama>.csa-photo .csa-image{height:auto;aspect-ratio:3;max-height:410px}
.csa-template-panorama .csa-block,.csa-template-feature .csa-block{padding:24px;border:1px solid var(--csa-border);background:var(--csa-surface);border-radius:var(--csa-radius,16px)}
/* The eyebrow has its own row; both columns begin at the main heading. */
/* Editorial: heading and description on the left, photograph on the right. */
.csa-template-editorial .csa-introduction{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.csa-template-editorial .csa-introduction>.csa-photo{max-height:560px}
.csa-template-editorial .csa-blocks{grid-template-columns:1fr;gap:0}
.csa-template-editorial .csa-block{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);grid-row:auto;grid-template-rows:auto;gap:10px 40px;padding:22px 0;border-width:1px;align-items:start}
.csa-template-editorial .csa-block-action{grid-column:2}
.csa-template-editorial .csa-block-action:empty{display:none}
.csa-template-editorial .csa-step{display:inline-block;margin:0 12px 0 0;vertical-align:middle}
.csa-template-editorial .csa-block-heading:has(.csa-step){display:flex;align-items:baseline}
/* Feature grid: one lead column beside a separate two-column card collection. */
.csa .csa-feature-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:48px;align-items:start}
.csa-template-feature .csa-introduction{display:block}
.csa-template-feature .csa-copy{padding:0}
.csa-template-feature .csa-feature-lead>.csa-photo{min-height:0;margin-top:28px}
.csa-template-feature .csa-feature-lead>.csa-photo .csa-image{height:auto;aspect-ratio:1.9}
.csa-feature-content>.csa-section{margin-top:0}
.csa-template-feature .csa-blocks{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
/* Minimal: no photograph, full-width rows with aligned heading and copy columns. */
.csa-template-minimal .csa-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start;padding:0}
.csa-template-minimal .csa-title{margin-bottom:0}
.csa-template-minimal .csa-description{padding:0}
.csa-template-minimal .csa-introduction{display:block;padding-bottom:36px;border-bottom:1px solid var(--csa-border)}
.csa-template-minimal .csa-blocks{grid-template-columns:1fr;gap:0}
.csa-template-minimal .csa-block{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);grid-template-rows:auto;grid-row:auto;gap:12px 40px;padding:26px 0;border-width:1px;align-items:start}
.csa-template-minimal .csa-block-action{grid-column:2}
.csa-template-minimal .csa-block-action:empty{display:none}
.csa-template-minimal .csa-block-heading{display:flex;gap:16px;align-items:baseline}
.csa-template-minimal .csa-step{flex-shrink:0;margin:0}
.csa.csa-contact>.csa-section{margin-top:0}
.csa .csa-feature-content.csa-no-blocks{grid-template-columns:1fr}
/* This legacy Avada divider immediately after the About section has a -30px
   margin and a white half-width SVG that otherwise covers the banner bottom.
   Only that adjacent custom divider is suppressed; other separators remain. */
.fusion-fullwidth:has(.csa-about)+.fusion-fullwidth .fusion-section-separator.custom:has(.fusion-custom-candy-sep){display:none!important}
@supports not (grid-template-rows:subgrid){.csa .csa-block{display:block;grid-row:auto}.csa .csa-block-heading{min-height:58px}.csa .csa-block-copy,.csa .csa-block-action{margin-top:12px}}
@media(max-width:1000px){.csa .csa-feature-content{grid-template-columns:1fr}.csa-template-feature .csa-feature-lead{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:30px;align-items:start}.csa-template-feature .csa-feature-lead>.csa-photo{margin-top:0;align-self:stretch}.csa-template-feature .csa-feature-lead>.csa-photo .csa-image{height:100%}.csa-template-feature.csa-without-photo .csa-feature-lead{grid-template-columns:1fr}}
@media(max-width:900px){.csa .csa-introduction{gap:30px}.csa h2.csa-title{font-size:min(var(--csa-title-size,36px),42px)}.csa-template-split .csa-layout-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.csa .csa-blocks{column-gap:22px}.csa .csa-cta{grid-template-columns:1fr}.csa .csa-actions{grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px}.csa-template-minimal .csa-copy{gap:30px}}
@media(max-width:650px){
.csa .csa-introduction{grid-template-columns:1fr;gap:22px}.csa .csa-copy{padding:0}.csa h2.csa-title{font-size:min(var(--csa-title-size,32px),36px);margin-bottom:20px}.csa .csa-photo{min-height:0}.csa .csa-photo .csa-image{height:auto;aspect-ratio:1.5}.csa .csa-blocks,.csa .csa-related ul{grid-template-columns:1fr}.csa .csa-block{padding-top:18px;row-gap:9px}.csa .csa-blocks{row-gap:18px}.csa :is(.csa-section,.csa-related){margin-top:34px}.csa .csa-section-title{font-size:var(--csa-section-size,25px);margin-bottom:18px}.csa .csa-note{padding:22px}.csa .csa-cta{margin-top:32px;padding:25px 22px;gap:22px}.csa .csa-cta h3{font-size:var(--csa-section-size,25px)}.csa .csa-actions{grid-template-columns:minmax(0,1fr);gap:12px;max-width:100%}.csa .csa-block-heading{min-height:0}
.csa-template-panorama .csa-introduction{text-align:left;margin-bottom:24px}.csa-template-panorama>.csa-photo .csa-image{aspect-ratio:1.65}
.csa-template-panorama>.csa-eyebrow{text-align:left}
.csa-template-minimal .csa-copy{display:block}.csa-template-minimal .csa-description{padding:0}
.csa-template-editorial .csa-blocks{gap:0}
.csa .csa-feature-content{gap:32px}.csa-template-feature .csa-feature-lead{display:block}.csa-template-feature .csa-feature-lead>.csa-photo{margin-top:24px}.csa-template-feature .csa-feature-lead>.csa-photo .csa-image{height:auto;aspect-ratio:1.65}.csa .csa-feature-content>.csa-section{margin-top:0}
.csa-template-panorama .csa-block,.csa-template-feature .csa-block{padding:22px}
.csa-template-minimal .csa-blocks{gap:0}.csa-template-minimal .csa-block,.csa-template-editorial .csa-block{grid-template-columns:1fr;gap:12px;padding:22px 0}.csa-template-minimal .csa-block-action,.csa-template-editorial .csa-block-action{grid-column:1}.csa-template-minimal .csa-introduction{padding-bottom:28px}
}
@media(prefers-reduced-motion:reduce){.csa a{transition:none}}
.csa-template-feature .csa-block:last-child:nth-child(odd){grid-column:1/-1}
