@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');
/* ===== Haus Marion Design 2026 nach Gamshof (Claude 2026-10-15) ===== */
body {color:#4d4547;}
.body-inner {overflow-x:hidden;}
#page-content, section#page-content {background-color:#faf6f1;}
body h1, body h2, body h3, body .h1, body .h2, body .h3, #page-title .page-title h1 {font-family:'Playfair Display',Georgia,'Times New Roman',serif !important; font-weight:700 !important; color:#2d1a1f; letter-spacing:0; text-transform:none;}
body h1, body .h1 {font-size:44px; line-height:1.12; margin-bottom:18px;}
body h2, body .h2 {font-size:36px; line-height:1.18;}
body h3, body .h3 {font-size:25px; line-height:1.25;}
body h4, body .h4 {font-family:Poppins,Arial,sans-serif !important; font-weight:600 !important; font-size:17px; color:#2d1a1f; text-transform:none; letter-spacing:.01em;}
body p, body li {font-size:15px; line-height:1.8;}
body .lead {font-size:18px; line-height:1.7; color:#6a6164;}
a {color:#a40233;}
a:hover {color:#6d0c22;}
strong {color:#3a2d31;}
#page-title .page-title h1 {color:#ffffff !important; font-size:52px; text-shadow:0 2px 16px rgba(0,0,0,.45);}

/* Kopfzeile + Menü */
#topbar {background-color:#6d0c22 !important;}
#topbar a, #topbar li {color:#ffffff !important; font-size:12.5px;}
#topbar a i {color:#e5b52d; margin-right:4px;}
#topbar a:hover {color:#e5b52d !important;}
#mainMenu nav ul li a {letter-spacing:.09em !important;}
#mainMenu nav ul li .dropdown-menu {border:0 !important; border-top:3px solid #e5b52d !important; border-radius:0 !important; box-shadow:0 14px 30px rgba(45,26,31,.16) !important;}
#mainMenu nav ul li .dropdown-menu a:hover {color:#a40233 !important;}
#nav nav li.active a:after, .ui-state-active, .ui-widget-header .ui-state-active, .ui-state-hover {background-color:#a40233 !important;}

/* Buttons */
.btn {background-color:#a40233 !important; border-color:#a40233 !important; color:#ffffff !important; border-radius:2px !important; letter-spacing:.14em !important; text-transform:uppercase !important; font-weight:600 !important; padding:13px 28px !important; height:auto !important; line-height:1.4 !important; transition:all .25s;}
.btn:hover {background-color:#6d0c22 !important; border-color:#6d0c22 !important;}
.hm-btn-outline {background-color:transparent !important; color:#a40233 !important; border:1px solid #a40233 !important;}
.hm-btn-outline:hover {background-color:#a40233 !important; color:#ffffff !important;}

/* Bausteine */
.hm-eyebrow {display:block; font-family:Poppins,Arial,sans-serif; font-size:12px; font-weight:600; letter-spacing:.24em; text-transform:uppercase; color:#a40233; margin-bottom:12px;}
.hm-eyebrow:before {content:""; display:inline-block; width:34px; height:2px; background:#e5b52d; vertical-align:middle; margin:-2px 12px 0 0;}
.hm-head {text-align:center; max-width:840px; margin:0 auto 40px;}
.hm-head .hm-eyebrow:after {content:""; display:inline-block; width:34px; height:2px; background:#e5b52d; vertical-align:middle; margin:-2px 0 0 12px;}
.hm-head-left {text-align:left; margin:0 0 30px; max-width:none;}
.hm-head-left .hm-eyebrow:after {display:none;}
.hm-home, .hm-page {padding:10px 0 0;}
.hm-page .hm-head {margin-top:30px;}
.hm-section {padding:50px 0 30px;}
.hm-intro {padding:60px 0 40px;}
.hm-intro-sm {padding:40px 0 30px;}
.hm-photo {position:relative; margin:0 18px 18px 0;}
.hm-photo:before {content:""; position:absolute; top:18px; left:18px; right:-18px; bottom:-18px; border:2px solid #e5b52d;}
.hm-photo img {position:relative; width:100%; max-height:600px; object-fit:cover; box-shadow:0 18px 40px rgba(45,26,31,.2);}
.hm-intro-text {padding-left:40px;}
.hm-intro-btns .btn {margin:6px 8px 6px 0;}
.hm-sign {margin-top:22px; color:#8a8084;}
.hm-sign span {display:block; font-family:'Playfair Display',Georgia,'Times New Roman',serif; font-style:italic; font-size:26px; line-height:1.3; color:#a40233;}
.hm-usps {padding:10px 0 20px;}
.hm-usp {background:#ffffff; text-align:center; padding:30px 16px 26px; height:100%; border-bottom:3px solid #a40233; box-shadow:0 10px 30px rgba(109,12,34,.09);}
.hm-usp i {display:block; width:62px; height:62px; line-height:62px; margin:0 auto 16px; border-radius:50%; background:#f8e9ec; color:#a40233; font-size:24px;}
.hm-usp strong {display:block; font-family:'Playfair Display',Georgia,'Times New Roman',serif; font-size:21px; font-weight:700; line-height:1.2; color:#2d1a1f; margin-bottom:4px;}
.hm-usp span {font-size:13px; color:#8a8084;}
.hm-house {background:#ffffff; height:100%; box-shadow:0 10px 30px rgba(109,12,34,.09); padding-bottom:22px;}
.hm-house-img {display:block; height:240px; background-size:cover; background-position:center; margin-bottom:20px;}
.hm-house strong {display:block; font-family:'Playfair Display',Georgia,'Times New Roman',serif; font-size:23px; font-weight:700; color:#2d1a1f; padding:0 24px 8px;}
.hm-house span {display:block; padding:0 24px; font-size:14.5px; line-height:1.7;}
.hm-card {display:block; height:100%; background:#ffffff; box-shadow:0 10px 30px rgba(109,12,34,.09); color:#4d4547 !important; text-decoration:none !important; transition:transform .3s, box-shadow .3s;}
.hm-card:hover {transform:translateY(-6px); box-shadow:0 20px 40px rgba(109,12,34,.18);}
.hm-card-img {position:relative; display:block; height:260px; background-size:cover; background-position:center;}
.hm-card-img em {position:absolute; left:0; bottom:0; background:#a40233; color:#ffffff; font-style:normal; font-size:11px; font-weight:600; letter-spacing:.2em; text-transform:uppercase; padding:8px 16px;}
.hm-card-body {display:block; padding:24px 26px 26px;}
.hm-card-body strong {display:block; font-family:'Playfair Display',Georgia,'Times New Roman',serif; font-size:24px; font-weight:700; line-height:1.2; color:#2d1a1f; margin-bottom:10px;}
.hm-card-body span {display:block; font-size:14.5px; line-height:1.7;}
.hm-card-body b {display:block; margin-top:16px; font-size:12px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; color:#a40233;}
.hm-card-body b i {margin-left:6px; transition:margin .25s;}
.hm-card:hover b i {margin-left:12px;}
.hm-cta {position:relative; background-size:cover; background-position:center; padding:110px 15px; text-align:center; margin:40px calc(50% - 50vw) -120px;}
.hm-cta:before {content:""; position:absolute; top:0; left:0; right:0; bottom:0; background:linear-gradient(180deg,rgba(109,12,34,.80),rgba(45,10,20,.88));}
.hm-cta-inner {position:relative; max-width:760px; margin:0 auto; color:#ffffff;}
.hm-cta .hm-eyebrow {color:#e5b52d;}
.hm-cta .hm-eyebrow:after {content:""; display:inline-block; width:34px; height:2px; background:#e5b52d; vertical-align:middle; margin:-2px 0 0 12px;}
.hm-cta h2 {color:#ffffff !important; font-size:42px;}
.hm-cta p {color:rgba(255,255,255,.9); font-size:17px;}
.hm-cta-btns {margin:28px 0 20px;}
.hm-cta-btns .btn {margin:6px;}
.hm-cta .hm-btn-gold {background-color:#e5b52d !important; border-color:#e5b52d !important; color:#2d1a1f !important;}
.hm-cta .hm-btn-gold:hover {background-color:#ffffff !important; border-color:#ffffff !important;}
.hm-cta .hm-btn-ghost {background-color:transparent !important; border:1px solid rgba(255,255,255,.8) !important;}
.hm-cta .hm-btn-ghost:hover {background-color:#ffffff !important; color:#6d0c22 !important;}
.hm-cta-tel a {color:#ffffff !important; margin:0 6px;}
.hm-cta-tel a:hover {color:#e5b52d !important;}
.hm-cta-tel span {opacity:.5;}
.hm-facts {margin:10px 0 30px;}
.hm-fact {text-align:center; background:#ffffff; padding:26px 10px 22px; margin-bottom:20px; border-top:3px solid #e5b52d; box-shadow:0 10px 30px rgba(109,12,34,.09);}
.hm-fact strong {display:block; font-variant-numeric:lining-nums; font-family:'Playfair Display',Georgia,'Times New Roman',serif; font-size:34px; font-weight:700; line-height:1.1; color:#a40233;}
.hm-fact span {display:block; margin-top:6px; font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:#8a8084;}
.hm-chips {text-align:center; margin:0 0 36px;}
.hm-chips a {display:inline-block; margin:0 5px 10px; padding:9px 18px; background:#ffffff; border:1px solid #ecdfe2; border-radius:30px; color:#2d1a1f !important; font-size:13px; font-weight:500; transition:all .2s;}
.hm-chips a i {color:#a40233; margin-right:4px;}
.hm-chips a:hover {background:#a40233; border-color:#a40233; color:#ffffff !important;}
.hm-chips a:hover i {color:#ffffff;}
.hm-feature {background:#ffffff; margin-bottom:30px; box-shadow:0 10px 30px rgba(109,12,34,.09); scroll-margin-top:140px;}
.hm-feature-img {height:100%; min-height:340px; background-size:cover; background-position:center;}
.hm-feature-rev .row {flex-direction:row-reverse;}
.hm-feature-body {padding:38px 40px 26px;}
.hm-feature-head {display:flex; align-items:center; margin-bottom:16px;}
.hm-feature-head i {flex:0 0 54px; width:54px; height:54px; line-height:54px; text-align:center; border-radius:50%; background:#f8e9ec; color:#a40233; font-size:21px; margin-right:16px;}
.hm-feature-head span {display:block; font-size:11px; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:#a40233;}
.hm-feature-head h3 {margin:2px 0 0 !important; font-size:27px !important;}
ul.hm-check {list-style:none; padding:0; margin:0 0 16px;}
ul.hm-check li {position:relative; padding:7px 0 7px 26px; border-bottom:1px dashed #eadfe1; font-size:14.5px; line-height:1.65;}
ul.hm-check li:last-child {border-bottom:0;}
ul.hm-check li:before {content:"\f00c"; font-family:"Font Awesome 5 Free"; font-weight:900; position:absolute; left:0; top:9px; font-size:12px; color:#e5b52d;}
.hm-box {background:#ffffff; padding:30px 32px 20px; margin-bottom:30px; box-shadow:0 10px 30px rgba(109,12,34,.09); scroll-margin-top:140px;}
.hm-box-gold {border-top:3px solid #e5b52d;}
.hm-box-head {display:flex; align-items:center; margin-bottom:18px;}
.hm-box-head i {width:46px; height:46px; line-height:46px; text-align:center; border-radius:50%; background:#a40233; color:#ffffff; font-size:17px; margin-right:14px; flex:0 0 46px;}
.hm-box-head h3 {margin:0 !important;}
.hm-event {display:flex; align-items:flex-start; padding:14px 0; border-bottom:1px dashed #eadfe1; height:100%;}
.hm-event em {flex:0 0 96px; font-style:normal; font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:#a40233; padding-top:3px;}
.hm-event strong {display:block; font-size:15.5px; color:#2d1a1f;}
.hm-event span {display:block; font-size:14px; line-height:1.6;}
.hm-note {font-size:13px; color:#998e91; font-style:italic; margin:12px 0 0;}
.hm-tip {display:flex; align-items:center; background:#6d0c22; color:#ffffff; padding:22px 26px; margin:10px 0 0;}
.hm-tip i {flex:0 0 46px; width:46px; height:46px; line-height:46px; text-align:center; border-radius:50%; background:#e5b52d; color:#2d1a1f; font-size:18px; margin-right:18px;}
.hm-tip p {margin:0; color:#ffffff; font-size:15.5px;}
.hm-tip strong {color:#e5b52d;}
.hm-timeline {position:relative; max-width:900px; margin:10px auto 50px; padding-left:0;}
.hm-timeline:before {content:""; position:absolute; top:6px; bottom:6px; left:150px; width:2px; background:#ead2d7;}
.hm-tl-item {position:relative; display:flex; margin-bottom:22px;}
.hm-tl-year {flex:0 0 150px; padding:20px 30px 0 0; text-align:right; font-family:'Playfair Display',Georgia,'Times New Roman',serif; font-size:20px; font-variant-numeric:lining-nums; font-weight:700; line-height:1.15; color:#a40233;}
.hm-tl-item:before {content:""; position:absolute; left:144px; top:25px; width:14px; height:14px; border-radius:50%; background:#e5b52d; border:3px solid #faf6f1; box-shadow:0 0 0 2px #a40233;}
.hm-tl-body {flex:1; margin-left:30px; background:#ffffff; padding:18px 26px 8px; box-shadow:0 10px 30px rgba(109,12,34,.09);}
.hm-tl-body h3 {font-size:21px !important; margin:0 0 6px !important;}
.hm-tl-body p {font-size:14.5px; line-height:1.7;}
.hm-tiles {margin-bottom:10px;}
.hm-tile {display:flex; height:100%; background:#ffffff; padding:26px 26px 18px; box-shadow:0 10px 30px rgba(109,12,34,.09); border-left:3px solid #a40233;}
.hm-tile i {flex:0 0 52px; width:52px; height:52px; line-height:52px; text-align:center; border-radius:50%; background:#f8e9ec; color:#a40233; font-size:20px; margin-right:18px;}
.hm-tile h4 {margin:2px 0 6px !important;}
.hm-tile p {margin:0 0 8px; font-size:14.5px; line-height:1.7;}
.hm-strip {display:flex; align-items:center; background:#6d0c22; color:#ffffff; padding:22px 26px; margin:0 0 10px;}
.hm-strip i {flex:0 0 48px; width:48px; height:48px; line-height:48px; text-align:center; border-radius:50%; background:#e5b52d; color:#2d1a1f; font-size:18px; margin-right:18px;}
.hm-strip strong {display:block; color:#ffffff; font-family:'Playfair Display',Georgia,'Times New Roman',serif; font-size:22px; font-weight:700; line-height:1.25;}
.hm-strip span, .hm-strip a {color:rgba(255,255,255,.92) !important; font-size:14.5px;}
.hm-strip a:hover {color:#e5b52d !important;}
.hm-down {text-align:center; margin:16px 0 0; font-size:12px; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:#a40233;}
.hm-down i {margin-left:6px;}
.hm-small {padding-bottom:20px;}
.hm-small .hm-head {margin-bottom:28px;}

/* Zimmer-Karten */
.rooms .room {background:#ffffff; box-shadow:0 10px 30px rgba(109,12,34,.09); overflow:hidden;}
.rooms .room-image {height:230px; overflow:hidden;}
.rooms .room-image img {width:100%; height:230px; object-fit:cover; transition:transform .6s;}
.rooms .room:hover .room-image img {transform:scale(1.06);}
.rooms .room-details {padding:22px 24px 24px !important;}
.rooms .room-details h3 {font-size:24px !important; margin:0 0 12px !important;}

/* Fußzeile */
#footer.inverted {background-color:#6d0c22 !important;}
.shape-divider svg path {fill:#6d0c22 !important;}
#footer .copyright-content {background-color:#4f0818 !important; border-top:3px solid #e5b52d;}
#footer a:hover {color:#e5b52d !important;}
#footer .client-logos img {background:#ffffff; padding:10px 16px; border-radius:2px;}
#scrollTop {background:#a40233 !important; border-radius:2px !important;}
#header.sticky-active .header-inner {top:0 !important;}

@media (max-width:991px) {
 body h1, body .h1 {font-size:34px;} body h2, body .h2 {font-size:29px;}
 .hm-intro {padding:40px 0 30px;} .hm-intro-text {padding-left:15px;}
 .hm-usp {margin-bottom:20px; height:auto;}
 .hm-cta {padding:70px 15px;} .hm-cta h2 {font-size:30px;}
 .hm-feature-img {min-height:240px; height:240px;}
 .hm-feature-rev .row {flex-direction:row;}
 .hm-feature-body {padding:26px 22px 14px;}
 #page-title .page-title h1 {font-size:36px;}
}
@media (max-width:575px) {
 .hm-usps .col-6, .hm-facts .col-6 {padding-left:7px; padding-right:7px;}
 .hm-usps .row, .hm-facts .row {margin-left:-7px; margin-right:-7px;}
 .hm-usp {padding:22px 8px 18px;} .hm-usp strong {font-size:17px;}
 .hm-fact strong {font-size:25px;} .hm-fact span {font-size:10.5px; letter-spacing:.06em;}
 .hm-card-img {height:210px;}
 .hm-feature-head h3 {font-size:22px !important;}
 .hm-timeline:before {left:8px;}
 .hm-tl-item {display:block; padding-left:30px;}
 .hm-tl-item:before {left:2px; top:4px;}
 .hm-tl-year {text-align:left; padding:0 0 6px; font-size:19px;}
 .hm-tl-body {margin-left:0; padding:16px 18px 6px;}
 .hm-event em {flex-basis:80px;}
 .hm-tip, .hm-strip {padding:18px;}
 .hm-box {padding:24px 18px 14px;}
 .hm-tile {padding:20px 16px 12px;}
 .hm-chips a {margin:0 3px 8px; padding:8px 13px; font-size:12px;}
}

/* ===== Haus Marion: Basis ===== */
#page-content, section#page-content, .body-inner > section:not(#page-title) {background-color:#faf6f1;}
.bg-overlay {opacity:0;}
.inspiro-slider .slide .slide-captions h2, .textshadow {text-shadow:0 2px 16px rgba(0,0,0,.45);}
.inspiro-slider .slide .slide-captions h2 {font-size:64px;}
#page-title .page-title > h1, #page-title[data-bg-parallax] .page-title > h1 {color:#ffffff !important;}
#logo img, .logo-default img, .logo-dark img {height:73px !important; width:auto !important; max-width:none !important; padding:0 !important; margin-top:3px;}
.gallery .logo-default, .header-sticky .logo-default, .mainMenu-open .logo-default {filter:none;}
#mainMenu nav > ul > li.mega-menu-item > .dropdown-menu {width:inherit;}
.breakpoint-xs .mega-menu-content ul li {margin-right:20px;}
.kenburns-bg {background-position:50% 50%;}
#footer.inverted .widget-contact-us a {color:#ffffff !important;}
#footer .hc-widget img {width:auto;}
.footer-content .flickity-viewport {min-height:144px;}
#footer .widget .widget-title, #footer .widget h4 {text-transform:none; font-family:'Playfair Display',Georgia,serif !important; font-size:22px; font-weight:700;}
/* Kopfzeile dunkel wie Gamshof */
#header .header-inner, #header.header-sticky .header-inner, #header.sticky-active .header-inner {background-color:#181818 !important; border-bottom:0 !important;}
#mainMenu nav > ul > li > a {color:#ffffff !important; font-size:12px; font-weight:600;}
#mainMenu nav > ul > li:hover > a, #mainMenu nav > ul > li.current > a, #mainMenu nav > ul > li.active > a {color:#e5b52d !important;}
#header .header-extras .p-dropdown > a, #header .header-extras .icon-globe {color:#ffffff !important;}
#header .header-extras .p-dropdown-content a {color:#2d1a1f !important;}
#header .header-extras .p-dropdown-content a:hover {color:#a40233 !important;}
.lines, .lines:before, .lines:after {background-color:#ffffff !important;}
.mainMenu-open .lines, .mainMenu-open .lines:before, .mainMenu-open .lines:after {background-color:#ffffff !important;}
@media (max-width:1024px) {
#mainMenu {background:#181818 !important;}
#mainMenu nav > ul > li > a, .mainMenu-open #mainMenu a {color:#ffffff !important;}
#mainMenu nav > ul > li {border-bottom:1px solid rgba(255,255,255,.08);}
#mainMenu nav ul li .dropdown-menu {background:#222 !important; border-top:0 !important; box-shadow:none !important;}
#mainMenu nav ul li .dropdown-menu a {color:rgba(255,255,255,.85) !important;}
}
/* Wohneinheiten (Startseiten-Slider + Seite Appartements) */
.carousel .room-details ul, .room-details ul {text-align:left;}
.room-details ul {list-style:none; padding:0; margin:0 0 14px;}
.room-details ul li {position:relative; padding:5px 0 5px 22px; border-bottom:1px dashed #eadfe1; font-size:14px; line-height:1.6;}
.room-details ul li:last-child {border-bottom:0;}
.room-details ul li:before {content:"\f00c"; font-family:"Font Awesome 5 Free"; font-weight:900; position:absolute; left:0; top:7px; font-size:11px; color:#e5b52d;}
.room-details p {font-size:14.5px;}
.rooms .room-image, .rooms .room-image img {height:260px;}
/* Seiten */
.hm-page {padding:10px 0 20px;}
.hm-page .hm-head {margin-top:20px;}
.hm-chips span {display:inline-block; margin:0 5px 10px; padding:9px 18px; background:#ffffff; border:1px solid #ecdfe2; border-radius:30px; color:#2d1a1f; font-size:13px; font-weight:500;}
.hm-chips span i {color:#a40233; margin-right:4px;}
.hm-tile > div {flex:1;}
.hm-bank {width:100%; max-width:560px; border-collapse:collapse; margin:0 0 14px;}
.hm-bank th, .hm-bank td {padding:10px 0; border-bottom:1px dashed #eadfe1; font-size:15px; vertical-align:top;}
.hm-bank th {width:42%; font-weight:600; color:#2d1a1f; font-size:12px; letter-spacing:.12em; text-transform:uppercase;}
.hm-tip a {color:#e5b52d !important; text-decoration:underline;}
.hm-strip {margin-bottom:30px;}
.hm-strip > div {flex:1;}
.hm-frame {background:#ffffff; padding:12px; box-shadow:0 10px 30px rgba(109,12,34,.09); margin-bottom:30px;}
.hm-cta-tel a {display:inline-block; margin:4px 6px !important;}
.hm-feature-head > div {flex:1;}
@media (min-width:1025px) {
#mainMenu nav {margin-top:25px;}
#header .header-extras .p-dropdown {margin-top:27px;}
#mainMenu nav ul li.dropdown .dropdown-menu {top:auto !important; margin-top:22px !important;}
#mainMenu nav ul li.dropdown .dropdown-menu:before {content:""; position:absolute; left:0; right:0; top:-26px; height:26px;}
}
#page-title {background-color:#6d0c22 !important;}
.hm-page a:not(.btn), .hm-home a:not(.btn):not(.hm-card) {color:#a40233;}
.hm-page a:not(.btn):hover, .hm-home a:not(.btn):not(.hm-card):hover {color:#6d0c22;}
.hm-tip a:not(.btn), .hm-cta a:not(.btn) {color:#e5b52d !important;}
.hm-cta-tel a:not(.btn) {color:#ffffff !important;}
#footer .client-logos img {background:transparent !important; padding:0 !important;}
#footer .hm-addr td {padding:6px 0 !important; color:rgba(255,255,255,.85) !important; font-size:14px !important; line-height:23px !important;}
#footer .hm-addr .hm-addr-name {color:#ffffff !important; font-size:22px !important;}
#footer .hm-addr a {color:#e5b52d !important;}
.hm-cta {margin-bottom:-60px;}
@media (max-width:991px) { .inspiro-slider .slide .slide-captions h2 {font-size:40px;} }
@media (max-width:575px) { .hm-chips span {margin:0 3px 8px; padding:8px 13px; font-size:12px;} .hm-cta-tel span {display:none;} }
/* ===== Ende Haus Marion Design ===== */
