/* Layout only: all headings, copy, images, icons and buttons live in Avada. */
.sw-native{color:#23312c;text-align:left!important}
.sw-native>.fusion-builder-row{display:grid!important;gap:32px;width:calc(100% - 80px)!important;max-width:1240px!important;margin:0 auto!important;padding:72px 0!important}
.sw-native>.fusion-builder-row>.fusion_builder_column{width:auto!important;margin:0!important;min-width:0!important}
.sw-native>.fusion-builder-row>.fusion_builder_column>.fusion-column-wrapper{margin:0!important;min-height:0!important;display:flex!important;flex-direction:column;align-items:stretch!important;justify-content:flex-start!important}
.sw-native .fusion-title{margin:0 0 20px!important;padding:0!important;display:block!important}
.sw-native .fusion-title .title-sep-container{display:none}
.sw-native h2{font-size:clamp(29px,3vw,42px)!important;line-height:1.2!important;color:#23312c!important;letter-spacing:-.5px!important;margin:0!important;text-align:left!important}
.sw-native h3{font-size:24px!important;line-height:1.28!important;color:#23312c!important;letter-spacing:0!important;margin:0!important;text-align:left!important}
.sw-native .fusion-text{font-size:18px;line-height:1.7;color:#52605a;text-align:left!important}
.sw-native p{margin:0 0 20px}.sw-native .fusion-text p:last-child{margin-bottom:0}
/* Avada wraps native buttons in an unclassed div. Space the flex item itself. */
.sw-native .fusion-column-wrapper>.fusion-text+div:has(>.sw-n-button){margin-top:28px}
.sw-native .sw-n-eyebrow{font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#327824;margin:0 0 16px!important}
.sw-native .sw-n-small{font-size:15px;margin-top:18px}
.sw-native .fusion-text a{color:#327824;text-decoration:underline;text-underline-offset:4px}
.sw-native .sw-n-button{background:#327824!important;color:#fff!important;border:0!important;border-radius:3px!important;box-shadow:none!important;min-height:50px;padding:15px 24px!important;font-size:15px!important;line-height:1.4!important;text-transform:none!important;letter-spacing:0!important;font-weight:700!important;display:inline-flex;align-items:center;justify-content:center}
.sw-native .sw-n-button:hover{background:#255c1b!important}.sw-native .sw-n-button .fusion-button-text{color:inherit!important}
.sw-native a:focus-visible{outline:3px solid #d89416!important;outline-offset:4px}
.sw-n-two>.fusion-builder-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:64px}
.sw-n-three>.fusion-builder-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.sw-n-four>.fusion-builder-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.sw-n-full{grid-column:1/-1}
.sw-n-sentence-title h2 span{display:inline-block}
.sw-n-product>.fusion-column-wrapper{border:1px solid #dce4d7;border-radius:4px;overflow:hidden;height:100%}
.sw-native .sw-n-product .fusion-title{margin:24px 22px 14px!important}
.sw-n-product .fusion-text{padding:0 22px;font-size:16px}
.sw-native .sw-n-product>.fusion-column-wrapper>div:has(>.sw-n-button){margin-top:auto!important;padding:24px 22px;flex-shrink:0}
.sw-n-product .sw-n-button{width:100%;padding:12px 10px!important;font-size:14px!important;min-height:55px}
.sw-n-product .sw-n-card-photo{width:100%;display:block;flex-shrink:0}
.sw-n-product .sw-n-card-photo img{width:100%!important;height:200px!important;object-fit:cover}
.sw-n-product .sw-n-icon{display:flex;justify-content:center;align-items:center;height:200px!important;width:100%!important;background:#f3f6ef;font-size:74px!important;flex-shrink:0;margin:0!important;float:none!important}
.sw-n-consult>.fusion-builder-row{padding-top:12px!important;align-items:center}
.sw-n-consult-photo .fusion-imageframe{width:100%;display:block}
.sw-n-consult-photo img{height:460px!important;width:100%!important;object-fit:cover;border-radius:4px}
.sw-n-gallery>.fusion-builder-row{padding-top:12px!important}
.sw-n-gallery-photo{display:block!important;width:100%}.sw-n-gallery-photo img{height:230px!important;width:100%!important;object-fit:cover;border-radius:4px}.sw-n-contain img{object-fit:contain;background:#fff}
.sw-n-hours>.fusion-builder-row{background:#f3f6ef;border-radius:4px;padding:40px!important;align-items:center;margin-bottom:20px!important}
.sw-n-hours h2{font-size:29px!important}.sw-n-hours-table{width:100%;border-collapse:collapse;font-size:16px}
.sw-n-hours-table th,.sw-n-hours-table td{padding:14px 0;border-bottom:1px solid #dce4d7;vertical-align:top}
.sw-n-hours-table th{text-align:left;font-weight:700}.sw-n-hours-table td{text-align:right;padding-left:20px}
.sw-n-services-intro>.fusion-builder-row{padding-bottom:24px!important}
.sw-n-services>.fusion-builder-row{padding-top:24px!important;padding-bottom:88px!important}
.sw-native .sw-n-service>.fusion-column-wrapper{border:1px solid #e4e6e2;border-radius:4px;padding:32px!important;height:100%}
.sw-n-service .sw-n-icon{margin:0 0 28px!important;width:60px!important;float:none!important;font-size:48px!important;height:60px!important;line-height:60px!important;text-align:left}
.sw-n-service .fusion-text{font-size:16px;line-height:1.65}
.sw-n-care{border-top:1px solid #e7eae4;border-bottom:1px solid #e7eae4}
.sw-n-care>.fusion-builder-row{padding-block:80px!important}
.sw-n-care .fusion-title{margin-bottom:12px!important}.sw-n-care .sw-n-care-subtitle{font-size:19px;line-height:1.5;margin-bottom:24px}
.sw-n-care h3{font-size:20px!important;margin-bottom:14px!important}
.sw-n-care-list{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px;font-size:16px!important;line-height:1.55!important;margin:0!important}
.sw-n-care-list li{margin:0!important;padding:0!important}.sw-n-care-list .fusion-li-item-content{margin-left:28px!important}
.sw-n-letter>.fusion-builder-row{grid-template-columns:1fr 2fr;gap:64px;padding-block:88px!important}
.sw-n-letter h2{font-size:32px!important}.sw-n-own-logo{max-width:250px;width:100%;margin-top:10px}
.sw-native .sw-n-letter-copy>.fusion-column-wrapper{border-left:2px solid #dfe3da;padding-left:40px!important;max-width:70ch}
.sw-n-letter-copy .fusion-text{font-size:17px;line-height:1.75}.sw-n-letter-copy p{margin-bottom:20px}
.sw-n-bottom{position:relative;isolation:isolate;background-size:cover!important;background-position:center 55%!important}
.sw-n-bottom:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,38,27,.92),rgba(20,38,27,.75));z-index:-1}
.sw-n-bottom>.fusion-builder-row{grid-template-columns:1.4fr 1fr;align-items:center}
.sw-n-bottom h2,.sw-n-bottom .fusion-text,.sw-n-bottom .fusion-text a{color:#fff!important}.sw-n-bottom .sw-n-eyebrow{color:#c5e6b3!important;font-size:13px}.sw-native.sw-n-bottom .fusion-column-wrapper>div:has(>.sw-n-button)+.fusion-text{margin-top:24px!important}
/* Hero retains the approved 2A composition, with editable native image/text elements. */
.sw-n-hero{position:relative;isolation:isolate;overflow:hidden}
.sw-n-hero>.fusion-builder-row{position:relative;grid-template-columns:1.5fr 1fr;align-items:end;height:min(76svh,720px);min-height:480px;padding:0 0 56px!important;gap:32px}
.sw-native.sw-n-hero .sw-n-hero-photo{position:absolute!important;inset:0 calc((1240px - 100vw)/2)!important;width:auto!important;z-index:-2;pointer-events:none}
.sw-n-hero-photo .fusion-column-wrapper,.sw-n-hero-photo .fusion-imageframe{position:absolute;inset:0;width:100%;height:100%;display:block}
.sw-n-hero-photo img{position:absolute;top:40%;left:-5%;width:110%!important;max-width:none!important;height:auto!important;min-height:132%;object-fit:cover;transform:translateY(-54%)}
.sw-n-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(15,26,20,0) 48%,rgba(15,26,20,.80) 64%,rgba(15,26,20,.94) 76%,rgba(15,26,20,.98) 100%);z-index:-1;pointer-events:none}
.sw-n-hero-copy,.sw-n-hero-actions{position:relative;z-index:1}
.sw-n-hero .sw-n-eyebrow{color:#9ddba7!important;font-size:12px!important;letter-spacing:.18em!important;line-height:1.5!important;margin-bottom:18px!important}
.sw-n-hero h1{font-size:clamp(36px,4.4vw,64px)!important;line-height:1.04!important;letter-spacing:-1px!important;color:#fff!important;margin:0!important}
.sw-n-hero .fusion-title{margin-bottom:18px!important}.sw-n-hero .fusion-text{color:#e8eee9;font-size:clamp(17px,1.35vw,20px);line-height:1.5}
.sw-native .sw-n-hero-actions>.fusion-column-wrapper{flex-direction:row!important;align-items:center!important;justify-content:flex-end!important;gap:24px}
.sw-n-hero-actions .fusion-text{font-size:16px;white-space:nowrap}.sw-n-hero-actions a{color:#fff!important}.sw-n-hero .sw-n-button{white-space:nowrap}
@media(max-width:1320px){.sw-native.sw-n-hero .sw-n-hero-photo{inset:0 -40px!important}}
@media(min-width:1800px){.sw-n-hero-photo img{top:50%}}
@media(min-width:901px) and (max-width:1200px){.sw-n-hero>.fusion-builder-row{min-height:640px;grid-template-columns:1fr;align-content:end;gap:24px}.sw-native .sw-n-hero-actions>.fusion-column-wrapper{justify-content:flex-start!important}}
@media(max-width:1100px){.sw-n-four>.fusion-builder-row{grid-template-columns:repeat(2,minmax(0,1fr))}.sw-n-two>.fusion-builder-row{gap:32px}.sw-n-hours>.fusion-builder-row{grid-template-columns:1fr}.sw-n-product .sw-n-card-photo img,.sw-n-product .sw-n-icon{height:240px!important}}
@media(max-width:900px){
 .sw-n-two>.fusion-builder-row,.sw-n-three>.fusion-builder-row,.sw-n-letter>.fusion-builder-row{grid-template-columns:1fr;gap:28px}
 .sw-native>.fusion-builder-row{width:calc(100% - 40px)!important;padding-block:45px!important}
 .sw-n-consult-photo img{height:auto!important;max-height:500px}
 .sw-n-services-intro>.fusion-builder-row{padding-bottom:0!important}
 .sw-native .sw-n-letter-copy>.fusion-column-wrapper{padding-left:24px!important}
 .sw-n-hero>.fusion-builder-row{display:flex!important;flex-direction:column;align-items:stretch;height:auto;min-height:0;width:100%!important;padding:0 0 32px!important;gap:24px}
 .sw-native.sw-n-hero .sw-n-hero-photo{position:relative!important;inset:auto!important;width:100%!important;height:auto;aspect-ratio:1.65;z-index:0;overflow:hidden}
 .sw-n-hero-photo img{top:0;left:-17.5%;width:135%!important;height:100%!important;min-height:0;transform:none;object-fit:cover;object-position:50% 62%}
 .sw-n-hero:after{display:none}.sw-n-hero-copy,.sw-n-hero-actions{margin-inline:40px!important}
 .sw-native .sw-n-hero-actions>.fusion-column-wrapper{flex-direction:column!important;align-items:stretch!important;gap:12px}.sw-n-hero .fusion-button-wrapper{width:100%}.sw-n-hero .sw-n-button{width:100%}
}
@media(max-width:540px){
 .sw-n-focus>.fusion-builder-row{grid-template-columns:1fr}
 .sw-n-product .sw-n-card-photo img,.sw-n-product .sw-n-icon{height:220px!important}
 .sw-n-gallery>.fusion-builder-row{gap:22px 14px}.sw-n-gallery-photo img{height:170px!important}.sw-n-gallery .sw-n-small{font-size:13px}
 .sw-n-hours>.fusion-builder-row{padding:28px 20px!important}.sw-n-hours-table th,.sw-n-hours-table td{display:block;text-align:left;padding:8px 0}.sw-n-hours-table th{border:0;padding-bottom:0}
 .sw-n-care-list{grid-template-columns:1fr}.sw-n-care .sw-n-button{width:100%}
 .sw-n-hero-copy,.sw-n-hero-actions{margin-inline:20px!important}.sw-n-hero h1{font-size:36px!important}.sw-n-hero .sw-n-eyebrow{font-size:11px!important;letter-spacing:.12em!important}
}

/* Load Avada's bundled icons from this site, avoiding stale live-domain font URLs. */
@font-face{font-family:"Weinschenker Symbols";font-style:normal;font-weight:900;font-display:swap;src:url("/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-solid-900.woff2") format("woff2")}
.sw-native .fas,.sw-native .fusion-li-icon{font-family:"Weinschenker Symbols"!important;font-weight:900!important}
/* Avada columns define align-self; override it for the bottom-aligned hero. */
@media(min-width:901px){.sw-native .sw-n-hero-copy,.sw-native .sw-n-hero-actions{align-self:end!important}}
.sw-n-hero:after{display:none}
.sw-n-hero-photo:after{content:"";display:block;position:absolute;inset:0;background:linear-gradient(to bottom,rgba(15,26,20,0) 48%,rgba(15,26,20,.80) 64%,rgba(15,26,20,.94) 76%,rgba(15,26,20,.98) 100%);z-index:2}
@media(max-width:900px){.sw-n-hero-photo:after{display:none}}
.sw-n-service,.sw-n-product{align-self:stretch!important}
.sw-native .sw-n-own-logo{max-width:250px!important;width:100%!important}
.sw-native .sw-n-product .sw-n-button{margin:0!important;width:100%!important}
.sw-native .sw-n-product>.fusion-column-wrapper{flex:1 1 auto!important;width:100%}
.sw-dialog .fas{font-family:"Weinschenker Symbols"!important;font-weight:900!important}
#sw-care-dialog .fusion-form-field{margin-bottom:18px!important}
#sw-care-dialog .fusion-form-input-with-icon input{padding-left:40px!important}
#sw-care-dialog .sw-avada-form>p a{color:#327824;text-decoration:underline;text-underline-offset:3px}
/* Neutralize Avada's mobile fullwidth compensation: #main already has no side padding. */
body.home #main .sw-native{margin-left:0!important;margin-right:0!important;width:100%!important}
body.home #main .sw-native>.fusion-builder-row{width:calc(100% - 80px)!important;margin-left:auto!important;margin-right:auto!important}
@media(max-width:900px){
 body.home #main .sw-native>.fusion-builder-row{width:calc(100% - 40px)!important}
 body.home #main .sw-n-hero>.fusion-builder-row{width:100%!important}
 .sw-native.sw-n-hero>.fusion-builder-row>.sw-n-hero-copy,.sw-native.sw-n-hero>.fusion-builder-row>.sw-n-hero-actions{margin-inline:20px!important;width:calc(100% - 40px)!important}
}
body.home #main .sw-native>.fusion-builder-row{flex:0 0 auto!important}

/* Keep wheelchair and walker visible in the wide room image. */
.sw-n-product .sw-n-wheelchair-room img{object-position:75% center}
