
/* FINANCING FOUNDATION
   Shared only by main.th-financing-page. Header/footer and Properties pages are unaffected.
   SPACING CONTROLS: edit these values and the device overrides below. */
.th-financing-page {
  --financing-section-gap:30px;       /* Exact space BETWEEN neighbouring sections */
  --financing-header-offset:120px;    /* First section clearance below the fixed navigation */
  --financing-nav-gap:30px;           /* Minimum visible gap after the measured navbar */
  --financing-footer-offset:36px;
  --financing-panel-y:35px;           /* Space INSIDE a section, top and bottom */
  --financing-panel-x:38px;           /* Space INSIDE a section, left and right */
  --financing-shell-fallback:calc(100% - 160px);
  --financing-ink:#171918;
  --financing-muted:#647184;
  --financing-brown:var(--base-color,#ac8d56);
  --financing-night:#192630;
  --financing-line:#ded8cc;
  color:var(--financing-ink);
  font-family:Inter,"Helvetica Neue",Arial,sans-serif;
  font-size:clamp(15px,1vw,17px);
  line-height:1.65;
}
.th-financing-page,.th-financing-page *,.th-financing-page *::before,.th-financing-page *::after { box-sizing:border-box; }
.th-financing-page .th-financing-shell { display:grid; width:var(--financing-shell-width,var(--financing-shell-fallback)); max-width:100%; gap:var(--financing-section-gap); margin:0 auto; padding:max(var(--financing-header-offset),calc(var(--financing-nav-height,0px) + var(--financing-nav-gap))) 0 var(--financing-footer-offset); }
.th-financing-page .th-financing-shell > section { min-width:0; margin:0; padding:var(--financing-panel-y) var(--financing-panel-x); }
.th-financing-page :is(h1,h2,h3,p,figure) { margin-top:0; }
.th-financing-page :is(h1,h2,h3) { color:var(--financing-ink); font-family:inherit; font-weight:600; letter-spacing:-.04em; text-wrap:balance; word-break:normal; }
.th-financing-page h1 { margin-bottom:25px; font-size:clamp(48px,4.8vw,80px); line-height:1.07; }
.th-financing-page h2 { margin-bottom:23px; font-size:clamp(31px,2.8vw,46px); line-height:1.15; }
.th-financing-page h3 { margin-bottom:15px; font-size:clamp(20px,1.5vw,25px); line-height:1.25; }
.th-financing-page :is(h1,h2) em { color:var(--financing-brown); font-family:Georgia,serif; font-weight:400; }
.th-financing-page p { margin-bottom:22px; color:var(--financing-muted); font-size:inherit; line-height:1.65; }
.th-financing-page .th-financing-eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 21px; color:#886935; font-size:11px; font-weight:700; line-height:1.5; letter-spacing:.13em; text-transform:uppercase; }
.th-financing-page .th-financing-eyebrow > span { flex:0 0 7px; width:7px; height:7px; border-radius:50%; background:var(--financing-brown); }
.th-financing-page .th-financing-button { display:inline-flex; min-height:49px; align-items:center; justify-content:center; gap:18px; padding:13px 24px; border:1px solid transparent; border-radius:999px; font-family:inherit; font-size:14px; font-weight:600; line-height:1.5; text-align:center; text-decoration:none; transition:background-color .2s,transform .2s; }
.th-financing-page .th-financing-button:hover { transform:translateY(-2px); }
.th-financing-page .th-financing-button--light { color:var(--financing-ink); background:#fff; }
.th-financing-page .th-financing-button--light:hover { color:var(--financing-ink); background:#f4efe6; }
.th-financing-page .th-financing-button > span { color:#886935; font-size:20px; }
.th-financing-page .th-financing-link { display:inline-flex; align-items:center; gap:13px; padding:0; border:0; background:transparent; color:var(--financing-ink); font-family:inherit; font-size:14px; font-weight:600; line-height:1.6; text-decoration:none; cursor:pointer; }
.th-financing-page .th-financing-link > span { color:#886935; font-size:21px; }
.th-financing-page .th-financing-link:hover { color:var(--financing-ink); text-decoration:underline; text-underline-offset:5px; }
.th-financing-page :is(a,button,select,input,summary):focus-visible { outline:3px solid #d6ae70; outline-offset:5px; }
.th-financing-page [hidden] { display:none!important; }
.th-financing-page [id] { scroll-margin-top:140px; }
@media (max-width:1399px) { .th-financing-page { --financing-shell-fallback:calc(100% - 120px); } }
@media (max-width:1199px) { .th-financing-page { --financing-shell-fallback:calc(100% - 60px); } }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-financing-page { --financing-shell-fallback:min(calc(100vw - 136px),1130px); --financing-panel-y:30px; --financing-panel-x:30px; }
}
@media (max-width:991px) { .th-financing-page { --financing-shell-fallback:calc(100% - 40px); --financing-header-offset:130px; --financing-panel-y:30px; --financing-panel-x:30px; } }
@media (max-width:767px) {
  .th-financing-page { --financing-shell-fallback:calc(100% - 28px); --financing-header-offset:140px; --financing-nav-gap:50px; --financing-panel-y:28px; --financing-panel-x:22px; }
  .th-financing-page h1 { font-size:clamp(40px,10.7vw,62px); }
  .th-financing-page h2 { font-size:clamp(30px,7.8vw,38px); }
}

/* MORTGAGE PRE-APPROVAL — a preparation folio, distinct from the property pages.
   Every selector below stays inside .th-preapproval-page. */
.th-preapproval-page { --pa-warm:#f2ede3; --pa-gold:#e6c68f; --pa-brown-surface:#806637; }
.th-preapproval-page .th-pa-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px 24px; }
.th-preapproval-page .th-pa-small-label { display:block; margin-bottom:17px; color:#886935; font-size:11px; font-weight:700; line-height:1.6; letter-spacing:.1em; }
.th-preapproval-page .th-pa-section-head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:33px; }
.th-preapproval-page .th-pa-section-head h2 { margin-bottom:0; }
.th-preapproval-page .th-pa-section-head > p { max-width:390px; margin-bottom:3px; }
.th-preapproval-page .th-pa-section-head > a { flex-shrink:0; }

/* Navy cover + a paper route diagram, with no stock approval badge or fabricated result. */
.th-preapproval-page .th-pa-cover { position:relative; overflow:hidden; border-radius:24px; color:#fff; background:var(--financing-night); }
.th-preapproval-page .th-pa-cover__masthead { display:flex; justify-content:space-between; gap:20px; margin-bottom:37px; padding-bottom:20px; border-bottom:1px solid #53606a; color:#d2dce1; font-size:11px; font-weight:600; line-height:1.6; letter-spacing:.11em; }
.th-preapproval-page .th-pa-cover__layout { display:grid; grid-template-columns:minmax(0,1.17fr) minmax(0,.83fr); align-items:center; gap:55px; }
.th-preapproval-page .th-pa-cover__copy { max-width:770px; padding:5px 0 10px; }
.th-preapproval-page .th-pa-cover h1 { color:#fff; }
.th-preapproval-page .th-pa-cover h1 em { color:var(--pa-gold); }
.th-preapproval-page .th-pa-cover__copy > p:not(.th-financing-eyebrow) { max-width:630px; margin-bottom:30px; color:#d3dee4; }
.th-preapproval-page .th-pa-cover .th-financing-eyebrow { color:var(--pa-gold); }
.th-preapproval-page .th-pa-cover .th-financing-eyebrow > span { background:var(--pa-gold); }
.th-preapproval-page .th-pa-cover .th-financing-link { color:#fff; }
.th-preapproval-page .th-pa-cover .th-financing-link > span { color:var(--pa-gold); }
.th-preapproval-page .th-pa-cover__visual { position:relative; min-width:0; padding:12px 12px 0; }
.th-preapproval-page .th-pa-cover__visual::before { position:absolute; top:0; right:0; bottom:60px; left:24px; border:1px solid #9c8c71; border-radius:19px; transform:rotate(3deg); content:""; }
.th-preapproval-page .th-pa-paper { position:relative; padding:29px 30px; border-radius:14px; color:var(--financing-ink); background:var(--pa-warm); box-shadow:0 15px 35px #0a11172e; }
.th-preapproval-page .th-pa-paper__top { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:22px; color:#886935; font-size:11px; font-weight:700; line-height:1.5; letter-spacing:.08em; text-transform:uppercase; }
.th-preapproval-page .th-pa-paper__top > span:last-child { font-family:Georgia,serif; font-size:27px; font-weight:400; }
.th-preapproval-page .th-pa-paper h2 { margin-bottom:27px; font-size:clamp(25px,2.1vw,34px); }
.th-preapproval-page .th-pa-paper__route { margin:0 0 22px; padding:0; list-style:none; }
.th-preapproval-page .th-pa-paper__route li { position:relative; display:grid; grid-template-columns:35px minmax(0,1fr); gap:15px; padding-bottom:23px; }
.th-preapproval-page .th-pa-paper__route li:last-child { padding-bottom:0; }
.th-preapproval-page .th-pa-paper__route li:not(:last-child)::before { position:absolute; top:36px; bottom:0; left:17px; width:1px; background:#cbbda6; content:""; }
.th-preapproval-page .th-pa-paper__route li > span { display:grid; width:35px; height:35px; place-items:center; border:1px solid #cbbda6; border-radius:50%; color:#886935; font-size:12px; }
.th-preapproval-page .th-pa-paper__route strong { display:block; margin-bottom:4px; font-size:16px; font-weight:600; line-height:1.5; }
.th-preapproval-page .th-pa-paper__route small { display:block; color:var(--financing-muted); font-size:13px; line-height:1.6; }
.th-preapproval-page .th-pa-paper > p { margin:0; padding-top:18px; border-top:1px solid #d4c9b7; font-size:13px; }
.th-preapproval-page .th-pa-cover__caption { position:relative; display:block; margin-top:23px; color:#d2dce1; font-size:10px; line-height:1.6; text-align:center; letter-spacing:.1em; }
.th-preapproval-page .th-pa-cover__foot { display:flex; align-items:center; flex-wrap:wrap; gap:15px 24px; margin-top:35px; padding-top:25px; border-top:1px solid #53606a; color:#d2dce1; font-size:13px; line-height:1.6; }
.th-preapproval-page .th-pa-cover__foot > span:nth-child(even) { color:var(--pa-gold); font-size:20px; }

/* Open editorial rows balance the boxed sections. */
.th-preapproval-page .th-financing-shell > section.th-pa-perspective { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; gap:60px; padding:22px 0; }
.th-preapproval-page .th-pa-perspective__intro > p:last-child { max-width:560px; margin-bottom:0; }
.th-preapproval-page .th-pa-perspective__benefits article { display:grid; grid-template-columns:35px minmax(0,1fr); gap:20px; padding:25px 0; border-top:1px solid var(--financing-line); }
.th-preapproval-page .th-pa-perspective__benefits article > span { color:#886935; font-family:Georgia,serif; font-size:25px; line-height:1.3; }
.th-preapproval-page .th-pa-perspective__benefits p { margin-bottom:0; }

/* Document desk. The profile and checklist stack completely on smaller screens. */
.th-preapproval-page .th-pa-documents { border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-preapproval-page .th-pa-document-layout { display:grid; grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr); gap:40px; align-items:start; }
.th-preapproval-page .th-pa-profile { min-width:0; padding:30px 27px; border-radius:15px; background:var(--pa-warm); }
.th-preapproval-page .th-pa-profile h3 { font-size:clamp(23px,1.9vw,30px); }
.th-preapproval-page .th-pa-profile > p { font-size:14px; }
.th-preapproval-page .th-pa-profile label { display:block; margin:22px 0 9px; color:var(--financing-ink); font-size:14px; font-weight:500; }
.th-preapproval-page .th-pa-profile select { display:block; width:100%; min-width:0; height:auto; min-height:50px; margin:0; padding:12px 34px 12px 13px; border:1px solid #c9bba5; border-radius:9px; background-color:#fff; color:var(--financing-ink); font-family:inherit; font-size:16px; line-height:1.5; }
.th-preapproval-page .th-pa-profile__note { display:grid; grid-template-columns:20px minmax(0,1fr); gap:12px; margin-top:25px; padding-top:23px; border-top:1px solid #d4c9b7; }
.th-preapproval-page .th-pa-profile__note > span { color:#886935; font-size:24px; }
.th-preapproval-page .th-pa-profile__note p { margin:0; font-size:13px; }
.th-preapproval-page .th-pa-checklist { min-width:0; }
.th-preapproval-page .th-pa-checklist__heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px; margin-bottom:14px; }
.th-preapproval-page .th-pa-checklist__heading h3 { margin:0; }
.th-preapproval-page .th-pa-checklist__heading > span { color:#886935; font-size:13px; font-weight:600; }
.th-preapproval-page .th-pa-checklist__instruction { margin-bottom:22px; font-size:14px; }
.th-preapproval-page .th-pa-checklist-items { margin:0; padding:0; border-top:1px solid var(--financing-line); list-style:none; }
.th-preapproval-page .th-pa-checklist-items li { margin:0; border-bottom:1px solid var(--financing-line); }
.th-preapproval-page .th-pa-checklist-items label { display:grid; grid-template-columns:22px minmax(0,1fr); gap:18px; margin:0; padding:22px 0; cursor:pointer; }
.th-preapproval-page .th-pa-checklist-items input { position:static; width:21px; height:21px; min-width:21px; margin:3px 0 0; padding:0; appearance:auto; accent-color:#886935; cursor:pointer; }
.th-preapproval-page .th-pa-checklist-items strong { display:block; margin-bottom:6px; color:var(--financing-ink); font-size:17px; font-weight:600; line-height:1.5; }
.th-preapproval-page .th-pa-checklist-items small { display:block; color:var(--financing-muted); font-size:14px; line-height:1.65; }
.th-preapproval-page .th-pa-checklist-items input:checked + span strong { color:#886935; }
.th-preapproval-page .th-pa-checklist__bottom { display:flex; flex-wrap:wrap; align-items:start; justify-content:space-between; gap:20px; margin-top:25px; }
.th-preapproval-page .th-pa-checklist__bottom p { flex:1 1 250px; max-width:500px; margin:0; font-size:13px; }
.th-preapproval-page .th-pa-checklist__bottom button { flex-shrink:0; }
.th-preapproval-page .th-pa-status { margin:17px 0 0; font-size:13px; }
.th-preapproval-page .th-pa-status:empty { display:none; }
.th-preapproval-page .th-pa-noscript { margin:24px 0 0; font-size:14px; }

/* A continuous route, rather than four repeated cards. */
.th-preapproval-page .th-financing-shell > section.th-pa-journey { padding:22px 0; }
.th-preapproval-page .th-pa-journey__steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin:0; padding:0; list-style:none; }
.th-preapproval-page .th-pa-journey__steps li { min-width:0; padding:25px 25px 0 0; border-top:1px solid #c9bba5; }
.th-preapproval-page .th-pa-journey__steps li:not(:first-child) { padding-left:25px; border-left:1px solid var(--financing-line); }
.th-preapproval-page .th-pa-journey__steps li:last-child { padding-right:0; }
.th-preapproval-page .th-pa-journey__steps li > span { display:block; margin-bottom:23px; color:#886935; font-family:Georgia,serif; font-size:31px; line-height:1.2; }
.th-preapproval-page .th-pa-journey__steps h3 { font-size:21px; }
.th-preapproval-page .th-pa-journey__steps p { margin:0; font-size:15px; }

/* Brown comparison spread with a single shared panel. */
.th-preapproval-page .th-pa-distinction { display:grid; grid-template-columns:minmax(0,.66fr) minmax(0,1.34fr); gap:45px; border-radius:24px; background:var(--pa-brown-surface); color:#fff; }
.th-preapproval-page .th-pa-distinction :is(h2,h3,h2 em,p,.th-financing-eyebrow,.th-pa-small-label) { color:#fff; }
.th-preapproval-page .th-pa-distinction .th-financing-eyebrow > span { background:#fff; }
.th-preapproval-page .th-pa-distinction__intro > p:last-child { margin:0; }
.th-preapproval-page .th-pa-distinction__stages { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
.th-preapproval-page .th-pa-distinction__stages article { min-width:0; padding:8px 27px; border-left:1px solid #ffffff60; }
.th-preapproval-page .th-pa-distinction__stages article:last-child { padding-right:0; }
.th-preapproval-page .th-pa-distinction__stages p { font-size:15px; }
.th-preapproval-page .th-pa-distinction__stages ul { margin:0; padding-left:18px; font-size:14px; line-height:1.65; }
.th-preapproval-page .th-pa-distinction__stages li + li { margin-top:12px; }

/* An unboxed image/copy spread brings a human property context back into the page. */
.th-preapproval-page .th-financing-shell > section.th-pa-property { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:50px; align-items:center; padding:22px 0; }
.th-preapproval-page .th-pa-property figure { position:relative; min-width:0; overflow:hidden; margin:0; border-radius:18px; background:var(--financing-night); }
.th-preapproval-page .th-pa-property img { display:block; width:100%; height:370px; object-fit:cover; }
.th-preapproval-page .th-pa-property figcaption { position:absolute; right:0; bottom:0; left:0; padding:55px 25px 23px; color:#fff; background:linear-gradient(0deg,#101f2deb,transparent); font-size:14px; }
.th-preapproval-page .th-pa-property > div > p:not(.th-financing-eyebrow) { max-width:670px; }
.th-preapproval-page .th-pa-property__links { border-top:1px solid var(--financing-line); }
.th-preapproval-page .th-pa-property__links a { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:17px 0; border-bottom:1px solid var(--financing-line); color:var(--financing-ink); font-size:15px; font-weight:500; line-height:1.5; text-decoration:none; }
.th-preapproval-page .th-pa-property__links a:hover { text-decoration:underline; text-underline-offset:5px; }
.th-preapproval-page .th-pa-property__links a > span { color:#886935; font-size:21px; }

/* Open FAQ, followed by one generous conversation panel. */
.th-preapproval-page .th-financing-shell > section.th-pa-faq { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:55px; padding:22px 0; }
.th-preapproval-page .th-pa-faq__intro > p:not(.th-financing-eyebrow) { max-width:390px; }
.th-preapproval-page .th-pa-faq__list { min-width:0; border-top:1px solid var(--financing-line); }
.th-preapproval-page .th-pa-faq details { border-bottom:1px solid var(--financing-line); }
.th-preapproval-page .th-pa-faq summary { display:flex; align-items:center; justify-content:space-between; gap:23px; min-height:72px; padding:23px 0; color:var(--financing-ink); font-size:16px; font-weight:600; line-height:1.5; list-style:none; cursor:pointer; }
.th-preapproval-page .th-pa-faq summary::-webkit-details-marker { display:none; }
.th-preapproval-page .th-pa-faq summary > span { flex:0 0 20px; color:#886935; font-size:24px; font-weight:400; transition:transform .2s; }
.th-preapproval-page .th-pa-faq details[open] summary > span { transform:rotate(45deg); }
.th-preapproval-page .th-pa-faq details p { margin:0 32px 24px 0; }
.th-preapproval-page .th-pa-conversation { display:flex; align-items:center; justify-content:space-between; gap:35px; border-radius:24px; background:var(--financing-night); }
.th-preapproval-page .th-pa-conversation h2 { color:#fff; }
.th-preapproval-page .th-pa-conversation p { max-width:670px; margin-bottom:0; color:#d3dee4; }
.th-preapproval-page .th-pa-conversation .th-financing-eyebrow { margin-bottom:20px; color:var(--pa-gold); }
.th-preapproval-page .th-pa-conversation .th-financing-eyebrow > span { background:var(--pa-gold); }
.th-preapproval-page .th-pa-conversation > a { flex-shrink:0; }

@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-preapproval-page .th-pa-cover__layout { gap:30px; }
  .th-preapproval-page .th-pa-cover h1 { font-size:clamp(46px,4.3vw,58px); }
  .th-preapproval-page .th-pa-paper { padding:25px 24px; }
  .th-preapproval-page .th-pa-cover__masthead { margin-bottom:30px; }
  .th-preapproval-page .th-pa-document-layout { gap:30px; }
  .th-preapproval-page .th-pa-profile { padding:25px 22px; }
  .th-preapproval-page .th-pa-distinction { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-preapproval-page .th-pa-distinction__intro { max-width:780px; }
  .th-preapproval-page .th-pa-distinction__stages article:first-child { padding-left:0; border-left:0; }
  .th-preapproval-page .th-pa-journey__steps li { padding-right:20px; }
  .th-preapproval-page .th-pa-journey__steps li:not(:first-child) { padding-left:20px; }
}
@media (max-width:1199px) {
  .th-preapproval-page .th-pa-cover__layout { gap:30px; }
  .th-preapproval-page .th-pa-distinction { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-preapproval-page .th-pa-distinction__stages article:first-child { padding-left:0; border-left:0; }
  .th-preapproval-page .th-pa-journey__steps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 0; }
  .th-preapproval-page .th-pa-journey__steps li:nth-child(3) { padding-left:0; border-left:0; }
}
@media (max-width:991px) {
  .th-preapproval-page .th-pa-cover__layout,.th-preapproval-page .th-pa-document-layout { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-preapproval-page .th-pa-cover__copy { max-width:none; }
  .th-preapproval-page .th-pa-cover__visual { width:100%; max-width:560px; justify-self:center; }
  .th-preapproval-page .th-financing-shell > section:is(.th-pa-perspective,.th-pa-property,.th-pa-faq) { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-preapproval-page .th-pa-section-head { align-items:start; flex-direction:column; gap:20px; }
  .th-preapproval-page .th-pa-section-head > p { max-width:650px; }
  .th-preapproval-page .th-pa-property img { height:330px; }
  .th-preapproval-page .th-pa-conversation { align-items:start; flex-direction:column; gap:28px; }
}
@media (max-width:767px) {
  .th-preapproval-page .th-pa-cover__masthead { flex-wrap:wrap; gap:10px; margin-bottom:30px; font-size:10px; }
  .th-preapproval-page .th-pa-cover__copy { padding:0; }
  .th-preapproval-page .th-pa-cover__visual { padding:10px 5px 0; }
  .th-preapproval-page .th-pa-paper { padding:25px 21px; }
  .th-preapproval-page .th-pa-paper h2 { font-size:29px; }
  .th-preapproval-page .th-pa-cover__visual::before { left:18px; }
  .th-preapproval-page .th-pa-cover__caption { font-size:9px; letter-spacing:.06em; }
  .th-preapproval-page .th-pa-cover__foot { gap:11px 13px; margin-top:28px; padding-top:22px; font-size:12px; }
  .th-preapproval-page .th-financing-shell > section:is(.th-pa-perspective,.th-pa-journey,.th-pa-property,.th-pa-faq) { padding:14px 5px; }
  .th-preapproval-page .th-pa-documents { border-radius:21px; }
  .th-preapproval-page .th-pa-profile { padding:25px 20px; }
  .th-preapproval-page .th-pa-checklist-items label { gap:14px; padding:21px 0; }
  .th-preapproval-page .th-pa-checklist-items strong { font-size:16px; }
  .th-preapproval-page .th-pa-journey__steps { grid-template-columns:minmax(0,1fr); gap:0; }
  .th-preapproval-page .th-pa-journey__steps li,.th-preapproval-page .th-pa-journey__steps li:not(:first-child) { padding:25px 0; border-left:0; }
  .th-preapproval-page .th-pa-journey__steps li:last-child { padding-bottom:0; }
  .th-preapproval-page .th-pa-journey__steps li > span { margin-bottom:16px; }
  .th-preapproval-page .th-pa-distinction__stages { grid-template-columns:minmax(0,1fr); gap:25px; }
  .th-preapproval-page .th-pa-distinction__stages article,.th-preapproval-page .th-pa-distinction__stages article:first-child { padding:24px 0 0; border-top:1px solid #ffffff60; border-left:0; }
  .th-preapproval-page .th-pa-property img { height:270px; }
  .th-preapproval-page .th-pa-faq summary { font-size:15px; }
}
@media (prefers-reduced-motion:reduce) { .th-preapproval-page *,.th-preapproval-page *::before,.th-preapproval-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }


/* HOME FINANCING — an editorial home-buying guide.
   Page-specific rules only. The Financing foundation and pre-approval styles above
   are preserved. Shared spacing controls remain at the beginning of this file. */
.th-home-financing-page { --hf-warm:#eee5d4; --hf-gold:#e6c68f; }
.th-home-financing-page .th-hf-button { display:inline-flex; min-height:49px; align-items:center; justify-content:center; gap:18px; padding:13px 24px; border:1px solid transparent; border-radius:999px; background:var(--financing-ink); color:#fff; font-family:inherit; font-size:14px; font-weight:600; line-height:1.5; text-align:center; text-decoration:none; transition:background-color .2s,transform .2s; }
.th-home-financing-page .th-hf-button:hover { transform:translateY(-2px); background:#343a36; color:#fff; }
.th-home-financing-page .th-hf-button > span { color:var(--hf-gold); font-size:20px; }
.th-home-financing-page .th-hf-section-head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:33px; }
.th-home-financing-page .th-hf-section-head h2 { margin-bottom:0; }
.th-home-financing-page .th-hf-section-head > p { max-width:380px; margin-bottom:0; }
.th-home-financing-page .th-hf-section-head > a { flex-shrink:0; }
.th-home-financing-page .th-hf-kicker { display:block; margin-bottom:22px; color:#886935; font-size:11px; font-weight:700; line-height:1.6; letter-spacing:.12em; }

/* A wide open headline above a panoramic property image; no split hero cards. */
.th-home-financing-page .th-financing-shell > section.th-hf-opening { padding:18px 0 0; }
.th-home-financing-page .th-hf-opening__head { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); align-items:end; gap:60px; margin-bottom:35px; }
.th-home-financing-page .th-hf-opening h1 { margin-bottom:0; font-size:clamp(47px,4.8vw,82px); }
.th-home-financing-page .th-hf-opening__copy { padding-bottom:5px; }
.th-home-financing-page .th-hf-opening__copy > p { max-width:530px; margin-bottom:25px; }
.th-home-financing-page .th-hf-opening__copy > a:last-child { display:flex; width:fit-content; margin-top:19px; }
.th-home-financing-page .th-hf-panorama { position:relative; min-width:0; overflow:hidden; margin:0; border-radius:24px; background:var(--financing-night); }
.th-home-financing-page .th-hf-panorama > img { display:block; width:100%; height:390px; object-fit:cover; object-position:center 52%; }
.th-home-financing-page .th-hf-panorama::after { position:absolute; inset:0; background:linear-gradient(90deg,#10233414 35%,#10233485 100%); content:""; pointer-events:none; }
.th-home-financing-page .th-hf-panorama figcaption { position:absolute; z-index:1; top:0; right:0; bottom:0; display:flex; width:36%; min-width:290px; flex-direction:column; justify-content:center; padding:36px; color:#fff; background:#192630e8; }
.th-home-financing-page .th-hf-panorama figcaption > span { margin-bottom:25px; color:var(--hf-gold); font-size:11px; font-weight:700; line-height:1.5; letter-spacing:.12em; }
.th-home-financing-page .th-hf-panorama figcaption strong { font-size:clamp(31px,2.8vw,46px); font-weight:500; line-height:1.15; letter-spacing:-.03em; }
.th-home-financing-page .th-hf-panorama figcaption em { color:var(--hf-gold); font-family:Georgia,serif; font-weight:400; }
.th-home-financing-page .th-hf-panorama__label { position:absolute; z-index:1; bottom:28px; left:30px; color:#fff; font-size:10px; font-weight:700; line-height:1.6; letter-spacing:.14em; text-shadow:0 1px 3px #000; }
.th-home-financing-page .th-hf-opening__index { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:25px; border-bottom:1px solid var(--financing-line); }
.th-home-financing-page .th-hf-opening__index a { display:flex; align-items:center; gap:15px; padding:0 24px 25px; color:var(--financing-ink); font-size:14px; font-weight:500; line-height:1.6; text-decoration:none; }
.th-home-financing-page .th-hf-opening__index a:first-child { padding-left:0; }
.th-home-financing-page .th-hf-opening__index a:last-child { padding-right:0; }
.th-home-financing-page .th-hf-opening__index a > span { color:#886935; font-size:11px; }
.th-home-financing-page .th-hf-opening__index a > b { margin-left:auto; color:#886935; font-size:19px; font-weight:400; }
.th-home-financing-page .th-hf-opening__index a:hover { text-decoration:underline; text-underline-offset:5px; }

/* An open heading with three small editorial notes, without individual cards. */
.th-home-financing-page .th-financing-shell > section.th-hf-principles { padding:22px 0; }
.th-home-financing-page .th-hf-principles > div:first-child { max-width:780px; margin-bottom:30px; }
.th-home-financing-page .th-hf-principles h2 { margin-bottom:0; }
.th-home-financing-page .th-hf-principles__notes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; }
.th-home-financing-page .th-hf-principles__notes article { min-width:0; padding-top:23px; border-top:1px solid var(--financing-line); }
.th-home-financing-page .th-hf-principles__notes p { margin-bottom:0; }

/* A single white brochure panel with an accessible selectable guide. */
.th-home-financing-page .th-hf-options { border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-home-financing-page .th-hf-tabs { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:32px; padding-bottom:23px; border-bottom:1px solid var(--financing-line); }
.th-home-financing-page .th-hf-tabs button { min-width:0; min-height:47px; padding:12px 20px; border:1px solid var(--financing-line); border-radius:999px; background:#fff; color:var(--financing-ink); font-family:inherit; font-size:14px; font-weight:500; line-height:1.5; cursor:pointer; transition:background-color .2s; }
.th-home-financing-page .th-hf-tabs button:hover { background:#f6f2e9; }
.th-home-financing-page .th-hf-tabs button[aria-selected="true"] { border-color:var(--financing-night); background:var(--financing-night); color:#fff; }
.th-home-financing-page .th-hf-option { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:45px; min-width:0; }
.th-home-financing-page .th-hf-option + .th-hf-option { margin-top:30px; padding-top:30px; border-top:1px solid var(--financing-line); }
.th-home-financing-page.th-hf-enhanced .th-hf-option + .th-hf-option { margin-top:0; padding-top:0; border-top:0; }
.th-home-financing-page .th-hf-option__story h3 { font-size:clamp(28px,2.6vw,39px); line-height:1.15; }
.th-home-financing-page .th-hf-option__story h3 em { color:#886935; font-family:Georgia,serif; font-weight:400; }
.th-home-financing-page .th-hf-option__story > p { margin-bottom:27px; }
.th-home-financing-page .th-hf-rate-route { display:flex; align-items:center; flex-wrap:wrap; gap:15px; padding:21px 23px; border-radius:12px; background:var(--hf-warm); color:#72572e; font-size:13px; font-weight:500; line-height:1.6; }
.th-home-financing-page .th-hf-rate-route b { font-size:22px; font-weight:400; }
.th-home-financing-page .th-hf-option__questions { margin:0; padding:0; border-top:1px solid var(--financing-line); }
.th-home-financing-page .th-hf-option__questions > div { padding:21px 0; border-bottom:1px solid var(--financing-line); }
.th-home-financing-page .th-hf-option__questions dt { margin-bottom:8px; color:var(--financing-ink); font-size:16px; font-weight:600; line-height:1.5; }
.th-home-financing-page .th-hf-option__questions dd { margin:0; color:var(--financing-muted); font-size:15px; line-height:1.65; }
.th-home-financing-page .th-hf-options__foot { display:flex; align-items:start; flex-wrap:wrap; justify-content:space-between; gap:25px; margin-top:32px; padding-top:24px; border-top:1px solid var(--financing-line); }
.th-home-financing-page .th-hf-options__foot p { flex:1 1 350px; max-width:800px; margin:0; font-size:13px; }
.th-home-financing-page .th-hf-options__foot > a { flex-shrink:0; }

/* Navy cost ledger, with vertical dividers rather than repeated boxes. */
.th-home-financing-page .th-hf-costs { border-radius:24px; background:var(--financing-night); color:#fff; }
.th-home-financing-page .th-hf-costs :is(h2,h3) { color:#fff; }
.th-home-financing-page .th-hf-costs h2 em,.th-home-financing-page .th-hf-costs .th-financing-eyebrow { color:var(--hf-gold); }
.th-home-financing-page .th-hf-costs .th-financing-eyebrow > span { background:var(--hf-gold); }
.th-home-financing-page .th-hf-costs .th-hf-section-head > p { color:#d0dce4; }
.th-home-financing-page .th-hf-cost-ledger { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #ffffff45; }
.th-home-financing-page .th-hf-cost-ledger article { min-width:0; padding:30px 30px 5px; border-right:1px solid #ffffff45; }
.th-home-financing-page .th-hf-cost-ledger article:first-child { padding-left:0; }
.th-home-financing-page .th-hf-cost-ledger article:last-child { padding-right:0; border-right:0; }
.th-home-financing-page .th-hf-cost-ledger__number { display:block; margin-bottom:22px; color:var(--hf-gold); font-family:Georgia,serif; font-size:34px; line-height:1.2; }
.th-home-financing-page .th-hf-cost-ledger ul { margin:0; padding:0; list-style:none; }
.th-home-financing-page .th-hf-cost-ledger li { padding-top:21px; }
.th-home-financing-page .th-hf-cost-ledger strong { display:block; margin-bottom:8px; color:#fff; font-size:16px; font-weight:600; line-height:1.5; }
.th-home-financing-page .th-hf-cost-ledger p { margin:0; color:#d0dce4; font-size:14px; }
.th-home-financing-page .th-hf-costs__note { margin:28px 0 0; padding-top:23px; border-top:1px solid #ffffff45; color:#d0dce4; font-size:13px; }

/* Vertical process notebook: the order stays readable on mobile. */
.th-home-financing-page .th-financing-shell > section.th-hf-process { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:60px; padding:22px 0; }
.th-home-financing-page .th-hf-process__intro { max-width:550px; }
.th-home-financing-page .th-hf-process__list { margin:0; padding:0; list-style:none; }
.th-home-financing-page .th-hf-process__list li { display:grid; grid-template-columns:45px minmax(0,1fr); gap:24px; padding:26px 0; border-top:1px solid var(--financing-line); }
.th-home-financing-page .th-hf-process__list li > span { color:#886935; font-family:Georgia,serif; font-size:27px; line-height:1.3; }
.th-home-financing-page .th-hf-process__list h3 { margin-bottom:10px; }
.th-home-financing-page .th-hf-process__list p { margin:0; }
.th-home-financing-page .th-hf-process__list li:last-child { padding-bottom:0; }

/* A large ampersand links the property and finance stories. */
.th-home-financing-page .th-hf-together { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:50px; overflow:hidden; border-radius:24px; background:var(--hf-warm); }
.th-home-financing-page .th-hf-together > div { position:relative; min-width:0; }
.th-home-financing-page .th-hf-together h2 { margin-bottom:0; }
.th-home-financing-page .th-hf-together__symbol { position:absolute; top:50%; left:47%; color:#ac8d5618; font-family:Georgia,serif; font-size:330px; line-height:1; transform:translate(-50%,-50%); pointer-events:none; }
.th-home-financing-page .th-hf-together__copy > a:last-child { display:flex; width:fit-content; margin-top:22px; }

.th-home-financing-page .th-hf-faq { border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-home-financing-page .th-hf-faq__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:45px; }
.th-home-financing-page .th-hf-faq__grid > div { min-width:0; border-top:1px solid var(--financing-line); }
.th-home-financing-page .th-hf-faq details { border-bottom:1px solid var(--financing-line); }
.th-home-financing-page .th-hf-faq summary { display:flex; min-height:75px; align-items:center; justify-content:space-between; gap:20px; padding:23px 0; color:var(--financing-ink); font-size:16px; font-weight:600; line-height:1.5; list-style:none; cursor:pointer; }
.th-home-financing-page .th-hf-faq summary::-webkit-details-marker { display:none; }
.th-home-financing-page .th-hf-faq summary > span { flex:0 0 20px; color:#886935; font-size:24px; font-weight:400; transition:transform .2s; }
.th-home-financing-page .th-hf-faq details[open] summary > span { transform:rotate(45deg); }
.th-home-financing-page .th-hf-faq details p { margin:0 30px 24px 0; font-size:15px; }
.th-home-financing-page .th-hf-conversation { display:flex; align-items:center; justify-content:space-between; gap:35px; border:1px solid var(--financing-night); border-radius:24px; background:var(--financing-night); }
.th-home-financing-page .th-hf-conversation h2 { margin-bottom:20px; color:#fff; }
.th-home-financing-page .th-hf-conversation h2 em { color:var(--hf-gold); }
.th-home-financing-page .th-hf-conversation p:last-child { max-width:680px; margin-bottom:0; color:#d3dee4; }
.th-home-financing-page .th-hf-conversation > a { flex-shrink:0; }
.th-home-financing-page .th-hf-conversation .th-financing-eyebrow { color:var(--hf-gold); }
.th-home-financing-page .th-hf-conversation .th-financing-eyebrow > span { background:var(--hf-gold); }
.th-home-financing-page .th-hf-conversation .th-hf-button { background:#fff; color:var(--financing-ink); }
.th-home-financing-page .th-hf-conversation .th-hf-button > span { color:#886935; }
.th-home-financing-page .th-hf-conversation .th-hf-button:hover { background:#f4efe6; color:var(--financing-ink); }

@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-home-financing-page .th-hf-opening__head { gap:30px; }
  .th-home-financing-page .th-hf-opening h1 { font-size:clamp(46px,4.4vw,59px); }
  .th-home-financing-page .th-hf-panorama > img { height:310px; }
  .th-home-financing-page .th-hf-panorama figcaption { padding:30px; }
  .th-home-financing-page .th-hf-option { gap:30px; }
  .th-home-financing-page .th-hf-cost-ledger article { padding-right:23px; padding-left:23px; }
}
@media (max-width:1199px) {
  .th-home-financing-page .th-hf-opening__head { gap:30px; }
  .th-home-financing-page .th-hf-opening h1 { font-size:clamp(44px,4.8vw,58px); }
  .th-home-financing-page .th-hf-section-head { align-items:start; flex-direction:column; gap:20px; }
  .th-home-financing-page .th-hf-section-head > p { max-width:650px; }
  .th-home-financing-page .th-hf-cost-ledger article { padding-right:20px; padding-left:20px; }
}
@media (max-width:991px) {
  .th-home-financing-page .th-hf-opening__head,.th-home-financing-page .th-hf-option,.th-home-financing-page .th-hf-together,.th-home-financing-page .th-hf-faq__grid { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-home-financing-page .th-hf-opening__copy { padding-bottom:0; }
  .th-home-financing-page .th-hf-principles__notes { grid-template-columns:minmax(0,1fr); gap:25px; }
  .th-home-financing-page .th-financing-shell > section.th-hf-process { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-home-financing-page .th-hf-cost-ledger { grid-template-columns:minmax(0,1fr); }
  .th-home-financing-page .th-hf-cost-ledger article,.th-home-financing-page .th-hf-cost-ledger article:first-child,.th-home-financing-page .th-hf-cost-ledger article:last-child { padding:28px 0; border-right:0; border-bottom:1px solid #ffffff45; }
  .th-home-financing-page .th-hf-cost-ledger article:last-child { padding-bottom:0; border-bottom:0; }
  .th-home-financing-page .th-hf-cost-ledger__number { margin-bottom:15px; }
  .th-home-financing-page .th-hf-conversation { align-items:start; flex-direction:column; gap:28px; }
  .th-home-financing-page .th-hf-together__symbol { left:auto; right:10px; font-size:280px; transform:translateY(-50%); }
}
@media (max-width:767px) {
  .th-home-financing-page .th-hf-opening h1 { font-size:clamp(40px,10.8vw,61px); }
  .th-home-financing-page .th-financing-shell > section.th-hf-opening { padding:14px 0 0; }
  .th-home-financing-page .th-hf-opening__head { gap:25px; margin-bottom:28px; padding:0 5px; }
  .th-home-financing-page .th-hf-panorama > img { height:250px; }
  .th-home-financing-page .th-hf-panorama figcaption { position:relative; width:100%; min-width:0; padding:28px 23px; background:var(--financing-night); }
  .th-home-financing-page .th-hf-panorama figcaption strong { font-size:34px; }
  .th-home-financing-page .th-hf-panorama figcaption > span { margin-bottom:17px; }
  .th-home-financing-page .th-hf-panorama__label { display:none; }
  .th-home-financing-page .th-hf-opening__index { grid-template-columns:minmax(0,1fr); margin-top:23px; }
  .th-home-financing-page .th-hf-opening__index a,.th-home-financing-page .th-hf-opening__index a:first-child,.th-home-financing-page .th-hf-opening__index a:last-child { padding:17px 5px; border-top:1px solid var(--financing-line); }
  .th-home-financing-page .th-financing-shell > section:is(.th-hf-principles,.th-hf-process) { padding:14px 5px; }
  .th-home-financing-page .th-hf-tabs { gap:9px; }
  .th-home-financing-page .th-hf-tabs button { flex:1 1 100%; text-align:left; }
  .th-home-financing-page .th-hf-option__story h3 { font-size:30px; }
  .th-home-financing-page .th-hf-rate-route { gap:12px; padding:20px; }
  .th-home-financing-page .th-hf-process__list li { grid-template-columns:32px minmax(0,1fr); gap:18px; }
  .th-home-financing-page .th-hf-faq__grid { gap:0; }
  .th-home-financing-page .th-hf-faq__grid > div:last-child { border-top:0; }
  .th-home-financing-page .th-hf-faq summary { font-size:15px; }
}
@media (prefers-reduced-motion:reduce) { .th-home-financing-page *,.th-home-financing-page *::before,.th-home-financing-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }


/* LAND FINANCING — a site-plan and field-notebook concept.
   All rules are scoped to this page; earlier Financing styles stay unchanged. */
.th-land-financing-page { --lf-paper:#f3efe5; --lf-warm:#eee5d4; --lf-gold:#e6c68f; }
.th-land-financing-page .th-lf-button { display:inline-flex; min-height:49px; align-items:center; justify-content:center; gap:18px; padding:13px 24px; border:1px solid transparent; border-radius:999px; background:var(--financing-night); color:#fff; font-family:inherit; font-size:14px; font-weight:600; line-height:1.5; text-align:center; text-decoration:none; transition:background-color .2s,transform .2s; }
.th-land-financing-page .th-lf-button:hover { transform:translateY(-2px); background:#30434f; color:#fff; }
.th-land-financing-page .th-lf-button > span { color:var(--lf-gold); font-size:20px; }
.th-land-financing-page .th-lf-button--light { background:#fff; color:var(--financing-ink); }
.th-land-financing-page .th-lf-button--light:hover { background:#f4efe6; color:var(--financing-ink); }
.th-land-financing-page .th-lf-button--light > span { color:#886935; }
.th-land-financing-page .th-lf-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px 24px; }
.th-land-financing-page .th-lf-section-head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:33px; }
.th-land-financing-page .th-lf-section-head h2 { margin-bottom:0; }
.th-land-financing-page .th-lf-section-head > p { max-width:400px; margin:0; }
.th-land-financing-page .th-lf-section-head > a { flex-shrink:0; }
.th-land-financing-page .th-lf-kicker { display:block; margin-bottom:22px; color:#886935; font-size:11px; font-weight:700; line-height:1.6; letter-spacing:.12em; }

/* Survey-sheet cover with a code-native, purely conceptual plot illustration. */
.th-land-financing-page .th-lf-survey { overflow:hidden; border:1px solid #d7cbb4; border-radius:24px; background:var(--lf-paper); }
.th-land-financing-page .th-lf-survey__top { display:flex; flex-wrap:wrap; justify-content:space-between; gap:15px; margin-bottom:35px; padding-bottom:21px; border-bottom:1px solid #d7cbb4; color:#886935; font-size:11px; font-weight:600; line-height:1.6; letter-spacing:.1em; }
.th-land-financing-page .th-lf-survey__layout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); align-items:center; gap:45px; }
.th-land-financing-page .th-lf-survey__layout > div > p:not(.th-financing-eyebrow) { max-width:630px; margin-bottom:28px; }
.th-land-financing-page .th-lf-survey h1 { font-size:clamp(46px,4.6vw,76px); }
.th-land-financing-page .th-lf-plan { min-width:0; overflow:hidden; margin:0; padding:25px; border:1px solid #d7cbb4; border-radius:14px; background-color:#faf8f2; background-image:linear-gradient(#ac8d560d 1px,transparent 1px),linear-gradient(90deg,#ac8d560d 1px,transparent 1px); background-size:25px 25px; }
.th-land-financing-page .th-lf-plan__heading { display:flex; align-items:center; justify-content:space-between; gap:15px; color:#886935; font-size:10px; font-weight:700; line-height:1.6; letter-spacing:.1em; }
.th-land-financing-page .th-lf-plan__heading > span:last-child { font-size:28px; font-weight:400; }
.th-land-financing-page .th-lf-plan svg { display:block; width:100%; height:auto; margin:10px 0 15px; }
.th-land-financing-page .th-lf-plan figcaption { padding-top:19px; border-top:1px solid #d7cbb4; }
.th-land-financing-page .th-lf-plan figcaption strong { display:block; margin-bottom:8px; color:var(--financing-ink); font-size:18px; font-weight:500; line-height:1.5; }
.th-land-financing-page .th-lf-plan figcaption > span { display:block; color:var(--financing-muted); font-size:12px; line-height:1.6; }
.th-land-financing-page .th-lf-survey__index { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:35px; border-top:1px solid #d7cbb4; }
.th-land-financing-page .th-lf-survey__index a { display:flex; align-items:center; gap:16px; padding:25px 22px 0; color:var(--financing-ink); font-size:14px; font-weight:500; line-height:1.6; text-decoration:none; }
.th-land-financing-page .th-lf-survey__index a:first-child { padding-left:0; }
.th-land-financing-page .th-lf-survey__index a:last-child { padding-right:0; }
.th-land-financing-page .th-lf-survey__index a > span { color:#886935; font-size:11px; }
.th-land-financing-page .th-lf-survey__index a > b { margin-left:auto; color:#886935; font-size:20px; font-weight:400; }
.th-land-financing-page .th-lf-survey__index a:hover { text-decoration:underline; text-underline-offset:5px; }

.th-land-financing-page .th-financing-shell > section.th-lf-context { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:55px; padding:22px 0; }
.th-land-financing-page .th-lf-context h2 { margin-bottom:0; }
.th-land-financing-page .th-lf-context > div:last-child { padding-top:4px; }

/* Two simple inputs form a conversation guide, not an eligibility calculator. */
.th-land-financing-page .th-lf-brief { border:1px solid var(--financing-night); border-radius:24px; background:var(--financing-night); }
.th-land-financing-page .th-lf-brief__layout { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:40px; }
.th-land-financing-page .th-lf-brief__controls { min-width:0; padding-right:35px; border-right:1px solid #cbbca2; }
.th-land-financing-page .th-lf-brief__controls label { display:block; margin:25px 0 10px; color:var(--financing-ink); font-size:15px; font-weight:500; }
.th-land-financing-page .th-lf-brief__controls select { display:block; width:100%; min-width:0; height:auto; min-height:53px; margin:0; padding:12px 35px 12px 14px; border:1px solid #cbbca2; border-radius:9px; background-color:#fff; color:var(--financing-ink); font-family:inherit; font-size:16px; line-height:1.5; }
.th-land-financing-page .th-lf-brief__note { margin:25px 0 0; font-size:13px; }
.th-land-financing-page .th-lf-brief__response { min-width:0; }
.th-land-financing-page .th-lf-brief__response h3 { max-width:700px; font-size:clamp(26px,2.25vw,35px); line-height:1.2; }
.th-land-financing-page .th-lf-brief__response > p { margin-bottom:24px; }
.th-land-financing-page .th-lf-brief__response ol { margin:0; padding:0; list-style:none; counter-reset:land-question; }
.th-land-financing-page .th-lf-brief__response li { display:grid; grid-template-columns:26px minmax(0,1fr); gap:18px; padding:19px 0; border-top:1px solid #cbbca2; color:var(--financing-ink); font-size:16px; line-height:1.6; counter-increment:land-question; }
.th-land-financing-page .th-lf-brief__response li::before { color:#886935; font-family:Georgia,serif; font-size:21px; content:counter(land-question,decimal-leading-zero); }
.th-land-financing-page .th-lf-brief__bottom { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px; margin-top:24px; padding-top:23px; border-top:1px solid #cbbca2; }
.th-land-financing-page .th-lf-status { margin:18px 0 0; font-size:13px; }
.th-land-financing-page .th-lf-status:empty { display:none; }

/* The land file is an open numbered ledger, with no repeated cards. */
.th-land-financing-page .th-financing-shell > section.th-lf-plot { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:60px; padding:22px 0; }
.th-land-financing-page .th-lf-plot__intro { max-width:550px; }
.th-land-financing-page .th-lf-land-file { margin:0; padding:0; list-style:none; }
.th-land-financing-page .th-lf-land-file li { display:grid; grid-template-columns:35px minmax(0,1fr); gap:22px; padding:25px 0; border-top:1px solid var(--financing-line); }
.th-land-financing-page .th-lf-land-file li > span { color:#886935; font-family:Georgia,serif; font-size:26px; line-height:1.3; }
.th-land-financing-page .th-lf-land-file h3 { margin-bottom:12px; }
.th-land-financing-page .th-lf-land-file p { margin:0; }
.th-land-financing-page .th-lf-land-file li:last-child { padding-bottom:0; }

/* A navy spread separates acquisition and construction budgets. */
.th-land-financing-page .th-lf-funds { border-radius:24px; background:var(--financing-night); color:#fff; }
.th-land-financing-page .th-lf-funds :is(h2,h3) { color:#fff; }
.th-land-financing-page .th-lf-funds :is(h2 em,.th-financing-eyebrow,.th-lf-kicker) { color:var(--lf-gold); }
.th-land-financing-page .th-lf-funds .th-financing-eyebrow > span { background:var(--lf-gold); }
.th-land-financing-page .th-lf-funds .th-lf-section-head > p { color:#d3dee4; }
.th-land-financing-page .th-lf-budget { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:35px; padding-top:30px; border-top:1px solid #ffffff45; }
.th-land-financing-page .th-lf-budget article { min-width:0; }
.th-land-financing-page .th-lf-budget article:last-child { padding-left:35px; border-left:1px solid #ffffff45; }
.th-land-financing-page .th-lf-budget h3 { font-size:clamp(23px,2vw,30px); }
.th-land-financing-page .th-lf-budget dl { margin:0; }
.th-land-financing-page .th-lf-budget dl > div { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:20px; padding:21px 0; border-bottom:1px solid #ffffff35; }
.th-land-financing-page .th-lf-budget dt { color:#fff; font-size:15px; font-weight:500; line-height:1.6; }
.th-land-financing-page .th-lf-budget dd { margin:0; color:#d3dee4; font-size:14px; line-height:1.65; }
.th-land-financing-page .th-lf-funds__note { margin:28px 0 0; color:#d3dee4; font-size:13px; }

.th-land-financing-page .th-financing-shell > section.th-lf-route { padding:22px 0; }
.th-land-financing-page .th-lf-route ol { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:25px; margin:30px 0 0; padding:0; list-style:none; }
.th-land-financing-page .th-lf-route li { padding-top:24px; border-top:2px solid #cbbca2; }
.th-land-financing-page .th-lf-route li > span { display:block; margin-bottom:22px; color:#886935; font-family:Georgia,serif; font-size:29px; line-height:1.2; }
.th-land-financing-page .th-lf-route h3 { font-size:21px; }
.th-land-financing-page .th-lf-route p { margin:0; font-size:15px; }

.th-land-financing-page .th-lf-faq { border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-land-financing-page .th-lf-faq__list { border-top:1px solid var(--financing-line); }
.th-land-financing-page .th-lf-faq details { border-bottom:1px solid var(--financing-line); }
.th-land-financing-page .th-lf-faq summary { display:flex; min-height:73px; align-items:center; justify-content:space-between; gap:20px; padding:23px 0; color:var(--financing-ink); font-size:16px; font-weight:600; line-height:1.5; list-style:none; cursor:pointer; }
.th-land-financing-page .th-lf-faq summary::-webkit-details-marker { display:none; }
.th-land-financing-page .th-lf-faq summary > span { flex:0 0 20px; color:#886935; font-size:24px; font-weight:400; transition:transform .2s; }
.th-land-financing-page .th-lf-faq details[open] summary > span { transform:rotate(45deg); }
.th-land-financing-page .th-lf-faq details p { max-width:1050px; margin:0 30px 24px 0; }
.th-land-financing-page .th-lf-conversation { display:flex; align-items:center; justify-content:space-between; gap:35px; border-radius:24px; background:var(--financing-night); }
.th-land-financing-page .th-lf-conversation h2 { color:#fff; font-size:clamp(38px,4vw,64px); }
.th-land-financing-page .th-lf-conversation h2 em { color:var(--lf-gold); }
.th-land-financing-page .th-lf-conversation .th-financing-eyebrow { color:var(--lf-gold); }
.th-land-financing-page .th-lf-conversation .th-financing-eyebrow > span { background:var(--lf-gold); }
.th-land-financing-page .th-lf-conversation p:last-child { max-width:680px; margin:0; color:#d3dee4; }
.th-land-financing-page .th-lf-conversation > div:last-child { flex-shrink:0; }
.th-land-financing-page .th-lf-conversation .th-financing-link { display:flex; width:fit-content; margin-top:24px; color:#fff; }
.th-land-financing-page .th-lf-conversation .th-financing-link > span { color:var(--lf-gold); }

@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-land-financing-page .th-lf-survey__layout { gap:30px; }
  .th-land-financing-page .th-lf-survey h1 { font-size:clamp(44px,4.2vw,57px); }
  .th-land-financing-page .th-lf-plan { padding:22px; }
  .th-land-financing-page .th-lf-brief__layout { gap:30px; }
  .th-land-financing-page .th-lf-brief__controls { padding-right:25px; }
  .th-land-financing-page .th-lf-budget dl > div { grid-template-columns:minmax(0,1fr); gap:10px; }
}
@media (max-width:1199px) {
  .th-land-financing-page .th-lf-section-head { align-items:start; flex-direction:column; gap:20px; }
  .th-land-financing-page .th-lf-section-head > p { max-width:650px; }
  .th-land-financing-page .th-lf-budget dl > div { grid-template-columns:minmax(0,1fr); gap:10px; }
  .th-land-financing-page .th-lf-route ol { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
}
@media (max-width:991px) {
  .th-land-financing-page .th-lf-survey__layout,.th-land-financing-page .th-lf-brief__layout,.th-land-financing-page .th-lf-budget { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-land-financing-page .th-financing-shell > section:is(.th-lf-context,.th-lf-plot) { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-land-financing-page .th-lf-plan { width:100%; max-width:600px; justify-self:center; }
  .th-land-financing-page .th-lf-brief__controls { padding:0 0 25px; border-right:0; border-bottom:1px solid #cbbca2; }
  .th-land-financing-page .th-lf-budget article:last-child { padding:25px 0 0; border-left:0; border-top:1px solid #ffffff45; }
  .th-land-financing-page .th-lf-conversation { align-items:start; flex-direction:column; gap:28px; }
}
@media (max-width:767px) {
  .th-land-financing-page .th-lf-survey h1 { font-size:clamp(39px,10.2vw,59px); }
  .th-land-financing-page .th-lf-survey__top { font-size:10px; margin-bottom:28px; }
  .th-land-financing-page .th-lf-plan { padding:20px 17px; }
  .th-land-financing-page .th-lf-survey__index { grid-template-columns:minmax(0,1fr); margin-top:28px; }
  .th-land-financing-page .th-lf-survey__index a,.th-land-financing-page .th-lf-survey__index a:first-child,.th-land-financing-page .th-lf-survey__index a:last-child { padding:19px 0; border-bottom:1px solid #d7cbb4; }
  .th-land-financing-page .th-lf-survey__index a:last-child { padding-bottom:0; border-bottom:0; }
  .th-land-financing-page .th-financing-shell > section:is(.th-lf-context,.th-lf-plot,.th-lf-route) { padding:14px 5px; }
  .th-land-financing-page .th-lf-land-file li { grid-template-columns:28px minmax(0,1fr); gap:17px; }
  .th-land-financing-page .th-lf-route ol { grid-template-columns:minmax(0,1fr); gap:25px; }
  .th-land-financing-page .th-lf-faq summary { font-size:15px; }
  .th-land-financing-page .th-lf-conversation h2 { font-size:clamp(36px,10vw,52px); }
}
@media (prefers-reduced-motion:reduce) { .th-land-financing-page *,.th-land-financing-page *::before,.th-land-financing-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

/* Land Financing planning section — theme navy surface. */
.th-land-financing-page .th-lf-brief :is(h2,h3,label) { color:#fff; }
.th-land-financing-page .th-lf-brief p { color:#d3dee4; }
.th-land-financing-page .th-lf-brief :is(h2 em,.th-financing-eyebrow,.th-lf-kicker) { color:var(--lf-gold); }
.th-land-financing-page .th-lf-brief .th-financing-eyebrow > span { background:var(--lf-gold); }
.th-land-financing-page .th-lf-brief :is(.th-lf-brief__controls,.th-lf-brief__bottom) { border-color:#ffffff45; }
.th-land-financing-page .th-lf-brief .th-lf-brief__response li { border-color:#ffffff45; color:#fff; }
.th-land-financing-page .th-lf-brief .th-lf-brief__response li::before { color:var(--lf-gold); }
.th-land-financing-page .th-lf-brief .th-financing-link { color:#fff; }
.th-land-financing-page .th-lf-brief .th-financing-link > span { color:var(--lf-gold); }
.th-land-financing-page .th-lf-brief .th-financing-link:hover { color:#fff; }


/* OFF-PLAN FINANCING — a milestone journal. Scoped only to this page. */
.th-offplan-financing-page { --of-warm:#eee5d4; --of-gold:#e6c68f; }
.th-offplan-financing-page .th-of-button { display:inline-flex; min-height:49px; align-items:center; justify-content:center; gap:18px; padding:13px 24px; border:1px solid transparent; border-radius:999px; background:var(--financing-night); color:#fff; font-family:inherit; font-size:14px; font-weight:600; line-height:1.5; text-align:center; text-decoration:none; transition:background-color .2s,transform .2s; }
.th-offplan-financing-page .th-of-button:hover { transform:translateY(-2px); background:#30434f; color:#fff; }
.th-offplan-financing-page .th-of-button > span { color:var(--of-gold); font-size:20px; }
.th-offplan-financing-page .th-of-button--light { background:#fff; color:var(--financing-ink); }
.th-offplan-financing-page .th-of-button--light:hover { background:#f4efe6; color:var(--financing-ink); }
.th-offplan-financing-page .th-of-button--light > span { color:#886935; }
.th-offplan-financing-page .th-of-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px 24px; }
.th-offplan-financing-page .th-of-section-head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:33px; }
.th-offplan-financing-page .th-of-section-head h2 { margin-bottom:0; }
.th-offplan-financing-page .th-of-section-head > p { max-width:400px; margin:0; }
.th-offplan-financing-page .th-of-section-head > a { flex-shrink:0; }
.th-offplan-financing-page .th-of-kicker { display:block; margin-bottom:20px; color:#886935; font-size:11px; font-weight:700; line-height:1.6; letter-spacing:.12em; }

/* An editorial cover: slim image spine, wide story and a purchase sequence. */
.th-offplan-financing-page .th-financing-shell > section.th-of-cover { display:grid; grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr); gap:0; padding:0; overflow:hidden; border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-offplan-financing-page .th-of-cover figure { position:relative; min-width:0; margin:0; overflow:hidden; background:var(--financing-night); }
.th-offplan-financing-page .th-of-cover figure img { display:block; width:100%; height:100%; min-height:490px; object-fit:cover; }
.th-offplan-financing-page .th-of-cover figcaption { position:absolute; right:0; bottom:0; left:0; padding:65px 28px 28px; background:linear-gradient(0deg,#102334ee,transparent); color:#fff; font-size:10px; font-weight:700; line-height:1.6; letter-spacing:.13em; }
.th-offplan-financing-page .th-of-cover__story { min-width:0; padding:var(--financing-panel-y) var(--financing-panel-x); }
.th-offplan-financing-page .th-of-cover__edition { display:flex; flex-wrap:wrap; justify-content:space-between; gap:15px; margin-bottom:30px; padding-bottom:22px; border-bottom:1px solid var(--financing-line); color:#886935; font-size:11px; font-weight:600; line-height:1.6; letter-spacing:.1em; }
.th-offplan-financing-page .th-of-cover h1 { font-size:clamp(45px,4.35vw,75px); }
.th-offplan-financing-page .th-of-cover__story > p:not(.th-financing-eyebrow) { max-width:720px; margin-bottom:28px; }
.th-offplan-financing-page .th-of-cover__sequence { display:flex; flex-wrap:wrap; align-items:center; gap:15px 22px; margin-top:32px; padding-top:24px; border-top:1px solid var(--financing-line); color:#886935; font-size:13px; }
.th-offplan-financing-page .th-of-cover__sequence b { font-size:21px; font-weight:400; }
.th-offplan-financing-page .th-financing-shell > section.th-of-intro { padding:22px 0; }
.th-offplan-financing-page .th-of-intro > div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:55px; align-items:start; }
.th-offplan-financing-page .th-of-intro :is(h2,p:last-child) { margin-bottom:0; }

/* Navy stage selector and a single changing milestone spread. */
.th-offplan-financing-page .th-of-stages { border-radius:24px; background:var(--financing-night); }
.th-offplan-financing-page .th-of-stages :is(h2,h3) { color:#fff; }
.th-offplan-financing-page .th-of-stages :is(h2 em,.th-financing-eyebrow,.th-of-kicker) { color:var(--of-gold); }
.th-offplan-financing-page .th-of-stages .th-financing-eyebrow > span { background:var(--of-gold); }
.th-offplan-financing-page .th-of-stages p { color:#d3dee4; }
.th-offplan-financing-page .th-of-stage-buttons { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:32px; }
.th-offplan-financing-page .th-of-stage-buttons button { display:flex; min-width:0; min-height:82px; flex-direction:column; align-items:start; gap:9px; padding:17px 19px; border:1px solid #ffffff45; border-radius:12px; background:transparent; color:#fff; font-family:inherit; font-size:14px; font-weight:500; line-height:1.5; text-align:left; cursor:pointer; }
.th-offplan-financing-page .th-of-stage-buttons button > span { color:var(--of-gold); font-size:12px; }
.th-offplan-financing-page .th-of-stage-buttons button:hover { background:#30434f; }
.th-offplan-financing-page .th-of-stage-buttons button[aria-pressed="true"] { background:var(--of-warm); border-color:var(--of-warm); color:var(--financing-ink); }
.th-offplan-financing-page .th-of-stage-buttons button[aria-pressed="true"] > span { color:#886935; }
.th-offplan-financing-page .th-of-stage-detail { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:45px; padding-top:30px; border-top:1px solid #ffffff45; }
.th-offplan-financing-page .th-of-stage-detail__number { display:block; margin-bottom:22px; color:var(--of-gold); font-family:Georgia,serif; font-size:70px; line-height:1; }
.th-offplan-financing-page .th-of-stage-detail h3 { font-size:clamp(26px,2.3vw,36px); }
.th-offplan-financing-page .th-of-stage-detail .th-financing-link { color:#fff; }
.th-offplan-financing-page .th-of-stage-detail .th-financing-link > span { color:var(--of-gold); }
.th-offplan-financing-page .th-of-stage-detail ol { margin:0; padding:0; list-style:none; counter-reset:milestone; }
.th-offplan-financing-page .th-of-stage-detail li { display:grid; grid-template-columns:27px minmax(0,1fr); gap:18px; padding:24px 0; border-bottom:1px solid #ffffff45; color:#fff; font-size:16px; line-height:1.65; counter-increment:milestone; }
.th-offplan-financing-page .th-of-stage-detail li::before { color:var(--of-gold); font-family:Georgia,serif; font-size:23px; content:counter(milestone,decimal-leading-zero); }
.th-offplan-financing-page .th-of-stages__note { margin:30px 0 0; padding-top:23px; border-top:1px solid #ffffff45; font-size:13px; }

/* Warm comparison spread: purchase obligations and financing conditions. */
.th-offplan-financing-page .th-of-two-tracks { border:1px solid #d7cbb4; border-radius:24px; background:var(--of-warm); }
.th-offplan-financing-page .th-of-tracks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px; }
.th-offplan-financing-page .th-of-tracks article { min-width:0; padding-top:25px; border-top:2px solid #bca47c; }
.th-offplan-financing-page .th-of-track-label { display:flex; align-items:center; gap:18px; margin-bottom:22px; }
.th-offplan-financing-page .th-of-track-label > span { display:grid; flex:0 0 41px; width:41px; height:41px; place-items:center; border:1px solid #bca47c; border-radius:50%; color:#886935; font-family:Georgia,serif; font-size:24px; }
.th-offplan-financing-page .th-of-track-label h3 { margin:0; }
.th-offplan-financing-page .th-of-tracks dl { margin:0; }
.th-offplan-financing-page .th-of-tracks dl > div { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:20px; padding:20px 0; border-top:1px solid #cbbca2; }
.th-offplan-financing-page .th-of-tracks dt { color:var(--financing-ink); font-size:15px; font-weight:600; line-height:1.6; }
.th-offplan-financing-page .th-of-tracks dd { margin:0; color:var(--financing-muted); font-size:15px; line-height:1.65; }
.th-offplan-financing-page .th-of-tracks__foot { display:flex; align-items:start; gap:17px; margin-top:28px; padding-top:23px; border-top:1px solid #cbbca2; }
.th-offplan-financing-page .th-of-tracks__foot > span { color:#886935; font-size:26px; }
.th-offplan-financing-page .th-of-tracks__foot p { margin:0; font-size:14px; }

.th-offplan-financing-page .th-financing-shell > section.th-of-file { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:60px; padding:22px 0; }
.th-offplan-financing-page .th-of-file__rows { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
.th-offplan-financing-page .th-of-file__rows article { min-width:0; padding-top:23px; border-top:1px solid var(--financing-line); }
.th-offplan-financing-page .th-of-file__rows article > span { display:block; margin-bottom:20px; color:#886935; font-size:11px; font-weight:600; line-height:1.6; letter-spacing:.1em; }
.th-offplan-financing-page .th-of-file__rows p { margin:0; font-size:15px; }
.th-offplan-financing-page .th-of-handover { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:50px; overflow:hidden; border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-offplan-financing-page .th-of-handover > div { position:relative; min-width:0; }
.th-offplan-financing-page .th-of-handover h2 { margin-bottom:0; }
.th-offplan-financing-page .th-of-handover__mark { position:absolute; bottom:-75px; left:28%; color:#ac8d5612; font-size:290px; line-height:1; pointer-events:none; }
.th-offplan-financing-page .th-of-handover ul { margin:0; padding-left:20px; color:var(--financing-muted); font-size:15px; line-height:1.65; }
.th-offplan-financing-page .th-of-handover li + li { margin-top:13px; }
.th-offplan-financing-page .th-financing-shell > section.th-of-discover { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:55px; padding:22px 0; }
.th-offplan-financing-page .th-of-discover h2 { margin-bottom:0; }
.th-offplan-financing-page .th-of-discover__links { border-top:1px solid var(--financing-line); }
.th-offplan-financing-page .th-of-discover__links a { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 0; border-bottom:1px solid var(--financing-line); color:var(--financing-ink); font-size:15px; font-weight:500; line-height:1.5; text-decoration:none; }
.th-offplan-financing-page .th-of-discover__links a > span { color:#886935; font-size:21px; }
.th-offplan-financing-page .th-of-discover__links a:hover { text-decoration:underline; text-underline-offset:5px; }

.th-offplan-financing-page .th-of-faq { border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-offplan-financing-page .th-of-faq__list { border-top:1px solid var(--financing-line); }
.th-offplan-financing-page .th-of-faq details { border-bottom:1px solid var(--financing-line); }
.th-offplan-financing-page .th-of-faq summary { display:flex; min-height:73px; align-items:center; justify-content:space-between; gap:20px; padding:23px 0; color:var(--financing-ink); font-size:16px; font-weight:600; line-height:1.5; list-style:none; cursor:pointer; }
.th-offplan-financing-page .th-of-faq summary::-webkit-details-marker { display:none; }
.th-offplan-financing-page .th-of-faq summary > span { flex:0 0 20px; color:#886935; font-size:24px; font-weight:400; transition:transform .2s; }
.th-offplan-financing-page .th-of-faq details[open] summary > span { transform:rotate(45deg); }
.th-offplan-financing-page .th-of-faq details p { max-width:1050px; margin:0 30px 24px 0; }
.th-offplan-financing-page .th-of-conversation { display:flex; align-items:center; justify-content:space-between; gap:35px; border-radius:24px; background:var(--financing-night); }
.th-offplan-financing-page .th-of-conversation h2 { color:#fff; }
.th-offplan-financing-page .th-of-conversation :is(h2 em,.th-financing-eyebrow) { color:var(--of-gold); }
.th-offplan-financing-page .th-of-conversation .th-financing-eyebrow > span { background:var(--of-gold); }
.th-offplan-financing-page .th-of-conversation p:last-child { max-width:750px; margin:0; color:#d3dee4; }
.th-offplan-financing-page .th-of-conversation > a { flex-shrink:0; }

@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-offplan-financing-page .th-of-cover h1 { font-size:clamp(44px,4.2vw,57px); }
  .th-offplan-financing-page .th-of-cover figure img { min-height:450px; }
  .th-offplan-financing-page .th-of-stage-detail { gap:30px; }
  .th-offplan-financing-page .th-of-stage-buttons button { padding:16px 15px; }
  .th-offplan-financing-page .th-of-tracks dl > div { grid-template-columns:minmax(0,1fr); gap:10px; }
}
@media (max-width:1199px) {
  .th-offplan-financing-page .th-of-section-head { align-items:start; flex-direction:column; gap:20px; }
  .th-offplan-financing-page .th-of-section-head > p { max-width:650px; }
  .th-offplan-financing-page .th-of-stage-buttons { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .th-offplan-financing-page .th-of-tracks dl > div { grid-template-columns:minmax(0,1fr); gap:10px; }
}
@media (max-width:991px) {
  .th-offplan-financing-page .th-financing-shell > section.th-of-cover { grid-template-columns:minmax(0,1fr); }
  .th-offplan-financing-page .th-of-cover figure img { height:270px; min-height:0; }
  .th-offplan-financing-page .th-of-cover figcaption { padding:50px 27px 23px; }
  .th-offplan-financing-page .th-of-intro > div,.th-offplan-financing-page .th-of-stage-detail,.th-offplan-financing-page .th-of-tracks,.th-offplan-financing-page .th-of-handover { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-offplan-financing-page .th-financing-shell > section:is(.th-of-file,.th-of-discover) { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-offplan-financing-page .th-of-conversation { align-items:start; flex-direction:column; gap:28px; }
}
@media (max-width:767px) {
  .th-offplan-financing-page .th-of-cover h1 { font-size:clamp(39px,10.2vw,59px); }
  .th-offplan-financing-page .th-of-cover figure img { height:225px; }
  .th-offplan-financing-page .th-of-cover__edition { font-size:10px; margin-bottom:27px; }
  .th-offplan-financing-page .th-of-cover__sequence { gap:12px 15px; }
  .th-offplan-financing-page .th-financing-shell > section:is(.th-of-intro,.th-of-file,.th-of-discover) { padding:14px 5px; }
  .th-offplan-financing-page .th-of-stage-buttons { gap:10px; }
  .th-offplan-financing-page .th-of-stage-buttons button { padding:15px 12px; font-size:13px; }
  .th-offplan-financing-page .th-of-stage-detail__number { font-size:58px; }
  .th-offplan-financing-page .th-of-file__rows { grid-template-columns:minmax(0,1fr); gap:25px; }
  .th-offplan-financing-page .th-of-faq summary { font-size:15px; }
}
@media (prefers-reduced-motion:reduce) { .th-offplan-financing-page *,.th-offplan-financing-page *::before,.th-offplan-financing-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

/* COMMERCIAL FINANCING — a business brief and preparation ledger. Page-scoped. */
.th-commercial-financing-page { --cf-gold:#e6c68f; --cf-warm:#ede2cc; }
.th-commercial-financing-page :is(article,aside,fieldset,section > div) { min-width:0; }
.th-commercial-financing-page .th-cf-caption { display:block; margin-bottom:20px; font-size:11px; font-weight:700; line-height:1.6; letter-spacing:.12em; }
.th-commercial-financing-page .th-cf-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px 24px; }
.th-commercial-financing-page .th-cf-button { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:50px; max-width:100%; padding:14px 23px; border:1px solid transparent; border-radius:999px; background:var(--financing-ink); color:#fff; font:600 14px/1.5 Inter,Arial,sans-serif; text-decoration:none; cursor:pointer; }
.th-commercial-financing-page .th-cf-button:hover { color:#fff; background:#303a3d; }
.th-commercial-financing-page .th-cf-button > span { color:var(--cf-gold); font-size:20px; }
.th-commercial-financing-page .th-cf-button--light { background:#fff; color:var(--financing-ink); }
.th-commercial-financing-page .th-cf-button--light:hover { color:var(--financing-ink); background:#f1eadc; }
.th-commercial-financing-page .th-cf-button--light > span { color:#886935; }
.th-commercial-financing-page .th-financing-shell > section.th-cf-opening { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); align-items:center; gap:65px; padding:22px 0; }
.th-commercial-financing-page .th-cf-opening h1 { font-size:clamp(48px,4.5vw,78px); }
.th-commercial-financing-page .th-cf-opening > div > p:not(.th-financing-eyebrow) { max-width:690px; margin-bottom:30px; }
.th-commercial-financing-page .th-cf-drawing { padding:26px 0 0 30px; border-left:1px solid var(--financing-line); color:#886935; }
.th-commercial-financing-page .th-cf-drawing svg { display:block; width:100%; height:auto; margin:0 0 25px; }
.th-commercial-financing-page .th-cf-drawing dl { margin:0; }
.th-commercial-financing-page .th-cf-drawing dl > div { display:grid; grid-template-columns:120px minmax(0,1fr); gap:15px; padding:17px 0; border-top:1px solid var(--financing-line); }
.th-commercial-financing-page .th-cf-drawing dt { font-size:10px; letter-spacing:.1em; font-weight:600; }
.th-commercial-financing-page .th-cf-drawing dd { margin:0; color:var(--financing-muted); font-size:14px; }
.th-commercial-financing-page .th-financing-shell > section.th-cf-panorama { position:relative; display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1fr); padding:0; overflow:hidden; border-radius:24px; background:var(--financing-night); }
.th-commercial-financing-page .th-cf-panorama img { display:block; width:100%; height:100%; min-height:320px; object-fit:cover; }
.th-commercial-financing-page .th-cf-panorama > div { display:flex; flex-direction:column; justify-content:center; padding:var(--financing-panel-y) var(--financing-panel-x); }
.th-commercial-financing-page .th-cf-panorama :is(h2,.th-cf-caption) { color:#fff; }
.th-commercial-financing-page .th-cf-panorama h2 em { color:var(--cf-gold); }
.th-commercial-financing-page .th-cf-panorama p { margin:0; color:#d3dee4; }
.th-commercial-financing-page .th-cf-heading { display:flex; align-items:end; justify-content:space-between; gap:35px; margin-bottom:32px; }
.th-commercial-financing-page .th-cf-heading h2 { margin-bottom:0; }
.th-commercial-financing-page .th-cf-heading > p { max-width:420px; margin:0; }
.th-commercial-financing-page .th-financing-shell > section:is(.th-cf-purpose,.th-cf-route) { padding:22px 0; }
.th-commercial-financing-page .th-cf-purpose__rows { border-top:1px solid var(--financing-line); }
.th-commercial-financing-page .th-cf-purpose__rows article { display:grid; grid-template-columns:45px minmax(0,1fr) minmax(170px,.35fr); gap:25px; align-items:center; padding:30px 0; border-bottom:1px solid var(--financing-line); }
.th-commercial-financing-page .th-cf-purpose__rows article > span { align-self:start; color:#886935; font:26px/1.5 Georgia,serif; }
.th-commercial-financing-page .th-cf-purpose__rows h3 { margin-bottom:12px; }
.th-commercial-financing-page .th-cf-purpose__rows p { max-width:860px; margin:0; }
.th-commercial-financing-page .th-cf-purpose__rows a { display:flex; align-items:center; justify-content:space-between; gap:15px; color:var(--financing-ink); font-size:14px; font-weight:600; line-height:1.5; text-decoration:none; }
.th-commercial-financing-page .th-cf-purpose__rows a:hover { text-decoration:underline; text-underline-offset:5px; }
.th-commercial-financing-page .th-cf-purpose__rows a > span { color:#886935; font-size:22px; }
.th-commercial-financing-page .th-cf-ledger { border:1px solid #dccaa8; border-radius:24px; background:var(--cf-warm); }
.th-commercial-financing-page .th-cf-ledger__columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; padding:28px 0; border-block:1px solid #cdbb98; }
.th-commercial-financing-page .th-cf-ledger__columns article + article { border-left:1px solid #cdbb98; padding-left:30px; }
.th-commercial-financing-page .th-cf-ledger .th-cf-caption { color:#806333; }
.th-commercial-financing-page .th-cf-ledger ul { padding-left:19px; margin:0; color:#4e5c69; }
.th-commercial-financing-page .th-cf-ledger li + li { margin-top:13px; }
.th-commercial-financing-page .th-cf-footnote { font-size:14px; line-height:1.65; }
.th-commercial-financing-page .th-cf-ledger > p:last-child { margin:23px 0 0; }
.th-commercial-financing-page .th-cf-brief { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:55px; border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-commercial-financing-page .th-cf-checklist { margin:0; padding:0; border:0; }
.th-commercial-financing-page .th-cf-checklist legend { float:none; width:auto; color:#886935; }
.th-commercial-financing-page .th-cf-checklist label { display:flex; align-items:start; gap:17px; padding:22px 0; margin:0; border-top:1px solid var(--financing-line); cursor:pointer; }
.th-commercial-financing-page .th-cf-checklist input { flex:0 0 21px; width:21px; height:21px; margin:3px 0 0; accent-color:#886935; cursor:pointer; }
.th-commercial-financing-page .th-cf-checklist :is(strong,small) { display:block; }
.th-commercial-financing-page .th-cf-checklist strong { color:var(--financing-ink); font-size:18px; line-height:1.5; font-weight:600; margin-bottom:7px; }
.th-commercial-financing-page .th-cf-checklist small { color:var(--financing-muted); font-size:15px; line-height:1.65; }
.th-commercial-financing-page .th-cf-progress { padding-top:24px; border-top:1px solid var(--financing-line); }
.th-commercial-financing-page .th-cf-progress > span { display:block; font-size:14px; font-weight:600; }
.th-commercial-financing-page .th-cf-progress progress { display:block; width:100%; height:8px; margin:15px 0 24px; border:0; border-radius:10px; overflow:hidden; accent-color:#886935; background:#eee7db; }
.th-commercial-financing-page progress::-webkit-progress-bar { background:#eee7db; }
.th-commercial-financing-page progress::-webkit-progress-value { background:#886935; }
.th-commercial-financing-page progress::-moz-progress-bar { background:#886935; }
.th-commercial-financing-page .th-cf-route ol { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:30px; padding:0; margin:0; list-style:none; }
.th-commercial-financing-page .th-cf-route li { padding-top:25px; border-top:1px solid var(--financing-line); }
.th-commercial-financing-page .th-cf-route li > span { display:block; margin-bottom:25px; color:#886935; font:26px/1.3 Georgia,serif; }
.th-commercial-financing-page .th-cf-route h3 { font-size:21px; }
.th-commercial-financing-page .th-cf-route p { margin:0; font-size:15px; }
.th-commercial-financing-page .th-cf-faq { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:55px; border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-commercial-financing-page .th-cf-faq details { border-bottom:1px solid var(--financing-line); }
.th-commercial-financing-page .th-cf-faq details:first-child { border-top:1px solid var(--financing-line); }
.th-commercial-financing-page .th-cf-faq summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:70px; padding:22px 0; color:var(--financing-ink); font-size:16px; font-weight:600; line-height:1.5; list-style:none; cursor:pointer; }
.th-commercial-financing-page .th-cf-faq summary::-webkit-details-marker { display:none; }
.th-commercial-financing-page .th-cf-faq summary > span { flex:0 0 18px; font-size:24px; color:#886935; font-weight:400; }
.th-commercial-financing-page .th-cf-faq details[open] summary > span { transform:rotate(45deg); }
.th-commercial-financing-page .th-cf-faq details p { margin:0 25px 23px 0; font-size:15px; }
.th-commercial-financing-page .th-cf-close { display:flex; align-items:center; justify-content:space-between; gap:35px; border-radius:24px; background:var(--financing-night); }
.th-commercial-financing-page .th-cf-close h2 { color:#fff; }
.th-commercial-financing-page .th-cf-close :is(h2 em,.th-financing-eyebrow) { color:var(--cf-gold); }
.th-commercial-financing-page .th-cf-close .th-financing-eyebrow > span { background:var(--cf-gold); }
.th-commercial-financing-page .th-cf-close p:last-child { margin:0; color:#d3dee4; }
.th-commercial-financing-page .th-cf-close__links { display:flex; flex-direction:column; align-items:start; gap:22px; flex-shrink:0; }
.th-commercial-financing-page .th-cf-close .th-financing-link { color:#fff; }
.th-commercial-financing-page .th-cf-close .th-financing-link:hover { color:#fff; }
.th-commercial-financing-page .th-cf-close .th-financing-link > span { color:var(--cf-gold); }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-commercial-financing-page .th-financing-shell > section.th-cf-opening { gap:35px; }
  .th-commercial-financing-page .th-cf-opening h1 { font-size:clamp(47px,4.5vw,61px); }
  .th-commercial-financing-page .th-cf-drawing { padding-left:25px; }
  .th-commercial-financing-page .th-cf-panorama img { min-height:290px; }
}
@media (max-width:1199px) {
  .th-commercial-financing-page .th-cf-heading { align-items:start; flex-direction:column; gap:20px; }
  .th-commercial-financing-page .th-cf-heading > p { max-width:650px; }
  .th-commercial-financing-page .th-cf-close__links { flex-shrink:1; }
  .th-commercial-financing-page .th-cf-purpose__rows article { grid-template-columns:35px minmax(0,1fr); }
  .th-commercial-financing-page .th-cf-purpose__rows a { grid-column:2; justify-content:start; }
}
@media (max-width:991px) {
  .th-commercial-financing-page .th-financing-shell > section.th-cf-opening { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-commercial-financing-page .th-cf-drawing { padding:25px 0 0; border-left:0; border-top:1px solid var(--financing-line); }
  .th-commercial-financing-page .th-cf-drawing svg { max-width:430px; margin-inline:auto; }
  .th-commercial-financing-page .th-cf-ledger__columns { grid-template-columns:minmax(0,1fr); }
  .th-commercial-financing-page .th-cf-ledger__columns article + article { border-left:0; border-top:1px solid #cdbb98; padding:27px 0 0; }
  .th-commercial-financing-page :is(.th-cf-brief,.th-cf-faq) { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-commercial-financing-page .th-cf-route ol { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .th-commercial-financing-page .th-cf-close { flex-direction:column; align-items:start; gap:30px; }
}
@media (max-width:767px) {
  .th-commercial-financing-page .th-financing-shell > section:is(.th-cf-opening,.th-cf-purpose,.th-cf-route) { padding:14px 5px; }
  .th-commercial-financing-page .th-cf-opening h1 { font-size:clamp(40px,10.5vw,61px); }
  .th-commercial-financing-page .th-financing-shell > section.th-cf-panorama { grid-template-columns:minmax(0,1fr); }
  .th-commercial-financing-page .th-cf-panorama img { height:230px; min-height:0; }
  .th-commercial-financing-page .th-cf-drawing dl > div { grid-template-columns:100px minmax(0,1fr); gap:12px; }
  .th-commercial-financing-page .th-cf-purpose__rows article { grid-template-columns:28px minmax(0,1fr); gap:16px; }
  .th-commercial-financing-page .th-cf-route ol { grid-template-columns:minmax(0,1fr); }
  .th-commercial-financing-page .th-cf-checklist label { gap:13px; }
}
@media (prefers-reduced-motion:reduce) { .th-commercial-financing-page *,.th-commercial-financing-page *::before,.th-commercial-financing-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }


/* Commercial panorama: keep image intrinsic dimensions from stretching the grid. */
.th-commercial-financing-page .th-cf-panorama__image { position:relative; min-width:0; min-height:300px; margin:0; overflow:hidden; }
.th-commercial-financing-page .th-cf-panorama__image img { position:absolute; inset:0; width:100%; height:100%; min-height:0; max-width:100%; object-fit:cover; }
.th-commercial-financing-page .th-cf-panorama > div { padding:30px var(--financing-panel-x); }
.th-commercial-financing-page .th-cf-panorama h2 { font-size:clamp(30px,2.4vw,40px); margin-bottom:18px; }
.th-commercial-financing-page .th-cf-panorama .th-cf-caption { margin-bottom:16px; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-commercial-financing-page .th-cf-panorama__image { min-height:280px; }
}
@media (max-width:767px) {
  .th-commercial-financing-page .th-cf-panorama__image { height:210px; min-height:0; }
  .th-commercial-financing-page .th-cf-panorama > div { padding:28px var(--financing-panel-x); }
}

/* Commercial Financing: a single, viewport-triggered architectural illustration. */
.th-commercial-financing-page .th-cf-motion { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr); align-items:center; gap:40px; border-radius:24px; background:var(--financing-night); }
.th-commercial-financing-page .th-cf-motion h2 { color:#fff; font-size:clamp(29px,2.4vw,39px); }
.th-commercial-financing-page .th-cf-motion :is(h2 em,.th-financing-eyebrow) { color:var(--cf-gold); }
.th-commercial-financing-page .th-cf-motion .th-financing-eyebrow > span { background:var(--cf-gold); }
.th-commercial-financing-page .th-cf-motion p:not(.th-financing-eyebrow) { max-width:620px; color:#d3dee4; }
.th-commercial-financing-page .th-cf-motion .th-financing-link { color:#fff; }
.th-commercial-financing-page .th-cf-motion .th-financing-link > span { color:var(--cf-gold); }
.th-commercial-financing-page .th-cf-motion__visual { min-width:0; padding:15px 0; }
.th-commercial-financing-page .th-cf-motion__visual svg { display:block; width:100%; max-width:520px; height:auto; margin-inline:auto; }
.th-commercial-financing-page .th-cf-motion.is-playing .th-cf-motion__outline { animation:th-cf-draw 2.6s ease-in-out both; }
.th-commercial-financing-page .th-cf-motion.is-playing .th-cf-motion__windows { animation:th-cf-details 1s 1.7s ease-out both; }
.th-commercial-financing-page .th-cf-motion.is-playing .th-cf-motion__door { animation:th-cf-details .8s 2.3s ease-out both; }
.th-commercial-financing-page .th-cf-motion.is-playing .th-cf-motion__sun { transform-origin:407px 54px; animation:th-cf-sun 1s 2.5s ease-out both; }
@keyframes th-cf-draw { from { stroke-dasharray:1; stroke-dashoffset:1; } to { stroke-dasharray:1; stroke-dashoffset:0; } }
@keyframes th-cf-details { from { opacity:0; } to { opacity:1; } }
@keyframes th-cf-sun { from { opacity:0; transform:scale(.4); } to { opacity:1; transform:scale(1); } }
@media (max-width:767px) {
  .th-commercial-financing-page .th-cf-motion { grid-template-columns:minmax(0,1fr); gap:15px; }
  .th-commercial-financing-page .th-cf-motion__visual { padding:5px 0 0; }
}
@media (prefers-reduced-motion:reduce) {
  .th-commercial-financing-page .th-cf-motion.is-playing :is(.th-cf-motion__outline,.th-cf-motion__windows,.th-cf-motion__door,.th-cf-motion__sun) { animation:none!important; }
}


/* Top architectural sketch: a short, one-time drawing sequence. */
.th-commercial-financing-page .th-cf-drawing.is-sketch-playing .th-cf-sketch-outline { animation:th-cf-sketch-draw 2.2s ease-in-out both; }
.th-commercial-financing-page .th-cf-drawing.is-sketch-playing .th-cf-sketch-windows { animation:th-cf-details 1s 1.5s ease-out both; }
.th-commercial-financing-page .th-cf-drawing.is-sketch-playing .th-cf-sketch-measure { animation:th-cf-details .8s 2.2s ease-out both; }
@keyframes th-cf-sketch-draw { from { stroke-dasharray:1; stroke-dashoffset:1; } to { stroke-dasharray:1; stroke-dashoffset:0; } }
@media (prefers-reduced-motion:reduce) {
  .th-commercial-financing-page .th-cf-drawing.is-sketch-playing :is(.th-cf-sketch-outline,.th-cf-sketch-windows,.th-cf-sketch-measure) { animation:none!important; }
}

/* ISLAMIC FINANCING — a geometric cover and an editorial reading guide. Page-scoped. */
.th-islamic-financing-page { --if-gold:#e6c68f; --if-warm:#ede2cc; }
.th-islamic-financing-page :is(article,section > div) { min-width:0; }
.th-islamic-financing-page .th-if-caption { display:block; font-size:11px; font-weight:600; letter-spacing:.1em; line-height:1.65; color:#886935; }
.th-islamic-financing-page .th-if-button { display:inline-flex; align-items:center; justify-content:center; gap:18px; max-width:100%; min-height:50px; padding:14px 24px; border:1px solid transparent; border-radius:999px; background:var(--financing-ink); color:#fff; font:600 14px/1.5 Inter,Arial,sans-serif; text-decoration:none; cursor:pointer; }
.th-islamic-financing-page .th-if-button:hover { color:#fff; background:#303a3d; }
.th-islamic-financing-page .th-if-button > span { font-size:20px; color:var(--if-gold); }
.th-islamic-financing-page .th-if-button--light { color:var(--financing-ink); background:#fff; }
.th-islamic-financing-page .th-if-button--light:hover { color:var(--financing-ink); background:#f2eadb; }
.th-islamic-financing-page .th-if-button--light > span { color:#886935; }
.th-islamic-financing-page .th-if-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px 25px; }
.th-islamic-financing-page .th-if-cover { overflow:hidden; border-radius:24px; background:var(--financing-night); }
.th-islamic-financing-page .th-if-cover__edition { display:flex; justify-content:space-between; gap:20px; margin-bottom:35px; padding-bottom:20px; border-bottom:1px solid #53606a; color:#d3dee4; font-size:11px; letter-spacing:.1em; line-height:1.6; }
.th-islamic-financing-page .th-if-cover__layout { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr); align-items:center; gap:50px; padding:10px 0 35px; }
.th-islamic-financing-page .th-if-cover h1 { color:#fff; font-size:clamp(46px,4.3vw,74px); }
.th-islamic-financing-page .th-if-cover :is(h1 em,.th-financing-eyebrow) { color:var(--if-gold); }
.th-islamic-financing-page .th-if-cover .th-financing-eyebrow > span { background:var(--if-gold); }
.th-islamic-financing-page .th-if-cover__layout > div > p:not(.th-financing-eyebrow) { max-width:650px; margin-bottom:30px; color:#d3dee4; }
.th-islamic-financing-page .th-if-cover__geometry { color:var(--if-gold); text-align:center; }
.th-islamic-financing-page .th-if-cover__geometry svg { display:block; width:100%; max-width:320px; height:auto; margin:0 auto 22px; }
.th-islamic-financing-page .th-if-cover__geometry > span { font-size:10px; letter-spacing:.1em; line-height:1.8; }
.th-islamic-financing-page .th-if-cover__anchors { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #53606a; }
.th-islamic-financing-page .th-if-cover__anchors a { display:flex; align-items:center; gap:15px; min-width:0; padding:23px 18px; color:#fff; font-size:14px; line-height:1.5; text-decoration:none; }
.th-islamic-financing-page .th-if-cover__anchors a:first-child { padding-left:0; }
.th-islamic-financing-page .th-if-cover__anchors a + a { border-left:1px solid #53606a; }
.th-islamic-financing-page .th-if-cover__anchors a:hover { background:#ffffff09; color:#fff; }
.th-islamic-financing-page .th-if-cover__anchors :is(span,b) { color:var(--if-gold); font-weight:400; }
.th-islamic-financing-page .th-if-cover__anchors span { font-size:11px; }
.th-islamic-financing-page .th-if-cover__anchors b { margin-left:auto; font-size:20px; }
.th-islamic-financing-page .th-financing-shell > section.th-if-note { display:grid; grid-template-columns:55px minmax(0,1fr) minmax(0,.85fr); align-items:start; gap:30px; padding:22px 0; }
.th-islamic-financing-page .th-if-note__mark { color:#886935; font:64px/1 Georgia,serif; }
.th-islamic-financing-page .th-if-note h2 { margin:0; }
.th-islamic-financing-page .th-if-note p:last-child { margin-bottom:0; }
.th-islamic-financing-page .th-financing-shell > section.th-if-terms { display:grid; grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr); gap:55px; padding:22px 0; }
.th-islamic-financing-page .th-if-terms__intro > p { max-width:400px; }
.th-islamic-financing-page .th-if-terms__intro .th-if-caption { margin-top:30px; }
.th-islamic-financing-page .th-if-terms details { padding:0 27px; border-bottom:1px solid var(--financing-line); }
.th-islamic-financing-page .th-if-terms details:first-child { border-top:1px solid var(--financing-line); }
.th-islamic-financing-page .th-if-terms details[open] { border-radius:18px; background:#fff; }
.th-islamic-financing-page .th-if-terms summary { display:grid; grid-template-columns:25px minmax(0,1fr) minmax(100px,.55fr) 18px; align-items:center; gap:20px; padding:28px 0; list-style:none; cursor:pointer; }
.th-islamic-financing-page .th-if-terms summary > span { color:#886935; font-size:11px; }
.th-islamic-financing-page .th-if-terms summary strong { font-size:23px; font-weight:500; line-height:1.3; letter-spacing:-.035em; }
.th-islamic-financing-page .th-if-terms summary small { color:var(--financing-muted); font-size:13px; line-height:1.5; }
.th-islamic-financing-page .th-if-terms summary b { font-size:24px; font-weight:400; color:#886935; }
.th-islamic-financing-page :is(.th-if-terms,.th-if-faq) summary::-webkit-details-marker { display:none; }
.th-islamic-financing-page .th-if-terms details[open] summary b { transform:rotate(45deg); }
.th-islamic-financing-page .th-if-terms details > div { padding:0 0 28px 45px; }
.th-islamic-financing-page .th-if-terms details h3 { font-size:16px; letter-spacing:0; }
.th-islamic-financing-page .th-if-terms ul { margin:0; padding-left:18px; color:var(--financing-muted); font-size:15px; }
.th-islamic-financing-page .th-if-terms li + li { margin-top:10px; }
.th-islamic-financing-page .th-if-offer { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:45px; border:1px solid #dccaa8; border-radius:24px; background:var(--if-warm); }
.th-islamic-financing-page .th-if-offer__heading > p:last-child { margin:0; }
.th-islamic-financing-page .th-if-offer__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
.th-islamic-financing-page .th-if-offer__grid article { padding-top:22px; border-top:1px solid #cdbb98; }
.th-islamic-financing-page .th-if-offer__grid article > span { display:block; margin-bottom:22px; color:#806333; font-size:11px; font-weight:600; letter-spacing:.1em; }
.th-islamic-financing-page .th-if-offer__grid p { font-size:15px; margin:0; color:#4e5c69; }
.th-islamic-financing-page .th-if-prepare { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:55px; border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-islamic-financing-page .th-if-prepare ol { list-style:none; padding:0; margin:0; border-top:1px solid var(--financing-line); }
.th-islamic-financing-page .th-if-prepare li { display:flex; gap:23px; padding:23px 0; border-bottom:1px solid var(--financing-line); }
.th-islamic-financing-page .th-if-prepare li > span { flex:0 0 25px; color:#886935; font-size:12px; }
.th-islamic-financing-page .th-if-prepare li h3 { margin-bottom:10px; }
.th-islamic-financing-page .th-if-prepare li p { margin:0; font-size:15px; }
.th-islamic-financing-page .th-financing-shell > section.th-if-related { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:55px; padding:22px 0; }
.th-islamic-financing-page .th-if-related h2 { margin:0; }
.th-islamic-financing-page .th-if-related__links { border-top:1px solid var(--financing-line); }
.th-islamic-financing-page .th-if-related__links a { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 0; border-bottom:1px solid var(--financing-line); color:var(--financing-ink); font-size:19px; line-height:1.5; text-decoration:none; }
.th-islamic-financing-page .th-if-related__links a:hover { text-decoration:underline; text-underline-offset:5px; }
.th-islamic-financing-page .th-if-related__links small { display:block; margin-bottom:6px; font-size:10px; color:#886935; letter-spacing:.1em; }
.th-islamic-financing-page .th-if-related__links b { color:#886935; font-size:24px; font-weight:400; }
.th-islamic-financing-page .th-if-faq { border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-islamic-financing-page .th-if-faq__heading { margin-bottom:30px; }
.th-islamic-financing-page .th-if-faq details { border-bottom:1px solid var(--financing-line); }
.th-islamic-financing-page .th-if-faq details:first-child { border-top:1px solid var(--financing-line); }
.th-islamic-financing-page .th-if-faq summary { display:flex; justify-content:space-between; align-items:center; gap:25px; min-height:70px; padding:23px 0; font-size:16px; font-weight:600; line-height:1.5; list-style:none; cursor:pointer; }
.th-islamic-financing-page .th-if-faq summary > span { flex:0 0 18px; color:#886935; font-size:24px; font-weight:400; }
.th-islamic-financing-page .th-if-faq details[open] summary > span { transform:rotate(45deg); }
.th-islamic-financing-page .th-if-faq details p { margin:0 25px 24px 0; max-width:1000px; }
.th-islamic-financing-page .th-if-close { display:flex; align-items:center; justify-content:space-between; gap:35px; border-radius:24px; background:var(--financing-night); }
.th-islamic-financing-page .th-if-close h2 { color:#fff; }
.th-islamic-financing-page .th-if-close :is(h2 em,.th-financing-eyebrow) { color:var(--if-gold); }
.th-islamic-financing-page .th-if-close .th-financing-eyebrow > span { background:var(--if-gold); }
.th-islamic-financing-page .th-if-close p:last-child { margin:0; color:#d3dee4; }
.th-islamic-financing-page .th-if-close > a { flex-shrink:0; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-islamic-financing-page .th-if-cover h1 { font-size:clamp(44px,4.2vw,57px); }
  .th-islamic-financing-page .th-if-cover__layout { gap:30px; }
  .th-islamic-financing-page .th-if-cover__geometry svg { max-width:255px; }
  .th-islamic-financing-page .th-if-terms summary { gap:15px; }
}
@media (max-width:1199px) {
  .th-islamic-financing-page .th-if-terms summary { grid-template-columns:22px minmax(0,1fr) 18px; gap:15px; }
  .th-islamic-financing-page .th-if-terms summary small { grid-column:2; grid-row:2; }
  .th-islamic-financing-page .th-if-terms summary b { grid-column:3; grid-row:1 / 3; }
}
@media (max-width:991px) {
  .th-islamic-financing-page .th-if-cover__layout { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-islamic-financing-page .th-if-cover__geometry svg { max-width:210px; }
  .th-islamic-financing-page .th-financing-shell > section:is(.th-if-note,.th-if-terms,.th-if-related) { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-islamic-financing-page .th-if-note__mark { display:none; }
  .th-islamic-financing-page :is(.th-if-offer,.th-if-prepare) { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-islamic-financing-page .th-if-close { flex-direction:column; align-items:start; gap:30px; }
}
@media (max-width:767px) {
  .th-islamic-financing-page .th-if-cover__edition { flex-direction:column; gap:9px; font-size:10px; margin-bottom:30px; }
  .th-islamic-financing-page .th-if-cover h1 { font-size:clamp(39px,10.3vw,58px); }
  .th-islamic-financing-page .th-if-cover__anchors { grid-template-columns:minmax(0,1fr); }
  .th-islamic-financing-page .th-if-cover__anchors a { padding:20px 0; }
  .th-islamic-financing-page .th-if-cover__anchors a + a { border-left:0; border-top:1px solid #53606a; }
  .th-islamic-financing-page .th-financing-shell > section:is(.th-if-note,.th-if-terms,.th-if-related) { padding:14px 5px; }
  .th-islamic-financing-page .th-if-terms details { padding:0 18px; }
  .th-islamic-financing-page .th-if-terms details > div { padding-left:0; }
  .th-islamic-financing-page .th-if-terms summary strong { font-size:21px; }
  .th-islamic-financing-page .th-if-offer__grid { grid-template-columns:minmax(0,1fr); }
}
@media (prefers-reduced-motion:reduce) { .th-islamic-financing-page *,.th-islamic-financing-page *::before,.th-islamic-financing-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

/* REFINANCING — an open review desk with a cash-flow comparison. Page-scoped. */
.th-refinancing-page { --rf-gold:#e6c68f; --rf-warm:#ede2cc; }
.th-refinancing-page :is(article,aside,section > div) { min-width:0; }
.th-refinancing-page .th-rf-caption { display:block; margin-bottom:22px; color:#886935; font-size:11px; font-weight:600; line-height:1.6; letter-spacing:.1em; }
.th-refinancing-page .th-rf-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px 25px; }
.th-refinancing-page .th-rf-button { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:50px; max-width:100%; padding:14px 23px; border:1px solid transparent; border-radius:999px; background:var(--financing-ink); color:#fff; font:600 14px/1.5 Inter,Arial,sans-serif; text-decoration:none; cursor:pointer; }
.th-refinancing-page .th-rf-button:hover { color:#fff; background:#303a3d; }
.th-refinancing-page .th-rf-button > span { color:var(--rf-gold); font-size:20px; }
.th-refinancing-page .th-rf-button--light { background:#fff; color:var(--financing-ink); }
.th-refinancing-page .th-rf-button--light:hover { background:#f2eadb; color:var(--financing-ink); }
.th-refinancing-page .th-rf-button--light > span { color:#886935; }
.th-refinancing-page .th-financing-shell > section.th-rf-opening { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr); align-items:center; gap:65px; padding:22px 0; }
.th-refinancing-page .th-rf-opening h1 { font-size:clamp(48px,4.6vw,78px); }
.th-refinancing-page .th-rf-opening > div > p:not(.th-financing-eyebrow) { max-width:660px; margin-bottom:30px; }
.th-refinancing-page .th-rf-review { padding-left:35px; border-left:1px solid var(--financing-line); }
.th-refinancing-page .th-rf-review__arrow { color:var(--financing-brown); font:150px/1 Georgia,serif; margin-bottom:25px; }
.th-refinancing-page .th-rf-review dl { margin:0; }
.th-refinancing-page .th-rf-review dl > div { padding:18px 0; border-top:1px solid var(--financing-line); }
.th-refinancing-page .th-rf-review dt { margin-bottom:9px; color:#886935; font-size:10px; letter-spacing:.1em; }
.th-refinancing-page .th-rf-review dd { margin:0; font-size:17px; }
.th-refinancing-page .th-rf-heading { display:flex; align-items:end; justify-content:space-between; gap:35px; margin-bottom:32px; }
.th-refinancing-page .th-rf-heading h2 { margin:0; }
.th-refinancing-page .th-rf-heading > p { max-width:425px; margin:0; }
.th-refinancing-page .th-financing-shell > section:is(.th-rf-reasons,.th-rf-comparison,.th-rf-journey,.th-rf-faq) { padding:22px 0; }
.th-refinancing-page .th-rf-reasons__list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; }
.th-refinancing-page .th-rf-reasons__list article { padding-top:25px; border-top:1px solid var(--financing-line); }
.th-refinancing-page .th-rf-reasons__list article > span { display:block; margin-bottom:25px; color:#886935; font:26px/1.3 Georgia,serif; }
.th-refinancing-page .th-rf-reasons__list p { margin:0; }
.th-refinancing-page .th-rf-check { border-radius:24px; background:var(--financing-night); }
.th-refinancing-page .th-rf-check :is(h2,h3) { color:#fff; }
.th-refinancing-page .th-rf-check :is(h2 em,.th-financing-eyebrow) { color:var(--rf-gold); }
.th-refinancing-page .th-rf-check .th-financing-eyebrow > span { background:var(--rf-gold); }
.th-refinancing-page .th-rf-check p { color:#d3dee4; }
.th-refinancing-page .th-rf-check__layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:45px; }
.th-refinancing-page .th-rf-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px 22px; }
.th-refinancing-page .th-rf-fields label { display:block; min-width:0; margin:0; color:#fff; font-size:15px; line-height:1.5; }
.th-refinancing-page .th-rf-fields label > span { display:block; margin-top:7px; color:#c4d0d8; font-size:10px; letter-spacing:.1em; }
.th-refinancing-page .th-rf-fields input { display:block; width:100%; min-width:0; height:54px; margin-top:10px; padding:12px 15px; border:1px solid #89969e; border-radius:9px; background:#fff; color:#171918; font:400 16px/1.5 Inter,Arial,sans-serif; }
.th-refinancing-page .th-rf-fields input::placeholder { color:#647184; opacity:1; }
.th-refinancing-page .th-rf-check__actions { display:flex; flex-wrap:wrap; align-items:center; gap:25px; margin-top:28px; }
.th-refinancing-page .th-rf-check .th-financing-link { color:#fff; }
.th-refinancing-page .th-rf-results { padding:25px 0 15px 35px; border-left:1px solid #64727b; }
.th-refinancing-page .th-rf-results .th-rf-caption { color:var(--rf-gold); }
.th-refinancing-page .th-rf-results h3 { font-size:clamp(25px,2.2vw,34px); }
.th-refinancing-page .th-rf-results dl { margin:27px 0 0; }
.th-refinancing-page .th-rf-results dl > div { padding:19px 0; border-top:1px solid #64727b; }
.th-refinancing-page .th-rf-results dt { color:#d3dee4; font-size:14px; }
.th-refinancing-page .th-rf-results dd { margin:9px 0 0; color:var(--rf-gold); font-size:clamp(22px,1.8vw,29px); font-weight:500; line-height:1.4; overflow-wrap:anywhere; }
.th-refinancing-page .th-rf-method { margin-top:25px; border-top:1px solid #64727b; }
.th-refinancing-page .th-rf-method summary { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:19px 0; color:#fff; font-size:14px; font-weight:500; list-style:none; cursor:pointer; }
.th-refinancing-page .th-rf-method summary > span { color:var(--rf-gold); font-size:22px; }
.th-refinancing-page .th-rf-method[open] summary > span { transform:rotate(45deg); }
.th-refinancing-page .th-rf-method p { margin:0 0 15px; font-size:14px; }
.th-refinancing-page .th-rf-check > p.th-rf-check__note { margin:27px 0 0; padding-top:23px; border-top:1px solid #64727b; font-size:14px; line-height:1.65; }
.th-refinancing-page .th-rf-comparison__spread { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px; border-block:1px solid var(--financing-line); padding:30px 0; }
.th-refinancing-page .th-rf-comparison__spread article + article { border-left:1px solid var(--financing-line); padding-left:40px; }
.th-refinancing-page .th-rf-comparison__spread dl { margin:23px 0 0; }
.th-refinancing-page .th-rf-comparison__spread dl > div { display:grid; grid-template-columns:110px minmax(0,1fr); gap:20px; padding:16px 0; border-top:1px solid var(--financing-line); }
.th-refinancing-page .th-rf-comparison__spread dt { font-size:14px; font-weight:600; }
.th-refinancing-page .th-rf-comparison__spread dd { margin:0; color:var(--financing-muted); font-size:15px; }
.th-refinancing-page .th-rf-costs { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:55px; border:1px solid #dccaa8; border-radius:24px; background:var(--rf-warm); }
.th-refinancing-page .th-rf-costs > div > p:last-child { margin:0; }
.th-refinancing-page .th-rf-costs ul { margin:0; padding:0; list-style:none; border-top:1px solid #cdbb98; }
.th-refinancing-page .th-rf-costs li { display:flex; gap:25px; padding:23px 0; border-bottom:1px solid #cdbb98; }
.th-refinancing-page .th-rf-costs li > span { flex:0 0 23px; color:#806333; font-size:11px; }
.th-refinancing-page .th-rf-costs li p { margin:0; font-size:15px; color:#4e5c69; }
.th-refinancing-page .th-rf-costs li h3 { margin-bottom:10px; }
.th-refinancing-page .th-financing-shell > section.th-rf-journey { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:70px; }
.th-refinancing-page .th-rf-journey ol { margin:0; padding:0; list-style:none; }
.th-refinancing-page .th-rf-journey li { position:relative; display:flex; gap:25px; padding:0 0 32px; }
.th-refinancing-page .th-rf-journey li:last-child { padding-bottom:0; }
.th-refinancing-page .th-rf-journey li:not(:last-child)::before { position:absolute; top:35px; bottom:0; left:18px; width:1px; background:#cbb995; content:""; }
.th-refinancing-page .th-rf-journey li > span { display:flex; flex:0 0 37px; align-items:center; justify-content:center; height:37px; border:1px solid #cbb995; border-radius:50%; color:#886935; font-size:11px; }
.th-refinancing-page .th-rf-journey h3 { margin:4px 0 12px; }
.th-refinancing-page .th-rf-journey li p { margin:0; font-size:15px; }
.th-refinancing-page .th-financing-shell > section.th-rf-faq { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:60px; border-top:1px solid var(--financing-line); }
.th-refinancing-page .th-rf-faq details { border-bottom:1px solid var(--financing-line); }
.th-refinancing-page .th-rf-faq summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:70px; padding:23px 0; font-size:16px; font-weight:600; line-height:1.5; list-style:none; cursor:pointer; }
.th-refinancing-page :is(.th-rf-faq,.th-rf-method) summary::-webkit-details-marker { display:none; }
.th-refinancing-page .th-rf-faq summary > span { flex:0 0 18px; color:#886935; font-size:24px; font-weight:400; }
.th-refinancing-page .th-rf-faq details[open] summary > span { transform:rotate(45deg); }
.th-refinancing-page .th-rf-faq details p { margin:0 25px 24px 0; font-size:15px; }
.th-refinancing-page .th-rf-close { display:flex; align-items:center; justify-content:space-between; gap:40px; border-radius:24px; background:var(--financing-night); }
.th-refinancing-page .th-rf-close h2 { color:#fff; }
.th-refinancing-page .th-rf-close :is(h2 em,.th-financing-eyebrow) { color:var(--rf-gold); }
.th-refinancing-page .th-rf-close .th-financing-eyebrow > span { background:var(--rf-gold); }
.th-refinancing-page .th-rf-close p:last-child { margin:0; color:#d3dee4; }
.th-refinancing-page .th-rf-close__links { display:flex; flex-direction:column; align-items:start; gap:24px; }
.th-refinancing-page .th-rf-close .th-financing-link { color:#fff; }
.th-refinancing-page .th-rf-close .th-financing-link > span { color:var(--rf-gold); }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-refinancing-page .th-financing-shell > section.th-rf-opening { gap:40px; }
  .th-refinancing-page .th-rf-opening h1 { font-size:clamp(47px,4.5vw,61px); }
  .th-refinancing-page .th-rf-review__arrow { font-size:120px; }
  .th-refinancing-page .th-rf-check__layout { gap:30px; }
  .th-refinancing-page .th-rf-results { padding-left:25px; }
}
@media (max-width:1199px) {
  .th-refinancing-page .th-rf-heading { align-items:start; flex-direction:column; gap:20px; }
  .th-refinancing-page .th-rf-heading > p { max-width:650px; }
  .th-refinancing-page .th-rf-comparison__spread dl > div { grid-template-columns:minmax(0,1fr); gap:8px; }
}
@media (max-width:991px) {
  .th-refinancing-page .th-financing-shell > section:is(.th-rf-opening,.th-rf-journey,.th-rf-faq) { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-refinancing-page .th-rf-review { padding:25px 0 0; border-left:0; border-top:1px solid var(--financing-line); }
  .th-refinancing-page .th-rf-review__arrow { display:none; }
  .th-refinancing-page .th-rf-check__layout,.th-refinancing-page .th-rf-costs { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-refinancing-page .th-rf-results { padding:25px 0 0; border-left:0; border-top:1px solid #64727b; }
  .th-refinancing-page .th-rf-close { flex-direction:column; align-items:start; gap:30px; }
}
@media (max-width:767px) {
  .th-refinancing-page .th-financing-shell > section:is(.th-rf-opening,.th-rf-reasons,.th-rf-comparison,.th-rf-journey,.th-rf-faq) { padding:14px 5px; }
  .th-refinancing-page .th-rf-opening h1 { font-size:clamp(40px,10.5vw,62px); }
  .th-refinancing-page :is(.th-rf-reasons__list,.th-rf-fields,.th-rf-comparison__spread) { grid-template-columns:minmax(0,1fr); gap:25px; }
  .th-refinancing-page .th-rf-comparison__spread article + article { border-left:0; border-top:1px solid var(--financing-line); padding:27px 0 0; }
  .th-refinancing-page .th-rf-journey li { gap:18px; }
}
@media (prefers-reduced-motion:reduce) { .th-refinancing-page *,.th-refinancing-page *::before,.th-refinancing-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

/* COMPARE BANK RATES — a sourced UAE comparison desk. Page-scoped. */
.th-bank-rates-page { --br-gold:#e6c68f; --br-warm:#ede2cc; }
.th-bank-rates-page :is(article,aside,section > div) { min-width:0; }
.th-bank-rates-page .th-br-caption { display:block; margin-bottom:17px; color:#886935; font-size:10px; font-weight:600; line-height:1.6; letter-spacing:.1em; }
.th-bank-rates-page .th-br-button { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:50px; max-width:100%; padding:14px 23px; border:1px solid transparent; border-radius:999px; background:var(--financing-ink); color:#fff; font:600 14px/1.5 Inter,Arial,sans-serif; text-decoration:none; cursor:pointer; }
.th-bank-rates-page .th-br-button:hover { color:#fff; background:#303a3d; }
.th-bank-rates-page .th-br-button > span { color:var(--br-gold); font-size:20px; }
.th-bank-rates-page .th-br-button:disabled { opacity:.45; cursor:not-allowed; }
.th-bank-rates-page .th-br-button--light { background:#fff; color:var(--financing-ink); }
.th-bank-rates-page .th-br-button--light:hover { background:#f2eadb; color:var(--financing-ink); }
.th-bank-rates-page .th-br-button--light > span { color:#886935; }
.th-bank-rates-page .th-financing-shell > section.th-br-opening { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr); align-items:center; gap:70px; padding:22px 0; }
.th-bank-rates-page .th-br-opening h1 { font-size:clamp(48px,4.4vw,76px); }
.th-bank-rates-page .th-br-opening > div > p:not(.th-financing-eyebrow) { max-width:700px; margin-bottom:30px; }
.th-bank-rates-page .th-br-opening aside { border-left:1px solid var(--financing-line); padding-left:35px; }
.th-bank-rates-page .th-br-opening ol { margin:0 0 25px; padding:0; list-style:none; }
.th-bank-rates-page .th-br-opening li { display:flex; align-items:center; gap:22px; padding:20px 0; border-bottom:1px solid var(--financing-line); font-size:24px; line-height:1.4; letter-spacing:-.03em; }
.th-bank-rates-page .th-br-opening li > span { color:#886935; font:22px/1.3 Georgia,serif; }
.th-bank-rates-page .th-br-opening aside > p:last-child { margin:0; font-size:14px; }
.th-bank-rates-page .th-br-opening aside strong { color:var(--financing-ink); font-weight:500; }
.th-bank-rates-page .th-br-heading { display:flex; align-items:end; justify-content:space-between; gap:35px; margin-bottom:30px; }
.th-bank-rates-page .th-br-heading h2 { margin:0; }
.th-bank-rates-page .th-br-heading > p { max-width:460px; margin:0; font-size:15px; }
.th-bank-rates-page .th-br-board { border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-bank-rates-page .th-br-controls { display:flex; align-items:end; flex-wrap:wrap; gap:20px; margin-bottom:24px; }
.th-bank-rates-page .th-br-controls label { display:block; flex:0 1 260px; min-width:0; margin:0; color:var(--financing-ink); font-size:14px; }
.th-bank-rates-page .th-br-controls select { display:block; width:100%; min-width:0; height:50px; padding:10px 14px; margin-top:9px; border:1px solid #cdbfa6; border-radius:8px; background:#fcfaf7; color:var(--financing-ink); font:400 15px/1.5 Inter,Arial,sans-serif; }
.th-bank-rates-page .th-br-controls p { margin:0 0 10px auto; font-size:14px; }
.th-bank-rates-page .th-br-board__context { font-size:14px; margin-bottom:25px; }
.th-bank-rates-page .th-br-column-head { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,1fr) minmax(0,.65fr); gap:28px; padding:17px 0; border-block:1px solid var(--financing-line); color:#886935; font-size:10px; letter-spacing:.1em; font-weight:600; }
.th-bank-rates-page .th-br-bank { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,1fr) minmax(0,.65fr); gap:20px 28px; padding:30px 0; border-bottom:1px solid var(--financing-line); }
.th-bank-rates-page .th-br-bank h3 { font-size:21px; margin:16px 0 12px; }
.th-bank-rates-page .th-br-bank p { margin:0; font-size:14px; }
.th-bank-rates-page .th-br-bank__initials { display:inline-block; min-width:49px; padding:7px 10px; border:1px solid #cdbfa6; border-radius:7px; color:#886935; font-size:12px; font-weight:600; line-height:1.6; }
.th-bank-rates-page .th-br-rate { display:block; margin-bottom:15px; color:var(--financing-ink); font-size:clamp(25px,2vw,34px); font-weight:500; line-height:1.25; letter-spacing:-.035em; }
.th-bank-rates-page .th-br-rate small { font-size:12px; font-weight:400; letter-spacing:0; }
.th-bank-rates-page .th-br-rate--text { font-size:24px; }
.th-bank-rates-page .th-br-bank__review { display:flex; flex-direction:column; align-items:start; gap:22px; }
.th-bank-rates-page .th-br-select { display:flex; align-items:start; gap:10px; margin:0; font-size:14px; line-height:1.5; cursor:pointer; }
.th-bank-rates-page .th-br-select input { flex:0 0 19px; width:19px; height:19px; margin:2px 0 0; accent-color:#886935; }
.th-bank-rates-page .th-br-bank a { color:#806333; font-size:14px; font-weight:500; line-height:1.6; text-decoration:underline; text-underline-offset:4px; }
.th-bank-rates-page .th-br-bank details { grid-column:1 / -1; }
.th-bank-rates-page .th-br-bank summary { display:flex; align-items:center; gap:18px; width:fit-content; max-width:100%; padding:8px 0; font-size:14px; font-weight:500; line-height:1.5; list-style:none; cursor:pointer; }
.th-bank-rates-page .th-br-bank summary > span { color:#886935; font-size:22px; }
.th-bank-rates-page .th-br-bank details[open] summary > span { transform:rotate(45deg); }
.th-bank-rates-page .th-br-bank details > p { max-width:1100px; margin:12px 0 0; padding:20px; border-left:2px solid #ac8d56; background:#f5f1e9; }
.th-bank-rates-page .th-br-selection { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:25px; margin-top:28px; }
.th-bank-rates-page .th-br-selection > span { font-size:14px; }
.th-bank-rates-page .th-br-selection > div { display:flex; align-items:center; flex-wrap:wrap; gap:25px; }
.th-bank-rates-page #th-br-empty { padding:25px 0; margin:0; }
.th-bank-rates-page .th-br-shortlist { border-radius:24px; background:var(--financing-night); }
.th-bank-rates-page .th-br-shortlist :is(h2,h3) { color:#fff; }
.th-bank-rates-page .th-br-shortlist :is(h2 em,.th-financing-eyebrow,.th-br-caption) { color:var(--br-gold); }
.th-bank-rates-page .th-br-shortlist .th-financing-eyebrow > span { background:var(--br-gold); }
.th-bank-rates-page .th-br-shortlist p { color:#d3dee4; }
.th-bank-rates-page .th-br-shortlist__grid { display:grid; grid-template-columns:repeat(var(--br-columns,3),minmax(0,1fr)); gap:30px; }
.th-bank-rates-page .th-br-shortlist__grid article { padding-top:24px; border-top:1px solid #64727b; }
.th-bank-rates-page .th-br-shortlist__grid h3 { margin-bottom:22px; }
.th-bank-rates-page .th-br-shortlist__grid p { font-size:15px; }
.th-bank-rates-page .th-br-shortlist__grid .th-br-rate { color:var(--br-gold); }
.th-bank-rates-page .th-br-shortlist__grid a { color:#fff; font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.th-bank-rates-page .th-br-shortlist > p.th-br-small { font-size:14px; margin:25px 0 0; padding-top:23px; border-top:1px solid #64727b; }
.th-bank-rates-page .th-financing-shell > section.th-br-reading { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:65px; padding:22px 0; }
.th-bank-rates-page .th-br-reading ol { margin:0; padding:0; list-style:none; border-top:1px solid var(--financing-line); }
.th-bank-rates-page .th-br-reading li { display:flex; gap:25px; padding:23px 0; border-bottom:1px solid var(--financing-line); }
.th-bank-rates-page .th-br-reading li > span { flex:0 0 23px; color:#886935; font-size:11px; }
.th-bank-rates-page .th-br-reading li h3 { margin-bottom:10px; }
.th-bank-rates-page .th-br-reading li p { margin:0; font-size:15px; }
.th-bank-rates-page .th-br-emirates { border:1px solid #dccaa8; border-radius:24px; background:var(--br-warm); }
.th-bank-rates-page .th-br-emirates__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.th-bank-rates-page .th-br-emirates__grid article { padding-top:25px; border-top:1px solid #cdbb98; }
.th-bank-rates-page .th-br-emirates__grid p { font-size:15px; color:#4e5c69; }
.th-bank-rates-page .th-financing-shell > section.th-br-faq { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:60px; padding:22px 0; }
.th-bank-rates-page .th-br-faq details { border-bottom:1px solid var(--financing-line); }
.th-bank-rates-page .th-br-faq details:first-child { border-top:1px solid var(--financing-line); }
.th-bank-rates-page .th-br-faq summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:70px; padding:23px 0; font-size:16px; font-weight:600; line-height:1.5; list-style:none; cursor:pointer; }
.th-bank-rates-page :is(.th-br-bank,.th-br-faq) summary::-webkit-details-marker { display:none; }
.th-bank-rates-page .th-br-faq summary > span { flex:0 0 18px; color:#886935; font-size:24px; font-weight:400; }
.th-bank-rates-page .th-br-faq details[open] summary > span { transform:rotate(45deg); }
.th-bank-rates-page .th-br-faq details p { margin:0 25px 24px 0; font-size:15px; }
.th-bank-rates-page .th-br-close { display:flex; align-items:center; justify-content:space-between; gap:40px; border-radius:24px; background:var(--financing-night); }
.th-bank-rates-page .th-br-close h2 { color:#fff; }
.th-bank-rates-page .th-br-close :is(h2 em,.th-financing-eyebrow) { color:var(--br-gold); }
.th-bank-rates-page .th-br-close .th-financing-eyebrow > span { background:var(--br-gold); }
.th-bank-rates-page .th-br-close p:last-child { margin:0; color:#d3dee4; }
.th-bank-rates-page .th-br-close > a { flex-shrink:0; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-bank-rates-page .th-financing-shell > section.th-br-opening { gap:40px; }
  .th-bank-rates-page .th-br-opening h1 { font-size:clamp(47px,4.4vw,60px); }
  .th-bank-rates-page :is(.th-br-bank,.th-br-column-head) { gap:20px; }
  .th-bank-rates-page .th-br-rate { font-size:27px; }
  .th-bank-rates-page .th-br-rate--text { font-size:23px; }
}
@media (max-width:1199px) {
  .th-bank-rates-page .th-br-heading { flex-direction:column; align-items:start; gap:20px; }
  .th-bank-rates-page .th-br-heading > p { max-width:700px; }
  .th-bank-rates-page .th-br-column-head { display:none; }
  .th-bank-rates-page .th-br-bank { grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px; }
}
@media (max-width:991px) {
  .th-bank-rates-page .th-financing-shell > section:is(.th-br-opening,.th-br-reading,.th-br-faq) { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-bank-rates-page .th-br-opening aside { padding:25px 0 0; border-left:0; border-top:1px solid var(--financing-line); }
  .th-bank-rates-page .th-br-emirates__grid { grid-template-columns:minmax(0,1fr); }
  .th-bank-rates-page .th-br-shortlist__grid { grid-template-columns:minmax(0,1fr); }
  .th-bank-rates-page .th-br-close { flex-direction:column; align-items:start; gap:30px; }
}
@media (max-width:767px) {
  .th-bank-rates-page .th-financing-shell > section:is(.th-br-opening,.th-br-reading,.th-br-faq) { padding:14px 5px; }
  .th-bank-rates-page .th-br-opening h1 { font-size:clamp(40px,10.3vw,60px); }
  .th-bank-rates-page .th-br-controls { align-items:stretch; flex-direction:column; gap:18px; }
  .th-bank-rates-page .th-br-controls label { flex:auto; width:100%; }
  .th-bank-rates-page .th-br-controls p { margin:0; }
  .th-bank-rates-page .th-br-bank { grid-template-columns:minmax(0,1fr); gap:25px; }
  .th-bank-rates-page .th-br-bank details { grid-column:1; }
  .th-bank-rates-page .th-br-bank__review { gap:18px; }
  .th-bank-rates-page .th-br-rate { font-size:30px; }
}
@media (prefers-reduced-motion:reduce) { .th-bank-rates-page *,.th-bank-rates-page *::before,.th-bank-rates-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

/* MORTGAGE CALCULATOR — a payment workbench adapted from the index calculator.
   Every rule is scoped to this page. Shared header/footer and other pages stay intact. */
.th-mortgage-calculator-page { --mc-gold:#e6c68f; --mc-paper:#f5f1e8; }
.th-mortgage-calculator-page .th-financing-shell > section.th-mc-intro { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,.65fr); gap:50px; align-items:end; padding:20px 0 15px; }
.th-mortgage-calculator-page .th-mc-intro h1 { max-width:1050px; font-size:clamp(45px,4.1vw,70px); }
.th-mortgage-calculator-page .th-mc-intro > div > p:last-child { max-width:750px; margin:0; }
.th-mortgage-calculator-page .th-mc-intro__note { padding:24px 0 12px 30px; border-left:1px solid var(--financing-line); }
.th-mortgage-calculator-page .th-mc-intro__note > span { display:block; margin-bottom:20px; font-size:12px; font-weight:600; letter-spacing:.09em; color:#886935; }
.th-mortgage-calculator-page .th-mc-intro__note p { font-family:Georgia,serif; font-size:24px; color:var(--financing-ink); line-height:1.4; }
.th-mortgage-calculator-page .th-financing-shell > section.tm-mortgage-section { width:100%; border:1px solid var(--financing-line); border-radius:24px; background:#fff; --tm-ink:#171918; --tm-muted:#647184; --tm-line:#ded8cc; --tm-accent:#ac8d56; }
.th-mortgage-calculator-page .tm-mortgage-inner { width:100%; max-width:none; margin:0; }
.th-mortgage-calculator-page .tm-heading-row { display:flex; align-items:center; justify-content:space-between; gap:25px; margin-bottom:32px; }
.th-mortgage-calculator-page .tm-eyebrow { display:block; margin-bottom:15px; color:#886935; font-size:12px; font-weight:700; letter-spacing:.11em; }
.th-mortgage-calculator-page .tm-mortgage-title { margin-bottom:14px; font-size:clamp(32px,3vw,46px); }
.th-mortgage-calculator-page .tm-intro { margin:0; font-size:16px; }
.th-mortgage-calculator-page .tm-mortgage-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr); align-items:start; gap:40px; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.th-mortgage-calculator-page .tm-control-group { min-width:0; margin:0 0 24px; padding:0; border:0; }
.th-mortgage-calculator-page :is(.tm-control-group legend,.tm-field label,.tm-duration label) { display:block; width:auto; float:none; margin:0 0 10px; padding:0; font-size:15px; font-weight:600; line-height:1.5; color:var(--financing-ink); }
.th-mortgage-calculator-page .tm-segmented { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; padding:5px; border:1px solid var(--financing-line); border-radius:12px; background:var(--mc-paper); }
.th-mortgage-calculator-page .tm-segmented-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.th-mortgage-calculator-page .tm-choice { min-width:0; min-height:48px; padding:9px 8px; border:0; border-radius:8px; background:transparent; color:var(--financing-ink); font:inherit; font-size:14px; line-height:1.4; cursor:pointer; }
.th-mortgage-calculator-page .tm-choice.is-active { background:#fff; color:#725626; box-shadow:0 2px 6px #19263015; }
.th-mortgage-calculator-page .th-mc-input-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.th-mortgage-calculator-page .tm-field { min-width:0; margin:0 0 24px; }
.th-mortgage-calculator-page .tm-input-wrap { display:flex; min-height:52px; border:1px solid #c8bfae; border-radius:9px; background:#fff; overflow:hidden; }
.th-mortgage-calculator-page .tm-input-wrap input { width:100%; min-width:0; height:auto; margin:0; padding:12px; border:0; border-radius:0; color:var(--financing-ink); background:transparent; font:inherit; font-size:16px; line-height:1.5; box-shadow:none; }
.th-mortgage-calculator-page .tm-currency { display:grid; min-width:55px; padding:0 9px; border-left:1px solid #ded8cc; place-items:center; font-size:12px; color:#647184; }
.th-mortgage-calculator-page .tm-help { display:block; margin-top:8px; color:#ad3225; font-size:13px; line-height:1.5; }
.th-mortgage-calculator-page .tm-help:empty { display:none; }
.th-mortgage-calculator-page .th-mc-hint { display:block; margin-top:9px; color:var(--financing-muted); font-size:13px; line-height:1.6; }
.th-mortgage-calculator-page .tm-duration { margin:8px 0 28px; }
.th-mortgage-calculator-page .tm-duration-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:18px; }
.th-mortgage-calculator-page .tm-duration label { margin:0; }
.th-mortgage-calculator-page .tm-duration output { font-size:15px; font-weight:600; }
.th-mortgage-calculator-page .tm-range { width:100%; height:8px; padding:0; border:0; margin:0; accent-color:#ac8d56; }
.th-mortgage-calculator-page .tm-range-labels { display:flex; justify-content:space-between; margin-top:12px; font-size:13px; color:var(--financing-muted); }
.th-mortgage-calculator-page :is(.th-mc-extra,.th-mc-table-details) { border-top:1px solid var(--financing-line); }
.th-mortgage-calculator-page summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 0; list-style:none; cursor:pointer; font-size:16px; font-weight:600; line-height:1.5; color:var(--financing-ink); }
.th-mortgage-calculator-page summary::-webkit-details-marker { display:none; }
.th-mortgage-calculator-page summary > span { flex-shrink:0; font-size:22px; font-weight:400; color:#886935; transition:transform .2s; }
.th-mortgage-calculator-page details[open] > summary > span { transform:rotate(45deg); }
.th-mortgage-calculator-page .th-mc-extra .tm-field { margin:4px 0 0; }
.th-mortgage-calculator-page .tm-mortgage-results { display:flex; flex-direction:column; min-width:0; padding:30px; border:0; border-radius:18px; background:var(--financing-night); color:#fff; }
.th-mortgage-calculator-page .tm-result-topline { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:24px; }
.th-mortgage-calculator-page .tm-result-caption { color:#d3dee4; font-size:11px; font-weight:600; letter-spacing:.08em; }
.th-mortgage-calculator-page .tm-ltv-badge { padding:7px 10px; border:1px solid #65717a; border-radius:999px; color:var(--mc-gold); background:transparent; font-size:12px; white-space:normal; }
.th-mortgage-calculator-page .tm-summary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.th-mortgage-calculator-page .tm-summary-item { min-width:0; padding:0; border:0; border-radius:0; background:transparent; }
.th-mortgage-calculator-page .tm-summary-item span { display:block; margin-bottom:10px; font-size:13px; line-height:1.5; color:#c9d5dc; }
.th-mortgage-calculator-page .tm-summary-item strong { display:block; font-size:clamp(18px,1.7vw,25px); line-height:1.3; color:#fff; overflow-wrap:anywhere; }
.th-mortgage-calculator-page .tm-result-divider { height:1px; margin:26px 0; background:#ffffff30; }
.th-mortgage-calculator-page .tm-result-label { display:block; margin-bottom:10px; font-size:14px; color:#c9d5dc; }
.th-mortgage-calculator-page .tm-result strong { display:block; font-size:clamp(26px,2.5vw,39px); font-weight:600; color:#fff; line-height:1.2; overflow-wrap:anywhere; }
.th-mortgage-calculator-page .tm-monthly-result { margin-top:26px; }
.th-mortgage-calculator-page .tm-monthly-result strong { font-size:clamp(32px,3.6vw,54px); color:var(--mc-gold); }
.th-mortgage-calculator-page .th-mc-result-lines { margin-top:26px; border-top:1px solid #ffffff30; }
.th-mortgage-calculator-page .th-mc-result-lines > div { display:flex; align-items:start; justify-content:space-between; gap:20px; padding:15px 0; border-bottom:1px solid #ffffff30; font-size:13px; line-height:1.5; }
.th-mortgage-calculator-page .th-mc-result-lines span { color:#c9d5dc; }
.th-mortgage-calculator-page .th-mc-result-lines strong { text-align:right; overflow-wrap:anywhere; }
.th-mortgage-calculator-page .tm-policy-note { min-height:0; margin:22px 0; color:#e6c68f; font-size:14px; line-height:1.6; }
.th-mortgage-calculator-page .tm-options-button { display:flex; justify-content:space-between; min-height:50px; padding:13px 20px; border:0; border-radius:999px; background:#fff; color:#171918; font-size:15px; text-decoration:none; }
.th-mortgage-calculator-page .tm-options-button:hover { background:#f4efe6; color:#171918; }
.th-mortgage-calculator-page .tm-disclaimer { margin:20px 0 0; color:#c9d5dc; font-size:13px; line-height:1.6; }
.th-mortgage-calculator-page .th-financing-shell > section.th-mc-schedule { padding:24px 0; }
.th-mortgage-calculator-page .th-mc-section-head { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-bottom:28px; }
.th-mortgage-calculator-page .th-mc-section-head h2 { margin-bottom:0; }
.th-mortgage-calculator-page .th-mc-schedule-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr); align-items:center; gap:50px; }
.th-mortgage-calculator-page .th-mc-chart { margin:0; }
.th-mortgage-calculator-page .th-mc-chart svg { display:block; width:100%; height:auto; }
.th-mortgage-calculator-page .th-mc-chart figcaption { display:flex; flex-wrap:wrap; gap:15px 24px; font-size:13px; color:var(--financing-muted); }
.th-mortgage-calculator-page .th-mc-chart figcaption span { display:flex; align-items:center; gap:9px; }
.th-mortgage-calculator-page .th-mc-chart i { width:19px; height:3px; background:#192630; }
.th-mortgage-calculator-page .th-mc-chart span:last-child i { background:#ac8d56; }
.th-mortgage-calculator-page .th-mc-extra-note { margin:23px 0 0; font-size:14px; }
.th-mortgage-calculator-page .th-mc-timeline > div { padding:21px 0; border-top:1px solid var(--financing-line); }
.th-mortgage-calculator-page .th-mc-timeline span { display:block; font-size:14px; color:var(--financing-muted); }
.th-mortgage-calculator-page .th-mc-timeline strong { display:block; margin-top:7px; font-size:24px; font-weight:600; line-height:1.3; }
.th-mortgage-calculator-page .th-mc-table-details { margin-top:30px; }
.th-mortgage-calculator-page .th-mc-table-scroll { max-width:100%; overflow:auto; }
.th-mortgage-calculator-page table { width:100%; min-width:620px; border-collapse:collapse; font-size:14px; }
.th-mortgage-calculator-page :is(th,td) { padding:15px 18px; text-align:right; border-bottom:1px solid var(--financing-line); }
.th-mortgage-calculator-page :is(th,td):first-child { text-align:left; }
.th-mortgage-calculator-page th { background:#f5f1e8; color:#171918; }
.th-mortgage-calculator-page caption { caption-side:top; text-align:left; padding:0 0 18px; font-size:13px; color:var(--financing-muted); }
.th-mortgage-calculator-page .th-mc-costs { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:50px; align-items:start; border-radius:24px; background:#806637; }
.th-mortgage-calculator-page .th-mc-costs :is(h2,h2 em,p,.th-financing-eyebrow) { color:#fff; }
.th-mortgage-calculator-page .th-mc-costs .th-financing-eyebrow > span { background:var(--mc-gold); }
.th-mortgage-calculator-page .th-mc-fee-fields { display:grid; gap:22px; margin:25px 0; }
.th-mortgage-calculator-page .th-mc-fee-fields label { display:block; margin:0; font-size:15px; font-weight:500; color:#fff; }
.th-mortgage-calculator-page .th-mc-fee-fields :is(input,select) { display:block; width:100%; min-width:0; height:auto; min-height:52px; margin:10px 0 0; padding:12px; border:1px solid #c8bfae; border-radius:9px; background:#fff; color:#171918; font:inherit; font-size:16px; line-height:1.5; }
.th-mortgage-calculator-page .th-mc-fee-fields select { padding-right:30px; }
.th-mortgage-calculator-page .th-mc-fee-fields small { display:block; margin-top:10px; font-size:13px; font-weight:400; line-height:1.6; }
.th-mortgage-calculator-page .th-mc-fee-fields .tm-help { color:#fff; }
.th-mortgage-calculator-page .th-mc-source { font-size:13px; line-height:1.7; }
.th-mortgage-calculator-page .th-mc-source a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.th-mortgage-calculator-page .th-mc-cost-ledger { padding:30px; border:1px solid #ffffff50; border-radius:16px; color:#fff; }
.th-mortgage-calculator-page .th-mc-cost-ledger > span { display:block; font-size:12px; letter-spacing:.08em; }
.th-mortgage-calculator-page .th-mc-cost-ledger dl { margin:25px 0 30px; }
.th-mortgage-calculator-page .th-mc-cost-ledger dl > div { display:flex; align-items:start; justify-content:space-between; gap:25px; padding:20px 0; border-bottom:1px solid #ffffff45; font-size:15px; }
.th-mortgage-calculator-page .th-mc-cost-ledger dt { font-weight:400; }
.th-mortgage-calculator-page .th-mc-cost-ledger dd { margin:0; text-align:right; font-weight:600; overflow-wrap:anywhere; }
.th-mortgage-calculator-page .th-mc-cost-ledger > strong { display:block; margin:15px 0 20px; font-size:clamp(30px,3vw,45px); line-height:1.2; overflow-wrap:anywhere; }
.th-mortgage-calculator-page .th-mc-cost-ledger p { margin-bottom:0; font-size:13px; }
.th-mortgage-calculator-page .th-financing-shell > section.th-mc-guide { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:25px 60px; padding:24px 0; }
.th-mortgage-calculator-page .th-mc-guide-rows article { display:grid; grid-template-columns:30px minmax(0,1fr); gap:24px; padding:25px 0; border-top:1px solid var(--financing-line); }
.th-mortgage-calculator-page .th-mc-guide-rows article > span { font-size:14px; color:#886935; }
.th-mortgage-calculator-page .th-mc-guide-rows p { margin:0; font-size:15px; }
.th-mortgage-calculator-page .th-mc-guide > .th-mc-source { grid-column:1/-1; margin:0; padding-top:20px; border-top:1px solid var(--financing-line); }
.th-mortgage-calculator-page .th-financing-shell > section.th-mc-search { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:0; padding:0; overflow:hidden; border-radius:24px; background:var(--financing-night); }
.th-mortgage-calculator-page .th-mc-search figure { position:relative; min-height:330px; margin:0; }
.th-mortgage-calculator-page .th-mc-search img { position:absolute; inset:0; width:100%; height:100%; min-height:0; object-fit:cover; }
.th-mortgage-calculator-page .th-mc-search figcaption { position:absolute; bottom:25px; left:25px; padding:10px 13px; background:#192630d9; color:#fff; font-size:11px; letter-spacing:.09em; }
.th-mortgage-calculator-page .th-mc-search > div { padding:40px; }
.th-mortgage-calculator-page .th-mc-search :is(h2,.th-financing-link) { color:#fff; }
.th-mortgage-calculator-page .th-mc-search :is(h2 em,.th-financing-eyebrow) { color:var(--mc-gold); }
.th-mortgage-calculator-page .th-mc-search p:not(.th-financing-eyebrow) { color:#d3dee4; }
.th-mortgage-calculator-page .th-mc-search .th-financing-link { margin:20px 0 0 22px; }
.th-mortgage-calculator-page .th-mc-faq { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:50px; border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-mortgage-calculator-page .th-mc-faq details { border-bottom:1px solid var(--financing-line); }
.th-mortgage-calculator-page .th-mc-faq p { margin:0; padding:0 30px 22px 0; font-size:15px; }
.th-mortgage-calculator-page .th-mc-faq p a { color:#725626; text-decoration:underline; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-mortgage-calculator-page .tm-mortgage-card { gap:30px; }
  .th-mortgage-calculator-page .tm-mortgage-results { padding:26px; }
  .th-mortgage-calculator-page .th-mc-intro h1 { font-size:49px; }
  .th-mortgage-calculator-page .th-mc-search > div { padding:32px; }
}
@media (max-width:991px) {
  .th-mortgage-calculator-page .th-financing-shell > section.th-mc-intro { grid-template-columns:1fr; gap:25px; }
  .th-mortgage-calculator-page .th-mc-intro__note { padding:22px 0 0; border-left:0; border-top:1px solid var(--financing-line); }
  .th-mortgage-calculator-page .tm-mortgage-card { grid-template-columns:1fr; gap:32px; }
  .th-mortgage-calculator-page .th-financing-shell > :is(section.th-mc-guide,section.th-mc-search) { grid-template-columns:1fr; gap:30px; }
  .th-mortgage-calculator-page :is(.th-mc-costs,.th-mc-faq,.th-mc-schedule-layout) { grid-template-columns:1fr; gap:30px; }
  .th-mortgage-calculator-page .th-financing-shell > section.th-mc-search { gap:0; }
  .th-mortgage-calculator-page .th-mc-search figure { min-height:280px; }
}
@media (max-width:767px) {
  .th-mortgage-calculator-page .th-financing-shell > section.tm-mortgage-section { width:100%; margin:0; border-radius:20px; }
  .th-mortgage-calculator-page .th-mc-intro h1 { font-size:clamp(39px,10vw,55px); }
  .th-mortgage-calculator-page :is(.tm-heading-row,.th-mc-section-head) { align-items:start; flex-direction:column; gap:20px; }
  .th-mortgage-calculator-page .tm-mortgage-card { padding:0; }
  .th-mortgage-calculator-page .th-mc-input-pair { grid-template-columns:1fr; gap:0; }
  .th-mortgage-calculator-page .tm-mortgage-results { padding:26px 20px; }
  .th-mortgage-calculator-page .tm-choice { min-height:48px; font-size:13px; padding:8px 5px; }
  .th-mortgage-calculator-page .tm-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
  .th-mortgage-calculator-page .th-mc-cost-ledger { padding:25px 20px; }
  .th-mortgage-calculator-page .th-mc-timeline { display:grid; grid-template-columns:1fr; }
  .th-mortgage-calculator-page .th-mc-search > div { padding:30px 22px; }
  .th-mortgage-calculator-page .th-mc-search .th-financing-link { display:flex; margin:24px 0 0; }
  .th-mortgage-calculator-page .th-mc-search figure { min-height:220px; }
  .th-mortgage-calculator-page .th-mc-guide-rows article { gap:14px; }
}
@media (max-width:380px) {
  .th-mortgage-calculator-page .tm-segmented { grid-template-columns:1fr; }
  .th-mortgage-calculator-page .tm-segmented-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .th-mortgage-calculator-page .tm-summary-grid { grid-template-columns:1fr; }
  .th-mortgage-calculator-page .th-mc-result-lines > div { flex-direction:column; gap:5px; }
  .th-mortgage-calculator-page .th-mc-result-lines strong { text-align:left; }
}
@media (prefers-reduced-motion:reduce) { .th-mortgage-calculator-page * { scroll-behavior:auto!important; transition:none!important; } }

/* AFFORDABILITY CALCULATOR — a buying-power desk. All styles stay page-scoped. */
.th-affordability-page { --af-gold:#e6c68f; --af-paper:#f5f1e8; }
.th-affordability-page .th-financing-shell > section.th-af-cover { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,.65fr); gap:65px; padding:24px 0; align-items:center; }
.th-affordability-page .th-af-cover h1 { font-size:clamp(44px,4vw,70px); }
.th-affordability-page .th-af-cover > div > p:not(.th-financing-eyebrow) { max-width:750px; }
.th-affordability-page .th-af-cover aside { padding:28px 0 28px 35px; border-left:1px solid #cbbda6; }
.th-affordability-page .th-af-cover aside > span { font-size:11px; letter-spacing:.11em; color:#886935; font-weight:700; }
.th-affordability-page .th-af-cover ol { margin:22px 0; padding:0; list-style:none; }
.th-affordability-page .th-af-cover li { display:flex; align-items:center; gap:20px; padding:15px 0; border-bottom:1px solid var(--financing-line); font-size:19px; }
.th-affordability-page .th-af-cover b { color:#886935; font-size:12px; }
.th-affordability-page .th-af-cover aside p { margin:0; font-family:Georgia,serif; font-size:22px; line-height:1.5; }
.th-affordability-page .th-af-desk { border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-affordability-page .th-af-heading { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:25px; }
.th-affordability-page .th-af-heading h2 { margin-bottom:0; }
.th-affordability-page .th-af-mode { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; padding:6px; border:1px solid var(--financing-line); border-radius:14px; background:var(--af-paper); margin-bottom:32px; }
.th-affordability-page .th-af-mode button { min-height:54px; padding:12px 16px; border:0; border-radius:10px; background:transparent; color:#171918; font:inherit; font-weight:600; font-size:16px; cursor:pointer; }
.th-affordability-page .th-af-mode button.is-active { background:#192630; color:#fff; }
.th-affordability-page .th-af-layout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:40px; align-items:start; }
.th-affordability-page :is(form,fieldset,label) { min-width:0; }
.th-affordability-page .th-af-field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 18px; }
.th-affordability-page label { display:block; margin:0; font-size:14px; font-weight:500; line-height:1.6; color:#171918; }
.th-affordability-page :is(input:not([type=range]),select) { display:block; width:100%; min-width:0; min-height:52px; height:auto; padding:12px; margin:9px 0 0; border:1px solid #c8bfae; border-radius:9px; background:#fcfbf8; color:#171918; font:inherit; font-size:16px; line-height:1.5; box-shadow:none; }
.th-affordability-page select { padding-right:28px; }
.th-affordability-page input[aria-invalid=true] { border-color:#a9362c; }
.th-affordability-page fieldset { margin:30px 0 0; padding:25px 0 0; border:0; border-top:1px solid var(--financing-line); }
.th-affordability-page legend { float:none; width:auto; padding:0; margin:0 0 20px; color:#886935; font-size:13px; font-weight:700; letter-spacing:.06em; }
.th-affordability-page .th-af-hint { display:block; margin:15px 0 0; color:var(--financing-muted); font-size:13px; line-height:1.65; }
.th-affordability-page .th-af-duration { margin-top:25px; }
.th-affordability-page .th-af-duration output { float:right; font-size:15px; }
.th-affordability-page input[type=range] { display:block; width:100%; height:8px; padding:0; margin:20px 0; border:0; accent-color:#ac8d56; cursor:pointer; }
.th-affordability-page .th-af-duration small { display:block; font-size:12px; color:var(--financing-muted); }
.th-affordability-page .th-af-error { margin:20px 0; font-size:14px; color:#a9362c; }
.th-affordability-page .th-af-error:empty { display:none; }
.th-affordability-page .th-af-dark-button { margin-top:24px; background:#171918; color:#fff; cursor:pointer; }
.th-affordability-page .th-af-dark-button:hover { background:#303630; color:#fff; }
.th-affordability-page .th-af-result { min-width:0; padding:32px; border-radius:19px; background:#192630; color:#fff; }
.th-affordability-page .th-af-result > span { display:block; margin-bottom:24px; color:var(--af-gold); font-size:12px; letter-spacing:.11em; }
.th-affordability-page .th-af-result h3 { color:#fff; font-size:29px; line-height:1.25; }
.th-affordability-page .th-af-result p { color:#cbd8df; font-size:15px; }
.th-affordability-page .th-af-main-number { padding:23px 0; border-top:1px solid #ffffff35; }
.th-affordability-page .th-af-main-number > span { display:block; margin-bottom:13px; font-size:14px; color:#cbd8df; }
.th-affordability-page .th-af-main-number > strong { display:block; font-size:clamp(28px,3vw,47px); color:var(--af-gold); font-weight:500; line-height:1.2; overflow-wrap:anywhere; }
.th-affordability-page .th-af-main-number + .th-af-main-number strong { font-size:clamp(26px,2.4vw,37px); color:#fff; }
.th-affordability-page .th-af-meter { padding:25px 0; }
.th-affordability-page .th-af-meter > span { display:block; font-size:14px; }
.th-affordability-page .th-af-meter > strong { display:block; margin:9px 0 15px; font-size:24px; }
.th-affordability-page .th-af-meter > div { height:6px; overflow:hidden; background:#53616a; border-radius:6px; }
.th-affordability-page .th-af-meter i { display:block; height:100%; background:var(--af-gold); }
.th-affordability-page .th-af-meter small { display:block; margin-top:12px; color:#cbd8df; font-size:13px; line-height:1.6; }
.th-affordability-page summary { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:20px 0; list-style:none; cursor:pointer; font-size:16px; font-weight:600; line-height:1.6; }
.th-affordability-page summary::-webkit-details-marker { display:none; }
.th-affordability-page summary > span { font-size:22px; font-weight:400; color:#ac8d56; flex-shrink:0; transition:transform .2s; }
.th-affordability-page details[open] > summary > span { transform:rotate(45deg); }
.th-affordability-page .th-af-result details { border-top:1px solid #ffffff35; border-bottom:1px solid #ffffff35; margin-bottom:24px; }
.th-affordability-page .th-af-result dl { margin:0 0 20px; }
.th-affordability-page .th-af-result dl > div { display:flex; justify-content:space-between; align-items:start; gap:20px; padding:14px 0; border-top:1px solid #ffffff25; font-size:13px; }
.th-affordability-page .th-af-result dt { font-weight:400; color:#cbd8df; }
.th-affordability-page .th-af-result dd { margin:0; text-align:right; overflow-wrap:anywhere; }
.th-affordability-page .th-af-result .th-financing-link { color:#fff; }
.th-affordability-page .th-af-result-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin:30px 0; }
.th-affordability-page .th-af-result .th-af-disclaimer { margin:0; padding-top:22px; border-top:1px solid #ffffff35; font-size:13px; }
.th-affordability-page .th-financing-shell > section.th-af-perspective { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:60px; padding:24px 0; }
.th-affordability-page .th-af-perspective article { display:grid; grid-template-columns:30px minmax(0,1fr); gap:22px; padding:25px 0; border-top:1px solid var(--financing-line); }
.th-affordability-page .th-af-perspective article b { color:#886935; font-size:13px; }
.th-affordability-page .th-af-perspective article p { margin:0; font-size:15px; }
.th-affordability-page .th-af-assistant { text-align:center; border-radius:24px; background:linear-gradient(120deg,#192630,#29495b); color:#fff; }
.th-affordability-page .th-af-assistant h2 { color:#fff; }
.th-affordability-page .th-af-assistant > p:not(.th-financing-eyebrow) { max-width:720px; margin:0 auto 25px; color:#cbd8df; }
.th-affordability-page .th-af-assistant .th-financing-eyebrow { justify-content:center; color:var(--af-gold); }
.th-affordability-page .th-af-orbit { position:relative; width:70px; height:70px; margin:0 auto 25px; display:grid; place-items:center; }
.th-affordability-page .th-af-orbit i { position:absolute; inset:0; border:1px solid #e6c68f; border-radius:40% 60% 55% 45%; animation:thAfOrbit 10s linear infinite; }
.th-affordability-page .th-af-orbit i:nth-child(2) { inset:8px; border-color:#a8c6d4; animation-direction:reverse; }
.th-affordability-page .th-af-orbit span { font-family:Georgia,serif; font-size:30px; color:var(--af-gold); }
@keyframes thAfOrbit { to { transform:rotate(360deg); } }
.th-affordability-page .th-af-prompts { display:flex; justify-content:center; flex-wrap:wrap; gap:12px; margin:25px auto; }
.th-affordability-page .th-af-prompts button { padding:11px 17px; min-height:46px; border:1px solid #ffffff45; border-radius:999px; background:transparent; color:#fff; font:inherit; font-size:14px; cursor:pointer; }
.th-affordability-page #th-af-guide-form { display:flex; gap:10px; align-items:center; width:min(100%,700px); margin:0 auto; padding:8px 9px 8px 17px; border-radius:15px; background:#fff; }
.th-affordability-page #th-af-guide-form input { margin:0; padding:8px 0; min-height:42px; border:0; background:transparent; }
.th-affordability-page #th-af-guide-form button { flex:0 0 44px; width:44px; height:44px; border:0; border-radius:50%; background:#192630; color:#e6c68f; font-size:23px; cursor:pointer; }
.th-affordability-page .th-af-answer { max-width:760px; margin:25px auto 0; padding:22px; text-align:left; border:1px solid #ffffff35; border-radius:12px; font-size:15px; line-height:1.7; color:#e1e9ee; white-space:pre-line; }
.th-affordability-page .th-af-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.th-affordability-page .th-af-next { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr); gap:45px; align-items:center; background:#806637; border-radius:24px; }
.th-affordability-page .th-af-next :is(h2,h2 em,p,.th-financing-eyebrow,.th-financing-link) { color:#fff; }
.th-affordability-page .th-af-next > div:last-child { display:flex; align-items:start; flex-direction:column; gap:25px; }
.th-affordability-page .th-af-next p:last-child { margin:0; }
.th-affordability-page .th-af-faq { display:grid; grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr); gap:50px; border:1px solid var(--financing-line); border-radius:24px; background:#fff; }
.th-affordability-page .th-af-faq details { border-bottom:1px solid var(--financing-line); }
.th-affordability-page .th-af-faq p { padding:0 25px 22px 0; margin:0; font-size:15px; }
.th-affordability-page .th-financing-shell > section.th-af-sources { padding:10px 0; }
.th-affordability-page .th-af-sources p { margin:0; font-size:13px; }
.th-affordability-page .th-af-sources a { color:#725626; text-decoration:underline; text-underline-offset:3px; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
 .th-affordability-page .th-af-cover h1 { font-size:48px; }
 .th-affordability-page .th-af-layout { gap:28px; }
 .th-affordability-page .th-af-result { padding:26px; }
}
@media (max-width:991px) {
 .th-affordability-page .th-financing-shell > :is(section.th-af-cover,section.th-af-perspective) { grid-template-columns:1fr; gap:30px; }
 .th-affordability-page :is(.th-af-layout,.th-af-next,.th-af-faq) { grid-template-columns:1fr; gap:32px; }
 .th-affordability-page .th-af-cover aside { padding:24px 0 0; border-left:0; border-top:1px solid var(--financing-line); }
}
@media (max-width:767px) {
 .th-affordability-page .th-af-cover h1 { font-size:clamp(39px,10vw,53px); }
 .th-affordability-page .th-af-heading { flex-direction:column; align-items:start; gap:20px; }
 .th-affordability-page .th-af-field-grid { grid-template-columns:1fr; gap:22px; }
 .th-affordability-page .th-af-mode { grid-template-columns:1fr; }
 .th-affordability-page .th-af-result { padding:28px 20px; }
 .th-affordability-page .th-af-result-actions { flex-direction:column; align-items:stretch; }
 .th-affordability-page .th-af-perspective article { gap:14px; }
 .th-affordability-page .th-af-answer { padding:18px; }
 .th-affordability-page .th-af-result dl > div { flex-wrap:wrap; gap:7px; }
 .th-affordability-page .th-af-result dd { text-align:left; }
}
@media (prefers-reduced-motion:reduce) { .th-affordability-page * { animation:none!important; transition:none!important; } }

/* Affordability desk refinement: six core controls, expandable assumptions and results. */
.th-affordability-page .th-financing-shell > section.th-af-desk { padding:24px 28px; }
.th-affordability-page .th-af-heading { margin-bottom:18px; align-items:center; }
.th-affordability-page .th-af-heading .th-financing-eyebrow { margin-bottom:9px; }
.th-affordability-page .th-af-heading h2 { font-size:clamp(26px,2.3vw,36px); }
.th-affordability-page .th-af-mode { margin-bottom:22px; }
.th-affordability-page .th-af-mode button { min-height:46px; padding:9px 14px; }
.th-affordability-page .th-af-layout { gap:28px; }
.th-affordability-page #th-af-form > .th-af-field-grid { gap:16px 18px; }
.th-affordability-page .th-af-desk :is(input:not([type=range]),select) { min-height:46px; padding:9px 11px; margin-top:7px; }
.th-affordability-page #th-af-form > .th-af-field-grid .th-af-duration { margin-top:0; }
.th-affordability-page #th-af-form > .th-af-field-grid .th-af-duration input { margin:16px 0 12px; }
.th-affordability-page .th-af-duration small { font-size:11px; line-height:1.5; }
.th-affordability-page .th-af-advanced { margin-top:20px; border-top:1px solid var(--financing-line); border-bottom:1px solid var(--financing-line); }
.th-affordability-page .th-af-advanced > summary { padding:14px 0; font-size:14px; }
.th-affordability-page .th-af-advanced fieldset { margin-top:22px; padding-top:20px; }
.th-affordability-page .th-af-advanced fieldset:last-child { margin-bottom:20px; }
.th-affordability-page #th-af-assumption-summary { font-size:12px; margin-top:12px; }
.th-affordability-page .th-af-dark-button { margin-top:18px; min-height:46px; padding:10px 20px; }
.th-affordability-page .th-af-compact-note { font-size:12px; margin-top:10px; }
.th-affordability-page .th-af-result { padding:25px; }
.th-affordability-page .th-af-result > span { margin-bottom:14px; font-size:11px; }
.th-affordability-page .th-af-result h3 { font-size:24px; margin-bottom:12px; }
.th-affordability-page .th-af-result > p { font-size:13px; margin-bottom:15px; }
.th-affordability-page .th-af-main-number { padding:16px 0; }
.th-affordability-page .th-af-main-number > span { margin-bottom:8px; font-size:13px; }
.th-affordability-page .th-af-main-number > strong { font-size:clamp(28px,2.6vw,40px); }
.th-affordability-page .th-af-main-number + .th-af-main-number strong { font-size:clamp(25px,2.1vw,33px); }
.th-affordability-page .th-af-result summary { padding:14px 0; font-size:14px; }
.th-affordability-page .th-af-result details { margin-bottom:15px; }
.th-affordability-page .th-af-result-actions { margin:20px 0; gap:15px; }
.th-affordability-page .th-af-result-actions .th-financing-button { min-height:45px; padding:10px 17px; font-size:13px; }
.th-affordability-page .th-af-result .th-af-disclaimer { padding-top:15px; font-size:12px; line-height:1.55; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
 .th-affordability-page .th-financing-shell > section.th-af-desk { padding:22px 26px; }
 .th-affordability-page .th-af-result { padding:22px; }
}
@media (max-width:767px) {
 .th-affordability-page .th-financing-shell > section.th-af-desk { padding:24px 20px; }
 .th-affordability-page .th-af-heading { align-items:start; }
 .th-affordability-page #th-af-form > .th-af-field-grid { gap:20px; }
 .th-affordability-page .th-af-result { padding:25px 20px; }
}
