/* Fidelity v02: (font stacks in this file: the theme loads Zen Kaku Gothic New / Zen Old Mincho site-wide but the approved flow HTML loaded no web fonts, so those two names are left out to keep the approved rendering) render this adopted part in the cascade of its approved HTML (browser defaults + the approved CSS below). Theme-wide rules (.hal-lp base, Astra base, older section CSS) stop at #hal-wp-flow; every approved rule below is more specific or later and still wins. Root values = the approved document body. SVG keeps its presentation attributes. */
#hal-wp-flow{font:initial;color:#25241f;letter-spacing:normal;word-spacing:normal;text-align:start;text-transform:none;text-indent:0;text-shadow:none;white-space:normal;word-break:normal;overflow-wrap:normal;line-break:auto;-webkit-font-smoothing:auto;font-feature-settings:normal;font-kerning:auto}
#hal-wp-flow :where(*:not(svg,svg *)),#hal-wp-flow :where(*:not(svg,svg *))::before,#hal-wp-flow :where(*:not(svg,svg *))::after{all:revert}

#hal-wp-flow *{box-sizing:border-box}#hal-wp-flow{margin:0;color:#25241f;background:#fff;font-family:'Hiragino Sans','Yu Gothic',sans-serif}#hal-wp-flow button,#hal-wp-flow a{-webkit-tap-highlight-color:transparent}#hal-wp-flow button{font:inherit}#hal-wp-flow a:focus-visible,#hal-wp-flow button:focus-visible{outline:2px solid #bf815b;outline-offset:4px}#hal-wp-flow .review-controls{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:10px 0 2px}#hal-wp-flow .review-controls button{border:1px solid #aaa;border-radius:4px;padding:8px 12px;min-height:40px;background:#fff;color:#25241f;font-size:12px;cursor:pointer}#hal-wp-flow .review-controls button[aria-pressed=true]{background:#25241f;color:#fff}#hal-wp-flow{container-type:inline-size;width:375px;max-width:100%;margin-inline:auto;background:#fff}#hal-wp-flow .review{border-bottom:1px solid #eee;padding:12px 24px;font-size:12px;line-height:1.7;color:#797269;text-align:center}#hal-wp-flow .flow{max-width:1280px;margin:auto;padding:66px 48px 56px}#hal-wp-flow .overview{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:46px;align-items:center}#hal-wp-flow .eyebrow{font-size:11px;letter-spacing:.2em;color:#82796c;margin:0 0 16px}#hal-wp-flow .heading h2{font-family:'Yu Mincho',serif;font-size:clamp(28px,2.7cqw,38px);line-height:1.6;font-weight:600;letter-spacing:.05em;margin:0}#hal-wp-flow .hal-h2__seg{display:block}#hal-wp-flow .intro{margin:28px 0 0;max-width:480px}#hal-wp-flow .intro p{font-size:15px;line-height:2;letter-spacing:.025em;margin:0 0 18px}#hal-wp-flow .intro p:last-child{margin-bottom:0}#hal-wp-flow .scroll-flow{display:contents}#hal-wp-flow .image-accordion{display:flex;gap:10px;height:590px;min-width:0}#hal-wp-flow .phase-card{flex:0 0 46px;position:relative;min-width:0;overflow:hidden;border:1px solid #e6e2da;border-radius:16px;background:#fff;transition:flex-basis .45s cubic-bezier(.2,.8,.2,1);}#hal-wp-flow .phase-card[data-active=true]{flex:1 1 0}#hal-wp-flow .phase-photo{width:100%;height:178px;display:block;object-fit:cover;object-position:50% 58%;filter:none}#hal-wp-flow .phase-card:nth-child(2) .phase-photo{object-position:50% 62%}#hal-wp-flow .phase-card:nth-child(3) .phase-photo{object-position:50% 56%}#hal-wp-flow .phase-toggle{appearance:none;position:absolute;inset:0;border:0;background:transparent;color:#25241f;cursor:pointer;padding:0;z-index:2;text-align:center;touch-action:pan-y}#hal-wp-flow .phase-toggle:focus-visible{outline-offset:-4px;border-radius:15px}#hal-wp-flow .toggle-number{position:absolute;left:0;right:0;top:193px;font-size:10px;letter-spacing:.02em;white-space:nowrap;color:#837c71}#hal-wp-flow .toggle-title{position:absolute;top:235px;left:50%;transform:translateX(-50%);writing-mode:vertical-rl;font-size:14px;line-height:1.4;font-weight:700;letter-spacing:.035em;white-space:nowrap}#hal-wp-flow .phase-card[data-active=true] .phase-toggle{inset:0 0 auto;height:250px}#hal-wp-flow .phase-card[data-active=true] .toggle-number{top:190px;left:20px;right:20px;text-align:left}#hal-wp-flow .phase-card[data-active=true] .toggle-title{top:213px;left:20px;right:20px;transform:none;writing-mode:horizontal-tb;font-size:22px;line-height:1.55;letter-spacing:.025em;white-space:normal;}#hal-wp-flow .phase-content{position:absolute;top:284px;left:22px;right:22px;bottom:16px;overflow:auto;overscroll-behavior-y:contain;scrollbar-width:thin;opacity:0;visibility:hidden;transition:opacity .22s;}#hal-wp-flow .phase-card[data-active=true] .phase-content{opacity:1;visibility:visible}#hal-wp-flow .phase-content[inert]{pointer-events:none}#hal-wp-flow .phase-list{margin:0 0 12px;text-align:center;font-size:11px;line-height:1.8;color:#797269}#hal-wp-flow .phase-desc{margin:0 0 16px;font-size:14px;line-height:1.85;letter-spacing:.015em}#hal-wp-flow .steps{margin:0;padding:0;list-style:none}#hal-wp-flow .step{display:grid;grid-template-columns:24px minmax(0,1fr);gap:9px;border-top:1px solid #e6e2da;padding:12px 0}#hal-wp-flow .step-number{font-size:11px;color:#908573;line-height:1.9}#hal-wp-flow .step h3{font-size:16px;line-height:1.5;font-weight:700;margin:0 0 4px}#hal-wp-flow .step p{font-size:14px;line-height:1.75;margin:0;letter-spacing:.01em}#hal-wp-flow .closing{margin:44px 0 0;text-align:center;font-family:'Yu Mincho',serif;font-size:28px;line-height:1.7;letter-spacing:.04em}#hal-wp-flow .links{text-align:center;margin-top:22px}#hal-wp-flow .urgent{display:inline-flex;align-items:center;justify-content:center;background:#ff5f00;color:#fff;text-decoration:none;padding:14px 30px;font-size:15px;min-height:52px}#hal-wp-flow .urgent:hover{background:#df5300}#hal-wp-flow .line-note{color:#7a7468;font-size:12px;line-height:1.8;margin:10px 0 22px}#hal-wp-flow .guide-link{display:block;max-width:620px;padding:20px 16px;border:1px solid #ddd8ce;margin:auto;text-decoration:none;color:#25241f}#hal-wp-flow .guide-link:hover{border-color:#a49a87}#hal-wp-flow .hal-related__major-key{display:block;font-size:16px;line-height:1.8}#hal-wp-flow .hal-related__major-sub{display:block;white-space:nowrap;letter-spacing:0;color:#7a7468;font-size:12px;line-height:1.8;margin-top:6px}
@container(max-width:1023px){#hal-wp-flow .flow{padding:48px 28px}#hal-wp-flow .overview{gap:28px;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}#hal-wp-flow .heading h2{font-size:29px}#hal-wp-flow .image-accordion{gap:8px}#hal-wp-flow .phase-card{flex-basis:38px}#hal-wp-flow .toggle-title{font-size:13px}#hal-wp-flow .phase-card[data-active=true] .toggle-title{font-size:20px;left:16px;right:16px}#hal-wp-flow .phase-content{left:16px;right:16px}}
@container(max-width:767px){/* OwnerFixR3: the accordion is held by CSS sticky at the top computed by flow.js (centre of the area between the fixed header and the fixed CTA); the photo height is reduced by flow.js only when a card does not fit that area */#hal-wp-flow .review{padding:9px 16px;font-size:11px}#hal-wp-flow .flow{padding:36px 16px 24px}#hal-wp-flow .overview{display:flex;flex-direction:column;gap:26px;align-items:stretch}#hal-wp-flow .heading{text-align:center}#hal-wp-flow .heading h2{font-size:28px;line-height:1.65}#hal-wp-flow .intro{max-width:520px;margin:22px auto 0}#hal-wp-flow .intro p{font-size:14px;line-height:1.9;margin-bottom:14px}#hal-wp-flow .scroll-flow{display:block;position:relative;overflow-anchor:none;height:auto}
#hal-wp-flow .mobile-track{display:block;position:relative;height:var(--mobile-track-height,auto);overflow-anchor:none}#hal-wp-flow .mobile-followup{display:flow-root}#hal-wp-flow .image-accordion{position:sticky;top:var(--mobile-sticky-top,61px);width:100%;height:var(--mobile-card-height,500px);gap:6px;overflow-anchor:none}#hal-wp-flow .phase-toggle{pointer-events:none;cursor:default}#hal-wp-flow .phase-content{overflow:visible;overscroll-behavior-y:auto}#hal-wp-flow .phase-card{flex-basis:32px;border-radius:12px}#hal-wp-flow .phase-photo{height:var(--mobile-photo-height,160px)}#hal-wp-flow .toggle-number{top:calc(var(--mobile-photo-height,160px) + 14px);font-size:8px;letter-spacing:0}#hal-wp-flow .toggle-title{top:calc(var(--mobile-photo-height,160px) + 47px);font-size:12px;letter-spacing:0}#hal-wp-flow .phase-card[data-active=true] .phase-toggle{height:calc(var(--mobile-photo-height,160px) + 80px)}#hal-wp-flow .phase-card[data-active=true] .toggle-number{top:calc(var(--mobile-photo-height,160px) + 14px);left:14px;right:14px;font-size:10px}#hal-wp-flow .phase-card[data-active=true] .toggle-title{top:calc(var(--mobile-photo-height,160px) + 34px);left:14px;right:14px;font-size:18px;line-height:1.55}#hal-wp-flow .phase-content{top:var(--mobile-content-top,234px);left:14px;right:14px;bottom:auto;height:auto}#hal-wp-flow .step:last-child{padding-bottom:0}#hal-wp-flow .phase-list{font-size:10px;margin-bottom:10px;line-height:1.7}#hal-wp-flow .phase-desc{font-size:14px;margin-bottom:12px;line-height:1.75}#hal-wp-flow .step{gap:6px;grid-template-columns:20px minmax(0,1fr);padding:11px 0}#hal-wp-flow .step h3{font-size:15px}#hal-wp-flow .step p{font-size:14px;line-height:1.7}#hal-wp-flow .closing{font-size:clamp(16px,5cqw,20px);letter-spacing:.02em;white-space:nowrap;margin-top:12px}#hal-wp-flow .links{margin-top:8px}#hal-wp-flow .urgent{width:100%;max-width:390px}#hal-wp-flow .hal-related__major-key{font-size:15px}#hal-wp-flow .hal-related__major-sub{font-size:12px}}
/* FinalOwnerFix1 mobile (Owner): horizontal slider instead of the vertical scroll-linked accordion (the OwnerFixR3 sticky track above is no
   longer used: flow.js sets none of its variables). One phase per slide - photo, number, heading and the whole text in normal flow, no
   inner scrolling; native horizontal scroll with snap; all slides as tall as the tallest (row stretch). Text sizes are unchanged
   (14px body). PC keeps the accordion; the slider controls are mobile only. */
#hal-wp-flow .flow-slider-controls{display:none}
@container(max-width:767px){
#hal-wp-flow .scroll-flow{display:block;position:relative;height:auto}
#hal-wp-flow .image-accordion{position:relative;top:auto;display:flex;align-items:stretch;gap:12px;height:auto;width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
#hal-wp-flow .image-accordion::-webkit-scrollbar{display:none}
#hal-wp-flow .image-accordion:focus-visible{outline:2px solid #bf815b;outline-offset:4px;border-radius:12px}
#hal-wp-flow .phase-card,#hal-wp-flow .phase-card[data-active=true]{flex:0 0 100%;display:flex;flex-direction:column;height:auto;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;transition:none;border-radius:12px}
#hal-wp-flow .phase-photo{flex:none;height:160px}
#hal-wp-flow .phase-toggle,#hal-wp-flow .phase-card[data-active=true] .phase-toggle{position:static;inset:auto;display:block;height:auto;padding:14px 14px 0;text-align:left;pointer-events:none;cursor:default}
#hal-wp-flow .toggle-number,#hal-wp-flow .phase-card[data-active=true] .toggle-number{position:static;display:block;left:auto;right:auto;top:auto;font-size:10px;letter-spacing:0;text-align:left}
#hal-wp-flow .toggle-title,#hal-wp-flow .phase-card[data-active=true] .toggle-title{position:static;display:block;left:auto;right:auto;top:auto;transform:none;margin-top:6px;writing-mode:horizontal-tb;font-size:18px;line-height:1.55;letter-spacing:.025em;white-space:normal}
#hal-wp-flow .phase-content,#hal-wp-flow .phase-card[data-active=true] .phase-content,#hal-wp-flow .phase-content[inert]{position:static;inset:auto;top:auto;height:auto;padding:12px 14px 16px;overflow:visible;opacity:1;visibility:visible;pointer-events:auto;transition:none}
#hal-wp-flow .flow-slider-controls{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:14px}
#hal-wp-flow .flow-slider-prev,#hal-wp-flow .flow-slider-next{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #e6e2da;border-radius:50%;background:#fff;color:#25241f;font-size:16px;line-height:1;cursor:pointer}
#hal-wp-flow .flow-slider-prev:disabled,#hal-wp-flow .flow-slider-next:disabled{opacity:.35;cursor:default}
#hal-wp-flow .flow-slider-dots{display:inline-flex;gap:2px}
#hal-wp-flow .flow-slider-dot{position:relative;width:28px;height:44px;padding:0;border:0;background:transparent;cursor:pointer}
#hal-wp-flow .flow-slider-dot:after{content:'';position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:50%;background:#d8d2c7;transform:translate(-50%,-50%)}
#hal-wp-flow .flow-slider-dot[aria-current=true]:after{width:20px;border-radius:4px;background:#25241f}
#hal-wp-flow .flow-slider-count{min-width:48px;text-align:center;font-size:11px;letter-spacing:.06em;color:#797269}
}
@media(prefers-reduced-motion:reduce){#hal-wp-flow *,#hal-wp-flow *:before,#hal-wp-flow *:after{transition:none!important;animation:none!important}}

#hal-wp-flow{width:100%;max-width:none}