/* Family homes: coconut, leaf, terracotta and teak; original roof and veranda shapes. */
:root { --coconut:#fffaf0; --clay-pale:#f1dfc6; --terracotta:#a34c32; --terracotta-deep:#773323; --turmeric:#c4872f; --leaf:#506f4e; --leaf-deep:#304f3a; --leaf-pale:#e7efe3; --teak:#49352c; --ink:#303b35; --muted:#626a64; --line:#d8cfbd; --accent:#a34c32; --accent-dark:#773323; --brand:#304f3a; --surface:#e7efe3; --warm:#fffaf0; }
html,body,main,main>section { overflow-x:visible!important; }
html { scroll-behavior:auto; scroll-padding-top:110px; }
body { background:var(--coconut); font:18px/1.65 "Segoe UI","Helvetica Neue",Arial,sans-serif; }
main h1,main h2,main h3 { font-family:inherit; word-break:normal; overflow-wrap:anywhere!important; }
main h1,.hero h1 { max-width:720px; font-size:clamp(36px,3.65vw,50px); line-height:1.12; }
main h2 { font-size:clamp(28px,2.8vw,38px); line-height:1.2; }
main h3 { font-size:22px; line-height:1.25; }
main>section { padding:clamp(40px,4.6vw,66px) 0; }
.shell { width:min(calc(100% - 48px),1180px); }
.operator-bar { background:var(--leaf-deep); color:#fff; font-size:13px; line-height:1.4; padding:8px 24px; }
.awz-header { background:var(--coconut); }
.awz-header .awz-header-inner { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:16px; max-width:1228px; padding:12px 24px; }
.awz-header .awz-brand { grid-column:1; grid-row:1; justify-self:start; gap:10px; color:var(--ink); }
.awz-header .awz-brand img { width:64px; height:42px; object-fit:contain; }
.awz-header .awz-brand-copy { display:grid; gap:3px; white-space:normal; }
.awz-header .awz-brand-copy strong { font-size:15px; }
.awz-header .awz-brand-copy small { font-size:13px; color:var(--ink); }
.awz-header .awz-menu-toggle { grid-column:2; grid-row:1; justify-self:end; display:flex; min-height:44px; border-color:#7c7f83; padding:9px 12px; }
.awz-header [data-awz-nav]:not([hidden]) { display:block!important; position:absolute; top:100%; right:24px; left:auto; width:min(340px,calc(100vw - 32px)); max-height:min(70vh,540px); overflow:auto; padding:8px; margin:0; background:var(--coconut); border:1px solid #7c7f83; border-radius:8px; z-index:60; }
.awz-header [data-awz-nav] a { display:block; min-height:44px; padding:10px 12px; }
.awz-header [data-awz-nav][hidden] { display:none!important; }
.hero { background:linear-gradient(108deg,#f4e5cd 0 57%,#e8efe4 57% 100%); overflow:visible; }
.roof-pattern { pointer-events:none; }
.hero .shell.hero-grid { display:grid; grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr)!important; grid-template-areas:"copy image" "routes routes"; gap:28px 40px; align-items:center; }
.hero-copy { grid-area:copy; padding-left:24px; }
.hero .hero-intro { font-size:18px; line-height:1.55; color:#59625b; }
.hero .value-band { font-size:16px; line-height:1.45; color:var(--ink); font-weight:700; margin:16px 0 0; }
main .hero-figure.awz-image-wrap { grid-area:image; min-height:0!important; height:316px!important; border:8px solid rgba(255,255,255,.88); border-radius:72px 10px 72px 10px; box-shadow:0 12px 28px rgba(58,48,37,.15); }
main .hero-figure.awz-image-wrap img { min-height:0!important; width:100%; height:100%; object-fit:cover; object-position:50% 56%; }
.awz-image-wrap figcaption { left:auto; right:10px; bottom:10px; max-width:calc(100% - 20px); border:0; border-radius:3px; padding:5px 8px; background:var(--leaf-deep); color:#fff; font-size:12px; line-height:1.35; font-weight:500; }
.hero-figure figcaption { right:34px; bottom:14px; max-width:calc(100% - 48px); }
.hero-actions.home-routes { grid-area:routes; display:grid; grid-template-columns:1.08fr .92fr; gap:14px; margin-top:12px; }
.home-route { min-height:116px; padding:24px 24px 20px; border-radius:32px 6px 6px 6px; }
.home-route span { font-size:13px; line-height:1.4; }
.home-route strong { font-size:19px; line-height:1.3; }
.home-route small { font-size:16px; line-height:1.4; }
.family-grid { grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:44px; }
.family-line { grid-template-columns:repeat(2,minmax(0,1fr)); }
.family-line article { min-height:132px; padding:22px; }
.family-line b { font-size:20px; line-height:1.35; }
.family-line span { font-size:17px; line-height:1.55; }
.owner-layout { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); grid-template-areas:"copy image"; gap:44px; align-items:center; }
.owner-copy,.buyer-copy { grid-area:copy; max-width:650px; }
.owner-section { background:var(--leaf-pale); }
.homes-section { color:var(--ink); background:var(--clay-pale); }
.homes-heading { grid-template-columns:minmax(0,.52fr) minmax(0,1.48fr); gap:36px; margin-bottom:32px; }
.homes-heading .eyebrow { color:var(--terracotta-deep); }
.homes-row { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.homes-row article { padding:34px 24px 26px; }
.homes-row h3 { color:var(--ink); font-size:22px; }
.homes-row p { font-size:17px; line-height:1.55; }
.buyer-layout { grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); grid-template-areas:"image copy"; gap:44px; align-items:center; }
.buyer-section { color:#fff; background:var(--teak); }
.buyer-section h2 { color:#fff; }
.buyer-section .eyebrow { color:#f4c598; }
.buyer-copy p:not(.eyebrow) { color:#eee4db; }
main .owner-figure.awz-image-wrap,main .buyer-figure.awz-image-wrap { grid-area:image; min-height:0!important; height:auto!important; aspect-ratio:3/2; }
main .owner-figure.awz-image-wrap { max-width:520px!important; justify-self:end; border:8px solid var(--coconut); border-radius:8px 72px 8px 72px; box-shadow:8px 8px 0 rgba(80,111,78,.19); }
main .buyer-figure.awz-image-wrap { max-width:540px!important; justify-self:start; border:8px solid rgba(255,255,255,.92); border-radius:68px 8px 8px 8px; box-shadow:0 12px 28px rgba(58,48,37,.15); }
.owner-figure img,.buyer-figure img { min-height:0!important; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; object-position:50% 54%; }
.text-link { min-height:44px; line-height:1.4; color:var(--leaf-deep); }
.buyer-section .text-link--light { color:#fff; border-color:#e0a65c; }
.awz-introduction,.awz-business-inquiry { padding-inline:24px; }
.awz-introduction-copy h2 { font-size:32px; }
.awz-introduction-copy a { display:inline-flex; align-items:center; min-height:44px; font-size:16px; }
.awz-introduction-facts dd { font-size:15px; }
.awz-introduction-facts dt,.awz-about .awz-facts strong { color:var(--ink); }
.awz-business-grid { grid-template-columns:minmax(0,1fr); max-width:880px; margin:auto; gap:0; }
.awz-business-inquiry-inner>h2 { max-width:880px; margin:0 auto 24px; font-size:34px; }
.awz-business-grid .awz-pilot-form { border-radius:8px 8px 0 0; border-bottom:0; box-shadow:none; }
#contact-form.awz-pilot-form { display:block; padding:clamp(22px,3vw,36px); }
#contact-form.awz-pilot-form::before { left:36px; }
.awz-business-grid .awz-contact { border-radius:0 0 8px 8px; border-top:3px solid var(--leaf-deep); }
.awz-pilot-form legend { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.awz-intents { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.awz-intents label { padding:13px 12px; min-height:58px; border-color:#7c7f83; border-radius:4px; font-size:16px; line-height:1.4; align-items:flex-start; color:var(--ink); }
.awz-intents label:has(input:checked) { border-color:var(--terracotta); background:#fbede6; box-shadow:inset 0 0 0 1px var(--terracotta); }
.awz-intents input { accent-color:var(--terracotta); }
.awz-pilot-form>input,.awz-pilot-form>textarea,.awz-personal input { min-height:48px; border-color:#7c7f83; font-size:17px; line-height:1.5; }
.awz-pilot-form textarea { min-height:156px; }
.awz-pilot-form textarea::placeholder { color:var(--muted); opacity:1; }
.awz-pilot-form details { padding:0 16px; }
.awz-pilot-form summary { min-height:50px; padding:13px 0; font-size:16px; line-height:1.5; }
.awz-personal { padding-bottom:18px; }
.awz-consent,.awz-confidential { font-size:15px; line-height:1.55; color:var(--muted); }
.awz-consent a { color:var(--leaf-deep); }
.awz-pilot-form button[type=submit] { min-height:52px; background:var(--terracotta-deep); line-height:1.5; border-radius:4px; }
.awz-pilot-form button[type=submit]:hover:not(:disabled) { background:var(--leaf-deep); }
.awz-contact h2 { margin:0 0 18px; font-size:clamp(27px,2.8vw,34px); line-height:1.25; }
.awz-contact strong { font-size:19px; }
.awz-contact address { margin-top:14px; }
.awz-contact address a { min-height:44px; display:flex; align-items:center; margin:0; font-size:18px; }
.awz-contact address span { font-size:13px; }
.awz-about .button { min-height:48px; line-height:1.5; }
.awz-footer { background:var(--teak); border-top:3px solid var(--terracotta); }
.awz-footer nav { gap:4px 24px!important; }
.awz-footer a { display:inline-flex; align-items:center; min-height:44px; font-size:15px; }
section[id],form[id],main[id] { scroll-margin-top:110px; }
:focus-visible { outline:3px solid var(--terracotta-deep); outline-offset:4px; }
.home-route--primary:focus-visible,.home-route:hover:focus-visible,.buyer-section a:focus-visible,.awz-footer a:focus-visible { outline-color:#fff; }
.home-route--primary:focus-visible,.home-route:hover:focus-visible { outline-offset:-5px; }
@media(max-width:1000px) {
  .hero .shell.hero-grid { grid-template-columns:minmax(0,1fr)!important; grid-template-areas:"copy" "image" "routes"; gap:24px; }
  .hero-copy { max-width:780px; }
  main .hero-figure.awz-image-wrap { max-width:620px!important; justify-self:center; }
  .family-grid,.owner-layout,.buyer-layout { grid-template-columns:minmax(0,1fr); gap:28px; }
  .owner-layout,.buyer-layout { grid-template-areas:"copy" "image"; }
  .owner-copy,.buyer-copy { max-width:none; }
  .homes-heading { grid-template-columns:minmax(0,1fr); gap:6px; }
  .homes-row { grid-template-columns:minmax(0,1fr); gap:24px; }
  .homes-row h3 { min-height:0; }
}
@media(max-width:680px) {
  .shell { width:calc(100% - 32px); }
  .operator-bar { padding-inline:16px; font-size:12px; }
  .awz-header .awz-header-inner { gap:0 10px; padding:8px 16px; }
  .awz-header .awz-menu-toggle { padding:8px; }
  .awz-header .awz-brand img { width:54px; height:38px; }
  .awz-header .awz-brand-copy strong { font-size:13px; }
  .awz-header .awz-brand-copy small { font-size:12px; }
  .awz-header [data-awz-nav]:not([hidden]) { right:16px; max-height:calc(100dvh - 110px); }
  main h1,.hero h1 { font-size:34px; line-height:1.16; margin-bottom:18px; }
  main>section { padding-block:38px; }
  .hero { background:linear-gradient(180deg,#f4e5cd 0 73%,#e8efe4 73%); }
  .hero-copy { padding-left:18px; }
  .hero .hero-intro { font-size:17px; }
  main .hero-figure.awz-image-wrap { height:220px!important; border-width:5px; border-radius:56px 7px 56px 7px; }
  .hero-figure figcaption { right:26px; bottom:12px; max-width:calc(100% - 40px); }
  .hero-actions.home-routes { grid-template-columns:minmax(0,1fr); gap:14px; }
  .home-route { min-height:104px; padding:24px 18px 18px; }
  .home-route strong { font-size:18px; }
  .family-line { grid-template-columns:minmax(0,1fr); }
  .family-line article { min-height:0; padding:20px; }
  main .owner-figure.awz-image-wrap { border-radius:7px 48px 7px 48px; box-shadow:6px 6px 0 rgba(80,111,78,.19); }
  main .buyer-figure.awz-image-wrap { border-radius:48px 7px 7px 7px; }
  .awz-introduction,.awz-business-inquiry { padding-inline:16px; }
  .awz-intents { grid-template-columns:minmax(0,1fr); }
  .awz-intents label { min-height:50px; }
  .awz-business-inquiry-inner>h2 { font-size:30px; }
  .awz-business-grid .awz-pilot-form,.awz-business-grid .awz-contact,#contact-form.awz-pilot-form { padding:22px 18px; }
  #contact-form.awz-pilot-form::before { left:18px; width:104px; }
  .awz-contact address a { font-size:17px; }
}
@media(max-width:350px) { main h1,.hero h1 { font-size:32px; } main .hero-figure.awz-image-wrap { height:210px!important; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; animation:none!important; transition:none!important; } }

/* AWZ: H1 wie scheidungshaeuser.de */
h1{font-family:Arial,Helvetica,sans-serif !important;font-weight:700 !important;letter-spacing:-0.034em;line-height:1.12;font-size:clamp(38px,3.7vw,53px) !important}
