:root{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,"Helvetica Neue",Arial,sans-serif;color:#151813;background:#f7f7f3;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}.nav{height:78px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#fbfbf8;position:relative;z-index:10}.wordmark{display:flex;align-items:center;gap:13px;font-size:12px;font-weight:750;letter-spacing:.16em;line-height:1.15}.wordmark small{display:block;font-size:8px;font-weight:600;letter-spacing:.19em;color:#8b9189;margin-top:5px}.mark{font-size:31px;font-weight:800;letter-spacing:-.11em}.mark span{color:#a6b9a5}.nav nav{display:flex;gap:36px;font-size:12px;color:#4c554e}.nav nav a:hover,.underlink:hover{color:#778e78}.nav-contact{border:1px solid #bfc7bd;border-radius:99px;padding:11px 18px;font-size:12px;font-weight:600}.nav-contact span{margin-left:24px}.hero{height:min(820px,calc(100svh - 78px));min-height:600px;color:white;position:relative;overflow:hidden;background:#202924}.hero-media,.hero-media video,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-media video{object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(9,20,19,.78),rgba(9,20,19,.28) 68%),linear-gradient(0deg,rgba(5,12,10,.47),transparent 35%)}.hero-content{position:absolute;left:8%;top:50%;transform:translateY(-49%);max-width:800px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:.23em;color:#6b7f6d;margin:0 0 28px}.eyebrow.light{color:#c8d2c9}.hero h1{font-weight:560;font-size:clamp(68px,9.2vw,138px);line-height:.94;letter-spacing:-.075em;margin:0 0 30px}.hero h1 em,.statement h2 i,.calc-head h2 i,.contact h2 i{font-family:Georgia,serif;font-weight:400;letter-spacing:-.06em}.hero-deck{font-size:17px;line-height:1.6;max-width:520px;color:#e5e9e4}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:38px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;border-radius:99px;padding:17px 22px;font-size:12px;font-weight:700;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px)}.light-button{background:#eef2ea;color:#1d2a20}.text-link{font-size:12px;border-bottom:1px solid #aeb9ad;padding-bottom:7px}.text-link span{margin-left:20px}.hero-bottom{position:absolute;bottom:30px;left:5%;right:5%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.2em;color:#d2dcd2}.intro{padding:150px 10%;display:grid;grid-template-columns:1fr 2fr;gap:8%;background:#fbfbf8}.intro h2,.section-heading h2,.about h2{font-size:clamp(42px,5.4vw,78px);font-weight:550;letter-spacing:-.07em;line-height:1.03;margin:0 0 32px}.intro h2 span,.section-heading h2 span,.about h2 span{color:#8c9b8b}.intro p:not(.eyebrow),.about-copy p:not(.eyebrow):not(.credential){max-width:660px;color:#606861;line-height:1.75;font-size:17px}.underlink{display:inline-block;margin-top:24px;font-size:12px;font-weight:700;border-bottom:1px solid #1e2b20;padding-bottom:8px}.statement{height:610px;position:relative;overflow:hidden;color:#fff;background:#263029}.statement-photo{position:absolute;inset:-10%;background:url('assets/architecture.jpg') center/cover;transform:translateY(var(--parallax,0px));filter:brightness(.55)}.statement-inner{position:absolute;left:10%;bottom:85px}.statement h2{font-size:clamp(45px,6vw,88px);line-height:1.03;letter-spacing:-.07em;font-weight:520;margin:0}.section-pad{padding:140px 8%}.insights{background:#f7f7f3}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:60px}.section-heading>p{max-width:340px;color:#69716a;line-height:1.65}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card-image{height:310px;background-size:cover;background-position:center;position:relative;overflow:hidden}.card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgba(0,0,0,.4))}.card-image span{position:absolute;bottom:22px;left:22px;z-index:1;font-size:9px;letter-spacing:.16em;color:white}.card-one{background-image:url('assets/launch.jpg')}.card-two{background-image:url('assets/interior.jpg')}.card-three{background-image:url('assets/city.jpg')}.card-meta{display:flex;justify-content:space-between;margin:25px 0 12px;color:#748473;font-size:10px;letter-spacing:.17em;font-weight:700}.card h3{font-size:24px;letter-spacing:-.04em;font-weight:570;margin:0 0 10px}.card p{font-size:13px;line-height:1.65;color:#717971;margin:0}.demo-note{font-size:11px;color:#889088;margin-top:35px}.calculator{background:#1b2922;color:white}.calc-head{max-width:780px}.calc-head h2{font-size:clamp(45px,5.7vw,83px);line-height:1.05;letter-spacing:-.07em;font-weight:530;margin:0 0 25px}.calc-head>p:last-child{color:#b3c2b6;line-height:1.65;max-width:570px}.calc-panel{display:grid;grid-template-columns:1.3fr 1fr;margin-top:65px;background:#f2f4ee;color:#17231a;border-radius:8px;overflow:hidden}.calc-inputs{padding:60px}.calc-inputs label{display:block;font-size:13px;font-weight:650;margin-bottom:35px}.calc-inputs label span{float:right}.calc-inputs input{display:block;width:100%;margin-top:24px;accent-color:#759777}.calc-result{background:#dce6d9;padding:60px;display:flex;flex-direction:column}.calc-result>span{font-size:10px;letter-spacing:.15em;font-weight:750;color:#5e755f}.calc-result strong{font-size:clamp(45px,5vw,70px);letter-spacing:-.07em;margin:15px 0 35px}.result-row{display:flex;justify-content:space-between;padding:15px 0;border-top:1px solid #b6c7b4;font-size:13px}.result-row b{font-weight:650}.calc-result p{font-size:11px;line-height:1.55;color:#647467;margin:25px 0}.dark-button{background:#243a2a;color:white;align-self:start;margin-top:auto}.about{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:11%;background:#fbfbf8}.portrait{height:580px;background:#e4e8e2;overflow:hidden}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:grayscale(15%)}.credential{font-size:11px;letter-spacing:.12em;font-weight:700;margin-top:32px}.contact{background:#202b24;color:white;text-align:center}.contact h2{font-size:clamp(55px,7vw,100px);line-height:.98;letter-spacing:-.075em;font-weight:520;margin:0 0 26px}.contact>p:not(.eyebrow){color:#b8c6ba}.contact .button{margin:25px auto 20px}.contact small{display:block;color:#9aab9d;font-size:10px}footer{padding:45px 8%;background:#111a15;color:#dfe6dd;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.1em}footer .wordmark small{color:#889b89}.wa{position:fixed;bottom:26px;right:26px;width:58px;height:58px;border:0;border-radius:50%;background:#25d366;color:white;z-index:20;box-shadow:0 8px 30px #0004;display:grid;place-items:center;cursor:pointer}.wa svg{width:30px;height:30px}.wa-pop{position:fixed;bottom:96px;right:26px;z-index:20;width:290px;background:white;color:#17231a;padding:22px;border-radius:14px;box-shadow:0 12px 45px #0003}.wa-pop p{font-size:12px;line-height:1.5;color:#667166}.wa-pop a{font-size:12px;font-weight:700;text-decoration:underline}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}@media(max-width:800px){.nav{height:68px}.nav nav{display:none}.hero{min-height:620px;height:calc(100svh - 68px)}.hero-content{left:7%;right:7%}.hero h1{font-size:clamp(59px,13vw,100px)}.hero-deck{font-size:15px}.hero-actions{align-items:flex-start;flex-direction:column;gap:25px}.intro{padding:95px 7%;display:block}.intro>p{margin-bottom:32px}.statement{height:480px}.statement-inner{left:7%;bottom:55px}.section-pad{padding:95px 7%}.section-heading{display:block}.cards{grid-template-columns:1fr}.card{margin-bottom:25px}.card-image{height:290px}.calc-panel{grid-template-columns:1fr}.calc-inputs,.calc-result{padding:35px}.about{grid-template-columns:1fr}.portrait{height:460px}.contact h2{font-size:60px}footer{gap:25px;flex-wrap:wrap}.hero-bottom{font-size:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
.lead-form{border-top:1px solid #b6c7b4;padding-top:26px;margin-top:10px}.lead-form h3{font-size:21px;letter-spacing:-.04em;margin:0}.lead-form p{margin:8px 0 18px}.lead-form label{font-size:11px;font-weight:700;display:block;margin:12px 0}.lead-form input,.lead-form select{width:100%;border:1px solid #a9bca9;background:#f9fbf7;border-radius:6px;padding:12px;margin-top:6px;color:#17231a}.lead-form button{border:0;cursor:pointer;margin:14px 0}.lead-form small{display:block;font-size:10px;line-height:1.4;color:#5b6d5e}.calculator{scroll-margin-top:0}.calc-head h2{max-width:900px}.calc-result{justify-content:flex-start}
.hero{background:#17231d}.hero-media{left:auto;right:0;width:49%;height:100%;overflow:hidden}.hero-media video{object-fit:cover;object-position:center 36%}.hero-shade{background:linear-gradient(90deg,#142019 3%,#142019 31%,rgba(20,32,25,.93) 47%,rgba(20,32,25,.08) 75%),linear-gradient(0deg,rgba(5,12,10,.43),transparent 30%)}.hero-content{z-index:2;max-width:750px}.hero h1{font-size:clamp(66px,8.2vw,124px)}.statement-photo{background-image:url("assets/hanson-silhouette.jpg");background-position:center 36%}.card-three{background-image:url("assets/hanson-property.jpg")}.portrait img{object-position:center 20%}@media(max-width:800px){.hero-media{width:100%;left:0}.hero-shade{background:linear-gradient(90deg,rgba(7,18,13,.72),rgba(7,18,13,.3)),linear-gradient(0deg,rgba(5,12,10,.72),transparent 55%)}.hero h1{font-size:clamp(59px,13vw,100px)}}
.statement-photo{background-image:url("assets/pinnacle-view.jpg");background-position:center 52%}
/* Personal advisory redesign: tools first, editorial property content. */
:root{--ink:#142e30;--accent:#087f72;--mint:#e6f3ee}button,a,input,select{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #2bb89f;outline-offset:5px}[hidden]{display:none!important}.nav{position:sticky;top:0;border-bottom:1px solid #e6eae6}.nav-contact{background:var(--ink);color:white;border:0}.hero-media{width:52%;background:#142019}.hero-media video{object-fit:contain;object-position:right center}.hero-shade{background:linear-gradient(90deg,#142019 0%,#142019 34%,rgba(20,32,25,.85) 48%,transparent 70%)}.hero-content{left:7%;max-width:690px}.hero h1{font-size:clamp(65px,7.7vw,112px)}.hero-deck{max-width:440px}.journey{padding:60px 8% 70px;background:#fff}.journey>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:20px}.journey .eyebrow{margin:0}.journey h2{font-size:32px;letter-spacing:-.045em;margin:0}.journey-options{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.journey-options a{padding:28px;background:#f3f7f5;border:1px solid #dce8e2;border-radius:16px;display:grid;grid-template-columns:1fr auto;gap:12px;transition:background .2s,transform .2s}.journey-options a:hover{background:#e6f3ee;transform:translateY(-4px)}.journey-icon{font-size:27px;color:var(--accent);grid-column:1/-1}.journey-options strong{font-size:22px;letter-spacing:-.04em}.journey-options a>span:not(.journey-icon){font-size:13px;color:#60716b;grid-column:1}.journey-options b{grid-column:2;grid-row:2/4;align-self:end;font-size:12px;color:var(--accent)}.section-pad{padding:100px 8%}.calculator{background:#eef4f1;color:var(--ink);scroll-margin-top:78px}.calculator .calc-head .eyebrow{color:var(--accent)}.calc-head h2{font-size:clamp(42px,5.3vw,72px)}.calc-head h2 i{font-family:inherit;font-style:normal;font-weight:600;color:var(--accent)}.calc-head>p:last-child{color:#59716a;max-width:590px}.planner-tabs{display:flex;gap:8px;margin:35px 0 22px;flex-wrap:wrap}.planner-tabs button{padding:15px 23px;border-radius:99px;border:1px solid #b9ccc1;background:transparent;color:var(--ink);cursor:pointer;font-size:13px;font-weight:700}.planner-tabs button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.proceeds-panel,.calc-panel{display:grid;grid-template-columns:1.15fr 1fr;border:1px solid #d4e2da;border-radius:22px;background:#fff;overflow:hidden;box-shadow:0 18px 60px #193d2a08;margin-top:0}.proceeds-inputs,.proceeds-result{padding:40px}.proceeds-inputs .eyebrow{margin-bottom:15px}.proceeds-inputs h3{font-size:29px;letter-spacing:-.045em;margin:0 0 12px}.proceeds-inputs>p:not(.eyebrow){font-size:14px;color:#64786f;line-height:1.6}.proceeds-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0}.proceeds-fields label{font-size:12px;line-height:1.5;font-weight:600;display:flex;flex-direction:column;justify-content:space-between;gap:8px}.proceeds-fields input{width:100%;min-width:0;padding:13px;border:1px solid #c9d8cf;background:#fafcfb;border-radius:8px;font-size:20px;color:var(--ink)}.proceeds-inputs small,.proceeds-result small{font-size:11px;color:#62786d;line-height:1.6;display:block}.proceeds-result{background:#deede5;display:flex;flex-direction:column;justify-content:center}.proceeds-result>.eyebrow{margin-bottom:12px}.proceeds-result>strong{font-size:clamp(42px,5vw,68px);letter-spacing:-.065em;line-height:1.2}.proceeds-result>p{font-size:14px;color:#536d61}.proceeds-breakdown{margin:25px 0}.proceeds-breakdown>span{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-top:1px solid #b7cfc0;font-size:12px}.proceeds-result .button{background:var(--accent);margin:0 0 15px;align-self:stretch;gap:12px}.calc-inputs,.calc-result{padding:40px}.calc-result{background:#deede5}.review-wrap{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:40px;background:var(--ink);border-radius:22px;padding:48px;color:white;scroll-margin-top:90px}.review-wrap h3{font-size:36px;letter-spacing:-.05em;line-height:1.12;margin:0 0 20px}.review-wrap>div>p:last-child{font-size:14px;line-height:1.65;color:#b5d2c8;max-width:350px}.lead-form{border:0;padding:0;margin:0;scroll-margin-top:110px}.lead-form h3{font-size:24px}.lead-form p{font-size:13px;color:#bfd3cb;line-height:1.6}.lead-form button{background:#bceacb;color:#183f30;width:100%;justify-content:center;font-size:12px}.lead-form small{color:#b5cfc3}.selling{background:#fff}.selling-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.selling-photo{min-height:550px;position:relative;border-radius:20px;overflow:hidden;background:#19372c}.selling-photo img{position:absolute;width:100%;height:100%;object-fit:cover}.selling-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,#0a251ddd)}.selling-photo>div{position:absolute;bottom:35px;left:35px;right:25px;color:white;z-index:1}.selling-photo span{font-size:10px;letter-spacing:.13em}.selling-photo h3{font-size:42px;letter-spacing:-.05em;line-height:1.05;margin:16px 0 0}.selling-steps article{display:flex;gap:22px;padding:20px 0;border-bottom:1px solid #dce5df}.selling-steps article>span{color:var(--accent);font-size:12px;padding-top:5px}.selling-steps h3{font-size:23px;letter-spacing:-.035em;margin:0 0 10px}.selling-steps p{font-size:14px;line-height:1.7;color:#65766b;margin:0}.section-heading h2,.about h2{font-size:clamp(40px,4.8vw,66px)}.statement{height:460px}.card-image{border-radius:16px}.card{background:#fff;padding:15px 15px 24px;border-radius:22px;border:1px solid #e0e8e2}.card-meta,.card h3,.card p{margin-left:8px;margin-right:8px}.about .portrait{border-radius:24px}.contact h2 i{font-family:inherit;font-style:normal;font-weight:600;color:#bceacb}.contact{background:var(--ink)}.wa{background:#098475}.insights,.selling,.about{scroll-margin-top:75px}
@media(max-width:800px){.hero{height:auto;min-height:0;padding:55px 7% 45px;display:flex;flex-direction:column}.hero-content{position:relative;left:auto;right:auto;top:auto;transform:none;order:0;max-width:none}.hero-media{position:relative;left:auto;right:auto;inset:auto;width:100%;height:auto;aspect-ratio:720/934;max-height:60svh;order:1;margin-top:30px;border-radius:18px}.hero-media video{object-fit:contain;object-position:center}.hero-shade{display:none}.hero-bottom{position:relative;left:auto;right:auto;bottom:auto;order:2;margin-top:25px}.hero h1{font-size:clamp(57px,12vw,85px)}.hero-actions{flex-direction:row;align-items:center;gap:20px;flex-wrap:wrap}.journey{padding:45px 7%}.journey>div:first-child{display:block}.journey .eyebrow{margin-bottom:15px}.journey-options{grid-template-columns:1fr}.journey-options a{padding:22px}.journey-icon{display:none}.journey-options strong{grid-row:2}.journey-options a>span:not(.journey-icon){grid-row:3}.section-pad{padding:70px 7%}.proceeds-panel,.calc-panel,.review-wrap,.selling-grid{grid-template-columns:1fr}.proceeds-inputs,.proceeds-result,.calc-inputs,.calc-result{padding:28px}.proceeds-fields{gap:14px}.proceeds-fields input{font-size:17px}.review-wrap{padding:28px;gap:25px}.selling-grid{gap:25px}.selling-photo{min-height:430px}.selling-photo h3{font-size:36px}.section-heading{margin-bottom:30px}.planner-tabs button{font-size:12px;padding:13px 16px}}
/* Hanson Ong — full-bleed film and frosted glass. */
:root{--ink:#edf7f3;--accent:#a3e3ce;--mint:#173d36;color:#edf7f3;background:#102925;--glass:rgba(215,244,232,.075);--glass-line:rgba(230,255,244,.2);--muted:#bed1c9}
body{background:radial-gradient(ellipse at 5% 30%,#285d4b80,transparent 45%),radial-gradient(ellipse at 95% 60%,#55766e70,transparent 45%),#102925;background-attachment:fixed}
.nav{position:absolute;inset:0 0 auto;height:88px;background:rgba(12,32,27,.22);border-bottom:1px solid #ffffff26;backdrop-filter:blur(22px) saturate(130%);-webkit-backdrop-filter:blur(22px) saturate(130%);color:white;z-index:10}.nav nav{color:#f0f7f2}.wordmark small{color:#d2e3da}.nav-contact{background:#ffffff18;border:1px solid #ffffff50;box-shadow:inset 0 1px #ffffff30;color:white}
.hero{height:100svh;min-height:720px;max-height:1100px;padding:0;display:block;background:#14251e}.hero-media{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;border-radius:0;margin:0}.hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}.hero-shade{display:block;position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,20,14,.76),rgba(5,20,14,.43) 48%,rgba(5,20,14,.08)),linear-gradient(0deg,#0c241bc9,transparent 45%,#0c241b55)}.hero-content{position:absolute;left:7%;right:auto;top:52%;transform:translateY(-45%);max-width:730px;padding:0;z-index:2}.hero h1{font-size:clamp(68px,8.6vw,126px);text-shadow:0 4px 40px #0002}.hero-deck{max-width:470px;color:#edf5ef;text-shadow:0 2px 12px #0005}.hero-actions .light-button{background:rgba(238,255,245,.18);border:1px solid #ffffff70;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:white;box-shadow:inset 0 1px #ffffff55,0 10px 35px #0002}.hero-bottom{position:absolute;left:7%;right:7%;bottom:32px;margin:0;color:#e5f2e9}
.journey,.calculator,.selling,.insights,.about,.contact{background:transparent;color:var(--ink);position:relative}.journey{border-bottom:1px solid #ffffff12}.eyebrow,.calculator .calc-head .eyebrow,.journey-icon,.journey-options b{color:#a3dfc8}.journey-options a,.card,.proceeds-panel,.calc-panel,.review-wrap,.planner-tabs button,.wa-pop{background:var(--glass);border:1px solid var(--glass-line);backdrop-filter:blur(24px) saturate(125%);-webkit-backdrop-filter:blur(24px) saturate(125%);box-shadow:inset 0 1px 0 #ffffff12,0 20px 60px #041b1425;color:var(--ink)}.journey-options a:hover{background:#d7ffe11c;border-color:#d8ffec66}.journey-options a>span:not(.journey-icon),.section-heading>p,.calc-head>p:last-child,.selling-steps p,.card p,.about-copy p:not(.eyebrow):not(.credential),.contact>p:not(.eyebrow){color:var(--muted)}.section-heading h2 span,.about h2 span{color:#a0c6b6}.calc-head h2 i{color:#b8edda}.proceeds-inputs>p:not(.eyebrow),.proceeds-inputs small,.proceeds-result small,.proceeds-result>p,.calc-result p{color:#bfd5cb}.proceeds-result,.calc-result{background:#d1ffe70c;color:#effaf3;border-left:1px solid #ffffff1c}.proceeds-fields input,.lead-form input,.lead-form select{background:#05251d38;border:1px solid #d9ffee40;color:#f0fff6;box-shadow:inset 0 2px 8px #0001}.lead-form select option{color:#172d24;background:#e8f2ec}.proceeds-fields input:focus,.lead-form input:focus,.lead-form select:focus{outline:2px solid #a4e9ce;outline-offset:2px}.proceeds-fields input{color-scheme:dark}.proceeds-breakdown>span,.result-row,.selling-steps article{border-color:#d8ffeb29}.calc-result>span{color:#b4e0cd}.planner-tabs button[aria-pressed=true]{background:#dcfff025;color:#f1fff8;border-color:#c7ffe980;box-shadow:inset 0 1px #ffffff60,0 4px 25px #0002}.dark-button,.proceeds-result .button,.lead-form button,.contact .light-button{background:#c8f5df;color:#14392c;box-shadow:inset 0 1px #fff9}.calc-inputs input{accent-color:#b5efd3}.review-wrap{background:#c0ffe90a}.review-wrap>div>p:last-child,.lead-form p,.lead-form small{color:#c1d7cc}.underlink{border-color:#b2d8c3}.selling-photo,.portrait{border:1px solid var(--glass-line);box-shadow:0 25px 60px #0002}.card-meta{color:#b4dfcb}.card-image{border:1px solid #ffffff17}.demo-note{color:#a7bfb2}.statement{border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff20}.statement-inner{padding:28px 34px;background:#e0ffec0c;border:1px solid #ffffff38;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:20px;left:8%;right:8%;width:fit-content}.statement h2{font-size:clamp(40px,5.5vw,76px)}.contact{background:radial-gradient(ellipse at 50% 100%,#518c6b45,transparent 70%);border-top:1px solid #ffffff18}footer{background:#061b1666;border-top:1px solid #ffffff1c}.wa{background:#dbffec21;border:1px solid #dcffef70;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#e5fff1;box-shadow:0 8px 35px #0003,inset 0 1px #ffffff50}.wa-pop{background:#153d32e8}.wa-pop p{color:#c5ddd0}.button:hover{filter:brightness(1.1)}.calculator{scroll-margin-top:0}
@media(max-width:800px){.nav{height:76px;padding:0 6%}.nav-contact{padding:11px 13px}.nav-contact span{margin-left:8px}.hero{height:100svh;min-height:700px;padding:0;display:block}.hero-media{position:absolute;inset:0;width:100%;height:100%;max-height:none;margin:0;border-radius:0;aspect-ratio:auto}.hero-media video{object-fit:cover;object-position:58% 38%}.hero-shade{display:block;background:linear-gradient(0deg,#071e16ed,rgba(8,24,17,.35) 75%,rgba(8,24,17,.3))}.hero-content{position:absolute;left:7%;right:7%;top:auto;bottom:105px;transform:none;max-width:none}.hero h1{font-size:clamp(58px,12vw,90px)}.hero-deck{font-size:15px;max-width:440px}.hero-bottom{position:absolute;bottom:26px;left:7%;right:7%;font-size:8px}.hero-actions{gap:20px;margin-top:28px}.hero-actions .button{padding:16px 19px}.proceeds-result,.calc-result{border-left:0;border-top:1px solid #ffffff24}.statement-inner{left:7%;right:7%;padding:24px}.statement h2{font-size:42px}.journey h2{font-size:29px}}
@supports not (backdrop-filter:blur(1px)){.journey-options a,.card,.proceeds-panel,.calc-panel,.review-wrap,.wa-pop{background:#27453b}.nav{background:#112c24e8}}
/* Preserve the film frame; frosted footage extends the banner. */
.hero-frost{position:absolute;inset:0;overflow:hidden;background:#17352a}.hero-frost video{width:100%;height:100%;object-fit:cover;filter:blur(32px) brightness(.65) saturate(.8);transform:scale(1.12)}.hero-media{inset:88px 3% 30px auto;width:53%;height:calc(100% - 118px);background:transparent;overflow:visible}.hero-media video{object-fit:contain;object-position:right center}.hero-shade{background:linear-gradient(90deg,rgba(6,27,18,.38),rgba(6,27,18,.1) 48%,transparent 75%),linear-gradient(0deg,#0b241b70,transparent 20%);pointer-events:none}.hero-content{left:5%;width:49%;max-width:690px;padding:30px 32px;border:1px solid #edfff632;border-radius:22px;background:rgba(220,255,237,.055);backdrop-filter:blur(16px) saturate(110%);-webkit-backdrop-filter:blur(16px) saturate(110%);box-shadow:inset 0 1px #ffffff15,0 20px 60px #00000010}.hero h1{font-size:clamp(54px,6.7vw,100px)}.hero-deck{font-size:16px}.hero-actions{gap:22px}.hero-actions .button{gap:24px}.hero-content .eyebrow{margin-bottom:22px}
@media(max-width:800px){.hero{min-height:820px;height:110svh;max-height:1050px}.hero-media{inset:76px 0 auto;width:100%;height:62%;max-height:none}.hero-media video{object-fit:contain;object-position:center top}.hero-content{left:6%;right:6%;bottom:65px;top:auto;width:auto;max-width:none;padding:23px 24px;border-radius:18px;transform:none;background:#102c2330;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.hero h1{font-size:clamp(48px,10.3vw,74px);margin-bottom:18px}.hero-deck{font-size:14px;line-height:1.5}.hero-content .eyebrow{font-size:8px;margin-bottom:17px}.hero-actions{margin-top:22px;gap:18px}.hero-actions .button{font-size:11px;padding:14px 17px}.hero-bottom{bottom:23px}.hero-shade{background:linear-gradient(0deg,#0a241b85,transparent 60%)}}
/* Infinity edge: no inset frame, no visible join. */
.hero-media{inset:0 0 0 auto;width:auto;height:100%;aspect-ratio:720/934;max-width:100%;overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,#000 18%,#000 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 18%,#000 100%)}.hero-media video{width:100%;height:100%;object-fit:contain;object-position:right center}.hero-frost video{filter:blur(25px) brightness(.78) saturate(.9);transform:scale(1.1)}.hero-shade{background:linear-gradient(90deg,#0a211b55,transparent 65%),linear-gradient(0deg,#0a211b55,transparent 16%)}.hero-content{background:#e8fff407;border-color:#effff721;box-shadow:inset 0 1px #ffffff09;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
@media(max-width:800px){.hero-media{inset:0 0 0 auto;width:100%;height:100%;aspect-ratio:auto;max-height:none;mask-image:none;-webkit-mask-image:none}.hero-media video{object-fit:cover;object-position:center top}.hero-content{background:#102c2326;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}}
/* One continuous cinematic surface, with unboxed typography. */
.hero-content{border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding:0;left:7%;width:48%;max-width:690px}.hero-media{mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.08) 8%,rgba(0,0,0,.38) 24%,rgba(0,0,0,.8) 43%,#000 65%);-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.08) 8%,rgba(0,0,0,.38) 24%,rgba(0,0,0,.8) 43%,#000 65%)}.hero-frost video{filter:blur(70px) brightness(.48) saturate(.55);transform:scale(1.2)}.hero-shade{background:linear-gradient(90deg,rgba(8,25,22,.64) 0%,rgba(8,25,22,.36) 37%,rgba(8,25,22,.08) 70%,transparent 100%),linear-gradient(0deg,#0b211b55,transparent 25%)}.hero h1{font-size:clamp(60px,7.4vw,110px);line-height:.98;text-shadow:none}.hero-deck{color:#dbe7e0;line-height:1.7;max-width:425px}.nav{background:#10231c18;border-bottom-color:#ffffff12;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
@media(max-width:800px){.hero-content{left:7%;right:7%;width:auto;padding:0;background:transparent;border:0;backdrop-filter:none;-webkit-backdrop-filter:none;bottom:100px}.hero-media{mask-image:linear-gradient(to bottom,#000 30%,rgba(0,0,0,.6) 63%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 30%,rgba(0,0,0,.6) 63%,transparent 100%)}.hero h1{font-size:clamp(55px,11vw,80px)}.hero-shade{background:linear-gradient(0deg,#0a211be6,transparent 85%)}}
/* Apple-inspired neutral palette and system typography. */
:root{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",Helvetica,Arial,sans-serif;--ink:#1d1d1f;--accent:#0071e3;--muted:#6e6e73;--glass:rgba(255,255,255,.64);--glass-line:rgba(255,255,255,.85);background:#f5f5f7;color:#1d1d1f}body{background:radial-gradient(ellipse at 10% 30%,#dce6f050,transparent 45%),radial-gradient(ellipse at 90% 65%,#e0e5ef80,transparent 45%),#f5f5f7}h1,h2,h3,.hero h1 em,.statement h2 i,.calc-head h2 i,.contact h2 i{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:600;letter-spacing:-.04em}button,input,select{font-family:inherit}.hero h1 em{font-weight:600}.hero h1{letter-spacing:-.045em}.hero,.statement{color:#f5f5f7}.hero-frost video{filter:blur(70px) brightness(.48) saturate(.35)}.hero-shade{background:linear-gradient(90deg,#10101485,transparent 85%),linear-gradient(0deg,#10101455,transparent 25%)}.hero-deck{color:#f5f5f7}.hero .eyebrow,.hero-bottom,.nav .wordmark small{color:#e8e8ed}.nav{background:#16161733}.nav-contact{background:#ffffff18;color:#fff}.hero-actions .light-button,.dark-button,.proceeds-result .button,.lead-form button,.contact .light-button{background:#0071e3;color:#fff;border:1px solid transparent;box-shadow:none}.journey,.calculator,.selling,.insights,.about,.contact{color:#1d1d1f}.eyebrow,.calculator .calc-head .eyebrow,.journey-icon,.journey-options b,.card-meta{color:#0066cc}.calc-head h2 i{color:#1d1d1f}.section-heading h2 span,.about h2 span{color:#86868b}.journey-options a,.card,.proceeds-panel,.calc-panel,.review-wrap,.planner-tabs button,.wa-pop{color:#1d1d1f;background:rgba(255,255,255,.64);border-color:#fff;box-shadow:inset 0 1px #fff,0 12px 40px #1d1d1f08}.journey-options a:hover{background:#fff;border-color:#d2d2d7}.proceeds-result,.calc-result{background:#e9edf34d;color:#1d1d1f;border-color:#d2d2d766}.proceeds-inputs>p:not(.eyebrow),.proceeds-inputs small,.proceeds-result small,.proceeds-result>p,.calc-result p,.review-wrap>div>p:last-child,.lead-form p,.lead-form small,.wa-pop p{color:#6e6e73}.proceeds-fields input,.lead-form input,.lead-form select{background:#ffffff9c;color:#1d1d1f;border-color:#c6c6cbb3;box-shadow:none;color-scheme:light}.proceeds-fields input:focus,.lead-form input:focus,.lead-form select:focus{outline-color:#0071e3}.planner-tabs button[aria-pressed=true]{background:#1d1d1f;color:#fff;border-color:#1d1d1f;box-shadow:none}.proceeds-breakdown>span,.result-row,.selling-steps article{border-color:#d2d2d7}.calc-result>span{color:#6e6e73}.calc-inputs input{accent-color:#0071e3}.review-wrap .eyebrow.light{color:#0066cc}.underlink{color:#0066cc;border-color:#0066cc}.demo-note{color:#86868b}.contact{background:rgba(255,255,255,.4);border-color:#d2d2d766}.contact h2 i{color:#86868b}.statement .eyebrow{color:#f5f5f7}footer{background:#ededf0;color:#6e6e73;border-color:#d2d2d7}footer .wordmark small{color:#86868b}.wa{background:#ffffffa6;color:#1d1d1f;border-color:white;box-shadow:0 8px 30px #0001}.portrait,.selling-photo{border-color:#fff;box-shadow:0 15px 45px #0001}.mark span{color:#86868b}
/* Prefer the locally installed SF Pro Display on every platform. */
:root,body,button,input,select,textarea,h1,h2,h3,.hero h1 em,.statement h2 i,.calc-head h2 i,.contact h2 i{font-family:"SF Pro Display",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif}
/* SF Pro Display: editorial light, expressive italics, confident bold. */
@font-face{font-family:'Hanson SF';src:local('SF Pro Display Regular');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Hanson SF';src:local('SF Pro Display Light');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'Hanson SF';src:local('SF Pro Display Medium');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Hanson SF';src:local('SF Pro Display Bold');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Hanson SF';src:local('SF Pro Display Light Italic');font-weight:300;font-style:italic;font-display:swap}
@font-face{font-family:'Hanson SF';src:local('SF Pro Display Semibold Italic');font-weight:600;font-style:italic;font-display:swap}
:root,body,button,input,select,textarea,h1,h2,h3,.hero h1 em,.statement h2 i,.calc-head h2 i,.contact h2 i{font-family:'Hanson SF','SF Pro Display',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif}
.hero h1{font-weight:300;letter-spacing:-.045em;line-height:1.01}.hero h1 em{font-weight:600;font-style:italic;letter-spacing:-.045em}.hero-deck{font-weight:300;font-size:19px;line-height:1.6}.section-heading h2,.about h2,.calc-head h2,.contact h2,.statement h2{font-weight:300;letter-spacing:-.035em;line-height:1.08}.section-heading h2 span,.about h2 span{font-weight:300;font-style:italic}.calc-head h2 i{font-weight:600;font-style:italic}.contact h2 i,.statement h2 i{font-weight:300;font-style:italic}.journey h2{font-weight:500;letter-spacing:-.025em}.journey-options strong,.selling-steps h3,.card h3{font-weight:500;letter-spacing:-.025em}.selling-photo h3{font-weight:300}.review-wrap>div>h3{font-weight:300;font-size:40px;line-height:1.13}.lead-form h3,.proceeds-inputs h3{font-weight:500}.proceeds-result>strong,.calc-result strong{font-weight:700;letter-spacing:-.055em;font-variant-numeric:tabular-nums}.proceeds-fields input{font-weight:500}.button,.nav-contact,.planner-tabs button,.wordmark{font-weight:700}.eyebrow,.card-meta{font-weight:500;letter-spacing:.18em}.nav nav{font-weight:400}.credential{font-weight:500}.selling-steps p,.section-heading>p,.card p,.about-copy p:not(.credential){font-weight:400}
@media(max-width:800px){.hero-deck{font-size:16px}.hero h1{line-height:1.04}.review-wrap>div>h3{font-size:34px}}
/* Refined spacing and quiet Apple-inspired hierarchy. */
.hero h1,.hero h1 em{font-weight:500;font-style:normal;letter-spacing:-.025em;line-height:1.06}.hero h1{font-size:clamp(58px,6.8vw,100px)}.hero-deck{font-weight:400;font-size:20px;line-height:1.5;max-width:420px}.hero-actions{gap:28px;margin-top:34px}.section-heading h2,.about h2,.calc-head h2,.contact h2,.statement h2,.section-heading h2 span,.about h2 span,.calc-head h2 i,.contact h2 i,.statement h2 i{font-weight:500;font-style:normal;letter-spacing:-.022em;line-height:1.1}.section-heading h2,.about h2,.calc-head h2{font-size:clamp(40px,4.7vw,64px)}.calc-head h2 i{color:#6e6e73}.section-pad{padding:120px 8%}.eyebrow,.hero .eyebrow{letter-spacing:.08em;font-size:11px;font-weight:500}.calc-head>p:last-child,.section-heading>p{font-size:19px;line-height:1.5}.journey{padding:72px 8% 80px}.journey-options{gap:24px;margin-top:36px}.journey-options a{padding:32px;background:#ffffffa6;box-shadow:none}.journey h2{font-weight:500;letter-spacing:-.02em}.proceeds-panel,.calc-panel,.review-wrap{background:#ffffffd9;border:1px solid #e8e8ed;box-shadow:none;backdrop-filter:blur(12px)}.proceeds-result,.calc-result{background:#f5f5f7a6}.proceeds-result>strong,.calc-result strong{font-weight:500;letter-spacing:-.03em}.proceeds-inputs,.proceeds-result,.calc-inputs,.calc-result{padding:44px}.review-wrap>div>h3{font-weight:500;font-size:36px;letter-spacing:-.025em}.proceeds-inputs h3,.lead-form h3,.selling-steps h3,.card h3{font-weight:500;letter-spacing:-.018em}.button,.nav-contact,.planner-tabs button{font-weight:400}.button{font-size:14px;padding:15px 23px}.section-heading{margin-bottom:64px}.selling-steps p{font-size:16px;line-height:1.6}.selling-steps article{padding:24px 0}.cards{gap:28px}.card{background:#fff;border:0;box-shadow:none;padding:0 0 30px;overflow:hidden;backdrop-filter:none}.card-image{border:0;border-radius:0;height:290px}.card-meta,.card h3,.card p{margin-left:26px;margin-right:26px}.card h3{font-size:26px;line-height:1.18;margin-bottom:14px}.card p{font-size:15px;line-height:1.5}.card-meta{letter-spacing:.07em}.statement-inner{background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding:0}.about-copy p:not(.eyebrow):not(.credential){font-size:19px;line-height:1.6}.contact>p:not(.eyebrow){max-width:490px;margin:24px auto;font-size:19px;line-height:1.5}.underlink{font-weight:400;font-size:16px;border:0}.planner-tabs{margin:40px 0 26px}
@media(max-width:800px){.section-pad{padding:80px 7%}.journey{padding:55px 7%}.hero h1{font-size:clamp(49px,10.2vw,76px)}.hero-deck{font-size:17px}.section-heading h2,.about h2,.calc-head h2{font-size:42px}.section-heading>p,.calc-head>p:last-child{font-size:17px}.proceeds-inputs,.proceeds-result,.calc-inputs,.calc-result,.review-wrap{padding:28px}.section-heading{margin-bottom:36px}.journey-options{gap:16px}.journey-options a{padding:26px}}
/* Compact homepage: calculator, service directory, launch note and advisor. */
main#top .section-pad,main#top .journey{padding:56px 8%}
main#top .planner-tabs{margin:24px 0 16px}
main#top .review-wrap{display:block;padding:26px 32px;margin-top:18px}
main#top .lead-form{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:10px 20px}
main#top .lead-form h3,main#top .lead-form p,main#top .lead-form small{grid-column:1/-1;margin:0}
main#top .lead-form label{margin:0}
main#top .journey-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}
main#top .journey-options a{padding:20px;display:flex;flex-direction:column;gap:8px}
main#top .journey-options b{align-self:flex-end}
.home-note{display:grid;grid-template-columns:1fr minmax(230px,34%);gap:40px;align-items:center}
.home-note .card-image{height:175px;border-radius:16px}
.home-note h2,.home-profile h2{font-size:clamp(28px,3.2vw,42px);margin:0}
.home-note p,.home-profile p{line-height:1.5}
.home-profile{grid-template-columns:100px 1fr;gap:26px}
.home-profile img{width:100px;height:100px;border-radius:50%;object-fit:cover;object-position:center 20%}
.home-note .eyebrow,.home-profile .eyebrow{margin-bottom:10px}
.home-note .underlink,.home-profile .underlink{margin-top:0}
@media(max-width:800px){main#top .section-pad,main#top .journey{padding:36px 6%}main#top .journey-options{grid-template-columns:1fr 1fr}.home-note{grid-template-columns:1fr}.home-note .card-image{display:none}.home-profile{grid-template-columns:65px 1fr;gap:16px}.home-profile img{width:65px;height:65px}main#top .lead-form{display:block}main#top .lead-form label{margin-top:10px}main#top .review-wrap{padding:20px}}
/* Shared reading scale for the homepage and service guides. */
:root {
  --type-caption: .875rem;
  --type-control: 1rem;
  --type-body: 1.0625rem;
  --type-title: clamp(1.375rem, 1.6vw, 1.625rem);
}
body { font-size: var(--type-body); }
.nav nav, .nav-contact, .wordmark,
.eyebrow, .hero-content .eyebrow, .hero .eyebrow, .hero-bottom,
.proceeds-inputs small, .proceeds-result small, .calc-result p,
.lead-form small, .selling-steps article > span, footer {
  font-size: var(--type-caption);
  line-height: 1.45;
}
.wordmark small { font-size: .75rem; letter-spacing: .08em; }
.hero-bottom { letter-spacing: .06em; }
.button, .hero-actions .button, .text-link, .underlink, .lead-form button,
.planner-tabs button, .proceeds-fields label, .calc-inputs label, .lead-form label,
.proceeds-breakdown > span, .result-row, .lead-form input, .lead-form select,
.journey-options a > span:not(.journey-icon), .wa-pop a {
  font-size: var(--type-control);
  line-height: 1.45;
}
.proceeds-inputs > p:not(.eyebrow), .proceeds-result > p, .lead-form p,
.home-note p:not(.eyebrow), .home-profile p:not(.eyebrow),
.selling-steps p, .card p, .wa-pop p {
  font-size: var(--type-body);
  line-height: 1.55;
}
.calc-result > span, .journey-options b { font-size: var(--type-caption); }
.proceeds-inputs h3, .lead-form h3, .journey-options strong,
main.section-pad .selling-grid h2 { font-size: var(--type-title); line-height: 1.22; }
main.section-pad .section-heading h1 {
  font-size: clamp(2.5rem, 4.7vw, 4rem);
  line-height: 1.1;
  letter-spacing: -.022em;
  font-weight: 500;
}
main.section-pad .card p { margin: 1rem 0; }
footer { letter-spacing: .035em; }
@media (max-width: 480px) {
  .hero-bottom > span:last-child { display: none; }
  .hero-actions { gap: 12px; }
  .hero-actions .button { gap: 12px; }
  .planner-tabs button { padding: 10px 14px; }
  main#top .journey-options a { padding: 16px; }
  .nav-contact { font-size: var(--type-caption); }
}
/* Shared spacing rhythm for homepage and service pages. */
:root {
  --page-inset: clamp(20px, 6vw, 96px);
  --section-space: clamp(40px, 5vw, 72px);
  --panel-space: clamp(20px, 3vw, 40px);
  --layout-gap: clamp(16px, 2vw, 32px);
}
main#top :is(.section-pad,.journey), main.section-pad {
  padding: var(--section-space) var(--page-inset);
}
.nav, footer { padding-inline: var(--page-inset); }
.hero-content { left: var(--page-inset); }
.hero-bottom { left: var(--page-inset); right: var(--page-inset); }
main#top .journey-options, .selling-grid { gap: var(--layout-gap); }
main#top .journey-options { margin-top: 24px; }
main#top .journey-options a { padding: 20px; gap: 8px; }
.calc-head h2, .proceeds-inputs h3, .home-note h2, .home-profile h2 { margin: 0; }
.calc-head > p:last-child, .proceeds-inputs > h3 + p,
.home-note h2 + p, .home-profile h2 + p { margin: 12px 0 0; }
.home-note .underlink, .home-profile .underlink { margin-top: 16px; }
.planner-tabs { gap: 8px; margin: 24px 0 16px; }
.proceeds-inputs, .proceeds-result, .calc-inputs, .calc-result,
main#top .review-wrap { padding: var(--panel-space); }
.proceeds-fields { gap: 16px; margin: 24px 0; }
main#top .review-wrap { margin-top: 16px; }
main#top .lead-form { gap: 12px 20px; }
main#top .lead-form button { margin: 0; }
.home-note, .home-profile { gap: var(--layout-gap); }
main.section-pad > .underlink { margin: 0 0 32px; }
main.section-pad .section-heading { margin-bottom: 32px; }
main.section-pad .section-heading h1 { margin: 0; }
main.section-pad .eyebrow { margin: 0 0 12px; }
main.section-pad .selling-grid h2 { margin: 0 0 16px; }
main.section-pad .selling-steps article { padding: 16px 0; }
main.section-pad .selling-steps article p { margin: 0; }
@media (max-width: 800px) {
  .hero-content { right: var(--page-inset); }
  main#top .lead-form { display: grid; grid-template-columns: 1fr; gap: 12px; }
  main#top .lead-form label { margin: 0; }
}

/* Apple-style service selector inspired by the supplied reference recording. */
.service-heading{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;margin-bottom:28px}
.service-heading .eyebrow{margin:0;color:#86868b}
.service-heading h2{font-size:clamp(34px,4vw,52px);font-weight:500;letter-spacing:-.035em;margin:0;color:#1d1d1f}
.service-showcase{position:relative;isolation:isolate;overflow:hidden;width:min(100%,1020px);height:clamp(210px,31vw,390px);margin:0 auto;border-radius:24px;background:#e8ebee;transform:translateZ(0)}
.service-image{position:absolute;inset:-1%;background-image:url("assets/interior.jpg");background-size:cover;background-position:center 55%;transform:scale(1.015);transition:opacity .28s ease,transform .7s cubic-bezier(.2,.7,.2,1);opacity:1}
.service-showcase.is-changing .service-image{opacity:.35;transform:scale(1.045)}
.service-image-wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,20,26,.28),transparent 65%),linear-gradient(0deg,rgba(12,20,26,.38),transparent 50%);pointer-events:none}
.service-image-label{position:absolute;left:clamp(18px,3vw,34px);bottom:clamp(17px,3vw,30px);color:white;font-size:12px;letter-spacing:.12em;font-weight:500;text-shadow:0 1px 12px #0006}
.service-tabs{--tab-index:0;position:relative;display:flex;width:max-content;max-width:100%;margin:22px auto 23px;padding:4px;border-radius:999px;background:#e8e8ed;isolation:isolate}
.service-tabs:before{content:"";position:absolute;z-index:-1;left:4px;top:4px;bottom:4px;width:calc((100% - 8px)/4);border-radius:999px;background:#1d1d1f;transform:translateX(calc(var(--tab-index)*100%));transition:transform .34s cubic-bezier(.2,.8,.2,1)}
.service-tabs button{position:relative;z-index:1;min-width:130px;padding:10px 17px;border:0;border-radius:999px;background:transparent;color:#1d1d1f;font-size:14px;font-weight:400;white-space:nowrap;cursor:pointer;transition:color .24s ease}
.service-tabs button[aria-selected=true]{color:white}
.service-tabs button:focus-visible{outline:2px solid #0071e3;outline-offset:3px}
.service-panel{max-width:690px;margin:0 auto;text-align:center;transition:opacity .18s ease,transform .24s ease}
.service-panel.is-changing{opacity:0;transform:translateY(8px)}
.service-panel h3{margin:0 0 10px;font-size:clamp(22px,2.6vw,30px);line-height:1.2;letter-spacing:-.025em;font-weight:500;color:#1d1d1f}
.service-panel>p{max-width:640px;margin:0 auto;color:#6e6e73;font-size:17px;line-height:1.48}
.service-features{display:grid;grid-template-columns:1fr 1fr;max-width:540px;margin:23px auto 18px;text-align:left;gap:30px}
.service-features>div{display:grid;grid-template-columns:32px 1fr;column-gap:10px;align-items:center}
.service-feature-icon{grid-row:span 2;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#f0f0f2;color:#1d1d1f;font-size:16px}
.service-features strong{font-size:15px;line-height:1.3;font-weight:500;color:#1d1d1f}
.service-features>div>span:last-child{font-size:13px;line-height:1.4;color:#6e6e73}
.service-link{display:inline-block;margin-top:5px;font-size:15px}
@media(max-width:640px){.service-showcase{height:220px;border-radius:18px}.service-tabs{display:flex;width:100%;margin:18px auto 21px;padding:3px}.service-tabs:before{left:3px;top:3px;bottom:3px;width:calc((100% - 6px)/4)}.service-tabs button{min-width:0;flex:1;padding:9px 5px;font-size:12px}.service-panel>p{font-size:16px}.service-features{gap:12px;margin:20px auto 16px}.service-features>div{grid-template-columns:26px 1fr;column-gap:7px}.service-feature-icon{width:24px;height:24px;font-size:14px}.service-features strong{font-size:13px}.service-features>div>span:last-child{font-size:11px}}
@media(prefers-reduced-motion:reduce){.service-image,.service-tabs:before,.service-panel{transition:none!important}}

/* Match the advisor portrait to the full profile copy block. */
.home-profile{grid-template-columns:minmax(170px,24%) 1fr;align-items:stretch}
.home-profile>img{width:100%;height:100%;min-height:176px;align-self:stretch;aspect-ratio:auto;object-fit:cover;object-position:center 24%;border-radius:18px}
@media(max-width:800px){.home-profile{grid-template-columns:65px 1fr;align-items:center}.home-profile>img{width:65px;height:65px;min-height:65px;aspect-ratio:1;border-radius:50%;object-position:center 20%}}

/* Circular advisor portrait, equal in height to the adjacent copy block. */
.home-profile{grid-template-columns:140px 1fr;align-items:center}
.home-profile>img{width:140px;height:140px;min-height:140px;aspect-ratio:1;border-radius:50%;object-fit:cover;object-position:center 20%}
.home-profile #contact{min-height:140px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start}
.home-profile #contact h2,.home-profile #contact p,.home-profile #contact .underlink{margin:0}
@media(max-width:800px){.home-profile{grid-template-columns:65px 1fr;align-items:center}.home-profile>img{width:65px;height:65px;min-height:65px;aspect-ratio:1;border-radius:50%;object-position:center 20%}.home-profile #contact{min-height:0;display:block}.home-profile #contact p{margin:12px 0 0}.home-profile #contact .underlink{margin-top:16px}}

/* Hanson Ong wordmark: bold SF Pro, italic surname and house-in-the-O. */
.wordmark{display:inline-flex;align-items:center;gap:0;letter-spacing:normal;line-height:0}
.wordmark .brand-logo{display:block;width:auto;height:58px;max-width:190px}
footer .wordmark .brand-logo{height:58px}
@media(max-width:800px){.wordmark .brand-logo{height:50px;max-width:164px}footer .wordmark .brand-logo{height:50px}}

/* House-O wordmark: icon replaces the O in Hanson; Ong is offset and italic. */
.wordmark .brand-logo{height:68px;max-width:190px;width:auto}
footer .wordmark .brand-logo{height:64px}
@media(max-width:800px){.wordmark .brand-logo{height:58px;max-width:164px}footer .wordmark .brand-logo{height:54px}}

/* Balanced spacing and mobile navigation refinement. */
:root{
  --page-inset:clamp(20px,6vw,88px);
  --section-space:clamp(58px,4.8vw,68px);
  --panel-space:clamp(26px,3.1vw,40px);
  --layout-gap:clamp(20px,2.5vw,34px);
}
main#top :is(.section-pad,.journey),main.section-pad{padding:var(--section-space) var(--page-inset)}
.calc-head>p:last-child{margin-top:16px;line-height:1.6}
.planner-tabs{margin:30px 0 20px}
main#top .review-wrap{margin-top:22px}
main#top .lead-form{gap:16px 22px}
.service-heading{margin-bottom:32px}
.service-tabs{margin-block:26px 28px}
.service-features{margin-block:26px 22px;gap:32px}
.home-profile #contact{min-height:140px}
.nav-menu-toggle{display:none}
.nav-menu-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
@media(max-width:800px){
  :root{--page-inset:clamp(20px,6vw,34px);--section-space:clamp(48px,7.7vw,58px);--panel-space:clamp(22px,4.4vw,28px);--layout-gap:20px}
  .nav{gap:10px}
  .nav-menu-toggle{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;padding:0;border:1px solid #ffffff75;border-radius:50%;background:#ffffff1c;color:#fff;cursor:pointer}
  .nav-menu-toggle[aria-expanded=true]{background:#fff;color:#1d1d1f}
  .nav nav{display:none;position:absolute;top:calc(100% + 8px);left:var(--page-inset);right:var(--page-inset);flex-direction:column;gap:2px;padding:8px;border:1px solid #e5e5ea;border-radius:18px;background:rgba(250,250,252,.97);color:#1d1d1f;box-shadow:0 18px 48px #0002;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
  .nav nav.is-open{display:flex}
  .nav nav a{padding:13px 14px;border-radius:11px;color:#1d1d1f;font-size:15px;line-height:1.35}
  .nav nav a:hover{background:#f0f0f5}
  .nav-contact{margin-left:auto;padding:10px 12px;white-space:nowrap}
  .service-showcase{height:clamp(220px,45vw,300px)}
  .service-tabs{margin-block:22px 24px}
  .service-tabs button{font-size:clamp(10px,1.9vw,12px);padding:9px 7px}
  .service-features{gap:24px}
}
@media(max-width:480px){
  :root{--page-inset:20px;--section-space:48px;--panel-space:22px;--layout-gap:18px}
  .nav{padding-inline:20px}
  .nav-contact{font-size:13px;padding:9px 10px}
  .nav-contact span{margin-left:6px}
  .nav-menu-toggle{flex-basis:40px;width:40px;height:40px}
  .calc-head h2{font-size:clamp(36px,10vw,44px)}
  .proceeds-fields{gap:14px;margin-block:22px}
  .proceeds-fields label{font-size:12px;line-height:1.4}
  .proceeds-fields input{min-height:48px;padding:11px 12px}
  .planner-tabs{gap:7px;margin-block:26px 18px}
  .planner-tabs button{flex:1;min-width:0;padding:11px 10px;font-size:13px}
  .service-showcase{height:220px}
  .service-tabs button{font-size:10.5px;padding-inline:4px}
  .service-features{grid-template-columns:1fr;max-width:310px;gap:15px;margin-block:22px 18px}
  .service-features>div{grid-template-columns:30px 1fr;column-gap:9px}
  .service-features strong{font-size:14px}
  .service-features>div>span:last-child{font-size:13px}
  .wa{width:50px;height:50px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom))}
  .wa svg{width:24px;height:24px}
}
@media(max-width:360px){
  .wordmark .brand-logo{height:52px;max-width:110px}
  .nav-contact{font-size:12px;padding-inline:8px}
  .nav-menu-toggle{flex-basis:38px;width:38px;height:38px}
}

/* Balanced rhythm: shorter section seams, more room inside the main tools. */
:root{
  --section-space:clamp(42px,4vw,56px);
  --panel-space:clamp(30px,3.4vw,46px);
  --layout-gap:clamp(22px,2.5vw,32px);
}
main#top .planner-tabs{margin:32px 0 22px}
main#top .review-wrap{margin-top:24px}
main#top .lead-form{gap:18px 24px}
.proceeds-fields{gap:20px 18px;margin-block:28px}
.proceeds-fields input{min-height:48px}
.proceeds-result .button,.lead-form button{min-height:50px}
.service-heading{margin-bottom:36px;justify-content:flex-start}
.service-tabs{margin-block:28px 30px}
.service-features{margin-block:28px 24px;gap:30px}
@media(max-width:800px){
  :root{--section-space:clamp(34px,7vw,42px);--panel-space:clamp(24px,4.4vw,32px);--layout-gap:24px}
}
@media(max-width:480px){
  :root{--section-space:32px;--panel-space:24px;--layout-gap:18px}
  .proceeds-fields{grid-template-columns:1fr;gap:16px;margin-block:22px}
  .service-tabs button{font-size:13px;padding-inline:10px}
}
/* Keep the four service options legible on small screens. */
@media(max-width:640px){
  .service-tabs{width:100%;justify-content:flex-start;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;scroll-behavior:smooth;scroll-snap-type:x mandatory}
  .service-tabs::-webkit-scrollbar{display:none}
  .service-tabs:before{width:120px}
  .service-tabs button{flex:0 0 120px;min-width:120px;padding:11px 10px;font-size:13px;scroll-snap-align:start}
}
@media(prefers-reduced-motion:reduce){.service-tabs{scroll-behavior:auto}}

/* Keep the slim site credit in the footer after removing the duplicate mark. */
footer{justify-content:flex-end}

/* Hanson type scale: consistent display, heading, subhead, body and caption roles. */
:root{
  --type-caption:14px;
  --type-body:18px;
  --type-subhead:28px;
  --type-heading:clamp(40px,4.2vw,56px);
  --type-display:clamp(56px,7.4vw,96px);
}
body{font-size:var(--type-body);line-height:1.55}
.hero h1{font-size:var(--type-display);line-height:1.04}
.intro h2,.section-heading h2,.about h2,.calc-head h2,.contact h2,.statement h2,
.service-heading h2,.home-note h2,.home-profile h2,
main.section-pad .section-heading h1,main#top .home-profile #contact h2{
  font-size:var(--type-heading);line-height:1.1;letter-spacing:-.035em;font-weight:500
}
.selling-grid h2,.card h2,main.section-pad .selling-grid h2,main.section-pad .card h2{
  font-size:var(--type-subhead);line-height:1.25;letter-spacing:-.025em;font-weight:500
}
.proceeds-inputs h3,.lead-form h3,.review-wrap>div>h3,.selling-steps h3,
.selling-photo h3,.card h3,.service-panel h3{
  font-size:var(--type-subhead);line-height:1.25;letter-spacing:-.025em;font-weight:500
}
.journey-options strong,.service-features strong{font-size:16px;line-height:1.35;font-weight:500}
p:not(.eyebrow):not(.credential),.about-copy p:not(.eyebrow):not(.credential),
.review-wrap>div>p:last-child{
  font-size:var(--type-body);line-height:1.55
}
.eyebrow,.hero-bottom,.card-meta,.credential,.service-image-label,
.selling-steps article>span,.calc-result>span,small,
.proceeds-inputs small,.proceeds-result small,.lead-form small,.contact small,.wordmark small{
  font-size:var(--type-caption);line-height:1.45
}
.button,.hero-actions .button,.text-link,.underlink,.nav nav,.nav nav a,.nav-contact,
.planner-tabs button,.service-tabs button,.lead-form label,.proceeds-fields label,
.calc-inputs label,.proceeds-breakdown>span,.result-row,.wa-pop a{
  font-size:16px;line-height:1.45
}
.proceeds-fields input{font-size:var(--type-body)}
.service-features>div>span:last-child{font-size:var(--type-caption);line-height:1.45}
@media(max-width:800px){
  :root{--type-heading:clamp(36px,6vw,48px);--type-subhead:24px;--type-body:17px}
  .hero h1{font-size:clamp(52px,11vw,80px)}
}
@media(max-width:480px){
  :root{--type-heading:36px;--type-subhead:24px;--type-body:16px;--type-caption:14px}
  .service-tabs button{font-size:14px}
}
@media(max-width:640px){
  .service-tabs:before{width:132px}
  .service-tabs button{flex-basis:132px;min-width:132px}
}
.hero .eyebrow,.hero-content .eyebrow{font-size:var(--type-caption)}
.journey-options a>span:not(.journey-icon){font-size:var(--type-body)}

/* Service choices and their explanations sit clearly below the feature image. */
.service-heading{margin-bottom:40px}
.service-tabs{margin:42px auto 38px;padding:6px}
.service-tabs:before{left:6px;top:6px;bottom:6px;width:calc((100% - 12px)/4)}
.service-tabs button{min-width:156px;padding:15px 22px;font-size:16px}
.service-panel{max-width:760px}
.service-panel h3{margin-bottom:16px}
.service-panel>p{max-width:720px;font-size:var(--type-body);line-height:1.6}
.service-features{max-width:620px;gap:40px;margin:32px auto 24px}
.service-features strong{font-size:var(--type-body);line-height:1.35;font-weight:600}
.service-features>div>span:last-child{font-size:var(--type-caption);line-height:1.5}
.service-link{margin-top:10px;font-size:17px}
@media(max-width:640px){
  .service-heading{margin-bottom:30px}
  .service-tabs{margin:32px auto 30px;padding:4px}
  .service-tabs:before{left:4px;top:4px;bottom:4px;width:140px}
  .service-tabs button{flex-basis:140px;min-width:140px;padding:13px 10px;font-size:15px}
  .service-panel{max-width:100%}
  .service-features{gap:22px;margin:26px auto 20px}
}

/* Service selector and booking link use the site's clear blue action style. */
.service-tabs{gap:12px;margin:48px auto 44px;padding:0;background:transparent;overflow:visible}
.service-tabs:before{display:none}
.service-tabs button{
  flex:0 0 auto;min-width:170px;padding:18px 25px;border:1px solid #0071e3;
  border-radius:999px;background:#0071e3;color:#fff;font-size:18px;font-weight:600;
  transition:background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease
}
.service-tabs button[aria-selected=true]{background:#005bb5;border-color:#005bb5;color:#fff;box-shadow:0 8px 22px #0071e340}
.service-tabs button:hover{background:#0063c7;border-color:#0063c7;transform:translateY(-2px)}
.service-panel h3{font-size:34px;line-height:1.12;letter-spacing:-.03em;margin-bottom:18px}
.service-panel>p{max-width:760px;font-size:20px;line-height:1.55}
.service-features{max-width:700px;gap:36px;margin:36px auto 28px}
.service-features>div{grid-template-columns:1fr;gap:7px;padding:20px 22px;border:1px solid #d5e6fb;border-radius:16px;background:#f3f8ff}
.service-feature-icon{display:none}
.service-features strong{font-size:19px;line-height:1.3;color:#1d1d1f}
.service-features>div>span:last-child{font-size:16px;line-height:1.45}
.service-panel .service-link{
  display:inline-flex;align-items:center;justify-content:center;min-height:58px;margin:12px auto 0;
  padding:17px 28px;border:0;border-radius:999px;background:#0071e3;color:#fff;
  font-size:18px;font-weight:600;line-height:1.35;text-decoration:none;box-shadow:0 8px 22px #0071e31f
}
.service-panel .service-link:hover{background:#0063c7;transform:translateY(-2px)}
@media(max-width:640px){
  .service-tabs{width:100%;max-width:100%;justify-content:flex-start;overflow-x:auto;margin:34px auto 34px;padding:0;scroll-snap-type:x mandatory}
  .service-tabs button{flex:0 0 150px;min-width:150px;padding:15px 12px;font-size:16px;scroll-snap-align:start}
  .service-panel h3{font-size:28px}
  .service-panel>p{font-size:17px}
  .service-features{grid-template-columns:1fr;max-width:440px;gap:14px;margin:28px auto 24px}
  .service-features>div{padding:18px}
  .service-features strong{font-size:17px}
  .service-features>div>span:last-child{font-size:15px}
  .service-panel .service-link{width:100%;min-height:56px;padding:15px 20px;font-size:17px}
}
@media(prefers-reduced-motion:reduce){.service-tabs button,.service-panel .service-link{transition:none!important}}

/* Restore the previous segmented services control and quieter text link. */
.service-tabs{width:max-content;max-width:100%;gap:0;margin:42px auto 38px;padding:6px;border-radius:999px;background:#e8e8ed;overflow:visible;isolation:isolate}
.service-tabs:before{display:block;left:6px;top:6px;bottom:6px;width:calc((100% - 12px)/4);border-radius:999px;background:#1d1d1f;transition:transform .34s cubic-bezier(.2,.8,.2,1)}
.service-tabs button{flex:0 0 auto;min-width:156px;padding:15px 22px;border:0;border-radius:999px;background:transparent;color:#1d1d1f;font-size:16px;font-weight:400;box-shadow:none;transform:none}
.service-tabs button[aria-selected=true],.service-tabs button[aria-selected=true]:hover{background:transparent;border-color:transparent;color:#fff}
.service-tabs button:hover{background:transparent;border-color:transparent;color:#1d1d1f;transform:none}
.service-panel h3{font-size:var(--type-subhead);line-height:1.25;letter-spacing:-.025em;margin-bottom:16px}
.service-panel>p{max-width:720px;font-size:var(--type-body);line-height:1.6}
.service-features{max-width:620px;gap:40px;margin:32px auto 24px}
.service-features>div{grid-template-columns:32px 1fr;column-gap:10px;gap:0;align-items:center;padding:0;border:0;border-radius:0;background:transparent}
.service-feature-icon{display:grid;grid-row:span 2}
.service-features strong{font-size:var(--type-body);line-height:1.35;font-weight:500}
.service-features>div>span:last-child{font-size:var(--type-caption);line-height:1.45}
.service-panel .service-link{display:inline-block;min-height:0;margin:10px auto 0;padding:0;border:0;border-bottom:1px solid currentColor;border-radius:0;background:transparent;color:#0066cc;font-size:17px;font-weight:400;line-height:1.45;text-decoration:none;box-shadow:none}
.service-panel .service-link:hover{background:transparent;transform:none;color:#004f9d}
@media(max-width:640px){
  .service-tabs{width:100%;max-width:100%;justify-content:flex-start;overflow-x:auto;margin:32px auto 30px;padding:4px;scroll-snap-type:x mandatory}
  .service-tabs:before{left:4px;top:4px;bottom:4px;width:132px}
  .service-tabs button{flex:0 0 132px;min-width:132px;padding:13px 10px;font-size:14px;scroll-snap-align:start}
  .service-panel h3{font-size:var(--type-subhead)}
  .service-panel>p{font-size:var(--type-body)}
  .service-features{grid-template-columns:1fr;max-width:440px;gap:22px;margin:26px auto 20px}
}

/* Keep the hero deck on one line at desktop widths; let it wrap on mobile. */
@media(min-width:801px){.hero .hero-deck{max-width:none;width:max-content;white-space:nowrap}}
@media(max-width:800px){.hero .hero-deck{max-width:520px;width:auto;white-space:normal}}
.hero-actions .button{width:230px;min-height:56px;justify-content:center;padding:16px 20px;gap:14px;text-align:center}
.hero-actions .glass-button{color:#fff;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.52);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 8px 28px rgba(0,0,0,.12);backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%)}
.hero-actions .glass-button:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.7)}
@media(max-width:800px){.hero-actions .button{width:min(100%,250px)}}

/* Responsive layout and original property glyphs, inspired by Apple HIG principles. */
:root{--hig-gutter:clamp(20px,6vw,88px);--hig-content:1200px;--hig-section-space:clamp(52px,7vw,100px)}
main#top>.section-pad,main#top>.journey{padding-inline:var(--hig-gutter)}
main#top>.calculator,main#top>.journey{padding-block:var(--hig-section-space)}
main#top>.calculator>*,main#top>.journey>*{max-width:min(100%,var(--hig-content));margin-inline:auto}
main#top>.about>*{max-width:min(100%,var(--hig-content))}
.property-glyph{width:28px;height:28px;display:block;grid-row:span 2;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;color:#0066cc}
.service-features>div:has(.property-glyph){grid-template-columns:32px 1fr;column-gap:10px;align-items:center}
.service-features>div .property-glyph{margin:0}
.planner-tabs button,.service-tabs button,.button,.nav-contact,.lead-form input,.lead-form select{min-height:44px}
.calc-inputs input[type=range]{min-height:44px}
.wa{right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom))}
@media(max-width:800px){main#top>.calculator,main#top>.journey{padding-block:clamp(44px,12vw,72px)}main#top>.about{padding-inline:var(--hig-gutter)}}
@media(prefers-reduced-motion:reduce){.property-glyph{transition:none!important}}
.nav{height:116px}
.nav .wordmark{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:0;height:80px;letter-spacing:normal;line-height:1;transform:translateY(-3px)}
.nav .brand-logo{height:68px;max-width:180px;width:auto}
.brand-tagline{display:block;width:77.5%;margin-top:2px;color:currentColor;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif;font-size:10px;font-weight:300;letter-spacing:.02em;line-height:1;text-align:justify;text-align-last:justify;white-space:nowrap}
.hero{height:min(820px,calc(100svh - 116px))}
@media(max-width:800px){.nav{height:100px}.nav .wordmark{height:64px}.nav .brand-logo{height:54px;max-width:160px}.brand-tagline{font-size:8px;font-weight:300;letter-spacing:.02em}.hero{height:auto}}

.button.has-mark{justify-content:center;gap:14px;text-align:center}
#reviewSale{justify-content:center;gap:14px;text-align:center}
.button-mark{font:inherit;line-height:1}
.nav-contact{display:inline-flex;align-items:center;justify-content:center;gap:14px;white-space:nowrap}
.nav-contact span{margin-left:0}
.proceeds-result small,#mortgagePanel .calc-result p{font-size:var(--type-caption);line-height:1.45}
.planner-tabs{--planner-index:0;position:relative;isolation:isolate;display:flex;flex-wrap:nowrap;gap:0;width:min(100%,440px);margin:30px 0 22px;padding:6px;border-radius:999px;background:#e8e8ed}
.planner-tabs:before{content:"";position:absolute;z-index:-1;left:6px;top:6px;bottom:6px;width:calc((100% - 12px)/2);border-radius:999px;background:#1d1d1f;transform:translateX(calc(var(--planner-index)*100%));transition:transform .34s cubic-bezier(.2,.8,.2,1)}
.planner-tabs button,.planner-tabs button[aria-pressed=true]{flex:1 1 0;min-width:0;padding:13px 12px;border:0;border-radius:999px;background:transparent;color:#1d1d1f;box-shadow:none;font-size:15px;font-weight:400;white-space:nowrap}
.planner-tabs button[aria-pressed=true]{color:#fff}
.planner-tabs button:hover,.planner-tabs button[aria-pressed=true]:hover{background:transparent;color:inherit}
.planner-tabs button[aria-pressed=true]:hover{color:#fff}
.planner-tabs button:focus-visible{outline:2px solid #0071e3;outline-offset:3px}
@media(max-width:480px){.planner-tabs{width:100%}.planner-tabs button{font-size:13px;padding-inline:7px}}
@media(prefers-reduced-motion:reduce){.planner-tabs:before{transition:none}}
.service-tabs:before,.planner-tabs:before{transition:transform .75s cubic-bezier(.2,.8,.2,1)}
@media(prefers-reduced-motion:reduce){.service-tabs:before,.planner-tabs:before{transition:none!important}}
.proceeds-panel,#mortgagePanel{min-height:560px;align-items:stretch}
@media(max-width:800px){.proceeds-panel,#mortgagePanel{min-height:720px}}
.proceeds-inputs h3,.calc-inputs h3{font-size:29px;letter-spacing:-.045em;line-height:1.2;margin:0 0 12px}
.proceeds-inputs>p:not(.eyebrow),.calc-inputs>p{font-size:14px;color:#64786f;line-height:1.6;margin:0 0 28px}
main#top .calculator-intro-title{font-size:var(--type-title);font-weight:500;letter-spacing:-.018em;line-height:1.22;margin:0 0 12px}
main#top .calculator-intro-copy{font-size:14px;line-height:1.6;color:#64786f;margin:0 0 28px}
.calc-inputs label{margin-bottom:16px}
.calc-inputs input[type=range]{margin-top:10px}
.proceeds-fields{max-width:680px;margin:32px auto;gap:32px 28px}
@media(max-width:800px){.proceeds-fields{margin-block:28px;gap:24px 18px}}

.selling-cost-guide{display:block;margin:0 0 10px;color:#6e6e73}

/* Wider desktop hero video for a more expansive, edge-to-edge feel. */
@media (min-width: 801px) {
  .hero-media {
    width: 72%;
    height: 100%;
    aspect-ratio: auto;
    max-width: none;
  }
  .hero-media video {
    object-fit: cover;
    object-position: right center;
  }
}

/* Keep both planner result labels in sentence case with matching muted color. */
.proceeds-result > .eyebrow,
#mortgagePanel .calc-result > span {
  color: #6e6e73;
}

/* Give the hero more vertical room on desktop. */
@media (min-width: 801px) {
  .hero {
    height: min(960px, calc(115svh - 116px));
  }
}

/* Preserve the full source frame inside the expanded desktop hero. */
@media (min-width: 801px) {
  .hero-media video {
    object-fit: contain;
    object-position: right center;
  }
}

/* Feather the text-to-video transition across the desktop hero. */
@media (min-width: 801px) {
  .hero-media {
    mask-image: linear-gradient(to right,
      transparent 0%,
      rgba(0, 0, 0, .025) 14%,
      rgba(0, 0, 0, .09) 30%,
      rgba(0, 0, 0, .22) 46%,
      rgba(0, 0, 0, .43) 62%,
      rgba(0, 0, 0, .7) 80%,
      #000 100%);
    -webkit-mask-image: linear-gradient(to right,
      transparent 0%,
      rgba(0, 0, 0, .025) 14%,
      rgba(0, 0, 0, .09) 30%,
      rgba(0, 0, 0, .22) 46%,
      rgba(0, 0, 0, .43) 62%,
      rgba(0, 0, 0, .7) 80%,
      #000 100%);
  }
}

/* Restore the previous desktop hero transition. */
@media (min-width: 801px) {
  .hero-media {
    mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.08) 8%, rgba(0,0,0,.38) 24%, rgba(0,0,0,.8) 43%, #000 65%);
    -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.08) 8%, rgba(0,0,0,.38) 24%, rgba(0,0,0,.8) 43%, #000 65%);
  }
}

/* Keep the full portrait video visible within the right half of the hero. */
@media (min-width: 801px) {
  .hero-media {
    width: 50%;
    height: 100%;
    aspect-ratio: auto;
    max-width: none;
  }
  .hero-media video {
    object-fit: contain;
    object-position: right center;
  }
}

/* Keep the navigation in document flow so the hero begins below it. */
.nav {
  position: relative;
  background: rgba(22, 22, 23, .96);
}

/* White navigation on the dark glass header. */
@media (min-width: 801px) {
  .nav nav,
  .nav nav a,
  .nav-contact {
    color: #fff;
  }
  .nav-contact {
    border-color: #ffffff75;
    background: #ffffff1c;
  }
}

/* Shorten the desktop hero while keeping it close to a full-screen opening. */
@media (min-width: 801px) {
  .hero {
    height: min(880px, calc(100svh - 100px));
  }
}

/* Further reduce the desktop hero height. */
@media (min-width: 801px) {
  .hero {
    height: min(760px, calc(90svh - 100px));
  }
}

/* Blur only the text/video seam; keep the video frame and crop unchanged. */
@media (min-width: 801px) {
  .hero-media::before {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    left: 0;
    width: clamp(72px, 10vw, 150px);
    pointer-events: none;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    background: linear-gradient(90deg, rgba(20, 20, 24, .22), transparent);
    mask-image: linear-gradient(90deg, #000 0%, rgba(0,0,0,.7) 48%, transparent 100%);
    -webkit-mask-image: linear-gradient(90deg, #000 0%, rgba(0,0,0,.7) 48%, transparent 100%);
  }
}

/* Extend the seam fade over the portrait video's inset margin and into its edge. */
@media (min-width: 801px) {
  .hero-media::before {
    width: clamp(220px, 30vw, 480px);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    background: linear-gradient(90deg, rgba(20,20,24,.18) 0%, rgba(20,20,24,.12) 46%, transparent 100%);
    mask-image: linear-gradient(90deg, #000 0%, rgba(0,0,0,.88) 46%, rgba(0,0,0,.52) 76%, transparent 100%);
    -webkit-mask-image: linear-gradient(90deg, #000 0%, rgba(0,0,0,.88) 46%, rgba(0,0,0,.52) 76%, transparent 100%);
  }
}

/* Visible blend over the hero seam; the video element itself remains untouched. */
@media (min-width: 801px) {
  .hero-media::before { display: none; }
  .hero::after {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    left: 50%;
    width: clamp(220px, 25vw, 420px);
    pointer-events: none;
    background: linear-gradient(90deg,
      rgba(20, 23, 24, .96) 0%,
      rgba(20, 23, 24, .82) 20%,
      rgba(20, 23, 24, .54) 46%,
      rgba(20, 23, 24, .2) 76%,
      transparent 100%);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    mask-image: linear-gradient(90deg, #000 0%, #000 35%, transparent 100%);
    -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 35%, transparent 100%);
  }
  .hero-content,
  .hero-bottom {
    z-index: 3;
  }
}

/* Restore the progressive transparency blend at the video edge. */
@media (min-width: 801px) {
  .hero::after { display: none; }
  .hero-media::before { display: none; }
  .hero-media {
    mask-image: none;
    -webkit-mask-image: none;
  }
  .hero-media video {
    object-fit: contain;
    object-position: right center;
    mask-image: linear-gradient(90deg,
      transparent 0%,
      rgba(0,0,0,.04) 20%,
      rgba(0,0,0,.16) 30%,
      rgba(0,0,0,.4) 43%,
      rgba(0,0,0,.7) 57%,
      rgba(0,0,0,.92) 68%,
      #000 78%);
    -webkit-mask-image: linear-gradient(90deg,
      transparent 0%,
      rgba(0,0,0,.04) 20%,
      rgba(0,0,0,.16) 30%,
      rgba(0,0,0,.4) 43%,
      rgba(0,0,0,.7) 57%,
      rgba(0,0,0,.92) 68%,
      #000 78%);
  }
}

/* More transparent dark glass for the navigation bar. */
.nav {
  background: rgba(22, 22, 23, .68);
  backdrop-filter: blur(22px) saturate(150%);
  -webkit-backdrop-filter: blur(22px) saturate(150%);
}

/* Frosted glass treatment across the full navigation bar. */
.nav {
  background: rgba(22, 22, 23, .58);
  border-bottom: 1px solid rgba(255, 255, 255, .2);
  box-shadow: inset 0 1px rgba(255, 255, 255, .16), 0 8px 28px rgba(0, 0, 0, .08);
  backdrop-filter: blur(28px) saturate(155%);
  -webkit-backdrop-filter: blur(28px) saturate(155%);
}

/* Layer the frosted navigation over the moving hero footage. */
.nav {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background: rgba(22, 22, 23, .38);
  border-bottom: 1px solid rgba(255, 255, 255, .24);
  box-shadow: inset 0 1px rgba(255, 255, 255, .2), 0 8px 28px rgba(0, 0, 0, .08);
  backdrop-filter: blur(24px) saturate(160%);
  -webkit-backdrop-filter: blur(24px) saturate(160%);
}

/* Enlarge the desktop hero while keeping its full video frame. */
@media (min-width: 801px) {
  .hero {
    height: min(900px, calc(100svh - 40px));
  }
}

/* Fluid, one-time type-on reveal for the hero's final word. */
.hero h1 em.hero-type {
  display: inline-block;
  white-space: nowrap;
  clip-path: inset(0 100% 0 0);
  animation: hero-type-on 2.2s cubic-bezier(.2, .7, .25, 1) .2s forwards;
  will-change: clip-path;
}
@keyframes hero-type-on {
  from { clip-path: inset(0 100% 0 0); }
  to { clip-path: inset(0 0 0 0); }
}
@media (prefers-reduced-motion: reduce) {
  .hero h1 em.hero-type {
    clip-path: none;
    animation: none;
  }
}








/* Remove the navigation bar's bottom separator line. */
.nav {
  border-bottom: 0;
}

/* Gradually reveal the half-width video across its entire left seam. */
@media (min-width: 801px) {
  .hero-media {
    mask-image: linear-gradient(90deg,
      transparent 0%,
      transparent 14%,
      rgba(0,0,0,.04) 22%,
      rgba(0,0,0,.12) 30%,
      rgba(0,0,0,.28) 40%,
      rgba(0,0,0,.5) 50%,
      rgba(0,0,0,.74) 61%,
      rgba(0,0,0,.92) 72%,
      #000 80%);
    -webkit-mask-image: linear-gradient(90deg,
      transparent 0%,
      transparent 14%,
      rgba(0,0,0,.04) 22%,
      rgba(0,0,0,.12) 30%,
      rgba(0,0,0,.28) 40%,
      rgba(0,0,0,.5) 50%,
      rgba(0,0,0,.74) 61%,
      rgba(0,0,0,.92) 72%,
      #000 80%);
  }
  .hero-media video {
    mask-image: none;
    -webkit-mask-image: none;
  }
}

/* Restore the previous progressive fade on the video element. */
@media (min-width: 801px) {
  .hero-media {
    mask-image: none;
    -webkit-mask-image: none;
  }
  .hero-media video {
    mask-image: linear-gradient(90deg,
      transparent 0%,
      rgba(0,0,0,.04) 20%,
      rgba(0,0,0,.16) 30%,
      rgba(0,0,0,.4) 43%,
      rgba(0,0,0,.7) 57%,
      rgba(0,0,0,.92) 68%,
      #000 78%);
    -webkit-mask-image: linear-gradient(90deg,
      transparent 0%,
      rgba(0,0,0,.04) 20%,
      rgba(0,0,0,.16) 30%,
      rgba(0,0,0,.4) 43%,
      rgba(0,0,0,.7) 57%,
      rgba(0,0,0,.92) 68%,
      #000 78%);
  }
}

/* Match both calculator result labels to the calculator intro copy. */
.proceeds-result > .eyebrow,
#mortgagePanel .calc-result > span {
  color: #b3c2b6;
  font-size: 19px;
  font-weight: 400;
  letter-spacing: normal;
  line-height: 1.5;
}
@media (max-width: 800px) {
  .proceeds-result > .eyebrow,
  #mortgagePanel .calc-result > span {
    font-size: 17px;
  }
}

/* Use the same darker grey for the calculator intro and both result labels. */
.calc-head > p:last-child,
.proceeds-result > .eyebrow,
#mortgagePanel .calc-result > span {
  color: #6e6e73;
}

/* Match the purchase caption to the sale-proceeds guidance line. */
#mortgagePanel .calc-result .repayment-hint {
  margin: -23px 0 24px;
  color: #6e6e73;
  font-size: var(--type-body);
  line-height: 1.55;
}



/* Center each result stack vertically without changing its text layout. */
.proceeds-result,
#mortgagePanel .calc-result {
  justify-content: center;
}

/* Use one shared size for both headline calculator figures. */
.proceeds-result > strong,
#mortgagePanel .calc-result > strong {
  font-size: clamp(42px, 5vw, 68px);
}

/* Match dollar entry fields to the planner's glass control styling. */
#mortgagePanel .calc-inputs input[type="number"] {
  appearance: textfield;
  margin-top: 8px;
  padding: 12px 14px;
  border: 1px solid rgba(198, 198, 203, .7);
  border-radius: 12px;
  background: rgba(255, 255, 255, .72);
  color: #1d1d1f;
  color-scheme: light;
  font-size: 16px;
}

/* Reference-style date, fee and CPF controls, in the Hanson glass UI. */
.proceeds-fields select {
  width: 100%;
  min-height: 46px;
  padding: 10px 12px;
  border: 1px solid rgba(198, 198, 203, .7);
  border-radius: 12px;
  background: rgba(255, 255, 255, .72);
  color: #1d1d1f;
  color-scheme: light;
  font: inherit;
}
.proceeds-fields input[type="date"] {
  width: 100%;
  min-height: 46px;
  padding: 10px 12px;
  border: 1px solid rgba(198, 198, 203, .7);
  border-radius: 12px;
  background: rgba(255, 255, 255, .72);
  color: #1d1d1f;
  color-scheme: light;
  font: inherit;
  font-size: 16px;
}
.proceeds-fields .field-help {
  display: block;
  color: #6e6e73;
  font-size: var(--type-caption);
  font-weight: 400;
  line-height: 1.4;
}
.proceeds-fields .gst-choice {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 14px;
  font-weight: 400;
}
.proceeds-fields .gst-choice input[type="checkbox"] {
  display: inline-block;
  width: 17px;
  height: 17px;
  margin: 0;
  accent-color: #0071e3;
}
.proceeds-fields .field-reset {
  align-self: flex-start;
  min-height: 32px;
  padding: 2px 0;
  border: 0;
  background: transparent;
  color: #0066cc;
  font-size: var(--type-caption);
  cursor: pointer;
}
.ssd-status {
  display: block;
  margin-top: 10px;
  padding: 10px 13px;
  border-left: 2px solid rgba(52, 120, 89, .55);
  border-radius: 8px;
  background: rgba(52, 120, 89, .08);
  color: #3a6953;
}
/* Keep calculator labels, controls and helper copy grouped consistently. */
.proceeds-fields label {
  justify-content: flex-start;
}

/* Keep the sale calculator close to the reference's single-column input flow. */
.proceeds-fields {
  grid-template-columns: 1fr;
  gap: 22px;
}
.proceeds-fields .date-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.proceeds-fields .date-row label {
  justify-content: flex-start;
}
.proceeds-result {
  justify-content: flex-start;
}
@media (max-width: 520px) {
  .proceeds-fields .date-row {
    grid-template-columns: 1fr;
  }
}

.proceeds-result {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: #f5f5f7a6;
  padding: 44px;
}
.proceeds-breakdown-title {
  margin: 0 0 20px;
  font-size: 23px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -.035em;
}
.proceeds-table {
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.proceeds-table-head {
  display: flex;
  justify-content: flex-end;
  padding: 13px 18px;
  background: transparent;
  color: #3b413b;
  font-size: 12px;
  font-weight: 650;
}
.proceeds-table-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 15px 0;
  border-bottom: 0;
  border-top: 1px solid #d2d2d7;
  font-size: 16px;
  line-height: 1.45;
}
.proceeds-table-row > span,
.proceeds-table-total > span {
  min-width: 0;
}
.proceeds-table-row small,
.proceeds-table-total small {
  display: block;
  margin-top: 3px;
  color: #778078;
  font-size: 11px;
  line-height: 1.4;
  font-weight: 400;
}
.proceeds-table-row b {
  text-align: right;
  font-size: inherit;
  font-weight: 650;
  white-space: nowrap;
}
.proceeds-table-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 15px 0;
  border-top: 1px solid #d2d2d7;
  background: transparent;
  font-size: 16px;
  line-height: 1.45;
  font-weight: 400;
}
.proceeds-table-total > b {
  font-size: inherit;
  font-weight: 650;
  white-space: nowrap;
}
.proceeds-result > small {
  margin-top: 16px;
}
.proceeds-summary {
  display: flex;
  flex-direction: column;
  margin-bottom: 0;
}
.proceeds-summary h3 {
  margin: 0;
  color: #6e6e73;
  font-size: 19px;
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: normal;
}
.proceeds-summary strong {
  display: block;
  margin: 15px 0 35px;
  font-size: clamp(42px, 5vw, 68px);
  line-height: normal;
  font-weight: 500;
  letter-spacing: -.03em;
  white-space: nowrap;
}
.proceeds-summary p {
  margin: -23px 0 24px;
  color: #6e6e73;
  font-size: var(--type-body);
  line-height: 1.55;
}
.proceeds-summary small {
  color: #6e6e73;
  font-size: 11px;
  line-height: 1.4;
}
@media (max-width: 800px) {
  .proceeds-result { padding: 28px; }
  .proceeds-summary h3 { font-size: 17px; }
  .proceeds-table-row { padding: 15px 0; }
  .proceeds-table-head,
  .proceeds-table-total { padding-inline: 14px; }
}

/* Live mobile estimate, matching the site's frosted controls. */
.mobile-proceeds-bar { display: none; }
@media (max-width: 800px) {
  .mobile-proceeds-bar {
    position: fixed;
    z-index: 30;
    left: 12px;
    right: 12px;
    bottom: calc(12px + env(safe-area-inset-bottom, 0px));
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 18px;
    border: 1px solid rgba(255,255,255,.85);
    border-radius: 22px;
    background: rgba(245,245,247,.88);
    backdrop-filter: blur(24px) saturate(150%);
    -webkit-backdrop-filter: blur(24px) saturate(150%);
    box-shadow: 0 8px 32px #0002;
    color: #1d1d1f;
  }
  .mobile-proceeds-bar > div { min-width: 0; }
  .mobile-proceeds-bar span { display: block; font-size: 13px; color: #6e6e73; line-height: 1.35; }
  .mobile-proceeds-bar strong { display: block; font-size: clamp(23px,6vw,28px); font-weight: 500; letter-spacing: -.03em; font-variant-numeric: tabular-nums; line-height: 1.2; }
  .mobile-proceeds-bar button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; flex-shrink: 0; min-height: 44px; padding: 10px 15px; border: 0; border-radius: 99px; background: #0071e3; color: #fff; font: inherit; font-size: 14px; cursor: pointer; }
  .mobile-proceeds-bar button span { font: inherit; color: inherit; }
  .has-floating-proceeds .wa { bottom: calc(116px + env(safe-area-inset-bottom, 0px)); }
  .has-floating-proceeds .wa-pop { bottom: calc(184px + env(safe-area-inset-bottom, 0px)); }
}

/* Keep every service visible inside the original mobile segmented control. */
@media (max-width: 800px) {
  .service-tabs {
    width: 100%;
    max-width: 100%;
    flex-wrap: nowrap;
    overflow: visible;
    padding: 4px;
    gap: 0;
    scroll-snap-type: none;
  }
  .service-tabs:before { left: 4px; top: 4px; bottom: 4px; width: calc((100% - 8px) / 4); }
  .service-tabs button {
    flex: 1 1 0;
    min-width: 0;
    min-height: 52px;
    padding: 10px 4px;
    font-size: clamp(12px, 3.1vw, 14px);
    line-height: 1.2;
    white-space: normal;
    overflow-wrap: normal;
  }
}

/* Phone layout: readable content, consistent gutters and comfortable controls. */
@media (max-width: 800px) {
  :root { --type-body:16px; --type-caption:14px; --type-subhead:24px; --hig-gutter:20px; --type-heading:clamp(30px,8vw,38px); }
  html { scroll-padding-top:24px; }
  body { min-width: 0; }
  main, section, .proceeds-inputs, .calc-inputs, .proceeds-result, .calc-result, .service-panel { min-width:0; }
  main#top > .section-pad { padding:52px 20px; }
  main#top > .calculator { padding:48px 20px; }
  .nav { height:88px; padding-inline:20px; }
  .nav .wordmark { height:60px; transform:none; }
  .nav .brand-logo { height:50px; }
  .nav-menu-toggle { width:44px; height:44px; flex-basis:44px; }
  .nav nav a { min-height:48px; display:flex; align-items:center; font-size:16px; }
  .hero { min-height:650px; height:calc(100svh - 88px); max-height:900px; }
  .hero-content { left:20px; right:20px; top:auto; bottom:64px; max-width:none; transform:none; }
  .hero h1 { font-size:clamp(42px,11vw,64px); line-height:1.06; margin:0 0 20px; }
  .hero .hero-deck { font-size:16px; line-height:1.5; font-weight:400; max-width:34ch; width:auto; white-space:normal; margin:0; }
  .hero-actions { flex-direction:column; align-items:stretch; gap:12px; margin-top:26px; }
  .hero-actions .button { width:100%; max-width:none; min-height:50px; padding:13px 18px; font-size:16px; }
  .hero-bottom { bottom:20px; font-size:11px; right:20px; }
  .calc-head h2,.service-heading h2 { font-size:var(--type-heading); }
  .calc-head > p:last-child { font-size:16px; line-height:1.5; margin:14px 0 0; }
  .planner-tabs { margin:24px auto 20px; }
  .planner-tabs button { min-height:48px; font-size:14px; padding:12px 6px; }
  .proceeds-panel,#mortgagePanel { grid-template-columns:minmax(0,1fr); min-height:0; border-radius:22px; }
  .proceeds-inputs,.proceeds-result,.calc-inputs,#mortgagePanel .calc-result { padding:24px 22px; }
  main#top .calculator-intro-title { font-size:24px; line-height:1.2; margin:0 0 12px; }
  main#top .calculator-intro-copy { font-size:16px; line-height:1.5; color:#6e6e73; margin-bottom:24px; }
  .proceeds-fields { margin:24px 0 0; gap:22px; }
  .proceeds-fields label,.calc-inputs label,.lead-form label { font-size:16px; line-height:1.4; }
  .proceeds-fields input,.proceeds-fields input[type=date],.calc-inputs input[type=number],.lead-form input,.lead-form select { width:100%; min-width:0; min-height:48px; font-size:16px; padding:12px; }
  .proceeds-fields .field-help,.proceeds-inputs small,.proceeds-result > small,#mortgagePanel .calc-result > p:not(.repayment-hint),.lead-form small { font-size:14px; line-height:1.5; }
  .proceeds-fields .date-row { grid-template-columns:minmax(0,1fr); gap:22px; }
  .ssd-status { margin-top:0; font-weight:400; }
  .proceeds-summary h3,#mortgagePanel .calc-result > span { font-size:16px; line-height:1.5; }
  .proceeds-summary strong,#mortgagePanel .calc-result > strong { font-size:clamp(40px,11vw,60px); }
  .proceeds-summary p,#mortgagePanel .calc-result .repayment-hint { font-size:16px; line-height:1.5; }
  .proceeds-table-row,.result-row { font-size:15px; line-height:1.4; gap:16px; padding:16px 0; }
  .proceeds-table-row > span,.result-row > span { min-width:0; flex:1; }
  .proceeds-table-row > b,.result-row > b { flex-shrink:0; white-space:nowrap; }
  .proceeds-table-row small { font-size:13px; line-height:1.45; }
  main#top .review-wrap { display:block; padding:24px 22px; margin-top:24px; }
  main#top .lead-form { display:flex; flex-direction:column; gap:18px; }
  .lead-form h3 { font-size:24px; line-height:1.2; margin:0; }
  .lead-form p { font-size:16px; line-height:1.5; margin:0; }
  .lead-form button { min-height:50px; font-size:15px; padding:12px; }
  .service-heading { margin-bottom:24px; }
  .service-showcase { height:240px; border-radius:20px; }
  .service-tabs { margin:24px auto; }
  .service-panel h3 { font-size:24px; line-height:1.25; margin-bottom:16px; }
  .service-panel > p { font-size:16px; line-height:1.55; }
  .service-features { gap:22px; margin:26px 0; text-align:left; }
  .service-features strong { font-size:16px; }
  .service-features > div > span:last-child { font-size:14px; line-height:1.45; }
  .service-panel .service-link { font-size:16px; line-height:1.5; min-height:44px; padding:10px 0; }
  .home-profile { grid-template-columns:minmax(0,1fr); gap:20px; text-align:center; justify-items:center; }
  .home-profile > img { width:96px; height:96px; min-height:96px; border-radius:50%; }
  .home-profile #contact { min-height:0; text-align:center; align-items:center; }
  main#top .home-profile #contact h2 { font-size:30px; }
  .home-profile #contact p { font-size:16px; line-height:1.5; }
  footer { padding:28px 20px; font-size:12px; }
  .wa { width:48px; height:48px; right:16px; }
  .wa-pop { width:min(290px,calc(100vw - 32px)); right:16px; }
}
@media (max-width:360px) {
  main#top > .section-pad, main#top > .calculator { padding-inline:16px; }
  .proceeds-inputs,.proceeds-result,.calc-inputs,#mortgagePanel .calc-result,main#top .review-wrap { padding:22px 16px; }
  .hero-content { left:16px; right:16px; }
  .mobile-proceeds-bar { padding:12px; gap:8px; }
  .mobile-proceeds-bar strong { font-size:22px; }
  .mobile-proceeds-bar button { padding:10px 12px; font-size:13px; gap:8px; }
  .proceeds-table-row,.result-row { font-size:14px; gap:10px; }
}

/* Compact mobile scale: preserve the design while showing more per screen. */
@media (max-width: 800px) {
  body { zoom: .9; }
}

/* Match the navigation's transparency and frost in the floating estimate. */
@media (max-width:800px) {
  .mobile-proceeds-bar {
    background:rgba(245,245,247,.38);
    border-color:rgba(255,255,255,.34);
    backdrop-filter:blur(24px) saturate(160%);
    -webkit-backdrop-filter:blur(24px) saturate(160%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -1px 0 rgba(255,255,255,.16),0 8px 28px rgba(0,0,0,.12);
  }
  .mobile-proceeds-bar > div > span { color:#515156; }
}

/* Extend the mobile video hero without changing the desktop layout. */
@media (max-width:800px) {
  .hero { min-height:760px; height:calc(115svh - 88px); max-height:none; }
}

/* Keep the mobile headline and actions below the face in the hero film. */
@media (max-width:800px) {
  .hero { min-height:820px; height:calc(125svh - 88px); }
  .hero-content { bottom:80px; }
  .hero-bottom { display:none; }
}

/* WhatsApp opens a short enquiry menu. */
.wa {
  background:#25d366;
  border:1px solid rgba(255,255,255,.75);
  color:#fff;
  box-shadow:0 9px 28px rgba(5,56,28,.25),inset 0 1px 0 rgba(255,255,255,.35);
}
.wa:hover { background:#1ebe5a; }
.wa:focus-visible,.wa-options a:focus-visible { outline:3px solid #0071e3; outline-offset:3px; }
.wa-pop { padding:20px; border-radius:20px; }
.wa-pop > strong { display:block; font-size:19px; font-weight:650; letter-spacing:-.02em; }
.wa-pop > p { margin:6px 0 16px; font-size:14px; line-height:1.45; }
.wa-options { display:grid; gap:8px; }
.wa-options a {
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:48px;
  padding:11px 14px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:12px;
  background:rgba(255,255,255,.68);
  color:#1d1d1f;
  font-size:15px;
  font-weight:600;
  text-decoration:none;
}
.wa-options a::after { content:'›'; font-size:24px; font-weight:400; line-height:1; color:#188746; }
.wa-options a:hover { background:#fff; }
@media (max-width:800px) {
  .wa { width:68px; height:68px; opacity:0; visibility:hidden; transform:translateY(10px); pointer-events:none; transition:opacity .25s ease,transform .25s ease,visibility .25s; }
  .wa svg { width:34px; height:34px; }
  .wa-after-result .wa { opacity:1; visibility:visible; transform:none; pointer-events:auto; }
  body:not(.wa-after-result) .wa-pop { display:none; }
  .wa-pop { right:16px; width:min(310px,calc(100vw - 32px)); }
  .has-floating-proceeds .wa-pop { bottom:calc(196px + env(safe-area-inset-bottom, 0px)); }
}
@media (prefers-reduced-motion:reduce) { .wa { transition:none; } }

/* Matching date fields with typed entry and a native calendar choice. */
.proceeds-fields .date-row { align-items:start; }
.proceeds-fields .date-field { display:flex; flex-direction:column; min-width:0; gap:8px; }
.proceeds-fields .date-field > label { margin:0; }
.date-control { position:relative; display:flex; align-items:center; width:100%; min-width:0; min-height:52px; border:1px solid #c6c6cbb3; border-radius:8px; background:#ffffff9c; }
.date-control:focus-within { outline:2px solid #0071e3; outline-offset:2px; }
.date-control.is-invalid { border-color:#b42318; }
.proceeds-fields .date-control input[type=text] { display:block; width:100%; min-width:0; height:50px; min-height:0; margin:0; padding:12px 56px 12px 13px; border:0; outline:0; background:transparent; color:#1d1d1f; font-size:16px; font-variant-numeric:tabular-nums; }
.date-control input[type=text]::placeholder { color:#86868b; }
.date-control svg { position:absolute; right:16px; top:50%; width:20px; height:20px; transform:translateY(-50%); fill:none; stroke:#1d1d1f; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }
.proceeds-fields .date-control input[type=date] { position:absolute; right:0; top:0; z-index:1; width:52px; min-width:0; height:100%; min-height:0; margin:0; padding:0; border:0; opacity:0; cursor:pointer; }
.date-field .date-error { color:#b42318; font-size:13px; line-height:1.4; }
@media (max-width:800px) {
  main#top .lead-form { align-items:stretch; }
  main#top .lead-form > * { width:100%; min-width:0; }
}

/* On phones, give each calculator result its own card. */
@media (max-width:800px) {
  .proceeds-panel,
  #mortgagePanel {
    gap:16px;
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
  }
  .proceeds-panel > .proceeds-inputs,
  .proceeds-panel > .proceeds-result,
  #mortgagePanel > .calc-inputs,
  #mortgagePanel > .calc-result {
    width:100%;
    min-width:0;
    border:1px solid #e8e8ed;
    border-radius:22px;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
  }
  .proceeds-panel > .proceeds-inputs,
  #mortgagePanel > .calc-inputs { background:rgba(255,255,255,.86); }
  .proceeds-panel > .proceeds-result,
  #mortgagePanel > .calc-result { background:rgba(245,245,247,.84); }
}

/* Buying field values use the same typography as the sale inputs. */
#mortgagePanel .calc-inputs input[type=number] {
  font-size:var(--type-body);
  font-weight:500;
}

/* A short first step, with the full planner available on demand. */
.site-showcase,.journal-preview{max-width:1200px;margin:auto;padding:84px 24px}
.site-showcase{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.site-showcase video{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:24px;background:#1d1d1f}
.site-showcase h2,.journal-preview h2{font-size:clamp(32px,4vw,56px);font-weight:500;letter-spacing:-.035em;line-height:1.08;margin:0 0 20px}
.site-showcase p,.journal-preview p{font-size:17px;line-height:1.55;color:#6e6e73}
.site-showcase .underlink{margin-top:16px}
.quick-estimate{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:30px 0 18px;border:1px solid #e8e8ed;border-radius:22px;overflow:hidden;background:rgba(255,255,255,.78)}
.quick-estimate>div{padding:38px}
.quick-estimate h3{font-size:clamp(24px,2.5vw,34px);font-weight:500;letter-spacing:-.03em;margin:0 0 12px}
.quick-estimate p{color:#6e6e73;line-height:1.5;margin:0 0 26px}
.quick-estimate label{display:block;font-size:16px;font-weight:600}
.quick-estimate input{display:block;width:100%;min-height:52px;margin:9px 0 0;padding:12px 14px;border:1px solid #c6c6cbb3;border-radius:12px;background:#fff;color:#1d1d1f;font-size:18px;font-weight:500}
.quick-result{display:flex;flex-direction:column;justify-content:center;background:rgba(245,245,247,.85)}
.quick-result>span{color:#6e6e73;font-size:16px}
.quick-result strong{display:block;margin:14px 0;font-size:clamp(42px,5vw,68px);font-weight:500;letter-spacing:-.04em}
.quick-result p{font-size:15px;margin:0 0 18px}
.quick-cost-line{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid #d2d2d7;color:#515156;font-size:15px}
.quick-cost-line b{font-weight:600;white-space:nowrap;color:#1d1d1f}
.quick-result small{font-size:13px;line-height:1.45;color:#6e6e73}
.quick-result .button{align-self:flex-start;margin-top:22px;background:#0071e3;color:#fff}
.detail-toggle{display:block;margin:20px auto 28px;padding:13px 22px;border:1px solid #c6c6cb;border-radius:99px;background:#ffffffa6;color:#1d1d1f;font:inherit;font-size:16px;cursor:pointer}
#detailedCalculator{scroll-margin-top:24px}
.journal-preview{padding-top:60px}
.journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px}
.journal-grid a{display:block;padding:28px;border:1px solid #e8e8ed;border-radius:20px;background:#ffffffa6}
.journal-grid strong{display:block;font-size:23px;font-weight:500;letter-spacing:-.02em}
.journal-grid span{display:block;margin-top:12px;color:#6e6e73;line-height:1.5}
.home-profile .contact-link{margin-top:18px;align-self:flex-start;background:#0071e3;color:#fff}
@media(max-width:800px){
 .site-showcase{grid-template-columns:1fr;gap:28px;padding:58px 20px}
 .site-showcase video{aspect-ratio:4/3}
 .quick-estimate{grid-template-columns:1fr;gap:16px;border:0;background:transparent;overflow:visible}
 .quick-estimate>div{padding:24px 22px;border:1px solid #e8e8ed;border-radius:22px;background:rgba(255,255,255,.86)}
 .quick-estimate>.quick-result{background:rgba(245,245,247,.84)}
 .quick-result .button{width:100%;justify-content:center}
 .journal-preview{padding:54px 20px}
 .journal-grid{grid-template-columns:1fr}
 .home-profile .contact-link{align-self:center}
}
.content-page{max-width:1120px;margin:auto;padding:88px 24px 110px}
.content-page>header{max-width:790px;margin-bottom:48px}
.content-page h1{font-size:clamp(42px,5vw,70px);font-weight:500;letter-spacing:-.045em;line-height:1.06;margin:0 0 20px}
.content-page h2{font-size:clamp(25px,2.5vw,36px);font-weight:500;letter-spacing:-.025em;line-height:1.2}
.content-page p,.content-page li{font-size:17px;line-height:1.65;color:#515156}
.content-page .eyebrow{color:#0066cc}
.content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.content-grid article,.content-page article.story{padding:30px;border:1px solid #e8e8ed;border-radius:22px;background:#ffffffa6}
.content-grid a.button{margin-top:18px;background:#0071e3;color:white}
.content-page article.story{max-width:820px;margin:0 auto 24px;scroll-margin-top:26px}
main.section-pad.service-page{padding-top:172px}
@media(max-width:800px){main.section-pad.service-page{padding-top:136px}}
.content-page article.story h2{margin-top:0}
.content-page .story-note{padding:18px 20px;border-left:3px solid #0071e3;background:#f5f5f7;border-radius:8px}
@media(max-width:800px){.content-page{padding:54px 20px 80px}.content-grid{grid-template-columns:1fr}.content-grid article,.content-page article.story{padding:24px 22px}}

/* One shared content boundary for every homepage section. */
main#top > :is(.site-showcase,.calculator,.journey,.journal-preview,.home-profile) {
  width:min(1200px,calc(100% - var(--hig-gutter) - var(--hig-gutter)));
  max-width:none;
  margin-inline:auto;
  padding-inline:0;
}
main#top .service-showcase { width:100%; max-width:none; }
main#top .service-panel,
main#top .service-panel > p,
main#top .service-features {
  width:100%;
  max-width:none;
}
@media(max-width:360px) {
  main#top > :is(.site-showcase,.calculator,.journey,.journal-preview,.home-profile) {
    width:calc(100% - 32px);
  }
}
@media(max-width:800px) {
  main#top .service-features { grid-template-columns:1fr; justify-items:center; }
  main#top .service-features > div {
    width:fit-content;
    max-width:100%;
    justify-self:center;
    grid-template-columns:32px minmax(0,1fr);
    text-align:left;
  }
}
main#top .service-panel .service-link {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  max-width:100%;
  min-height:50px;
  margin:16px auto 0;
  padding:14px 24px;
  border:0;
  border-radius:999px;
  background:#0071e3;
  color:#fff;
  font-size:16px;
  line-height:1.4;
  text-decoration:none;
}
main#top .service-panel .service-link:hover { background:#0077ed; color:#fff; }
@media(max-width:800px) {
  main#top .service-panel { padding-top:16px; }
}
@media(min-width:801px) {
  main#top .service-features { justify-items:center; margin-top:48px; }
  main#top .service-features > div {
    width:fit-content;
    max-width:100%;
    justify-self:center;
    grid-template-columns:32px minmax(0,1fr);
  }
}

/* Shared advisory site layout and type hierarchy. */
:root{--advisory-title:clamp(40px,5vw,64px);--advisory-heading:clamp(30px,3.5vw,48px)}
.advisory-page{width:min(1200px,calc(100% - var(--hig-gutter) - var(--hig-gutter)));margin:auto;padding:172px 0 88px}
.advisory-page h1{font-size:var(--advisory-title);font-weight:500;line-height:1.08;letter-spacing:-.035em;margin:0 0 24px}
.advisory-page h2,.advisory-tool h2{font-size:var(--advisory-heading);font-weight:500;line-height:1.12;letter-spacing:-.03em;margin:0 0 20px}
.advisory-page h3{font-size:24px;line-height:1.25;font-weight:500;letter-spacing:-.02em;margin:18px 0 12px}
.advisory-page p,.advisory-tool p{font-size:17px;line-height:1.65;color:#6e6e73;margin:0 0 20px}
.advisory-button{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:50px;padding:14px 24px;border:0;border-radius:999px;background:#0071e3;color:#fff;font-size:16px;font-weight:400;line-height:1.4;text-align:center}
.advisory-button:hover{background:#0077ed}
.advisory-button>span{flex-shrink:0}
.advisory-text-link{display:inline-block;font-size:16px;line-height:1.5;color:#0066cc;margin-top:18px}
.advisor-signature{display:flex;align-items:center;gap:14px;margin-bottom:28px;font-size:18px;line-height:1.4;font-weight:500}
.advisor-signature img{width:64px;height:64px;border-radius:50%;object-fit:cover}
.advisor-signature small{font-size:14px;font-weight:400;color:#6e6e73}
main#top>.shared-section{width:min(1200px,calc(100% - var(--hig-gutter) - var(--hig-gutter)));margin:42px auto;padding:40px}
.advisory-tool{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:center;padding:40px;border:1px solid #e8e8ed;border-radius:24px;background:rgba(255,255,255,.7)}
.advisory-tool .property-glyph{margin-bottom:20px}
.advisory-tool p{margin-bottom:0}
.advisory-actions{display:flex;flex-direction:column;align-items:center;gap:12px}
.advisory-actions .advisory-text-link{margin:0}
.home-profile>div{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.home-profile>div>p{margin:0}
.service-lead{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}
.service-lead figure{margin:0;overflow:hidden;border-radius:24px;background:#e8e8ed}
.service-lead figure img,.service-lead figure video{display:block;width:100%;height:480px;object-fit:cover}
.advisory-section{padding-top:88px}
.advisory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}
.advisory-grid article{padding:30px;border:1px solid #e8e8ed;border-radius:22px;background:rgba(255,255,255,.68)}
.advisory-grid article p{margin:0}
.advisory-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:36px}
.advisory-steps article{border-top:1px solid #d2d2d7;padding-top:24px}
.advisory-steps article>span{color:#0066cc;font-size:15px}
.advisory-steps article p{margin:0}
.advisory-faq{margin-bottom:72px}
.advisory-faq details{border-bottom:1px solid #d2d2d7;padding:22px 0}
.advisory-faq summary{font-size:20px;line-height:1.4;font-weight:500;cursor:pointer}
.advisory-faq details p{max-width:880px;margin:18px 0 0}
.calculator-page{padding-top:172px}
.calculator-page .calc-head h1{font-size:var(--advisory-title);font-weight:500;letter-spacing:-.035em;line-height:1.08;margin:0 0 20px}
.page-intro{max-width:820px;margin-bottom:48px}
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.guide-card{display:flex;flex-direction:column;padding:28px;border:1px solid #e8e8ed;border-radius:22px;background:rgba(255,255,255,.7)}
.guide-card>span{font-size:13px;color:#6e6e73;letter-spacing:.06em}
.guide-card h2{font-size:28px;margin:24px 0 16px}
.guide-card b{font-size:16px;font-weight:400;color:#0066cc;margin-top:auto;padding-top:12px}
.guide-article{max-width:820px}
.guide-article header{margin:36px 0 56px}
.guide-article>section{margin-bottom:44px}
.guide-article h2{font-size:30px}
.guide-next{padding:32px;border:1px solid #e8e8ed;border-radius:22px;background:#ffffffa6}
.site-footer{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;padding:48px max(var(--hig-gutter),calc((100% - 1200px)/2));font-size:14px;line-height:1.5;letter-spacing:0;background:#ededf0;color:#6e6e73}
.site-footer>div{display:flex;flex-direction:column;gap:12px}
.site-footer strong{font-size:18px;font-weight:500;color:#1d1d1f}
.site-footer p{margin:0}
.site-footer a:hover{color:#0066cc}
@media(max-width:800px){
 .advisory-page{padding-top:136px;padding-bottom:64px}
 .service-lead{grid-template-columns:1fr;gap:32px}
 .service-lead figure img,.service-lead figure video{height:300px}
 .advisory-page p,.advisory-tool p{font-size:16px;line-height:1.6}
 .advisory-page h3{font-size:23px}
 .advisory-section{padding-top:56px}
 .advisory-grid,.advisory-steps,.guide-grid{grid-template-columns:1fr;gap:20px}
 .advisory-grid article,.guide-card{padding:24px 22px}
 .advisory-faq summary{font-size:18px}
 .advisory-tool{grid-template-columns:1fr;gap:26px;padding:26px 22px}
 main#top>.shared-section{padding:26px 22px;margin-block:28px}
 .advisory-actions{align-items:stretch;text-align:center}
 .home-profile>div{align-items:center}
 .calculator-page{padding-top:112px}
 .calculator-page>.calculator{padding-top:32px}
 .guide-card h2{font-size:26px}
 .site-footer{grid-template-columns:1fr 1fr;gap:32px 24px;padding:36px 20px}
 .site-footer>div:first-child{grid-column:1/-1}
}

/* Calculator navigation, shared by every page. */
.nav-calculator{position:relative}
.nav-calculator-toggle{display:flex;align-items:center;gap:6px;min-height:44px;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}
.nav-calculator-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
@media(min-width:801px){.nav nav{align-items:center}}
.calculator-menu{position:absolute;z-index:40;right:0;top:100%;width:360px;max-width:calc(100vw - 32px);margin-top:10px;padding:12px;border:1px solid #ffffffb3;border-radius:20px;background:rgba(250,250,252,.92);color:#1d1d1f;box-shadow:0 16px 48px #0002;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%)}
.calculator-menu:before{content:'';position:absolute;top:-14px;left:0;right:0;height:14px}
.calculator-menu-group+.calculator-menu-group{margin-top:8px;padding-top:10px;border-top:1px solid #d2d2d780}
.calculator-menu-group>span{display:block;padding:6px 10px;font-size:13px;font-weight:500;line-height:1.4;color:#6e6e73}
.nav nav .calculator-menu a{display:flex;align-items:center;min-height:44px;padding:10px;border-radius:10px;font-size:15px;line-height:1.4;color:#1d1d1f;white-space:normal}
.nav nav .calculator-menu a:hover{background:#e8e8ed;color:#0066cc}
/* Detailed calculators, using the site's established glass cards. */
.calculator-tools{width:min(1200px,calc(100% - var(--hig-gutter) - var(--hig-gutter)));margin:auto;padding:164px 0 80px}
.tool-current{position:relative;display:flex;align-items:center;gap:16px;margin-bottom:36px;max-width:100%;font-size:14px;color:#6e6e73}
.tool-current>button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;max-width:100%;min-height:44px;padding:10px 16px;border:1px solid #d2d2d7;border-radius:99px;background:#ffffffa6;color:#1d1d1f;font:inherit;font-size:15px;cursor:pointer;text-align:left}
.tool-choices{position:absolute;left:0;top:calc(100% + 8px);z-index:8;width:360px;max-width:100%;padding:12px;border:1px solid #e8e8ed;border-radius:18px;background:rgba(250,250,252,.97);box-shadow:0 12px 35px #0002;backdrop-filter:blur(24px)}
.tool-choices>span{display:block;font-size:13px;color:#6e6e73;padding:8px 10px}
.tool-choices>a{display:block;padding:11px 10px;font-size:15px;color:#1d1d1f;border-radius:9px}
.tool-choices>a:hover,.tool-choices>a[aria-current=page]{background:#e8e8ed;color:#0066cc}
.tool-heading{margin-bottom:32px}
.tool-heading h1{font-size:var(--advisory-title);font-weight:500;line-height:1.08;letter-spacing:-.035em;margin:0 0 18px}
.tool-heading p{max-width:820px;font-size:17px;line-height:1.6;color:#6e6e73;margin:0}
.tool-shell{display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden;border:1px solid #e8e8ed;border-radius:22px;background:rgba(255,255,255,.86)}
.tool-inputs,.tool-result{min-width:0;padding:38px}
.tool-inputs{margin:0}
.tool-fields{display:grid;gap:24px}
.tool-inputs label{display:flex;flex-direction:column;gap:8px;margin:0;min-width:0;font-size:16px;font-weight:600;line-height:1.4}
.tool-inputs input,.tool-inputs select{display:block;width:100%;min-width:0;min-height:50px;margin:0;padding:12px 14px;border:1px solid #c6c6cbb3;border-radius:12px;background:rgba(255,255,255,.72);color:#1d1d1f;font:inherit;font-size:16px;font-weight:500;color-scheme:light}
.tool-inputs input::placeholder{color:#86868b;font-weight:400}
.tool-inputs input:focus,.tool-inputs select:focus{outline:2px solid #0071e3;outline-offset:2px}
.tool-inputs small{display:block;font-size:14px;line-height:1.5;font-weight:400;color:#6e6e73}
.tool-date-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.tool-inputs .date-control input[type=text]{width:100%;min-height:0;height:50px;padding:12px 52px 12px 14px;border:0;background:transparent;outline:0;border-radius:8px}
.tool-inputs .date-control input[type=date]{position:absolute;right:0;top:0;width:50px;min-height:0;height:100%;padding:0;margin:0;border:0;opacity:0;cursor:pointer}
.tool-date-note{padding:12px 14px;border-left:2px solid #0071e3;border-radius:8px;background:#0071e308}
.tool-inputs>.advisory-button{margin-top:26px;width:100%;cursor:pointer}
.tool-error{font-size:14px;color:#b42318;line-height:1.5;margin:18px 0 0}
.tool-error:empty{display:none}
.tool-result{display:flex;flex-direction:column;justify-content:center;background:rgba(245,245,247,.84)}
.tool-result-label{font-size:16px;line-height:1.5;color:#6e6e73;font-weight:400}
.tool-amount{display:block;font-size:clamp(42px,5vw,68px);font-weight:500;line-height:1.2;letter-spacing:-.04em;margin:15px 0 12px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.tool-result-caption{font-size:16px;line-height:1.55;font-weight:400;color:#6e6e73;margin:0 0 26px}
.tool-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:16px 0;border-top:1px solid #d2d2d7;font-size:15px;line-height:1.5}
.tool-row>span{min-width:0;flex:1}
.tool-row>b{font-weight:500;flex-shrink:0;text-align:right;max-width:52%}
.tool-row small{display:block;font-size:13px;color:#6e6e73;font-weight:400;margin-top:4px}
.tool-result-note{display:block;font-size:14px;color:#6e6e73;line-height:1.5;margin-top:24px}
.tool-method{margin:24px 0 0;padding:18px 0;border-bottom:1px solid #d2d2d7}
.tool-method summary,.tool-optional summary{font-size:16px;line-height:1.5;color:#0066cc;cursor:pointer}
.tool-method p{font-size:15px;line-height:1.65;color:#6e6e73;max-width:980px}
.tool-sources a{color:#0066cc;text-decoration:underline}
.tool-optional>label{margin-top:16px}
.absd-buyer{display:grid;gap:18px;min-width:0;padding:20px;margin:0;border:1px solid #d2d2d7;border-radius:16px}
.absd-buyer+.absd-buyer{margin-top:20px}
.absd-buyer legend{padding:0 6px;font-size:14px;font-weight:600;color:#6e6e73}
.secondary-tool-button,.remove-buyer{min-height:44px;padding:10px 16px;border:1px solid #c6c6cb;border-radius:99px;background:#ffffffa6;color:#0066cc;font:inherit;font-size:15px;cursor:pointer}
.remove-buyer{justify-self:start;font-size:14px}
.tool-review{display:block;margin-top:36px;padding:32px;background:#ffffffb3;border:1px solid #e8e8ed;border-radius:22px;backdrop-filter:none;-webkit-backdrop-filter:none}
.tool-review .lead-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;align-items:end}
.tool-review .lead-form h3,.tool-review .lead-form p,.tool-review .lead-form small{grid-column:1/-1;margin:0}
.tool-review .lead-form h3{font-size:24px;font-weight:500;line-height:1.25}
.tool-review .lead-form p{font-size:16px;line-height:1.55;color:#6e6e73}
.tool-review .lead-form label{font-size:16px;margin:0}
.tool-review .lead-form input{font-size:16px;min-height:50px;margin-top:8px}
.tool-review .lead-form button{margin:0;font-size:16px}
.tool-review .lead-form small{font-size:14px;line-height:1.5;color:#6e6e73}
@media(max-width:800px){
 .nav nav{max-height:calc(100svh - 110px);overflow-y:auto}
 .nav-calculator{width:100%}
 .nav-calculator-toggle{width:100%;justify-content:space-between;padding:13px 14px;min-height:48px;color:#1d1d1f;font-size:16px}
 .calculator-menu{position:static;width:100%;max-width:none;margin:0;padding:0 8px 12px;border:0;background:#ffffff80;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
 .calculator-menu:before{display:none}
 .nav nav .calculator-menu a{padding:10px 12px;font-size:15px}
 .calculator-tools{padding-top:128px;padding-bottom:60px}
 .tool-current{gap:10px;margin-bottom:28px;flex-wrap:wrap}
 .tool-heading h1{font-size:var(--advisory-title)}
 .tool-heading p{font-size:16px;line-height:1.55}
 .tool-shell{grid-template-columns:minmax(0,1fr);gap:16px;border:0;border-radius:0;background:transparent;overflow:visible;backdrop-filter:none;-webkit-backdrop-filter:none}
 .tool-inputs,.tool-result{padding:24px 22px;border:1px solid #e8e8ed;border-radius:22px;background:rgba(255,255,255,.86)}
 .tool-result{background:rgba(245,245,247,.84)}
 .tool-date-row{grid-template-columns:1fr;gap:24px}
 .tool-amount{font-size:clamp(40px,11vw,60px)}
 .tool-review{padding:24px 22px}
 .tool-review .lead-form{grid-template-columns:1fr;align-items:stretch}
 .tool-row{font-size:15px;gap:12px}
 .tool-choices{width:100%}
}
@media(max-width:360px){.calculator-tools{width:calc(100% - 32px)}.tool-inputs,.tool-result,.tool-review{padding:22px 16px}.absd-buyer{padding:16px}}
/* Editorial news: the shared SF typography and frosted squircle surfaces. */
@media(min-width:801px){.nav nav{gap:clamp(18px,2.4vw,36px)}.nav nav>a,.nav-calculator-toggle{white-space:nowrap}}
.site-footer{grid-template-columns:minmax(280px,1.6fr) 1fr 1fr;align-items:start}
.site-footer .footer-profile{display:flex;align-items:center;gap:22px;min-width:0}
.footer-profile>img{width:112px;height:112px;flex:0 0 112px;object-fit:cover;object-position:center 25%;border-radius:50%}
.site-footer .footer-profile>div{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.site-footer .footer-profile strong{font-size:19px;font-weight:500;letter-spacing:-.02em}
.site-footer .footer-profile p{margin:0;max-width:230px;font-size:14px;line-height:1.5}
.site-footer .footer-profile .footer-phone{font-size:16px;color:#1d1d1f;letter-spacing:0;font-variant-numeric:tabular-nums}
.news-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:48px}
.news-kicker{display:block;font-size:13px;line-height:1.4;letter-spacing:.09em;font-weight:500;color:#6e6e73;margin-bottom:18px}
.news-intro h1{max-width:800px}.news-intro>div>p{max-width:660px;margin-bottom:0}
.news-page .news-edition{flex:0 0 auto;text-align:right;font-size:15px;line-height:1.6;color:#1d1d1f;margin:0 0 4px}
.news-edition span{color:#6e6e73;font-size:13px}
.news-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 28px}
.news-filters{display:flex;flex-wrap:wrap;gap:8px;padding:5px;background:#e8e8ed99;border:1px solid #ffffffb3;border-radius:28px;backdrop-filter:blur(22px)}
.news-filters button{border:0;border-radius:24px;background:transparent;color:#6e6e73;font:inherit;font-size:14px;padding:10px 17px;min-height:44px;cursor:pointer;transition:background .4s,color .4s,box-shadow .4s}
.news-filters button[aria-pressed=true]{background:#fff;color:#1d1d1f;box-shadow:0 2px 9px #0000000c}
#newsCount{font-size:14px;color:#6e6e73;white-space:nowrap}
.news-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:24px}
.news-card{display:grid;grid-template-columns:.85fr 1fr;overflow:hidden;border-radius:30px;border:1px solid #ffffffdd;background:linear-gradient(135deg,#ffffffd9,#ffffff8c);box-shadow:0 7px 25px #1d1d1f05;backdrop-filter:blur(24px) saturate(130%);-webkit-backdrop-filter:blur(24px) saturate(130%);transition:transform .4s,box-shadow .4s;min-width:0}
.news-card[hidden]{display:none!important}.news-card:hover{transform:translateY(-4px);box-shadow:0 14px 36px #1d1d1f10}
.news-card-image{position:relative;min-height:210px;overflow:hidden}
.news-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.news-card:hover img{transform:scale(1.025)}
.news-category{position:absolute;top:18px;left:18px;padding:8px 12px;border-radius:99px;border:1px solid #ffffff88;background:#ffffffe0;backdrop-filter:blur(18px);font-size:12px;color:#1d1d1f;font-weight:500}
.news-card-copy{padding:26px;display:flex;flex-direction:column;align-items:flex-start}
.news-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:12px;line-height:1.5;color:#6e6e73}
.news-card .news-meta{gap:10px}.news-card h2{font-size:25px;font-weight:500;letter-spacing:-.03em;line-height:1.15;margin:14px 0 12px}
.news-card p{font-size:15px;line-height:1.5;color:#6e6e73;margin:0 0 22px}
.news-read{font-size:14px;color:#0066cc;display:flex;gap:18px;align-items:center;margin-top:auto;min-height:24px}
.news-feature{grid-row:span 2;grid-template-columns:1fr;grid-template-rows:minmax(280px,1fr) auto}
.news-feature .news-card-copy{padding:32px}.news-feature h2{font-size:36px;max-width:540px}.news-feature p{font-size:17px;max-width:520px}
.news-feature .news-card-image{min-height:300px}.news-feature .news-card-image img{position:absolute;inset:0}
.news-grid.is-filtered{grid-template-columns:repeat(2,minmax(0,1fr))}.news-grid.is-filtered .news-card{grid-row:auto;grid-template-columns:1fr;grid-template-rows:280px auto}.news-grid.is-filtered .news-card-image{min-height:0}.news-grid.is-filtered h2{font-size:28px}
.news-context{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:24px;align-items:stretch;margin-top:72px}
.news-context>div{padding:24px 24px 24px 0}.news-context h2{font-size:var(--advisory-heading);font-weight:500;line-height:1.08;letter-spacing:-.035em;margin:0 0 20px}
.news-context p{font-size:16px;line-height:1.6;color:#6e6e73;margin:0}
.news-context>a{padding:32px;border:1px solid #ffffffdd;border-radius:30px;background:#ffffff99;backdrop-filter:blur(24px);display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.news-context svg{width:30px;height:30px;fill:none;stroke:#6e6e73;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.news-context h3{font-size:23px;font-weight:500;letter-spacing:-.025em;margin:0}.news-context>a>span{font-size:15px;color:#0066cc;margin-top:auto;padding-top:10px}
.news-page .news-disclosure{font-size:13px;line-height:1.6;color:#86868b;margin:36px 0 0;max-width:800px}
.news-back{display:inline-flex;gap:16px;font-size:15px;color:#0066cc;margin:0 0 32px;align-items:center;min-height:44px}
.news-article-head{max-width:900px;margin:0 0 40px}.news-article-head .news-meta{margin-bottom:22px;font-size:14px}.news-article-head h1{margin-bottom:24px}.news-article-head>p{font-size:21px;line-height:1.5;color:#6e6e73;max-width:820px;margin:0}
.news-article-image{margin:0 0 56px}.news-article-image>img{display:block;width:100%;height:clamp(260px,40vw,540px);object-fit:cover;border-radius:30px}.news-article-image figcaption{font-size:12px;line-height:1.5;color:#86868b;margin:12px 4px}
.news-reading{display:grid;grid-template-columns:240px minmax(0,720px);gap:64px;justify-content:space-between;align-items:start}
.news-key{padding:28px;border:1px solid #ffffffdd;border-radius:26px;background:#ffffffa6;backdrop-filter:blur(24px);display:flex;flex-direction:column;gap:12px;position:sticky;top:140px}
.news-key strong{font-size:42px;font-weight:500;letter-spacing:-.04em;line-height:1.2}.news-key span{font-size:15px;color:#6e6e73;line-height:1.5}.news-key small{font-size:12px;color:#86868b;line-height:1.5}
.news-reading article>section{margin:0 0 40px}.news-reading h2{font-size:29px;line-height:1.2;font-weight:500;letter-spacing:-.025em;margin:0 0 18px}.news-reading p{font-size:18px;line-height:1.75;color:#515154;margin:0}
.news-reading .news-sources{border-top:1px solid #d2d2d7;padding-top:30px;margin-top:48px}.news-sources h2{font-size:21px}.news-reading .news-sources p,.news-sources li{font-size:14px;line-height:1.65;color:#6e6e73}.news-sources ul{padding-left:18px;margin:16px 0}.news-sources a{color:#0066cc;text-decoration:underline;text-underline-offset:3px}
.news-next{padding:32px;border-radius:28px;border:1px solid #ffffffdd;background:#ffffffa6;backdrop-filter:blur(24px)}.news-next p{font-size:16px;margin-bottom:24px}.news-next .button{font-size:16px}
@supports(corner-shape:squircle){.news-card,.news-context>a,.news-next,.news-key,.news-article-image>img{corner-shape:squircle;border-radius:48px}}
@media(max-width:1000px) and (min-width:801px){.news-card{grid-template-columns:1fr}.news-feature{grid-template-rows:minmax(300px,1fr) auto}.news-card:not(.news-feature) .news-card-image{min-height:150px;height:150px}.news-card-copy{padding:22px}.news-card h2{font-size:23px}.news-feature h2{font-size:32px}.news-context{grid-template-columns:1fr 1fr}.news-context>div{grid-column:1/-1}.site-footer{grid-template-columns:1.4fr 1fr 1fr;gap:24px}.site-footer .footer-profile{gap:14px}.footer-profile>img{width:80px;height:80px;flex-basis:80px}}
@media(max-width:800px){
 .site-footer{grid-template-columns:1fr 1fr;gap:30px 24px}.site-footer>.footer-profile{grid-column:1/-1}.footer-profile>img{width:96px;height:96px;flex-basis:96px}.site-footer .footer-profile{gap:22px}
 .news-intro{display:block;margin-bottom:32px}.news-page .news-edition{text-align:left;margin-top:22px;font-size:14px}.news-edition br{display:none}.news-edition span{margin-left:12px}.news-kicker{font-size:12px;margin-bottom:16px}
 .news-toolbar{align-items:flex-start;gap:12px;flex-direction:column}.news-filters{width:100%;gap:4px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-radius:25px}.news-filters button{padding:10px 8px;font-size:14px}#newsCount{font-size:13px}
 .news-grid,.news-grid.is-filtered{grid-template-columns:1fr;gap:22px}.news-card,.news-feature,.news-grid.is-filtered .news-card{grid-column:auto;grid-row:auto;grid-template-columns:1fr;grid-template-rows:230px auto;border-radius:26px}.news-feature .news-card-image,.news-card-image{min-height:0;height:230px}.news-feature .news-card-copy,.news-card-copy{padding:25px}.news-card h2,.news-feature h2,.news-grid.is-filtered h2{font-size:28px;line-height:1.15}.news-card p,.news-feature p{font-size:16px;line-height:1.55}.news-card .news-meta{font-size:13px}
 .news-context{grid-template-columns:1fr;margin-top:48px;gap:18px}.news-context>div{padding:0 0 10px}.news-context>a{padding:26px}.news-context h2{font-size:var(--advisory-heading)}
 .news-article-head{margin-bottom:28px}.news-article-head .news-meta{font-size:13px;gap:10px}.news-article-head>p{font-size:18px;line-height:1.6}.news-article-image{margin-bottom:32px}.news-article-image>img{height:260px;border-radius:26px}.news-reading{grid-template-columns:1fr;gap:32px}.news-key{position:static;padding:24px;gap:8px}.news-key strong{font-size:36px}.news-reading h2{font-size:26px}.news-reading p{font-size:17px;line-height:1.7}.news-reading article>section{margin-bottom:32px}.news-next{padding:26px}.news-back{margin-bottom:22px}
}
@media(prefers-reduced-motion:reduce){.news-card,.news-card-image img,.news-filters button{transition:none}.news-card:hover{transform:none}}
.site-footer .footer-profile{flex-direction:row}
@media(min-width:1001px){.news-card:not(.news-feature){grid-template-columns:.6fr 1fr}.news-card:not(.news-feature) .news-card-copy{padding:24px}.news-card:not(.news-feature) h2{font-size:25px}}
/* A separate masked glass layer keeps navigation content fully opaque. */
.nav{background:transparent;border-bottom:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;isolation:isolate;overflow:visible}
.nav::before{content:'';position:absolute;inset:0 0 -48px;z-index:-1;pointer-events:none;background:rgba(22,22,23,.66);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);mask-image:linear-gradient(to bottom,#000 0%,#000 40%,rgba(0,0,0,.86) 61%,rgba(0,0,0,.4) 80%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 40%,rgba(0,0,0,.86) 61%,rgba(0,0,0,.4) 80%,transparent 100%)}
.site-footer .footer-profile{gap:22px}
.footer-profile>img{width:128px;height:128px;flex-basis:128px}
.site-footer .footer-profile strong{font-size:28px;line-height:1.15;font-weight:500;letter-spacing:-.025em}
.site-footer .footer-profile .footer-phone{font-size:24px;line-height:1.2;font-weight:400;letter-spacing:-.015em}
.site-footer .footer-profile p{font-size:15px;line-height:1.5;max-width:240px}
.guide-article .editorial-byline{font-size:14px;line-height:1.6;color:#6e6e73;margin-top:24px}
.editorial-byline time{color:#86868b}
.guide-article .guide-checklist{padding-left:22px;margin:16px 0 0;color:#515154;font-size:17px;line-height:1.7}
.guide-checklist li+li{margin-top:10px}
.guide-article section h3{font-size:20px;font-weight:500;line-height:1.35;letter-spacing:-.02em;margin:24px 0 12px}
.guide-article section p a,.news-reading article p a{color:#0066cc;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1000px) and (min-width:801px){.footer-profile>img{width:104px;height:104px;flex-basis:104px}.site-footer .footer-profile{gap:18px}.site-footer .footer-profile strong{font-size:25px}.site-footer .footer-profile .footer-phone{font-size:22px}}
@media(max-width:800px){.nav::before{bottom:-40px}.footer-profile>img{width:104px;height:104px;flex-basis:104px}.site-footer .footer-profile{gap:20px}.site-footer .footer-profile strong{font-size:26px}.site-footer .footer-profile .footer-phone{font-size:23px}.site-footer .footer-profile p{font-size:14px;max-width:220px}.guide-article .guide-checklist{font-size:16px;line-height:1.65}.guide-article .editorial-byline{font-size:13px}}
.news-kicker{font-family:inherit;text-transform:none;letter-spacing:-.01em;font-weight:400;font-size:16px}
/* The clay cast lives in illustrations; the shared SF / glass UI stays consistent. */
.guide-grid .guide-card{padding:0;overflow:hidden;border-radius:28px;border:1px solid #ffffffd9;background:linear-gradient(135deg,#ffffffd9,#ffffff99);backdrop-filter:blur(24px) saturate(130%);-webkit-backdrop-filter:blur(24px) saturate(130%);transition:transform .4s,box-shadow .4s}
.guide-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px #1d1d1f0d}
.guide-card-art{aspect-ratio:3/2;background:#f5eadc;overflow:hidden;flex-shrink:0}
.guide-card-art img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;transition:transform .65s cubic-bezier(.2,.8,.2,1)}
.guide-card-copy{padding:28px;display:flex;flex-direction:column;flex:1;align-items:flex-start}
.guide-card-copy>span{font-size:13px;line-height:1.5;color:#6e6e73;font-weight:400;letter-spacing:0;text-transform:none}
.guide-card-copy h2{font-size:28px;line-height:1.15;font-weight:500;letter-spacing:-.03em;margin:18px 0 16px}
.guide-card-copy p{font-size:17px;line-height:1.6;margin:0 0 24px}
.guide-card-copy b{display:inline-flex;align-items:center;min-height:44px;padding-top:0;font-size:16px;margin-top:auto}
.guide-cover{margin:0 0 48px}
.guide-cover img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:28px;background:#f5eadc}
.guide-cover figcaption{font-size:12px;line-height:1.5;color:#86868b;margin:12px 4px 0}
@supports(corner-shape:squircle){.guide-grid .guide-card,.guide-cover img{corner-shape:squircle;border-radius:44px}}
@media(max-width:800px){.guide-grid{gap:26px}.guide-card-copy{padding:25px}.guide-card-copy h2{font-size:26px}.guide-card-copy p{font-size:16px}.guide-cover{margin-bottom:36px}.guide-cover img{border-radius:24px}.guide-card-art img{object-fit:contain}.guide-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.guide-card,.guide-card-art img{transition:none}.guide-card:hover{transform:none}}
.aff-choice{display:grid;gap:10px}.aff-choice>span{font-size:16px;font-weight:600;line-height:1.4}
.aff-switch{position:relative;display:flex;padding:4px;isolation:isolate;border-radius:999px;background:#e8e8ed}
.aff-switch::before{content:'';position:absolute;inset:4px auto 4px 4px;width:calc((100% - 8px)/2);border-radius:999px;background:#1d1d1f;z-index:-1;transition:transform .75s cubic-bezier(.2,.8,.2,1)}
.aff-switch:has(button:nth-child(2)[aria-pressed=true])::before{transform:translateX(100%)}
.aff-switch button{flex:1;min-height:44px;border:0;border-radius:999px;background:transparent;padding:10px 14px;color:#1d1d1f;font:inherit;font-size:16px;cursor:pointer;transition:color .75s cubic-bezier(.2,.8,.2,1)}
.aff-switch button[aria-pressed=true]{color:#fff}.aff-switch button:focus-visible{outline:2px solid #0071e3;outline-offset:3px}
.aff-buyer{display:grid;gap:22px;margin:0;padding:20px;min-width:0;border:1px solid #d2d2d7;border-radius:16px}
.aff-buyer legend{padding:0 6px;color:#6e6e73;font-size:15px;font-weight:600}
.aff-mode-fields{display:grid;gap:24px;border:0;min-width:0;padding:0;margin:0}
.aff-buyer[hidden],.aff-mode-fields[hidden]{display:none!important}
.aff-context{margin:0;font-size:14px;line-height:1.6;color:#6e6e73}
.tool-inputs input[readonly]{background:#e8e8ed88;color:#6e6e73;font-weight:400}
@media(prefers-reduced-motion:reduce){.aff-switch::before,.aff-switch button{transition:none}}
/* Keep the estimate and its labels visible at the top beside longer forms. */
.tool-result{justify-content:flex-start}
/* Shared segmented-control motion: Agent Services is the benchmark. */
:root{--segment-duration:.75s;--segment-easing:cubic-bezier(.2,.8,.2,1)}
.service-tabs::before,.planner-tabs::before,.aff-switch::before,.guide-tabs::before,.news-filters::before{transition:transform var(--segment-duration) var(--segment-easing)}
.service-tabs button,.planner-tabs button,.aff-switch button,.guide-tabs button,.news-filters button{font-family:inherit;transition:color var(--segment-duration) var(--segment-easing)}
.guide-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin:0 0 36px}
.guide-tabs{position:relative;display:flex;width:min(480px,100%);padding:6px;background:#e8e8ed;border-radius:999px;isolation:isolate;--tab-index:0}
.guide-tabs::before{content:'';position:absolute;top:6px;bottom:6px;left:6px;width:calc((100% - 12px)/3);z-index:-1;border-radius:999px;background:#1d1d1f;transform:translateX(calc(var(--tab-index)*100%))}
.guide-tabs button{flex:1;min-width:0;min-height:48px;padding:13px 18px;border:0;border-radius:999px;background:transparent;color:#1d1d1f;font:inherit;font-size:16px;font-weight:400;cursor:pointer}
.guide-tabs button[aria-pressed=true]{color:#fff}.guide-tabs button:focus-visible,.news-filters button:focus-visible{outline:2px solid #0071e3;outline-offset:3px}
#guideCount{font-size:14px;line-height:1.5;color:#6e6e73}
.guides-page .guide-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));transition:opacity .18s ease,transform .24s ease}
.guide-grid.is-changing{opacity:0;transform:translateY(8px)}
.guide-grid .guide-card[hidden]{display:none!important}
.guide-official-sources{border-top:1px solid #d2d2d7;padding-top:28px}
.guide-article .guide-official-sources h2{font-size:22px}.guide-official-sources ul{padding-left:20px;font-size:15px;line-height:1.7}.guide-official-sources a{color:#0066cc;text-decoration:underline;text-underline-offset:3px}.guide-article .guide-official-sources p{font-size:14px;line-height:1.6}
.guide-table-wrap{overflow-x:auto;margin:24px 0;border:1px solid #d2d2d7;border-radius:18px;background:#ffffff99}
.guide-table{width:100%;border-collapse:collapse;text-align:left;font-size:15px;line-height:1.55}
.guide-table th,.guide-table td{padding:16px;vertical-align:top;min-width:160px;border-bottom:1px solid #d2d2d780}
.guide-table thead{background:#e8e8ed88}.guide-table th{font-weight:500;color:#1d1d1f}.guide-table td{color:#6e6e73}.guide-table tbody tr:last-child>*{border-bottom:0}
/* The news filter uses the same moving black pill, including its mobile grid. */
.news-filters{position:relative;isolation:isolate;display:flex;gap:0;padding:6px;border:0;background:#e8e8ed;border-radius:999px}
.news-filters::before{content:'';position:absolute;z-index:-1;left:6px;top:6px;width:calc((100% - 12px)/4);height:calc(100% - 12px);background:#1d1d1f;border-radius:999px;transform:translate(calc(var(--pill-x,0)*100%),calc(var(--pill-y,0)*100%))}
.news-filters button{flex:1;min-height:48px;padding:12px 18px;color:#1d1d1f;white-space:nowrap;background:transparent;border:0;box-shadow:none}
.news-filters button[aria-pressed=true]{color:#fff;background:transparent;box-shadow:none}
/* Keep the navigation solid through the content, with one short continuous fade. */
.nav::before{bottom:-24px;background:rgba(22,22,23,.66);backdrop-filter:blur(24px) saturate(100%);-webkit-backdrop-filter:blur(24px) saturate(100%);mask-image:linear-gradient(to bottom,#000 0%,#000 calc(100% - 28px),transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 calc(100% - 28px),transparent 100%)}
main#top .home-profile{display:block;grid-template-columns:minmax(0,1fr);text-align:left}
main#top .home-profile>div{width:100%;max-width:none;align-items:flex-start;margin:0;padding:0;text-align:left}
main#top .home-profile h2{margin-top:0}main#top .home-profile p{margin-bottom:0}
/* Compact optional inputs without deleting them or changing financial values. */
.compact-optional{padding:0;border:0}.compact-optional summary{min-height:44px;display:list-item;align-content:center;font-size:15px;line-height:1.5;color:#0066cc;cursor:pointer}
.compact-optional>label{margin-top:18px}.compact-optional[data-filled=true]>summary::after{content:' · Added';color:#6e6e73;font-size:13px}
@media(min-width:801px){
 .tool-shell{overflow:visible}
 .tool-inputs{border-radius:22px 0 0 22px}
 .tool-result{position:sticky;top:var(--result-sticky-top,24px);align-self:start;max-height:calc(100svh - 48px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#b0b0b780 transparent;border-radius:20px;overscroll-behavior-y:auto}
}
@media(max-width:800px){
 .guide-toolbar{gap:14px;margin-bottom:28px}.guide-tabs{width:100%;padding:4px}.guide-tabs::before{left:4px;top:4px;bottom:4px;width:calc((100% - 8px)/3)}.guide-tabs button{font-size:15px;padding:12px 10px;min-height:44px}
 .guides-page .guide-grid{grid-template-columns:1fr}.guide-table th,.guide-table td{font-size:14px;padding:14px;min-width:145px}
 .news-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-radius:26px;gap:0}.news-filters::before{width:calc((100% - 12px)/2);height:calc((100% - 12px)/2)}.news-filters button{white-space:normal;min-height:44px;padding:10px 12px}
 .nav::before{bottom:-20px;mask-image:linear-gradient(to bottom,#000 0%,#000 calc(100% - 24px),transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 calc(100% - 24px),transparent 100%)}
 .tool-result{position:static;max-height:none;overflow:visible}
 main#top .home-profile>div{align-items:flex-start;text-align:left}
}
@media(prefers-reduced-motion:reduce){.service-tabs::before,.planner-tabs::before,.aff-switch::before,.guide-tabs::before,.news-filters::before,.guide-tabs button,.news-filters button,.guide-grid{transition:none!important}}
.tool-result-caption:empty,.tool-result-note:empty{display:none}
/* New launch field guide: shared SF, glass cards and segmented-control timing. */
.launch-eyebrow{display:block;margin:0 0 18px;color:#6e6e73;font-size:15px;font-weight:400;line-height:1.5;letter-spacing:0}
.launch-intro .launch-hero-art{background:#f5eadc;border:1px solid #ffffffd9}
.launch-intro .launch-hero-art img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;animation:launch-art-arrive 1s cubic-bezier(.2,.8,.2,1) both}
.launch-hero-art figcaption{font-size:12px;line-height:1.5;color:#6e6e73;margin:0;padding:14px 18px;background:#ffffff9c}
.launch-quiet-link{display:block;width:fit-content;color:#0066cc;font-size:16px;line-height:1.5;margin-top:20px;min-height:44px;align-content:center}
.launch-section-head{max-width:820px;margin-bottom:32px}.launch-section-head p{margin-bottom:0}
.launch-validation-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:40px;align-items:start}
.launch-plan-art{border:1px solid #ffffffd9;border-radius:28px;padding:18px;background:#ffffffb3;backdrop-filter:blur(20px);text-align:center}
.launch-plan{display:block;width:100%;height:auto;font-family:inherit}
.launch-plan-art>small{display:block;font-size:12px;color:#86868b;line-height:1.5;margin-top:8px}
.launch-replay{display:inline-flex;align-items:center;justify-content:center;gap:16px;border:0;background:none;color:#0066cc;font:inherit;font-size:15px;min-height:44px;cursor:pointer}
.launch-door{transform-origin:246px 274px}.launch-plan-art.is-playing .launch-door{animation:launch-door-check 3.6s cubic-bezier(.2,.8,.2,1) both}.launch-plan-art.is-playing .launch-route{animation:launch-route-check 3.6s ease both}
.launch-checks details{padding:22px 0;border-bottom:1px solid #d2d2d7}.launch-checks details:first-child{padding-top:0}.launch-checks summary{font-size:21px;font-weight:500;line-height:1.35;letter-spacing:-.02em;cursor:pointer}.launch-checks details p{font-size:16px;line-height:1.65;margin:16px 0 0;color:#6e6e73}
#purchase-timeline{scroll-margin-top:32px}
.launch-stage-tabs{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));padding:6px;background:#e8e8ed;border-radius:999px;margin-bottom:28px;--launch-x:0;--launch-y:0}
.launch-stage-tabs::before{content:'';position:absolute;z-index:-1;left:6px;top:6px;width:calc((100% - 12px)/6);height:calc(100% - 12px);border-radius:999px;background:#1d1d1f;transform:translate(calc(var(--launch-x)*100%),calc(var(--launch-y)*100%));transition:transform var(--segment-duration,.75s) var(--segment-easing,cubic-bezier(.2,.8,.2,1))}
.launch-stage-tabs button{display:flex;align-items:center;justify-content:center;gap:10px;min-width:0;min-height:52px;padding:12px 10px;border:0;border-radius:999px;background:transparent;color:#1d1d1f;font:inherit;font-size:16px;font-weight:400;cursor:pointer;transition:color var(--segment-duration,.75s) var(--segment-easing,cubic-bezier(.2,.8,.2,1))}
.launch-stage-tabs button>span{font-size:12px;opacity:.65;font-variant-numeric:tabular-nums}.launch-stage-tabs button[aria-selected=true]{color:#fff}.launch-stage-tabs button:focus-visible,.launch-stage-back:focus-visible,.launch-replay:focus-visible{outline:2px solid #0071e3;outline-offset:3px}
.launch-stage-container{transition:opacity .18s ease,transform .24s ease}.launch-stage-container.is-changing{opacity:0;transform:translateY(8px)}
.launch-stage-panel{display:grid;grid-template-columns:.95fr 1.05fr;gap:36px;align-items:start;padding:32px;border:1px solid #ffffffd9;border-radius:28px;background:linear-gradient(135deg,#ffffffd9,#ffffff99);backdrop-filter:blur(24px) saturate(130%);min-height:650px}
.launch-stage-panel[hidden]{display:none!important}
.launch-stage-art{position:relative;overflow:hidden;border-radius:22px;background:#f5eadc;padding-bottom:52px}
.launch-stage-art img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.launch-art-note{position:absolute;left:14px;right:14px;bottom:14px;display:flex;gap:10px;align-items:center;justify-content:center;padding:12px 14px;border:1px solid #ffffffd9;border-radius:999px;background:#ffffffc7;backdrop-filter:blur(18px);font-size:13px;line-height:1.4;color:#515154;text-align:center}
.launch-note-dot{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#0071e3}
.launch-stage-panel:not([hidden]) .launch-art-note{animation:launch-note-arrive .8s cubic-bezier(.2,.8,.2,1) both}
.launch-stage-copy .launch-eyebrow{font-size:14px;margin-bottom:12px}.launch-stage-copy h3{margin:0 0 18px}.launch-stage-copy>p{font-size:16px;line-height:1.6;margin-bottom:22px}
.launch-task-list{counter-reset:task;list-style:none;padding:0;margin:0 0 24px;display:grid;gap:18px}
.launch-task-list li{position:relative;padding-left:32px;font-size:16px;line-height:1.6;color:#515154}
.launch-task-list li::before{counter-increment:task;content:counter(task);position:absolute;left:0;top:2px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e8e8ed;color:#6e6e73;font-size:12px;line-height:1}
.launch-stage-takeaway{padding:18px;border-radius:18px;background:#f5f5f7;border:1px solid #e8e8ed}.launch-stage-takeaway strong{font-size:14px;font-weight:500;color:#1d1d1f}.launch-stage-takeaway p{font-size:15px;line-height:1.6;margin:8px 0 0}
.launch-stage-copy .launch-gate{font-size:14px;line-height:1.6;margin:20px 0 0;color:#6e6e73}.launch-gate strong{font-weight:500;color:#1d1d1f}
.launch-stage-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px}.launch-stage-controls>span{font-size:14px;color:#6e6e73}.launch-stage-controls>div{display:flex;gap:16px;align-items:center}
.launch-stage-back{border:0;background:transparent;color:#0066cc;font:inherit;font-size:16px;min-height:48px;padding:10px 12px;cursor:pointer}.launch-stage-controls button:disabled{opacity:.35;cursor:default;transform:none}
.launch-page .launch-timeline-note{font-size:13px;line-height:1.6;color:#86868b;margin:24px 0 0;max-width:900px}
.launch-funding-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.launch-funding-grid article{padding:28px;border:1px solid #ffffffd9;border-radius:26px;background:#ffffff99;backdrop-filter:blur(20px)}.launch-funding-grid h3{margin:20px 0 16px}.launch-funding-grid p{font-size:16px;line-height:1.65;margin:0}
.launch-reference{padding:22px 0;margin:40px 0;border-bottom:1px solid #d2d2d7}.launch-reference summary{font-size:15px;color:#0066cc;cursor:pointer;min-height:44px;align-content:center}.launch-page .launch-reference p,.launch-reference li{font-size:14px;line-height:1.65;color:#6e6e73}.launch-reference p:first-of-type{margin-top:18px}.launch-reference ul{padding-left:18px}.launch-reference a{color:#0066cc;text-decoration:underline;text-underline-offset:3px}
.launch-closing{margin-top:48px}.launch-closing .launch-quiet-link{margin-bottom:0}
@keyframes launch-art-arrive{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@keyframes launch-door-check{0%,12%{transform:rotate(0deg)}35%,70%{transform:rotate(-80deg)}100%{transform:rotate(0deg)}}
@keyframes launch-route-check{0%,15%{opacity:.2;stroke-dashoffset:40}50%,80%{opacity:1;stroke-dashoffset:0}100%{opacity:.7;stroke-dashoffset:0}}
@keyframes launch-note-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@supports(corner-shape:squircle){.launch-stage-panel,.launch-plan-art,.launch-funding-grid article{corner-shape:squircle;border-radius:42px}}
@media(max-width:1000px) and (min-width:801px){.launch-stage-panel{padding:26px;gap:28px;grid-template-columns:.8fr 1.2fr}.launch-stage-tabs button{font-size:14px;gap:7px}}
@media(max-width:800px){
 .launch-eyebrow{font-size:14px}.launch-intro{gap:28px}.launch-quiet-link{font-size:15px;margin-top:12px}.launch-hero-art figcaption{font-size:12px;padding:12px 16px}
 .launch-validation-grid{grid-template-columns:1fr;gap:28px}.launch-plan-art{padding:12px}.launch-section-head{margin-bottom:26px}.launch-checks summary{font-size:20px}
 .launch-stage-tabs{grid-template-columns:repeat(3,minmax(0,1fr));border-radius:28px;margin-bottom:22px;padding:4px}.launch-stage-tabs::before{left:4px;top:4px;width:calc((100% - 8px)/3);height:calc((100% - 8px)/2)}.launch-stage-tabs button{font-size:14px;gap:7px;padding:12px 6px;min-height:48px}.launch-stage-tabs button>span{font-size:11px}
 .launch-stage-panel{grid-template-columns:1fr;gap:26px;padding:22px;min-height:0}.launch-stage-copy>p,.launch-task-list li{font-size:16px;line-height:1.6}.launch-stage-art{padding-bottom:52px;border-radius:18px}.launch-art-note{font-size:12px}.launch-task-list{gap:16px}
 .launch-stage-controls{gap:12px;align-items:center}.launch-stage-controls>div{gap:6px}.launch-stage-controls .advisory-button{font-size:14px;padding:12px 16px;min-height:46px;gap:12px}.launch-stage-back{font-size:14px;padding:10px 8px}.launch-stage-controls>span{font-size:12px}
 .launch-funding-grid{grid-template-columns:1fr;gap:18px}.launch-funding-grid article{padding:25px}.launch-closing{margin-top:36px}.launch-closing .advisory-button{width:100%}
}
@media(prefers-reduced-motion:reduce){.launch-intro .launch-hero-art img,.launch-plan-art.is-playing .launch-door,.launch-plan-art.is-playing .launch-route,.launch-stage-panel .launch-art-note{animation:none!important}.launch-stage-tabs::before,.launch-stage-tabs button,.launch-stage-container{transition:none!important}}
/* Apple-style navigation bar: frosted glass with a hairline edge instead of a fading band.
   Light on white pages; dark over the homepage hero video. */
.nav::before{inset:0;background:rgba(250,250,252,.8);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);mask-image:none;-webkit-mask-image:none;border-bottom:1px solid rgba(0,0,0,.1)}
.nav,.nav nav>a,.nav-calculator-toggle,.nav-contact{color:#1d1d1f}
.nav .brand-logo{filter:brightness(0);opacity:.88}
.nav nav>a:hover,.nav-calculator-toggle:hover{color:#0066cc}
body:has(main>.hero:first-child) .nav::before{background:rgba(22,22,23,.72);border-bottom-color:rgba(255,255,255,.16)}
body:has(main>.hero:first-child) .nav,body:has(main>.hero:first-child) .nav-contact{color:#f5f5f7}
body:has(main>.hero:first-child) .nav .brand-logo{filter:none;opacity:1}
@media(min-width:801px){body:has(main>.hero:first-child) .nav nav>a,body:has(main>.hero:first-child) .nav-calculator-toggle{color:#f5f5f7}body:has(main>.hero:first-child) .nav nav>a:hover,body:has(main>.hero:first-child) .nav-calculator-toggle:hover{color:#fff;opacity:.72}}
@media(max-width:800px){.nav-menu-toggle{border-color:rgba(0,0,0,.14);background:rgba(0,0,0,.04);color:#1d1d1f}.nav-menu-toggle[aria-expanded=true]{background:#1d1d1f;color:#fff}body:has(main>.hero:first-child) .nav-menu-toggle{border-color:#ffffff75;background:#ffffff1c;color:#fff}body:has(main>.hero:first-child) .nav-menu-toggle[aria-expanded=true]{background:#fff;color:#1d1d1f}.nav nav>a:hover,.nav-calculator-toggle:hover{color:#1d1d1f}}
