/* 園ログトップ。ho-log の構成を受け継いだ写真・検索・地図・情報カード。 */
.th-home { --th-ink: var(--c-text); --th-body: var(--c-text-sub); --th-line: var(--c-primary-bg); --th-paper: var(--c-cream); --th-orange: var(--c-primary); color: var(--th-ink); font-size: 15px; line-height: 1.95; }
.th-home h2, .th-home h3 { color: var(--th-ink); }
.th-home img { display: block; }
.th-eyebrow { display: block; color: #7c906d; font-size: .65rem; line-height: 1.7; letter-spacing: .17em; font-weight: 500; margin: 0 0 13px; }
.th-section { padding: 76px 0; }
.th-heading { margin-bottom: 32px; }
.th-heading h2, .th-trust h2 { font: 500 clamp(1.65rem, 2.5vw, 2.1rem)/1.8 var(--tl-serif); letter-spacing: .015em; margin: 0; }
.th-heading-split { display: grid; grid-template-columns: 1.06fr 1fr; gap: 50px; align-items: end; }
.th-heading p { color: var(--th-body); font-size: .87rem; line-height: 2.1; margin: 0; }
.th-heading p + p { margin-top: 8px; }
.th-heading .text-link { margin-top: 15px; }
.th-section-link { display: flex; justify-content: flex-end; align-items: center; gap: 12px; font-size: .83rem; font-weight: 500; text-decoration: underline; text-underline-offset: 6px; margin-top: 24px; }
.th-section-link .icon { width: 16px; height: 16px; }
.th-button-primary { background: var(--th-orange); border-color: var(--th-orange); color: #fff; }
.th-button-primary:hover { background: var(--c-primary-dark); border-color: var(--c-primary-dark); }

/* Hero: the search form sits beside the statement, as on ho-log. */
.th-hero { position: relative; isolation: isolate; overflow: hidden; background: #1b3543; color: var(--c-primary-bg); }
.th-hero-backdrop { position: absolute; inset: 0; z-index: -2; }
.th-hero-backdrop img { width: 100%; height: 100%; object-fit: cover; object-position: 65% center; }
.th-hero-backdrop video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; opacity: 0; pointer-events: none; }
.th-hero-backdrop video.is-ready { opacity: 1; }
.th-hero::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#3b2018e8 0%,#63536acc 43%,#63536a6b),linear-gradient(0deg,#3b201880,transparent 60%); }
.th-hero-grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 72px; align-items: center; padding-top: 65px; padding-bottom: 44px; }
.th-hero-copy { padding: 15px 0; }
.th-hero-badge { display: inline-flex; align-items: center; gap: 9px; border: 1px solid #dfebd357; border-radius: 4px; background: #ffffff0c; font-size: .69rem; line-height: 1.8; padding: 8px 12px; color: var(--c-primary-bg); margin-bottom: 30px; }
.th-hero-badge > span { width: 6px; height: 6px; background: #cbd9b9; border-radius: 50%; }
.th-hero .th-eyebrow { color: #d8c6a5; font-size: .62rem; margin-bottom: 14px; }
.th-hero h1 { color: #fff; font: 500 clamp(2rem, 3.6vw, 3rem)/1.75 var(--tl-serif); letter-spacing: .03em; margin: 0 0 24px; }
.th-hero-copy > p:not([class]) { font-size: .87rem; line-height: 2.2; color: var(--c-primary-bg); margin-bottom: 24px; }
.th-hero-benefits { display: flex; flex-wrap: wrap; gap: 12px 23px; margin-bottom: 26px; }
.th-hero-benefits > span { display: inline-flex; align-items: center; gap: 7px; font-size: .73rem; color: #d6e5c7; }
.th-hero-benefits .icon { width: 17px; height: 17px; }
.th-hero-link { display: inline-flex; align-items: center; gap: 22px; color: var(--c-primary-bg); font-size: .77rem; border-bottom: 1px solid #d6e5c750; padding-bottom: 7px; }
.th-hero-link .icon { width: 15px; }
.th-hero .th-hero-search { margin: 0; padding: 29px 30px 23px; box-shadow: 0 16px 44px #0e243633; background: #fffefb; border: 1px solid var(--c-primary-bg); border-radius: 7px; }
.th-hero-search .th-eyebrow { color: #82916e; font-size: .61rem; margin-bottom: 7px; }
.th-hero-search h2 { font-size: 1.28rem; line-height: 1.8; font-weight: 500; margin-bottom: 5px; }
.th-form-intro { font-size: .75rem; line-height: 1.8; color: var(--theme-pink-ink); margin-bottom: 21px; }
.th-search-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.th-hero-search .field { gap: 7px; margin-bottom: 15px; }
.th-hero-search .field label { font-size: .75rem; color: var(--theme-pink-ink); font-weight: 500; }
.th-hero-search .input, .th-hero-search .select { min-height: 48px; background-color: var(--c-primary-bg); border-color: #d7e0cc; font-size: 1rem; }
.th-hero-search .input-icon > .icon { color: #8ba17c; width: 17px; height: 17px; }
.th-hero-search .th-button-primary { min-height: 52px; gap: 10px; margin-top: 2px; font-size: .9rem; }
.th-hero-search .th-button-primary > .icon:last-child { margin-left: auto; }
.th-hero-search .th-button-primary > .icon:first-child { margin-right: auto; }
.th-quick-search { display: flex; flex-wrap: wrap; gap: 7px 12px; padding-top: 16px; margin-top: 16px; border-top: 1px solid var(--c-primary-bg); font-size: .69rem; }
.th-quick-search > span { color: var(--theme-pink-ink); }
.th-quick-search a { color: var(--theme-pink-ink); text-decoration: underline; text-underline-offset: 3px; }
.th-geo { display: flex; gap: 8px; align-items: center; justify-content: center; width: 100%; background: none; border: 0; padding: 13px 0 0; color: var(--theme-pink-ink); font-size: .74rem; cursor: pointer; }
.th-hero-foot { display: flex; justify-content: space-between; align-items: center; gap: 25px; padding-bottom: 22px; color: #ccd9d1; }
.th-hero-foot p { margin: 0; font-size: .66rem; line-height: 1.9; max-width: 820px; }
.th-hero-foot > span { font-size: .6rem; white-space: nowrap; color: #c3cfbf; }
.th-hero-foot #th-video-toggle { flex-shrink: 0; display: inline-flex; align-items: center; gap: 10px; min-height: 40px; padding: 7px 12px; border: 1px solid #ffffff55; border-radius: 4px; background: #63536a80; color: #fff; font: inherit; font-size: .68rem; cursor: pointer; }
.th-hero-foot #th-video-toggle[hidden] { display: none; }
.th-hero-foot #th-video-toggle:hover { background: #63536ad9; }
.th-hero-foot #th-video-toggle:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.th-video-symbol { display: inline-block; width: 1em; text-align: center; font-size: .9rem; }

/* Data strip and introductory routes. */
.th-facts { background: var(--c-primary-bg); border-bottom: 1px solid var(--th-line); }
.th-facts > .container { display: grid; grid-template-columns: repeat(3,auto) minmax(0,1fr); align-items: center; gap: 30px; padding-top: 23px; padding-bottom: 23px; }
.th-facts .container > div { padding-right: 30px; border-right: 1px solid var(--c-primary-bg); }
.th-facts strong { display: block; font: 35px/1.2 Georgia, serif; color: var(--theme-pink-ink); }
.th-facts strong small { font: 500 .68rem var(--font); margin-left: 6px; }
.th-facts .container > div > span { display: block; font-size: .68rem; color: var(--theme-pink-ink); margin-top: 6px; }
.th-facts .container > p { display: flex; align-items: center; gap: 12px; margin: 0; justify-self: end; font-size: .74rem; color: var(--theme-pink-ink); }
.th-facts p > .icon { width: 30px; height: 30px; stroke-width: 1.4; }
.th-facts p small { display: block; font-size: .63rem; color: #839079; }
.th-intro { background: #fff; }
.th-entry-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.th-entry { overflow: hidden; color: var(--th-ink); border: 1px solid var(--th-line); border-radius: 6px; background: #fff; text-decoration: none !important; }
.th-entry-image { position: relative; aspect-ratio: 16 / 8; overflow: hidden; }
.th-entry-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s; }
.th-entry-image > span { position: absolute; bottom: 0; left: 0; background: var(--c-primary-bg); color: #728d60; padding: 5px 16px; font: italic 1.2rem Georgia,serif; }
.th-entry-body { padding: 22px 24px; }
.th-entry h3 { font-size: 1.06rem; font-weight: 500; line-height: 1.8; margin-bottom: 9px; }
.th-entry p { font-size: .8rem; color: var(--th-body); line-height: 2; margin-bottom: 18px; }
.th-entry-body > span { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: .77rem; color: var(--theme-pink-ink); }
.th-entry:hover img { transform: scale(1.035); }
.th-entry:hover { border-color: #a4b894; }

/* Place photos and the same block map arrangement used on ho-log. */
.th-area { padding-top: 30px; background: #fff; }
.th-city-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 14px; margin-bottom: 28px; }
.th-city-grid > a { position: relative; aspect-ratio: 1.16; overflow: hidden; border-radius: 5px; background: #5b756b; color: #fff; text-decoration: none; }
.th-city-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s; }
.th-city-grid > a::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,#3b2018da,transparent 90%); }
.th-city-grid > a > span { position: absolute; bottom: 15px; left: 15px; z-index: 1; }
.th-city-grid strong { display: block; font: 500 1.25rem/1.8 var(--tl-serif); color: #fff; }
.th-city-grid small { display: block; color: var(--c-primary-bg); font-size: .65rem; }
.th-city-grid > a > .icon { position: absolute; right: 12px; bottom: 18px; z-index: 1; width: 14px; height: 14px; color: #d9e7cc; }
.th-city-grid a:hover img { transform: scale(1.05); }

/* Care categories: photograph, context and concrete topics. */
.th-care { background: var(--th-paper); }
.th-care-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px 20px; }
.th-care-card { display: flex; flex-direction: column; border: 1px solid var(--c-primary-bg); background: #fff; border-radius: 6px; overflow: hidden; min-width: 0; }
.th-care-image { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: var(--c-primary-bg); }
.th-care-image > img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s; }
.th-care-image > span { position: absolute; bottom: 10px; left: 14px; width: 32px; height: 32px; display: grid; place-items: center; background: #fcfff5f2; border: 1px solid #d6e1ca; border-radius: 50%; color: #789368; }
.th-care-image .icon { width: 18px; height: 18px; }
.th-care-body { display: flex; flex-direction: column; flex: 1; padding: 20px 18px 17px; }
.th-care-body h3 { font-size: 1.13rem; line-height: 1.7; font-weight: 600; margin-bottom: 9px; }
.th-care-body h3 a { color: var(--th-ink); text-decoration: none; }
.th-care-body > p { font-size: .77rem; line-height: 1.9; color: var(--th-body); min-height: 3.8em; margin-bottom: 14px; }
.th-care-body ul { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin-bottom: 18px; }
.th-care-body li a { display: block; padding: 4px 7px; font-size: .65rem; line-height: 1.6; color: var(--theme-pink-ink); background: var(--c-primary-bg); border: 1px solid var(--c-primary-bg); border-radius: 3px; }
.th-card-link { display: flex; align-items: center; justify-content: space-between; gap: 9px; margin-top: auto; padding-top: 13px; border-top: 1px solid var(--c-primary-bg); color: var(--theme-pink-ink); font-size: .73rem; }
.th-card-link > .icon { width: 15px; height: 15px; }
.th-care-card:hover .th-care-image img { transform: scale(1.035); }
.th-care-card:hover { border-color: #a9bc99; }

/* Service cards combine photography with the role, insurance and listing count. */
.th-services-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; }
.th-service { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--th-line); border-radius: 6px; color: var(--th-ink); text-decoration: none !important; background: #fff; min-width: 0; }
.th-service:nth-child(-n+4) { display: grid; grid-template-columns: .95fr 1.05fr; grid-column: span 2; }
.th-service-image { position: relative; overflow: hidden; aspect-ratio: 16 / 10; }
.th-service:nth-child(-n+4) .th-service-image { aspect-ratio: auto; min-height: 255px; }
.th-service-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s; }
.th-service-image > span { position: absolute; top: 12px; left: 12px; font: italic 1.2rem Georgia,serif; background: #fffef5eb; color: var(--theme-pink-ink); padding: 7px 10px; border-radius: 3px; }
.th-service-body { display: flex; flex-direction: column; padding: 23px 21px; flex: 1; }
.th-service-insurance { font-size: .65rem; color: var(--theme-pink-ink); margin-bottom: 9px; }
.th-service h3 { font: 500 1.23rem/1.8 var(--tl-serif); margin-bottom: 12px; }
.th-service p { font-size: .78rem; color: var(--th-body); line-height: 2; margin-bottom: 19px; }
.th-service-body > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-top: 15px; margin-top: auto; border-top: 1px solid var(--th-line); font-size: .68rem; color: var(--theme-pink-ink); }
.th-service-body strong { color: var(--theme-pink-ink); font: 1.55rem Georgia,serif; margin-right: 4px; }
.th-service-body .icon { color: #779166; width: 17px; height: 17px; }
.th-service:hover { border-color: #a7bb98; }
.th-service:hover img { transform: scale(1.035); }
.th-pickup { background: var(--theme-yellow-wash); }

/* Each stage uses its own photograph. */
.th-how { background: var(--th-paper); }
.th-step-grid { list-style: none; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; }
.th-step-grid > li { border: 1px solid var(--th-line); background: #fff; border-radius: 6px; overflow: hidden; }
.th-step-image { position: relative; aspect-ratio: 16 / 10; }
.th-step-image img { width: 100%; height: 100%; object-fit: cover; }
.th-step-image > span { position: absolute; bottom: -17px; left: 18px; display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid var(--c-primary-bg); border-radius: 50%; color: #779363; background: #fbfdf6; font: italic 1.1rem Georgia,serif; }
.th-step-body { padding: 31px 20px 24px; }
.th-step-body h3 { font-size: 1.02rem; font-weight: 500; line-height: 1.8; margin-bottom: 10px; }
.th-step-body p { font-size: .77rem; color: var(--th-body); line-height: 2; margin: 0; }
.th-trust-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; }
.th-trust h2 { margin-bottom: 20px; }
.th-trust p { color: var(--th-body); font-size: .87rem; line-height: 2.1; }
.th-trust ul { list-style: none; display: grid; gap: 13px; margin: 25px 0 27px; }
.th-trust li { display: flex; align-items: center; gap: 10px; font-size: .84rem; }
.th-trust li .icon { color: #8da47a; width: 18px; height: 18px; }
.th-trust figure { margin: 0; }
.th-trust figure img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 6px; }
.th-trust figcaption { text-align: right; font-size: .66rem; color: #88947e; margin-top: 12px; }
.th-closing { position: relative; isolation: isolate; padding: 65px 0; color: var(--c-primary-bg); text-align: center; background: #193746; overflow: hidden; }
.th-closing-image { position: absolute; inset: 0; z-index: -2; }
.th-closing-image img { width: 100%; height: 100%; object-fit: cover; }
.th-closing::after { content: ''; position: absolute; inset: 0; z-index: -1; background: #173443e8; }
.th-closing .th-eyebrow { color: #bfd3aa; }
.th-closing h2 { color: #fff; font: 500 clamp(1.7rem,2.7vw,2.25rem)/1.8 var(--tl-serif); margin: 0 0 17px; }
.th-closing p { font-size: .86rem; margin-bottom: 27px; }
.th-closing .container > div { display: flex; justify-content: center; flex-wrap: wrap; gap: 14px; }
.th-closing .btn { min-width: 230px; gap: 18px; }
.th-provider { background: var(--c-primary-bg); padding: 28px 0; }
.th-provider > .container { display: flex; align-items: center; gap: 27px; }
.th-provider-image { flex: 0 0 135px; }
.th-provider-image img { width: 135px; height: 95px; object-fit: cover; border-radius: 4px; }
.th-provider h2 { font-size: 1.07rem; font-weight: 500; margin-bottom: 6px; }
.th-provider .th-eyebrow { font-size: .58rem; margin-bottom: 4px; }
.th-provider p { font-size: .77rem; color: var(--th-body); margin: 0; }
.th-provider .btn { margin-left: auto; font-size: .8rem; flex: none; }

@media (max-width: 1050px) {
 .th-hero-grid { gap: 40px; padding-top: 45px; }
 .th-hero .th-hero-search { padding: 25px; }
 .th-hero h1 { font-size: 2.35rem; }
 .th-heading-split { gap: 30px; }
 .th-city-grid { gap: 10px; }
 .th-city-grid > a > span { left: 11px; bottom: 11px; }
 .th-city-grid strong { font-size: 1.08rem; }
 .th-care-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
 .th-services-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .th-service:nth-child(n) { display: flex; flex-direction: column; grid-column: auto; }
 .th-service:nth-child(n) .th-service-image { aspect-ratio: 16 / 8; min-height: 0; }
 .th-step-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .th-trust-grid { gap: 40px; }
 .th-facts > .container { gap: 22px; }
 .th-facts .container > div { padding-right: 22px; }
}
@media (max-width: 800px) {
 .th-section { padding: 52px 0; }
 .th-hero-grid { grid-template-columns: 1fr; gap: 30px; padding-top: 40px; padding-bottom: 25px; }
 .th-hero-copy { padding: 0; }
 .th-hero-backdrop img { object-position: 65% 0; }
 .th-hero::after { background: linear-gradient(90deg,#3b2018eb,#63536ab3),linear-gradient(0deg,#3b2018,transparent 75%); }
 .th-hero-badge { margin-bottom: 23px; }
 .th-hero h1 { font-size: 2.3rem; line-height: 1.65; margin-bottom: 17px; }
 .th-hero-copy > p:not([class]) { font-size: .84rem; margin-bottom: 17px; }
 .th-hero-benefits { margin-bottom: 17px; }
 .th-hero-link { font-size: .73rem; }
 .th-hero-foot { display: block; padding-bottom: 20px; }
 .th-hero-foot p { font-size: .61rem; }
 .th-hero-foot #th-video-toggle { margin-top: 10px; }
 .th-hero-foot > span { display: block; text-align: right; margin-top: 6px; font-size: .56rem; }
 .th-facts > .container { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
 .th-facts .container > div { text-align: center; padding-right: 16px; }
 .th-facts .container > div:nth-child(3) { padding: 0; border-right: 0; }
 .th-facts strong { font-size: 27px; }
 .th-facts .container > p { grid-column: 1 / -1; justify-self: center; border-top: 1px solid var(--c-primary-bg); padding-top: 14px; font-size: .72rem; }
 .th-facts p small { display: inline; margin-left: 9px; }
 .th-heading-split { grid-template-columns: 1fr; gap: 18px; }
 .th-heading h2 { font-size: 1.7rem; }
 .th-heading p { font-size: .82rem; }
 .th-entry-grid { gap: 13px; }
 .th-entry-image { aspect-ratio: 4 / 3; }
 .th-entry-body { padding: 19px 16px; }
 .th-entry h3 { font-size: .95rem; }
 .th-entry p { font-size: .75rem; }
 .th-entry-body > span { font-size: .72rem; }
 .th-city-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
 .th-city-grid > a { aspect-ratio: 1.5; }
 .th-city-grid strong { font-size: 1.15rem; }
 .th-care-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
 .th-care-body { padding: 19px 16px; }
 .th-care-body > p { min-height: 0; }
 .th-trust-grid { grid-template-columns: 1fr; gap: 30px; }
 .th-trust figure { max-width: 600px; }
 .th-trust figure img { aspect-ratio: 16 / 10; }
 .th-provider > .container { flex-wrap: wrap; gap: 15px; }
 .th-provider > .container > div:nth-child(2) { flex: 1; min-width: 210px; }
 .th-provider .btn { margin-left: auto; }
}
@media (max-width: 540px) {
 .th-section { padding: 42px 0; }
 .th-heading { margin-bottom: 25px; }
 .th-heading h2 { font-size: 1.55rem; }
 .th-heading p { font-size: .79rem; }
 .th-desktop-br { display: none; }
 .th-eyebrow { font-size: .59rem; margin-bottom: 9px; }
 .th-hero-grid { padding-top: 32px; gap: 26px; }
 .th-hero h1 { font-size: clamp(1.85rem,7.7vw,2.3rem); letter-spacing: .015em; }
 .th-hero-badge { font-size: .61rem; padding: 6px 10px; margin-bottom: 21px; }
 .th-hero-copy > p:not([class]) { font-size: .78rem; }
 .th-hero-benefits { gap: 10px 15px; }
 .th-hero-benefits > span { font-size: .67rem; }
 .th-hero .th-hero-search { padding: 23px 19px 18px; border-radius: 5px; }
 .th-hero-search h2 { font-size: 1.12rem; }
 .th-form-intro { font-size: .69rem; margin-bottom: 18px; }
 .th-search-row { gap: 10px; }
 .th-hero-search .field { margin-bottom: 14px; }
 .th-hero-search .field label { font-size: .72rem; }
 .th-hero-search .select { padding-right: 29px; padding-left: 10px; background-position: right 9px center; }
 .th-search-row .input-icon > .icon { display: none; }
 .th-search-row .input-icon > .select { padding-left: 10px; }
 .th-hero-search .input { padding-right: 8px; }
 .th-hero-search .th-button-primary { font-size: .86rem; }
 .th-quick-search { font-size: .65rem; gap: 7px 11px; }
 .th-facts strong { font-size: 25px; }
 .th-facts strong small { font-size: .57rem; margin-left: 4px; }
 .th-facts .container > div > span { font-size: .57rem; }
 .th-facts > .container { gap: 12px; padding-top: 20px; padding-bottom: 17px; }
 .th-facts .container > div { padding-right: 12px; }
 .th-facts .container > p { font-size: .65rem; justify-self: start; }
 .th-facts p > .icon { width: 23px; height: 23px; }
 .th-facts p small { display: block; font-size: .59rem; margin-left: 0; }
 .th-entry-grid { grid-template-columns: 1fr; gap: 12px; }
 .th-entry { display: grid; grid-template-columns: 35% 65%; }
 .th-entry-image { aspect-ratio: auto; height: 100%; min-height: 165px; }
 .th-entry-image > span { font-size: 1rem; padding: 5px 12px; }
 .th-entry-body { padding: 16px; }
 .th-entry h3 { font-size: .95rem; margin-bottom: 7px; }
 .th-entry p { font-size: .71rem; line-height: 1.9; margin-bottom: 12px; }
 .th-entry-body > span { font-size: .69rem; }
 .th-area { padding-top: 12px; }
 .th-city-grid { gap: 8px; margin-bottom: 20px; }
 .th-city-grid > a { aspect-ratio: 1.05; }
 .th-city-grid > a > span { left: 9px; bottom: 10px; }
 .th-city-grid strong { font-size: 1rem; }
 .th-city-grid small { font-size: .55rem; }
 .th-city-grid > a > .icon { display: none; }
 .th-care-grid { gap: 12px 10px; }
 .th-care-image { aspect-ratio: 16 / 11; }
 .th-care-image > span { width: 27px; height: 27px; bottom: 7px; left: 9px; }
 .th-care-image .icon { width: 16px; height: 16px; }
 .th-care-body { padding: 15px 12px; }
 .th-care-body h3 { font-size: .98rem; margin-bottom: 7px; }
 .th-care-body > p { font-size: .69rem; margin-bottom: 12px; }
 .th-care-body ul { gap: 5px; margin-bottom: 13px; }
 .th-care-body li a { font-size: .59rem; padding: 4px 5px; }
 .th-card-link { font-size: .63rem; gap: 5px; padding-top: 11px; }
 .th-card-link > .icon { width: 13px; height: 13px; }
 .th-services-grid { grid-template-columns: 1fr; gap: 13px; }
 .th-service:nth-child(n) { display: grid; grid-template-columns: .85fr 1.15fr; }
 .th-service:nth-child(n) .th-service-image { aspect-ratio: auto; min-height: 190px; }
 .th-service-image > span { font-size: 1rem; left: 9px; top: 9px; }
 .th-service-body { padding: 18px 15px; }
 .th-service h3 { font-size: 1.03rem; line-height: 1.8; margin-bottom: 9px; }
 .th-service p { font-size: .72rem; line-height: 1.9; margin-bottom: 14px; }
 .th-service-insurance { font-size: .59rem; margin-bottom: 6px; }
 .th-service-body strong { font-size: 1.35rem; }
 .th-service-body > div { padding-top: 11px; }
 .th-step-grid { gap: 14px 10px; }
 .th-step-image { aspect-ratio: 4 / 3; }
 .th-step-image > span { width: 32px; height: 32px; left: 12px; bottom: -14px; font-size: .98rem; }
 .th-step-body { padding: 26px 14px 18px; }
 .th-step-body h3 { font-size: .9rem; }
 .th-step-body p { font-size: .71rem; line-height: 1.95; }
 .th-section-link { font-size: .75rem; gap: 8px; line-height: 1.9; margin-top: 19px; }
 .th-trust h2 { font-size: 1.6rem; }
 .th-trust p { font-size: .8rem; }
 .th-trust li { font-size: .75rem; gap: 8px; }
 .th-trust ul { gap: 11px; margin: 20px 0 23px; }
 .th-trust figcaption { font-size: .6rem; }
 .th-closing { padding: 45px 0; text-align: left; }
 .th-closing h2 { font-size: 1.55rem; }
 .th-closing p { font-size: .78rem; line-height: 2; }
 .th-closing .container > div { display: grid; grid-template-columns: 1fr; gap: 11px; }
 .th-closing .btn { width: 100%; }
 .th-provider-image { flex-basis: 90px; }
 .th-provider-image img { width: 90px; height: 90px; }
 .th-provider > .container > div:nth-child(2) { min-width: 180px; }
 .th-provider h2 { font-size: .92rem; }
 .th-provider p { font-size: .69rem; }
 .th-provider .btn { width: 100%; font-size: .78rem; }
}
@media (prefers-reduced-motion: reduce) { .th-home img { transition: none; } }
