@charset "utf-8";
/*
Template Name: Chillaid
Author: <a href="https://www.os-templates.com/">OS Templates</a>
Author URI: https://www.os-templates.com/
Copyright: OS-Templates.com
Licence: Free to use under our free template licence terms
Licence URI: https://www.os-templates.com/template-terms
File: Layout CSS
*/

@import url("framework.css");

/* Schriftarten anwenden */
h1, h2, h3, h4, h5, h6 {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 500;
}

body {
  font-family: 'Poppins', sans-serif;
  font-weight: 300;
}

.content p, .content li {
    font-size: 1.05rem;
    font-weight: 300;
}

a {
    color: #a65b70; /* sanfter Akzent passend zu #DB93A5 */
    text-decoration: none;
}

a:hover {
    color: #8c465d;
    text-decoration: none;
}


/* Rows
--------------------------------------------------------------------------------------------------------------- */
.row0, .row0 a{}
.row1, .row1 a{}
.row2, .row2 a{}
.row3, .row3 a{}
.row4, .row4 a{}
.row5, .row5 a{}


/* Header
--------------------------------------------------------------------------------------------------------------- */
#header{}

#header #logo{margin:10px 0 0 0;}

/* Page Intro
--------------------------------------------------------------------------------------------------------------- */
#pageintro{padding:20px 0 280px;}/* 280px => 80px for #introblocks negative margin */

#pageintro article, #pageintro article p{display:block; max-width:75%; margin:0 auto; text-align:center;}
#pageintro article p{max-width:65%; line-height:2rem;}
#pageintro .heading{margin-bottom:20px; font-size:4rem;}
#pageintro footer{margin-top:20px;}


/* Content Area
--------------------------------------------------------------------------------------------------------------- */
//* .container{padding:80px 0;}

/* Content */
.container .content{}

.sectiontitle{display:block; max-width:55%; margin:0 auto 80px; text-align:center;}
.sectiontitle *{margin:0;}

.elements{}
.elements-three li, .elements-four li{margin-bottom:50px;}
.elements-three li:nth-last-child(-n+3), .elements-four li:nth-last-child(-n+4){margin-bottom:0;}/* Removes bottom margin from the last line of items - margin is restored in the media queries when items stack */
.elements-three li:nth-child(3n+1), .elements-four li:nth-child(4n+1){margin-left:0; clear:left;}/* Removes the need to add class="first" */
.elements article{display:block; padding:15px 15px; border-radius:50px 0; text-align:center; align-content: center; height:215px;}
.elements article *{margin:0 0 15px 0; padding:0; line-height:1;}
.elements article i{width:60px; height:60px; line-height:60px; margin-bottom:30px; font-size:1.6rem; text-align:center; border-radius:50%;}
.elements article .heading{font-size:1.2rem; font-weight:700;}
.elements article p{margin:0; line-height:normal;}

/* Introblocks */
#introblocks{display:block; position:relative; margin:-60px 0 0 0; z-index:1;}/* 160px => 80px + container padding */

/* Services */
#services{}
#services .elements article{border-radius:0;}

/* Shout */
.shout{}
.shout figure{display:block; max-width:546px;/* same width as the image - contains the caption */}
.shout figure img{}
.shout figure figcaption{display:block; position:relative;}
.shout figure figcaption a{display:block; position:relative; padding:15px; border:solid; border-width:0 1px 1px 1px;}
.shout figure figcaption a::after{position:absolute; top:12px; right:15px; width:30px; height:30px; line-height:30px; font-family:"Font Awesome\ 5 Free"; font-weight:900; content:"\f105";/* fa-angle-right */ text-align:center; border-radius:50%;}

/* Team Members */
.team{}
.team li:last-child{margin-bottom:0;}/* Used when elements stack in small viewports */
.team figure{display:block; text-align:center;}
.team figure *{margin:0; padding:0;}
.team figure a{}
.team figure img{}
.team figure figcaption{padding:20px 10px; line-height:1; border:solid; border-width:0 1px 1px 1px; height: 215px;}
.team figure strong{display:block; margin-bottom:8px; font-size:1.2rem; font-weight:400;}
.team figure em{display:block; font-style:normal; font-size:.9rem;}


/* Footer
--------------------------------------------------------------------------------------------------------------- */
#footer{padding:10px 0;}

#footer .heading{margin-bottom:50px; font-size:1.2rem;}
#footer .logoname{margin-bottom:50px;}
#footer p + .faico{margin-top:30px;}

#footer .linklist li{display:block; margin-bottom:15px; padding:0 0 15px 0; border-bottom:1px solid;}
#footer .linklist li:last-child{margin:0; padding:0; border:none;}
#footer .linklist li::before, #footer .linklist li::after{display:table; content:"";}
#footer .linklist li, #footer .linklist li::after{clear:both;}

#footer .latestimg{}
#footer .latestimg > li{display:inline-block; float:left; width:30%; margin:0 0 5% 5%;}
#footer .latestimg > li:nth-last-child(-n+3){margin-bottom:0;}/* Removes bottom margin from the last three items - margin is restored in the media queries when items stack */
#footer .latestimg > li:nth-child(3n+1){margin-left:0; clear:left;}/* Removes the need to add class="first" */
#footer .latestimg > li img{width:100%;}/* Force the image to resize to take the full space - may have to be changed for tablets, depends on personal preference */
#footer .latestimg > li a.imgover{display:block;}


/* Copyright
--------------------------------------------------------------------------------------------------------------- */
#copyright{padding:20px 0;}
#copyright *{margin:0; padding:0;}


/* Transition Fade
This gives a smooth transition to "ALL" elements used in the layout - other than the navigation form used in mobile devices
If you don't want it to fade all elements, you have to list the ones you want to be faded individually
Delete it completely to stop fading
--------------------------------------------------------------------------------------------------------------- */
*, *::before, *::after{transition:all .3s ease-in-out;}
#mainav form *{transition:none !important;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Navigation
--------------------------------------------------------------------------------------------------------------- */
nav ul, nav ol{margin:0; padding:0; list-style:none;}

#mainav, #breadcrumb, .sidebar nav{line-height:normal;}
#mainav .drop::after, #mainav li li .drop::after, #breadcrumb li a::after, .sidebar nav a::after{position:absolute; font-family:"Font Awesome\ 5 Free"; font-weight:900; font-size:10px; line-height:10px;}

/* Top Navigation */
#mainav{}
#mainav ul{text-transform:uppercase;}
#mainav ul ul{position:absolute; width:180px; text-transform:none; z-index:9999;}
#mainav ul ul ul{left:180px; top:0;}
#mainav li{display:inline-block; position:relative; margin:0 15px 0 0; padding:0;}
#mainav li:last-child{margin-right:0;}
#mainav li li{width:100%; margin:0;}
#mainav li a{display:block; padding:30px 0;}
#mainav li li a{border:solid; border-width:0 0 1px 0;}
#mainav .drop{padding-left:15px;}
#mainav li li a, #mainav li li .drop{display:block; margin:0; padding:10px 15px;}
#mainav .drop::after, #mainav li li .drop::after{content:"\f0d7";}
#mainav .drop::after{top:35px; left:5px;}
#mainav li li .drop::after{top:15px; left:5px;}
#mainav ul ul{visibility:hidden; opacity:0;}
#mainav ul li:hover > ul{visibility:visible; opacity:1;}

#mainav form{display:none; width:100%; margin:0; padding:0;}
#mainav form select, #mainav form select option{display:block; cursor:pointer; outline:none;}
#mainav form select{width:100%; padding:5px; border:none;}
#mainav form select option{margin:5px; padding:0; border:none;}

/* Back to Top */
#backtotop{z-index:999; display:inline-block; position:fixed; visibility:hidden; bottom:20px; right:20px; width:36px; height:36px; line-height:36px; font-size:16px; text-align:center; opacity:.2;}
#backtotop i{display:block; width:100%; height:100%; line-height:inherit;}
#backtotop.visible{visibility:visible; opacity:.5;}
#backtotop:hover{opacity:1;}


/* Tables
--------------------------------------------------------------------------------------------------------------- */
table, th, td{border:1px solid; border-collapse:collapse; vertical-align:top;}
table, th{table-layout:auto;}
table{width:100%; margin-bottom:15px;}
th, td{padding:5px 8px;}
td{border-width:0 1px;}

/* Font Awesome Social Icons
--------------------------------------------------------------------------------------------------------------- */
.faico{margin:0; padding:0; list-style:none;}
.faico li{display:inline-block; margin:8px 5px 0 0; padding:0; line-height:normal;}
.faico li:last-child{margin-right:0;}
.faico a{display:inline-block; width:36px; height:36px; line-height:36px; font-size:18px; text-align:center;}

.faico a{color:inherit; background-color:#282E39;}
.faico a:hover{color:#FFFFFF;}

.faicon-dribble:hover{background-color:#EA4C89;}
.faicon-facebook:hover{background-color:#3B5998;}
.faicon-google-plus:hover{background-color:#DB4A39;}
.faicon-linkedin:hover{background-color:#0E76A8;}
.faicon-twitter:hover{background-color:#00ACEE;}
.faicon-vk:hover{background-color:#4E658E;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Colours
--------------------------------------------------------------------------------------------------------------- */
body{color:#A5A6AA; background-color:#282E39;}
a{color:#97A9BD;}
a:active, a:focus{background:transparent !important;}/* IE10 + 11 Bugfix - prevents grey background */
hr, .borderedbox{border-color:#D7D7D7;}
label span{color:#FF0000; background-color:inherit;}
input:focus, textarea:focus, *:required:focus{border-color:#97A9BD !important;}

.overlay{color:#FFFFFF; background-color:#DB93A5;}
.overlay::after{color:inherit; background-color:rgba(40,46,57,.7);/* #282E39 */}
.overlay.light::after{background-color:inherit;/* #97A9BD */}

.gradient{color:#474747; background:linear-gradient(to bottom, #F4F4F4 55%, #FFFFFF 50%, #FFFFFF 100%);}/* Overlap dark to make a hard transition */
@media screen and (max-width:750px){/* Only the colours height has been changed */
	.gradient{background:linear-gradient(to bottom, #F4F4F4 24%, #FFFFFF 19%, #FFFFFF 100%);}
}

.btn, .btn.inverse:hover{color:#FFFFFF; background-color:#97A9BD; border-color:#97A9BD;}
.btn:hover, .btn.inverse{color:inherit; background-color:transparent; border-color:inherit;}

.imgover:hover::before{background-color:rgba(151,169,189,.5);/* #97A9BD */}
.imgover, .imgover:hover::after{color:#FFFFFF;}

.logoname a{color:#FFFFFF;}
.logoname::first-letter, .logoname span{color:#97BDAB;}


/* Rows */
.row0, .row0 a{}
.row1{color:#FFFFFF; background-color:#000000;}
.row2{color:#474747; background-color:#F4F4F4;}
.row3{color:#474747; background-color:#FFFFFF;}
.row4{color:#A5A6AA; background-color:#000000;}
.row5, .row5 a{color:#A5A6AA; background-color:#282E39;}
.coloured{color:#FFFFFF; background-color:#97A9BD;}


/* Header */
#header #logo a{color:inherit;}


/* Page Intro */
#pageintro{color:#FFFFFF;}


/* Content Area */
.elements article{color:#474747; background-color:#FFFFFF; box-shadow:0px 0px 15px rgba(0,0,0,.3);}
/*.elements article:hover{color:#FFFFFF; background-color:#97A9BD;}*/ /* Default */ /*hover deaktiviert*/
.elements article a i{color:#FFFFFF; background-color:#97A9BD;}/* Default */
/*.elements article:hover a i{color:#97A9BD; background-color:#FFFFFF;}*//* Default */ /*hover deaktiviert*/

/* ###### DELETE THE FOLLOWING IF ONLY THE DEFAULT COLOUR IS REQUIRED ###### */
#introblocks .elements li article{color:#FFFFFF; background-color:#97A9BD;}/* Blue */
#introblocks .elements li a article i{color:#97A9BD; background-color:#FFFFFF;}/* Blue */
#introblocks .elements li article:hover{color:#474747; background-color:#FFFFFF !important;}
#introblocks .elements li a:hover article i{color:#FFFFFF !important; background-color:#97A9BD;} /*Reihenfolge von ehemals article:hover a i angepasst*/
#introblocks .elements li:nth-child(2) article, #introblocks .elements li:nth-child(2) a:hover article i{background-color:#DB93A5;}/* Red */ /*Reihenfolge von ehemals article:hover a i angepasst*/
#introblocks .elements li:nth-child(2) a article i{color:#DB93A5;}/* Red */ /*Reihenfolge von ehemals article:hover a i angepasst*/
#introblocks .elements li:nth-child(3) article, #introblocks .elements li:nth-child(3) a:hover article i{background-color:#8EA4C8;}/* Blue */ /*Reihenfolge von ehemals article:hover a i angepasst*/
#introblocks .elements li:nth-child(3) a article i{color:#8EA4C8;}/* Blue */ /*Reihenfolge von ehemals article:hover a i angepasst*/
#introblocks .elements li:nth-child(4) article, #introblocks .elements li:nth-child(4) a:hover article i{background-color:#B4D8C4;}/* Green */ /*Reihenfolge von ehemals article:hover a i angepasst*/
#introblocks .elements li:nth-child(4) a article i{color:#B4D8C4;}/* Green */ /*Reihenfolge von ehemals article:hover a i angepasst*/
/* ###### END DELETE ###### */

.shout figure figcaption a{color:inherit; background-color:inherit; border-color:#D7D7D7;}
.shout figure:hover figcaption a, .shout figure figcaption a::after{color:#FFFFFF; background-color:#97A9BD; border-color:#97A9BD;}
.shout figure:hover figcaption a::after{color:#97A9BD; background-color:#FFFFFF;}

.team figure figcaption{color:#474747; background-color:#FFFFFF; border-color:#D7D7D7;}

/* Footer */
#footer .heading{color:#FFFFFF;}
#footer hr, #footer .borderedbox, #footer .linklist li{border-color:rgba(255,255,255,.1);}


/* Navigation */
#mainav li a{color:inherit;}
#mainav .active a, #mainav a:hover, #mainav li:hover > a{color:#97A9BD; background-color:inherit;}
#mainav li li a, #mainav .active li a{color:#FFFFFF; background-color:rgba(151,169,189,.5); border-color:rgba(151,169,189,.5);/* #97A9BD */}
#mainav li li:hover > a, #mainav .active .active > a{color:#FFFFFF; background-color:#97A9BD;}
#mainav form select{color:#474747; background-color:#FFFFFF;}*/

#backtotop{color:#FFFFFF; background-color:#97A9BD;}


/* Tables + Comments */
table, th, td, #comments .avatar, #comments input, #comments textarea{border-color:#D7D7D7;}
th{color:#FFFFFF; background-color:#373737;}
tr, #comments li, #comments input[type="submit"], #comments input[type="reset"]{color:inherit; background-color:#FBFBFB;}
tr:nth-child(even), #comments li:nth-child(even){color:inherit; background-color:#F7F7F7;}
table a, #comments a{background-color:inherit;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Media Queries
--------------------------------------------------------------------------------------------------------------- */
@-ms-viewport{width:device-width;}


/* Max Wrapper Width - Laptop, Desktop etc.
--------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:1140px){
	.hoc{max-width:1140px;}
}

@media screen and (min-width:978px) and (max-width:1140px){
	.hoc{max-width:95%;}
}


/* Mobile Devices
--------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:978px){
	.hoc{max-width:90%;}

	#header{padding:15px 0;}
	#header #logo{margin-top:0;}

	.container{}
	#comments input[type="reset"]{margin-top:10px;}
	.pagination li{display:inline-block; margin:0 5px 5px 0;}

	#footer{}

	#copyright{}
	#copyright p:first-of-type{margin-bottom:10px;}
}

@media screen and (max-width:750px){
	.imgl, .imgr{display:inline-block; float:none; margin:0 0 10px 0;}
	.fl_left, .fl_right{display:block; float:none;}
	.group .group > *:last-child, .clear .clear > *:last-child, .clear .group > *:last-child, .group .clear > *:last-child{margin-bottom:0;}/* Experimental - Needs more testing in different situations, stops double margin when stacking */
	.one_half, .one_third, .two_third, .one_quarter, .two_quarter, .three_quarter{display:block; float:none; width:auto; margin:0 0 30px 0;}

	#header{text-align:center;}
	#header #logo{margin:0 0 15px 0;}

	#pageintro article, #pageintro article p{max-width:none;}
	#pageintro .heading{font-size:2rem;}

	.sectiontitle{max-width:none;}
	.shout figure, .team li, #latest > li{margin:0 auto 50px;}
	.team li, #latest li{max-width:348px;}/* Restrict the width to the one_third grid element */
	.elements-three li:nth-last-child(-n+3), .elements-four li:nth-last-child(-n+4){margin-bottom:50px;}
	.elements-three li:last-child, .elements-four li:last-child, .shout figure:last-child{margin-bottom:0;}

	/*#footer{padding-bottom:50px;}*//* Not needed - just looks better */
	#footer .latestimg > li, #footer .latestimg > li:nth-last-child(-n+3){display:inline-block; float:none; width:auto; margin:0 5% 5% 0;}
	#footer .latestimg > li:last-child{margin-bottom:0;}
	#footer .latestimg > li img{width:auto;}
}


/* Other
--------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:650px){
	.scrollable{display:block; width:100%; margin:0 0 30px 0; padding:0 0 15px 0; overflow:auto; overflow-x:scroll;}
	.scrollable table{margin:0; padding:0; white-space:nowrap;}

	.inline li{display:block; margin-bottom:10px;}
	.pushright li{margin-right:0;}

	.font-x2{font-size:1.6rem;}
	.font-x3{font-size:1.8rem;}
}

/* CI-Header */
.header-tiles {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1.5rem;
  margin: 3rem auto;
  max-width: 1100px;
  padding: 1rem;
}

.header-tile {
  background-color: #f1ecda; /* Cremeweiß */
  border-radius: 10px;
  text-align: center;
  padding: 2.5rem 1.5rem;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #3a2e2a; /* dunkler Akzentton */
}

.header-tile i {
  font-size: 2.5rem;
  color: #661822; /* CI-Rot */
  margin-bottom: 1.2rem;
  transition: color 0.3s ease;
}

.header-tile h3 {
  margin: 0.5rem 0;
  font-family: 'Playfair Display', serif;
  font-size: 1.4rem;
  font-weight: 600;
}

.header-tile p {
  margin: 0;
  font-family: 'Quicksand', sans-serif;
  font-size: 1rem;
  font-weight: 400;
  color: #4a403a;
}

.header-tile:hover {
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.2);
  transform: translateY(-4px);
}

.header-tile:hover i {
  color: #b9652a; /* dezentes Orange beim Hover */
}

.header-tile:active {
  transform: translateY(-2px) scale(0.98);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Optional: kleiner optischer Abschluss */
.header-tiles::after {
  content: "";
  display: none;
  width: 80px;
  height: 3px;
  background-color: #9fbea0; /* CI-Grün */
  margin: 2rem auto 0;
  border-radius: 2px;
}

/* Responsiv */
@media (max-width: 700px) {
  .header-tiles {
    grid-template-columns: 1fr 1fr;
  }

  .header-tile {
    padding: 2rem 1rem;
  }
}

@media (max-width: 480px) {
  .header-tiles {
    grid-template-columns: 1fr;
  }
}

/* --- Startseiten-Bild --- */
.hero-image {
  position: relative; /* <-- ganz wichtig */
  display: flex;
  justify-content: center;
  margin: 4rem auto;
  max-width: 700px;
  z-index: 1; /* sorgt dafür, dass er nicht über dem Header liegt */
}

.hero-image img {
  width: 100%;
  border-radius: 12px;
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);
  transition: all 0.4s ease;
  filter: brightness(0.98);
  display: block;
}

.hero-image:hover img {
  transform: scale(1.03);
  filter: brightness(1.05) saturate(1.1);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
}

/* Overlay korrekt positionieren */
.hero-image::after {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  border-radius: 12px;
  background-color: rgba(159, 190, 160, 0.12); /* dezentes Grün */
  opacity: 0;
  transition: opacity 0.4s ease;
  z-index: 2; /* nur über dem Bild */
  pointer-events: none; /* <-- entscheidend */
}

.hero-image:hover::after {
  opacity: 1;
}

/* === Seitenboxen im CI-Stil === */
.content-boxes {
  gap: 2rem;
  margin: 3rem auto;
  max-width: 1100px;
  padding: 1rem;
}

.content-box {
  background-color: #f1ecda;
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  padding: 2rem;
  color: #3a2e2a;
  transition: all 0.3s ease;
}

.content-box:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 18px rgba(0,0,0,0.2);
}

.content-box h2, .content-box h3 {
  color: #661822;
  font-family: 'Playfair Display', serif;
  margin-top: 0;
}

.content-box p {
  font-family: 'Quicksand', sans-serif;
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 1rem;
}

.content-box a {
  color: #9a5626;
  text-decoration: none;
  transition: color 0.3s ease;
}

.content-box a:hover {
  color: #661822;
}

.content-box i {
  color: #3a2e2a;
  margin-right: 0.5rem;
}

/* == Rückmeldung == */
.content-box.rueckmeldung {
  background-color: #9fbea0;
  color: #3a2e2a;
  padding: 2.5rem;
  border-radius: 14px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.15);
  position: relative;
}

/* Überschrift */
.content-box.rueckmeldung h2 {
  color: #3a2e2a;
  font-family: 'Playfair Display', serif;
  text-align: left;
  margin-bottom: 1rem;
  letter-spacing: 0.5px;
}

/* Formularstruktur */
.form-ci {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  margin-top: 1rem;
}

.form-ci .form-group {
  display: flex;
  flex-direction: column;
}

.form-ci label {
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
  margin-bottom: 0.5rem;  /* vorher: 0.4rem */
  margin-top: 0.4rem;     /* NEU: schafft Luft nach oben zur vorherigen form-group */
  color: #3a2e2a;
  letter-spacing: 0.2px;
}

/* Input-, Select- und Textarea-Styling */
.form-ci input,
.form-ci select,
.form-ci textarea {
  background-color: #fdfdfc;
  border: 1px solid #c7d7c9;
  border-radius: 8px;
  padding: 0.7rem 1rem;
  font-family: 'Poppins', sans-serif;
  font-size: 1rem;
  color: #3a2e2a;
  transition: all 0.25s ease;
  appearance: none; /* entfernt Windows-98-Style */
}

.form-ci input:focus,
.form-ci select:focus,
.form-ci textarea:focus {
  outline: none;
  border-color: #661822;
  box-shadow: 0 0 0 3px rgba(102, 24, 34, 0.15);
}

/* Select-Pfeil schöner darstellen */
.form-ci select {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg fill='%23661822' height='16' viewBox='0 0 24 24' width='16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.8rem center;
  background-size: 1rem;
}

/* Textarea */
.form-ci textarea {
  resize: vertical;
  min-height: 80px;
}

.btn-submit {
  display: inline-block;
  background-color: #661822; /* Rot */
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 0.8rem 1.6rem;
  font-family: 'Poppins', sans-serif;
  font-size: 1rem;
  font-weight: 500;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0,0,0,0.15);
  transition: all 0.3s ease;
}

.btn-submit:hover {
  background-color: #9a5626; /* Orange */
  transform: translateY(-2px);
  box-shadow: 0 6px 14px rgba(0,0,0,0.25);
}

.btn-back {
  display: inline-block;
  background-color: #9a5626; /* Orange (invertiert) */
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 0.8rem 1.6rem;
  font-family: 'Poppins', sans-serif;
  font-size: 1rem;
  font-weight: 500;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0,0,0,0.15);
  transition: all 0.3s ease;
}

.btn-back:hover {
  background-color: #661822; /* Rot beim Hover */
  transform: translateY(-2px);
  box-shadow: 0 6px 14px rgba(0,0,0,0.25);
}

.btn-submit:active,
.btn-back:active {
  transform: scale(0.98);
  box-shadow: 0 3px 8px rgba(0,0,0,0.15);
}

.form-buttons .btn-back {
  order: 1; /* links */
}

.form-buttons .btn-submit {
  order: 2; /* rechts */
}

/* --- FIX: Button-Paar nebeneinander & nicht zu breit --- */
.form-buttons {
  display: flex;
  flex-direction: row;       /* sicherstellen, dass es horizontal ist */
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  flex-wrap: nowrap;         /* kein Umbruch auf Desktop */
  margin-top: 1.5rem;
}

/* Buttons: niemals Full-Width auf Desktop */
.form-buttons .btn-submit,
.form-buttons .btn-back {
  flex: 0 0 auto;            /* nicht wachsen */
  width: auto;               /* keine 100% Breite */
  min-width: 160px;          /* schöne, einheitliche Größe */
  white-space: nowrap;       /* keine Umbrüche im Text */
}

/* Falls es noch eine alte Regel gab, die Buttons auf 100% setzt: jetzt aushebeln */
.btn-submit, .btn-back {
  width: auto;               /* überschreibt evtl. frühere width:100% */
}

/* Mobile: dürfen nebeneinander bleiben – oder umbrechen, aber NICHT breiter als die Box */
@media (max-width: 600px) {
  .form-buttons {
    flex-wrap: wrap;               /* darf umbrechen */
    justify-content: center;       /* mittig, wenn Umbruch */
  }
  .form-buttons .btn-submit,
  .form-buttons .btn-back {
    flex: 1 1 48%;                 /* zwei Buttons pro Zeile */
    min-width: 0;                  /* lässt Flex wirklich arbeiten */
    text-align: center;
  }
}

/* Infos */

.content-box#infos .lead { margin: 0 0 1rem 0; }
.lead-image {
  float: left;
  max-width: 210px;
  width: 35%;
  margin: 0 1rem .5rem 0;
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(0,0,0,.12);
}
@media (max-width: 700px) {
  .lead-image { float: none; width: 100%; max-width: 100%; margin: 0 0 .75rem 0; }
}

.anchor-list { margin: .5rem 0 1.25rem; padding-left: 1.1rem; }
.anchor-list li { margin: .25rem 0; }
.anchor-list a {
  text-decoration: none;
  color: #9a5626;
  transition: color .25s ease, transform .25s ease;
}
.anchor-list a:hover {
  color: #661822;
  transform: translateX(2px);
}

/* Einheitliche Innenabstände für Textkörper */
.content-box .content-body p { margin: .6rem 0 1rem; }

/* Dezente Divider, wenn du mehrere Boxen untereinander hast */
.content-box + .content-box { margin-top: 1rem; }

.timeline {
  list-style: none;
  padding-left: 1rem;
}
.timeline li {
  margin: 0.4rem 0;
  padding-left: 0.5rem;
  position: relative;
}
.timeline li::before {
  content: "•";
  color: #9a5626;
  font-weight: bold;
  position: absolute;
  left: -0.5rem;
}

.hotel-list {
  list-style: none;
  padding-left: 1rem;
}
.hotel-list li {
  margin: 0.4rem 0;
}
.hotel-list a {
  color: #9a5626;
  text-decoration: none;
  transition: color 0.3s ease;
}
.hotel-list a:hover {
  color: #661822;
  text-decoration: underline;
}
