@import url("../default/booking_layout.css");

html {
	font-family: Georgia, "Bitstream Vera Serif", "Times New Roman", tahoma, serif;
	color: #333;
	font-size: 0.80em;
	line-height: 1.7em;
	background-color: #fdf9d0;
}

body {background-color:transparent; margin:0px;}

@media (max-width:600px){
    body, table{
        font-size:12px;
    }
    #intro_txt_container,
    #calendar_container{
        display:block;
        padding: 10px;
    }
}

a, a:link, a:visited {
	color: #dc7015;
	text-decoration: underline;
}

a:hover, a:active, a:focus {
	text-decoration: none;
}

h1 {
	color: #ce3800;
	font-size: 1.4em;
	font-weight: normal;
	margin: 0 0 0.2em 0;
}
h2			{ font-size : 14pt; font-weight : bold;	font-style : normal;	color : #666666;}
h3  	{
	font-size : 12pt;

	font-weight : bold;
	color : #333333;
}
h4  	{	font-size : 10pt;	font-weight : normal;	font-style : italic;	color :
			#333333;}


p  {

	color : #333333;
	font-weight : normal;
}
td  {

	color : #333;
}



img { border : 0; padding : 0 ; margin : 0;}

sub  {	font-size : 0.8em;	line-height : 1; color:#666666;}

input.checkbox {
	background-color: #f4f1ea;
	color: #666666;
}

input,
select,
textarea {
	font-family: verdana, arial, tahoma, sans-serif;
	font-size: 0.85em;
	border: solid 1px #fdba52;
	background-color: #fff;
}

input,
select {
	min-height: 1.5em;
}

input:focus, select:focus, textarea:focus {
	border: 1px solid #ce3800;
}

.submit {
	
	font-size: 0.9em;
	font-family: Georgia, "Bitstream Vera Serif", "Times New Roman", tahoma, serif;
	color: #fff;
	margin-left: auto;
        margin-right:auto;
        margin-top:5px;
        margin-bottom:5px;
	border: 1px solid #541b06;
	background: #dc7015;
        _max-width:170pt;  
        padding:5px;
}

a.submit, a:link.submit, a:visited.submit {
	color: #fff;
	text-decoration: none;
}

.bv_input_select{
   width:7em;
}
#toggle-persons-edit {
    color: #dc7015 !important;
    text-decoration: underline;
}

@media (max-device-width:600px) and (min-resolution:120dpi) {

    input {

        font-size: 1.5em;
	
		}
    input.submit ,button.submit ,a.submit ,div.submit{   

            font-size: 1.5em;
            margin: 1em;
            padding: 0.75em;
            text-align:center;
    }
    select {
		padding:3px;
		margin-right:4px;
                font-size: 1.5em;
                line-height: 2em;
	    }
            
}

select:hover, input:hover, textarea:hover
{
/*	border:		1px solid #999;
	color:		#333;  */
}
select:focus, input:focus, textarea:focus
{
/*	border:		1px solid #000;
	color:		#333; */
}

.important {
  margin: 0 -0.4em;
  padding: 0.1em 0.4em;
  border-radius: 0.8em 0.3em;
  background: transparent;
  background-image: linear-gradient(
    to right,
    rgba(255, 225, 0, 0.1),
    rgba(255, 225, 0, 0.7) 4%,
    rgba(255, 225, 0, 0.3)
  );
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

.err  {	color : #d57427; font-size : 9pt; font-weight : bold;}

.s  {	font-size : 0.8em;}
.sm  {	font-size : 1em;}
.m  {	font-size : 1.2em; font-weight : 400;}
.l  {	font-size : 1.4em; font-weight : 400;}
.xl  {	font-size : 1.6em; font-weight : 400;}
.xxl  {	font-size : 1.8em; font-weight : 400;}
.xxx  {	font-size : 2em; font-weight : 400;}
.bs  {	font-size : 0.8em; font-weight : bold;}
.bsm  {	font-size : 1em; font-weight : bold;}
.bm  {	font-size : 1.2em; font-weight : bold;}
.bl  {	font-size : 1.4em; font-weight : bold;}
.bxl  {	font-size : 1.6em; font-weight : bold;}
.bxxl  {	font-size : 1.8em; font-weight : bold;}
.bxxx  {	font-size : 2em; font-weight : bold;}
.alert  {	font-size : 1em; font-weight : bold; color : #d57427; 	font-style : italic;}

/* calendar:*/

.font_red  {	color : #ff0000;font-size : 0.9em; text-align : center;}
.font_d_red  {	color : #aa0000;font-size : 0.9em; text-align : center;}
.font_grey  {	color : #cccccc;font-size : 0.9em; text-align : center;}
.font_pink {	color : #aa8888;font-size : 0.9em; text-align : center;}
.font_black {	color : #000000;font-size : 0.9em; text-align : center;}

table.calendar {
    margin:15px;
    border : 5px solid white;
    outline: 1px solid #aaaaaa;    
    background-color: white;
    vertical-align:center;
}
table.calendar td.calendarcell {
    border-top : 1px solid #eeeeee;
  border-right : 1px solid #eeeeee;
}

table.calendar img {
    vertical-align: middle;
    margin: 0px 5px 0px 5px;
}
div.calendarcell {
   padding : 2px;
   margin : 1px 3px 1px 3px;
   text-align : center;  
   line-height:1.2em;
   color:#666666;
   background-color:transparent;
   cursor: pointer;
 }
 @media (max-device-width:600px) and (min-resolution:120dpi) {
  div.calendarcell {
    padding : 2px;
    margin : 1px 7px 1px 7px;
    text-align : center;
    font-size : 1.6em;
    line-height: 1.8em;
    color:#666666;
    background-color:transparent;
    cursor: pointer;
  } 
 }


/* preisinfo */

div.leftfloat {float: left; padding-right: 3px;}
.pr_low {
	
	color : #222222;
	text-align : center;
	background-color : #ccccff;
  padding: 1px 3px 1px 3px; 
  font-size:1em;
}
.pr_norm {
	
	color : #222222;
	text-align : center;
	background-color : #ffffff;
  padding: 1px 3px 1px 3px; 
  font-size:1em;
}
.pr_high {
 
  color : #222222;
  text-align : center; 
  background-color : #ffff99; 
  padding: 1px 3px 1px 3px; 
  font-size:1em;

}

/* book_form */

div.book_form {
  border:0px solid blue;
  max-width:auto;       
  text-align:center;  
}
.book_form {
max-width: 620px;
margin-left: auto;
margin-right: auto; 
}
.book_form div {
  text-align:center;   
}
#fielddata {
  border:0px solid green;
  _min-width:420px;
  font-size:1.2em;
  border-spacing:0px;
  margin-bottom:0px;
}
#bookdata {
  width:100%;
  _min-width:420px;
  font-size:1.2em;
  border-spacing:0px;
}
 #rooms_data {
   
    min-width: 420px;
    white-space:nowrap;
}
#dont_scroll{
    width:100%;
    margin:0px;
    z-index:255;
    background-color: #fdf9d0;
}


.form_caption{
    margin-top:10px;
    font-weight:normal;
    font-size:1em;
    color:#000;
    padding: 8px 10px;
    line-height:1.3em;
}
@media (max-device-width:600px) and (min-resolution:120dpi) {



    div.book_form {
      border:0px solid blue;
       width:100%;       
      text-align:center;  
      font-size:1em;
    }
    .form_caption{
        margin-top:10px;
        font-weight:normal;
        font-size:1.1em;
        color:#000;
        padding: 8px 10px;
        line-height:1.4em;
    }
    #fielddata {
      font-size:1em;
    }
    #bookdata {
      width:100%;
      _min-width:420px;
      font-size:1em;
      border-spacing:0px;
    }
     #rooms_data {
   
    min-width: 420px;
    white-space:nowrap;
}
}
.room_info{
margin:5px 5px 0px 5px;
vertical-align:bottom;
}

.form_text  {border: 0px solid grey; margin-bottom: 8px; padding: 5px;}
.form_dot {border: 0px solid grey; padding: 0px;}
.form_dot h3 {border: 0px solid grey; padding: 0px; text-align: center;}

.form_msg  {
text-align: center;
border: 0px dotted grey;
padding: 3px;
font-weight: bold;
color: #448844;
background-color : #ffffff;
 margin : 10px;
 font-size : 1em;
 }
 
 li.form_msg {
    text-align:  center;
list-style-type:none;
border:1px solid #ddd;
background:#f5f5f5;
color: #448844;
font-size:0.9em;
line-height:18px;
padding:8px;
}
.form_msg_list{
margin:0px;
}

/* different rates */
div.rateblock{   
    background-color: #ffe3001c;
    float:left;   
    padding: 10px;
    margin: 0 5px 10px 5px;
    width: calc(100% - 10px);
    box-sizing: border-box;
    border: 1px solid #dddddd;
    box-shadow: 0 2px 5px rgba(0,0,0,0.12);
    line-height:1em;
}
div.rateblock:active{
    background-color: #ffe3001c;     
}
div.rateblock:hover{
    background-color: #ffe3002c;   
}
div.rateblock div{
    width:100%;
    float:none;
}
div.rateblock h5{
    font: bold 1.75em serif;
    color: orange;
    margin: 6pt; 
}
div.rateblock .trigger{  
    color:orange;
    margin: 6pt;    
}
div.rateblock p{
    margin: 3pt;    
}
div.rateblock_tx{   
    float:left;   
    padding: 10px;
    margin-bottom:10px;
    width:100%;
}
 
 
.form_error {
border: 1px dotted #d57427;
padding: 5px ;
font-weight : bold;
color: #d57427;
margin: 15px;
font-size : 1em;
text-align:center;
background-color:white;
}

li.form_error {
list-style-type:none;
padding:8px;
border:1px solid #ddd;
background:#f5f5f5;
color:#cc0000;
font-size:0.9em;
line-height:18px;
}

.intro{
    font-size:12px;
    line-height:18px;
}
.form_form_bookvar {
    padding-top:5px;
    float:left;
}
.error {
    color: red;
    font-size: 0.9em;
    border:0px solid red;
    
}

span.error{
    
}
div.error {
    float:right;
    margin: 0px 5px 2px 5px;
}

div.error img {
    border: 0px;
    vertical-align: bottom;
}

#ls_pay_cell {border-left: 1px solid grey;}

#intro_txt_container{
    font-size:1.1em;
    padding:10px;
}
@media (max-device-width:600px) and (min-resolution:120dpi) {

    #intro_txt_container{
        font-size:125%;        
    }
}

#calendar_container{
  text-align:center;
}

.dont_scroll_fixed{  
  padding:0px;
  border:0px solid green;
  top:0px;
  left:0px;
  position: fixed;
  width:100%;
}
.dont_scroll_fixed #dont_scroll_content{
  _background-color : #f4f0e7;
   background-color : #fdf9d0
}
@media (max-device-width:600px) and (min-resolution:120dpi) {
    .dont_scroll_fixed{
      background-color : white;
    }
}
.dont_scroll_scroll{
  background-color : transparent;
  padding:0px;
  border:0px solid green;
  position: relative;
}
#dont_scroll_content{
    max-width: 620px;
    margin-left: auto;
    margin-right: auto;
}

.form_row_head {
   _background-color : #fcfbfa;
   _box-shadow:0px 5px 50px 5px #f4f0e7 inset; 
}
.form_row_head td{
   border-top: 1px solid #eeeeee;
   border-bottom: 0px solid #ffffff;
   padding:5px 5px 5px 5px;
   _font-size: 1.2em;
}

.form_row_content {
   _background-color:#f0f0f0;  
   _box-shadow:0px -25px 50px 25px white inset;
}
.form_row_content td{
   border-bottom: 2px solid #ffffff;
}

/* Step 1 #bookdata room card: warm off-white head + merged content (overrides booking_layout #f8f8f8). */
.book_form.booking-step-1 #bookdata tr.form_row_head td,
.book_form.booking-step-1 #bookdata tr.form_row_head + tr.form_row_content:not([style*="display:none"]):not([style*="display: none"]) td {
    background-color: rgba(255, 251, 242, 0.94);
}

.price_info_cont{
  border: 0px solid green;
  border-radius: 4px;
  display: inline-block;
  margin:0px 5px 2px 0px;
  padding:1px 4px 1px 2px;  
  text-align:right;  
  min-width:4.5em;
   
}
.price_info_cont div{
   border: 0px solid yellow;
}
.price_info_amount{
   font: bold 1.1em arial;   
   float:right; 
}
.price_info_cur{
   font: bold 0.9em arial;
   padding: 3px 2px 2px 2px;
   float:left;   
}
@media (max-device-width:600px) and (min-resolution:120dpi) {

    .price_info_cont{
        border: 0px solid green;
        border-radius: 4px;
        display: inline-block;
        margin:0px 5px 2px 0px;
        padding:1px 4px 0px 2px;  
        text-align:right;  
        min-width:4em;
        height:1.3em; 
        font-size:1.4em;
      }
}
.price_room_bed{
   text-align:center;
   font: normal 0.6em arial;
   color: #555;
   width:70pt;
   
}

.form_strike_through{
    font: bold 0.7em arial;
    padding: 0px 3px 0px 7px;
    color:red;
    text-decoration:line-through;
    
}
.form_roomsleft{
    font: bold 0.8em arial;
    color:red;
    text-align:right;
    padding: 0px 6px 0px 0px;
}
.form_bookvar{
    border:0px solid green;
    text-align:right;
}
.form_roomthumb{
    margin:3px; 
    width:60px;
    height:60px;
    border: 0px solid green;
    border-radius:3px;
    overflow:hidden;
}
.form_roomthumb img {
    width:60px;
    height:60px;
}
.form_room_description{
    color:#666666;
    width:45%;
    padding:3px;
    font: normal 0.6em arial;
    float:left;
}
.form_room_description span{
     color:222222; 
    padding: 0px 6px 0px 6px;
    font: bold  arial;
    float:left;
}
.form_room_includes{ 
    color:#666666;
    width:45%;
    padding:3px;
    font: bold 0.6em arial;
    float:left;
}
.form_room_includes span{   
    color:222222; 
    padding: 0px 6px 0px 6px;
    font: bold  arial;
    float:left;
}
.form_room_album{
  border:1px solid #eeeeee;
  width:auto;
  margin:5px 10px 10px 10px;
  float:right;    
}
.form_dayprice_grid{
  border:0px solid #aaaaaa; 
  display: inline-block; 
  margin:2px;
  padding:3px;
  color:222222;
}
.form_dayprice_grid span.descr{
    color:222222; 
    padding: 0px 6px 0px 6px;
    font: bold 0.7em arial;
    float:left;
}
.form_grid_day{
  border:0px dotted blue;
  margin:1px;
  float:left;  
  font:normal 0.6em arial;
  text-align:center;
  background-color:#eeeeee;
}
.form_grid_month{
  font:normal arial;   
}
.form_grid_price{
  border:0px dotted blue;
  float:left;  
  font:bold arial; 
  padding:2px;  
}
.form_grid_curr{
  font:normal arial; 
  padding:1px;  
}
.form_yousave_teaser{
border:1px solid #ddd;
background:white;
box-shadow: 2px 2px 3px 0px #aaa;
color: #444488;
font-size: 0.9em;
line-height:18px;
padding:6px 8px 8px 8px;
margin:5px;
text-align:center;  
}
.form_yousave_teaser span{
   font: bold 1.1em Arial Black;
}
.totalPerRoom{
color: #000000;
font:bold 0.8em arial; 
text-align:center;  
margin:10px 10px 10px 5px;

}
.totalPerRoom span{
font:normal 0.8em arial; 
padding-right:9pt;
}
#DepartureInfo{
border:0px solid green;
padding:5px;
float:left;
}
#dateOfDeparture {
border:0px solid blue;
padding: 5px 5px 5px 5px;
float:left;
}
@media (max-device-width:600px) and (min-resolution:120dpi) {
    
    #DepartureInfo{
        border:0px solid green;
        padding:5px;
        float:left;
        font-size:1em;
        }
        #dateOfDeparture {
        border:0px solid blue;
        padding: 5px 5px 5px 5px;
        float:left;
        font-size:1em;
    }
}
/* wrappper standalone */
div#wrapper {
    min-width:620px;
    width:auto;
    max-width:1000px;
    margin: 0px auto 0px auto;
    border: 0px solid red;
}

div#top_bg {
    position: relative;
    top: -10px;
    width:auto;
    max-width:1000px;
    margin: 0px auto 0px auto;
    _background-image:url('5e-2015-ffm-head_logo.png');
    background-position: top center;
    background-repeat: no-repeat;
     border: 0px dashed blue;
}

/* Extra Products Section (Step 2) - font size alignment 2026-03-26
   Base context: html font-size 0.80em (~12.8px), input/select 0.85em
   Inline template styles are overridden here for sun client sizing */

.extra-products-title {
    font-size: 0.95em;
}
.extra-products-description {
    font-size: 0.82em;
}
.booking-summary {
    font-size: 0.82em;
}
.extra-products-table th,
.extra-products-table td {
    padding: 6px 4px;
    font-size: 0.85em;
}
.extra-products-table th {
    font-size: 0.78em;
    white-space: nowrap;
}
.service-title {
    font-size: 0.9em;
}
.base-price {
    font-size: 0.88em;
}
.subtotal-amount {
    font-size: 0.88em;
}
.total-label,
.total-amount,
.total-amount strong {
    font-size: 0.9em;
}
.mandatory-badge,
.optional-badge {
    font-size: 0.72em;
    padding: 1px 4px;
}
.breakfast-special {
    font-size: 0.8em;
}

/* Guest Checkin Form - override .book_form div { text-align:center } */
#guest-checkin .input-wr,
#guest-checkin .input-wr-3 {
    text-align: left;
}
#guest-checkin .input-wr input,
#guest-checkin .input-wr select,
#guest-checkin .input-wr textarea {
    width: 100%;
    display: block;
    box-sizing: border-box;
}
#guest-checkin .input-wr-3 select {
    display: inline-block;
    width: 30%;
    box-sizing: border-box;
}

div#content {
    position: relative;
    top: 100px;
    width: 620px;
    margin: 0px auto 0px auto;
    min-height: 500px;
     border: 0px solid green;
}

div#bot_bg {
    width:auto;
    max-width:1000px;
    height: 0px;
    margin: 0px auto 0px auto;   
    background-repeat: no-repeat;
    border: 0px solid yellow;
}

div#book_form_wrapper {
    width: 600px;
    margin: 10px;
    border: 0px dotted grey;
}


/* tooltip */

#tooltip, #fixedtip{
	position: absolute;
	width: auto;
    border: 1px solid silver;
	padding: 4px;
	background-color: white;
	visibility: hidden;
	z-index: 99999;
	overflow: visible;

    font-size: 10px;
}

#fixedtip{
	z-index: 100000;
}

table.prices td.roomtype {
    text-align: left;
}

table.prices td.priceinfo {
    text-align: right;
    font-size: 12px;
    font-weight: bold;
}

.roomTableToggle{
    cursor:pointer;
}

.roomAlbumImg{
    margin:4px;
}

td.tr_block {
    border-top: 1px solid lightgrey;
    border-bottom: 1px solid lightgrey;
}
p.tr_block {
    color: #333;
    padding: 8px;
    border-bottom: 1px solid lightgrey;
}
.tr_block table {
    width:100%;
    min-width:420px;
}
.tr_block table td {
    _border: 1px dotted red;
    whitespace: nowrap;
}




























