/* One idea at a time, with the approved Finnvisor Advisory type and palette. */
.home-services{position:relative;isolation:isolate;overflow:clip;background:radial-gradient(ellipse 85% 35% at 100% 0%,#c2975629,transparent 70%),radial-gradient(ellipse 90% 55% at 0% 50%,#24567966,transparent 75%),linear-gradient(135deg,#061b33 0%,#0a294b 48%,#071d35 100%)}
.home-services:before{content:'';position:absolute;pointer-events:none;width:920px;height:920px;right:-390px;top:-470px;border:1px solid #c2975626;border-radius:50%;box-shadow:0 0 0 90px #f6f5ef04,0 0 0 180px #f6f5ef03,0 0 0 270px #f6f5ef02}
.home-services>.wrap{position:relative}
.home-story .home-services .services-bento{border-bottom:0}
.home-services .bento-intro h2{color:var(--paper)}
.home-story .home-services .bento-intro .serif{color:#d4b17b}
.home-services .bento-intro .eyebrow{color:#d4b17b}
.home-services .bento-intro p{color:#c5d0da}
.home-services .bento-card{box-shadow:0 12px 32px #020e1d1a}
.home-services .bento-card:focus-visible{outline-color:#e0bf8d}
.home-services .bento-us-finance{background:#123656;border-color:#b6cad233}
.home-services .bento-us-finance:hover,.home-services .bento-us-finance:focus-visible{background:#1a4263;border-color:#c2975680}
@media(max-width:700px){.home-services:before{width:580px;height:580px;right:-370px;top:-220px}.home-services .bento-intro p{color:#c5d0da}}
@media print{.home-services{background:none}.home-services:before{display:none}.home-services .bento-intro h2,.home-services .bento-intro p{color:var(--ink)}.home-story .home-services .bento-intro .serif,.home-services .bento-intro .eyebrow{color:#8b672e}}
.home-story .story-section{padding:90px 0;border-bottom:1px solid var(--line)}
.home-story .story-section h2{font-family:var(--display);font-size:clamp(40px,4.6vw,62px);font-weight:600;line-height:1.04;letter-spacing:-.035em;margin:18px 0 22px}
.home-story .story-section .serif{font-family:var(--display);font-weight:600;color:#8b672e;letter-spacing:inherit}
.home-story .story-lead{font-size:17px;color:var(--muted);line-height:1.5;margin:0 0 26px}
.next-step{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.next-step-copy{min-width:0}
.journey-path{margin-bottom:25px}
.journey-stop{display:flex;align-items:center;gap:22px;padding:20px 0;border-top:1px solid var(--line);text-decoration:none;min-height:92px}
.journey-number{font-family:var(--display);font-size:26px;color:#84917d;transition:color 220ms}
.journey-stop h3{font-family:var(--display);font-size:23px;font-weight:600;line-height:1.15;letter-spacing:-.02em;margin:0 0 7px}
.journey-stop p{font-size:14px;color:var(--muted);line-height:1.5;margin:0}
.journey-stop:hover .journey-number,.journey-stop:focus-visible .journey-number{color:#8b672e}
.journey-stop:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.story-people{position:relative;margin:0;align-self:stretch;min-height:510px}
.story-people img{display:block;position:absolute;inset:0;width:100%;height:calc(100% - 22px);object-fit:cover;object-position:48% 45%;border-radius:14px}
.story-people figcaption{position:absolute;bottom:0;left:0;font-size:10px;color:var(--muted)}
.process-path{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:0;margin:45px 0 30px;gap:42px}
.process-path li{position:relative;padding-top:25px;border-top:1px solid #a8b3a0}
.process-path li:before{content:'';position:absolute;top:-4px;left:0;width:7px;height:7px;background:#ae8440;border-radius:50%}
.process-path li>span{font-size:12px;color:#87917e}
.process-step-art{display:block;width:168px;height:168px;max-width:100%;object-fit:contain;margin:12px 0 18px}
.process-path h3{font-family:var(--display);font-size:28px;font-weight:600;line-height:1.15;letter-spacing:-.025em;margin:0 0 10px}
.process-path p{font-size:15px;color:var(--muted);line-height:1.5;margin:0}
/* FAQ: compact support column beside calm, individual accordion surfaces. */
.home-story .simple-questions{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.35fr);gap:46px;align-items:start}
.home-story .simple-questions h2{font-size:clamp(34px,3.4vw,44px);margin:13px 0 30px;line-height:1.12}
.home-faq-intro{min-width:0}
.home-faq-help{background:#eceee6;border:1px solid #0a294b07;border-radius:8px;padding:28px}
.home-faq-help-eyebrow{display:block;font-size:10px;line-height:1.5;letter-spacing:.09em;text-transform:uppercase;color:#7e6a42;margin-bottom:22px}
.home-faq-help h3{font:600 23px/1.2 var(--display);letter-spacing:-.025em;margin:0 0 10px}
.home-faq-help p{font-size:15px;line-height:1.65;color:#5c6c66;margin:0 0 24px}
.home-faq-help .button{display:inline-flex;gap:22px;font-size:13px;min-height:42px;padding:10px 15px}
.home-faq-help .button span{font-size:17px;line-height:1}
.home-faq-email{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:12px;line-height:1.7;margin-top:22px}
.home-faq-email>span{color:#66716d}
.home-faq-email a{color:#0a294b;text-underline-offset:4px;text-decoration-color:#0a294b44;overflow-wrap:anywhere}
.home-faq-content{min-width:0}
.home-faq-list{display:grid;gap:9px}
.home-faq-item{border:0;padding:0;background:#eeeee7;border-radius:5px;transition:background 180ms;overflow-anchor:none}
.home-faq-item:hover{background:#e7eae0}
.home-faq-item[open]{background:#e9ede3}
.home-faq-item summary{display:flex;justify-content:flex-start;align-items:center;gap:20px;list-style:none;cursor:pointer;padding:21px 23px;font:600 16px/1.4 var(--display);min-height:65px;border:0}
.home-faq-item summary::-webkit-details-marker{display:none}
.home-faq-item summary::after,.home-faq-item[open] summary::after{content:none}
.home-faq-item summary:focus-visible{outline:2px solid #8b672e;outline-offset:3px;border-radius:5px}
.home-faq-plus{position:relative;flex:0 0 16px;width:16px;height:16px;transition:transform 300ms cubic-bezier(.22,1,.36,1);color:#a57d37}
.home-faq-plus:before,.home-faq-plus:after{content:'';position:absolute;background:currentColor;border-radius:1px}
.home-faq-plus:before{width:14px;height:1.5px;left:1px;top:7.25px}
.home-faq-plus:after{height:14px;width:1.5px;top:1px;left:7.25px}
.home-faq-item[open]:not([data-closing]) .home-faq-plus{transform:rotate(45deg)}
.home-faq-answer{padding:0 25px 25px 59px}
.home-faq-answer p{padding:0;font-size:15px;line-height:1.7;color:#5c6c66;max-width:540px;margin:0}
.home-faq-more{display:inline-flex;gap:16px;margin-top:23px;font-size:13px}
@media(max-width:950px){.home-story .simple-questions{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px}.home-faq-help{padding:23px}.home-faq-item summary{font-size:15px;padding:20px;gap:16px}.home-faq-answer{padding-left:52px}}
@media(max-width:700px){
 .home-story .simple-questions{grid-template-columns:1fr;gap:25px}
 .home-faq-intro{display:contents}
 .home-story .simple-questions h2{font-size:34px;margin:0}
 .home-faq-intro>.eyebrow{margin-bottom:-14px}
 .home-faq-help{grid-row:4;margin-top:5px;padding:25px}
 .home-faq-help-eyebrow{margin-bottom:17px}
 .home-faq-item summary{font-size:15px;gap:15px;padding:20px 17px;min-height:64px;align-items:flex-start}
 .home-faq-plus{margin-top:3px}
 .home-faq-answer{padding:0 20px 24px 48px}
 .home-faq-answer p{font-size:14px;line-height:1.7}
 .home-faq-more{margin-top:20px}
}
@media(prefers-reduced-motion:reduce){.home-faq-item,.home-faq-plus{transition:none}}
.home-story .story-reveal.is-observed{opacity:0;transform:translateY(12px);transition:opacity 450ms ease,transform 450ms cubic-bezier(.16,1,.3,1)}
.home-story .story-reveal.is-visible{opacity:1;transform:none}
@media(max-width:950px){.next-step,.simple-questions{gap:35px}.story-people{min-height:480px}.journey-stop{gap:16px}.journey-stop h3{font-size:21px}}
@media(max-width:700px){
 .home-story .story-section{padding:55px 0}
 .home-story .story-section h2{font-size:40px}
 .next-step,.simple-questions{grid-template-columns:1fr;gap:30px}
 .home-story .story-lead{font-size:16px;margin-bottom:22px}
 .journey-stop{padding:17px 0;min-height:84px}
 .journey-stop h3{font-size:22px}
 .story-people{min-height:0;aspect-ratio:1.1}
 .story-people img{height:calc(100% - 20px)}
 .process-path{grid-template-columns:1fr;gap:0;margin-top:32px}
 .process-path li{border-top:0;border-left:1px solid #a8b3a0;padding:0 0 32px 26px;margin-left:4px}
 .process-path li:before{top:5px;left:-4px}
 .process-path li:last-child{padding-bottom:0;border-left-color:transparent}
 .process-path li>span{display:inline-block;margin-bottom:8px}
 .process-step-art{width:124px;height:124px;margin:4px 0 16px}
 .process-path h3{font-size:26px;margin:0 0 7px}
 .process-path p{font-size:14px}
 .simple-questions .faq-list{margin-top:0}
}
@media(prefers-reduced-motion:reduce){.home-story .story-reveal.is-observed{opacity:1;transform:none;transition:none}.journey-number{transition:none}}
/* Guided storytelling: useful explanations in a clear reading order. */
.home-story .next-step{gap:64px}
.home-story .next-step h2{font-size:clamp(38px,4vw,54px)}
.home-story .next-step .story-lead{max-width:510px;font-size:16px;line-height:1.65}
.home-story .journey-stop p{max-width:410px;line-height:1.6}
.home-story .story-people{min-height:640px}
.guided-section-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:end;margin-bottom:32px}
.guided-section-intro>p,.guided-section-intro>div>p{font-size:16px;line-height:1.65;color:#5c6c66;max-width:530px;margin:0 0 22px}
.guided-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.guided-service-card{display:flex;flex-direction:column;align-items:flex-start;position:relative;background:#eef0e8;border:1px solid #0a294b12;border-radius:12px;padding:28px;transition:background 200ms,border-color 200ms;min-width:0}
.guided-service-card:nth-child(3n+2){background:#f0ece1}
.guided-service-card:nth-child(3n){background:#e8efed}
.guided-service-card:hover{background:#fffdf7;border-color:#b8924e70}
.service-card-number{font:600 12px var(--display);color:#8b672e;border-bottom:1px solid #b8924e60;padding:0 0 8px;margin-bottom:24px;letter-spacing:.1em}
.guided-service-card h3{font:600 23px/1.15 var(--display);letter-spacing:-.02em;margin:0 0 16px;color:#0a294b}
.guided-service-card p{font-size:14px;line-height:1.65;color:#5c6c66;margin:0 0 22px}
.guided-service-card small{font-size:11px;line-height:1.6;color:#65756d;margin-top:auto;margin-bottom:20px}
.guided-service-card .text-link{font-size:13px}
.guided-all-services{display:inline-block;margin-top:27px}
.guided-us .guided-section-intro{align-items:center}
.guided-us .button{margin-top:7px}
/* A floating cartographic relief, continuous with the page background. */
.guided-us .guided-section-intro{grid-template-columns:1.08fr 1fr;gap:38px}
.guided-connection.world-map{position:relative;min-width:0;margin:0;align-self:center;background:radial-gradient(ellipse at 50% 58%,#dce8df85 0,transparent 68%)}
.world-map-stage{position:relative;width:100%;height:clamp(310px,32vw,420px);isolation:isolate}
.world-map-stage:after{content:'';position:absolute;left:15%;right:15%;bottom:15%;height:12%;background:#31564d14;border-radius:50%;filter:blur(22px);z-index:-1;pointer-events:none}
.world-map-canvas,.world-map-fallback{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.world-map-canvas{opacity:0;transition:opacity 500ms}
.world-map-ready .world-map-canvas{opacity:1}
.world-map-ready .world-map-fallback{visibility:hidden}
.world-map-label{position:absolute;opacity:0;transform:translate(-50%,calc(-100% - 14px));white-space:nowrap;font:600 11px/1.2 var(--display);letter-spacing:.015em;color:#0d3155;background:#f9f8f1eb;border:1px solid #b8924e40;border-radius:4px;padding:7px 10px;box-shadow:0 4px 14px #0d315509;pointer-events:none;transition:opacity 400ms}
.world-map-ready .world-map-label{opacity:1}
.world-map-label:after{content:'';position:absolute;left:50%;top:100%;height:10px;width:1px;background:#8b672e80}
.world-map figcaption{display:flex;align-items:center;gap:8px;padding:0 8px;font:500 10px/1.5 var(--display);letter-spacing:.025em;color:#65756c}
.world-map-key{width:6px;height:6px;border-radius:50%;background:#b68b40;box-shadow:0 0 0 3px #b68b4015}
.world-map-caption{margin-left:auto;color:#819088}
.guided-us-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:32px}
.guided-us-options article{border-top:1px solid #b8924e66;padding-top:23px}
.guided-us-options h3,.guided-benefit-grid h3{font:600 24px/1.2 var(--display);letter-spacing:-.02em;margin:0 0 14px}
.guided-us-options p,.guided-benefit-grid p{font-size:14px;line-height:1.65;color:#5c6c66;max-width:350px;margin:0}
.guided-benefits{background:#e8eee6;border-radius:16px;padding:48px!important;margin:30px 0 0;border:0!important}
.guided-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:36px}
.guided-benefit-grid article>span{font:600 12px var(--display);color:#8b672e;display:block;margin-bottom:20px}
.home-story .simple-process .story-lead{max-width:630px}
.planning-page .story-section{padding:80px 0;border-bottom:1px solid #0a294b18}
.planning-page .guided-benefits{margin-bottom:15px}
.planning-page .guided-service-card h3{font-size:23px}
.planning-page .guided-section-intro h2{font-size:clamp(36px,4vw,52px)!important}
.planning-page .guided-benefits h2{font-size:clamp(36px,4vw,52px)!important}
.planning-page .journey-content{min-height:195px}
.planning-page .people-visual{min-height:485px}
.planning-page .human-copy>p{font-size:16px;line-height:1.65}
.planning-page .guided-us-options{margin:30px 0 70px}
@media(max-width:950px){.guided-section-intro{gap:32px}.guided-service-card{padding:22px}.guided-service-card h3{font-size:21px}.home-story .next-step{gap:35px}.guided-benefits{padding:35px!important}.guided-benefit-grid{gap:25px}}
@media(max-width:700px){
 .home-story .next-step h2{font-size:38px}
 .home-story .story-people{min-height:0;aspect-ratio:1.1}
 .home-story .journey-stop{align-items:flex-start;padding:20px 0}
 .home-story .journey-stop p{font-size:14px}
 .home-story .journey-number{font-size:24px;padding-top:1px}
 .guided-section-intro{grid-template-columns:1fr;gap:0;margin-bottom:24px}
 .guided-section-intro>p,.guided-section-intro>div>p{font-size:15px;line-height:1.65}
 .guided-service-grid{grid-template-columns:1fr;gap:14px}
 .guided-service-card{padding:25px}
 .service-card-number{margin-bottom:18px}
 .guided-service-card h3{font-size:24px}
 .guided-service-card small{margin-bottom:14px}
 .guided-us-options,.guided-benefit-grid{grid-template-columns:1fr;gap:25px}
 .guided-us-options article{padding-top:20px}
 .guided-us-options p,.guided-benefit-grid p{max-width:none}
 .guided-us .guided-section-intro{grid-template-columns:1fr;gap:12px}
 .guided-connection.world-map{margin-top:8px}
 .world-map-stage{height:clamp(245px,68vw,360px)}
 .world-map-label{font-size:10px;padding:6px 8px}
 .world-map figcaption{padding:0 4px;font-size:9px}
 .guided-benefits{padding:26px!important;margin-top:20px}
 .home-story .guided-benefits h2{font-size:34px}
 .guided-benefit-grid{margin-top:28px}
 .guided-benefit-grid article{border-top:1px solid #0a294b17;padding-top:22px}
 .guided-benefit-grid article>span{margin-bottom:12px}
 .home-story .process-path p{font-size:15px;line-height:1.65}
 .planning-page .story-section{padding:55px 0}
 .planning-page .journey-content{min-height:225px}
 .planning-page .people-visual{min-height:320px}
 .planning-page .guided-us-options{margin-bottom:55px}
}
@media(prefers-reduced-motion:reduce){.guided-service-card,.world-map-canvas,.world-map-label{transition:none}}
