:root {
	--sans-serif: -apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, helvetica, Cantarell, Ubuntu, roboto, noto, arial, sans-serif;
	--link-color:#0086C4;
	--link-color-hover:#29BBFF;
}

body {
	background-color: #FFF;
	color: #000;
font-family: var(--sans-serif);
}

h1,h2,h3,h4,h5,h6,p,ul,li,span {
	font-family: var(--sans-serif);
}
p, ul, ul li, span {
	font-family: var(--sans-serif);
	font-weight: 300 !important;
}
.site-title a{
	color: #000 !important;
}

.responsive-max-width, .entry-content > .wp-block-button.aligncenter, hr.wp-block-separator.is-style-wide, .entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.wp-block-separator):not(.wp-block-button):not(.entry-attachment), .entry-content > *:not(.wp-block-button), .entry-content [class*="inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.wp-block-separator), .entry-content .wp-audio-shortcode, .post-navigation, .pagination {
	max-width: 100vw ;
}
details {
	margin-bottom: 0 !important;
}
details summary {
	font-weight: 800;
	padding:1rem 0;
}
details p {
	padding-left: 1rem;
	margin-bottom: 0.5rem;
}
details p:last-child,
details ul:last-child{
	margin-bottom: 1rem;
}
.details-has-columns {
	summary {
		width: 100%;
		text-align: center;
	}
}
.details-columns {
	background: rgba(0,0,0,0.05);
	width: 100%;
	padding: 2rem;
	
	h1,h2,h3,h4h,h5,h6 {
		margin-bottom: 0 !important;
		font-size: 1.15rem;
		font-weight: 700;
	}
	ul {
		margin-top: 0.5rem !important;
		padding-inline-start: 1rem;
		
		li {
			font-size: 0.9rem;
		}
	}
	
	
}
a,a:link {
	color: var(--link-color);
}
a:hover,
a:active,
a:focus,
a:focus-within {
	color: var(--link-color-hover);
}
.icons-list svg {
	max-width: 36px;
	max-height: 36px;
	height: 36px;
	width: 36px;
	margin: auto;
}
.icons-list p{ 
	font-size: 0.9rem;
	font-weight: 700 !important;
	text-align: center;
	width: 100%;
}
.icons-list .wp-block-group {
	border: 1px solid #000;
	border-left: 0;
	border-right: 0;
	padding: 1rem 0 0.65rem 0;
	flex-grow: 1;
}
.icons-list--secondary .wp-block-group {
	border: 0;
}
.container {
	max-width: 88vw !important;
	margin:0 auto;
	width: 100%;
	
}

.call-to-action--sticky.unstuck {
	transform: translateY(200px) !important;
}

header#masthead {
    display: none;
}
@media screen and (min-width: 781px) {
}

.call-to-action--sticky {
	padding: 0 !important;
	margin: 0 !important;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 100000000;
	width: 100vw;
	background-color: var(--link-color) !important;
	transition: transform 400ms ease-in-out;
	
	p,a {
		text-transform: uppercase;
		font-weight: 900 !important;
		letter-spacing: 1px;
		font-size: 0.9rem;
		text-align: center;
		margin:0 auto;
		padding: 0.5rem 0;
		background-color: transparent !important;
		color: #FFF;
	}
	a {
		color: #FFF;
		text-decoration: none !important;
		display: inline-flex;
		align-items: center;
		align-content: center;
		line-height: 1;
	}

	a::after {
		position: absolute;
		top: 0;
		left: 0;
		content: '';
		cursor: pointer;
		width: 100%;
		height: 100%;
	}
	a::before {
		content: '';
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23FFFFFF' d='M24 2v22h-24v-22h3v1c0 1.103.897 2 2 2s2-.897 2-2v-1h10v1c0 1.103.897 2 2 2s2-.897 2-2v-1h3zm-2 6h-20v14h20v-14zm-2-7c0-.552-.447-1-1-1s-1 .448-1 1v2c0 .552.447 1 1 1s1-.448 1-1v-2zm-14 2c0 .552-.447 1-1 1s-1-.448-1-1v-2c0-.552.447-1 1-1s1 .448 1 1v2zm1 11.729l.855-.791c1 .484 1.635.852 2.76 1.654 2.113-2.399 3.511-3.616 6.106-5.231l.279.64c-2.141 1.869-3.709 3.949-5.967 7.999-1.393-1.64-2.322-2.686-4.033-4.271z'/%3E%3C/svg%3E");
		background-size: contain;
		background-position: center center;
		display: inline-block;
		width:20px;
		height: 20px;
		position: relative;
		margin-right: 0.75rem;
	}
}
#availability .wpia-container {
	margin: 0 auto !important;
}
#availability .wpia-calendar {
	width: 100% !important;
	max-width: 100%;
	min-height: 300px;
	min-width: 306px;
}

#availability {
	.wp-block-columns {
		flex-wrap: wrap;
		
		.calendar-column {
			min-width: 306px;
		}
	}
}

@media screen and (max-width: 781px) {
    #availability {
	.calendar-column {
		text-align: center;
		
		
		.wpia-container.wpia-calendar-1 {
			margin: auto !important;	
		}

		>.wp-block-group {
			display: inline-flex;
		justify-content: center;
		align-items: center;
		}
	}
}
}
#availability {
div.wpia-calendar ul li {
	width: 40px;
	height: 40px;
	align-items: center;
	justify-content: center;
	display: inline-flex;
}
}
.ui-widget-content,
.ui-widget-header{
	background: #fff !important;
	background-color: #fff !important;
	color: #000;
}
select.ui-datepicker-month {
	border: 1px solid #c7c7c7;
	padding: 2px;
	font-size: 0.9rem !important;
	border-radius: 4px;
}
.ui-datepicker-unselectable.ui-state-disabled {
    cursor: not-allowed;
    background: #c7c7c7;
    color: rgba(0,0,0,0.7);
    border: 0 !important;
    padding: 0;
    opacity: 1;
}
.ui-datepicker-unselectable.ui-state-disabled:not(.ui-datepicker-other-month)::before {
    content:'✕';
    position: absolute;
    color: rgba(0,0,0,0.25);
    font-size: 1.25rem;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}
.ui-datepicker-other-month,
.ui-datepicker-unselectable.ui-state-disabled.ui-datepicker-other-month{
	background: #fff;
}
#availability {
div.wpia-calendar ul li.status-booked  {
	cursor: not-allowed;
	background-color: #c7c7c7;
	color: rgba(0,0,0,0.7);
	span{
		color: inherit;
		position: relative;
		text-align: center;
	}
	.wpia-day-split-day {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		bottom: 0;
		display: inline-flex;
		justify-content: center;
		align-items: center;
	}
	
}
}
.ui-datepicker-unselectable.ui-state-disabled {
	position:relative;
}
.width-match .alignwide {
	width: 100% !important;
}
table.ui-datepicker-calendar {
	tbody {
		tr {
			td {
				span,a {
					text-align: center;
					font-size: 0.8rem !important;

				}
				.ui-state-active {
					color: #000;
					font-weight: 800;
				}
			}
			td:not(.ui-datepicker-unselectable) a {
				background: #DDFFCC !important;	
			}
		}
	}
}
#availability {
    div.wpia-calendar ul li.status-booked .wpia-day-split-day::before,
    .ui-datepicker .ui-datepicker-unselectable.ui-state-disabled span::before{
        content:'✕';
        position: absolute;
        color: rgba(0,0,0,0.25);
        font-size: 1.25rem;
        margin: auto;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        display: inline-flex;
        justify-content: center;
        align-items: center;
    }
    div.wpia-calendar ul li.status-changeover-start {
        .wpia-day-split-top.wpia-day-split-top-changeover-start {
            border-width: 40px 40px 0 0;
        }
    }
    .wpia-day-split-bottom.wpia-day-split-bottom-changeover-start {
        border-color: transparent transparent #c7c7c7 transparent;
        border-width: 0 0 40px 40px !important;
    }
    div.wpia-calendar div.wpia-heading div.wpia-select-container {
        width: auto;

    }
    .wpia-calendar {
        height: unset !important;
    }
    div.wpia-calendar div.wpia-heading {
        width: 100%;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: stretch;

        .wpia-select-container {
                width: calc(100% - 40px);
        }
    }
    div.wpia-calendar ul li.status-changeover-end {
        
        .wpia-day-split-top.wpia-day-split-top-changeover-end {
            border-width: 40px 40px 0 0;
            border-color: #c7c7c7;
        }
        .wpia-day-split-bottom.wpia-day-split-bottom-changeover-end {
            border-width: 0 0 40px 40px;
        }
    }
}
.font--rock-salt {
	font-family: 'Rock Salt', var(--sans-serif);
}

/*
.wpia-calendar {
	.wpia-heading {
		.wpia-prev,
		.wpia-next {
			position: relative;
			
			background: transparent !important;
			border: 1px solid red;
		}
		.wpia-prev::before,
		.wpia-next::after {
			content: '>';
			width: 100%;
			height: 100%;
			display: inline-block;
			position: absolute;
			top: 0;
			left: 0;
			background: green;
			color: #fff;
		}
	}
}
*/
.page-title {
	text-shadow: 0px 2px 7px rgba(0,0,0,.8);
	font-size: 3rem;
}
.page-subtitle {
	background-color: #fff;
	display: inline-block;
	margin:0 auto;
	padding-left: 10px;
	padding-right: 10px;
	font-weight: 900 !important;
}
.width-100-text {
	width: 100%;
	display: flex;
}

#contact_submission_form {
	fieldset {
		border: 0;
		display: flex;
		gap: 1rem;
		margin-bottom: 1rem;
		flex-wrap: wrap;
		
		.label-and-input {
			width: calc(50% - 0.5rem);
			display: inline-flex;
			flex-direction: column;
			min-width: 200px;
			flex-grow: 1;

			
			label {
				margin-bottom: 0;
				padding-bottom: 0.5rem;
				line-height: 1.2;
			}
		}
		.label-and-input:only-child {
			width: 100%;
		}
		
		input,
		textarea{
			border: 1px solid #000;
			line-height: 1.33;
			border-radius: 5px;
			min-height: 40px;
		}
		input {
			max-height: 40px;
			padding-left: 10px;
		}
	}
	input[type="submit"] {
		background-color: var(--link-color);
		color: #fff;
		width: 100%;
		
	}
	input[type="submit"]::after {
		display: inline-block;
		color: #fff;
		
		}
}

@media screen and (max-width: 781px) {
	.wp-container-core-column-layout-1.wp-container-core-column-layout-1 > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
		max-width: 100%;
	}
	
	.wp-block-group.icons-list {
		flex-wrap: wrap;
		
		> .wp-block-group {
			min-width: 100px;
			max-width: 150px;
		}
	}
}

.mt-5 {
	margin-top: 5rem !important;
}
h2.has-huge-font-size {
	font-size: 2.5rem;
	font-weight: 700;
}

.pb-0 {
	padding-bottom: 0 !important;
}

@media screen and (min-width: 782px) {
	#info {
		.info-column-1 {
			padding-right: 2rem;
		}
		.info-column-1 h3,
		.info-column-1 ul {
			max-width: 100%;
			
		}
		.info-column-2 {
			position: sticky;
			top: 2rem;
			height: fit-content;
		}
	}
}

.ui-datepicker {
    z-index: 2001 !important;
}

form#contact_submission_form fieldset.dog-set {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-direction: row;
    flex-wrap: wrap;

    span {
        white-space: break-spaces;
    }
}
.group-of-icons {
    padding-top: 2rem;

    .wp-block-group__inner-container {
        .icons-list {
            display: flex;
            flex-wrap: wrap;
        }
    }
}

@media screen and (max-width: 499px){
    .group-of-icons .wp-block-group__inner-container .icons-list {
        width: 100%;
        gap: 0rem;

        >.wp-block-group {

            max-width: 25%;
            border: 0;
            min-width: unset;
            /* &:nth-child(1),
            &:nth-child(2){
                border-bottom: 0;
            } */
            /* &:nth-child(3),
            &:nth-child(4){
                border-top: 0;
            } */

            p {
                font-size: 0.75rem;
            }
        }
    }

    .icons-list svg {
        width: 24px;
        height: 24px;
    }
}
.wp-container-core-column-layout-1.wp-container-core-column-layout-1 > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    max-width: 100% !important;
}

.post-request {
    display: none;
}
.pre-request,
.post-request {
    background: #eaeaea;
    border-radius: 7px;
    padding: 0.66rem 1rem;
    line-height: 1.3;
    font-size: 0.8rem;
    position: relative;
}
.post-request.success {
    background:#DDFFCC;
    /* border: 1px solid #7abc5a; */
    color: #2e6413;
    font-weight: 900;
}

.pre-request::after,
.post-request::after {
    content: " ";
    position: absolute;
    right: calc(50% - 7.5px);
    bottom: -15px;
    border-top: 15px solid#eaeaea;
    border-right: 15px solid transparent;
    border-left: 15px solid transparent;
    border-bottom: none;
  }
  .post-request.success::after {
    border-top-color:#DDFFCC;
  }

  #amenities {
    padding-bottom: 0 !important;

    .icons-list {
        display: flex;
        flex-direction: row;
        align-content: center;
        flex-wrap: wrap;
        justify-content: center;
        margin-bottom: 0.5rem;
    }
    .details-has-columns {
        margin-top: 0rem;
    }
    .details-columns {
        border-radius: 7px;
    }
  }

  @media screen and (max-width:781px){
    .details-columns {
        >.wp-block-column{
            margin-bottom: 0 !important;
        }
    }
  }