
/* PARTNERS FOUNDATION. All rules apply only inside the Partners main element.
   Spacing controls match the established property and financing pages. */
.th-partners-page {
  --partners-section-gap:30px;
  --partners-header-offset:120px;
  --partners-nav-gap:30px;
  --partners-panel-y:38px;
  --partners-panel-x:38px;
  --partners-shell-fallback:calc(100% - 160px);
  --partners-ink:#171918;
  --partners-muted:#647184;
  --partners-brown:var(--base-color,#ac8d56);
  --partners-night:#192630;
  --partners-line:#ded8cc;
  font-family:Inter,"Helvetica Neue",Arial,sans-serif;
  font-size:clamp(16px,1.05vw,18px);
  line-height:1.7;
  color:var(--partners-ink);
}
.th-partners-page,.th-partners-page *,.th-partners-page *::before,.th-partners-page *::after { box-sizing:border-box; }
.th-partners-page .th-partners-shell { display:grid; width:var(--partners-shell-width,var(--partners-shell-fallback)); max-width:100%; margin:0 auto; gap:var(--partners-section-gap); padding:max(var(--partners-header-offset),calc(var(--partners-nav-height,0px) + var(--partners-nav-gap))) 0 36px; }
.th-partners-page .th-partners-shell > section { min-width:0; margin:0; padding:var(--partners-panel-y) var(--partners-panel-x); }
.th-partners-page :is(h1,h2,h3,p,figure,dl) { margin:0; }
.th-partners-page :is(h1,h2,h3) { font-family:inherit; color:var(--partners-ink); font-weight:600; line-height:1.15; letter-spacing:-.04em; text-wrap:balance; overflow-wrap:normal; word-break:normal; }
.th-partners-page h1 { font-size:clamp(50px,5vw,84px); }
.th-partners-page h2 { font-size:clamp(32px,2.9vw,48px); }
.th-partners-page h3 { font-size:clamp(23px,1.8vw,29px); }
.th-partners-page h2 em { font-family:Georgia,serif; font-weight:400; color:var(--partners-brown); }
.th-partners-page p { color:var(--partners-muted); font-size:inherit; line-height:1.7; }
.th-partners-page .th-partners-eyebrow { display:flex; align-items:center; gap:10px; margin-bottom:22px; color:#886935; font-size:12px; font-weight:700; line-height:1.6; letter-spacing:.12em; text-transform:uppercase; }
.th-partners-page .th-partners-eyebrow > span { flex:0 0 7px; height:7px; border-radius:50%; background:currentColor; }
.th-partners-page .th-partners-button { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:50px; padding:14px 24px; border:1px solid transparent; border-radius:999px; color:#fff; background:var(--partners-ink); font-size:15px; font-weight:600; line-height:1.5; text-decoration:none; transition:transform .2s,background .2s; }
.th-partners-page .th-partners-button:hover { color:#fff; background:#343d40; transform:translateY(-2px); }
.th-partners-page .th-partners-button > span { color:#e4bd7c; font-size:21px; }
.th-partners-page .th-partners-link { display:inline-flex; align-items:center; gap:14px; color:var(--partners-ink); font-size:15px; font-weight:600; line-height:1.6; text-decoration:none; }
.th-partners-page .th-partners-link > span { color:#886935; font-size:22px; }
.th-partners-page .th-partners-link:hover { text-decoration:underline; text-underline-offset:5px; }
.th-partners-page :is(a,button,summary):focus-visible { outline:3px solid #b98b3c; outline-offset:5px; }
.th-partners-page [id] { scroll-margin-top:140px; }

/* MD SHUAIB: a leadership letterhead and monogram, rather than a property hero. */
.th-shuaib-page .th-ms-cover { border:1px solid var(--partners-line); border-radius:24px; background:#faf9f6; }
.th-shuaib-page .th-ms-cover__masthead { display:flex; justify-content:space-between; flex-wrap:wrap; gap:14px 24px; margin-bottom:34px; padding-bottom:22px; border-bottom:1px solid var(--partners-line); font-size:12px; font-weight:600; letter-spacing:.1em; }
.th-shuaib-page .th-ms-cover__masthead > a { color:var(--partners-muted); letter-spacing:0; font-size:14px; }
.th-shuaib-page .th-ms-cover__masthead > a > span { color:#886935; margin-left:12px; }
.th-shuaib-page .th-ms-cover__layout { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); align-items:center; gap:56px; }
.th-shuaib-page .th-ms-cover__copy h1 { margin-bottom:30px; }
.th-shuaib-page .th-ms-cover__copy h1 > span { display:block; margin-top:18px; font-size:16px; font-weight:500; line-height:1.6; letter-spacing:0; color:var(--partners-muted); }
.th-shuaib-page .th-ms-cover__copy h2 { margin-bottom:24px; font-size:clamp(28px,2.2vw,37px); }
.th-shuaib-page .th-ms-cover__copy > p:not(.th-partners-eyebrow) { max-width:610px; margin-bottom:29px; }
.th-shuaib-page .th-ms-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px 25px; }
.th-shuaib-page .th-ms-identity { position:relative; overflow:hidden; min-width:0; padding:28px; border-radius:16px; background:var(--partners-night); color:#fff; }
.th-shuaib-page .th-ms-identity__top { display:flex; justify-content:space-between; gap:15px; color:#ddbf8a; font-size:11px; letter-spacing:.09em; }
.th-shuaib-page .th-ms-monogram { position:relative; display:grid; min-height:245px; place-items:center; margin:24px 0; }
.th-shuaib-page .th-ms-monogram > span { position:relative; z-index:1; color:#e8c58b; font-family:Georgia,serif; font-size:clamp(100px,10.5vw,180px); font-style:italic; line-height:1; letter-spacing:-.09em; padding-right:.09em; }
.th-shuaib-page .th-ms-monogram > i { position:absolute; width:220px; max-width:100%; aspect-ratio:1; border:1px solid #77817b; border-radius:50%; animation:th-shuaib-orbit 18s ease-in-out infinite alternate; }
.th-shuaib-page .th-ms-monogram > i:last-child { width:180px; transform:translate(24px,-10px); border-color:#a58b64; animation-delay:-9s; }
.th-shuaib-page .th-ms-identity__name { margin-bottom:25px; }
.th-shuaib-page .th-ms-identity__name strong { display:block; margin-bottom:9px; font-size:25px; line-height:1.3; font-weight:500; }
.th-shuaib-page .th-ms-identity__name > span { color:#d6dfe3; font-size:11px; letter-spacing:.09em; }
.th-shuaib-page .th-ms-identity__foot { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; padding-top:19px; border-top:1px solid #53616a; color:#ddbf8a; font-size:13px; }
.th-shuaib-page .th-ms-chapters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:35px; padding-top:23px; border-top:1px solid var(--partners-line); }
.th-shuaib-page .th-ms-chapters a { display:flex; align-items:center; gap:17px; color:var(--partners-ink); font-size:14px; font-weight:500; }
.th-shuaib-page .th-ms-chapters a > span { color:#886935; font-size:12px; }

/* Open profile and an asymmetric service feature balance the enclosed panels. */
.th-shuaib-page .th-partners-shell > .th-ms-profile { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:65px; padding:30px 0; }
.th-shuaib-page .th-ms-profile h2 { margin-bottom:32px; }
.th-shuaib-page .th-ms-facts { max-width:430px; }
.th-shuaib-page .th-ms-facts > div { display:grid; grid-template-columns:95px minmax(0,1fr); gap:18px; padding:15px 0; border-top:1px solid var(--partners-line); font-size:15px; }
.th-shuaib-page .th-ms-facts dt { color:var(--partners-muted); font-weight:400; }
.th-shuaib-page .th-ms-facts dd { margin:0; }
.th-shuaib-page .th-ms-profile__body p { margin-bottom:22px; }
.th-shuaib-page .th-ms-profile__body .th-ms-lead { color:var(--partners-ink); font-size:clamp(21px,1.7vw,27px); line-height:1.5; }
.th-shuaib-page .th-ms-perspective { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:60px; background:#ac8d56; border-radius:24px; }
.th-shuaib-page .th-ms-perspective h2 { margin-bottom:24px; color:#fff; }
.th-shuaib-page .th-ms-perspective h2 em { color:#fff0d1; }
.th-shuaib-page .th-ms-perspective p { color:#fff; }
.th-shuaib-page .th-ms-perspective .th-partners-eyebrow { color:#fff0d1; }
.th-shuaib-page .th-ms-principles { min-width:0; }
.th-shuaib-page .th-ms-principles details { border-top:1px solid #dbc59f; }
.th-shuaib-page .th-ms-principles details:last-child { border-bottom:1px solid #dbc59f; }
.th-shuaib-page .th-ms-principles summary { display:grid; grid-template-columns:28px minmax(0,1fr) 24px; gap:17px; align-items:center; padding:22px 0; list-style:none; cursor:pointer; color:#fff; }
.th-shuaib-page .th-ms-principles summary::-webkit-details-marker { display:none; }
.th-shuaib-page .th-ms-principles summary > span { color:#fff0d1; font-size:13px; }
.th-shuaib-page .th-ms-principles summary strong { font-size:21px; font-weight:500; line-height:1.4; letter-spacing:-.02em; }
.th-shuaib-page .th-ms-principles summary i { color:#fff0d1; font-size:25px; font-style:normal; text-align:center; transition:transform .2s; }
.th-shuaib-page .th-ms-principles details[open] summary i { transform:rotate(45deg); }
.th-shuaib-page .th-ms-principles details > p { padding:0 30px 25px 45px; font-size:16px; }
.th-shuaib-page .th-partners-shell > .th-ms-focus { padding:24px 0; }
.th-shuaib-page .th-ms-section-head { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:35px; }
.th-shuaib-page .th-ms-section-head > p { max-width:360px; }
.th-shuaib-page .th-ms-focus__layout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); align-items:start; gap:48px; }
.th-shuaib-page .th-ms-feature { min-width:0; }
.th-shuaib-page .th-ms-feature > img { display:block; width:100%; height:260px; border-radius:18px; object-fit:cover; }
.th-shuaib-page .th-ms-feature > div { padding-top:26px; }
.th-shuaib-page .th-ms-label { display:block; margin-bottom:16px; color:#886935; font-size:12px; font-weight:600; letter-spacing:.09em; line-height:1.6; }
.th-shuaib-page .th-ms-focus h3 { margin-bottom:18px; }
.th-shuaib-page .th-ms-focus article p { margin-bottom:23px; }
.th-shuaib-page .th-ms-focus__notes article { padding:28px 0; border-top:1px solid var(--partners-line); }
.th-shuaib-page .th-ms-focus__notes article:first-child { padding-top:12px; }
.th-shuaib-page .th-ms-focus__notes article:last-child { padding-bottom:0; }
.th-shuaib-page .th-ms-outlook { display:grid; grid-template-columns:150px minmax(0,1fr); align-items:center; gap:45px; border-radius:24px; background:var(--partners-night); }
.th-shuaib-page .th-ms-outlook__mark { color:#e8c58b; font-family:Georgia,serif; font-size:140px; font-style:italic; line-height:1; }
.th-shuaib-page .th-ms-outlook h2 { margin-bottom:24px; color:#fff; }
.th-shuaib-page .th-ms-outlook h2 em { color:#e8c58b; }
.th-shuaib-page .th-ms-outlook p { color:#d4dfe4; }
.th-shuaib-page .th-ms-outlook .th-partners-eyebrow { color:#e8c58b; }
.th-shuaib-page .th-ms-contact { display:flex; justify-content:space-between; align-items:center; gap:55px; border:1px solid var(--partners-line); border-radius:24px; background:#fff; }
.th-shuaib-page .th-ms-contact h2 { margin-bottom:22px; }
.th-shuaib-page .th-ms-contact > div:first-child { max-width:630px; }
.th-shuaib-page .th-ms-contact__links { display:grid; flex:0 0 auto; gap:14px; justify-items:start; }
.th-shuaib-page .th-ms-contact__links > a:not(.th-partners-button) { color:var(--partners-ink); font-size:17px; text-decoration:underline; text-underline-offset:4px; }
.th-shuaib-page .th-ms-contact__links > span { color:var(--partners-muted); font-size:13px; }
@keyframes th-shuaib-orbit { from { transform:translate(-12px,4px) rotate(-8deg); } to { transform:translate(14px,-8px) rotate(8deg); } }

@media (max-width:1399px) { .th-partners-page { --partners-shell-fallback:calc(100% - 120px); } .th-shuaib-page .th-ms-cover__layout { gap:35px; } }
@media (max-width:1199px) { .th-partners-page { --partners-shell-fallback:calc(100% - 60px); } .th-shuaib-page .th-ms-monogram { min-height:205px; } }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-partners-page { --partners-shell-fallback:min(calc(100vw - 136px),1130px); --partners-panel-y:30px; --partners-panel-x:30px; }
  .th-shuaib-page .th-ms-cover__masthead { margin-bottom:26px; padding-bottom:18px; }
  .th-shuaib-page .th-ms-cover h1 { font-size:58px; margin-bottom:23px; }
  .th-shuaib-page .th-ms-cover h2 { font-size:29px; margin-bottom:18px; }
  .th-shuaib-page .th-ms-cover__copy > p:not(.th-partners-eyebrow) { margin-bottom:22px; }
  .th-shuaib-page .th-ms-identity { padding:24px; }
  .th-shuaib-page .th-ms-monogram { min-height:180px; margin:18px 0; }
  .th-shuaib-page .th-ms-monogram > span { font-size:135px; }
  .th-shuaib-page .th-ms-monogram > i { width:170px; }
  .th-shuaib-page .th-ms-monogram > i:last-child { width:145px; }
  .th-shuaib-page .th-ms-chapters { margin-top:26px; padding-top:18px; }
}
@media (max-width:991px) {
  .th-partners-page { --partners-shell-fallback:calc(100% - 40px); --partners-header-offset:140px; --partners-panel-x:30px; --partners-panel-y:32px; }
  .th-shuaib-page .th-ms-cover__layout,.th-shuaib-page .th-partners-shell > .th-ms-profile,.th-shuaib-page .th-ms-perspective,.th-shuaib-page .th-ms-focus__layout { grid-template-columns:minmax(0,1fr); gap:32px; }
  .th-shuaib-page .th-ms-monogram { min-height:190px; }
  .th-shuaib-page .th-ms-monogram > span { font-size:145px; }
  .th-shuaib-page .th-ms-identity__name { text-align:center; }
  .th-shuaib-page .th-ms-identity__foot { justify-content:center; gap:35px; }
  .th-shuaib-page .th-ms-outlook { grid-template-columns:90px minmax(0,1fr); gap:30px; }
  .th-shuaib-page .th-ms-outlook__mark { font-size:100px; }
  .th-shuaib-page .th-ms-contact { flex-direction:column; align-items:stretch; gap:30px; }
  .th-shuaib-page .th-ms-section-head { align-items:start; flex-direction:column; gap:22px; }
  .th-shuaib-page .th-ms-section-head > p { max-width:600px; }
}
@media (max-width:767px) {
  .th-partners-page { --partners-shell-fallback:calc(100% - 28px); --partners-header-offset:150px; --partners-nav-gap:55px; --partners-panel-y:30px; --partners-panel-x:22px; font-size:16px; }
  .th-partners-page h1 { font-size:clamp(41px,10.5vw,58px); }
  .th-partners-page h2 { font-size:clamp(30px,7.7vw,38px); }
  .th-partners-page h3 { font-size:24px; }
  .th-partners-page .th-partners-eyebrow { font-size:11px; letter-spacing:.1em; }
  .th-shuaib-page .th-ms-cover__masthead { margin-bottom:27px; }
  .th-shuaib-page .th-ms-cover__copy h2 { font-size:29px; }
  .th-shuaib-page .th-ms-cover__copy h1 > span { font-size:15px; }
  .th-shuaib-page .th-ms-identity { padding:24px 20px; }
  .th-shuaib-page .th-ms-identity__top { font-size:10px; }
  .th-shuaib-page .th-ms-monogram { min-height:185px; }
  .th-shuaib-page .th-ms-identity__foot { gap:20px; }
  .th-shuaib-page .th-ms-chapters { grid-template-columns:minmax(0,1fr); gap:0; margin-top:27px; padding-top:10px; }
  .th-shuaib-page .th-ms-chapters a { min-height:49px; border-bottom:1px solid var(--partners-line); }
  .th-shuaib-page .th-ms-chapters a:last-child { border-bottom:0; }
  .th-shuaib-page .th-partners-shell > .th-ms-profile,.th-shuaib-page .th-partners-shell > .th-ms-focus { padding:20px 0; }
  .th-shuaib-page .th-ms-principles summary { grid-template-columns:23px minmax(0,1fr) 20px; gap:12px; }
  .th-shuaib-page .th-ms-principles summary strong { font-size:19px; }
  .th-shuaib-page .th-ms-principles details > p { padding-left:0; padding-right:0; }
  .th-shuaib-page .th-ms-feature > img { height:230px; }
  .th-shuaib-page .th-ms-outlook { grid-template-columns:minmax(0,1fr); gap:22px; }
  .th-shuaib-page .th-ms-outlook__mark { font-size:72px; }
  .th-shuaib-page .th-ms-contact__links { min-width:0; }
  .th-shuaib-page .th-ms-contact__links > a { max-width:100%; overflow-wrap:anywhere; }
}
@media (prefers-reduced-motion:reduce) { .th-shuaib-page .th-ms-monogram > i { animation:none; } .th-partners-page .th-partners-button,.th-shuaib-page .th-ms-principles summary i { transition:none; } }

/* TWINKLE / COO & CO-FOUNDER. Append to partners.css.
   Every rule stays within .th-twinkle-page; the shared foundation is retained. */
.th-twinkle-page .th-tw-intro { background:var(--partners-night); border-radius:24px; color:#fff; }
.th-twinkle-page .th-tw-intro__top { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:15px 25px; margin-bottom:30px; }
.th-twinkle-page .th-tw-intro__top .th-partners-eyebrow { color:#e8c58b; margin:0; }
.th-twinkle-page .th-tw-intro__top > a { color:#d4e0e4; font-size:14px; }
.th-twinkle-page .th-tw-intro__top > a > span { margin-left:15px; color:#e8c58b; }
.th-twinkle-page .th-tw-name { display:flex; align-items:end; justify-content:space-between; gap:30px; padding-bottom:32px; border-bottom:1px solid #50606a; margin-bottom:30px; }
.th-twinkle-page .th-tw-name h1 { color:#fff; font-size:clamp(66px,7.8vw,126px); line-height:1.05; letter-spacing:-.06em; }
.th-twinkle-page .th-tw-name h1 > span { display:block; margin-top:18px; color:#d4e0e4; font-size:17px; line-height:1.6; font-weight:400; letter-spacing:0; }
.th-twinkle-page .th-tw-name__company { flex-shrink:0; padding-bottom:5px; color:#e8c58b; font-size:12px; line-height:1.8; letter-spacing:.1em; text-align:right; }
.th-twinkle-page .th-tw-intro__bottom { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:60px; align-items:center; }
.th-twinkle-page .th-tw-intro__bottom h2 { color:#fff; margin-bottom:22px; font-size:clamp(30px,2.7vw,43px); }
.th-twinkle-page .th-tw-intro h2 em { color:#e8c58b; }
.th-twinkle-page .th-tw-intro__bottom p { max-width:620px; margin-bottom:24px; color:#d4e0e4; }
.th-twinkle-page .th-tw-intro .th-partners-button { color:var(--partners-ink); background:#fff; }
.th-twinkle-page .th-tw-intro .th-partners-button > span { color:#886935; }
.th-twinkle-page .th-tw-route { min-width:0; padding:20px 0; }
.th-twinkle-page .th-tw-route svg { display:block; width:100%; height:auto; }
.th-twinkle-page .th-tw-route figcaption { display:flex; justify-content:space-between; gap:20px; padding-top:20px; color:#d4e0e4; font-size:13px; line-height:1.6; }
.th-twinkle-page .th-tw-route__trace { animation:th-twinkle-flow 12s linear infinite; }
@keyframes th-twinkle-flow { to { stroke-dashoffset:-220; } }
.th-twinkle-page .th-partners-shell > .th-tw-profile { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:70px; padding:32px 0; }
.th-twinkle-page .th-tw-profile__label h2 { margin-bottom:31px; }
.th-twinkle-page .th-tw-profile__label dl { margin-bottom:27px; }
.th-twinkle-page .th-tw-profile__label dl > div { padding:16px 0; border-top:1px solid var(--partners-line); }
.th-twinkle-page .th-tw-profile__label dt { color:var(--partners-muted); font-size:13px; font-weight:400; margin-bottom:5px; }
.th-twinkle-page .th-tw-profile__label dd { margin:0; font-size:17px; }
.th-twinkle-page .th-tw-profile__copy > p { margin-bottom:22px; }
.th-twinkle-page .th-tw-profile__copy .th-tw-lead { color:var(--partners-ink); font-size:clamp(23px,1.85vw,30px); line-height:1.5; }
.th-twinkle-page .th-tw-background { margin-top:30px; padding:27px 0 0 25px; border-top:1px solid var(--partners-line); border-left:3px solid var(--partners-brown); }
.th-twinkle-page .th-tw-background > span { display:block; margin-bottom:14px; color:#886935; font-size:12px; font-weight:600; letter-spacing:.1em; }
.th-twinkle-page .th-tw-background h3 { margin-bottom:16px; }
.th-twinkle-page .th-tw-background p { margin-bottom:20px; }
.th-twinkle-page .th-tw-support { background:#fff; border:1px solid var(--partners-line); border-radius:24px; }
.th-twinkle-page .th-tw-section-head { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:34px; }
.th-twinkle-page .th-tw-section-head > p { max-width:390px; }
.th-twinkle-page .th-tw-support__layout { display:grid; grid-template-columns:minmax(0,1fr); gap:30px; }
.th-twinkle-page.th-tw-enhanced .th-tw-support__layout { grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); }
.th-twinkle-page [hidden] { display:none!important; }
.th-twinkle-page .th-tw-tabs { align-self:start; display:grid; gap:12px; }
.th-twinkle-page .th-tw-tabs button { display:grid; grid-template-columns:26px minmax(0,1fr) 20px; align-items:center; gap:15px; width:100%; min-height:78px; padding:18px; border:1px solid var(--partners-line); border-radius:12px; color:var(--partners-ink); background:#faf9f6; text-align:left; font:500 16px/1.6 Inter,"Helvetica Neue",Arial,sans-serif; cursor:pointer; }
.th-twinkle-page .th-tw-tabs button > span { color:#886935; font-size:12px; }
.th-twinkle-page .th-tw-tabs button i { color:#886935; font-size:20px; font-style:normal; }
.th-twinkle-page .th-tw-tabs button[aria-selected="true"] { background:#eee4d3; border-color:#ac8d56; }
.th-twinkle-page .th-tw-panels { min-width:0; }
.th-twinkle-page .th-tw-panels > article { padding:30px; border-radius:16px; background:var(--partners-night); color:#fff; }
.th-twinkle-page:not(.th-tw-enhanced) .th-tw-panels > article + article { margin-top:20px; }
.th-twinkle-page .th-tw-panel-label { display:block; margin-bottom:20px; color:#e8c58b; font-size:11px; font-weight:600; line-height:1.6; letter-spacing:.1em; }
.th-twinkle-page .th-tw-panels h3 { color:#fff; font-size:clamp(25px,2.1vw,34px); margin-bottom:21px; }
.th-twinkle-page .th-tw-panels p { color:#d4e0e4; margin-bottom:22px; }
.th-twinkle-page .th-tw-panels ul { margin:0 0 27px; padding:0 0 0 20px; color:#d4e0e4; }
.th-twinkle-page .th-tw-panels li { padding:0 0 11px 5px; font-size:16px; line-height:1.7; }
.th-twinkle-page .th-tw-panels li::marker { color:#e8c58b; }
.th-twinkle-page .th-tw-panel-actions { display:flex; align-items:center; flex-wrap:wrap; gap:22px; padding-top:23px; border-top:1px solid #50606a; }
.th-twinkle-page .th-tw-panel-actions .th-partners-button { background:#fff; color:var(--partners-ink); }
.th-twinkle-page .th-tw-panel-actions .th-partners-button > span { color:#886935; }
.th-twinkle-page .th-tw-panel-actions .th-partners-link { color:#fff; }
.th-twinkle-page .th-tw-panel-actions .th-partners-link > span { color:#e8c58b; }
.th-twinkle-page .th-tw-support__note { margin-top:24px; max-width:920px; font-size:14px; }
.th-twinkle-page .th-partners-shell > .th-tw-working { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:70px; padding:30px 0; }
.th-twinkle-page .th-tw-working__intro h2 { margin-bottom:24px; }
.th-twinkle-page .th-tw-working__steps { margin:0; padding:0; list-style:none; }
.th-twinkle-page .th-tw-working__steps li { display:grid; grid-template-columns:42px minmax(0,1fr); gap:23px; padding:25px 0; border-top:1px solid var(--partners-line); }
.th-twinkle-page .th-tw-working__steps li:first-child { padding-top:18px; }
.th-twinkle-page .th-tw-working__steps li:last-child { padding-bottom:0; }
.th-twinkle-page .th-tw-working__steps li > span { color:#886935; font-family:Georgia,serif; font-size:26px; line-height:1.3; }
.th-twinkle-page .th-tw-working__steps h3 { margin-bottom:15px; }
.th-twinkle-page .th-tw-resources { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; gap:60px; border-radius:24px; background:#e9dfce; }
.th-twinkle-page .th-tw-resource-links { min-width:0; border-top:1px solid #c5b392; }
.th-twinkle-page .th-tw-resource-links a { display:grid; grid-template-columns:minmax(0,1fr) 24px; gap:8px 20px; padding:22px 0; border-bottom:1px solid #c5b392; color:var(--partners-ink); text-decoration:none; }
.th-twinkle-page .th-tw-resource-links a > span { color:#806232; font-size:11px; font-weight:600; line-height:1.5; letter-spacing:.1em; }
.th-twinkle-page .th-tw-resource-links a strong { grid-column:1; font-size:20px; font-weight:500; line-height:1.5; }
.th-twinkle-page .th-tw-resource-links a i { grid-column:2; grid-row:1 / 3; align-self:center; color:#806232; font-size:24px; font-style:normal; }
.th-twinkle-page .th-tw-resource-links a:hover strong { text-decoration:underline; text-underline-offset:5px; }
.th-twinkle-page .th-tw-connect { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:65px; border:1px solid var(--partners-line); border-radius:24px; background:#fff; }
.th-twinkle-page .th-tw-connect__intro h2 { margin-bottom:24px; }
.th-twinkle-page .th-tw-connect__intro p { margin-bottom:28px; }
.th-twinkle-page .th-tw-connect__desk { min-width:0; padding-left:32px; border-left:1px solid var(--partners-line); }
.th-twinkle-page .th-tw-connect__desk > span { display:block; margin-bottom:24px; color:#886935; font-size:11px; font-weight:600; letter-spacing:.1em; }
.th-twinkle-page .th-tw-connect__desk > a:not(.th-partners-link) { display:block; margin-bottom:22px; color:var(--partners-ink); text-decoration:none; overflow-wrap:anywhere; }
.th-twinkle-page .th-tw-connect__desk small { display:block; color:var(--partners-muted); font-size:11px; letter-spacing:.08em; margin-bottom:8px; }
.th-twinkle-page .th-tw-connect__desk strong { font-size:clamp(21px,1.8vw,28px); line-height:1.5; font-weight:500; }
.th-twinkle-page .th-tw-connect__desk p { margin-bottom:20px; font-size:14px; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-twinkle-page .th-tw-name h1 { font-size:86px; }
  .th-twinkle-page .th-tw-name { padding-bottom:24px; margin-bottom:25px; }
  .th-twinkle-page .th-tw-intro__top { margin-bottom:23px; }
  .th-twinkle-page .th-tw-intro__bottom h2 { font-size:32px; }
  .th-twinkle-page .th-tw-intro__bottom { gap:40px; }
  .th-twinkle-page .th-tw-panels > article { padding:26px; }
}
@media (max-width:1199px) { .th-twinkle-page .th-tw-intro__bottom,.th-twinkle-page .th-partners-shell > .th-tw-profile,.th-twinkle-page .th-partners-shell > .th-tw-working,.th-twinkle-page .th-tw-connect { gap:40px; } }
@media (max-width:991px) {
  .th-twinkle-page .th-tw-intro__bottom,.th-twinkle-page .th-partners-shell > .th-tw-profile,.th-twinkle-page.th-tw-enhanced .th-tw-support__layout,.th-twinkle-page .th-partners-shell > .th-tw-working,.th-twinkle-page .th-tw-resources,.th-twinkle-page .th-tw-connect { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-twinkle-page .th-tw-route { max-width:460px; width:100%; padding-top:0; }
  .th-twinkle-page .th-tw-section-head { flex-direction:column; align-items:start; gap:22px; }
  .th-twinkle-page .th-tw-section-head > p { max-width:600px; }
  .th-twinkle-page .th-tw-connect__desk { padding:28px 0 0; border-left:0; border-top:1px solid var(--partners-line); }
}
@media (max-width:767px) {
  .th-twinkle-page .th-tw-name { align-items:start; flex-direction:column; gap:18px; }
  .th-twinkle-page .th-tw-name h1 { font-size:clamp(58px,16vw,86px); }
  .th-twinkle-page .th-tw-name h1 > span { font-size:16px; }
  .th-twinkle-page .th-tw-name__company { font-size:10px; text-align:left; }
  .th-twinkle-page .th-tw-intro__bottom h2 { font-size:31px; }
  .th-twinkle-page .th-tw-route figcaption { gap:13px; font-size:11px; }
  .th-twinkle-page .th-partners-shell > .th-tw-profile,.th-twinkle-page .th-partners-shell > .th-tw-working { padding:20px 0; }
  .th-twinkle-page .th-tw-background { padding-left:18px; }
  .th-twinkle-page .th-tw-panels > article { padding:26px 20px; }
  .th-twinkle-page .th-tw-tabs button { min-height:68px; padding:15px; font-size:15px; gap:10px; }
  .th-twinkle-page .th-tw-panels h3 { font-size:27px; }
  .th-twinkle-page .th-tw-working__steps li { grid-template-columns:30px minmax(0,1fr); gap:17px; }
  .th-twinkle-page .th-tw-panel-actions { align-items:stretch; flex-direction:column; }
  .th-twinkle-page .th-tw-panel-actions .th-partners-button { padding-left:16px; padding-right:16px; }
  .th-twinkle-page .th-tw-connect__desk strong { font-size:22px; }
}
@media (prefers-reduced-motion:reduce) { .th-twinkle-page .th-tw-route__trace { animation:none; } }

/* Reserved portrait space in the main introduction. Insert the approved image
   inside .th-tw-portrait__space; its size and crop are already defined here. */
.th-twinkle-page .th-tw-name { display:grid; grid-template-columns:minmax(0,1fr) 220px; align-items:center; }
.th-twinkle-page .th-tw-portrait { min-width:0; margin:0; }
.th-twinkle-page .th-tw-portrait__space { width:100%; aspect-ratio:4 / 5; overflow:hidden; border:1px solid #bba780; border-radius:16px; background:#e9e3d7; }
.th-twinkle-page .th-tw-portrait__space > img { display:block; width:100%; height:100%; object-fit:cover; object-position:center top; }
.th-twinkle-page .th-tw-portrait .th-tw-name__company { margin-top:12px; padding:0; color:#d4e0e4; font-size:10px; line-height:1.6; letter-spacing:.07em; text-align:left; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-twinkle-page .th-tw-name { grid-template-columns:minmax(0,1fr) 180px; }
}
@media (max-width:767px) {
  .th-twinkle-page .th-tw-name { grid-template-columns:minmax(0,1fr); gap:25px; }
  .th-twinkle-page .th-tw-portrait { width:min(100%,240px); }
}


/* BECOME A PARTNER. Scoped additions to the existing Partners stylesheet. */
.th-become-partner-page .th-bp-hero { background:#ac8d56; border-radius:24px; color:#fff; }
.th-become-partner-page .th-bp-hero__top { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; margin-bottom:34px; padding-bottom:23px; border-bottom:1px solid #dac7a5; font-size:12px; letter-spacing:.09em; }
.th-become-partner-page .th-bp-hero__top > a { color:#fff; font-size:14px; letter-spacing:0; }
.th-become-partner-page .th-bp-hero__top > a > span { margin-left:12px; }
.th-become-partner-page .th-bp-hero__layout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); gap:65px; align-items:center; }
.th-become-partner-page .th-bp-hero h1 { margin-bottom:26px; color:#fff; font-size:clamp(46px,4.5vw,76px); }
.th-become-partner-page .th-bp-hero h1 em { color:#fff0d1; font-family:Georgia,serif; font-weight:400; }
.th-become-partner-page .th-bp-hero p { color:#fff; max-width:620px; margin-bottom:27px; }
.th-become-partner-page .th-bp-hero .th-partners-eyebrow { color:#fff0d1; margin-bottom:22px; }
.th-become-partner-page .th-bp-network { min-width:0; padding:26px; border:1px solid #dfcba7; border-radius:18px; background:#ffffff0d; }
.th-become-partner-page .th-bp-network__label { color:#fff0d1; font-size:11px; letter-spacing:.12em; margin-bottom:23px; }
.th-become-partner-page .th-bp-network__node { display:grid; grid-template-columns:35px minmax(0,1fr); gap:15px; align-items:center; }
.th-become-partner-page .th-bp-network__node > span { display:grid; width:35px; height:35px; place-items:center; border:1px solid #dfcba7; border-radius:50%; font-size:11px; }
.th-become-partner-page .th-bp-network__node strong { display:block; margin-bottom:5px; font-size:18px; line-height:1.4; font-weight:500; }
.th-become-partner-page .th-bp-network__node small { display:block; font-size:13px; line-height:1.6; color:#fff0d1; }
.th-become-partner-page .th-bp-network__node--centre { padding:19px 16px; border-radius:12px; background:var(--partners-night); }
.th-become-partner-page .th-bp-network__node--centre > span { font-family:Georgia,serif; font-size:20px; font-style:italic; color:#e8c58b; }
.th-become-partner-page .th-bp-network__bridge { position:relative; width:1px; height:24px; margin-left:17px; background:#dfcba7; }
.th-become-partner-page .th-bp-network__bridge > i { position:absolute; left:-3px; top:0; width:7px; height:7px; border-radius:50%; background:#fff0d1; animation:th-bp-connection 3s ease-in-out infinite; }
.th-become-partner-page .th-bp-network figcaption { margin-top:22px; color:#fff0d1; font-size:12px; line-height:1.7; }
.th-become-partner-page .th-bp-hero__foot { display:flex; flex-wrap:wrap; gap:18px 35px; padding-top:24px; margin-top:33px; border-top:1px solid #dac7a5; color:#fff0d1; font-size:11px; font-weight:600; letter-spacing:.09em; }
@keyframes th-bp-connection { 0%,100% { transform:translateY(0); opacity:.4; } 50% { transform:translateY(17px); opacity:1; } }
.th-become-partner-page .th-partners-shell > .th-bp-routes,.th-become-partner-page .th-partners-shell > .th-bp-process { padding:27px 0; }
.th-become-partner-page .th-bp-section-head { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:34px; }
.th-become-partner-page .th-bp-section-head > p { max-width:390px; }
.th-become-partner-page .th-bp-route-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 45px; }
.th-become-partner-page .th-bp-route-grid > a { display:flex; flex-direction:column; min-width:0; padding:28px 0; border-top:1px solid var(--partners-line); color:var(--partners-ink); text-decoration:none; }
.th-become-partner-page .th-bp-route-grid > a > span { margin-bottom:21px; color:#886935; font-size:11px; font-weight:600; letter-spacing:.09em; }
.th-become-partner-page .th-bp-route-grid h3 { margin-bottom:18px; }
.th-become-partner-page .th-bp-route-grid p { max-width:580px; margin-bottom:23px; }
.th-become-partner-page .th-bp-route-grid strong { display:flex; align-items:center; gap:20px; margin-top:auto; font-size:15px; font-weight:600; }
.th-become-partner-page .th-bp-route-grid i { font-size:21px; font-style:normal; color:#886935; transition:transform .2s; }
.th-become-partner-page .th-bp-route-grid > a:hover i { transform:translate(3px,-3px); }
.th-become-partner-page .th-bp-value { background:var(--partners-night); border-radius:24px; }
.th-become-partner-page .th-bp-value .th-partners-eyebrow { color:#e8c58b; }
.th-become-partner-page .th-bp-value h2 { margin-bottom:33px; color:#fff; }
.th-become-partner-page .th-bp-value h2 em { color:#e8c58b; }
.th-become-partner-page .th-bp-value__columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; border-top:1px solid #52616b; }
.th-become-partner-page .th-bp-value__columns article { min-width:0; padding:25px 30px 0; border-left:1px solid #52616b; }
.th-become-partner-page .th-bp-value__columns article:first-child { padding-left:0; border-left:0; }
.th-become-partner-page .th-bp-value__columns article:last-child { padding-right:0; }
.th-become-partner-page .th-bp-value__columns article > span { display:block; margin-bottom:20px; color:#e8c58b; font-size:12px; }
.th-become-partner-page .th-bp-value h3 { margin-bottom:17px; color:#fff; font-size:24px; }
.th-become-partner-page .th-bp-value p { color:#d4e0e4; }
.th-become-partner-page .th-bp-process ol { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; margin:0; padding:0; list-style:none; }
.th-become-partner-page .th-bp-process li { min-width:0; border-top:1px solid var(--partners-line); padding-top:23px; }
.th-become-partner-page .th-bp-process li > span { display:block; margin-bottom:25px; color:#886935; font-family:Georgia,serif; font-size:28px; line-height:1.2; }
.th-become-partner-page .th-bp-process h3 { font-size:22px; margin-bottom:17px; }
.th-become-partner-page .th-bp-faq { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); align-items:start; gap:60px; border:1px solid var(--partners-line); border-radius:24px; background:#fff; }
.th-become-partner-page .th-bp-faq h2 { margin-bottom:24px; }
.th-become-partner-page .th-bp-faq details { border-bottom:1px solid var(--partners-line); }
.th-become-partner-page .th-bp-faq summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 0; color:var(--partners-ink); font-size:16px; font-weight:500; line-height:1.6; list-style:none; cursor:pointer; }
.th-become-partner-page .th-bp-faq summary::-webkit-details-marker { display:none; }
.th-become-partner-page .th-bp-faq summary > span { flex:0 0 22px; color:#886935; font-size:23px; text-align:center; }
.th-become-partner-page .th-bp-faq details[open] summary > span { transform:rotate(45deg); }
.th-become-partner-page .th-bp-faq details p { padding-bottom:23px; font-size:15px; }
.th-become-partner-page .th-partners-shell > .th-bp-enquiry { display:grid; grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr); align-items:start; gap:50px; padding:27px 0; }
.th-become-partner-page .th-bp-enquiry__intro h2 { margin-bottom:24px; }
.th-become-partner-page .th-bp-enquiry__intro > p { margin-bottom:29px; }
.th-become-partner-page .th-bp-enquiry__contact { display:grid; gap:13px; padding-top:25px; border-top:1px solid var(--partners-line); }
.th-become-partner-page .th-bp-enquiry__contact > span { color:#886935; font-size:11px; font-weight:600; letter-spacing:.09em; }
.th-become-partner-page .th-bp-enquiry__contact a { color:var(--partners-ink); overflow-wrap:anywhere; text-decoration:underline; text-underline-offset:5px; }
.th-become-partner-page .th-bp-enquiry__body { min-width:0; }
.th-become-partner-page form { margin:0; }
.th-become-partner-page fieldset { min-width:0; margin:0 0 22px; padding:30px; border:1px solid var(--partners-line); border-radius:18px; background:#fff; }
.th-become-partner-page legend { float:none; width:auto; margin:0; padding:0 9px; color:var(--partners-ink); font-size:22px; font-weight:500; line-height:1.5; }
.th-become-partner-page legend > span { margin-right:12px; color:#886935; font-size:12px; }
.th-become-partner-page .th-bp-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:23px; }
.th-become-partner-page .th-bp-fields > div { min-width:0; }
.th-become-partner-page .th-bp-field-wide { grid-column:1 / -1; }
.th-become-partner-page label { display:block; margin:0 0 10px; color:var(--partners-ink); font-size:15px; font-weight:500; line-height:1.6; }
.th-become-partner-page label > span { color:#886935; }
.th-become-partner-page label small { color:var(--partners-muted); font-size:13px; font-weight:400; }
.th-become-partner-page :is(input,select,textarea) { display:block; width:100%; min-width:0; min-height:51px; height:auto; margin:0; padding:12px 14px; border:1px solid #d3cbbc; border-radius:9px; background:#fcfbf9; color:var(--partners-ink); font:400 16px/1.6 Inter,"Helvetica Neue",Arial,sans-serif; }
.th-become-partner-page select { padding-right:30px; }
.th-become-partner-page textarea { min-height:140px; resize:vertical; }
.th-become-partner-page :is(input,textarea)::placeholder { color:#727f89; opacity:1; }
.th-become-partner-page :is(input,select,textarea):focus-visible { outline:2px solid #ac8d56; outline-offset:3px; }
.th-become-partner-page .th-bp-form-foot { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:20px; margin-top:27px; }
.th-become-partner-page .th-bp-form-foot > span { color:var(--partners-muted); font-size:13px; }
.th-become-partner-page .th-partners-button:disabled { opacity:.5; cursor:not-allowed; transform:none; }
.th-become-partner-page .th-bp-form-note { margin-top:19px; font-size:14px; }
.th-become-partner-page [hidden] { display:none!important; }
.th-become-partner-page .th-bp-review { padding:28px; border:1px solid #c5b392; border-radius:18px; background:#eee4d3; }
.th-become-partner-page .th-bp-review__label { display:block; margin-bottom:18px; color:#886935; font-size:11px; font-weight:600; letter-spacing:.09em; }
.th-become-partner-page .th-bp-review h3 { margin-bottom:20px; }
.th-become-partner-page .th-bp-review pre { margin:0 0 25px; white-space:pre-wrap; overflow-wrap:anywhere; word-break:normal; color:var(--partners-ink); font:400 15px/1.8 Inter,"Helvetica Neue",Arial,sans-serif; }
.th-become-partner-page .th-bp-review__actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; }
.th-become-partner-page button.th-partners-link { border:0; padding:0; background:transparent; cursor:pointer; }
.th-become-partner-page #th-bp-status { margin-top:17px; font-size:14px; }
.th-become-partner-page #th-bp-status:empty { display:none; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-become-partner-page .th-bp-hero h1 { font-size:52px; }
  .th-become-partner-page .th-bp-hero__layout { gap:35px; }
  .th-become-partner-page .th-bp-hero__top { margin-bottom:26px; padding-bottom:18px; }
  .th-become-partner-page .th-bp-network { padding:22px; }
  .th-become-partner-page .th-bp-hero__foot { margin-top:27px; padding-top:20px; }
  .th-become-partner-page fieldset { padding:26px; }
}
@media (max-width:1199px) { .th-become-partner-page .th-bp-hero__layout { gap:35px; } .th-become-partner-page .th-partners-shell > .th-bp-enquiry { grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:30px; } .th-become-partner-page .th-bp-fields { grid-template-columns:minmax(0,1fr); } }
@media (max-width:991px) {
  .th-become-partner-page .th-bp-hero__layout,.th-become-partner-page .th-bp-faq,.th-become-partner-page .th-partners-shell > .th-bp-enquiry { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-become-partner-page .th-bp-hero h1 { font-size:clamp(44px,7vw,65px); }
  .th-become-partner-page .th-bp-section-head { flex-direction:column; align-items:start; gap:22px; }
  .th-become-partner-page .th-bp-section-head > p { max-width:650px; }
  .th-become-partner-page .th-bp-process ol { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
  .th-become-partner-page .th-bp-value__columns { grid-template-columns:minmax(0,1fr); }
  .th-become-partner-page .th-bp-value__columns article { border-left:0; padding:25px 0; border-bottom:1px solid #52616b; }
  .th-become-partner-page .th-bp-value__columns article:last-child { padding-bottom:0; border-bottom:0; }
  .th-become-partner-page .th-bp-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:767px) {
  .th-become-partner-page .th-bp-hero h1 { font-size:clamp(39px,10vw,55px); }
  .th-become-partner-page .th-bp-hero__top { margin-bottom:26px; }
  .th-become-partner-page .th-bp-hero__foot { gap:14px 22px; font-size:10px; }
  .th-become-partner-page .th-bp-network { padding:22px 18px; }
  .th-become-partner-page .th-bp-network__node { grid-template-columns:30px minmax(0,1fr); gap:12px; }
  .th-become-partner-page .th-bp-network__node > span { width:30px; height:30px; }
  .th-become-partner-page .th-bp-network__node--centre { padding:17px 12px; }
  .th-become-partner-page .th-bp-route-grid,.th-become-partner-page .th-bp-process ol,.th-become-partner-page .th-bp-fields { grid-template-columns:minmax(0,1fr); }
  .th-become-partner-page .th-partners-shell > .th-bp-routes,.th-become-partner-page .th-partners-shell > .th-bp-process,.th-become-partner-page .th-partners-shell > .th-bp-enquiry { padding:20px 0; }
  .th-become-partner-page fieldset { padding:24px 20px; }
  .th-become-partner-page legend { font-size:20px; }
  .th-become-partner-page .th-bp-review { padding:24px 20px; }
  .th-become-partner-page .th-bp-form-foot { align-items:stretch; flex-direction:column; }
  .th-become-partner-page .th-bp-review__actions { align-items:start; flex-direction:column; }
}
@media (prefers-reduced-motion:reduce) { .th-become-partner-page .th-bp-network__bridge > i { animation:none; } .th-become-partner-page .th-bp-route-grid i { transition:none; } }


/* REFER & EARN / invitation cover and a referral desk. Page-scoped styles. */
.th-referral-page .th-re-cover { overflow:hidden; border:1px solid var(--partners-line); border-radius:24px; background:#faf8f3; text-align:center; }
.th-referral-page .th-re-cover > .th-partners-eyebrow { justify-content:center; }
.th-referral-page .th-re-cover h1 { margin:0 auto 25px; max-width:1000px; font-size:clamp(47px,4.7vw,78px); }
.th-referral-page .th-re-cover h1 em { color:var(--partners-brown); font-family:Georgia,serif; font-weight:400; }
.th-referral-page .th-re-cover__lead { max-width:710px; margin:0 auto 27px; font-size:clamp(17px,1.2vw,20px); }
.th-referral-page .th-re-actions { display:flex; align-items:center; flex-wrap:wrap; gap:22px 30px; }
.th-referral-page .th-re-cover > .th-re-actions { justify-content:center; }
.th-referral-page .th-re-ticket { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr); margin-top:40px; border-radius:17px; background:var(--partners-night); color:#fff; text-align:left; }
.th-referral-page .th-re-ticket__message { padding:32px; }
.th-referral-page .th-re-ticket__message > span,.th-referral-page .th-re-ticket__stub > span { display:block; margin-bottom:19px; color:#e8c58b; font-size:11px; font-weight:600; letter-spacing:.12em; }
.th-referral-page .th-re-ticket h2 { margin-bottom:20px; color:#fff; font-size:clamp(28px,2.3vw,37px); }
.th-referral-page .th-re-ticket h2 em { color:#e8c58b; }
.th-referral-page .th-re-ticket p { max-width:590px; color:#d4e0e4; font-size:16px; }
.th-referral-page .th-re-ticket__stub { position:relative; min-width:0; padding:32px; border-left:1px dashed #85918d; }
.th-referral-page .th-re-ticket__stub::before,.th-referral-page .th-re-ticket__stub::after { position:absolute; left:-10px; width:20px; height:20px; border-radius:50%; background:#faf8f3; content:""; }
.th-referral-page .th-re-ticket__stub::before { top:-10px; }
.th-referral-page .th-re-ticket__stub::after { bottom:-10px; }
.th-referral-page .th-re-ticket__stub > strong { display:block; font-size:24px; font-weight:500; line-height:1.5; }
.th-referral-page .th-re-ticket__stamp { display:grid; width:58px; height:58px; margin:23px 0; place-items:center; border:1px solid #e8c58b; border-radius:50%; color:#e8c58b; font-family:Georgia,serif; font-size:33px; font-style:italic; transform:rotate(-10deg); }
.th-referral-page .th-re-ticket__stub > a { color:#fff; font-size:14px; }
.th-referral-page .th-re-ticket__stub > a > span { color:#e8c58b; margin-left:12px; }
.th-referral-page .th-partners-shell > .th-re-possibilities { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:65px; padding:30px 0; }
.th-referral-page .th-re-possibilities h2 { margin-bottom:25px; }
.th-referral-page .th-re-possibilities > div > p { margin-bottom:25px; }
.th-referral-page .th-re-possibility-list article { display:grid; grid-template-columns:35px minmax(0,1fr); gap:23px; padding:25px 0; border-top:1px solid var(--partners-line); }
.th-referral-page .th-re-possibility-list article:first-child { padding-top:18px; }
.th-referral-page .th-re-possibility-list article:last-child { padding-bottom:0; }
.th-referral-page .th-re-possibility-list article > span { color:#886935; font-family:Georgia,serif; font-size:25px; line-height:1.4; }
.th-referral-page .th-re-possibility-list h3 { margin-bottom:17px; }
.th-referral-page .th-re-possibility-list p { margin-bottom:18px; }
.th-referral-page .th-re-possibility-list a { color:var(--partners-ink); font-size:15px; font-weight:600; }
.th-referral-page .th-re-possibility-list a > span { margin-left:13px; color:#886935; font-size:21px; }
.th-referral-page .th-re-rewards { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:35px 60px; border-radius:24px; background:#ac8d56; }
.th-referral-page .th-re-rewards h2 { color:#fff; margin-bottom:23px; }
.th-referral-page .th-re-rewards h2 em { color:#fff0d1; }
.th-referral-page .th-re-rewards .th-partners-eyebrow { color:#fff0d1; }
.th-referral-page .th-re-rewards > div > p { color:#fff; margin-bottom:25px; }
.th-referral-page .th-re-rewards dl { min-width:0; }
.th-referral-page .th-re-rewards dl > div { padding:20px 0; border-top:1px solid #ddcba9; }
.th-referral-page .th-re-rewards dl > div:first-child { padding-top:16px; }
.th-referral-page .th-re-rewards dl > div:last-child { padding-bottom:0; }
.th-referral-page .th-re-rewards dt { color:#fff0d1; font-size:14px; font-weight:600; margin-bottom:8px; }
.th-referral-page .th-re-rewards dd { margin:0; color:#fff; font-size:16px; line-height:1.7; }
.th-referral-page .th-re-rewards__note { grid-column:1 / -1; padding-top:22px; border-top:1px solid #ddcba9; color:#fff!important; font-size:14px; }
.th-referral-page .th-partners-shell > .th-re-journey { padding:30px 0; }
.th-referral-page .th-re-section-head { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:34px; }
.th-referral-page .th-re-section-head > p { max-width:365px; }
.th-referral-page .th-re-journey ol { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; padding:0; margin:0; list-style:none; }
.th-referral-page .th-re-journey li { min-width:0; padding:26px 25px 0; border-top:1px solid var(--partners-line); border-left:1px solid var(--partners-line); }
.th-referral-page .th-re-journey li:first-child { padding-left:0; border-left:0; }
.th-referral-page .th-re-journey li:last-child { padding-right:0; }
.th-referral-page .th-re-journey li > span { display:block; margin-bottom:23px; color:#886935; font-family:Georgia,serif; font-size:28px; line-height:1.3; }
.th-referral-page .th-re-journey h3 { font-size:22px; margin-bottom:17px; }
.th-referral-page .th-re-introduction { border:1px solid var(--partners-line); border-radius:24px; background:#fff; }
.th-referral-page .th-re-form-heading { max-width:900px; margin-bottom:35px; }
.th-referral-page .th-re-form-heading h2 { margin-bottom:23px; }
.th-referral-page .th-re-form-heading a { color:#806232; text-decoration:underline; text-underline-offset:4px; }
.th-referral-page form { margin:0; }
.th-referral-page .th-re-form-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
.th-referral-page fieldset { min-width:0; padding:26px; margin:0; border:1px solid var(--partners-line); border-radius:16px; background:#faf9f6; }
.th-referral-page legend { float:none; width:auto; margin:0; padding:0 8px; color:var(--partners-ink); font-size:21px; font-weight:500; line-height:1.5; }
.th-referral-page legend > span { color:#886935; font-size:12px; margin-right:12px; }
.th-referral-page .th-re-fields { display:grid; grid-template-columns:minmax(0,1fr); gap:22px; }
.th-referral-page label { display:block; margin:0 0 10px; color:var(--partners-ink); font-size:15px; font-weight:500; line-height:1.6; }
.th-referral-page label > span { color:#886935; }
.th-referral-page label small { font-size:13px; color:var(--partners-muted); font-weight:400; }
.th-referral-page :is(input,select,textarea) { display:block; width:100%; min-width:0; min-height:51px; height:auto; margin:0; padding:12px 14px; border:1px solid #d3cbbc; border-radius:9px; background:#fff; color:var(--partners-ink); font:400 16px/1.6 Inter,"Helvetica Neue",Arial,sans-serif; }
.th-referral-page select { padding-right:30px; }
.th-referral-page textarea { min-height:115px; resize:vertical; }
.th-referral-page :is(input,textarea)::placeholder { color:#727f89; opacity:1; }
.th-referral-page :is(input,select,textarea):focus-visible { outline:2px solid #ac8d56; outline-offset:3px; }
.th-referral-page .th-re-form-bottom { padding-top:28px; }
.th-referral-page .th-re-consent { display:grid; grid-template-columns:22px minmax(0,1fr); align-items:start; gap:15px; margin:24px 0; font-weight:400; cursor:pointer; }
.th-referral-page .th-re-consent > input { width:21px; height:21px; min-height:21px; padding:0; margin:3px 0 0; appearance:auto; accent-color:#886935; }
.th-referral-page .th-re-consent > span { color:var(--partners-muted); font-size:14px; }
.th-referral-page .th-re-consent b { color:#886935; font-weight:500; }
.th-referral-page .th-re-form-foot { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:20px; padding-top:23px; border-top:1px solid var(--partners-line); }
.th-referral-page .th-re-form-foot > span { color:var(--partners-muted); font-size:13px; }
.th-referral-page .th-partners-button:disabled { opacity:.5; cursor:not-allowed; transform:none; }
.th-referral-page .th-re-small { margin-top:17px; color:var(--partners-muted); font-size:14px; }
.th-referral-page [hidden] { display:none!important; }
.th-referral-page .th-re-review { margin-top:30px; padding:30px; border:1px solid #c5b392; border-radius:16px; background:#eee4d3; }
.th-referral-page .th-re-review h3 { margin-bottom:22px; }
.th-referral-page .th-re-review pre { margin:0 0 25px; white-space:pre-wrap; overflow-wrap:anywhere; word-break:normal; color:var(--partners-ink); font:400 15px/1.8 Inter,"Helvetica Neue",Arial,sans-serif; }
.th-referral-page button.th-partners-link { border:0; background:transparent; padding:0; cursor:pointer; }
.th-referral-page #th-re-status { margin-top:20px; font-size:14px; }
.th-referral-page #th-re-status:empty { display:none; }
.th-referral-page .th-re-faq { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:60px; border-radius:24px; background:#faf8f3; border:1px solid var(--partners-line); }
.th-referral-page .th-re-faq h2 { margin-bottom:25px; }
.th-referral-page .th-re-faq details { border-bottom:1px solid var(--partners-line); }
.th-referral-page .th-re-faq summary { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:20px 0; list-style:none; color:var(--partners-ink); font-size:16px; line-height:1.6; font-weight:500; cursor:pointer; }
.th-referral-page .th-re-faq summary::-webkit-details-marker { display:none; }
.th-referral-page .th-re-faq summary > span { flex:0 0 22px; color:#886935; font-size:23px; text-align:center; }
.th-referral-page .th-re-faq details[open] summary > span { transform:rotate(45deg); }
.th-referral-page .th-re-faq details p { padding-bottom:23px; font-size:15px; }
.th-referral-page .th-re-faq details a { color:#806232; text-decoration:underline; text-underline-offset:4px; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-referral-page .th-re-cover h1 { font-size:57px; margin-bottom:20px; }
  .th-referral-page .th-re-cover__lead { margin-bottom:23px; }
  .th-referral-page .th-re-ticket { margin-top:30px; }
  .th-referral-page .th-re-ticket__message,.th-referral-page .th-re-ticket__stub { padding:25px; }
  .th-referral-page .th-re-ticket h2 { font-size:30px; }
  .th-referral-page .th-re-ticket__stamp { margin:18px 0; width:46px; height:46px; font-size:28px; }
}
@media (max-width:1199px) { .th-referral-page .th-partners-shell > .th-re-possibilities,.th-referral-page .th-re-rewards,.th-referral-page .th-re-faq { gap:35px; } }
@media (max-width:991px) {
  .th-referral-page .th-partners-shell > .th-re-possibilities,.th-referral-page .th-re-rewards,.th-referral-page .th-re-faq { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-referral-page .th-re-journey ol { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
  .th-referral-page .th-re-journey li { border-left:0; padding:23px 0 0; }
  .th-referral-page .th-re-section-head { flex-direction:column; align-items:start; gap:23px; }
  .th-referral-page .th-re-section-head > p { max-width:600px; }
  .th-referral-page .th-re-form-columns { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:767px) {
  .th-referral-page .th-re-cover h1 { font-size:clamp(39px,10vw,54px); }
  .th-referral-page .th-re-cover__lead { font-size:16px; }
  .th-referral-page .th-re-ticket { grid-template-columns:minmax(0,1fr); margin-top:30px; }
  .th-referral-page .th-re-ticket__message,.th-referral-page .th-re-ticket__stub { padding:26px 20px; }
  .th-referral-page .th-re-ticket__stub { border-left:0; border-top:1px dashed #85918d; }
  .th-referral-page .th-re-ticket__stub::before { left:-10px; top:-10px; }
  .th-referral-page .th-re-ticket__stub::after { left:auto; right:-10px; top:-10px; bottom:auto; }
  .th-referral-page .th-re-ticket__stub > strong { font-size:22px; }
  .th-referral-page .th-re-cover > .th-re-actions { flex-direction:column; gap:20px; }
  .th-referral-page .th-partners-shell > .th-re-possibilities,.th-referral-page .th-partners-shell > .th-re-journey { padding:20px 0; }
  .th-referral-page .th-re-possibility-list article { grid-template-columns:27px minmax(0,1fr); gap:17px; }
  .th-referral-page .th-re-journey ol { grid-template-columns:minmax(0,1fr); }
  .th-referral-page fieldset { padding:24px 18px; }
  .th-referral-page legend { font-size:19px; }
  .th-referral-page .th-re-review { padding:26px 20px; }
  .th-referral-page .th-re-form-foot { align-items:stretch; flex-direction:column; }
  .th-referral-page .th-re-review .th-re-actions { align-items:start; flex-direction:column; }
}


/* MORTGAGE GUIDES: isolated reference-desk design inside the Partners page. */
.th-mortgage-guides-page [hidden] { display:none !important; }
.th-mortgage-guides-page .th-mg-cover { background:#192630; border-radius:24px; color:#fff; overflow:hidden; }
.th-mortgage-guides-page .th-mg-cover__top,.th-mortgage-guides-page .th-mg-cover__bottom { display:flex; justify-content:space-between; flex-wrap:wrap; gap:14px 24px; color:#cbd4da; font-size:11px; letter-spacing:.09em; }
.th-mortgage-guides-page .th-mg-cover__top { padding-bottom:23px; border-bottom:1px solid #50606a; }
.th-mortgage-guides-page .th-mg-cover__bottom { padding-top:24px; border-top:1px solid #50606a; font-size:13px; letter-spacing:0; }
.th-mortgage-guides-page .th-mg-cover__layout { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr); gap:65px; align-items:center; padding:42px 0; }
.th-mortgage-guides-page .th-mg-cover h1 { font-size:clamp(44px,4.25vw,72px); color:#fff; margin-bottom:28px; }
.th-mortgage-guides-page .th-mg-cover h1 em { font-family:Georgia,serif; color:#e5c38a; font-weight:400; }
.th-mortgage-guides-page .th-mg-cover p:not(.th-partners-eyebrow) { color:#ced8df; max-width:690px; margin-bottom:28px; }
.th-mortgage-guides-page .th-mg-cover .th-partners-eyebrow { color:#e5c38a; }
.th-mortgage-guides-page .th-mg-cover .th-partners-button { background:#fff; color:#171918; }
.th-mortgage-guides-page .th-mg-paper { position:relative; min-width:0; margin:15px; }
.th-mortgage-guides-page .th-mg-paper__back { position:absolute; inset:0; transform:rotate(5deg); background:#ac8d56; border-radius:10px; }
.th-mortgage-guides-page .th-mg-paper__front { position:relative; padding:30px 25px; background:#f7f4ec; border-radius:10px; color:#192630; }
.th-mortgage-guides-page .th-mg-paper__front > span { display:block; font-size:10px; letter-spacing:.08em; color:#886935; }
.th-mortgage-guides-page .th-mg-paper__front > strong { display:block; font-family:Georgia,serif; font-size:clamp(27px,2.5vw,40px); line-height:1.15; font-weight:400; margin:28px 0; }
.th-mortgage-guides-page .th-mg-paper__front > div { display:flex; gap:15px; align-items:center; font-size:13px; padding:15px 0; border-top:1px solid #ded8cc; }
.th-mortgage-guides-page .th-mg-paper__front i { font-style:normal; color:#886935; font-size:11px; }
.th-mortgage-guides-page .th-mg-paper svg { display:block; width:100%; height:auto; margin-top:20px; fill:none; stroke:#ac8d56; stroke-width:2; }
.th-mortgage-guides-page .th-partners-shell > .th-mg-routes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; padding:28px 0; }
.th-mortgage-guides-page .th-mg-routes > a { position:relative; padding:25px 36px 20px 0; border-top:2px solid #ac8d56; color:#171918; }
.th-mortgage-guides-page .th-mg-routes a > span,.th-mortgage-guides-page .th-mg-small { display:block; font-size:11px; color:#886935; letter-spacing:.09em; line-height:1.6; }
.th-mortgage-guides-page .th-mg-routes h2 { font-size:25px; margin:22px 0 18px; }
.th-mortgage-guides-page .th-mg-routes b { position:absolute; right:0; top:25px; font-size:25px; font-weight:400; color:#886935; }
.th-mortgage-guides-page .th-partners-shell > :is(.th-mg-handbook,.th-mg-glossary,.th-mg-faq) { padding:28px 0; }
.th-mortgage-guides-page .th-mg-section-head { display:flex; justify-content:space-between; align-items:end; gap:32px; margin-bottom:34px; }
.th-mortgage-guides-page .th-mg-section-head > p { max-width:400px; }
.th-mortgage-guides-page .th-mg-chapter-group { display:grid; grid-template-columns:minmax(0,.35fr) minmax(0,1fr); gap:0 45px; margin-top:32px; }
.th-mortgage-guides-page .th-mg-group-heading { grid-row:1/3; padding:25px 0; border-top:1px solid #cfc6b7; }
.th-mortgage-guides-page .th-mg-group-heading > span { display:block; font-size:12px; color:#886935; letter-spacing:.1em; margin-bottom:20px; }
.th-mortgage-guides-page .th-mg-group-heading > p { font-size:16px; }
.th-mortgage-guides-page .th-mg-chapters details { grid-column:2; border-top:1px solid #cfc6b7; }
.th-mortgage-guides-page .th-mg-chapters summary { display:grid; grid-template-columns:30px minmax(0,1fr) 25px; gap:20px; align-items:center; padding:25px 0; cursor:pointer; list-style:none; }
.th-mortgage-guides-page .th-mg-chapters summary::-webkit-details-marker,.th-mortgage-guides-page .th-mg-faq-list summary::-webkit-details-marker { display:none; }
.th-mortgage-guides-page .th-mg-chapters summary > span { font-size:12px; color:#886935; }
.th-mortgage-guides-page .th-mg-chapters summary h3 { font-size:clamp(23px,1.9vw,29px); }
.th-mortgage-guides-page .th-mg-chapters summary i { font-size:24px; font-style:normal; color:#886935; text-align:center; transition:transform .2s; }
.th-mortgage-guides-page details[open] > summary :is(i,span:last-child) { transform:rotate(45deg); }
.th-mortgage-guides-page .th-mg-reading { padding:0 45px 30px 50px; }
.th-mortgage-guides-page .th-mg-reading p { margin-bottom:20px; }
.th-mortgage-guides-page .th-mg-reading blockquote { margin:24px 0; padding:18px 22px; border-left:3px solid #ac8d56; background:#f5f1e7; font-size:inherit; line-height:1.7; color:#192630; }
.th-mortgage-guides-page .th-mg-reading > a,.th-mortgage-guides-page .th-mg-source { display:block; width:fit-content; margin-top:16px; color:#475e76; font-size:14px; line-height:1.65; text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
.th-mortgage-guides-page .th-mg-offer { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:60px; background:#f4eee0; border:1px solid #d8c9ad; border-radius:24px; }
.th-mortgage-guides-page .th-mg-offer h2 { margin-bottom:24px; }
.th-mortgage-guides-page .th-mg-offer-rows > div { display:grid; grid-template-columns:25px minmax(0,.65fr) minmax(0,1fr); gap:17px; padding:20px 0; border-top:1px solid #d8c9ad; align-items:start; }
.th-mortgage-guides-page .th-mg-offer-rows > div > span { font-size:12px; color:#886935; }
.th-mortgage-guides-page .th-mg-offer-rows strong { font-size:17px; line-height:1.6; font-weight:600; }
.th-mortgage-guides-page .th-mg-offer-rows p { font-size:16px; }
.th-mortgage-guides-page .th-mg-search { display:block; width:320px; max-width:100%; margin:0; }
.th-mortgage-guides-page .th-mg-search > span { display:block; font-size:13px; color:#647184; margin-bottom:8px; }
.th-mortgage-guides-page .th-mg-search input { width:100%; height:49px; margin:0; padding:12px 16px; border:1px solid #cfc6b7; border-radius:8px; font:inherit; font-size:16px; background:#faf9f6; color:#171918; }
.th-mortgage-guides-page input:focus-visible { outline:3px solid #ac8d56; outline-offset:3px; }
.th-mortgage-guides-page #th-mg-count { margin-bottom:18px; font-size:13px; letter-spacing:0; }
.th-mortgage-guides-page .th-mg-terms { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 45px; }
.th-mortgage-guides-page .th-mg-terms > div { padding:23px 0; border-top:1px solid #cfc6b7; }
.th-mortgage-guides-page .th-mg-terms dt { font-size:20px; line-height:1.5; font-weight:500; margin-bottom:12px; }
.th-mortgage-guides-page .th-mg-terms dd { margin:0; color:#647184; }
.th-mortgage-guides-page .th-mg-tools { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:60px; border-radius:24px; background:#fff; border:1px solid #ded8cc; }
.th-mortgage-guides-page .th-mg-tools h2 { margin-bottom:23px; }
.th-mortgage-guides-page .th-mg-tools > div:last-child > a { display:block; padding:21px 0; border-top:1px solid #ded8cc; color:#171918; }
.th-mortgage-guides-page .th-mg-tools strong { display:block; font-size:21px; font-weight:500; }
.th-mortgage-guides-page .th-mg-tools a > span { display:block; font-size:15px; color:#647184; margin-top:8px; }
.th-mortgage-guides-page .th-mg-faq-list details { border-top:1px solid #cfc6b7; }
.th-mortgage-guides-page .th-mg-faq-list summary { display:flex; justify-content:space-between; align-items:center; gap:22px; padding:23px 0; font-size:18px; font-weight:500; line-height:1.5; list-style:none; cursor:pointer; }
.th-mortgage-guides-page .th-mg-faq-list summary > span { color:#886935; font-size:24px; flex:0 0 24px; text-align:center; transition:transform .2s; }
.th-mortgage-guides-page .th-mg-faq-list details > p { padding:0 36px 25px 0; max-width:900px; }
.th-mortgage-guides-page .th-mg-contact { display:flex; justify-content:space-between; align-items:center; gap:40px; border-radius:24px; background:#ac8d56; }
.th-mortgage-guides-page .th-mg-contact :is(h2,p,.th-partners-eyebrow),.th-mortgage-guides-page .th-mg-contact h2 em { color:#fff; }
.th-mortgage-guides-page .th-mg-contact h2 { margin-bottom:23px; }
.th-mortgage-guides-page .th-mg-contact p { max-width:650px; }
.th-mortgage-guides-page .th-mg-contact > a { flex-shrink:0; }
.th-mortgage-guides-page .th-mg-editor-note { margin:0; font-size:13px; max-width:850px; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-mortgage-guides-page .th-mg-cover h1 { font-size:53px; }
  .th-mortgage-guides-page .th-mg-cover__layout { gap:40px; padding:28px 0; }
  .th-mortgage-guides-page .th-mg-paper__front { padding:24px 22px; }
}
@media screen and (max-width:991px) {
  .th-mortgage-guides-page .th-mg-cover__layout { grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:30px; }
  .th-mortgage-guides-page .th-mg-section-head { align-items:start; flex-direction:column; gap:23px; }
  .th-mortgage-guides-page .th-mg-section-head > p { max-width:650px; }
  .th-mortgage-guides-page .th-mg-offer,.th-mortgage-guides-page .th-mg-tools { grid-template-columns:minmax(0,1fr); gap:35px; }
  .th-mortgage-guides-page .th-mg-contact { flex-direction:column; align-items:start; gap:30px; }
}
@media screen and (max-width:767px) {
  .th-mortgage-guides-page .th-mg-cover__layout { grid-template-columns:minmax(0,1fr); padding:30px 0; gap:34px; }
  .th-mortgage-guides-page .th-mg-cover h1 { font-size:clamp(37px,9.5vw,52px); }
  .th-mortgage-guides-page .th-mg-paper { max-width:330px; width:calc(100% - 20px); margin:10px auto; }
  .th-mortgage-guides-page .th-mg-paper__front > strong { font-size:33px; }
  .th-mortgage-guides-page .th-partners-shell > .th-mg-routes { grid-template-columns:minmax(0,1fr); gap:22px; }
  .th-mortgage-guides-page .th-mg-chapter-group { grid-template-columns:minmax(0,1fr); gap:0; }
  .th-mortgage-guides-page .th-mg-group-heading { grid-row:auto; }
  .th-mortgage-guides-page .th-mg-chapters details { grid-column:1; }
  .th-mortgage-guides-page .th-mg-chapters summary { grid-template-columns:22px minmax(0,1fr) 22px; gap:12px; }
  .th-mortgage-guides-page .th-mg-chapters summary h3 { font-size:23px; }
  .th-mortgage-guides-page .th-mg-reading { padding:0 0 27px; }
  .th-mortgage-guides-page .th-mg-reading blockquote { padding:18px; }
  .th-mortgage-guides-page .th-mg-offer-rows > div { grid-template-columns:24px minmax(0,1fr); gap:8px 14px; }
  .th-mortgage-guides-page .th-mg-offer-rows p { grid-column:2; }
  .th-mortgage-guides-page .th-mg-search { width:100%; }
  .th-mortgage-guides-page .th-mg-terms { grid-template-columns:minmax(0,1fr); }
  .th-mortgage-guides-page .th-mg-faq-list summary { font-size:17px; }
  .th-mortgage-guides-page .th-mg-faq-list details > p { padding-right:0; }
}
@media (prefers-reduced-motion:reduce) { .th-mortgage-guides-page summary :is(i,span) { transition:none; } }


/* FAQ PAGE: all additions are scoped to this page. */
.th-faq-page [hidden] { display:none !important; }
.th-faq-page .th-partners-shell > .th-fq-cover { padding:20px 0 28px; }
.th-faq-page .th-fq-cover__top { display:flex; justify-content:space-between; align-items:center; gap:20px; flex-wrap:wrap; border-bottom:1px solid #cfc6b7; padding-bottom:22px; font-size:11px; letter-spacing:.1em; color:#647184; }
.th-faq-page .th-fq-cover__top > a { font-size:14px; letter-spacing:0; color:#171918; }
.th-faq-page .th-fq-cover__top > a > span { color:#886935; margin-left:12px; }
.th-faq-page .th-fq-cover__body { display:grid; grid-template-columns:minmax(0,.45fr) minmax(0,1.4fr); gap:50px; align-items:center; padding:48px 0; }
.th-faq-page .th-fq-cover h1 { font-size:clamp(50px,5.5vw,88px); margin-bottom:28px; }
.th-faq-page .th-fq-cover h1 em { font-family:Georgia,serif; font-weight:400; color:#ac8d56; }
.th-faq-page .th-fq-cover__body p:not(.th-partners-eyebrow) { max-width:680px; font-size:clamp(17px,1.3vw,21px); }
.th-faq-page .th-fq-symbol { display:grid; place-items:center; aspect-ratio:1; width:100%; max-width:240px; border:1px solid #bdaa83; border-radius:50%; font-family:Georgia,serif; font-style:italic; font-size:clamp(100px,14vw,210px); line-height:1; color:#ac8d56; background:radial-gradient(circle,#eee4cf 0,transparent 72%); }
.th-faq-page .th-fq-popular { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.th-faq-page .th-fq-popular > span { font-size:11px; color:#886935; letter-spacing:.1em; margin-right:10px; }
.th-faq-page .th-fq-popular > a { padding:11px 17px; border-radius:999px; border:1px solid #cfc6b7; color:#171918; font-size:14px; line-height:1.6; }
.th-faq-page .th-fq-popular > a:hover { background:#f4eee0; }
.th-faq-page .th-fq-search-desk { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); align-items:center; gap:40px; background:#fff; border:1px solid #ded8cc; border-radius:24px; }
.th-faq-page .th-fq-search-desk h2 { font-size:30px; margin-bottom:13px; }
.th-faq-page .th-fq-search-desk > div > p { font-size:14px; }
.th-faq-page .th-fq-search-controls label { display:block; font-size:13px; color:#647184; margin-bottom:9px; }
.th-faq-page .th-fq-search-controls > div { display:flex; align-items:center; border:1px solid #cfc6b7; border-radius:9px; background:#faf9f6; }
.th-faq-page .th-fq-search-controls input { flex:1; width:100%; min-width:0; height:53px; margin:0; padding:13px 17px; border:0; border-radius:9px; font-family:inherit; font-size:16px; color:#171918; background:transparent; }
.th-faq-page .th-fq-search-controls button { flex-shrink:0; min-height:44px; margin:4px; padding:8px 15px; border:0; border-radius:6px; background:#ece7dd; font-family:inherit; font-size:14px; color:#171918; cursor:pointer; }
.th-faq-page input:focus-visible { outline:3px solid #ac8d56; outline-offset:3px; }
.th-faq-page .th-partners-shell > .th-fq-library { display:grid; grid-template-columns:minmax(0,.32fr) minmax(0,1fr); align-items:start; gap:60px; padding:28px 0; }
.th-faq-page .th-fq-topic-desk { position:sticky; top:140px; max-height:calc(100vh - 160px); overflow:auto; scrollbar-width:thin; padding:5px; }
.th-faq-page .th-fq-topic-desk .th-partners-eyebrow { margin-bottom:20px; }
.th-faq-page .th-fq-topic-desk nav { display:grid; gap:3px; }
.th-faq-page .th-fq-topic-desk nav > a { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:14px 16px; border:1px solid transparent; border-radius:8px; color:#171918; font-size:14px; font-weight:500; line-height:1.5; }
.th-faq-page .th-fq-topic-desk nav > a[aria-current="true"] { background:#192630; color:#fff; }
.th-faq-page .th-fq-topic-desk nav > a > span { font-size:12px; color:#886935; }
.th-faq-page .th-fq-topic-desk nav > a[aria-current="true"] > span { color:#e5c38a; }
.th-faq-page .th-fq-topic-note { padding-top:23px; border-top:1px solid #cfc6b7; margin-top:28px; }
.th-faq-page .th-fq-topic-note strong { display:block; font-size:18px; line-height:1.5; font-weight:500; margin-bottom:14px; }
.th-faq-page .th-fq-topic-note p { font-size:14px; margin-bottom:18px; }
.th-faq-page .th-fq-answers { min-width:0; }
.th-faq-page .th-fq-library-head { padding-bottom:25px; border-bottom:1px solid #cfc6b7; }
.th-faq-page .th-fq-library-head h2 { font-size:30px; margin-bottom:15px; }
.th-faq-page #th-fq-count { font-size:14px; }
.th-faq-page .th-fq-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; }
.th-faq-page .th-fq-actions button { min-height:44px; padding:10px 16px; border:1px solid #cfc6b7; border-radius:6px; background:transparent; color:#171918; font-family:inherit; font-size:14px; cursor:pointer; }
.th-faq-page .th-fq-group { padding:0; margin:0; min-width:0; }
.th-faq-page .th-fq-group-head { padding:32px 0 22px; }
.th-faq-page .th-fq-group-head h3 { font-size:26px; margin-bottom:13px; }
.th-faq-page .th-fq-group-head p { font-size:15px; }
.th-faq-page .th-fq-group details { border-top:1px solid #ded8cc; }
.th-faq-page .th-fq-group summary { display:flex; justify-content:space-between; gap:24px; align-items:center; padding:23px 0; font-size:18px; font-weight:500; line-height:1.55; color:#171918; cursor:pointer; list-style:none; }
.th-faq-page .th-fq-group summary::-webkit-details-marker { display:none; }
.th-faq-page .th-fq-group summary > span { flex:0 0 24px; font-size:24px; font-weight:400; text-align:center; color:#886935; transition:transform .2s; }
.th-faq-page .th-fq-group details[open] summary > span { transform:rotate(45deg); }
.th-faq-page .th-fq-group details[open] summary { color:#785b2e; }
.th-faq-page .th-fq-group details > div { padding:0 42px 28px 0; }
.th-faq-page .th-fq-group details > div > a { display:inline-block; margin-top:19px; font-size:14px; color:#475e76; line-height:1.6; text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
.th-faq-page .th-fq-empty { padding:32px 0; }
.th-faq-page .th-fq-empty > p { margin:18px 0 25px; }
.th-faq-page .th-fq-empty > a { margin-left:22px; }
.th-faq-page .th-fq-contact { display:flex; justify-content:space-between; align-items:center; gap:45px; border-radius:24px; background:#192630; }
.th-faq-page .th-fq-contact h2 { color:#fff; margin-bottom:23px; }
.th-faq-page .th-fq-contact h2 em { color:#e5c38a; }
.th-faq-page .th-fq-contact .th-partners-eyebrow { color:#e5c38a; }
.th-faq-page .th-fq-contact p:not(.th-partners-eyebrow) { color:#ced8df; max-width:650px; }
.th-faq-page .th-fq-contact-links { display:grid; gap:17px; flex-shrink:0; }
.th-faq-page .th-fq-contact-links > a { color:#fff; overflow-wrap:anywhere; }
.th-faq-page .th-fq-contact-links .th-partners-button { background:#fff; color:#171918; margin-bottom:7px; }
.th-faq-page .th-fq-editor-note { font-size:13px; max-width:850px; margin:0; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-faq-page .th-fq-cover h1 { font-size:62px; }
  .th-faq-page .th-fq-cover__body { padding:32px 0; gap:38px; }
  .th-faq-page .th-fq-symbol { max-width:180px; font-size:155px; }
  .th-faq-page .th-partners-shell > .th-fq-library { gap:40px; }
}
@media screen and (max-width:991px) {
  .th-faq-page .th-fq-cover__body { grid-template-columns:130px minmax(0,1fr); gap:30px; }
  .th-faq-page .th-fq-symbol { font-size:110px; }
  .th-faq-page .th-fq-search-desk { grid-template-columns:minmax(0,1fr); gap:24px; }
  .th-faq-page .th-partners-shell > .th-fq-library { grid-template-columns:minmax(0,1fr); gap:30px; }
  .th-faq-page .th-fq-topic-desk { position:static; max-height:none; overflow:visible; }
  .th-faq-page .th-fq-topic-desk nav { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
  .th-faq-page .th-fq-topic-desk nav > a { border-color:#cfc6b7; }
  .th-faq-page .th-fq-topic-note { display:none; }
  .th-faq-page .th-fq-contact { flex-direction:column; align-items:start; gap:30px; }
}
@media screen and (max-width:767px) {
  .th-faq-page .th-fq-cover__body { grid-template-columns:minmax(0,1fr); padding:28px 0; gap:25px; }
  .th-faq-page .th-fq-symbol { width:65px; font-size:58px; }
  .th-faq-page .th-fq-cover h1 { font-size:clamp(40px,10vw,57px); }
  .th-faq-page .th-fq-popular { align-items:start; }
  .th-faq-page .th-fq-popular > span { width:100%; }
  .th-faq-page .th-fq-popular > a { font-size:13px; }
  .th-faq-page .th-fq-topic-desk nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .th-faq-page .th-fq-topic-desk nav > a { padding:12px; font-size:13px; }
  .th-faq-page .th-fq-topic-desk nav > a:first-child { grid-column:1/-1; }
  .th-faq-page .th-fq-group summary { font-size:17px; padding:22px 0; gap:17px; }
  .th-faq-page .th-fq-group details > div { padding-right:0; }
  .th-faq-page .th-fq-group-head h3 { font-size:25px; }
  .th-faq-page .th-fq-empty > a { margin:22px 0 0; display:flex; }
  .th-faq-page .th-fq-contact-links { width:100%; min-width:0; }
}
@media (prefers-reduced-motion:reduce) { .th-faq-page .th-fq-group summary > span { transition:none; } }


/* TERMS & CONDITIONS: readable legal folio, isolated to this main element. */
.th-terms-page [hidden] { display:none !important; }
.th-terms-page .th-tc-cover { background:#faf9f6; border:1px solid #ded8cc; border-radius:24px; }
.th-terms-page .th-tc-masthead { display:flex; justify-content:space-between; flex-wrap:wrap; gap:14px 24px; padding-bottom:22px; border-bottom:1px solid #ded8cc; font-size:11px; letter-spacing:.1em; color:#647184; }
.th-terms-page .th-tc-heading { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); align-items:end; gap:50px; padding:36px 0; }
.th-terms-page .th-tc-heading h1 { font-size:clamp(51px,5.1vw,82px); }
.th-terms-page .th-tc-heading h1 em { font-family:Georgia,serif; font-weight:400; color:#ac8d56; }
.th-terms-page .th-tc-heading > div > p:not(.th-partners-eyebrow) { margin-bottom:25px; max-width:440px; }
.th-terms-page .th-tc-meta { display:flex; flex-wrap:wrap; align-items:center; gap:16px 28px; padding-top:24px; border-top:1px solid #ded8cc; font-size:13px; color:#647184; }
.th-terms-page .th-tc-status { margin-left:auto; background:#ece4d2; border:1px solid #d8c8a9; color:#795a2d; border-radius:999px; padding:6px 15px; font-size:12px; }
.th-terms-page .th-partners-shell > .th-tc-summary { padding:26px 0; }
.th-terms-page .th-tc-summary h2 { font-size:clamp(30px,2.5vw,40px); }
.th-terms-page .th-tc-summary-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; margin-top:28px; }
.th-terms-page .th-tc-summary-grid > div { padding-top:22px; border-top:1px solid #cfc6b7; }
.th-terms-page .th-tc-summary-grid span { display:block; font-size:11px; letter-spacing:.09em; color:#886935; margin-bottom:16px; }
.th-terms-page .th-partners-shell > .th-tc-document { display:grid; grid-template-columns:minmax(0,.33fr) minmax(0,1fr); align-items:start; gap:40px; padding:0; }
.th-terms-page .th-tc-index { position:sticky; top:140px; max-height:calc(100vh - 160px); overflow:auto; scrollbar-width:thin; padding:5px; }
.th-terms-page .th-tc-index nav { display:grid; gap:3px; }
.th-terms-page .th-tc-index nav > a { display:block; padding:11px 13px; border-left:2px solid transparent; color:#647184; font-size:13px; line-height:1.5; }
.th-terms-page .th-tc-index nav > a[aria-current="true"] { border-color:#ac8d56; background:#f2ede2; color:#171918; }
.th-terms-page .th-tc-index > button { border:0; background:transparent; padding:0; margin-top:26px; cursor:pointer; font-size:14px; }
.th-terms-page .th-tc-paper { padding:38px; min-width:0; border:1px solid #ded8cc; border-radius:20px; background:#fff; }
.th-terms-page .th-tc-paper-heading { padding-bottom:25px; border-bottom:1px solid #ded8cc; }
.th-terms-page .th-tc-paper-heading h2 { font-size:29px; margin-bottom:22px; }
.th-terms-page .th-tc-review { padding:18px 20px; border-left:3px solid #ac8d56; background:#f7f3e9; color:#795a2d; font-size:14px; line-height:1.7; }
.th-terms-page .th-tc-paper article { padding:30px 0; border-bottom:1px solid #ded8cc; }
.th-terms-page .th-tc-paper article:last-child { border-bottom:0; padding-bottom:0; }
.th-terms-page .th-tc-clause-title { display:flex; align-items:baseline; gap:20px; margin-bottom:24px; }
.th-terms-page .th-tc-clause-title > span { color:#886935; font-size:12px; flex:0 0 20px; }
.th-terms-page .th-tc-clause-title h3 { font-size:25px; line-height:1.25; }
.th-terms-page .th-tc-paper article > p { margin-bottom:20px; line-height:1.85; }
.th-terms-page .th-tc-paper article > p:last-child { margin-bottom:0; }
.th-terms-page .th-tc-paper p > a { color:#475e76; text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
.th-terms-page .th-tc-operator { margin:27px 0; padding:22px; background:#faf9f6; border:1px solid #ded8cc; border-radius:10px; }
.th-terms-page .th-tc-operator > div + div { margin-top:25px; }
.th-terms-page .th-tc-operator dt { font-size:13px; color:#647184; font-weight:500; }
.th-terms-page .th-tc-operator dd { margin:0; min-height:40px; }
.th-terms-page .th-tc-blank { display:block; min-height:40px; border-bottom:1px dashed #c5b491; }
.th-terms-page .th-tc-blank--address { min-height:65px; }
.th-terms-page .th-tc-contact { display:flex; justify-content:space-between; align-items:center; gap:40px; background:#ac8d56; border-radius:24px; }
.th-terms-page .th-tc-contact :is(h2,p,.th-partners-eyebrow),.th-terms-page .th-tc-contact h2 em { color:#fff; }
.th-terms-page .th-tc-contact h2 { margin-bottom:23px; }
.th-terms-page .th-tc-contact p { max-width:650px; }
.th-terms-page .th-tc-contact > a { flex-shrink:0; }
.th-terms-page .th-tc-references { display:flex; flex-wrap:wrap; gap:14px 25px; padding:0 0 15px; font-size:13px; line-height:1.6; }
.th-terms-page .th-tc-references > span { width:100%; color:#647184; }
.th-terms-page .th-tc-references > a { color:#475e76; text-decoration:underline; text-underline-offset:4px; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-terms-page .th-tc-heading { padding:27px 0; }
  .th-terms-page .th-tc-heading h1 { font-size:60px; }
  .th-terms-page .th-tc-paper { padding:30px; }
  .th-terms-page .th-partners-shell > .th-tc-document { gap:30px; }
}
@media screen and (max-width:991px) {
  .th-terms-page .th-tc-heading { gap:30px; }
  .th-terms-page .th-partners-shell > .th-tc-document { grid-template-columns:minmax(0,1fr); gap:28px; }
  .th-terms-page .th-tc-index { position:static; max-height:none; overflow:visible; }
  .th-terms-page .th-tc-index nav { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
  .th-terms-page .th-tc-index nav > a { border:1px solid #cfc6b7; border-radius:6px; }
  .th-terms-page .th-tc-contact { flex-direction:column; align-items:start; gap:30px; }
}
@media screen and (max-width:767px) {
  .th-terms-page .th-tc-heading { grid-template-columns:minmax(0,1fr); gap:25px; padding:28px 0; }
  .th-terms-page .th-tc-heading h1 { font-size:clamp(42px,10.5vw,58px); }
  .th-terms-page .th-tc-status { margin-left:0; }
  .th-terms-page .th-tc-summary-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  .th-terms-page .th-tc-index nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .th-terms-page .th-tc-paper { padding:30px 22px; }
  .th-terms-page .th-tc-paper-heading h2 { font-size:26px; }
  .th-terms-page .th-tc-clause-title { gap:13px; }
  .th-terms-page .th-tc-clause-title h3 { font-size:23px; }
  .th-terms-page .th-tc-operator { padding:20px 17px; }
}


/* PRIVACY POLICY: scoped styles; other Partners and legal pages are preserved. */
.th-privacy-page .th-pv-cover { background:#192630; color:#fff; border-radius:24px; }
.th-privacy-page .th-pv-top { display:flex; justify-content:space-between; flex-wrap:wrap; gap:14px 24px; padding-bottom:23px; border-bottom:1px solid #50606a; font-size:11px; letter-spacing:.09em; color:#ced8df; }
.th-privacy-page .th-pv-cover-grid { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr); align-items:center; gap:60px; padding-top:36px; }
.th-privacy-page .th-pv-cover h1 { color:#fff; font-size:clamp(48px,4.9vw,80px); margin-bottom:28px; }
.th-privacy-page .th-pv-cover h1 em { font-family:Georgia,serif; font-weight:400; color:#e5c38a; }
.th-privacy-page .th-pv-cover .th-partners-eyebrow { color:#e5c38a; }
.th-privacy-page .th-pv-cover p:not(.th-partners-eyebrow) { color:#ced8df; max-width:670px; margin-bottom:30px; }
.th-privacy-page .th-pv-cover .th-partners-button { background:#fff; color:#171918; }
.th-privacy-page .th-pv-mark { max-width:260px; width:100%; margin:0 auto; text-align:center; }
.th-privacy-page .th-pv-mark svg { display:block; width:100%; height:auto; fill:none; stroke:#ac8d56; stroke-width:1.5; stroke-linejoin:round; stroke-linecap:round; }
.th-privacy-page .th-pv-mark svg path:not(:first-child),.th-privacy-page .th-pv-mark svg circle { stroke:#e5c38a; }
.th-privacy-page .th-pv-mark > span { display:block; color:#e5c38a; font-size:10px; letter-spacing:.12em; margin-top:18px; }
.th-privacy-page .th-partners-shell > .th-pv-map { padding:28px 0; }
.th-privacy-page .th-pv-section-head { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-bottom:32px; }
.th-privacy-page .th-pv-section-head > p { max-width:400px; }
.th-privacy-page .th-pv-map-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; }
.th-privacy-page .th-pv-map-grid > div { padding-top:23px; border-top:2px solid #ac8d56; }
.th-privacy-page .th-pv-map-grid span { display:block; margin-bottom:23px; color:#886935; font-size:11px; letter-spacing:.09em; }
.th-privacy-page .th-pv-map-grid h3 { font-size:25px; margin-bottom:18px; }
.th-privacy-page .th-pv-notice { background:#fff; border:1px solid #ded8cc; border-radius:24px; }
.th-privacy-page .th-pv-notice-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:28px; }
.th-privacy-page .th-pv-notice-heading nav { display:grid; gap:10px; }
.th-privacy-page .th-pv-notice-heading nav > a { padding:7px 0; color:#475e76; font-size:14px; border-bottom:1px solid #ded8cc; }
.th-privacy-page .th-pv-review { padding:19px 22px; border-left:3px solid #ac8d56; background:#f7f3e9; color:#795a2d; font-size:14px; line-height:1.75; margin-bottom:35px; }
.th-privacy-page .th-pv-chapter { display:grid; grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr); gap:50px; padding-top:30px; margin-top:30px; border-top:1px solid #ded8cc; }
.th-privacy-page .th-pv-chapter-label > span { display:block; color:#886935; font-size:11px; letter-spacing:.09em; margin-bottom:24px; }
.th-privacy-page .th-pv-chapter-label h3 { font-size:clamp(27px,2.1vw,34px); margin-bottom:23px; }
.th-privacy-page .th-pv-chapter-label p { font-size:16px; }
.th-privacy-page .th-pv-details { min-width:0; }
.th-privacy-page .th-pv-details details { border-top:1px solid #ded8cc; }
.th-privacy-page .th-pv-details details:first-child { border-top:0; }
.th-privacy-page .th-pv-details summary { display:flex; justify-content:space-between; align-items:center; gap:22px; padding:23px 0; color:#171918; font-size:18px; font-weight:500; line-height:1.55; list-style:none; cursor:pointer; }
.th-privacy-page .th-pv-details summary::-webkit-details-marker { display:none; }
.th-privacy-page .th-pv-details summary > span { flex:0 0 24px; text-align:center; color:#886935; font-size:24px; font-weight:400; transition:transform .2s; }
.th-privacy-page .th-pv-details details[open] summary > span { transform:rotate(45deg); }
.th-privacy-page .th-pv-details details > div { padding:0 35px 25px 0; }
.th-privacy-page .th-pv-details p { margin-bottom:20px; line-height:1.85; }
.th-privacy-page .th-pv-details p:last-child { margin-bottom:0; }
.th-privacy-page .th-pv-details p > a { color:#475e76; text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
.th-privacy-page .th-pv-operator { padding:22px; margin:25px 0; border:1px solid #ded8cc; border-radius:10px; background:#faf9f6; }
.th-privacy-page .th-pv-operator > div + div { margin-top:25px; }
.th-privacy-page .th-pv-operator dt { color:#647184; font-size:13px; font-weight:500; }
.th-privacy-page .th-pv-operator dd { margin:0; }
.th-privacy-page .th-pv-blank { display:block; min-height:40px; border-bottom:1px dashed #c5b491; }
.th-privacy-page .th-pv-blank--address { min-height:65px; }
.th-privacy-page .th-pv-request { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:60px; border-radius:24px; background:#ac8d56; }
.th-privacy-page .th-pv-request :is(h2,p,.th-partners-eyebrow),.th-privacy-page .th-pv-request h2 em { color:#fff; }
.th-privacy-page .th-pv-request h2 { margin-bottom:24px; }
.th-privacy-page .th-pv-request-note { font-size:13px; margin-top:22px; }
.th-privacy-page .th-pv-request-links > a { display:flex; flex-direction:column; gap:9px; padding:23px 0; border-top:1px solid #d0bd96; color:#fff; }
.th-privacy-page .th-pv-request-links strong { font-size:21px; font-weight:500; line-height:1.4; }
.th-privacy-page .th-pv-request-links span { font-size:14px; }
.th-privacy-page .th-pv-request-links a:hover strong { text-decoration:underline; text-underline-offset:4px; }
.th-privacy-page .th-pv-related { display:flex; flex-wrap:wrap; gap:14px 25px; padding-bottom:15px; font-size:13px; line-height:1.6; }
.th-privacy-page .th-pv-related > a { color:#475e76; text-decoration:underline; text-underline-offset:4px; }
.th-privacy-page .th-pv-related > span { width:100%; color:#647184; }
@media screen and (min-width:1200px) and (max-width:1366px) and (max-height:700px) {
  .th-privacy-page .th-pv-cover-grid { gap:40px; padding-top:28px; }
  .th-privacy-page .th-pv-cover h1 { font-size:58px; }
  .th-privacy-page .th-pv-mark { max-width:210px; }
  .th-privacy-page .th-pv-chapter { gap:35px; }
}
@media screen and (max-width:991px) {
  .th-privacy-page .th-pv-cover-grid { grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr); gap:30px; }
  .th-privacy-page .th-pv-map-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
  .th-privacy-page .th-pv-section-head,.th-privacy-page .th-pv-notice-heading { flex-direction:column; align-items:start; gap:24px; }
  .th-privacy-page .th-pv-section-head > p { max-width:650px; }
  .th-privacy-page .th-pv-notice-heading nav { width:100%; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
  .th-privacy-page .th-pv-chapter { grid-template-columns:minmax(0,1fr); gap:23px; }
  .th-privacy-page .th-pv-chapter-label p { max-width:650px; }
  .th-privacy-page .th-pv-request { grid-template-columns:minmax(0,1fr); gap:30px; }
}
@media screen and (max-width:767px) {
  .th-privacy-page .th-pv-cover-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
  .th-privacy-page .th-pv-cover h1 { font-size:clamp(39px,10vw,56px); }
  .th-privacy-page .th-pv-mark { max-width:145px; }
  .th-privacy-page .th-pv-map-grid { grid-template-columns:minmax(0,1fr); gap:25px; }
  .th-privacy-page .th-pv-map-grid h3 { font-size:25px; }
  .th-privacy-page .th-pv-notice-heading nav { grid-template-columns:minmax(0,1fr); gap:7px; }
  .th-privacy-page .th-pv-review { padding:18px; }
  .th-privacy-page .th-pv-chapter-label h3 { font-size:28px; }
  .th-privacy-page .th-pv-details summary { font-size:17px; gap:17px; }
  .th-privacy-page .th-pv-details details > div { padding-right:0; }
  .th-privacy-page .th-pv-operator { padding:20px 17px; }
  .th-privacy-page .th-pv-request-links strong { font-size:20px; }
}
@media (prefers-reduced-motion:reduce) { .th-privacy-page .th-pv-details summary > span { transition:none; } }
