/* Harpstedt Immobilien: native editorial layouts and responsive audit corrections. */
:root {
  --ed-green:#173e36; --ed-ink:#202b28; --ed-muted:#52645e;
  --ed-pale:#eef4f1; --ed-line:#c9d6d0; --ed-white:#fff;
  --hi-paper:var(--ed-white); --hi-forest:var(--ed-green); --hi-ink:var(--ed-ink);
  --hi-copper:var(--ed-green); --hi-muted:var(--ed-muted); --hi-line:var(--ed-line);
  --hi-stone:var(--ed-pale); --hi-action:var(--ed-green); --hi-focus:#135d48;
  --hi-wide:1200px; --hi-section:5rem;
  --wp--style--global--wide-size:1200px;
  --wp--preset--color--forest:var(--ed-green); --wp--preset--color--ink:var(--ed-ink);
  --wp--preset--color--copper:var(--ed-green); --wp--preset--color--muted:var(--ed-muted);
  --wp--preset--color--line:var(--ed-line);
  --wp--preset--font-family--display:Manrope,Arial,sans-serif;
}
html { scroll-padding-top:7rem; }
body,.editor-styles-wrapper { color:var(--ed-ink); font-size:1.125rem; line-height:1.7; background:#fff; }
::selection { background:#c5ded1; color:#102a23; }
input,textarea { caret-color:var(--ed-green); }
:where(a,button,input,select,textarea,summary):focus-visible { outline:3px solid var(--hi-focus); outline-offset:5px; }
a { text-decoration-thickness:1px; text-underline-offset:.23em; }
a:hover { text-decoration-thickness:2px; }
h1,h2,h3,h4,.wp-block-heading,.hi-opening h1,.hi-page-hero-copy h1,.hi-person-intro-copy h1,.hi-inner-content>.wp-block-post-title {
  font-family:Manrope,Arial,sans-serif; font-weight:700; color:var(--ed-green);
  letter-spacing:-.025em; line-height:1.2; text-wrap:balance;
}
body :is(h1,h2,h3,h4).wp-block-heading { hyphens:none; word-break:normal; overflow-wrap:break-word; }
p { max-width:70ch; }
h2 { font-size:2rem; } h3 { font-size:1.375rem; }
.wp-block-button__link { border-radius:2px; font-size:1rem; min-height:3.25rem; padding:.95rem 1.3rem; gap:1.2rem; }
.wp-block-button__link:hover { background:#0d2e26; border-color:#0d2e26; }
.wp-block-button.is-style-outline .wp-block-button__link { border-color:#52786b; color:var(--ed-green); }
.wp-block-button.is-style-outline .wp-block-button__link:hover { color:#fff; background:var(--ed-green); }
.wp-block-buttons,.wp-block-buttons.af-actions { gap:1rem!important; flex-wrap:wrap!important; }
.hi-site-header { padding-block:1.15rem; background:#fff; border-bottom-color:#e3eae6; }
.hi-wordmark-main { font-size:1.5rem; letter-spacing:.075em; color:var(--ed-green); font-weight:800; }
.hi-wordmark-sub { color:var(--ed-green); font-size:.7rem; letter-spacing:.4em; }
.hi-main-navigation a,.hi-header-phone { font-size:.875rem; font-weight:600; }
.hi-header-row { gap:1.7rem; flex-wrap:wrap!important; }
.hi-main-navigation .wp-block-navigation__container { gap:1.3rem; }
.hi-main-navigation .hi-nav-contact>a { padding:.7rem 1rem; }
.hi-breadcrumb { font-size:.875rem; padding-block:1.6rem .25rem; }
/* One reading edge for headings, paragraphs and lists in native constrained groups. */
.hi-prose:not(.hi-home-expertise,.hi-home-region,.hi-link-rows),.af-section.af-prose { max-width:760px!important; }
.hi-inner-content { padding-block:3rem 4rem; }
.hi-inner-content>.wp-block-post-title { font-size:2.75rem; line-height:1.2; margin-bottom:1.5rem; }
.hi-inner-content .wp-block-post-content { font-size:1.125rem; }
.hi-prose :is(h2,h3,h4),.af-prose :is(h2,h3,h4),.hi-inner-content .wp-block-post-content :is(h2,h3,h4) {
  margin-inline:0!important; max-width:100%;
}
.hi-prose h2,.af-prose h2,.hi-inner-content .wp-block-post-content h2 { font-size:1.9rem; line-height:1.28; margin-block:3rem 1rem; }
.hi-prose h3,.af-prose h3,.hi-inner-content .wp-block-post-content h3 { font-size:1.35rem; line-height:1.35; margin-block:2rem .75rem; }
.af-prose>h2:first-child { margin-top:0; }
.af-section.hi-prose { padding-block:0; margin-block:3.5rem!important; }
.hi-lead { color:var(--ed-ink); font-size:1.2rem; line-height:1.7; }
.hi-editorial-line,.ed-photo-caption { font-size:.8125rem!important; line-height:1.6; color:var(--ed-muted); }
.hi-toc { background:var(--ed-pale); padding:1.5rem; margin-block:2rem!important; }
.hi-toc a { font-size:.9375rem; line-height:1.65; }
.hi-toc p { font-size:1rem; font-weight:650; }
.hi-page-hero { padding-block:2rem 3rem; }
.hi-page-hero-copy h1,.hi-person-intro-copy h1 { font-size:3rem; max-width:19ch; margin-bottom:1.5rem!important; }
.hi-page-hero-copy>p,.hi-person-intro-copy>p { color:var(--ed-ink); font-size:1.125rem; }
.hi-page-hero-media img { aspect-ratio:1.4; }
.hi-person-inline { margin-top:1.6rem!important; }
.hi-person-intro { background:#fff; }
.hi-person-intro-photo img { width:100%; height:auto; max-width:360px; object-fit:contain; }
/* Native step groups replace the repeated short process and dense decision table. */
.af-steps { margin-block:2rem!important; }
.af-steps>.af-step { display:grid; grid-template-columns:2.5rem minmax(0,1fr); gap:.65rem 1.25rem; padding-block:1.5rem; border-top:1px solid var(--ed-line); margin:0!important; }
.af-step>* { min-width:0; margin:0!important; max-width:none!important; overflow-wrap:break-word; }
.af-step>.af-kicker { grid-column:1; grid-row:1 / span 3; font-size:.9375rem; font-weight:700; padding-top:.1rem; }
.af-step>h3,.af-step>p:not(.af-kicker) { grid-column:2; }
.af-step>h3 { font-size:1.3rem!important; }
.af-step>p { font-size:1rem; }
.af-index { margin-block:2rem!important; }
.af-index>.af-index-item { border-top:1px solid var(--ed-line); padding-block:1.75rem; margin:0!important; }
.af-index-item>h2,.af-index-item>h3 { margin:0 0 .9rem!important; }
.af-index-item :is(h2,h3)>a { text-decoration:none; }
.af-index-item :is(h2,h3)>a:hover { text-decoration:underline; }
.af-index-item .hi-text-link { margin-top:.75rem!important; }
.page-id-5 .af-index { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 2rem; }
.page-id-5 .af-index-item { min-width:0; }
.page-id-5 .af-index-item>h2 { font-size:1.5rem; }
.af-facts { margin-block:1.5rem!important; }
.af-facts>.af-fact { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); gap:.5rem 2rem; border-top:1px solid var(--ed-line); padding-block:1rem; margin:0!important; }
.af-fact>p { min-width:0; overflow-wrap:break-word; margin:0!important; font-size:1rem; }
.af-fact>p:first-child { font-weight:700; }
.af-region-breadcrumb { max-width:760px!important; margin-inline:auto!important; padding-top:0; }
.af-region-entry { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2.2fr); gap:.5rem 1.5rem; border-top:1px solid var(--ed-line); padding-block:1rem; margin:0!important; }
.af-region-entry>p { min-width:0; overflow-wrap:break-word; margin:0!important; font-size:1rem; }
.af-region-name a { font-weight:700; display:inline-block; padding-block:.25rem; }
.af-comparison { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; margin-block:1.5rem!important; }
.af-comparison>.af-choice { min-width:0; margin:0!important; border-top:1px solid var(--ed-line); padding-top:1rem; }
.af-choice>h3 { margin-top:0!important; }
.af-region-directory { margin-block:1.5rem!important; }
.wp-block-details { border-bottom-color:var(--ed-line); padding-block:1rem; }
.wp-block-details summary { min-height:3rem; padding-block:.5rem; color:var(--ed-green); line-height:1.5; }
.wp-block-details[open] summary { font-weight:700; }
/* Tables keep their data relationships. Eligible rectangular tables stack with visible labels. */
.wp-block-table { width:100%; max-width:100%; overflow-x:auto; font-size:1rem; scrollbar-color:#6d8b7e #eef4f1; }
.wp-block-table table { min-width:40rem; table-layout:auto; }
body .wp-block-table :is(td,th) { padding:1rem; border-color:var(--ed-line); overflow-wrap:normal!important; word-break:normal!important; hyphens:none!important; }
.wp-block-table thead th { color:var(--ed-green); background:var(--ed-pale); font-weight:750; }
/* Forms: one topic row, useful message before optional details, no nested panel padding. */
.hi-contact-section,.hi-contact-page { background:var(--ed-pale); }
.hi-contact-form-column { min-width:0; padding:0!important; background:transparent; border:0; }
.hi-contact-form { width:100%; box-sizing:border-box; background:#fff; border-top:0!important; padding:1.75rem!important; }
.hi-contact-section .hi-contact-form .hi-form-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr)); gap:0 1.25rem; }
.hi-contact-form :is(input:not([type=checkbox]):not([type=hidden]),select,textarea) {
  min-width:0; width:100%; max-width:100%; min-height:3.25rem; box-sizing:border-box;
  border:1px solid #6c8177; border-radius:2px; background:#fff; color:var(--ed-ink); padding:.75rem; font-size:1rem;
}
.hi-contact-form label { font-size:1rem; color:var(--ed-ink); font-weight:600; }
.hi-contact-form :is(input,select,textarea):focus-visible { outline:3px solid var(--hi-focus); outline-offset:4px; box-shadow:none; }
.hi-contact-form ::placeholder { color:var(--ed-muted); opacity:1; }
.hi-contact-form button { background:var(--ed-green); border-color:var(--ed-green); color:#fff; min-height:3.4rem; font-size:1rem; }
.hi-contact-form button:disabled { background:#d7e1dc; color:#344e42; opacity:1; border-color:#a6bbb0; cursor:not-allowed; }
.hi-contact-form input[type=checkbox] { width:1.25rem; height:1.25rem; accent-color:var(--ed-green); }
.af-contact-layout { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); grid-template-areas:'intro form' 'meta form'; grid-template-rows:auto 1fr; gap:2rem 3.5rem; align-items:start; }
.af-contact-layout>* { min-width:0; margin:0!important; width:100%; max-width:none!important; }
.af-contact-intro { grid-area:intro; }
.af-contact-form-col { grid-area:form; }
.af-contact-meta { grid-area:meta; align-self:start; }
.page-id-23 .hi-contact-intent-heading { min-block-size:0; font-size:2.7rem; }
.af-contact-direct { margin-top:1.5rem!important; font-size:1rem; }
.af-contact-direct a { overflow-wrap:anywhere; }
.af-contact-meta .hi-contact-address { margin-top:1.5rem!important; }
.ed-local-notice { max-width:none; padding:.9rem 1rem; margin:0 0 1.25rem; background:var(--ed-pale); color:var(--ed-green); font-size:.9375rem; }
.ed-local-error { color:#8b1d27; padding:.9rem 0; font-size:1rem; }
.hi-planer,.hi-kompass { --hi-focus:#135d48; color:var(--ed-ink); }
.hi-planer :is(input,select,button),.hi-kompass :is(input,select,button) { font-size:1rem; }
.hi-planer a,.hi-kompass a { color:var(--ed-green); }
/* Homepage: owner, practical entry points, local photograph, then one complete enquiry. */
.home .hi-main,.home .hi-main>.wp-block-post-content { padding-inline:0!important; margin-inline:0!important; max-width:none!important; width:100%; }
.ed-home { width:100%; margin-inline:0!important; padding-inline:0!important; }
.ed-home>.wp-block-group { margin-block-start:0; }
.ed-home>.alignwide { width:calc(100% - var(--hi-gutter)*2); max-width:1200px!important; margin-inline:auto!important; }
.ed-home>.alignwide:not(.ed-tools,.ed-property-types,.ed-knowledge,.ed-form-section) { padding-inline:0!important; }
.ed-home>:is(.ed-tools,.ed-property-types,.ed-knowledge,.ed-form-section) { width:100%; max-width:none!important; padding-inline:max(var(--hi-gutter),calc((100% - 1200px)/2)); }
.ed-home>.wp-block-group>:is(h2,p,.wp-block-columns,.wp-block-group) { margin-inline:0!important; }
.ed-home>.wp-block-group>.wp-block-columns { width:100%; max-width:none!important; }
.ed-home .wp-block-buttons { display:flex!important; gap:1rem!important; }
.ed-hero { padding-block:3.5rem; }
.ed-hero .ed-hero-columns { gap:4rem!important; align-items:center!important; }
.ed-hero-copy { flex-basis:68%!important; }
.ed-hero-copy h1 { font-size:3.25rem; line-height:1.16; max-width:22ch; margin:0 0 1.5rem!important; }
.ed-hero-copy>p { font-size:1.2rem; max-width:55ch; margin-bottom:1.6rem!important; }
.ed-hero-copy .wp-block-buttons { margin-block:0!important; }
.ed-hero-copy>.ed-hero-note { font-size:.9375rem; line-height:1.6; margin:1.25rem 0 0!important; color:var(--ed-muted); }
.ed-hero-media { flex-basis:32%!important; min-width:0; }
.ed-hero-media .ed-portrait { width:100%; max-width:310px; margin:0!important; }
.ed-portrait img { display:block; width:100%; height:auto!important; aspect-ratio:1; object-fit:contain; }
.ed-portrait figcaption { text-align:left; font-size:.875rem; line-height:1.6; margin-top:.75rem; color:var(--ed-muted); }
.ed-tools { background:var(--ed-pale); padding-block:3rem; }
.ed-home h2 { font-size:2.1rem; margin:0 0 1.25rem!important; }
.ed-tools .af-tool-grid { gap:2.5rem!important; margin-top:2rem; }
.af-tool { min-width:0; border-top:1px solid #9fb9ac; padding-top:1.25rem; }
.af-tool h3 { margin:0 0 .75rem!important; font-size:1.3rem; }
.af-tool p { font-size:1rem; }
.af-tool .hi-text-link { margin-top:1rem!important; }
.ed-property-types { background:#fff; padding-block:4rem; }
.af-properties { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; margin-block:2rem!important; }
.af-properties>.af-property { margin:0!important; min-width:0; border-top:1px solid var(--ed-line); padding-top:1.25rem; }
.af-property h3 { font-size:1.3rem; margin:0 0 .9rem!important; }
.af-property p { font-size:1rem; }
.af-region-home { padding-block:1rem 4rem; }
.af-region-home-columns { align-items:flex-start!important; gap:3rem!important; }
.af-region-home .af-region-home-copy { flex-basis:48%!important; }
.af-region-home .af-region-home-photo { flex-basis:52%!important; }
.af-local-photo { margin:0!important; }
.af-local-photo img { width:100%; height:auto; aspect-ratio:1.3; object-fit:cover; }
.af-local-photo figcaption { font-size:.8125rem; color:var(--ed-muted); margin-top:.65rem; }
.af-photo-credit { padding-block:.5rem!important; }
.af-photo-credit summary,.af-photo-credit p { font-size:.8125rem; }
.af-home-towns { margin-top:1rem!important; padding-block:.5rem; }
.af-home-town-links { columns:2; padding-left:1.2rem; }
.af-home-town-links li { break-inside:avoid; margin-bottom:.5rem; font-size:1rem; }
.ed-knowledge { background:var(--ed-pale); padding-block:3.5rem; }
.ed-knowledge .hi-link-row { font-size:1rem; background:transparent; }
.hi-link-row a { display:grid; grid-template-columns:minmax(0,1fr) 1.35rem; gap:1rem; }
.hi-link-row a::after { align-self:center; }
.af-seekers { padding-block:2rem 3rem; border-bottom:1px solid var(--ed-line); }
.af-seekers h3 { font-size:1.3rem; margin:0 0 .75rem!important; }
.af-seekers p { font-size:1rem; }
.ed-form-section { padding-block:4rem; background:var(--ed-pale); }
.ed-form-section h2 { font-size:2.3rem; max-width:20ch; }
.af-home-contact-columns { gap:3.5rem!important; }
/* Enlarged text may wrap at a whole word first, then within an otherwise unbreakable word. */
.af-contact-link { overflow-wrap:anywhere; }
.hi-contact-form .hi-consent label { min-width:0; overflow-wrap:break-word; }
.hi-contact-form button[type=submit]>span:first-child { min-width:0; overflow-wrap:break-word; }
.wp-block-button,.wp-block-button__link { max-width:100%; }
.wp-block-button__link { white-space:normal; overflow-wrap:break-word; }
.hi-footer-call>* { min-width:0; }
.hi-footer-call { grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); }
@media(max-width:781px) { .hi-footer-call { grid-template-columns:minmax(0,1fr); } }
/* A complete form or final service CTA already closes these pages. */
.home:has(main .hi-contact-form) .hi-footer-call { display:none!important; }
.hi-site-footer { background:var(--ed-green); color:#fff; }
.hi-site-footer :is(h2,h3,.hi-wordmark-main,.hi-wordmark-sub) { color:#fff; }
.hi-site-footer :is(p,a,summary) { color:inherit; }
.hi-site-footer :where(a,summary):focus-visible { outline-color:#fff; }
.hi-footer-grid>*,.hi-footer-directory>* { min-width:0; }
.hi-footer-directory { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.4rem 2rem!important; }
.hi-footer-directory .hi-text-link a { display:inline-flex; align-items:center; min-height:2.75rem; }
.hi-site-footer a { overflow-wrap:anywhere; }
.hi-footer-brand a { max-width:100%; }
.hi-cta-row>* { min-width:0; max-width:100%; }
.hi-cta-band :is(h2,h3,h4) { color:#fff; }
.hi-cta-band .wp-block-button.is-style-outline .wp-block-button__link { color:#fff; border-color:#b3c9bc; }
.hi-cta-band .wp-block-button.is-style-outline .wp-block-button__link:hover { color:var(--ed-green); background:#fff; }
@media(max-width:1120px) {
  .hi-main-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none!important; }
  .hi-main-navigation .wp-block-navigation__responsive-container-open { display:flex!important; }
  .hi-header-phone { display:none; }
  .ed-hero .ed-hero-columns { gap:2.5rem!important; }
  .ed-hero-copy h1 { font-size:2.8rem; }
}
@media(min-width:1121px) { .hi-main-navigation .wp-block-navigation__responsive-container-open { display:none!important; } }
@media(max-width:781px) {
  .ed-hero { padding-block:2rem 2.5rem; }
  .ed-hero .ed-hero-columns { flex-direction:column; align-items:stretch!important; gap:1.75rem!important; }
  .ed-hero-copy,.ed-hero-media { flex-basis:auto!important; width:100%; }
  .ed-hero-copy h1 { font-size:2.4rem; max-width:22ch; }
  .ed-hero-media .ed-portrait { display:grid; grid-template-columns:96px minmax(0,1fr); gap:1rem; align-items:center; max-width:100%; }
  .ed-portrait figcaption { margin:0; }
  .ed-tools .af-tool-grid { gap:1.75rem!important; }
  .af-properties { grid-template-columns:1fr; gap:1.5rem; }
  .af-region-home-columns { gap:2rem!important; }
  .af-local-photo img { aspect-ratio:1.8; max-height:300px; }
  .hi-inner-content>.wp-block-post-title,.hi-page-hero-copy h1,.hi-person-intro-copy h1 { font-size:2.25rem; }
  .af-contact-layout { grid-template-columns:1fr; grid-template-rows:auto; grid-template-areas:'intro' 'form' 'meta'; gap:1.75rem; }
  .page-id-5 .af-index { grid-template-columns:1fr; }
  .page-id-23 .hi-contact-intent-heading { font-size:2.1rem; }
  .af-contact-intro>p { font-size:1rem; }
  .af-contact-direct { margin-top:1rem!important; }
  .af-comparison { grid-template-columns:1fr; gap:1.5rem; }
  .hi-toc ul { columns:1; }
  .hi-planer :is(fieldset,.hi-planer-fields),.hi-contact-form .hi-field-row { min-width:0; }
}
@media(max-width:640px) {
  .af-region-entry { grid-template-columns:minmax(0,1fr); gap:.35rem; }
  .af-facts>.af-fact { grid-template-columns:minmax(0,1fr); gap:.4rem; }
  figure.af-stack-table table { min-width:0!important; width:100%!important; table-layout:auto!important; }
  .af-stack-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .af-stack-table :is(tbody,tr) { display:block; width:100%; }
  .af-stack-table tbody tr { border-top:1px solid var(--ed-line); padding-block:.75rem; }
  body figure.af-stack-table tbody :is(td,th) { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.5fr); gap:.75rem; width:auto!important; border:0; padding:.5rem .2rem; white-space:normal; overflow-wrap:normal; }
  .af-stack-table tbody :is(td,th)::before { content:attr(data-label); font-weight:700; color:var(--ed-green); text-align:left; }
}
@media(max-width:480px) {
  :root { --hi-gutter:1.25rem; --hi-section:3rem; }
  body { font-size:1.0625rem; }
  .hi-wordmark-main { font-size:1.3rem; }
  .hi-site-header { padding-block:.9rem; }
  .hi-header-row { gap:1rem; }
  .ed-hero-copy h1 { font-size:2.1rem; }
  .ed-hero-copy>p { font-size:1.1rem; }
  .ed-hero .wp-block-buttons,.af-actions { align-items:stretch; flex-direction:column; }
  .ed-hero .wp-block-button,.ed-hero .wp-block-button__link,.af-actions .wp-block-button,.af-actions .wp-block-button__link { width:100%; }
  .ed-home h2,.hi-prose h2,.af-prose h2,.hi-inner-content .wp-block-post-content h2 { font-size:1.7rem; }
  .hi-contact-form { padding:1.25rem!important; }
  .hi-inner-content>.wp-block-post-title,.hi-page-hero-copy h1,.hi-person-intro-copy h1 { font-size:2rem; }
  .hi-toc { padding:1.1rem; }
  .af-home-town-links { columns:1; }
  .af-step>.af-kicker { grid-row:1; }
  .af-step>p:not(.af-kicker) { grid-column:1 / -1; }
  body figure.af-stack-table tbody :is(td,th) { grid-template-columns:1fr; gap:.15rem; padding-block:.65rem; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

/* Shared motion tokens; all underlying content remains visible in the editor and without JS. */
:root { --hi-motion-ease:cubic-bezier(.16,1,.3,1); --hi-motion-feedback:180ms; }
.hi-motion-ready :is(a,button,summary,input,select,textarea) {
  transition:color var(--hi-motion-feedback) ease,background-color var(--hi-motion-feedback) ease,border-color var(--hi-motion-feedback) ease;
}
.hi-motion-ready :is(.hi-arrow-button .wp-block-button__link,.hi-text-link a,.hi-link-row a)::after {
  transition:transform 260ms var(--hi-motion-ease);
}
.hi-motion-ready :is(.hi-text-link a,.hi-link-row a):is(:hover,:focus-visible)::after { transform:translateX(3px); }
.hi-motion-toggle { display:block; width:fit-content; max-width:100%; margin-top:1.25rem; margin-inline:0!important; border:0; border-bottom:1px solid currentColor; border-radius:0; padding:.65rem 0; color:inherit; background:transparent; font:inherit; font-size:.8125rem; line-height:1.5; text-align:left; cursor:pointer; }
.hi-motion-toggle:disabled { cursor:default; opacity:1; border-bottom-color:transparent; }
.hi-motion-image-window { display:block; width:100%; overflow:hidden; overflow:clip; line-height:0; }
.hi-page-hero-media .hi-motion-image-window { aspect-ratio:1.4; }
.af-local-photo .hi-motion-image-window { aspect-ratio:1.3; }
.hi-motion-scenic .hi-motion-image-window img { display:block; width:100%; height:100%; max-height:none; object-fit:cover; aspect-ratio:auto; }
@keyframes hi-scenic-drift {
  from { transform:translate3d(0,-8px,0) scale(1.045); }
  to { transform:translate3d(0,8px,0) scale(1.045); }
}
@supports (animation-timeline:view()) {
  @media(min-width:1000px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
    .hi-motion-ready:not(.hi-motion-paused):not(.hi-motion-reduced) .hi-motion-image-window img {
      animation:hi-scenic-drift 1s linear both;
      animation-timeline:view();
      animation-range:entry 0% exit 100%;
    }
  }
}
@media(max-width:781px) { .af-local-photo .hi-motion-image-window { aspect-ratio:1.8; max-height:300px; } }
.hi-motion-paused .hi-motion-image-window img,.hi-motion-reduced .hi-motion-image-window img { animation:none!important; transform:none!important; }
.hi-motion-paused :is(a,button,summary,input,select,textarea),.hi-motion-reduced :is(a,button,summary,input,select,textarea),
.hi-motion-paused :is(a,button)::after,.hi-motion-reduced :is(a,button)::after { transition:none!important; }
@media(prefers-reduced-motion:reduce) { .hi-motion-image-window img { animation:none!important; transform:none!important; } }
@media print { .hi-motion-image-window img { animation:none!important; transform:none!important; } .hi-motion-toggle { display:none!important; } }
