/* SWM's original, task-first reading templates. Financial content and tools stay intact. */
body.journey277-page{background:#fbfcfd;color:#092638}
.journey277-page main{isolation:isolate}
.journey277-page :is(.guide-hero,.topic-hero,.tool-intro,.calculator-intro,.aven-hero,.rw-hero,.brief-hero,.bo-hero){margin-top:0!important;padding-top:clamp(42px,6vw,88px)!important;padding-bottom:clamp(40px,6vw,76px)!important}
.journey277-page :is(.guide-hero,.topic-hero){gap:clamp(28px,6vw,76px)!important;align-items:center!important}
.journey277-page :is(.guide-hero,.topic-hero,.tool-intro,.calculator-intro,.brief-hero,.bo-hero) h1{font-family:'DM Sans',Arial,sans-serif!important;font-size:clamp(36px,4.7vw,64px)!important;font-weight:700!important;line-height:1.08!important;letter-spacing:-.045em!important;text-transform:none!important;max-width:16ch}
.journey277-page :is(.guide-hero-copy,.topic-hero>div:first-child)>p{font-size:19px!important;line-height:1.65!important;max-width:56ch}
.journey277-page :is(.guide-scene,.topic-hero-visual){border-radius:28px!important;overflow:hidden;box-shadow:0 20px 50px #102f4010}
.journey277-page .guide-scene img{border-radius:28px!important;aspect-ratio:1.18;object-fit:cover!important}
.journey277-page .answer-first{background:#eaf5f6!important;border:0!important;border-radius:24px!important;padding:30px 34px!important;margin-top:12px!important;margin-bottom:48px!important;box-shadow:none!important}
.journey277-page .answer-first>p:not(.answer-author){font-size:clamp(20px,2.2vw,25px)!important;line-height:1.5!important;color:#123b4b!important}
.journey277-page .answer-tags{gap:9px!important;flex-wrap:wrap}
.journey277-page .answer-tags span{border:1px solid #b9d6df!important;background:#fff!important;border-radius:999px!important;padding:7px 13px!important;font-size:12px!important}
.journey277-page .answer-author{font-size:13px!important;color:#47626e!important;margin-top:20px!important}
.journey277-page :is(.guide-body,.topic-body){max-width:1120px!important;margin-inline:auto!important}
.journey277-page :is(.guide-chapter,.topic-section){padding:38px 0!important;border-top:1px solid #dce7eb!important;background:transparent!important;border-radius:0!important}
.journey277-page :is(.guide-chapter,.topic-section) h2{font-family:'DM Sans',Arial,sans-serif!important;font-size:clamp(28px,3.1vw,40px)!important;font-weight:700!important;letter-spacing:-.035em!important;line-height:1.17!important;text-transform:none!important;max-width:26ch;margin-bottom:22px!important}
.journey277-page :is(.guide-chapter,.topic-section,.guide-body)>p{font-size:17px!important;line-height:1.8!important;max-width:76ch}
.journey277-page :is(.concept-card,.program-card,.topic-links a,.credit-timing>div){border:1px solid #d4e2e8!important;border-radius:20px!important;background:white!important;box-shadow:none!important}
.journey277-page .concept-card{padding:26px!important}
.journey277-page .concept-card h3{font:700 22px/1.25 'DM Sans',Arial,sans-serif!important;letter-spacing:-.025em}
.journey277-page :is(.guide-next,.tool-budget){background:#eaf5f6!important;border:1px solid #c9e2e6!important;border-radius:24px!important;color:#092638!important}
.journey277-page :is(.guide-next,.tool-budget) h2{color:#092638!important}
.journey277-page :is(.guide-sources,.program-disclosure,.brief-important){font-size:13px!important;line-height:1.7!important;border-top:1px solid #d3e1e7!important;padding-block:30px!important}
.journey277-page .answer-navigation{background:#fff!important;border:1px solid #d5e3e8!important;border-radius:14px!important;margin-bottom:30px!important}
/* Calculator: inputs are the product, not a gate to a lead form. */
.journey277-page .calculator-intro{max-width:820px}
.journey277-page .calculator-intro h1{max-width:18ch}
.journey277-page .calculator-tabs{gap:10px!important;background:transparent!important;border:0!important;padding:0 0 24px!important;flex-wrap:wrap}
.journey277-page .calculator-tabs button{border:1px solid #bfd3de!important;border-radius:999px!important;min-height:48px!important;padding:12px 22px!important;background:#fff!important;color:#183b4b!important;font-weight:700!important}
.journey277-page .calculator-tabs button[aria-selected=true]{background:#092638!important;color:#fff!important;border-color:#092638!important}
.journey277-page .calculator-panel:not([hidden]){border-radius:24px!important;border:1px solid #d5e3e8!important;background:#fff!important;box-shadow:0 14px 40px #09263807!important;overflow:visible!important}
.journey277-page .mortgage-tools input,.journey277-page .mortgage-tools select{border-radius:10px!important;min-height:48px;font-size:16px!important}
.journey277-page .calculator-notes{background:#f0f5f7!important;border-radius:20px;padding:28px!important}
/* Purpose-built partner and property pages keep their images and scenarios. */
.journey277-page :is(.aven-hero,.rw-hero){border-bottom:1px solid #d4e3e9}
.journey277-page :is(.aven-hero h1,.rw-hero h1){font-family:'DM Sans',Arial,sans-serif!important;letter-spacing:-.045em!important;line-height:1.06!important;text-transform:none!important;font-size:clamp(40px,5.5vw,72px)!important}
.journey277-page :is(.aven-section,.rw-section){padding-block:clamp(40px,5vw,68px)!important}
.journey277-page :is(.aven-section,.rw-section,.brief-content,.bo-main) h2{font-family:'DM Sans',Arial,sans-serif!important;letter-spacing:-.035em!important;line-height:1.15!important;text-transform:none!important}
.journey277-page :is(.bo-panel,.bo-property-card,.brief-inside){border-color:#d5e3e8!important;border-radius:24px!important;box-shadow:none!important}
.journey277-page .bo-panel{padding:clamp(24px,3vw,42px)!important}
/* Editorial: distinctive SWM voice with readable publication hierarchy. */
.journey277-page.insights-page #guide .ins-wrap{max-width:1160px;width:calc(100% - 64px)}
.journey277-page.insights-page #guide :is(h1,h2,h3){font-family:'DM Sans',Arial,sans-serif!important;letter-spacing:-.04em!important}
.journey277-page.insights-page #guide .ins-hub-header{padding:36px 0 48px!important;gap:48px}
.journey277-page.insights-page #guide .ins-hub-header h1{font-size:clamp(36px,4.3vw,60px)!important;line-height:1.08!important}
.journey277-page.insights-page #guide .ins-card{border-radius:24px;box-shadow:none}
.journey277-page.insights-page #guide .ins-card h3{font-size:clamp(25px,2.6vw,34px)!important;line-height:1.18!important}
.journey277-page.insights-page #guide .ins-article-header h1{font-size:clamp(36px,4.6vw,62px)!important;line-height:1.1!important;max-width:22ch}
.journey277-page.insights-page #guide .ins-prose h2{font-size:clamp(28px,3vw,38px)!important;line-height:1.2!important}
.journey277-page.insights-page #guide .ins-prose{font-size:18px;line-height:1.8}
.journey277-page.insights-page #guide .ins-sources{background:#f0f6f8;border:1px solid #d3e3e9;border-radius:20px;padding:28px}
.journey277-page.insights-page #guide .thread-end-nav{border-radius:24px;box-shadow:none}
.journey277-page.insights-page #guide .thread-end-nav h2{font-size:clamp(28px,3vw,40px)!important;line-height:1.2!important}
/* Contextual next destinations, statically rendered for people and crawlers. */
.swm277-related{max-width:1160px;margin:48px auto 64px;padding:36px;border:1px solid #cbdfe7;border-radius:24px;background:#eef6f8;color:#092638}
.swm277-related>p{font:700 11px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#476574;margin:0 0 12px}
.swm277-related h2{font:700 clamp(28px,3.2vw,40px)/1.15 'DM Sans',Arial,sans-serif!important;letter-spacing:-.035em!important;margin:0 0 24px!important;color:#092638!important}
.swm277-related nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.swm277-related a{display:flex;flex-direction:column;justify-content:space-between;gap:16px;min-height:128px;border:1px solid #d1e1e8;border-radius:16px;background:#fff;padding:22px;color:#092638;text-decoration:none;font:600 17px/1.4 'DM Sans',Arial,sans-serif}
.swm277-related a:after{content:'→';color:#007ca9;font-size:25px;line-height:1}
.swm277-related a:hover{border-color:#007ca9;box-shadow:0 6px 18px #0926380a}
.swm277-related a:focus-visible{outline:3px solid #007ca9;outline-offset:4px}
@media(max-width:760px){
.journey277-page :is(.guide-hero,.topic-hero,.tool-intro,.calculator-intro,.aven-hero,.rw-hero,.brief-hero,.bo-hero){padding-top:34px!important;padding-bottom:34px!important}
.journey277-page :is(.guide-hero,.topic-hero){grid-template-columns:1fr!important;gap:28px!important}
.journey277-page .guide-scene img{aspect-ratio:1.45}
.journey277-page :is(.guide-hero,.topic-hero,.tool-intro,.calculator-intro,.brief-hero,.bo-hero) h1{font-size:clamp(34px,8.8vw,48px)!important}
.journey277-page :is(.guide-hero-copy,.topic-hero>div:first-child)>p{font-size:17px!important}
.journey277-page .answer-first{padding:25px!important;margin-bottom:30px!important}
.journey277-page :is(.guide-chapter,.topic-section){padding:28px 0!important}
.journey277-page :is(.guide-body,.topic-body){width:100%;min-width:0}
.journey277-page .calculator-tabs{gap:8px!important}
.journey277-page .calculator-tabs button{padding:10px 15px!important;font-size:13px!important;flex:1}
.journey277-page.insights-page #guide .ins-wrap{width:calc(100% - 36px)}
.journey277-page.insights-page #guide .ins-hub-header{grid-template-columns:1fr;gap:25px;padding:24px 0 34px!important}
.journey277-page.insights-page #guide .ins-prose{font-size:17px}
.swm277-related{margin:30px 0 42px;padding:25px;border-radius:20px}
.swm277-related nav{grid-template-columns:1fr}
.swm277-related a{min-height:76px;flex-direction:row;align-items:center;font-size:16px;padding:18px}
}
@media(prefers-reduced-motion:reduce){.swm277-related a{transition:none}}
