/*============================================================================================*/
/* Your custom styles below */
/*============================================================================================*/

/* Grand Budapest Apartments */
.hero_title{color:#fff;font-size:4.5rem;line-height:1.1;margin:10px 0 30px}
@media (max-width:767px){.hero_title{font-size:2.6rem}}
/* Mobile: the hero grows with its content, so nothing slides under the header or gets cut off */
@media (max-width:767px){.hero.full-height{display:flex;height:auto}.hero.full-height>.wrapper{position:relative;flex:1;height:auto;padding:95px 0 30px}}
@media (max-width:575px){.hero .mouse_wp{display:none}}
.gb_timeout{display:inline-flex;flex-direction:column;align-items:center;margin-top:12px;padding:18px 32px 14px;border-radius:2px;background:rgba(240,208,96,.72);color:#1c1c1c;line-height:1}
.gb_timeout span{display:block}
.gb_timeout_name{font-family:Lora,Georgia,serif;font-size:2.6rem;font-weight:700;letter-spacing:-.01em}
.gb_timeout_sub{margin-top:8px;padding:6px 0;border-top:2px solid currentColor;border-bottom:2px solid currentColor;font-size:1.6rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;text-indent:.22em}
.gb_timeout_city{margin-top:6px;font-size:1rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;text-indent:.2em}
.gb_timeout_dist{margin-top:10px;font-size:1.9rem;font-weight:700}
/* Promotion sticker under Book Now; the edge is traced from the owner's hand drawing, the fill matches .gb_timeout */
.gb_promo{position:absolute;top:76px;right:14px;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;width:226px;height:216px;padding:6px 24px 12px 28px;color:#1c1c1c;line-height:1;text-align:center;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'%3E%3Cpath fill='%23f0d060' fill-opacity='.72' d='M456 0C463 -6 460 -4 465 9C471 22 484 63 492 79C499 96 510 95 515 111C520 127 488 187 523 178C558 169 683 82 732 55C781 28 809 15 828 7C847 -0 846 4 849 6C852 8 855 8 847 20C840 31 822 57 804 79C786 102 744 145 735 159C726 173 729 165 748 168C766 170 833 173 851 175C870 177 862 179 864 181C866 184 867 189 865 192C863 196 865 197 851 203C838 209 798 226 780 231C762 236 749 231 741 234C733 237 706 225 730 250C754 274 855 354 891 387C926 421 941 444 952 459C963 474 958 474 958 479C959 483 960 489 953 488C945 487 918 474 911 473C903 471 891 431 905 481C919 530 986 732 1000 782C1014 832 998 790 995 792C993 794 1000 800 985 792C971 784 921 749 907 741C893 733 898 726 897 742C897 758 902 814 905 839C908 863 915 884 916 895C917 906 938 913 908 907C879 902 770 871 733 862C697 854 694 856 682 856C670 856 664 859 658 862C652 865 650 863 644 876C639 888 629 928 624 940C618 953 616 953 610 955C605 956 598 955 591 952C583 949 571 944 562 933C554 923 545 895 539 886C533 877 535 877 526 879C517 881 504 885 483 898C463 910 424 941 399 956C375 972 346 988 330 994C314 1001 307 1000 299 1000C292 1000 285 996 282 993C278 989 277 986 279 978C281 969 284 957 294 940C303 924 331 887 338 874C345 861 338 864 336 861C334 859 365 840 326 858C287 876 136 953 92 973C49 994 65 983 55 985C44 986 31 985 24 983C18 981 16 976 13 972C11 967 8 965 11 954C13 943 15 924 27 905C39 887 62 859 83 838C104 818 169 782 159 776C150 769 50 796 26 800C2 803 11 799 6 797C2 795 -1 793 0 788C1 782 6 774 15 765C24 756 37 743 56 730C75 718 122 697 133 686C144 675 131 670 126 660C120 650 111 634 99 623C87 613 58 601 51 593C43 585 48 579 51 572C55 566 56 562 72 553C89 545 138 529 153 522C167 515 162 514 162 510C163 505 160 500 156 494C151 489 152 486 135 475C118 464 64 438 48 425C31 413 34 405 31 396C28 388 28 378 29 374C30 369 14 371 38 368C63 365 152 358 180 355C208 351 206 349 214 345C221 342 225 339 224 332C224 325 223 316 212 303C202 290 170 267 156 250C143 232 132 206 128 195C124 184 129 185 131 182C133 178 128 174 140 174C153 174 193 182 208 182C223 182 229 179 235 176C241 173 247 170 248 163C249 157 251 149 240 134C230 119 192 86 183 72C173 57 177 51 181 44C186 38 194 32 210 29C226 25 254 21 280 25C305 28 351 47 371 52C391 57 395 56 403 55C411 54 414 52 422 44C431 35 449 6 456 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat}
.gb_promo span{display:block}
.gb_promo_title{font-size:.76rem;font-weight:700;line-height:1.2;letter-spacing:.03em}
.gb_promo_off{margin-top:5px;font-family:Lora,Georgia,serif;font-size:2.2rem;font-weight:700}
.gb_promo_label{margin-top:6px;font-size:.68rem;font-weight:600;letter-spacing:.03em}
.gb_promo_code{margin-top:4px;font-size:1.1rem;font-weight:700;letter-spacing:.06em;user-select:all}
@media (max-width:1399px){.gb_promo{top:70px;right:8px;width:174px;height:166px;padding:4px 18px 8px 22px}.gb_promo_title{font-size:.62rem}.gb_promo_off{margin-top:3px;font-size:1.6rem}.gb_promo_label{margin-top:4px;font-size:.58rem;letter-spacing:0}.gb_promo_code{margin-top:3px;font-size:.86rem;letter-spacing:.04em}}
/* Too narrow for the sticker beside the title: it keeps the corner and the hero content moves below it */
@media (max-width:1239px){.hero.full-height{display:flex;height:auto;min-height:100vh}.hero.full-height>.wrapper.gb_has_promo{position:relative;flex:1;height:auto;padding:240px 0 70px}}
@media (max-width:767px){.hero.full-height>.wrapper.gb_has_promo{padding:232px 0 30px}}
.hero a.btn_1.outline.btn_white{color:#fff;border-color:#fff;box-shadow:inset 0 0 0 2px #fff}
.hero a.btn_1.outline.btn_white:hover{background:#fff;color:#222}
.box_facilities h3{font-size:1.15rem}
.gb_list li{margin-bottom:6px}
.gb_map{overflow:hidden;border-radius:6px}
.gb_map iframe{border:0;display:block}
.gb_gallery_img,.owl-carousel .owl-item img.gb_gallery_img{width:100%;height:420px;object-fit:cover;border-radius:6px}
.gb_lang_switch a{font-size:.8rem;font-weight:600;letter-spacing:.05em;padding:4px 5px;opacity:.65;color:#fff}
.gb_lang_switch a.active,.gb_lang_switch a:hover{opacity:1;text-decoration:underline}
header.sticky .gb_lang_switch a,header.headroom--not-top .gb_lang_switch a{color:#333}
.gb_lang_list a{margin-right:10px}
.gb_lang_list a.active{font-weight:700;text-decoration:underline}
@media (max-width:575px){.gb_lang_switch a{padding:4px 2px}header .btn_1{padding:8px 12px;font-size:.8rem}}
/* Template decorative patterns removed (only budapenthouse.com images are used) */
.pattern,.pattern_2,.pattern_3,.bg_gray.pattern{background-image:none}
.gb_post_img{width:100%;height:260px;object-fit:cover}
.gb_post_figure{max-height:520px;width:auto}
.gb_benefits{background:#f8f6f2;border-radius:8px;padding:30px}
.gb_benefits h3{font-size:1.4rem;margin-bottom:15px}
.gb_benefits ul{list-style:none;padding:0;margin:0 0 15px}
.gb_benefits li{margin-bottom:8px;font-weight:500}
.gb_benefits li i{color:#978667;margin-right:6px}
.gb_text h3{margin:25px 0 10px;font-size:1.2rem}
.gb_text h4{margin:25px 0 8px;font-size:1rem;font-weight:700}
.gb_terms p{font-size:.95rem;margin-bottom:10px}
.gb_note{background:#f8f6f2;border-left:3px solid #978667;padding:12px 16px;margin-bottom:30px}
.box_facilities h3 a{color:inherit}
.room_facilities_list::after{content:"";display:table;clear:both}
.gb_equipment{clear:both;padding-top:10px}
.gb_side_box{text-align:left}
.gb_side_box i{display:block;margin-bottom:10px}
/* Partner / review sites strip (logos from the original site) */
.gb_partners{background:#1f1f1f;padding:30px 0;position:relative;z-index:2}
.gb_partners ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:14px}
.gb_partners li{flex:0 1 211px}
.gb_partners a{display:block;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.04);transition:background .2s,border-color .2s}
.gb_partners a:hover{background:rgba(255,255,255,.12);border-color:#fff}
.gb_partners img{display:block;width:100%;height:auto;opacity:.85;transition:opacity .2s}
.gb_partners a:hover img{opacity:1}
@media (max-width:575px){.gb_partners li{flex-basis:calc(50% - 7px)}}
/* Availability search -> SabeeApp (booking_form from the template) */
.gb_booking_form{text-align:left}
.gb_booking_form .form-group{position:relative}
.gb_booking_form .gb_bf_label{position:absolute;top:6px;left:15px;z-index:2;margin:0;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#978667;pointer-events:none}
.gb_booking_form input.form-control,.gb_booking_form select.form-control{height:58px;padding:20px 15px 4px;border:0;border-right:1px solid #d9e1e6;border-radius:0;background-color:transparent;font-weight:500;font-size:.9375rem;color:#333;box-shadow:none;appearance:auto}
/* Own chevron: the native one indents the value (misaligned with the label) and hugs the edge */
.gb_booking_form select.form-control{appearance:none;-webkit-appearance:none;padding-right:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23978667' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;cursor:pointer}
.gb_booking_form input.form-control[readonly]{cursor:pointer}
.gb_booking_form input.form-control::placeholder{color:#999;font-weight:400}
.gb_booking_form button[type=submit]{display:block;width:100%;height:58px;padding:0 22px;border:0;border-radius:3px;background-color:#4b514d;color:#fff;font-weight:600;font-size:.9375rem;line-height:1.2;white-space:nowrap;cursor:pointer;transition:all .3s ease-in-out}
.gb_booking_form button[type=submit]:hover{background-color:#978667}
/* Desktop: the dates share the free width, the button fits its (EN/DE longer) label */
@media (min-width:992px){
  .gb_booking_form > .gb_bf_date{flex:1 1 0;width:auto;max-width:none}
  .gb_booking_form > .gb_bf_guests{flex:0 0 130px;max-width:130px}
  .gb_booking_form > .gb_bf_submit{flex:0 0 auto;width:auto;max-width:none;padding-left:5px}
  .gb_booking_form > .gb_bf_guests:has(+ .gb_bf_submit) select.form-control{border-right:0}
}
@media (max-width:991px){
  .gb_booking_form{gap:0}
  .gb_booking_form input.form-control,.gb_booking_form select.form-control{background-color:#fff;border-right:0;border-radius:5px;margin-bottom:10px}
  .gb_booking_form .col-6:nth-of-type(odd) .form-group{margin-right:5px}
  .gb_booking_form .col-6:nth-of-type(even) .form-group{margin-left:5px}
  .gb_booking_form button[type=submit]{margin-top:10px}
}
/* Tablet: the two dates sit side by side too */
@media (min-width:576px) and (max-width:991px){
  .gb_booking_form .gb_bf_date:nth-of-type(1) .form-group{margin-right:5px}
  .gb_booking_form .gb_bf_date:nth-of-type(2) .form-group{margin-left:5px}
}
/* Range picker (daterangepicker) in the site's colours */
.daterangepicker.gb_drp{border:0;border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,.25);font-family:inherit;margin-top:10px;z-index:9999}
.daterangepicker.gb_drp.drop-up{margin-top:-10px}
.daterangepicker.gb_drp:before,.daterangepicker.gb_drp:after,.daterangepicker.gb_drp .drp-buttons{display:none!important}
.daterangepicker.gb_drp .drp-calendar{max-width:none;padding:16px 16px 6px!important}
.daterangepicker.gb_drp .drp-calendar.left .calendar-table{padding-right:12px}
.daterangepicker.gb_drp .drp-calendar.right{border-left:1px solid #eee}
.daterangepicker.gb_drp .calendar-table th,.daterangepicker.gb_drp .calendar-table td{width:40px;min-width:40px;height:40px;line-height:38px;font-size:14px;border-radius:0}
.daterangepicker.gb_drp .calendar-table th.month{font-size:15px;font-weight:600;color:#222;text-transform:capitalize;cursor:default}
.daterangepicker.gb_drp .calendar-table thead tr:nth-child(2) th{height:30px;line-height:30px;font-size:11px;font-weight:600;text-transform:uppercase;color:#978667;cursor:default}
.daterangepicker.gb_drp .calendar-table .next span,.daterangepicker.gb_drp .calendar-table .prev span{border-color:#4b514d;padding:4px}
.daterangepicker.gb_drp th.next,.daterangepicker.gb_drp th.prev{border-radius:50%}
.daterangepicker.gb_drp td.available{color:#333;font-weight:500}
.daterangepicker.gb_drp td.available:hover{background-color:#f1ece3;border-radius:50%}
.daterangepicker.gb_drp td.ends{visibility:hidden}
.daterangepicker.gb_drp td.disabled{color:#c8c8c8;text-decoration:none;font-weight:400}
.daterangepicker.gb_drp td.in-range{background-color:#f1ece3;color:#333}
.daterangepicker.gb_drp td.active,.daterangepicker.gb_drp td.active:hover{background-color:#978667;color:#fff;font-weight:600}
.daterangepicker.gb_drp td.start-date{border-radius:50% 0 0 50%}
.daterangepicker.gb_drp td.end-date{border-radius:0 50% 50% 0}
.daterangepicker.gb_drp td.start-date.end-date{border-radius:50%}
.daterangepicker.gb_drp_empty td.active:not(:hover){background-color:transparent;color:#333;font-weight:500}
.gb_drp_nights{clear:both;min-height:38px;padding:8px 16px 12px;text-align:right;font-size:13px;font-weight:600;color:#978667}
.gb_drp_nights:empty{min-height:0;padding:0 0 6px}
@media (max-width:575px){
  .daterangepicker.gb_drp{left:10px!important;right:10px!important;width:auto}
  .daterangepicker.gb_drp .drp-calendar{float:none;padding:12px 8px 4px!important}
  .daterangepicker.gb_drp .drp-calendar.left .calendar-table{padding-right:0}
  .daterangepicker.gb_drp .drp-calendar.right{border-left:0;border-top:1px solid #eee}
  .daterangepicker.gb_drp .calendar-table th,.daterangepicker.gb_drp .calendar-table td{width:auto;min-width:0}
}
.gb_benefits .gb_booking_form{box-shadow:none;border:1px solid #e3ddd2;background:#fff;margin-top:10px}
/* Tablet/mobile: separate fields (like the hero bar) instead of one white box */
@media (max-width:991px){
  .gb_benefits .gb_booking_form{border:0;background:transparent}
  .gb_benefits .gb_booking_form input.form-control,.gb_benefits .gb_booking_form select.form-control{border:1px solid #e3ddd2}
}
/* Desktop: 2×2 grid of fields, full-width button (class, not :last-child –
   the date picker appends a hidden input to the form) */
@media (min-width:992px){
  .gb_benefits .gb_booking_form > div{flex:0 0 50%;max-width:50%}
  .gb_benefits .gb_booking_form > .gb_bf_submit{flex-basis:100%;max-width:100%;padding:5px}
  .gb_benefits .gb_booking_form > .gb_bf_date .form-control{border-bottom:1px solid #d9e1e6}
  .gb_benefits .gb_booking_form > div:nth-of-type(even) .form-control{border-right:0}
}
.gb_zoomable{position:relative;cursor:zoom-in}
.gb_zoomable::after{content:"\f14d";font-family:bootstrap-icons;position:absolute;right:12px;bottom:12px;width:36px;height:36px;line-height:36px;text-align:center;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:16px;pointer-events:none}
.fslightbox-container img.fslightbox-source{cursor:zoom-in;transition:transform .2s ease}
.fslightbox-container img.fslightbox-source.gb_lb_zoomed{cursor:zoom-out;transition:transform .2s ease,transform-origin 0s}
.fslightbox-container :has(> img.gb_lb_zoomed){overflow:hidden}
/* Preloader slides out with transform instead of `top` (animating top caused layout shifts / CLS) */
@keyframes gb_preloader_out{from{transform:translateY(0)}to{transform:translateY(-100%)}}
#preloader.loaded{animation-name:gb_preloader_out}
/* Headings fixed to the right level (a11y/SEO) keep the template's former h4/h5 look */
.gb_h5{font-size:1.25rem;font-weight:600}
footer .gb_h5{color:#fff;margin-bottom:20px}
@media (max-width:767px){footer .gb_h5{margin-bottom:10px}}
.menu_panel_details .gb_h5{color:#fff;font-size:1.1875rem}
.pic .gb_review_name{position:absolute;left:95px;top:18px;color:#fff;font-size:.875rem;font-weight:500}
@media (max-width:767px){.pic .gb_review_name{position:static}}
.pic .gb_review_name small{display:block;color:#fff;margin-top:3px;letter-spacing:normal!important}
.gb_text h2{margin:35px 0 15px;font-size:1.5rem}
.gb_faq h3{font-size:1.15rem;margin-bottom:8px}
/* The template preloader covered the page until every image had loaded (very slow LCP) */
#preloader{display:none}
.gb_text h3.gb_clause{margin:25px 0 8px;font-size:1rem;font-weight:700}
