/* AHI revision 2: connected editorial sections, original brand and real service detail. */
body:has(.ahi-flow) #main{padding:0!important}
body:has(.ahi-flow) #main>.fusion-row{max-width:none!important}
body:has(.ahi-flow) #content{width:100%!important;float:none!important}
.ahi-flow{--navy:#243c73;--deep:#13264d;--blue:#006aad;--sky:#e8f1fa;color:#273951;font-family:Arial,Helvetica,sans-serif!important;font-size:17px;line-height:1.75;max-width:none!important;overflow:visible}
.ahi-flow *{box-sizing:border-box}
.ahi-flow h1,.ahi-flow h2,.ahi-flow h3{font-family:Arial,Helvetica,sans-serif!important;letter-spacing:-.035em;font-weight:700!important;line-height:1.12!important;margin:0 0 24px}
.ahi-flow h2{font-size:clamp(30px,3.4vw,46px);color:var(--navy)}
.ahi-flow h3{font-size:25px;color:var(--navy)}
html body #wrapper #main .ahi-flow h1,html body #wrapper #main .ahi-flow h2,html body #wrapper #main .ahi-flow h3{font-family:Arial,Helvetica,sans-serif!important;font-weight:700!important;line-height:1.12!important}
html body #wrapper #main .ahi-flow h2{font-size:clamp(30px,3.4vw,46px)!important}
html body #wrapper #main .ahi-flow h3{font-size:25px!important}
html body #wrapper #main .ahi-flow .af-tab-panel h3{font-size:36px!important}
html body #wrapper #main .ahi-flow .af-principles-grid h3{font-size:23px!important}
.ahi-flow p{margin:0 0 20px}
.ahi-flow figure{margin:0}
.ahi-flow img{max-width:100%;display:block}
.ahi-flow a{color:var(--blue);text-underline-offset:5px}
.ahi-flow a:focus-visible,.ahi-flow button:focus-visible,.ahi-flow summary:focus-visible{outline:3px solid #25a4e8;outline-offset:5px}
.af-container{width:min(1180px,calc(100% - 64px));margin:auto}
.af-kicker{font-size:11px!important;letter-spacing:.16em;font-weight:800;color:var(--blue);text-transform:uppercase;margin-bottom:18px!important}
.ahi-flow>.af-hero{position:relative;min-height:560px;display:flex;align-items:center;background:var(--deep)!important;color:white;isolation:isolate;border-radius:0!important;box-shadow:none!important;margin:0!important;padding:0!important}
.af-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 48%;z-index:-2}
.af-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,29,58,.96) 0%,rgba(17,38,77,.88) 34%,rgba(17,38,77,.29) 69%,rgba(17,38,77,.08) 100%);z-index:-1}
.af-hero .af-container{padding:66px 0}
.af-hero h1{font-size:clamp(42px,5.2vw,72px)!important;color:white!important;max-width:13ch;margin:0 0 24px!important}
.af-hero .af-kicker{color:#9dd5fa}
.af-hero p:not(.af-kicker){max-width:48ch;font-size:19px;color:#edf5ff}
.af-hero .af-hero-services{font-size:13px!important;letter-spacing:.02em;color:#d0e3f6;max-width:60ch;margin:28px 0 0}
.af-actions{display:flex;gap:16px;flex-wrap:wrap;margin:28px 0 0}
.ahi-flow .af-button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;padding:14px 24px;text-decoration:none;font-size:14px;font-weight:800;border:1px solid transparent;border-radius:3px;background:var(--blue);color:white;line-height:1.5;transition:background .2s}
.ahi-flow .af-button:hover{background:#00588e;color:#fff}
.ahi-flow .af-button-light{background:#fff;color:var(--navy)}
.ahi-flow .af-button-outline{background:transparent;border-color:#a8c2df;color:#fff}
.ahi-flow .af-link{font-size:14px;font-weight:800;display:inline-block;margin-top:10px;text-decoration:none;border-bottom:2px solid var(--blue);padding-bottom:5px}
.af-service-nav{background:var(--navy);color:white}
.af-service-nav .af-container{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px 28px;padding:20px 0}
.af-service-nav a{color:white!important;text-decoration:none;font-weight:700;font-size:14px}
.af-service-nav a:hover{text-decoration:underline}
.af-intro{padding:82px 0 70px;display:grid;grid-template-columns:1fr 1fr;gap:70px}
.af-intro h2{max-width:18ch}
.af-intro .af-lead{font-size:21px;color:var(--navy);line-height:1.5}
.af-family-line{border-left:4px solid var(--blue);padding:8px 0 8px 24px;font-size:18px;color:var(--navy);font-weight:700;margin-top:28px}
.af-explorer{padding:70px 0 80px;background:var(--sky)}
.af-explorer-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:32px}
.af-explorer-head h2{margin-bottom:0;max-width:20ch}
.af-explorer-head p{max-width:38ch;margin-bottom:0}
.af-tabs{display:flex;gap:0;flex-wrap:wrap;border-bottom:1px solid #b7cce2;margin-bottom:38px}
.af-tabs button{flex:1;min-width:120px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--navy);padding:18px 12px;font-family:inherit;font-size:14px;font-weight:800;cursor:pointer}
.af-tabs button[aria-selected=true]{border-bottom-color:var(--blue);color:var(--blue);background:#fff}
.af-tab-panel{display:grid;grid-template-columns:1.12fr 1fr;gap:56px;align-items:center}
.af-tab-panel[hidden]{display:none!important}
.af-tab-panel figure{position:relative}
.af-tab-panel img{width:100%;height:420px;object-fit:cover}
.af-tab-panel figcaption{font-size:11px;line-height:1.5;padding-top:10px;color:#5f7289}
.af-tab-panel h3{font-size:36px}
.af-bullets{padding-left:22px;margin:20px 0 26px}
.af-bullets li{padding:5px 0}
.af-bullets li::marker{color:var(--blue)}
.af-outdoor{background:var(--deep);color:white;padding:80px 0}
.af-outdoor .af-container{display:grid;grid-template-columns:1fr 1.15fr;gap:70px;align-items:center}
.af-outdoor h2{color:white;max-width:15ch;font-size:clamp(34px,3.7vw,50px)}
.af-outdoor .af-kicker{color:#9dd5fa}
.af-outdoor p{color:#e0edfb}
.af-outdoor-photo{position:relative;padding:0 0 36px 36px}
.af-outdoor-photo:before{content:'';position:absolute;left:0;bottom:0;width:75%;height:75%;background:#006aad}
.af-outdoor-photo img{position:relative;width:100%;height:480px;object-fit:cover}
.af-outdoor-photo figcaption{position:relative;color:#cae0f5;font-size:12px;padding-top:10px}
.af-points{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-top:1px solid #577395;padding-top:22px;margin-top:25px}
.af-points strong{display:block;font-size:14px;color:white}
.af-points span{font-size:13px;line-height:1.6;display:block;margin-top:5px;color:#d0e2f8}
.af-gallery-story{padding:82px 0}
.af-heading-row{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:34px}
.af-heading-row h2{margin-bottom:0}
.af-heading-row p{margin-bottom:0}
.af-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.af-photo-grid figure{position:relative}
.af-photo-grid a{display:block;position:relative;overflow:hidden}
.af-photo-grid img{width:100%;height:340px;object-fit:cover;transition:transform .3s}
.af-photo-grid a:hover img{transform:scale(1.025)}
.af-photo-grid figcaption{position:relative;background:white;color:var(--navy);font-size:13px;font-weight:700;padding:12px 0;border-bottom:1px solid #d9e3ed}
.af-video-story{padding:70px 0;background:#f5f7fa}
.af-video-story .af-container{display:grid;grid-template-columns:1fr 1.25fr;gap:65px;align-items:center}
.af-video-story iframe{width:100%;aspect-ratio:16/9;height:auto;border:0;display:block}
.af-principles{padding:75px 0}
.af-principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;border-top:1px solid #c9d7e5;padding-top:32px;margin-top:32px}
.af-principles-grid h3{font-size:23px}
.af-principles-grid p{font-size:16px}
.ahi-flow article:hover{transform:none!important;box-shadow:none!important}
.ahi-flow>section:not(:first-of-type) img{box-shadow:none!important}
.ahi-flow .ahi-faq-section{max-width:1180px;display:grid!important;grid-template-columns:.8fr 1.35fr!important;gap:70px;background:transparent!important;padding:0!important;margin:0 auto!important;border-radius:0!important;border:0!important}
.af-faq-band{padding:76px 32px;background:var(--sky)}
.ahi-flow .ahi-faq-intro{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;color:var(--navy)!important}
.ahi-flow .ahi-faq-intro>p{color:var(--blue)!important;font-size:11px;letter-spacing:.16em;font-weight:800}
.ahi-flow .ahi-faq-intro h2{color:var(--navy)!important;font-size:40px!important;max-width:13ch}
.ahi-flow .ahi-faq-help{border-top:1px solid #bbcee1!important;padding:24px 0!important;margin-top:26px}
.ahi-flow .ahi-faq-help a{color:var(--blue)!important}
.ahi-flow .ahi-faq-item{border:0!important;border-bottom:1px solid #b5cade!important;border-radius:0!important;margin:0!important;background:transparent!important;box-shadow:none!important}
.ahi-flow .ahi-faq-item summary{padding:22px 0!important;font-size:17px!important;gap:16px!important;grid-template-columns:1fr auto!important}
.ahi-flow .ahi-faq-q{display:none!important}
.ahi-flow .ahi-faq-answer{padding:0 28px 22px 0!important;color:#30465f;font-size:16px}
.ahi-flow .ahi-faq-toggle{border-radius:50%!important;background:white!important;color:var(--blue)!important}
.ahi-flow .ahi-faq-item[open] summary{color:var(--blue)}
.af-estimate{padding:82px 0;background:var(--deep);color:#e0edfb}
.af-estimate>.af-container{display:grid;grid-template-columns:.85fr 1.1fr;gap:85px;align-items:start}
.af-estimate h2{color:white!important;font-size:clamp(36px,4vw,54px);max-width:12ch}
.af-estimate .af-kicker{color:#9dd5fa}
.af-estimate .ahi-form-card{border-radius:3px!important;box-shadow:none!important;padding:36px!important;color:#273951}
.af-estimate .ahi-form-card h3{font-size:27px}
.af-contact-lines{margin:34px 0;border-top:1px solid #486287}
.af-contact-lines a{display:flex;justify-content:space-between;gap:18px;padding:17px 0;border-bottom:1px solid #486287;color:white!important;text-decoration:none}
.af-contact-lines span{font-size:13px;color:#c2d9f0}
.af-contact-lines strong{font-size:21px}
.af-estimate .af-small{font-size:13px;color:#c2d9f0}
.af-estimate .af-small a{color:#fff}
.af-service-hero{min-height:430px}
.af-service-hero h1{font-size:clamp(40px,4.7vw,62px)!important;max-width:18ch}
.af-section-jumps{background:#f2f6fb;border-bottom:1px solid #d5e0ed}
.af-section-jumps .af-container{display:flex;gap:16px 32px;padding:19px 0;flex-wrap:wrap}
.af-section-jumps a{font-size:13px;font-weight:800;text-decoration:none}
.af-product-section{padding:70px 0;border-bottom:1px solid #dbe5ef}
.af-product-section .af-container{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.af-product-section:nth-of-type(even){background:#f5f8fc}
.af-product-section.af-reverse .af-product-copy{order:2}
.af-product-section.af-reverse figure{order:1}
.af-product-section figure img{width:100%;height:410px;object-fit:cover}
.af-product-section figure figcaption{padding:12px 0;font-size:12px;color:#59718a;border-bottom:2px solid var(--blue)}
.af-product-section h2{max-width:19ch}
.af-feature-line{border-top:1px solid #c2d3e4;padding-top:20px;margin-top:24px;font-size:14px;font-weight:700;color:var(--navy)}
.af-note{font-size:13px;color:#536f8d;line-height:1.65}
.af-full-gallery{padding:70px 0}
.ahi-flow .ahi-gallery-section{border-radius:0!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important}
.ahi-flow .ahi-gallery-section .ahi-gallery-grid{gap:24px!important}
.ahi-flow .ahi-gallery-section img,.ahi-flow .ahi-gallery-section figure{border-radius:0!important}
.ahi-flow .ahi-gallery-section figcaption{font-size:13px;padding:12px 0!important;border-bottom:1px solid #cbdbea;background:white!important}
.ahi-flow .ahi-gallery-filters{margin:22px 0!important}
.ahi-flow .ahi-gallery-filters button{border-radius:3px!important}
.af-bottom-cta{background:var(--navy);padding:48px 0;color:white}
.af-bottom-cta .af-container{display:flex;justify-content:space-between;align-items:center;gap:36px}
.af-bottom-cta h2{color:white;font-size:34px;margin:0 0 12px}
.af-bottom-cta p{margin:0;max-width:62ch}
.af-simple-rows{border-top:1px solid #c5d6e7}
.af-simple-row{padding:26px 0;border-bottom:1px solid #c5d6e7;display:grid;grid-template-columns:.65fr 1.2fr auto;gap:32px;align-items:center}
.af-simple-row h3,.af-simple-row p{margin:0}
.af-simple-row a{font-weight:700;font-size:14px}
@media(max-width:1000px){.af-container{width:calc(100% - 48px)}.af-intro,.af-tab-panel,.af-outdoor .af-container,.af-video-story .af-container,.af-product-section .af-container,.af-estimate>.af-container{gap:36px}.af-explorer-head{align-items:start}.af-hero h1{font-size:60px!important}.af-hero{min-height:530px}.af-tabs button{flex-basis:30%}.ahi-flow .ahi-faq-section{gap:36px!important}.af-simple-row{grid-template-columns:1fr 1.3fr}.af-simple-row>a{grid-column:2}}
@media(max-width:760px){.af-container{width:calc(100% - 40px)}.af-hero{min-height:540px}.af-hero:after{background:linear-gradient(90deg,rgba(12,29,58,.91),rgba(12,29,58,.65))}.af-hero>img{object-position:65% 50%}.af-hero h1{font-size:48px!important;max-width:13ch}.af-hero .af-container{padding:55px 0}.af-hero p:not(.af-kicker){font-size:17px;max-width:38ch}.af-intro,.af-tab-panel,.af-outdoor .af-container,.af-video-story .af-container,.af-product-section .af-container,.af-estimate>.af-container,.af-heading-row{grid-template-columns:1fr!important;gap:28px}.af-intro{padding:50px 0}.af-explorer,.af-outdoor,.af-gallery-story,.af-video-story,.af-principles,.af-estimate,.af-full-gallery{padding:50px 0}.af-explorer-head{display:block}.af-explorer-head h2{margin-bottom:20px}.af-tabs{margin-bottom:28px}.af-tabs button{min-width:0;flex-basis:33.33%;font-size:12px;padding:16px 5px}.af-tab-panel img{height:310px}.af-tab-panel h3{font-size:31px}.af-outdoor-photo{padding:0 0 24px 24px}.af-outdoor-photo img{height:330px}.af-photo-grid{gap:18px}.af-photo-grid img{height:240px}.af-principles-grid{grid-template-columns:1fr;gap:12px}.af-principles-grid article{border-bottom:1px solid #d1ddea;padding:15px 0}.ahi-flow .ahi-faq-section{grid-template-columns:1fr!important}.af-faq-band{padding:50px 20px}.ahi-flow .ahi-faq-intro h2{max-width:none;font-size:34px!important}.af-estimate .ahi-form-card{padding:24px!important}.af-product-section{padding:45px 0}.af-product-section.af-reverse .af-product-copy{order:0}.af-product-section.af-reverse figure{order:0}.af-product-section figure img{height:310px}.af-bottom-cta .af-container{display:block}.af-bottom-cta .af-button{margin-top:25px}.af-section-jumps .af-container{gap:10px 22px}.af-service-nav .af-container{justify-content:start;gap:12px 25px}.af-simple-row{grid-template-columns:1fr;gap:12px}.af-simple-row>a{grid-column:auto}.af-estimate h2{max-width:none}}
@media(max-width:480px){.af-photo-grid{grid-template-columns:1fr}.af-photo-grid img{height:270px}.af-actions{gap:12px}.af-actions .af-button{padding:13px 18px}.af-points{grid-template-columns:1fr}.af-hero h1{font-size:43px!important}}
@media(prefers-reduced-motion:reduce){.ahi-flow *{transition:none!important;scroll-behavior:auto!important}}
