/* gan-bei.at: Austrian hospitality, forest/brick/linen, rounded plates and room plan. */
:root { --forest:#285347; --forest-deep:#193c34; --brick:#9e4933; --brick-dark:#7f3526; --linen:#f2eadf; --cream:#fffaf2; --paper:#fffefa; --ink:#27342f; --muted:#56645d; --line:#d7c9b8; --accent:#9e4933; --accent-dark:#193c34; --brand:#285347; --surface:#f2eadf; --warm:#fffefa; }
html,body,main,main>section { overflow-x:visible!important; }
html { scroll-behavior:auto; scroll-padding-top:144px; }
body { background:var(--paper); 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:730px; 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(--forest-deep); color:#fff; font-size:13px; line-height:1.4; padding:8px 24px; }
.awz-header { background:var(--paper); }
.awz-header .awz-header-inner { display:grid; grid-template-columns:minmax(0,1fr) auto 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(--forest); }
.awz-header .awz-language-nav { grid-column:2; grid-row:1; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:4px; margin:0; }
.awz-language-nav a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:8px; color:var(--ink); font-size:14px; }
.awz-language-nav a[aria-current="page"] { font-weight:750; text-decoration-thickness:2px; text-underline-offset:5px; }
.awz-header .awz-menu-toggle { grid-column:3; grid-row:1; justify-self:end; display:flex; min-height:44px; border-color:#758779; 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(--paper); border:1px solid #758779; 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:radial-gradient(circle at 78% 42%,#f0e2cf 0 27%,transparent 27.3%),var(--cream); overflow:visible; }
.table-curve { right:0; width:min(440px,48vw); height:440px; }
.hero .shell.hero-grid { display:grid; grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr)!important; grid-template-areas:"copy image" "routes routes"; gap:28px 40px; align-items:center; }
.hero-copy { grid-area:copy; }
.hero .hero-intro { font-size:18px; line-height:1.55; }
.hero .value-band { font-size:16px; line-height:1.45; color:var(--forest-deep); font-weight:700; margin:16px 0 0; }
main .hero-figure.awz-image-wrap { grid-area:image; min-height:0!important; height:312px!important; border:5px solid rgba(255,255,255,.8); border-radius:90px 18px 18px 90px; box-shadow:0 12px 28px rgba(25,60,52,.13); }
main .hero-figure.awz-image-wrap img { min-height:0!important; width:100%; height:100%; object-fit:cover; object-position:50% 54%; }
.awz-image-wrap figcaption { left:auto; right:10px; bottom:10px; max-width:calc(100% - 20px); border:0; border-radius:4px; padding:5px 8px; background:var(--forest-deep); color:#fff; font-size:12px; line-height:1.35; font-weight:500; }
.hero-actions.hospitality-routes { grid-area:routes; display:grid; grid-template-columns:1.08fr .92fr; gap:0; margin-top:8px; border-radius:18px; box-shadow:none; }
.hospitality-route { grid-template-columns:42px minmax(0,1fr); min-height:116px; padding:20px 24px; gap:13px; border-top:0; border-left:1px solid var(--line); }
.hospitality-route small { font-size:13px; }
.hospitality-route strong { font-size:19px; line-height:1.3; }
.hospitality-route em { font-size:16px; line-height:1.4; }
.rooms-grid { grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:44px; }
.room-plan { padding:14px 0 14px 26px; }
.room-plan article { grid-template-columns:80px 145px minmax(0,1fr); gap:14px; padding:20px 0; }
.room-plan span { font-size:13px; }
.room-plan h3 { font-size:20px; }
.room-plan p { font-size:17px; line-height:1.55; }
.owner-grid { grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr); gap:44px; align-items:center; }
.owner-copy,.buyer-copy { max-width:650px; }
.owner-section { background:var(--linen); }
.types-section { color:#fff; background:var(--forest-deep); }
.types-section h2,.types-section h3 { color:#fff; }
.types-section .eyebrow { color:#f0c3a8; }
.types-heading { grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr); gap:32px; margin-bottom:28px; }
.types-flow { grid-template-columns:repeat(3,minmax(0,1fr)); }
.types-flow article { padding:24px 22px; }
.types-flow h3 { min-height:0; font-size:21px; }
.types-flow span { margin-bottom:18px; }
.types-flow p { font-size:17px; line-height:1.55; }
.buyer-grid { grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr); gap:44px; align-items:center; }
.buyer-section { background:var(--paper); }
main .owner-figure.awz-image-wrap,main .buyer-figure.awz-image-wrap { 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-radius:18px 80px 18px 18px; box-shadow:8px 8px 0 #d7b48e; }
main .buyer-figure.awz-image-wrap { max-width:540px!important; justify-self:end; border-radius:80px 18px 80px 18px; box-shadow:0 12px 28px rgba(25,60,52,.13); }
.owner-figure img,.buyer-figure img { min-height:0!important; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; object-position:50% 50%; }
.buyer-figure figcaption { right:40px; bottom:14px; max-width:calc(100% - 54px); }
.text-link { min-height:44px; line-height:1.4; color:var(--forest-deep); }
.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(--forest); }
.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:18px 18px 0 0; border-bottom:0; box-shadow:none; }
#contact-form.awz-pilot-form { display:block; padding:clamp(22px,3vw,36px); }
.awz-business-grid .awz-contact { border-radius:0 0 18px 18px; border-top:3px solid var(--brick); }
.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(2,minmax(0,1fr)); gap:10px; }
.awz-intents label { padding:13px 12px; min-height:58px; border-color:#758779; border-radius:8px; font-size:16px; line-height:1.4; align-items:flex-start; color:var(--ink); }
.awz-intents label:has(input:checked) { border-color:var(--forest); background:#eaf1ec; box-shadow:inset 0 0 0 1px var(--forest); }
.awz-intents input { accent-color:var(--forest); }
.awz-pilot-form>input,.awz-pilot-form>textarea,.awz-personal input { min-height:48px; border-color:#758779; 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(--forest-deep); }
.awz-pilot-form button[type=submit] { min-height:52px; background:var(--forest); line-height:1.5; border-radius:8px; }
.awz-pilot-form button[type=submit]:hover:not(:disabled) { background:var(--forest-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(--forest-deep); border-top:3px solid var(--brick); }
.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:144px; }
:focus-visible { outline:3px solid var(--brick-dark); outline-offset:4px; }
.hospitality-route--primary:focus-visible,.types-section a:focus-visible,.awz-footer a:focus-visible { outline-color:#fff; }
.hospitality-route--primary: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; }
  .rooms-grid,.owner-grid,.buyer-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
  .owner-copy,.buyer-copy { max-width:none; }
  main .owner-figure.awz-image-wrap,main .buyer-figure.awz-image-wrap { justify-self:start; }
}
@media(max-width:820px) { .hero { background:linear-gradient(180deg,var(--cream),var(--linen)); } }
@media(max-width:680px) {
  .shell { width:calc(100% - 32px); }
  .operator-bar { padding-inline:16px; font-size:12px; }
  .awz-header .awz-header-inner { grid-template-columns:minmax(0,1fr) auto; gap:0 10px; padding:8px 16px 4px; }
  .awz-header .awz-menu-toggle { grid-column:2; grid-row:1; padding:8px; }
  .awz-header .awz-language-nav { grid-column:1/-1; grid-row:2; justify-content:flex-end; }
  .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 - 145px); }
  main h1,.hero h1 { font-size:34px; line-height:1.16; margin-bottom:18px; }
  main>section { padding-block:38px; }
  .hero .hero-intro { font-size:17px; }
  main .hero-figure.awz-image-wrap { height:220px!important; border-radius:62px 14px 14px 62px; }
  .hero-actions.hospitality-routes { grid-template-columns:minmax(0,1fr); }
  .hospitality-route { min-height:100px; padding:18px; border-left:0; border-top:1px solid var(--line); }
  .hospitality-route:first-child { border-top:0; }
  .hospitality-route strong { font-size:18px; }
  .room-plan { padding-left:22px; }
  .room-plan article { grid-template-columns:minmax(0,1fr); gap:5px; padding:19px 0; }
  .types-heading { grid-template-columns:minmax(0,1fr); gap:5px; }
  .types-flow { grid-template-columns:minmax(0,1fr); }
  .types-flow article { display:grid; grid-template-columns:32px minmax(0,1fr); gap:0 14px; padding:22px 0; border-top:1px solid rgba(255,255,255,.24); border-left:0; }
  .types-flow article:first-child { border-top:0; }
  .types-flow span { grid-row:1/3; margin:0; }
  .types-flow h3 { min-height:0; margin-bottom:7px; }
  .types-flow p { grid-column:2; }
  main .owner-figure.awz-image-wrap { border-radius:14px 58px 14px 14px; box-shadow:6px 6px 0 #d7b48e; }
  main .buyer-figure.awz-image-wrap { border-radius:58px 14px 58px 14px; }
  .buyer-figure figcaption { right:28px; bottom:12px; max-width:calc(100% - 42px); }
  .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; }
  .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}
