/* HH Mortgages UX review, September 2026. Scoped to the existing HH theme. */
.hh-experience {
  --hh-clay: #985137;
  --hhmc-clay: #985137;
  --hh-content: 1200px;
  --hh-gutter: max(6vw, calc((100vw - var(--hh-content)) / 2));
}
.hh-experience *, .hh-experience *::before, .hh-experience *::after { box-sizing: border-box; }
.hh-experience .wp-site-blocks { overflow: clip; }
.hh-experience :is(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid #985137; outline-offset: 4px;
}
.hh-experience :is(.hh-ux-solutions, .hh-faq, .hh-footer, .hhmc-results, .hhmr-email-panel) :focus-visible {
  outline-color: #f0bb9f;
}
.hh-experience :is(.hh-kicker, .hhmc-kicker, .hhmr-eyebrow) { font-size: .8125rem; letter-spacing: .13em; }
.hh-experience :is(.hh-button .wp-block-button__link, .hh-text-link, .hh-main-header .wp-block-navigation, .hh-language-switcher) { font-size: .875rem; }
.hh-experience .hh-button .wp-block-button__link { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; }
.hh-experience .hh-brokerage-bar { min-height: 58px; padding-inline: 5vw; gap: 1rem; }
.hh-experience .hh-brokerage-copy { font-size: .75rem; letter-spacing: .025em; text-transform: none; }
.hh-experience .hh-main-header { min-height: 80px; gap: 1.25rem; }
.hh-experience .hh-language-switcher a { min-height: 44px; display: inline-flex; align-items: center; }
.hh-experience .hh-language-switcher a[aria-current="page"] { text-decoration: underline; text-underline-offset: 5px; }
.hh-experience .hh-main-header .wp-block-navigation__submenu-container { min-width: 230px; padding: .5rem; border: 1px solid var(--hh-line); background: var(--hh-paper); box-shadow: 0 12px 24px #0e2c2614; }
.hh-experience .hh-main-header .wp-block-navigation__submenu-container a { min-height: 44px; padding: .65rem .8rem; }
@media (min-width: 1001px) {
  .hh-experience .hh-main-header .hh-mobile-menu-book { display: none !important; }
}
.hh-experience .hh-hero { padding: clamp(2rem, 4vw, 4rem) var(--hh-gutter); }
.hh-experience .hh-hero h1 { font-size: clamp(2.8rem, 5vw, 4.9rem); line-height: 1.08; max-width: 680px; text-wrap: balance; }
.hh-experience .hh-hero-lede { line-height: 1.7; }
.hh-experience .hh-hero-visual { max-width: 420px; margin-inline: auto; }
.hh-experience .hh-trust-row { font-size: .8125rem; letter-spacing: 0; margin-top: 1.5rem; }
.hh-experience .hh-advisor-label { font-size: .75rem; }
.hh-experience .hh-advisor-licence { font-size: .8125rem; }
.hh-experience .hh-section { padding: clamp(3rem, 6vw, 5.5rem) var(--hh-gutter); }
.hh-experience .hh-section-heading { font-size: clamp(2.2rem, 4vw, 3.7rem); line-height: 1.12; text-wrap: balance; }
.hh-experience :is(.hh-tool-card, .hh-value-card) p:not(.hh-kicker),
.hh-experience :is(.hh-step, .hh-query-grid) p,
.hh-experience .hh-faq-item p { font-size: 1rem; line-height: 1.7; }
.hh-experience :is(.hh-facts p, .hh-lender-note, .hh-footer-copy, .hh-footer-legal, .hh-trust-row, .hh-book-badges p) { font-size: .8125rem; line-height: 1.65; }
.hh-experience .hh-lender-note { color: var(--hh-muted); }
.hh-experience .hh-footer-copy { color: #c4d0cb; }
.hh-experience .hh-footer-legal { color: #aebfb7; text-transform: none; }
.hh-experience .hh-footer-social a { font-size: .875rem; display: inline-flex; align-items: center; min-height: 44px; letter-spacing: .025em; text-transform: none; }
.hh-experience .hh-faq-item summary { padding-block: .3rem; min-height: 44px; line-height: 1.5; }
.hh-experience .hh-faq-item p { padding-inline: 0; max-width: 75ch; }
.hh-experience .hh-text-link a { display: inline-flex; min-height: 44px; align-items: center; }
.hh-experience :is(.hh-light, .hh-ux-number) { color: #e6a98c; }
.hh-ux-solutions { background: var(--hh-forest); color: #fff; scroll-margin-top: 1rem; }
.hh-ux-section-intro { display: grid; grid-template-columns: 1.2fr 1fr; align-items: end; gap: 2rem; margin-bottom: 2.5rem; }
.hh-ux-section-intro h2 { color: #fff; font-size: clamp(2.3rem, 4vw, 3.7rem); line-height: 1.12; margin: .7rem 0 0; }
.hh-ux-section-intro > p { color: #d1ddd7; max-width: 420px; line-height: 1.7; margin: 0; }
.hh-ux-solution-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid #ffffff40; }
.hh-ux-solution-grid article { padding: 1.5rem 1.25rem 0; border-inline-start: 1px solid #ffffff30; display: flex; flex-direction: column; min-width: 0; }
.hh-ux-solution-grid article:first-child { padding-inline-start: 0; border-inline-start: 0; }
.hh-ux-number { font-size: .875rem; font-weight: 700; }
.hh-ux-solution-grid h3 { color: #fff; font: 400 1.7rem/1.2 Georgia, serif; margin: 1.75rem 0 1rem; }
.hh-ux-solution-grid p { font-size: 1rem; line-height: 1.7; color: #d1ddd7; margin: 0 0 1.5rem; }
.hh-ux-solution-grid a { color: #fff; font-size: .875rem; font-weight: 700; min-height: 44px; margin-top: auto; display: flex; gap: .5rem; align-items: center; text-decoration: underline; text-underline-offset: 5px; }
.hh-experience :is(.hh-landing-page, .hhmc-page, .hhmr-shell) { max-width: none !important; width: 100%; }
.hh-experience :is(.hh-landing-template, .hhmc-wordpress-page) { margin-top: 0; }
.hh-experience.hh-landing-template .wp-block-post-content,
.hh-experience.hhmc-wordpress-page .hh-content-wrap { max-width: none; padding: 0; margin: 0; }
.hh-experience .hh-page-hero { padding: clamp(2.5rem, 5vw, 5rem) var(--hh-gutter); }
.hh-experience .hh-page-hero h1 { font-size: clamp(2.5rem, 4.6vw, 4.5rem); line-height: 1.12; }
.hh-experience .hh-about-portrait { max-width: 390px; margin-inline: auto; }
.hh-experience .hh-book-intro { padding-block: 2rem 1.5rem; }
.hh-experience .hh-book-intro h1 { font-size: clamp(2rem, 3.8vw, 3.25rem); margin-block: .5rem 1rem; }
.hh-experience .hh-book-intro .hh-page-lede { font-size: 1rem; margin-block: .5rem 1rem; }
.hh-experience .hh-book-badges { margin-top: .75rem; }
.hh-experience .hh-book-badges p { text-transform: none; letter-spacing: 0; padding: .4rem .7rem; }
.hh-experience .hh-booking-shell { padding-top: 1rem; }
.hh-experience .hh-book-fallback p { font-size: .875rem; }
.hh-experience .hh-app-hero { background: var(--hh-forest); }
.hh-experience .hh-app-hero .hh-kicker { color: #e6a98c; }
.hh-experience .hh-app-hero .wp-block-button__link { background: #faf8f2; color: var(--hh-forest); }
.hh-experience .hh-app-screen li { font-size: 1rem; }
.hh-experience .hhmc-hub-hero { padding-block: 2.5rem 2rem; }
.hh-experience .hhmc-tool-hero { padding-block: 1.5rem; }
.hh-experience .hhmc-hub-hero h1 { font-size: clamp(2.25rem, 4vw, 3.75rem); line-height: 1.12; }
.hh-experience .hhmc-tool-hero h1 { font-size: clamp(2rem, 3.8vw, 3.25rem); line-height: 1.12; margin-bottom: .8rem; }
.hh-experience .hhmc-back { margin-bottom: 1rem; font-size: .875rem; min-height: 44px; display: inline-flex; align-items: center; }
.hh-experience .hhmc-lede { font-size: 1rem; max-width: 800px; }
.hh-experience .hhmc-trust { margin-top: .8rem; }
.hh-experience .hhmc-trust span { font-size: .8125rem; }
.hh-experience .hhmc-hub-groups { padding-block: 2.5rem; }
.hh-experience .hhmc-workspace { padding-block: 2rem; }
.hh-experience .hhmc-results { top: 1.5rem; }
.hh-experience :is(.hhmc-label, .hhmc-field small, .hhmc-actions a, .hhmc-actions button, .hhmc-submit, .hhmc-back, .hhmc-tool-card strong, .hhmc-form-heading p) { font-size: .875rem; }
.hh-experience .hhmc-field small { line-height: 1.5; }
.hh-experience .hhmc-tool-card p { font-size: 1rem; }
.hh-experience :is(.hhmc-results-heading small, .hhmc-result-status, .hhmc-result-row, .hhmc-tool-note, .hhmc-hub-footer p) { font-size: .875rem; }
.hh-experience .hhmc-field :is(input, select) { font-size: 1rem; }
.hh-experience .hhmc-field [aria-invalid="true"] { outline: 2px solid #a13328; outline-offset: -2px; }
.hh-experience .hhmc-field-error { color: #a13328; font-size: .875rem; margin: .2rem 0 0; }
.hh-experience .hhmr-shell { padding-block: 2rem 3rem; min-height: 0; }
.hh-experience .hhmr-welcome { grid-template-columns: minmax(190px, .55fr) minmax(0, 1.45fr); }
.hh-experience .hhmr-visual { min-height: 420px; }
.hh-experience .hhmr-welcome-copy { padding: clamp(1.5rem, 4vw, 3rem); }
.hh-experience .hhmr-shell h1 { font-size: clamp(2.2rem, 4vw, 3.8rem); line-height: 1.12; }
.hh-experience :is(.hhmr-primary, .hhmr-secondary, .hhmr-progress-copy, .hhmr-fine-print, .hhmr-trust-list li, .hhmr-email-panel label > span, .hhmr-consent span, .hhmr-form-status, .hhmr-text-button) { font-size: .875rem; }
.hh-experience .hhmr-fine-print { color: #596660; }
.hh-experience .hhmr-eyebrow { color: #985137; }
.hh-experience .hhmr-email-panel .hhmr-eyebrow { color: #e6a98c; }
.hh-experience .hhmr-email-panel .hhmr-primary { background: #985137; border-color: #985137; }
.hh-experience .hhmr-question-body :is(h1,h2) { font-size: clamp(1.8rem, 3.1vw, 2.75rem); line-height: 1.2; }
.hh-experience .hhmr-question-body { padding-block: 2rem; }
.hh-experience .hhmr-readiness-map :is(li, strong), .hh-experience .hhmr-map-note { font-size: .875rem; letter-spacing: 0; }
.hh-experience .hh-ux-field-label { display: block; margin-bottom: .5rem; color: var(--hh-ink); font-size: .875rem; font-weight: 700; }
.hh-experience .hh-subscribe-page :is(.mailpoet_text, .mailpoet_submit) { padding: .8rem 1rem !important; min-height: 52px; font-size: 1rem !important; }
.hh-experience .hh-subscribe-page { padding-top: 2rem !important; }
.hh-experience .hh-subscribe-page.hh-subscribe-conversion h1 { font-size: clamp(2rem, 3.5vw, 3.25rem) !important; line-height: 1.15 !important; }
.hh-experience .hh-subscribe-page .hh-subscribe-intro { max-width: 1050px; }
.hh-experience .hh-subscribe-page .hh-subscribe-grid { margin-top: 1.75rem; }
.hh-experience .hh-subscribe-page .hh-subscribe-intro p { font-size: 1rem !important; }
.hh-experience .hh-subscribe-page input[type="email"],
.hh-experience input[type="email"], .hh-experience input[type="tel"], .hh-experience a[href^="tel:"] { direction: ltr; unicode-bidi: isolate; }
.hh-experience .hh-article-lead .ff-el-input--label label,
.hh-experience :is(.hh-article-lead__privacy, .hh-article-lead .ff-btn-submit, .hh-article-lead__alternative small) { font-size: .875rem; }
.hh-experience.single .hh-content-wrap { padding: clamp(2rem, 5vw, 4rem) var(--hh-gutter); }
.hh-experience.single .hh-content-wrap > .wp-block-post-title { max-width: 22ch; font-size: clamp(2rem, 4.5vw, 4rem); line-height: 1.15; }
.hh-experience.single .wp-block-post-content { font-size: 1.0625rem; }
.hh-experience.single .wp-block-post-content > :is(p, ul, ol, h2, h3, blockquote) { max-width: 75ch; margin-inline: auto; }
.hh-experience.single .wp-block-table { overflow-x: auto; }
.hh-experience .pg-hero { padding-block: clamp(2rem, 4vw, 4rem); }
.hh-experience .pg-hero h1 { font-size: clamp(2.2rem, 4.2vw, 4rem); line-height: 1.13; }
.hh-experience .hhpg-form :is(input, select, button) { font-size: 1rem; min-height: 48px; }
.hh-experience .hhpg-form input[type="checkbox"] { min-height: 0; }
.hh-experience .hhpg-form label { font-size: .875rem; }
html[dir="rtl"] .hh-experience { font-family: Tahoma, Arial, sans-serif; }
html[dir="rtl"] .hh-experience :is(h1,h2,h3,h4,.hh-serif,.hhmc-page,.hhmr-shell) { font-family: Tahoma, Arial, sans-serif; letter-spacing: 0; }
html[dir="rtl"] .hh-experience :is(h1,h2,h3) { line-height: 1.55; }
html[dir="rtl"] .hh-experience :is(.hh-kicker,.hh-facts p,.hh-brokerage-copy,.hhmc-kicker,.hhmr-eyebrow,.hh-footer-social a) { letter-spacing: 0; text-transform: none; }
html[dir="rtl"] .hh-experience .hh-hero h1 { font-size: clamp(2rem, 3.4vw, 3.4rem); }
html[dir="rtl"] .hh-experience .hh-accent { font-style: normal; }
html[dir="rtl"] .hh-experience .hh-subscribe-page.hh-subscribe-conversion h1 { line-height: 1.55 !important; }
html[dir="rtl"] .hh-ux-solution-grid h3 { font-family: Tahoma, Arial, sans-serif; font-size: 1.4rem; }
html[dir="rtl"] .hh-experience .hh-main-header .wp-block-navigation__submenu-container { text-align: right; }
@media (max-width: 1000px) {
  .hh-experience .hh-main-header .wp-block-navigation__responsive-container.is-menu-open { overflow-y: auto; padding-bottom: max(2rem, env(safe-area-inset-bottom)); }
  .hh-experience .hh-main-header .wp-block-navigation__responsive-container.is-menu-open .hh-mobile-menu-book { display: flex !important; }
  .hh-experience .hh-main-header .wp-block-navigation-submenu .wp-block-navigation-item__content { font-size: 1rem; }
  .hh-experience .hh-main-header .hh-mobile-menu-book .wp-block-navigation-item__content { background: var(--hh-forest); font-size: 1rem; }
  .hh-ux-solution-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 0; }
  .hh-ux-solution-grid article:nth-child(odd) { padding-inline-start: 0; border-inline-start: 0; }
}
@media (max-width: 650px) {
  .hh-experience .hh-brokerage-bar { gap: .75rem; padding-inline: 5vw; }
  .hh-experience .hh-brokerage-copy { font-size: .75rem; text-align: end; max-width: 240px; line-height: 1.5; }
  .hh-experience .hh-main-header { gap: .5rem; min-height: 72px; }
  .hh-experience .hh-language-switcher { gap: .1rem; font-size: .8125rem; }
  .hh-experience .hh-hero { padding-block: 2rem 2.5rem; }
  .hh-experience .hh-hero h1 { font-size: clamp(2.4rem, 10vw, 3.5rem); }
  .hh-experience .hh-hero-visual { max-width: 310px; }
  .hh-experience .hh-hero-actions { gap: .75rem; }
  .hh-experience .hh-hero-actions .wp-block-button__link { width: 100%; }
  .hh-experience .hh-section { padding-block: 3rem; }
  .hh-ux-section-intro { grid-template-columns: 1fr; gap: 1rem; }
  .hh-ux-solution-grid { grid-template-columns: 1fr; gap: 0; }
  .hh-ux-solution-grid article { padding: 1.5rem 0; border-inline-start: 0; border-bottom: 1px solid #ffffff30; }
  .hh-ux-solution-grid h3 { margin-top: .75rem; }
  .hh-ux-solution-grid p { margin-bottom: .75rem; }
  .hh-experience .hh-book-intro { padding: 1.5rem 6vw 1rem; }
  .hh-experience .hhmc-trust { gap: .5rem; }
  .hh-experience .hhmc-tool-hero { padding-block: 1rem; }
  .hh-experience .hhmc-workspace { padding-top: 1.25rem; }
  .hh-experience .hhmr-welcome { grid-template-columns: 1fr; }
  .hh-experience .hhmr-visual { display: none; }
  .hh-experience .hhmr-welcome-copy { padding: 1.5rem; }
  .hh-experience .hhmr-result-hero { grid-template-columns: 1fr; }
  .hh-experience .hh-footer-social { gap: .25rem 1rem; }
}
@media (prefers-reduced-motion: reduce) {
  .hh-experience *, .hh-experience *::before, .hh-experience *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}
@media print {
  .hh-experience .hhmc-tool-hero { padding: 0; }
  .hh-experience .hhmc-results { position: static; }
}
