/* Approved FLOW02 vocabulary. Strictly isolated from other pages. */
.fd-page .fd-breadcrumbs{padding-block:16px 8px;font-size:15px;line-height:1.7;color:#47656e}.fd-page .fd-breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:2px 12px;list-style:none;padding:0;margin:0}.fd-page .fd-breadcrumbs li{display:flex;align-items:baseline;gap:12px;max-width:100%;margin:0}.fd-page .fd-breadcrumbs a{display:inline-flex;align-items:center;min-height:44px;color:#276b7c;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.fd-page .fd-crumb-current{overflow-wrap:anywhere;padding-block:9px}.fd-page .fd-crumb-separator{flex:none;color:#6a909a}.fd-page .fd-breadcrumbs+div#fd-introduction{padding-top:20px}
.fd-directory summary.symptom-summary{display:block;padding:23px 65px 23px 25px}.fd-directory .symptom-summary .sc-icon{display:none}.fd-directory .symptom-summary .sc-text{display:block;margin:0;font:700 18px/1.65 'Zen Kaku Gothic New',sans-serif;color:var(--ink)}
.fd-directory .fd-search-controls{padding-block:28px 40px}.fd-directory .symptom-search-wrap{display:flex;align-items:center;gap:16px;border:2px solid #91bdcc;border-radius:18px;background:white;padding:14px 20px;margin-bottom:24px}.fd-directory #symptom-search{min-height:48px;width:100%;border:0;background:transparent;font:inherit;color:var(--ink)}.fd-directory .symptom-tabs{display:flex;gap:14px;flex-wrap:wrap}.fd-directory .symptom-tab{min-height:52px;border:1px solid #9bbfcb;border-radius:16px;padding:12px 20px;background:white;color:var(--ink);font:inherit;font-weight:700;box-shadow:0 4px 0 #b9d4de}.fd-directory .symptom-tab[aria-pressed=true]{background:#21677a;color:white;box-shadow:0 4px 0 #103f4e}.fd-directory #symptom-no-results{padding:30px var(--gutter)}.fd-directory .symptom-group-label i{display:none}.fd-page details>p{padding:0 25px 25px}.fd-page .works-slider-track{display:flex;gap:24px;overflow-x:auto;padding:14px 10px 26px;scroll-snap-type:x proximity}.fd-page .works-slider-track>*{flex:0 0 min(82vw,350px);scroll-snap-align:start}.fd-page :is(.works-nav-prev,.works-nav-next){min-width:48px;min-height:48px;border:1px solid #9bbfcb;border-radius:50%;background:white;color:#21677a}
.fd-page .fd-title-unit{display:inline-block;max-width:100%}
/* Published records and price hierarchy are independent of decorative masks. */
.fd-page .fd-price{font-weight:700;font-size:clamp(22px,2.3vw,30px);color:#185a70;line-height:1.55;margin-block:18px}
.fd-page .fd-record{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:36px;align-items:center;background:white;border:1px solid var(--line);border-radius:30px 64px 30px 30px;padding:30px;margin-block:32px;box-shadow:6px 8px 0 #bed9df}
.fd-page .fd-record figure{margin:0}.fd-page .fd-record img{width:100%;height:auto;border-radius:22px 58px 22px 22px;box-shadow:5px 7px 0 #92bdc9}.fd-page .fd-record figcaption{font-size:14px;margin-top:16px}.fd-page .fd-record dl{margin-block:20px}.fd-page .fd-record dt{font-weight:700;color:var(--ink);margin-top:16px}.fd-page .fd-record dd{margin-top:4px}
@media(max-width:767px){.fd-page .fd-record{grid-template-columns:1fr;gap:20px;padding:23px}}

main.fd-page{--ink:#174652;--body:#385963;--blue:#21677a;--sky:#eaf5fc;--aqua:#edf8f5;--line:#bddce3;--gutter:clamp(22px,4.6vw,76px);width:100%!important;max-width:none!important;margin:0!important;padding:0!important;font:500 16px/1.9 'Zen Kaku Gothic New',sans-serif;color:var(--body);background:#fff;isolation:isolate;overflow:clip}
.fd-page *{box-sizing:border-box;min-width:0}.fd-page :where(p,figure,h1,h2,h3,h4,ul,ol,dl,dd){margin:0}.fd-page :where(h1,h2,h3,h4){color:var(--ink);font-family:inherit;font-weight:700;line-height:1.6;text-wrap:pretty;overflow-wrap:anywhere}.fd-page h1{font-size:clamp(32px,3.5vw,52px);letter-spacing:.035em}.fd-page h2{font-size:clamp(25px,2.4vw,36px);margin-block:16px 28px}.fd-page h3{font-size:clamp(19px,1.65vw,24px);margin-block:12px}.fd-page h4{font-size:18px;margin-block:10px}.fd-page :where(p+*,ul+*,ol+*,table+*,dl+*){margin-top:18px}.fd-page ul,.fd-page ol{padding-left:1.45em}.fd-page li+li{margin-top:9px}.fd-page p{max-width:80ch;overflow-wrap:anywhere}.fd-page img{display:block;max-width:100%;height:auto}.fd-page a{color:#0b6287;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}.fd-page :where(a,button,summary){-webkit-tap-highlight-color:transparent}.fd-page :focus-visible{outline:3px solid #157bb7;outline-offset:5px}.fd-page :where([id],section){scroll-margin-top:100px}.fd-page [hidden]{display:none!important}
.fd-shell{width:min(100%,1480px);margin-inline:auto;padding-inline:var(--gutter);position:relative;z-index:2}.fd-page>div:not(.wpcf7){max-width:none}.fd-section{position:relative;padding-block:clamp(66px,7vw,110px);isolation:isolate;display:flow-root}.fd-tone-white{background:#fff}.fd-tone-sky{background:var(--sky)}.fd-tone-aqua{background:var(--aqua)}.fd-section.fd-tone-sky:before,.fd-section.fd-tone-aqua:before{content:'';position:absolute;z-index:0;top:-44px;left:-1px;width:calc(100% + 2px);height:46px;background:inherit;mask:url('/flow02/hub/assets/divider-coast.svg') center/100% 100% no-repeat;pointer-events:none}.fd-section .fd-shell>.fd-shell{padding:0}.fd-section:after{content:'';display:table;clear:both}
.fd-page .fd-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch;margin-block:26px}.fd-page .fd-grid[data-columns='3']{grid-template-columns:repeat(3,minmax(0,1fr))}.fd-page .fd-card{position:relative;border:1px solid var(--line);border-radius:26px 54px 26px 26px;background:#fff;padding:clamp(22px,2.5vw,36px);box-shadow:5px 6px 0 #bbd6df;min-width:0}.fd-page a.fd-card{display:block;text-decoration:none;color:var(--body);transition:box-shadow .25s,border-color .25s}.fd-page .fd-card h3:first-child{margin-top:0}.fd-page .fd-grid .fd-grid{grid-template-columns:1fr;gap:16px}.fd-page .fd-grid .fd-card .fd-card{box-shadow:none;border-radius:16px;padding:18px}.fd-page .fd-card :where(strong,b){color:var(--ink)}
.fd-hero{position:relative;background:linear-gradient(135deg,#f8fcfd 15%,#e9f5fb 67%,#e3f1ed);padding-block:clamp(88px,9vw,128px) 110px}.fd-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:6vw}.fd-hero-copy>p:not(.fd-eyebrow){margin-top:22px;max-width:36em}.fd-eyebrow{font-size:14px;letter-spacing:.12em;font-weight:700;color:#23758d;margin-bottom:18px!important}.fd-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:30px}.fd-actions .fc-button{flex:1 1 225px}.fd-curve{position:absolute;bottom:-1px;left:-1px;width:calc(100% + 2px);height:68px;background:#fff;mask:url('/flow02/hub/assets/divider-coast.svg') center/100% 100% no-repeat;pointer-events:none}
.fd-page .fc-photo{position:relative;margin:0;isolation:isolate}.fd-page .fc-photo-motion{filter:drop-shadow(7px 9px 0 #91b8c6) drop-shadow(0 10px 12px #21677a18)}.fd-page .fc-photo-clip{aspect-ratio:1.35;mask:url('/flow02/hub/assets/photo-mask-lagoon.svg') center/100% 100% no-repeat;overflow:hidden;background:#e3f1f5}.fd-page .fc-photo img{width:100%;height:100%;object-fit:cover;object-position:var(--position,50% 50%)}.fd-page .fd-hero-photo{width:100%;transform:rotate(4deg)}.fd-page .fd-hero-photo .fc-photo-clip{aspect-ratio:1.1;mask-image:url('/flow02/hub/assets/photo-mask-leaf.svg')}.fd-page .fd-section-photo{float:right;width:min(35%,380px);margin:5px 0 35px 48px}.fd-page .fd-existing-image{border-radius:24px 64px 24px 24px;box-shadow:5px 7px 0 #a8cbd5;margin:18px auto;object-fit:cover}
.fd-page .fc-button,.fd-page .fd-button{display:inline-flex;position:relative;min-height:56px;max-width:100%;border-radius:16px;text-decoration:none!important;font-weight:700;line-height:1.55;background:#103f4e;color:white;box-shadow:0 7px 15px #21677a18;padding:0 0 6px;margin-top:0;vertical-align:middle}.fd-page .fc-button-face{display:flex;justify-content:space-between;align-items:center;gap:18px;width:100%;border-radius:16px;background:#21677a;color:white;padding:16px 22px;transition:transform .24s,background .24s;font-size:16px}.fd-page .fc-button--sub{background:#83acbc}.fd-page .fc-button--sub .fc-button-face{background:#e5f2fb;color:#17576e;border:1px solid #a7d1e6}.fd-page .fc-arrow{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border:1px solid currentColor;border-radius:50%}.fd-page .fd-button{padding:16px 23px;background:#e4f1f7;color:#17576e;box-shadow:0 6px 0 #96b8c8}.fd-page .fc-button:active .fc-button-face{transform:translateY(4px)}.fd-page .fd-button:active{transform:translateY(3px);box-shadow:0 3px 0 #96b8c8}
.fd-page .fc-label{display:flex;align-items:center;gap:14px;margin-bottom:20px;color:#21677a;font-size:clamp(14px,1.3vw,18px);font-weight:700;letter-spacing:.065em;line-height:1.4}.fd-page .fc-label-num{position:relative;width:63px;height:68px;flex:0 0 63px;display:grid;place-items:center}.fd-page .fc-label-num img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.fd-page .fc-label-num b{position:relative;color:white;font-size:28px;padding-top:8px}.fd-page .fc-slash{font-size:32px;color:#78b8cf}.fd-page .fc-label-word{position:relative;padding-bottom:12px;overflow-wrap:anywhere}.fd-page .fc-label-word img{position:absolute;bottom:0;left:0;width:100%;height:12px;object-fit:fill}
.fd-page #fd-introduction{padding:34px var(--gutter);max-width:1320px;margin-inline:auto;border-bottom:1px solid var(--line);font-size:15px}.fd-page #fd-introduction:empty{display:none}.fd-page #fd-introduction :where(p,div){margin-block:8px}.fd-page #fd-introduction a{display:inline-flex;margin:5px 12px 5px 0;min-height:44px;align-items:center}.fd-page .fd-toc{display:grid;grid-template-columns:1fr 1fr;gap:0 32px;padding-block:38px 60px}.fd-toc>p{grid-column:1/-1;font-weight:700;color:var(--ink);font-size:19px;margin-bottom:12px}.fd-toc>a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;border-bottom:1px solid var(--line);text-decoration:none;min-height:52px}.fd-page .fd-conditions{padding-block:36px 66px}.fd-conditions h2{font-size:22px}.fd-conditions p{font-size:15px}.fd-conditions>p{border-left:3px solid #66a5b8;padding-left:20px}.fd-page .fd-conditions .fd-grid{margin-block:20px;gap:36px}
.fd-page .fd-tools{position:absolute;inset:0;overflow:clip;z-index:0;pointer-events:none;background-image:linear-gradient(100deg,transparent 70%,#d6edf21c)}.fd-tools img{position:absolute;right:-26px;bottom:24px;width:150px;opacity:.5;transform:rotate(-22deg)}
.fd-page .fd-table{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid var(--line);border-radius:20px;background:#fff;margin-block:24px;scrollbar-color:#6ba1b3 #eaf5fc}.fd-page table{border-collapse:collapse;width:100%;min-width:550px;font-size:16px}.fd-page th,.fd-page td{text-align:left;padding:20px 22px;border-bottom:1px solid var(--line);vertical-align:top}.fd-page th{color:var(--ink);background:#e8f4f4;font-weight:700}.fd-page table tr:last-child td{border-bottom:0}
.fd-page details{border:1px solid var(--line);border-radius:20px;background:white;margin-block:16px;box-shadow:0 4px 0 #d6e9ee;overflow:clip}.fd-page summary{cursor:pointer;list-style:none;display:block;padding:23px 62px 23px 25px;font-weight:700;color:var(--ink);position:relative;min-height:62px}.fd-page summary::-webkit-details-marker{display:none}.fd-page summary:after{content:'+';position:absolute;right:23px;top:22px;width:28px;height:28px;background:#e3f1f5;border-radius:50%;display:grid;place-items:center;color:#26788d;line-height:1}.fd-page details[open]>summary:after{content:'−'}.fd-page details>div{padding:0 25px 24px}.fd-page details summary :where(i,svg){display:none}.fd-page details[open]>summary{border-bottom:1px solid #dbecef;margin-bottom:20px}
.fd-page .wpcf7{width:min(100%,920px);margin:24px auto;background:white;border:1px solid var(--line);border-radius:28px;padding:clamp(20px,4vw,48px);box-shadow:7px 9px 0 #c2dce2}.fd-page .wpcf7 :where(input:not([type=checkbox]):not([type=radio]),textarea,select){max-width:100%;font-size:16px}.fd-page .wpcf7 :where(input[type=submit],button[type=submit]){min-height:56px;white-space:normal}.fd-page .fd-related{padding-block:45px;display:flex;gap:16px 30px;flex-wrap:wrap}.fd-page .fd-related a{min-height:44px;display:inline-flex;align-items:center}
.fd-directory .fd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fd-directory .fd-card{border-radius:20px;padding:24px;box-shadow:0 4px 0 #c3dde6}.fd-directory .fd-section{padding-block:60px}.fd-directory .fd-card h3{font-size:21px}.fd-directory .fd-card a{min-height:44px;display:inline-flex;align-items:center}.fd-guide .fd-section>.fd-shell>p{max-width:80ch}.fd-review{max-width:1100px;margin:60px auto;padding:24px;font:500 17px/1.9 sans-serif;color:#174652}.fd-review a{display:inline-block;min-height:44px;color:#11668d}.fd-review h2{margin-top:40px}
@media(hover:hover){.fd-page .fc-button:hover .fc-button-face{transform:translateY(-2px);background:#1a596b}.fd-page .fc-button--sub:hover .fc-button-face{background:#d8ebf6}.fd-page .fc-button:active .fc-button-face{transform:translateY(4px)}.fd-page a.fd-card:hover{box-shadow:5px 8px 0 #a4c8d4;border-color:#4796ad}.fd-page summary:hover{background:#f1f8fb}.fd-toc a:hover{text-decoration:underline}}
@media(max-width:1100px){.fd-page .fd-grid[data-columns='3']{grid-template-columns:repeat(2,minmax(0,1fr))}.fd-hero-grid{gap:36px}.fd-page .fd-actions{flex-direction:column}.fd-actions .fc-button{flex:auto}.fd-page .fd-section-photo{width:37%;margin-left:28px}}
@media(max-width:767px){.fd-page{--gutter:22px}.fd-hero{padding-top:94px;padding-bottom:82px}.fd-hero-grid{grid-template-columns:1fr;gap:36px}.fd-page h1{font-size:clamp(29px,7.3vw,40px)}.fd-page .fd-hero-photo{width:min(88%,470px);margin-inline:auto;transform:rotate(3deg)}.fd-page .fd-hero-photo .fc-photo-clip{aspect-ratio:1.65;mask-image:url('/flow02/hub/assets/photo-mask-lagoon.svg')}.fd-page .fd-grid,.fd-page .fd-grid[data-columns='3'],.fd-directory .fd-grid{grid-template-columns:1fr;gap:23px}.fd-page .fd-toc{grid-template-columns:1fr;padding-bottom:36px}.fd-page .fd-conditions .fd-grid{gap:20px}.fd-page .fd-section-photo{float:none;width:min(90%,420px);margin:0 auto 32px}.fd-page .fc-label{gap:10px}.fd-page .fc-label-num{width:55px;height:59px;flex-basis:55px}.fd-page .fc-label-num b{font-size:24px}.fd-tools img{width:108px;right:-25px;bottom:12px;opacity:.43}.fd-page .fd-card{padding:25px;border-radius:23px 42px 23px 23px}.fd-page #fd-introduction{padding-block:24px}.fd-page .fd-button{width:100%;justify-content:center}.fd-page .fd-actions{gap:17px}.fd-page .wpcf7{padding:22px 18px}.fd-page .fd-table th,.fd-page .fd-table td{padding:16px 18px}}
@media(prefers-reduced-motion:reduce){.fd-page .fc-button-face,.fd-page .fd-button,.fd-page a.fd-card{transition:none}}
