/* AFI editorial refinement: space, rhythm, and connected water forms. */
:root{--warm:#eee9df;--mist:#e7efeb;--sea:#174c52;--gold:#b2a17d}
body{background:#f8f8f2}h1,h2,h3{text-wrap:balance}p{ text-wrap:pretty}.site-header{height:94px}.hero{min-height:760px;position:relative}.hero-copy{padding-top:54px;padding-bottom:35px}.hero .eyebrow{max-width:550px;font-size:10px;line-height:2;letter-spacing:1.4px;margin-bottom:10px}.hero h1{font-size:clamp(64px,6.7vw,106px);letter-spacing:-5px;line-height:1.03;margin:33px 0}.hero-description{max-width:450px}.hero-visual{border-bottom-left-radius:120px;isolation:isolate}.hero-visual>img{filter:brightness(.88) saturate(.85);animation:hero-arrive 1.2s ease-out both}.hero-rings{position:absolute;z-index:2;right:-100px;top:-100px;width:360px;height:360px;border:1px solid #f3f6ed44;border-radius:50%;pointer-events:none}.hero-rings:before,.hero-rings:after{content:'';position:absolute;inset:28px;border:1px solid #f3f6ed33;border-radius:50%}.hero-rings:after{inset:56px}.hero-copy>*{animation:copy-arrive .8s ease both}.hero-copy>h1{animation-delay:.12s}.hero-description{animation-delay:.22s}.hero .button{animation-delay:.3s}.hero-foot{animation:none}.section-pad{padding-top:100px;padding-bottom:100px}.setting-perspective{background:var(--warm);padding-top:75px;padding-bottom:70px}.setting-heading{gap:30px}.setting-photos{gap:40px;align-items:start}.setting-photos figure:nth-child(2){padding-top:70px}.setting-photos a{height:360px;overflow:hidden}.setting-photos figure:first-child a{border-radius:4px 60px 4px 4px}.setting-photos figure:nth-child(2) a{border-radius:4px 4px 60px 4px}.setting-photos figcaption{display:flex;gap:10px;align-items:center}.setting-photos figcaption:before{content:'';width:25px;height:1px;background:var(--gold)}
.intro{gap:8%;padding-top:110px;padding-bottom:100px;background:linear-gradient(135deg,#f8f8f2 70%,#e7efeb)}.intro-context{max-width:290px}.intro-context .eyebrow{margin-bottom:50px}.system-map{display:block;width:100%;max-width:260px;color:#689b8d}.intro h2{font-size:clamp(38px,3.7vw,60px)}.intro div>p{font-size:16px;line-height:1.8;margin:0 0 18px}.whole-system-photo{margin-top:35px}.whole-system-photo a{overflow:hidden;border-radius:4px 4px 65px 4px}.whole-system-photo img{height:330px}.expertise{padding-bottom:60px}.section-heading>p:last-child{max-width:480px}.topic-links{border-block:1px solid var(--line);padding:20px 0;gap:0 22px;margin:10px 0 50px}.topic-links a{border:0;padding:10px 0;gap:14px;font-size:12px}.topic-links a span{color:#5c9687;transition:transform .2s}.topic-links a:hover{background:none;color:#267463}.topic-links a:hover span{transform:translate(3px,3px)}
.service-list{margin:0}.service-topic{padding:70px 3%;margin:0 -3%;border-top:0;position:relative;scroll-margin-top:30px}.service-topic:nth-of-type(2n){background:var(--mist);border-radius:8px 70px 8px 8px}.service-topic:nth-of-type(3n){background:#f0eee6;border-radius:65px 8px 8px 8px}.service-topic:last-child{border-bottom:0}.topic-heading{grid-template-columns:.9fr 1.15fr;gap:8%;max-width:none}.topic-title .number{display:block;color:#548276;font-size:10px;letter-spacing:1.2px;margin-bottom:22px;padding:0}.topic-heading h3{font-size:clamp(29px,3vw,44px);font-weight:400;line-height:1.15;max-width:390px;margin-bottom:22px;letter-spacing:-1.3px}.topic-label{font-size:9px;line-height:1.9;letter-spacing:1px;display:block;max-width:340px;color:#547c70}.topic-copy p{font-size:15px;line-height:1.8;margin-bottom:16px}.standards-references{font-size:11px!important}.service-examples{margin:34px 0 0;gap:24px}.featured-examples{grid-template-columns:1.2fr .8fr;grid-template-rows:auto auto;align-items:start}.featured-examples>figure:first-child{grid-row:span 2}.featured-examples img,.service-topic:nth-child(2n) .featured-examples img{height:200px;border-radius:4px}.featured-examples>figure:first-child img,.service-topic:nth-child(2n) .featured-examples>figure:first-child img{height:457px;border-radius:4px 4px 4px 48px}.service-examples a{overflow:hidden}.service-examples img{transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .4s}.service-examples a:hover img{transform:scale(1.035);filter:saturate(1.08)}.service-examples figcaption{font-size:11px;line-height:1.6;padding-top:10px;color:#5b6d6b}.restoration-examples{grid-template-columns:1fr 1fr;grid-template-rows:auto auto}.restoration-examples>figure:first-child{grid-row:auto}.restoration-examples>figure:nth-child(-n+2) img,.service-topic:nth-child(2n) .restoration-examples>figure:nth-child(-n+2) img{height:350px;object-fit:contain;background:#e7e5dc;border-radius:4px}.restoration-examples>figure:nth-child(n+3) img{height:220px;object-fit:cover}.chemistry-examples{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto}.chemistry-examples>figure:first-child{grid-row:auto}.chemistry-examples img,.chemistry-examples>figure:first-child img,.service-topic:nth-child(2n) .chemistry-examples img,.service-topic:nth-child(2n) .chemistry-examples>figure:first-child img{height:230px;border-radius:4px}
.photo-collection{border-top:1px solid #afc3b6;margin-top:28px;border-bottom:0!important}.photo-collection>summary{padding:19px 0;gap:20px;font-size:12px;min-height:62px}.photo-collection>summary small{font:10px monospace;color:#688075;margin-left:auto}.collection-toggle{font-size:23px;font-weight:400;width:25px;text-align:center;transition:transform .3s}.photo-collection[open] .collection-toggle{transform:rotate(45deg)}.collection-examples{grid-template-columns:repeat(3,minmax(0,1fr));margin:12px 0 30px}.collection-examples img,.service-topic:nth-child(2n) .collection-examples img{height:210px}.feature-video{margin:28px 0;max-width:760px}.feature-video video{border-radius:4px;max-height:400px}.perspective-band{background:var(--navy);color:var(--paper);margin:38px -6.82%;padding:65px 8%;border-radius:0 90px 0 0;position:relative;overflow:hidden;isolation:isolate;min-height:270px;display:flex;align-items:center}.perspective-band>div{position:relative;z-index:1}.perspective-band .eyebrow{font-size:9px;display:block;margin-bottom:20px}.perspective-band p{font-size:clamp(30px,3.8vw,55px);line-height:1.2;letter-spacing:-1.2px;margin:0}.perspective-band em{font-family:Georgia,serif;font-weight:400;color:var(--aqua)}.perspective-band svg{position:absolute;right:-20%;width:80%;bottom:0;opacity:.3;stroke:var(--aqua);stroke-width:1}.pale-band{background:#dce8df;color:var(--ink);border-radius:0 0 0 90px}.pale-band em{color:#3e766b}.pale-band svg{stroke:#7d9b80;opacity:.6}
#automation-monitoring{background:var(--sea);border-radius:70px 8px 8px 8px;color:#f4f5ef;padding:60px 4%;margin-top:35px;margin-bottom:35px}#automation-monitoring .topic-copy p{color:#d4e4df}#automation-monitoring .number,#automation-monitoring .topic-label{color:var(--aqua)}#automation-monitoring figcaption,#automation-monitoring summary small{color:#c1d8d1}#automation-monitoring .photo-collection{border-color:#70978d}#automation-monitoring .featured-examples>figure:first-child img{object-fit:contain;background:#12393d}.system-feature{border-radius:0 0 100px 0;overflow:hidden}.system-copy{padding:80px 12%}.approach{background:#f8f8f2}.steps{gap:36px}.steps article{border-bottom:1px solid var(--line);padding-bottom:25px}.steps img{height:220px;border-radius:4px 35px 4px 4px}.report{background:var(--warm);border-radius:90px 0 0 0}.report-sheet{box-shadow:0 25px 60px #173e3020;transition:transform .5s}.report-sheet:hover{transform:rotate(0)}.about-examples img{border-radius:4px 35px 4px 4px}.request{background:radial-gradient(ellipse at 0 100%,#205754,var(--navy) 70%);border-radius:90px 0 0 0}.button{border-radius:2px}.text-link span{transition:transform .2s}.text-link:hover span{transform:translate(3px,3px)}.scroll-progress{position:fixed;top:0;left:0;height:3px;background:#70bfa9;transform-origin:left;transform:scaleX(0);z-index:100;pointer-events:none;width:100%}
html.motion-ready [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}html.motion-ready [data-reveal].is-visible{opacity:1;transform:none}@keyframes copy-arrive{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}@keyframes hero-arrive{from{opacity:.4;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}
@media(min-width:1500px){.service-topic{padding-top:85px;padding-bottom:85px}.hero-copy{padding-top:70px}.featured-examples img,.service-topic:nth-child(2n) .featured-examples img{height:230px}.featured-examples>figure:first-child img,.service-topic:nth-child(2n) .featured-examples>figure:first-child img{height:517px}.restoration-examples>figure:nth-child(-n+2) img,.service-topic:nth-child(2n) .restoration-examples>figure:nth-child(-n+2) img{height:380px}.chemistry-examples img,.chemistry-examples>figure:first-child img,.service-topic:nth-child(2n) .chemistry-examples img,.service-topic:nth-child(2n) .chemistry-examples>figure:first-child img{height:240px}}
@media(max-width:1050px){.hero{min-height:720px}.hero h1{font-size:68px;letter-spacing:-3px}.hero-copy{padding:40px 7% 28px}.hero .eyebrow{font-size:9px}.setting-photos a{height:310px}.setting-photos{gap:24px}.intro{gap:6%}.topic-heading{gap:6%}.topic-heading h3{font-size:32px}.featured-examples img,.service-topic:nth-child(2n) .featured-examples img{height:170px}.featured-examples>figure:first-child img,.service-topic:nth-child(2n) .featured-examples>figure:first-child img{height:397px}.chemistry-examples img,.chemistry-examples>figure:first-child img,.service-topic:nth-child(2n) .chemistry-examples img,.service-topic:nth-child(2n) .chemistry-examples>figure:first-child img{height:190px}.restoration-examples>figure:nth-child(-n+2) img,.service-topic:nth-child(2n) .restoration-examples>figure:nth-child(-n+2) img{height:300px}.collection-examples{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.site-header{height:82px}.hero{min-height:0}.hero-copy{padding:34px 7% 28px}.hero .eyebrow{font-size:8px;line-height:1.9;letter-spacing:.8px}.hero h1{font-size:clamp(53px,13.2vw,80px);line-height:1.04;letter-spacing:-3px;margin:25px 0}.hero-description{font-size:15px;line-height:1.7}.hero-visual{min-height:340px;max-height:400px;border-bottom-left-radius:70px}.hero-rings{width:230px;height:230px;top:-65px;right:-65px}.setting-perspective{padding:50px 7%}.setting-heading>p:last-child{font-size:14px}.setting-photos{gap:24px}.setting-photos figure:nth-child(2){padding-top:0;padding-left:30px}.setting-photos figure:first-child{padding-right:30px}.setting-photos a{height:auto}.setting-photos img{aspect-ratio:1.35;object-fit:cover}.intro{padding:65px 7%}.intro-context{max-width:none;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.intro-context .eyebrow{margin:0;max-width:140px}.system-map{width:115px;flex-shrink:0}.intro h2{font-size:37px}.intro div>p{font-size:15px}.whole-system-photo img{height:250px}.whole-system-photo a{border-radius:4px 4px 45px 4px}.section-pad{padding:60px 7%}.topic-links{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.topic-links a{font-size:11px;line-height:1.5;min-height:45px}.service-topic{margin:0 -3%;padding:40px 3%;border-radius:4px!important}.topic-heading{display:block}.topic-title{margin-bottom:24px}.topic-title .number{font-size:9px;margin-bottom:17px}.topic-heading h3{font-size:30px;margin-bottom:16px;max-width:330px}.topic-label{font-size:8px;line-height:1.9;max-width:100%}.topic-copy p{font-size:14px;line-height:1.8}.featured-examples{grid-template-columns:1fr 1fr;gap:20px 14px;margin-top:25px}.featured-examples>figure:first-child{grid-column:1/-1;grid-row:auto}.featured-examples img,.service-topic:nth-child(2n) .featured-examples img{height:140px;max-height:none}.featured-examples>figure:first-child img,.service-topic:nth-child(2n) .featured-examples>figure:first-child img{height:260px;border-radius:4px 4px 4px 35px}.featured-examples figcaption{font-size:10px;line-height:1.5}.restoration-examples>figure:first-child{grid-column:auto}.restoration-examples>figure:nth-child(-n+2) img,.service-topic:nth-child(2n) .restoration-examples>figure:nth-child(-n+2) img{height:230px;object-fit:contain;border-radius:3px}.restoration-examples>figure:nth-child(n+3) img{height:130px}.chemistry-examples{grid-template-columns:1fr 1fr}.chemistry-examples>figure:first-child{grid-column:auto;grid-row:auto}.chemistry-examples img,.chemistry-examples>figure:first-child img,.service-topic:nth-child(2n) .chemistry-examples img,.service-topic:nth-child(2n) .chemistry-examples>figure:first-child img{height:160px;border-radius:3px}.photo-collection>summary{gap:10px;font-size:11px;flex-wrap:wrap}.photo-collection>summary small{font-size:9px;margin-left:0;order:3;width:100%}.collection-toggle{margin-left:auto}.collection-examples{grid-template-columns:1fr 1fr;gap:22px 14px}.collection-examples img,.service-topic:nth-child(2n) .collection-examples img{height:150px}.collection-examples figcaption{font-size:10px}.perspective-band{margin:25px -8.15%;padding:45px 9%;min-height:230px;border-radius:0 55px 0 0}.perspective-band p{font-size:32px;letter-spacing:-.8px}.perspective-band svg{width:150%;right:-65%;opacity:.2}.pale-band{border-radius:0 0 0 55px}#automation-monitoring{padding:40px 5%;margin:25px -5%;border-radius:35px 4px 4px 4px!important}.system-feature{border-bottom-right-radius:60px}.system-copy{padding:55px 7%}.system-photo{min-height:320px}.report{border-radius:55px 0 0 0}.request{border-radius:55px 0 0 0}.report-sheet{max-width:440px}.steps img{height:230px}.steps article{margin-bottom:35px}.about-examples img{height:250px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}html.motion-ready [data-reveal]{opacity:1;transform:none}}

html{scroll-behavior:auto}

#service-3 .featured-examples>figure:first-child img{object-fit:contain;background:#e6e8e3} .service-examples figcaption small{display:block;font-size:10px}.service-examples figcaption a{display:inline;text-decoration:underline}

/* Consulting rates and free introduction */
.rates{background:#e8eee7;border-radius:70px 0 0 0}.rates-heading{display:grid;grid-template-columns:.65fr 1.5fr 1fr;gap:36px;align-items:start;margin-bottom:42px}.rates-heading h2{font-size:clamp(35px,3.5vw,55px);line-height:1.14;font-weight:400;letter-spacing:-1.5px;margin:0}.rates-heading>p:last-child{font-size:15px;line-height:1.8}.rate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.rate-card{padding:32px;background:#f9faf5;border-radius:4px 32px 4px 4px;display:flex;flex-direction:column;align-items:start}.rate-card.intro-rate{background:#173e42;color:#f5f6ee}.rate-kicker{display:block;font-size:9px;letter-spacing:1.25px;line-height:1.8;color:#50796f;margin-bottom:17px}.intro-rate .rate-kicker{color:#b3d7cb}.rate-card h3{font-size:25px;line-height:1.2;font-weight:400;margin:0 0 23px}.rate-card p{font-size:14px;line-height:1.8;margin:0 0 16px}.rate-card .rate-price{font-size:37px;line-height:1.2;letter-spacing:-1px;margin-bottom:24px}.rate-price span{display:block;font-size:11px;line-height:1.6;letter-spacing:0;margin-top:7px}.rate-card .text-link{margin-top:auto;font-size:12px;padding-top:18px}.onsite-definition{margin-top:30px;padding:25px 0 0;border-top:1px solid #aec2b8;display:grid;grid-template-columns:.65fr 1.5fr 1fr;gap:36px}.onsite-definition p{font-size:13px;line-height:1.8;margin:0}.rates .text-link{color:inherit}
@media(max-width:1050px){.rates-heading,.onsite-definition{grid-template-columns:1fr 2fr}.rates-heading>p:last-child,.onsite-definition>p:last-child{grid-column:2}.rate-card{padding:24px}.rate-card .rate-price{font-size:31px}}
@media(max-width:720px){.rates{border-radius:45px 0 0 0}.rates-heading,.onsite-definition{display:block}.rates-heading h2{font-size:37px;margin:22px 0}.rates-heading{margin-bottom:28px}.rate-grid{grid-template-columns:1fr;gap:16px}.rate-card{padding:28px}.rate-card .rate-price{font-size:35px}.onsite-definition p{margin-bottom:15px}.rates-heading>p:last-child{font-size:14px}}

/* Full-frame photography: scale images without cropping any source edges. */
img{object-fit:contain!important;object-position:center!important}.service-examples a:hover img,.hero-visual>img{transform:none!important}.hero-visual>img{animation:none!important}.hero-visual{background:#173d42}.service-examples img{background:#eef0e9}.service-examples a{display:block}#automation-monitoring .service-examples img{background:#12393d}.expanded-featured{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto;align-items:start;gap:28px}.expanded-featured>figure:first-child{grid-row:auto;grid-column:auto}.expanded-featured img,.expanded-featured>figure:first-child img,.service-topic:nth-child(2n) .expanded-featured img,.service-topic:nth-child(2n) .expanded-featured>figure:first-child img{height:280px!important;border-radius:4px 25px 4px 4px!important;object-fit:contain!important}.expanded-featured figcaption{min-height:42px}#automation-monitoring .expanded-featured>figure:first-child img{background:#12393d}.setting-photos img,.about-examples img,.steps img,.whole-system-photo img,.system-photo{object-fit:contain!important}.section-addition-note{font-size:11px}
@media(max-width:1050px){.expanded-featured img,.expanded-featured>figure:first-child img,.service-topic:nth-child(2n) .expanded-featured img,.service-topic:nth-child(2n) .expanded-featured>figure:first-child img{height:230px!important}}
@media(max-width:720px){.expanded-featured{grid-template-columns:1fr 1fr;gap:23px 14px}.expanded-featured>figure:first-child{grid-column:1/-1}.expanded-featured img,.expanded-featured>figure:first-child img,.service-topic:nth-child(2n) .expanded-featured img,.service-topic:nth-child(2n) .expanded-featured>figure:first-child img{height:185px!important}.expanded-featured>figure:first-child img,.service-topic:nth-child(2n) .expanded-featured>figure:first-child img{height:280px!important}.expanded-featured figcaption{min-height:0}}

#fountains-water-features .expanded-featured{grid-template-columns:repeat(2,minmax(0,1fr))}#service-3 .featured-examples .feature-video{margin:0}#service-3 .featured-examples video{height:100%;max-height:440px;object-fit:contain}

#service-4 .expanded-featured{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:720px){#service-4 .expanded-featured>figure:first-child{grid-column:auto}}

/* Color water-refraction logo from the AFI logo chat. */
.site-header{height:132px}.brand{flex-shrink:0}.brand .afi-logo{display:block;width:230px;height:auto;object-fit:contain;background:#fff;border-radius:4px}.footer-brand .afi-logo{width:240px}footer .brand{padding:8px;background:#fff;border-radius:4px}
@media(max-width:1050px){.site-header{height:118px}.brand .afi-logo{width:195px}.site-header nav{gap:15px}}
@media(max-width:720px){.site-header{height:108px}.brand .afi-logo{width:180px;max-width:50vw}.site-header nav{top:108px}.footer-brand .afi-logo{width:220px}}
