/* Normalise CSS */
html { line-height:1.4; -webkit-text-size-adjust:100% } main { display:block } h1 { font-size:2rem; margin:.67rem 0 } hr { box-sizing:content-box; height:0; overflow:visible } pre { font-family:monospace,monospace; font-size:1rem } a { background-color:transparent } abbr[title] { border-bottom:none; text-decoration:underline; text-decoration:underline dotted } b,strong { font-weight:700 } code,kbd,samp { font-family:monospace,monospace; font-size:1rem } small { font-size:80% } sub,sup { font-size:75%; line-height:0; position:relative; vertical-align:baseline } sub { bottom:-.25rem } sup { top:-.5rem } img { border-style:none } button,input,optgroup,select,textarea { font-family:inherit; font-size:100%; line-height:1.15; margin:0 } button,input { overflow:visible } button,select { text-transform:none } button,[type=button],[type=reset],[type=submit] { -webkit-appearance:button; appearance: button; } button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner { border-style:none; padding:0 } button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring { outline:1px dotted ButtonText } 
fieldset { padding:.35rem .75rem .625rem } legend { box-sizing:border-box; color:inherit; display:table; max-width:100%; padding:0; white-space:normal } progress { vertical-align:baseline } textarea { overflow:auto } [type=checkbox],[type=radio] { box-sizing:border-box; padding:0 } [type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button { height:auto } [type=search] { -webkit-appearance:textfield; appearance: textfield; outline-offset:-2px } [type=search]::-webkit-search-decoration { -webkit-appearance:none } ::-webkit-file-upload-button { -webkit-appearance:button; font:inherit } details { display:block } summary { display:list-item } template { display:none } [hidden] { display:none } 

/* Webfont */
@font-face { font-family:"Hanken Grotesk"; src: url("hanken-grotesk/HankenGrotesk-Regular.woff2") format("woff2"); font-display:swap; font-style:normal; font-weight:400; } 
@font-face { font-family:"Hanken Grotesk"; src: url("hanken-grotesk/HankenGrotesk-Italic.woff2") format("woff2"); font-display:swap; font-style:italic; font-weight:400; } 
@font-face { font-family:"Hanken Grotesk"; src: url("hanken-grotesk/HankenGrotesk-Medium.woff2") format("woff2"); font-display:swap; font-style:normal; font-weight:500; } 
@font-face { font-family:"Hanken Grotesk"; src: url("hanken-grotesk/HankenGrotesk-MediumItalic.woff2") format("woff2"); font-display:swap; font-style:italic; font-weight:500; } 
@font-face { font-family:"Hanken Grotesk"; src: url("hanken-grotesk/HankenGrotesk-SemiBold.woff2") format("woff2"); font-display:swap; font-style:normal; font-weight:600; } 
@font-face { font-family:"Hanken Grotesk"; src: url("hanken-grotesk/HankenGrotesk-SemiBoldItalic.woff2") format("woff2"); font-display:swap; font-style:italic; font-weight:600; } 
@font-face { font-family:"Hanken Grotesk"; src: url("hanken-grotesk/HankenGrotesk-Bold.woff2") format("woff2"); font-display:swap; font-style:normal; font-weight:700; } 
@font-face { font-family:"Hanken Grotesk"; src: url("hanken-grotesk/HankenGrotesk-BoldItalic.woff2") format("woff2"); font-display:swap; font-style:italic; font-weight:700; } 

@font-face { font-family:"Open Sans"; src: url("opensans/OpenSans-Regular.woff2") format("woff2"); font-display:swap; font-style:normal; font-weight:400; } 
@font-face { font-family:"Open Sans"; src: url("opensans/OpenSans-Italic.woff2") format("woff2"); font-display:swap; font-style:italic; font-weight:400; } 
@font-face { font-family:"Open Sans"; src: url("opensans/OpenSans-Bold.woff2") format("woff2"); font-display:swap; font-style:normal; font-weight:700; } 
@font-face { font-family:"Open Sans"; src: url("opensans/OpenSans-BoldItalic.woff2") format("woff2"); font-display:swap; font-style:italic; font-weight:700; } 


/* Framework*/
:root
 { 
 --lightTextColour: #FFF; 
 --darkTextColour: #000; 
 --grey: #64787b; 
 --grey70: #64787bb2; 
 --grey25: #64787b40; 
 --green: #3D7E58; 
 --green10: #3d7e581a; 
 --primaryFont: "Open Sans", sans-serif; 
 --secondaryFont: "Hanken Grotesk", sans-serif; 
 } 

html, body { min-width:320px; color:#000000; font-size:16px; font-weight:400; font-family: var(--primaryFont); line-height:1.4; position:relative; display:block; overflow-x:hidden; min-height:100svh; margin:0; padding:0; border:0; } 
* { box-sizing: border-box; } 
img { display:block; max-width:100%; } 
p:first-child { margin-top:0; } 
p:last-child { margin-bottom:0; } 
h1,h2,h3,h4,h5 { margin:0; } 
body[data-input-method="mouse"] * { outline:none !important; } 

/* Exceptions */
.exception .wrapper { text-align:center; padding:40px; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:10px; min-height:50vh; max-width:550px; margin:auto; } 
.exception .wrapper::before { content:''; opacity:0.75; display:block; width:100px; height:100px; background-position:center; background-repeat:no-repeat; background-size:contain; margin-bottom:10px; } 
.exception[data-exception="error"] .wrapper::before { background-image:url('icons/error.svg'); } 
.exception[data-exception="maintenance"] .wrapper::before { background-image:url('icons/cogs.svg'); } 
.exception[data-exception="not-found"] .wrapper::before { background-image:url('icons/warning.svg'); } 

/* Section */
section { display:block; } 
section > .container { margin:auto; display:block; position:relative; } 
section > .container.full { max-width:2400px; } 
section > .container.main { width:min(1920px, calc(100% - 40px)); padding:0px 40px; } 
section > .container.narrow { width:min(1200px, calc(100% - 120px)); padding: 0px 40px; } 
section > .container.thin { width:min(550px, calc(100% - 120px)); padding: 0px 40px; } 
@media (max-width:720px)
 { 
 section > .container.main { width:100%; } 
 section > .container.narrow { width:100%; } 
 section > .container.thin { width:100%; } 
 } 

/* Text Aligns */
.text-align-left { text-align: left; } 
.text-align-center { text-align: center; } 
.text-align-right { text-align: right; } 

/* Background Colours */
.bg-grey { background-color:var(--grey25); color:var(--darkTextColour); } 
.bg-black { background-color: #000; color:var(--lightTextColour); } 

/* Pagination */
ul.pagination { display:flex; flex-direction:row; align-items:center; justify-content:center; margin:20px 0 60px 0; padding:0; } 
ul.pagination li { margin:0; padding:0; list-style:none; } 
ul.pagination li a { display:block; padding:0 6px; color:#000000; text-decoration:none; font-size:1rem; font-weight:600; } 

/* Forms */
form .freeform-row { margin: 0px; } 
form label { font-weight: 700; margin-bottom: 5px; } 
form input { padding: 14px; border: 1px solid #000 } 
form textarea { padding: 14px; border: 1px solid #000 } 
form .freeform-row .freeform-column { padding: 0px 0px 30px; } 
form .freeform-row .freeform-column[data-field-type="checkbox"] label { font-weight: 400; font-size: 0.75rem; display: flex; align-items: center; } 
form .freeform-row .freeform-column[data-field-type="checkbox"] input.freeform-input[type=checkbox] { width: 24px; height: 24px; } 
form button.freeform-button-submit { font-size: 1.125rem; font-weight: 700; color: #fff; background-color: var(--green); padding: 16px 50px; border: 0px; } 

/* Skip To Content */
.skip-to-content { position:absolute; left:-200%; top:0; display:block; width:100%; text-decoration:none; font-weight:600; text-align:center; background-color:#eee; color:#000; font-size:1rem; padding:10px; outline:none; border:0; } 
body[data-input-method="keyboard"] .skip-to-content:focus { position:relative; left:unset; } 

/* Buttons */
.primary-button { display:inline-block; appearance: none; border:2px solid var(--green); padding:8px 30px; background-color:var(--green); color:var(--lightTextColour); text-decoration: none; font-size:1.125rem; font-weight:700; transition:background-color .25s ease-in-out; margin-top:16px; } 
.primary-button:hover, .primary-button:focus { background-color:#EEE; color: var(--green); } 

/* Header */
header { background-color:#fff; box-shadow:0 5px 20px rgba(0, 0, 0, 0.3); position:sticky; top:0; z-index:10; } 
header .container { max-width:1520px; margin:auto; } 
header .wrapper { display:grid; grid-template-columns:360px 1fr; gap:20px; align-items:center; padding:20px; } 

/* Header Navigation */
header nav { line-height:120%; font-family: var(--secondaryFont); font-size: 1.75rem; font-weight: 500; } 
header nav ul { display:flex; flex-direction:row; list-style:none; margin:0; padding:0; justify-content:end; gap:25px; } 
header nav li { font-weight:bold; display:block; position:relative; } 
header nav button { appearance:none; position:relative; padding:10px; border:0; background-color:transparent; font-family: var(--secondaryFont); font-size: 1.75rem; font-weight: 500; height: 100%; } 
header nav button:hover { cursor:pointer; color:var(--green) } 
header nav a { display:inline-block; text-decoration:none; color:inherit; position:relative; padding:10px; font-family: var(--secondaryFont); font-size: 1.75rem; font-weight: 500; } 
header nav a:hover { color:var(--green) } 
header nav ul li > ul { display:none; position:absolute; z-index:2; width:300px; left:0; } 
header nav ul li:last-child > ul { right:0; left:unset; } 
header nav button[aria-expanded="true"] ~ ul { display:block; top:85px; } 
header nav li ul { background-color:#FFF; border:1px solid #c4c4c4; } 


/* Footer */
footer { background-color:var(--green); color: var(--lightTextColour); } 
footer .container { max-width:1920px; margin:auto; } 
footer .container.main { width:min(1920px, calc(100% - 40px)); padding:0px 40px; } 

footer .wrapper { padding:10px 20px; text-align:center; } 
footer .columns { display:grid; grid-template-columns:1fr 1fr 1fr; gap:20px; padding:40px 0; } 
footer .columns .item { display:flex; flex-direction:column; gap:10px; font-size:1.1875rem; font-weight:500; } 
footer .columns .item h2 { font-family: var(--secondaryFont); font-size:1.5625rem; font-weight:600; margin-bottom:10px; } 
footer .columns .item a { color: var(--lightTextColour); text-decoration:none; } 
footer .columns .item a:hover { text-decoration:underline; } 
footer .columns .item ul { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:0px; } 

footer .columns .item.padding-left { padding-left: 40px; } 
footer .columns .item .mobile-header { display:none; border:0; padding:0; color:inherit; background-color:transparent; width:100%; font-weight:600; font-size:1.375rem; font-family:var(--secondaryFont); font-size:1.5625rem; font-weight:600; text-align:left; border-bottom:1px solid #FFFFFF; padding-bottom:10px; } 

footer .columns .item nav.footer-navigation ul { margin:50px 0 0; padding:0; } 
footer .columns .item nav.footer-navigation ul li { margin:0; padding:0; list-style:none; } 
footer .columns .item nav.footer-navigation ul li a { display:flex; font-size:1rem; font-weight:600; border-bottom:1px solid #ffffff; line-height:100%; padding:0 0 12px 0; margin-bottom:12px; flex-direction:row; align-items:center; justify-content:space-between; color:inherit; text-decoration:none; transition:transform 0.3s ease; } 
footer .columns .item nav.footer-navigation ul li a::after { content:''; background-image:url(../core/icons/rightarrow.svg); width:21px; height:20px; display:block; background-size:100%; background-repeat:no-repeat; filter:brightness(0) invert(1); } 
footer .columns .item nav.footer-navigation ul li a:hover::after { -moz-animation:bounce 1s; -webkit-animation:bounce 1s; animation:bounce 1s; } 

footer .columns .item .button { display:inline-block; appearance: none; border:2px solid #fff; padding:8px 30px;  color:var(--lightTextColour); text-decoration: none; font-size:1.125rem; font-weight:700; transition:background-color .25s ease-in-out; margin-top:16px; } 
footer .columns .item .button:hover, footer .columns .item .button:focus { background-color:#EEE; color: var(--green); } 


footer .bottom-line { padding:20px 0; text-align:center; font-size:1.375rem; font-weight:600; border-top:1px solid #fff } 
footer .bottom-line a { color:#fff } 
footer .bottom-line span { position: relative; margin-right:20px; } 
footer .bottom-line span::after { content:'|'; position:absolute; right:-15px; top:-5px; color:#fff; } 

/* Mobile */
#mobile-nav-button { display: none; z-index: 2; height: 60px; width: 65px; appearance: none; border: 0px; margin-left:auto; background:transparent; background-image: url(../core/icons/menu.svg); background-repeat: no-repeat; background-position: center; background-size: contain; } 

.mobile-nav-panel { display: none; position: fixed; right: 0; top: 0; width: 100%; max-width: 360px; height:0; z-index: 2; background-color: #fff; } 
.mobile-nav-panel.open { display: block; height:100vh; } 
.mobile-nav-panel .main-panel, .mobile-nav-panel .sub-panel { position: absolute; width: 100%; min-height: 75vh; max-height: 75vh; top: 0; right: 0; background-color: #fff; display: flex; flex-direction: column; gap: 10px; padding: 42px 20px 60px 20px; z-index: 100; overflow: auto; } 
.mobile-nav-panel .sub-panel { display: none; z-index: 101; } 
.mobile-nav-panel .sub-panel.open { display: flex; } 
.mobile-nav-panel .sub-panel .panel-nav { justify-content: space-between; } 
.mobile-nav-panel .sub-panel .heading { font-size: 1.375rem; font-weight: 600; text-align: center; border-bottom: 3px solid black; margin: 0px 20px; } 
.mobile-nav-panel .main-panel .buttons { flex-direction: column; gap: 10px; flex-wrap: unset; width: 220px; text-align: center; margin-top: 10px; } 
.mobile-nav-panel .mobile-nav { list-style: none; width: 100%; display: block; padding: 0px 20px; } 
.mobile-nav-panel .mobile-nav li { margin-bottom: 15px; } 
.mobile-nav-panel .mobile-nav li a, .mobile-nav-panel .mobile-nav li button { appearance: none; display: block; border: 0; border-bottom: 1px solid black; color: black; background-color: transparent; padding: 0; text-align: left; text-decoration: none; font-size: 1.375rem; font-weight: 600; padding: 15px 0px 6px 0px; width: 100%; } 
.mobile-nav-panel .mobile-nav li a { position: relative; padding-right:60px; } 
.mobile-nav-panel .mobile-nav li a::after { content: ''; position: absolute; top: 0; bottom: 0; right: 0; height: 100%; aspect-ratio: 1/1; display: block; background-image: url('../core/icons/rightarrow.svg'); background-position: center; background-repeat: no-repeat; filter:invert(1); } 

.mobile-nav-panel .mobile-nav li:hover { cursor: pointer; } 
.mobile-nav-panel .mobile-nav li a.child { margin-left: 18px; font-size: 1.375rem; font-weight: 600; padding-top: 0px; } 
.mobile-nav-panel .mobile-nav li a span, .mobile-nav-panel .mobile-nav li button span { position: relative; } 
.mobile-nav-panel .mobile-nav li a span::after, .mobile-nav-panel .mobile-nav li button span::after { content: ''; display: block; height: 2px; width: 0; position: absolute; bottom: -10px; left: 0; transition: width .25s ease-in-out; background-color: var(--greenColour); } 
.mobile-nav-panel .mobile-nav li:hover a span::after, .mobile-nav-panel .mobile-nav li:hover button span::after { width: 100%; } 
.mobile-nav-panel .mobile-nav li a:hover, .mobile-nav-panel .mobile-nav li button:hover { cursor: pointer; } 
.mobile-nav-panel .mobile-nav.main li:last-child { margin-top: 20px; bottom: 20px; width: calc(100% - 80px); left: 40px; right: 40px; } 
.mobile-nav-panel .mobile-nav.main li:last-child a { background-color: #fff; font-size: 1.375rem; font-weight: 600; text-transform: capitalize; line-height: 1.15; color: #000; border:2px solid #000; padding: 10px 20px; margin-top: 40px; display: block; min-width: 140px; text-align: center; } 
.mobile-nav-panel .mobile-nav.main li:last-child a::after { display: none; } 
.mobile-nav-panel .panel-nav { width: 100%; display: flex; flex-direction: row; justify-content: end; margin-bottom: 30px; } 
.mobile-nav-panel .close-button { appearance: none; font-size: 1.375rem; font-weight: 600; border: 1px solid transparent; background-color: transparent; padding: 18px 60px 18px 10px; color: #000; position: relative; border: 1px solid transparent; border-radius: 5px; } 
.mobile-nav-panel .close-button::after { content: ''; position: absolute; top: 0; bottom: 0; right: 0; height: 100%; aspect-ratio: 1/1; display: block; background-image: url('../core/icons/MobMenuClose.svg'); background-position: center; background-repeat: no-repeat; background-size: auto 60%; } 
.mobile-nav-panel .close-button:hover { border: 1px dashed #000; cursor: pointer; } 
.mobile-nav-panel .back-button { appearance: none; font-size: 1.375rem; font-weight: 600; border: 1px solid transparent; background-color: transparent; padding: 18px 10px 18px 60px; color: #000; position: relative; border: 1px solid transparent; border-radius: 5px; } 
.mobile-nav-panel .back-button::before { content: ''; position: absolute; top: 0; bottom: 0; left: 0; height: 100%; aspect-ratio: 1/1; display: block; background-image: url('../core/icons/rightarrow.svg'); background-position: center; background-repeat: no-repeat; transform: rotate(180deg); filter:invert(1); } 
.mobile-nav-panel .back-button:hover { border: 1px dashed #000; cursor: pointer; } 

.mobile-nav-panel .endpanel { position: absolute; bottom:0; left:0; width:100%; height:25vh; padding: 20px 40px; } 
.mobile-nav-panel .endpanel ul.sociallinks { display:flex; flex-direction:row; align-items:center; gap:20px; margin:40px 0px 20px; padding:0; list-style:none; } 
.mobile-nav-panel .endpanel ul.sociallinks li img { width: 28px; height: 28px; object-fit: contain; filter:invert(1) } 


/* Sections */
[data-section="accommodation-header"] { margin:70px 0 } 
[data-section="accommodation-header"] h1 { font-weight:500; font-family: var(--font-secondary); font-size: 2rem; margin-bottom:20px; } 
[data-section="accommodation-header"] .split-wrapper { display:flex; overflow:hidden; align-items:center; } 
[data-section="accommodation-header"] .split-wrapper .gallery { width:60%; max-width:660px; overflow:hidden; } 
[data-section="accommodation-header"] .split-wrapper .gallery img { width: 100%; height: auto; aspect-ratio: 5/4; object-fit: cover; } 
[data-section="accommodation-header"] .split-wrapper .gallery.object-fit-contain img { object-fit: contain; } 
[data-section="accommodation-header"] .split-wrapper .details { flex:1; padding-right:20px; padding-left:90px; font-family: var(--font-primaryFont); font-weight:400; font-size:1.0625rem; } 
[data-section="accommodation-header"] .split-wrapper .details h2 { font-family: var(--font-secondary); font-weight:500; font-size:1.75rem; } 
[data-section="accommodation-header"] .split-wrapper .details .location { display:flex; align-items:center; gap:8px; position: relative; margin:15px 0; } 
[data-section="accommodation-header"] .split-wrapper .details ul { display:flex; gap:15px; list-style:none; padding:0; margin:15px 0; } 
[data-section="accommodation-header"] .split-wrapper .details ul li { display:flex; align-items:center; gap:8px; position: relative; } 
[data-section="accommodation-header"] .split-wrapper .details ul li:not(:last-child)::after { content:''; position:absolute; border-right:1px solid black; height:16px; right:-8px; top:50%; transform:translateY(-50%); } 
[data-section="accommodation-header"] .split-wrapper .details ul li img { width:16px; height:16px; } 
[data-section="accommodation-header"] .split-wrapper .details .price { margin-bottom:40px } 
[data-section="accommodation-header"] .split-wrapper .details .price span { font-family: var(--font-secondary); font-weight:500; font-size:1.75rem; } 
[data-section="accommodation-header"] .thumbnails-wrapper { margin-top:20px; } 
[data-section="accommodation-header"] .thumbnails-wrapper .thumbnail { background-color: #aaa; } 
[data-section="accommodation-header"] .thumbnails-wrapper .thumbnail img { opacity:0.7; width:100%; height:auto; } 
[data-section="accommodation-header"] .thumbnails-wrapper .splide__track--nav>.splide__list>.splide__slide { border:0; } 
[data-section="accommodation-header"] .thumbnails-wrapper .splide__track--nav>.splide__list>.splide__slide.is-active .thumbnail img { opacity:1; } 
[data-section="accommodation-header"] .thumbnails-wrapper .splide__arrow { border:1px solid #fff; background-color: transparent; padding:4px; opacity:1; } 
[data-section="accommodation-header"] .thumbnails-wrapper .splide__arrow img { filter: invert(1); } 
[data-section="accommodation-header"] .thumbnails-wrapper .splide__arrow.splide__arrow--prev img { transform: scaleX(-1); } 

[data-section="accommodation-details"] { margin:70px 0; } 
[data-section="accommodation-details"] .button-tabs { display:flex; } 
[data-section="accommodation-details"] .button-tabs button { background: none; border: none; font-family: var(--font-secondary); font-weight:500; font-size:1.75rem; padding:25px; cursor:pointer; } 
[data-section="accommodation-details"] .button-tabs button[aria-selected="true"] { background-color:var(--green10); } 
[data-section="accommodation-details"] .description-panel { font-family: var(--font-primaryFont); font-size:1.0625rem; line-height:1.6; background-color: var(--green10); padding:20px; } 

[data-section="things-to-do-text"] { margin:70px 0; } 
[data-section="things-to-do-text"] .heading { font-family: var(--secondaryFont); font-size:1.75rem; font-weight:700; text-align:center; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:20px; } 
[data-section="things-to-do-text"] .heading .name { font-weight:400; font-size:2.5rem; } 

[data-section="contactform"] .block-wrapper { display: flex; align-items: center; padding: 100px 0px 70px; gap: 40px; } 
[data-section="contactform"] .block-wrapper.align-top { align-items: flex-start; } 
[data-section="contactform"] .block-wrapper > div { width: 50%; } 
[data-section="contactform"] .block-wrapper .text { padding: 60px 30px 100px 100px; background-color: var(--grey25); font-family: var(--primaryFont); font-size: 1.0625rem; align-self: stretch; } 
[data-section="contactform"] .block-wrapper .text h1, [data-section="contactform"] .block-wrapper .text h2 { font-family: var(--secondaryFont); font-size: 2.5rem; font-weight: 400; margin-bottom: 20px; } 
[data-section="contactform"] .block-wrapper .text a { margin: 12px 0px; text-decoration: none; color: var(--green); } 

[data-section="map"] { position: relative; } 
[data-section="map"]::after { pointer-events: none; content: ''; display: block; width: 100%; height: 300px; left: -100px; top: -150px; background-image: url("../buildgfx/overlay_c.svg"); background-repeat: no-repeat; background-size: contain; background-position: left; position: absolute; } 

	#cc-main {
		/** Change font **/
		--cc-font-family: var(--primaryFont);
		/** Change button primary color  **/
		--cc-btn-primary-bg: var(--green);
		--cc-btn-primary-border-color: var(--green);
		--cc-btn-primary-hover-bg: #000;
		--cc-btn-primary-hover-border-color: #000;
	}
	button[data-cc="show-preferencesModal"]{font-family: var(--primaryFont); background: unset; border: unset; text-decoration: underline; color: #333;padding: 0px;}
	button[data-cc="show-preferencesModal"]:hover, button[data-cc="show-preferencesModal"]:focus{color: #000;}	

@media screen and (max-width:1360px) { 
 header .wrapper { grid-template-columns: 250px 1fr; } 
 header nav a { font-size: 1.25rem; } 
 header nav button { font-size: 1.25rem; } 
 } 


@media screen and (max-width: 1090px) { 
 header nav { display: none; } 
 #mobile-nav-button { display: block; } 
 
 [data-section="accommodation-header"] .split-wrapper .gallery { min-width:400px; } 
 [data-section="accommodation-header"] .split-wrapper .details { flex-grow: 1; padding-left:20px; padding-right:0px; } 
 [data-section="accommodation-header"] .split-wrapper .details h2 { font-size: 1.375rem; } 
[data-section="accommodation-header"] .split-wrapper .details .price { margin-bottom: 0px; } 
[data-section="accommodation-header"] .split-wrapper .details .price span { font-size: 1.375rem; } 
[data-section="accommodation-details"] .button-tabs button { font-size: 1.375rem; padding: 15px; }


[data-section="contactform"] .block-wrapper .text { padding: 30px; } 
[data-section="contactform"] .block-wrapper .text h1, [data-section="contactform"] .block-wrapper .text h2 { font-size: 1.75rem; } 

 } 
@media screen and (max-width:900px) { 

[data-section="accommodation-header"] .split-wrapper {flex-wrap: wrap;flex-direction: column; gap:20px;}
[data-section="accommodation-header"] .split-wrapper .gallery { width:100%; min-width:100%; order:1; }
[data-section="accommodation-header"] .split-wrapper .details { width:100%; padding:0; order:0;}
[data-section="accommodation-header"] h1 { font-size: 1.75rem; margin-bottom: 10px;  }
[data-section="accommodation-header"] .split-wrapper .details h2 { font-size: 1.0625rem; font-style: italic;}

 footer .columns { grid-template-columns: 1fr 1fr; text-align: left; } 
 footer .columns .item h2 { display: none; } 
 footer .columns .item nav.footer-navigation ul { margin: 0; } 
 footer .columns .item .mobile-header { display:block; position:relative; cursor:pointer; display:flex; flex-direction:row; align-items:center; justify-content:space-between; } 
 footer .columns .item .mobile-header .plus { display:block; position:relative; width:18px; } 
 footer .columns .item .mobile-header .plus::before { content:''; position:absolute; left:50%; top:50%; background-color:#ffffff; height:4px; width:18px; margin-top:-2px; margin-left:-9px; border-radius:2px; } 
 footer .columns .item .mobile-header .plus::after { content:''; position:absolute; left:50%; top:50%; background-color:#ffffff; width:4px; height:18px; margin-left:-2px; margin-top:-9px; transition:transform 1s ease; transform:scaleY(1); border-radius:2px; } 
 footer .columns .item .mobile-wrapper { visibility:hidden; height:0; transform:scaleY(0); transform-origin:top center; transition:transform .25s ease-in-out; } 
 footer .columns .item .mobile-wrapper.open { visibility: visible; height:unset; padding-top:30px; transform: scaleY(1); transition:transform .25s ease-in-out; } 
 footer .columns .item .mobile-wrapper.open h3.heading { display:none; } 
 footer .columns .item .mobile-header.open .plus::after { transform:scaleY(0); } 
 } 

 
@media screen and (max-width:776px) { 
[data-section="accommodation-details"] .button-tabs button { font-size: 1.0625rem; padding: 15px; font-family: var(--primaryFont); font-weight:600; }

 } 

@media screen and (max-width:720px) { 
 footer > .container.main { width:100%; } 
 footer > .container.narrow { width:100%; } 
 footer > .container.thin { width:100%; } 

 footer .columns { grid-template-columns: 1fr } 
 footer .columns .item.padding-left { padding-left:0; } 
 } 


@media screen and (max-width: 520px) { 
 [data-section="contactform"] .block-wrapper { flex-wrap:wrap } 
 [data-section="contactform"] .block-wrapper > div { width:100%; } 
 } 