/* All rules are loaded only for the explicitly marked homepage copy. */
body.ss-home-copy { margin:0; background:#fffcf7; color:#193c40; font-family:Arial,Helvetica,sans-serif; }
.ss-home-copy *, .ss-home-copy *::before, .ss-home-copy *::after { box-sizing:border-box; }
.ss-home-copy .elementor-widget-container { font-family:inherit; }
.ss-home-copy :is(a,summary,li,figcaption) { font-family:Arial,Helvetica,sans-serif; }
.ss-home-copy :is(p,a,li,summary) { hyphens:none; word-break:normal; overflow-wrap:break-word; }
.ss-home-copy .e-con { --container-default-padding-top:0; --container-default-padding-right:0; --container-default-padding-bottom:0; --container-default-padding-left:0; }
.ss-home-copy .elementor-widget { margin:0; }
.ss-home-copy :is(h1,h2,h3,p,ul) { margin:0; }
.ss-home-copy :is(h1,h2,h3) { color:#153c40; font-family:Arial,Helvetica,sans-serif; font-weight:700; hyphens:none; overflow-wrap:normal; word-break:normal; text-wrap:balance; }
.ss-home-copy h1 { font-size:clamp(36px,4.5vw,60px); line-height:1.08; letter-spacing:-.035em; max-width:650px; }
.ss-home-copy h2 { font-size:clamp(27px,3vw,36px); line-height:1.18; letter-spacing:-.02em; }
.ss-home-copy h3 { font-size:21px; line-height:1.25; }
.ss-home-copy p { font-size:17px; line-height:1.55; }
.ss-home-copy a { color:#0b6265; text-underline-offset:4px; }
.ss-home-copy a:hover { color:#8d2456; }
.ss-home-copy :is(a,summary):focus-visible { outline:3px solid #a52c66; outline-offset:4px; }
.ss-wrap { width:min(1120px,100% - 48px); margin-inline:auto; }
.ss-header { background:#fffcf7; border-bottom:1px solid #e0e4da; }
.ss-header-inner { min-height:80px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.ss-brand { display:flex; gap:10px; align-items:center; text-decoration:none; color:#193c40!important; font-weight:700; font-size:20px; }
.ss-brand img { width:40px; height:40px; object-fit:contain; }
.ss-nav { display:flex; align-items:center; gap:22px; }
.ss-nav a { padding-block:13px; text-decoration:none; font-size:15px; font-weight:700; }
.ss-menu { display:none; position:relative; }
.ss-menu summary { padding:12px; min-height:44px; cursor:pointer; list-style:none; font-weight:700; }
.ss-menu summary::-webkit-details-marker { display:none; }
.ss-menu nav { position:absolute; right:0; top:50px; width:230px; padding:12px; border:1px solid #cbded7; border-radius:12px; background:#fff; box-shadow:0 12px 35px #163b4020; z-index:50; }
.ss-menu nav a { display:block; padding:12px; text-decoration:none; }
.ss-hero { padding-block:54px 36px; }
.ss-hero-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:60px; align-items:center; }
.ss-hero-copy { display:grid; gap:20px; }
.ss-kicker { font-size:12px!important; font-weight:700; color:#526b65; letter-spacing:.13em; text-transform:uppercase; }
.ss-lead { max-width:560px; font-size:19px!important; }
.ss-btn { display:inline-flex; width:fit-content; min-height:48px; align-items:center; justify-content:center; padding:12px 20px; border:1px solid #a52c66; border-radius:9px; background:#a52c66; color:#fff!important; font-size:16px; font-weight:700; text-decoration:none; line-height:1.35; text-align:center; }
.ss-btn:hover { background:#85224f; border-color:#85224f; }
.ss-btn-light { background:transparent; color:#0b6265!important; border-color:#86aaa0; }
.ss-btn-light:hover { background:#e9f2ed; border-color:#46766a; }
.ss-hero-photo img { display:block; width:100%; height:310px; object-fit:cover; border-radius:22px 22px 80px 22px; }
.ss-hero-note { font-size:14px!important; color:#52665f; max-width:540px; }
.ss-choice { margin-top:30px; background:#eaf3ec; border-radius:12px; padding:18px 22px; }
.ss-choice ul { padding:0; list-style:none; display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.ss-choice li { font-size:15px; line-height:1.45; padding-left:23px; position:relative; }
.ss-choice li::before { content:'✓'; position:absolute; left:0; color:#0b6265; font-weight:700; }
.ss-section { padding-block:38px; }
.ss-section-head { display:flex; justify-content:space-between; gap:24px; align-items:end; margin-bottom:24px; }
.ss-section-head>div { display:grid; gap:8px; }
.ss-section-head p { color:#52665f; }
.ss-events { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.ss-event { background:#fff; border:1px solid #dce5dc; border-radius:14px; overflow:hidden; display:flex; flex-direction:column; }
.ss-event-image { width:100%; height:150px; object-fit:cover; display:block; }
.ss-event-body { padding:19px; display:flex; flex-direction:column; gap:11px; flex:1; }
.ss-event-date { font-size:14px!important; font-weight:700; color:#0b6265; }
.ss-event h3 { font-size:21px; }
.ss-event h3 a { text-decoration:none; color:inherit; }
.ss-event-description { font-size:16px!important; line-height:1.5!important; }
.ss-event .ss-btn { margin-top:auto; padding:10px 15px; min-height:44px; font-size:15px; }
.ss-event-note { font-size:13px!important; color:#52665f; }
.ss-all-events { margin-top:24px; }
.ss-feature { margin-top:24px; padding:23px 26px; border-radius:14px; border:1px solid #d4d5b8; background:#f5f1df; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.ss-feature>div { display:grid; gap:7px; }
.ss-feature .ss-btn { flex-shrink:0; }
.ss-interest { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:20px; }
.ss-interest a { display:flex; gap:12px; justify-content:space-between; align-items:center; min-height:70px; padding:16px; border:1px solid #cbded7; border-radius:10px; background:#fff; text-decoration:none; font-weight:700; }
.ss-soft { background:#edf3ee; }
.ss-team { display:grid; grid-template-columns:1.15fr .85fr; gap:40px; align-items:center; }
.ss-team-copy { display:grid; gap:16px; }
.ss-faces { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }
.ss-faces figure { margin:0; width:76px; text-align:center; }
.ss-faces img { width:64px; height:64px; object-fit:cover; border-radius:50%; display:block; margin:auto; }
.ss-faces figcaption { font-size:13px; margin-top:7px; }
.ss-faq { max-width:800px; }
.ss-faq h2 { margin-bottom:20px; }
.ss-faq details { border-bottom:1px solid #cddbd2; }
.ss-faq summary { cursor:pointer; padding:18px 28px 18px 0; min-height:54px; font-size:17px; font-weight:700; }
.ss-faq details p { padding:0 0 19px; max-width:680px; }
.ss-faq-link { margin-top:20px!important; }
.ss-connect { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.ss-connect article { border:1px solid #dce5dc; background:#fff; border-radius:14px; padding:26px; display:flex; align-items:start; flex-direction:column; gap:16px; }
.ss-connect h2 { font-size:28px; }
.ss-update-links { display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:16px!important; }
.ss-update-links a { display:inline-flex; align-items:center; min-height:44px; font-size:14px; }
.ss-footer { border-top:1px solid #dce5dc; padding-block:25px; }
.ss-footer-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.ss-footer p,.ss-footer a { font-size:14px; }
.ss-footer nav { display:flex; gap:18px; flex-wrap:wrap; }
.ss-footer a { display:inline-flex; align-items:center; min-height:44px; }
.ss-skip { position:absolute; left:12px; top:-100px; z-index:999; background:#fff; padding:14px; }
.ss-skip:focus { top:10px; }
/* Suppress the existing site-wide promotional overlay on this copy only. */
.ss-home-copy :is(#mp_form_slide_in2,.mailpoet_form_popup,.mailpoet_form_slide_in,.mailpoet_form_popup_overlay) { display:none!important; }
@media(max-width:900px) {
 .ss-nav { display:none; } .ss-menu { display:block; }
 .ss-hero-grid { gap:30px; } .ss-events { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .ss-interest { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
 .ss-wrap { width:calc(100% - 36px); }
 .ss-header-inner { min-height:64px; gap:8px; }
 .ss-brand { font-size:17px; gap:8px; } .ss-brand img { width:32px; height:32px; }
 .ss-hero { padding-block:29px 16px; }
 .ss-hero-grid { display:block; } .ss-hero-copy { gap:15px; }
 .ss-home-copy h1 { font-size:36px; max-width:360px; }
 .ss-lead { font-size:17px!important; line-height:1.5!important; }
 .ss-hero-photo { display:none; }
 .ss-hero-note { font-size:13px!important; }
 .ss-choice { padding:15px; margin-top:21px; }
 .ss-choice ul { grid-template-columns:1fr; gap:8px; }
 .ss-choice li { font-size:14px; }
 .ss-section { padding-block:25px; }
 .ss-section-head { margin-bottom:17px; }
 .ss-section-head p { font-size:15px; }
 .ss-events { grid-template-columns:1fr; gap:13px; }
 .ss-event:nth-child(n+4) { display:none; }
 .ss-event { display:grid; grid-template-columns:76px minmax(0,1fr); padding:14px; gap:13px; align-items:start; }
 .ss-event-image { width:76px; height:76px; border-radius:9px; }
 .ss-event-body { padding:0; gap:9px; }
 .ss-event h3 { font-size:19px; }
 .ss-event-date { font-size:13px!important; }
 .ss-event-description { font-size:15px!important; }
 .ss-event .ss-btn { width:100%; }
 .ss-all-events { margin-top:17px; width:100%; }
 .ss-feature { margin-top:18px; padding:18px; flex-direction:column; align-items:start; gap:14px; }
 .ss-feature p { font-size:15px; }
 .ss-interest { gap:9px; } .ss-interest a { font-size:15px; padding:12px; min-height:64px; }
 .ss-team { grid-template-columns:1fr; gap:20px; }
 .ss-faces { justify-content:start; gap:7px; } .ss-faces figure { width:54px; } .ss-faces img { width:48px; height:48px; }
 .ss-connect { grid-template-columns:1fr; gap:14px; }
 .ss-connect article { padding:21px; } .ss-connect h2 { font-size:26px; }
 .ss-footer-inner { display:block; } .ss-footer nav { gap:0 17px; margin-top:10px; }
}
.ss-avatar-initial { display:flex; align-items:center; justify-content:center; width:64px; height:64px; border-radius:50%; margin:auto; background:#d9e7dc; color:#24534a; font:700 24px Arial,sans-serif; } @media(max-width:600px) { .ss-avatar-initial { width:48px; height:48px; font-size:20px; } }
.ss-home-copy img.ss-event-image { width:100%; height:150px; max-height:150px; object-fit:cover; } @media(max-width:600px) { .ss-home-copy img.ss-event-image { width:76px; height:76px; max-height:76px; } }
.ss-home-copy .ss-hero-subtitle { font-size:24px; font-weight:700; line-height:1.3; color:#0b6265; }
.ss-about-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin-top:24px; }
.ss-about-grid>div { display:grid; gap:14px; align-content:start; }
.ss-about-note { margin-top:24px!important; max-width:900px; }
.ss-about-link { margin-top:18px!important; font-size:15px!important; }
@media(max-width:600px) { .ss-home-copy .ss-hero-subtitle { font-size:20px; } .ss-about-grid { grid-template-columns:1fr; gap:24px; margin-top:20px; } .ss-about p { font-size:16px; } }
