/* Ocean Solar 4. Shared foundation; section design lives in experience.css. */
@font-face{font-family:Manrope;src:url('fonts/manrope.woff2') format('woff2');font-weight:200 800;font-display:swap}
html{scroll-behavior:auto}
/* Desktop only: use the same proportions as the 105% browser view.
   The 16px reference becomes 16.8px; tablet and phone retain the 100% scale. */
html.os-document{font-size:100%}
@media(min-width:1101px){html.os-document{font-size:105%}}
body.ocean-redesign{margin:0;background:#fff;color:#102f43;font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}
.os-site{--ink:#102f43;--navy:#102f43;--blue:#0076a3;--aqua:#b6e8ec;--muted:#516570;--line:#d9e4e8;--pale:#f0f5f5;--gold:#f4c775;--radius:1rem;--body:calc(1rem - 1px);--section:4.5rem;--hero-space:2.75rem;--header-height:5.25rem;--gap:3rem;--section-head:2rem;--card-space:1.5rem;font:var(--body)/1.75 Manrope,Arial,sans-serif;color:var(--ink);background:#fff;overflow:clip}
.os-site *{box-sizing:border-box}
.os-site :is(h1,h2,h3,h4,p,ul,ol,figure,blockquote){margin:0;padding:0}
/* Existing Divi page CSS loads later and declares global heading fonts !important. */
.os-site :is(h1,h2,h3,h4){font-family:Manrope,Arial,sans-serif!important;color:var(--ink);font-weight:750!important;letter-spacing:var(--os-heading-tracking,-.04em)!important;line-height:var(--os-heading-leading,1.12)!important;text-wrap:balance}
.os-site h1{font-size:clamp(2.625rem,3.5vw,3.5rem);--os-heading-leading:1.08;--os-heading-tracking:-.045em}
.os-site h2{font-size:clamp(1.875rem,2.5vw,2.5rem)}
.os-site h3{font-size:1.5rem;--os-heading-tracking:-.025em;--os-heading-leading:1.25}
.os-site h4{font-size:1.3125rem;--os-heading-leading:1.35}
.os-site p{color:var(--muted);font-size:var(--body);line-height:1.75}
.os-site strong{font-weight:750}
.os-site a{color:inherit;text-decoration:none}
.os-site img{display:block;width:100%;max-width:100%;height:auto}
.os-site :is(button,input,select,textarea){font:inherit}
.os-site :is(button,a,summary){touch-action:manipulation}
.os-site :focus-visible{outline:0.1875rem solid #0076a3;outline-offset:0.25rem}.os-intro :focus-visible,.os-finder-section :focus-visible,.os-footer :focus-visible{outline-color:var(--gold)}
.os-site [hidden]{display:none!important}
.os-icon{width:1.5rem;height:1.5rem;vertical-align:middle;flex-shrink:0}
.os-wrap{width:min(87.5rem,calc(100% - 7rem));margin-inline:auto}
.os-section{padding-block:var(--section)}
.os-site section[id]{scroll-margin-top:calc(var(--header-height) + 1.5rem - var(--section))}
.os-row{display:grid;gap:var(--gap);align-items:center}
.os-row+.os-row{margin-top:2.5rem}
.os-cols-1{grid-template-columns:1fr}
.os-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.os-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.75rem}
.os-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}
.os-column{min-width:0}
.os-copy{color:var(--muted);font-size:var(--body);line-height:1.75}.os-copy+.os-copy{margin-top:1.25rem}.os-copy>p:empty{display:none}
.os-copy :is(p+p,h2+p,h3+p,h4+p){margin-top:1.25rem}
.os-copy :is(h2,h3):not(:first-child){margin-top:2.25rem}
.os-copy :is(ul,ol){margin:1.25rem 0;padding-left:1.5rem;color:var(--muted)}
.os-copy li{padding-left:0.25rem;margin-block:0.5rem}
.os-copy a{color:var(--blue);text-decoration:underline;text-underline-offset:0.25rem}
.os-copy table{border-collapse:collapse;width:100%;font-size:calc(1rem - 1px);margin-top:1.5rem}
.os-copy :is(td,th){padding:0.875rem;border:0.0625rem solid var(--line);text-align:left}
.os-kicker,.os-card-kicker{display:block;text-transform:uppercase;font-size:0.8125rem;line-height:1.5;font-weight:750;letter-spacing:.11em;color:var(--blue);margin-bottom:1.25rem}
.os-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}
.os-button{display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;padding:0.8125rem 1.25rem;min-height:3rem;background:var(--gold);border:0.0625rem solid var(--gold);border-radius:0.5rem;color:var(--ink)!important;font-size:0.9375rem;font-weight:750;line-height:1.4;text-align:left;cursor:pointer;transition:background .18s,border-color .18s,box-shadow .18s}
.os-button:hover{background:#ffdc9d;border-color:#ffdc9d;box-shadow:0 0.3125rem 1.125rem #102f4310}
.os-button .os-icon{width:1.375rem;height:1.375rem}
.os-button-secondary{background:transparent;border-color:#a8bdc7}
.os-button-secondary:hover{background:#e7f1f3;border-color:#7c9fac}
.os-text-link{display:inline-flex;align-items:center;gap:1.25rem;min-height:2.75rem;color:var(--ink);font-size:1rem;font-weight:750}
.os-text-link:hover{color:var(--blue)}
.os-small-note{font-size:0.875rem!important;line-height:1.7!important;margin-top:1.5rem;color:#5b717c}
.os-skip{position:fixed;z-index:100000;top:0.5rem;left:0.5rem;transform:translateY(-160%);padding:0.75rem 1.25rem;background:#fff;color:#102f43}
.os-skip:focus{transform:translateY(0)}
.os-check{display:flex;align-items:flex-start;gap:0.75rem;margin-top:0.875rem}
.os-check>.os-icon{width:1.3125rem;height:1.3125rem;color:var(--blue);margin-top:0.25rem}
.os-check p{font-size:calc(1.0625rem - 1px);line-height:1.6;color:var(--ink)}
.os-photo{position:relative;overflow:hidden;border-radius:var(--radius);background:var(--pale)}
.os-photo img{width:100%;height:100%;aspect-ratio:1.22;object-fit:cover}
.os-photo figcaption{position:absolute;right:1rem;bottom:1rem;border-radius:0.3125rem;background:#102f43bb;padding:0.3125rem 0.5625rem;color:#fff;font-size:0.75rem;line-height:1.5}
.os-image-column{align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.os-image-column>.os-photo{height:100%;min-height:25rem;max-height:40.625rem}
.os-image-column>.os-photo img{height:100%;aspect-ratio:auto;min-height:25rem}
/* Native Gravity Forms keeps validation and submission ownership. */
.os-form-panel{margin-top:2rem}
.os-form-panel .gform_wrapper{padding:1.75rem;border:0.0625rem solid var(--line);border-radius:var(--radius);background:#fff}
.os-form-panel .gform_wrapper .gform_fields{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1.375rem 1.25rem!important;list-style:none!important}
.os-form-panel .gform_wrapper .gfield{grid-column:1/-1;width:100%;float:none;margin:0;padding:0;min-width:0}
.os-form-panel .gform_wrapper .gfield--width-half{grid-column:span 1}
.os-form-panel fieldset.gfield{border:0}
.os-form-panel .os-quote-form #field_2_7{grid-column:span 1}
.os-form-panel .os-quote-form #field_2_13{grid-column:1/-1}
.os-form-panel .os-business-form #field_2_13{grid-column:span 1}
.os-form-panel :is(.gfield_label,.gform-field-label){display:block;font-size:1rem!important;line-height:1.5!important;font-weight:650!important;color:var(--ink)!important;margin-bottom:0.625rem!important}
.os-form-panel .ginput_container :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea){border:0.0625rem solid #b1c5cf!important;border-radius:0.5rem!important;min-height:3.125rem;width:100%!important;max-width:100%!important;padding:0.75rem 0.875rem!important;background:#f9fbfc!important;color:var(--ink)!important;font-size:1rem!important;line-height:1.5!important;box-shadow:none!important}
.os-form-panel .ginput_container textarea{min-height:7.5rem}
.os-form-panel :is(input,select,textarea):focus{outline:0.125rem solid var(--blue);outline-offset:0.125rem}
.os-form-panel :is(.gfield_description,.gform_fileupload_rules){font-size:0.875rem!important;color:var(--muted)!important;line-height:1.65!important;margin-top:0.5rem!important;padding-top:0!important}
.os-form-panel .ginput_container_consent{display:flex;align-items:flex-start;gap:0.75rem}
.os-form-panel .ginput_container_consent label{font-size:0.9375rem!important;font-weight:450!important}
.os-form-panel input[type=checkbox]{width:1.25rem;height:1.25rem;accent-color:var(--blue);margin-top:0.1875rem;flex-shrink:0}
.os-site .os-form-panel input[type=file]{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:3.25rem!important;padding:0!important;border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;box-sizing:border-box!important;font:inherit!important;font-size:0.9375rem!important;line-height:1.5!important;color:var(--muted)!important}
.os-site .os-form-panel input[type=file]::file-selector-button{padding:0.875rem 1rem;background:var(--gold);color:var(--ink);border:0.0625rem solid var(--gold);border-radius:0.5rem;font:inherit;line-height:1.5;margin:0 0.75rem 0 0;cursor:pointer}
.os-form-panel .gform_footer{margin:1.75rem 0 0!important;padding:0!important}
.os-site .os-form-panel .gform_wrapper .gform_footer .gform_button{min-height:3.125rem;padding:0.8125rem 1.5rem!important;background:var(--gold)!important;border:0.0625rem solid var(--gold)!important;border-radius:0.5rem!important;font-family:Manrope,Arial,sans-serif!important;font-size:1rem!important;line-height:1.4!important;color:var(--ink)!important;font-weight:750!important;cursor:pointer}
.os-form-panel .gfield_required{color:#a82b20!important}
.os-form-panel .gform_validation_errors{border:0.0625rem solid #d99a8f;border-radius:0.5rem;background:#fff2ef;padding:1.5rem;margin-bottom:1.75rem}
.os-form-panel .gform_validation_errors h2{font-size:1.25rem;color:#98291d}
.os-form-panel .validation_message{font-size:0.9375rem;color:#98291d}
.os-form-panel .gform_confirmation_message{background:#e6f3ec;padding:1.75rem;border:0.0625rem solid #add1bd;color:#214935}
.os-form-panel .gform_validation_container{position:absolute!important;left:-624.9375rem!important;visibility:hidden!important}
.os-form-unavailable{padding:2rem;border:0.0625rem solid var(--line);border-radius:var(--radius)}
.os-form-unavailable h2{font-size:1.75rem}.os-form-unavailable p{margin-block:1.25rem}
.os-preview-note{font-size:0.875rem!important;margin-top:1rem!important}
@media(max-width:1210px){.os-site{--section:4rem;--hero-space:2.25rem;--header-height:4.75rem;--gap:2rem}.os-wrap{width:calc(100% - 4rem)}}
@media(max-width:700px){.os-site{--section:3rem;--hero-space:1.75rem;--header-height:4.5rem;--section-head:1.5rem;--card-space:1.375rem;--gap:1.75rem;--body:calc(1rem - 1px);--radius:1rem}.os-wrap{width:calc(100% - 2.5rem)}.os-site h1{font-size:2.375rem}.os-site h2{font-size:1.875rem}.os-site h3{font-size:1.5rem}.os-kicker,.os-card-kicker{font-size:0.75rem;letter-spacing:.08em}.os-cols-2,.os-cols-3,.os-cols-4{grid-template-columns:1fr}.os-row+.os-row{margin-top:2.5rem}.os-site section[id]{scroll-margin-top:calc(var(--header-height) + 1.25rem - var(--section))}.os-button{min-height:3rem;padding:0.8125rem 1.125rem}.os-small-note{font-size:0.8125rem!important}.os-image-column>.os-photo,.os-image-column>.os-photo img{min-height:18.75rem;max-height:28.75rem}.os-form-panel .gform_wrapper{padding:1.5rem 1.25rem}.os-form-panel .gform_wrapper .gform_fields{grid-template-columns:1fr!important}.os-form-panel .gform_wrapper .gfield--width-half{grid-column:1/-1}.os-form-panel .gform_button{width:100%!important}}
@media(max-width:370px){.os-wrap{width:calc(100% - 2rem)}.os-site h1{font-size:2.1875rem}.os-site h2{font-size:1.875rem}.os-button{font-size:0.9375rem;gap:0.875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.os-site *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
