/* FLOW 02 pilot. Scoped to the replacement fragment; shared site UI is untouched. */
/* Approved 01 artwork only. Preserve the uploaded PNG; crop transparent canvas in presentation. */
.sf02 .sf02-copy>.sf02-eyebrow--art{display:block;width:min(100%,380px);aspect-ratio:6.2;overflow:hidden;line-height:1;letter-spacing:0}
.sf02 .sf02-copy>.sf02-eyebrow--art img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 43%;color:#21677a;font-size:14px}
/* End approved 01 artwork. */
.sf02{--paper:#f7faf8;--ink:#193e48;--muted:#49666d;--blue:#21677a;--blue-shadow:#103f4e;--mint:#dbece3;--line:#afcbc1;--gutter:clamp(24px,3.34vw,64px);--photo-w:min(39vw,680px);--photo-h:min(38vw,585px);--curve-h:136px;--ease:cubic-bezier(.2,.7,.22,1);position:relative;isolation:isolate;width:100%;max-width:none;margin:0;color:var(--ink);background:var(--paper);font-family:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:16px;font-weight:500;line-height:1.9;overflow:clip}
.sf02,.sf02 *{box-sizing:border-box}.sf02 h1,.sf02 h2,.sf02 h3,.sf02 p,.sf02 figure{margin:0}.sf02 a{color:inherit;text-decoration:none}.sf02 em{font-style:normal;color:#18799a}.sf02 button{font:inherit}.sf02 a,.sf02 button{-webkit-tap-highlight-color:transparent}.sf02 a:focus-visible,.sf02 button:focus-visible{outline:3px solid #21677a;outline-offset:7px}.sf02 [hidden]{display:none!important}
.sf02-hero{position:relative;isolation:isolate;min-height:960px;overflow:clip;background:var(--paper)}
.sf02-surface{position:absolute;inset:0;width:100%;height:100%;z-index:-2;pointer-events:none}.sf02-photo{position:absolute;width:var(--photo-w);height:var(--photo-h);z-index:1;pointer-events:none;transform:translateY(var(--parallax,0px))}.sf02-arrival,.sf02-drift,.sf02-mask{height:100%;width:100%;position:relative}.sf02-mask{mask:var(--mask) center/100% 100% no-repeat;-webkit-mask:var(--mask) center/100% 100% no-repeat;overflow:hidden}.sf02-photo .sf02-arrival::before{content:"";position:absolute;inset:-12px -14px 0 0;background:#dbece3;mask:var(--mask) center/100% 100% no-repeat;-webkit-mask:var(--mask) center/100% 100% no-repeat}.sf02-photo img{display:block;width:100%;height:100%;object-fit:cover;max-width:none}
.sf02-photo--kitchen{--mask:url('./assets/photo-mask-leaf.svg');left:-9.5%;top:60px}.sf02-photo--kitchen img{object-position:60% 50%}.sf02-photo--kitchen .sf02-arrival::before{background:#e4f2f4;inset:0 -18px -5px 6px}
.sf02-photo--bath{--mask:url('./assets/photo-mask-lagoon.svg');right:-9.5%;top:264px}.sf02-photo--bath img{object-position:39% 50%}.sf02-photo--wash{--mask:url('./assets/photo-mask-leaf.svg');left:5.5%;top:630px;width:225px;height:208px;transform:rotate(5deg)}.sf02-photo--wash img{object-position:54% 50%;transform:rotate(-5deg) scale(1.1)}.sf02-photo--wash .sf02-arrival::before{display:none}
.sf02-copy{position:relative;z-index:3;margin-left:31%;padding-top:198px;width:43%;max-width:620px}.sf02-eyebrow{display:flex;align-items:center;gap:15px;font-size:13px;line-height:1.5;letter-spacing:.13em;font-weight:700;color:var(--ink)}.sf02-eyebrow>span{flex:none;width:7px;height:7px;border-radius:50%;background:#548d76}.sf02 h1{margin-top:30px;font-size:clamp(40px,3.9vw,62px);font-weight:700;line-height:1.52;letter-spacing:.035em}.sf02 h1>span{display:block}.sf02-lead{margin-top:28px!important;font-size:20px;line-height:1.85;letter-spacing:.06em}.sf02-hero-actions{margin-top:30px;display:flex;flex-direction:column;align-items:flex-start;gap:22px}.sf02-phone{font-size:15px;line-height:1.8;color:var(--muted)}.sf02-phone a{display:inline-block;text-decoration:underline;text-decoration-color:#afcbc1;text-underline-offset:4px}.sf02-phone small{display:block;font-size:13px;margin-top:3px}.sf02-phone span{white-space:nowrap}
.sf02-button{display:inline-block;max-width:100%;padding-block:3px 12px;border-radius:999px;position:relative;font-weight:700;font-size:16px;line-height:1.4}.sf02-button-face{--face:#21677a;--solid:#103f4e;display:flex;align-items:center;justify-content:space-between;gap:26px;min-height:66px;padding:9px 9px 9px 30px;border:1px solid #ffffff29;border-radius:999px;background:var(--face);color:#fff;box-shadow:0 6px 0 var(--solid),0 12px 20px #21677a26,inset 0 1px 0 #ffffff26;transition:transform .24s var(--ease),box-shadow .24s var(--ease)}.sf02-arrow{display:grid;place-items:center;flex:0 0 46px;height:46px;border:1px solid #ffffff66;border-radius:50%;font-family:Arial,sans-serif;font-size:24px;font-weight:400;background:#ffffff0a;transition:transform .24s var(--ease)}.sf02-button--mint .sf02-button-face{--face:#e8f2eb;--solid:#8dab9d;color:#154e60;border-color:#b5d0c2;box-shadow:0 6px 0 var(--solid),0 12px 20px #8dab9d26,inset 0 1px 0 #ffffff66}.sf02-button--mint .sf02-arrow{background:#d4e6db;border-color:#b1ccbd}
@media(hover:hover){.sf02-button:hover .sf02-button-face{transform:translateY(-2px);box-shadow:0 8px 0 var(--solid),0 14px 24px #21677a26,inset 0 1px 0 #ffffff26}.sf02-button--mint:hover .sf02-button-face{box-shadow:0 8px 0 var(--solid),0 14px 24px #8dab9d33,inset 0 1px 0 #ffffff66}.sf02-button:hover .sf02-arrow{transform:translateX(2px)}}
.sf02-button:active .sf02-button-face{transform:translateY(4px);box-shadow:0 2px 0 var(--solid),0 5px 10px #21677a1a;transition-duration:.1s}.sf02-button--mint:active .sf02-button-face{box-shadow:0 2px 0 var(--solid),0 5px 10px #8dab9d26}.sf02-button:active .sf02-arrow{transform:none}
.sf02-thread{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}.sf02-thread path{fill:none;stroke:#90bfae;stroke-width:1.1;vector-effect:non-scaling-stroke}.sf02-bottom{position:absolute;bottom:100px;left:var(--gutter);right:var(--gutter);z-index:4;display:flex;align-items:center;gap:30px;color:var(--muted);font-size:14px}.sf02-bottom p{margin-left:calc(31% - var(--gutter) - 170px)}.sf02-scroll{font-size:10px;letter-spacing:.14em;display:flex;align-items:center;gap:15px;min-height:44px}.sf02-scroll span{height:35px;width:1px;background:#548d76}.sf02-motion{margin-left:auto;border:1px solid #91b4a6;padding:9px 16px;border-radius:99px;background:#f7faf8ed;color:#193e48;min-height:44px;cursor:pointer;font-size:14px!important}.sf02-motion:disabled{cursor:default}
.sf02-divider{height:var(--curve-h);position:absolute;left:-1px;bottom:-1px;width:calc(100% + 2px);mask:url('./assets/divider-coast.svg') center/100% 100% no-repeat;-webkit-mask:url('./assets/divider-coast.svg') center/100% 100% no-repeat;pointer-events:none;z-index:2}.sf02-divider--mint{background:var(--mint)}.sf02-divider--paper{background:var(--paper)}
.sf02-guide{position:relative;background:var(--mint);padding:45px var(--gutter) calc(var(--curve-h) + 32px);scroll-margin-top:100px}.sf02-guide-inner{max-width:1344px;margin-inline:auto;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:55px 80px}.sf02-guide-copy h2{font-size:clamp(28px,2.5vw,38px);font-weight:700;line-height:1.65;letter-spacing:.035em;margin:28px 0 23px}.sf02-guide-copy h2 span{display:block}.sf02-guide-copy>p:not(.sf02-eyebrow){font-size:16px;max-width:32em;line-height:2}.sf02-text-link{display:inline-flex;align-items:center;gap:14px;font-size:15px;min-height:44px;margin-top:20px;border-bottom:1px solid #548d76}.sf02-text-link>span{font-size:20px}
/* Equipment anchors: circular existing photos and a clearly pressable card. */
.sf02-equipment{--equipment-photo:clamp(70px,6vw,90px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-content:start;margin-top:4px;padding-bottom:6px}
.sf02-equipment>a{display:grid;grid-template-columns:var(--equipment-photo) minmax(0,1fr);align-items:center;position:relative;gap:14px;padding:22px 18px;min-width:0;border:1px solid #9dbeb0;border-radius:26px 26px 32px 26px;background:#fff;box-shadow:0 4px 0 #a8c6b7,0 10px 20px #21677a0d;cursor:pointer;transition:background .24s var(--ease),border-color .24s var(--ease),box-shadow .24s var(--ease)}
.sf02-equipment-photo{display:block;position:relative;align-self:center;width:var(--equipment-photo);height:var(--equipment-photo);aspect-ratio:1;border:3px solid #fff;border-radius:50%;background:#e8f2eb;box-shadow:0 0 0 1px #a6c5b5,3px 4px 0 #c3dcd0;pointer-events:none}
.sf02-equipment-photo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%;object-position:var(--equipment-position,50% 50%)}
.sf02-equipment-photo--kitchen{--equipment-position:60% 50%}.sf02-equipment-photo--bath{--equipment-position:39% 50%}.sf02-equipment-photo--washroom{--equipment-position:54% 50%}.sf02-equipment-photo--laundry{--equipment-position:55% 35%}
.sf02-equipment .sf02-item-num{position:absolute;left:-3px;bottom:-5px;display:grid;place-items:center;min-width:26px;height:26px;padding:0 4px;border:2px solid #fff;border-radius:50%;background:#21677a;color:#fff;font-size:11px;line-height:1;font-weight:700}
.sf02-item-text{display:flex;flex-direction:column;min-width:0}.sf02-item-text strong{font-size:22px;line-height:1.5;font-weight:700}.sf02-item-text>span{font-size:15px;line-height:1.8;margin:10px 0 14px}.sf02-item-text small{display:flex;flex-wrap:wrap;align-items:center;min-height:32px;padding-right:32px;font-size:13px;font-weight:700;line-height:1.65;color:#21677a}.sf02-item-text small>span{white-space:nowrap}
.sf02-small-arrow{position:absolute;right:18px;bottom:22px;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#21677a;color:#fff;border:1px solid #21677a;box-shadow:0 2px 0 #103f4e;font-size:19px;line-height:1;transition:transform .24s var(--ease)}
.sf02 .sf02-equipment>a:focus-visible{outline:3px solid #21677a;outline-offset:6px}
.sf02 .sf02-equipment>a:active{background:#edf5f0;box-shadow:0 2px 0 #8dab9d,0 4px 10px #21677a0d}.sf02 .sf02-equipment>a:active .sf02-small-arrow{transform:translateY(1px)}
@media(hover:hover){.sf02-equipment>a:hover{background:#f6fbf8;border-color:#548d76;box-shadow:0 6px 0 #8dab9d,0 14px 24px #21677a14}.sf02-equipment>a:hover .sf02-small-arrow{transform:translateY(2px)}.sf02-text-link:hover,.sf02-other a:hover{color:#21677a}}
.sf02-help{grid-column:1/-1;border-top:1px solid var(--line);padding-top:32px;display:flex;align-items:center;justify-content:space-between;gap:30px}.sf02-help h3{font-size:22px;font-weight:700;line-height:1.65}.sf02-help p{font-size:16px;color:var(--muted);margin-top:12px;line-height:1.9}.sf02-other{grid-column:1/-1;font-size:15px;line-height:2.1;display:flex;gap:20px 45px;flex-wrap:wrap}.sf02-other a{text-decoration:underline;text-underline-offset:5px;text-decoration-color:#759d89}
.sf02 h1,.sf02 h2,.sf02 h3{color:var(--ink);font-family:inherit}
.sf02-types>span{white-space:nowrap}
.sf02-help h3>span,.sf02-other a{display:inline-block}
/* Only generated pilot targets receive this marker. */
/* Preserve the existing header UI; only this preview uses its existing compact
   navigation before the desktop links would collide at tablet widths. */
@media(min-width:768px) and (max-width:1100px){body.page-template-page-service-equip-faucet:has(#flow02-preview) #navbar>.hidden.md\:flex{display:none}body.page-template-page-service-equip-faucet:has(#flow02-preview) #menu-toggle{display:block}body.page-template-page-service-equip-faucet:has(#flow02-preview) #mobile-menu.block{display:block}}
[data-flow02-target]{scroll-margin-top:110px}[data-flow02-target]:focus{outline:3px solid #548d76;outline-offset:6px}
.sf02.is-ready:not(.is-stopped):not(.is-introduced) .sf02-arrival{animation:sf02-arrive 1.45s var(--ease) both}.sf02.is-ready:not(.is-stopped):not(.is-introduced) .sf02-photo--bath .sf02-arrival{animation-duration:1.6s;animation-delay:.08s}.sf02.is-ready:not(.is-stopped):not(.is-introduced) h1>span{animation:sf02-heading .85s var(--ease) both}.sf02.is-ready:not(.is-stopped):not(.is-introduced) h1>span+span{animation-delay:.1s}.sf02.is-ready:not(.is-stopped):not(.is-introduced) .sf02-thread path{animation:sf02-line 2.6s var(--ease) both}
@keyframes sf02-arrive{from{opacity:.72;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}@keyframes sf02-heading{from{transform:translateY(7px)}to{transform:none}}@keyframes sf02-line{from{stroke-dasharray:1;stroke-dashoffset:1}to{stroke-dasharray:1;stroke-dashoffset:0}}@keyframes sf02-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@media(min-width:1001px) and (prefers-reduced-motion:no-preference){.sf02.is-ready:not(.is-stopped) .sf02-drift{animation:sf02-breathe 14s ease-in-out 1.45s infinite}.sf02.is-ready:not(.is-stopped) .sf02-photo--bath .sf02-drift{animation-duration:17s}}
.sf02.is-sleeping .sf02-drift,.sf02.is-sleeping .sf02-arrival,.sf02.is-sleeping .sf02-thread path{animation-play-state:paused!important}.sf02.is-stopped .sf02-photo:not(.sf02-photo--wash){transform:none!important}.sf02.is-stopped *{animation:none!important;transition:none!important}
@media(min-width:1680px){.sf02-hero{min-height:1010px}.sf02-photo--kitchen{left:calc(50% - 1010px);top:65px}.sf02-photo--bath{right:calc(50% - 950px);top:255px}.sf02-copy{margin-left:calc(50% - 278px);padding-top:204px;width:655px}.sf02-photo--wash{left:calc(50% - 686px);top:688px}.sf02-bottom p{margin-left:calc(50% - 430px)}}
@media(max-width:1220px) and (min-width:1001px){.sf02{--photo-w:40vw;--photo-h:43vw}.sf02-hero{min-height:900px}.sf02-photo--kitchen{left:-10%;top:53px}.sf02-photo--bath{right:-11%;top:266px}.sf02-copy{padding-top:177px;width:48%}.sf02 h1{font-size:43px}.sf02-photo--wash{left:4%;top:606px;width:195px;height:190px}.sf02-guide-inner{gap:44px}.sf02-equipment{gap:16px}.sf02-equipment>a{gap:12px;padding:20px 16px}.sf02-item-text strong{font-size:20px}.sf02-small-arrow{right:16px;bottom:20px}}
@media(max-width:1000px) and (min-width:681px){.sf02{--photo-w:42vw;--photo-h:43vw;--curve-h:110px}.sf02-hero{min-height:910px}.sf02-photo--kitchen{left:-11.5%;top:33px}.sf02-photo--bath{right:-10%;top:326px}.sf02-copy{margin-left:32%;padding-top:175px;width:62%;max-width:none}.sf02 h1{font-size:42px}.sf02-photo--wash{left:1%;top:595px;width:190px;height:177px}.sf02-lead{font-size:18px}.sf02-button{font-size:15px}.sf02-button-face{gap:16px;padding-left:24px}.sf02-bottom{bottom:100px}.sf02-bottom p{display:none}.sf02-guide-inner{grid-template-columns:1fr;gap:35px}.sf02-guide-copy{display:grid;grid-template-columns:1fr 1fr;gap:20px 40px}.sf02-guide-copy .sf02-eyebrow{grid-column:1/-1}.sf02-guide-copy h2{grid-row:2/4;margin:0}.sf02-guide-copy .sf02-text-link{justify-self:start;margin:0}.sf02-equipment>a{padding:22px 18px}.sf02-other{gap:6px}.sf02-help h3{font-size:20px}.sf02-help p{font-size:15px}}
@media(max-width:800px) and (min-width:681px){.sf02-photo--bath{right:-14%;top:345px}.sf02-copy{padding-top:155px}.sf02 h1{font-size:38px}}
@media(max-width:680px){.sf02{--photo-w:63vw;--photo-h:60vw;--gutter:26px;--curve-h:75px}.sf02-hero{min-height:0}.sf02-photo--kitchen{left:-8%;top:96px}.sf02-photo--bath{right:-9%;top:calc(96px + 15vw)}.sf02-photo--kitchen img{object-position:59% 50%}.sf02-photo--bath img{object-position:39% 50%}.sf02-photo--wash{display:none}.sf02-copy{width:auto;max-width:none;margin-inline:var(--gutter);padding-top:calc(124px + 75vw);padding-bottom:160px}.sf02-eyebrow{font-size:12px;gap:12px;letter-spacing:.12em}.sf02 h1{font-size:clamp(32px,8.6vw,48px);line-height:1.55;margin-top:20px;letter-spacing:.035em}.sf02-lead{font-size:18px;line-height:1.9;margin-top:22px!important}.sf02-hero-actions{margin-top:24px;gap:18px}.sf02-button{font-size:15px;width:auto;min-width:min(100%,292px)}.sf02-button-face{gap:15px;min-height:62px;padding:8px 8px 8px 25px}.sf02-arrow{flex-basis:42px;height:42px}.sf02-phone{font-size:14px}.sf02-phone small{font-size:13px}.sf02-bottom{bottom:76px;gap:12px;left:var(--gutter);right:var(--gutter)}.sf02-bottom p{display:none}.sf02-scroll{font-size:9px;gap:10px}.sf02-motion{font-size:13px!important;min-height:44px;padding:8px 12px}.sf02-thread{top:auto;bottom:45px;height:300px}.sf02-guide{padding-top:34px;padding-bottom:calc(var(--curve-h) + 24px)}.sf02-guide-inner{display:flex;flex-direction:column;gap:30px}.sf02-guide-copy h2{font-size:29px;margin:22px 0 20px}.sf02-guide-copy>p:not(.sf02-eyebrow){font-size:16px}.sf02-text-link{font-size:15px;margin-top:18px;gap:8px}.sf02-equipment{--equipment-photo:clamp(72px,21vw,90px);grid-template-columns:1fr;margin:0;gap:18px}.sf02-equipment>a{padding:22px 16px;gap:16px}.sf02-item-text strong{font-size:21px}.sf02-item-text>span{font-size:15px;margin:6px 0 7px}.sf02-item-text small{font-size:13px}.sf02-small-arrow{right:16px;bottom:22px}.sf02-help{display:block;padding-top:28px}.sf02-help h3{font-size:21px}.sf02-help p{font-size:15px}.sf02-help .sf02-button{margin-top:23px}.sf02-other{display:block;font-size:15px}.sf02-other p+p{margin-top:15px}}
@media(max-width:374px){.sf02{--gutter:22px}.sf02 h1{font-size:32px}.sf02-button{font-size:15px;min-width:0;max-width:100%}.sf02-button-face{padding-left:20px;gap:16px}.sf02-guide-copy h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){.sf02 *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.sf02-photo:not(.sf02-photo--wash){transform:none!important}}
