/* --- Typography ---------------------------------------------------------- */
/* Manrope for anything functional: menu, buttons, contact details, forms.  */
.ww-nav .wp-block-button__link,
.ww-actions .wp-block-button__link{
	font-family:var(--wp--preset--font-family--manrope) !important;
	font-weight:600 !important;
}
.ww-contact p,
.ww-contact a{
	font-family:var(--wp--preset--font-family--manrope) !important;
	font-weight:400 !important;
}
.ww-contact p:first-child,
.ww-contact p:first-child a{ font-weight:500 !important; }

/* Booking form and every other button on the site */
.wp-block-jetpack-contact-form,
.wp-block-jetpack-contact-form input,
.wp-block-jetpack-contact-form textarea,
.wp-block-jetpack-contact-form select,
.wp-block-jetpack-contact-form label,
.wp-block-jetpack-contact-form button{
	font-family:var(--wp--preset--font-family--manrope) !important;
}
.wp-block-button__link{ font-family:var(--wp--preset--font-family--manrope); font-weight:600; }

/* Cormorant Garamond for the display type: hero and room names */
.ww-hero h1,
h1, h2, h3, h4{
	font-family:var(--wp--preset--font-family--cormorant-garamond);
}
/* Small uppercase labels read better in the sans */
h3[style*="text-transform"]{ font-family:var(--wp--preset--font-family--manrope); font-weight:600; }

/* --- Booking form ------------------------------------------------------- */
form.contact-form{
	display:grid;
	grid-template-columns:repeat(2, minmax(0, 1fr));
	column-gap:48px;
	row-gap:34px;
	align-items:stretch;
}

/* Each cell is a column with the input pinned to the bottom, so inputs   */
/* line up across a row even when one question wraps to two lines.       */
form.contact-form .grunion-field-wrap{
	margin:0 !important;
	min-width:0;
	display:flex;
	flex-direction:column;
	height:100%;
}
form.contact-form .grunion-field-wrap > .grunion-field{ margin-top:auto; }
form.contact-form .grunion-field-wrap > .contact-form__input-error{ margin-top:0; }
form.contact-form .grunion-field-textarea-wrap,
form.contact-form > button[type=submit],
form.contact-form > [class*='contact-form__'],
form.contact-form > div:not(.grunion-field-wrap){ grid-column:1 / -1; }
form.contact-form > button[type=submit]{ justify-self:start; margin-top:10px; padding:16px 38px; font-size:17px; }

form.contact-form label.grunion-field-label{
	display:block;
	margin-bottom:12px;
	font-size:21px;
	font-weight:500;
	line-height:1.25;
}
form.contact-form .grunion-label-required{ font-size:0 !important; margin-left:5px; }
form.contact-form .grunion-label-required::after{ content:'*'; font-size:22px; line-height:1; color:#c0392b; vertical-align:middle; }

form.contact-form input.grunion-field,
form.contact-form select.grunion-field,
form.contact-form textarea.grunion-field,
form.contact-form input[type=text],
form.contact-form input[type=email],
form.contact-form input[type=tel],
form.contact-form select{
	width:100%;
	box-sizing:border-box;
	padding:16px 18px;
	font-size:17px;
	line-height:1.4;
	border-radius:8px;
	background-color:#fff;
}
form.contact-form .contact-form__select-wrapper,
form.contact-form .contact-form__select-element-wrapper{ display:block; width:100%; }
form.contact-form ::placeholder{ color:#232B2C; opacity:.42; }
form.contact-form select{
	height:auto;
	appearance:none;
	-webkit-appearance:none;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23232B2C' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
	background-repeat:no-repeat;
	background-position:right 16px center;
	background-size:17px;
	padding-right:46px;
}
form.contact-form input:focus,
form.contact-form select:focus,
form.contact-form textarea:focus{ outline:2px solid var(--wp--preset--color--accent); outline-offset:1px; }

@media (max-width:640px){
	form.contact-form{ grid-template-columns:1fr; row-gap:24px; }
	form.contact-form label.grunion-field-label{ font-size:19px; }
}

/* --- Header ------------------------------------------------------------- */
.ww-contact{ justify-content:flex-end !important; column-gap:24px; row-gap:2px; padding:0; }
.ww-contact p{ position:relative; margin:0; padding-left:20px; white-space:nowrap; font-size:13px; }
.ww-contact p::before{ content:''; position:absolute; left:0; top:0.2em; width:14px; height:14px; background-repeat:no-repeat; background-position:center; background-size:contain; opacity:.85; }
.ww-phone::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23232B2C%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M22%2016.92v3a2%202%200%200%201-2.18%202%2019.79%2019.79%200%200%201-8.63-3.07%2019.5%2019.5%200%200%201-6-6A19.79%2019.79%200%200%201%202.12%204.18%202%202%200%200%201%204.11%202h3a2%202%200%200%201%202%201.72c.13.96.36%201.9.7%202.81a2%202%200%200%201-.45%202.11L8.09%209.91a16%2016%200%200%200%206%206l1.27-1.27a2%202%200%200%201%202.11-.45c.91.34%201.85.57%202.81.7A2%202%200%200%201%2022%2016.92z%27%2F%3E%3C%2Fsvg%3E"); }
.ww-email::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23232B2C%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%272%27%20y%3D%274%27%20width%3D%2720%27%20height%3D%2716%27%20rx%3D%272%27%2F%3E%3Cpath%20d%3D%27m2%207%2010%206%2010-6%27%2F%3E%3C%2Fsvg%3E"); }
.ww-address::before{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23232B2C%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M21%2010c0%207-9%2013-9%2013s-9-6-9-13a9%209%200%200%201%2018%200z%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2710%27%20r%3D%273%27%2F%3E%3C%2Fsvg%3E"); }
header .ww-contact a{ text-decoration:none; }
header .ww-contact a:hover{ text-decoration:underline; }

.ww-mainrow{ align-items:flex-end !important; column-gap:30px; margin-top:-14px; padding-bottom:4px; }
.ww-logo{ margin:0 0 0 40px !important; flex:0 0 auto; line-height:0; }
.ww-logo img{ display:block; }
.ww-nav{ flex:1 1 auto; justify-content:flex-end !important; column-gap:34px !important; row-gap:10px !important; }
.ww-actions{ flex:0 0 auto; align-items:center; column-gap:26px !important; }

.ww-nav .wp-block-button__link,
.ww-actions .wp-block-button__link{
	font-family:var(--wp--preset--font-family--manrope) !important;
	font-size:15px !important;
	font-weight:600 !important;
	text-transform:uppercase;
	letter-spacing:0.07em;
	text-decoration:none;
	white-space:nowrap;
}
.ww-nav .wp-block-button__link,
.ww-actions .wp-block-button__link:not([href="/booking-request/"]){
	background:transparent !important; border:0 !important; border-bottom:2px solid transparent !important;
	border-radius:0 !important; padding:4px 0 6px !important; color:var(--wp--preset--color--ink) !important; box-shadow:none !important;
}
.ww-nav .wp-block-button__link:hover,
.ww-actions .wp-block-button__link:not([href="/booking-request/"]):hover{ border-bottom-color:var(--wp--preset--color--support) !important; }
.home .ww-nav a[href="/"],
.page-id-24 .ww-nav a[href="/rooms-amenities/"],
.page-id-25 .ww-nav a[href="/location/"],
.page-id-124 .ww-nav a[href="/pricing-promotions/"]{ border-bottom-color:var(--wp--preset--color--ink) !important; }
header a[href="/booking-request/"]{ background:var(--wp--preset--color--accent) !important; color:var(--wp--preset--color--surface) !important; border:0 !important; border-radius:10px !important; padding:11px 24px !important; }
header a[href="/booking-request/"]:hover{ background:#3d5a62 !important; }

@media (max-width:1280px){
	.ww-mainrow{ flex-wrap:wrap !important; row-gap:12px; }
	.ww-nav{ order:3; flex:0 0 100%; justify-content:center !important; }
}
@media (max-width:720px){
	.ww-contact{ justify-content:center !important; }
	.ww-contact p{ white-space:normal; }
	.ww-mainrow{ justify-content:center !important; }
}

/* Rule above the link row, spanning Home through Sustainability */
.ww-links{
	align-self:flex-end;
	column-gap:38px;
	flex:0 1 auto;
	align-items:center !important;
	border-top:1px solid var(--wp--preset--color--ink);
	padding-top:10px;
	column-gap:30px;
}
.ww-links .ww-nav{ flex:0 1 auto; }
@media (max-width:1280px){
	.ww-links{
	align-self:flex-end;
	column-gap:38px; flex-wrap:wrap !important; justify-content:center !important; row-gap:10px; }
	.ww-links .ww-nav{ order:0; flex:0 1 auto; }
}

/* Hero text block: offset from the left edge of the photo */
.wp-block-cover.ww-hero.has-custom-content-position.is-position-center-left > .wp-block-cover__inner-container{
	max-width:700px;
	margin-left:clamp(24px, 10vw, 200px) !important;
	margin-right:auto !important;
	text-align:left;
}
/* Kill every source of vertical space between header and first block */
.ww-header{ padding-bottom:0 !important; margin-bottom:0 !important; }
.wp-block-template-part{ margin:0 !important; }
header.wp-block-template-part + main{
	margin-top:0 !important;
	margin-block-start:0 !important;
	padding-top:0 !important;
}
.entry-content > *:first-child,
.wp-block-post-content > *:first-child,
main > *:first-child{
	margin-top:0 !important;
	margin-block-start:0 !important;
}
/* and pull the hero up over the 1px border so nothing shows through */
.ww-hero{ margin-top:0 !important; margin-block-start:0 !important; display:flex !important; }

/* Hero sits flush under the header */
.wp-block-post-content > .alignfull:first-child,
.entry-content > .alignfull:first-child{
	margin-top:calc(-1 * var(--wp--preset--spacing--20)) !important;
}
.ww-header{ margin-bottom:0 !important; }

/* --- Room cards ---------------------------------------------------------- */
.ww-roomcard{
	max-width:none;
	border-radius:12px;
	overflow:hidden;
	box-shadow:0 1px 0 rgba(35,43,44,.10);
	align-items:stretch !important;
}
.ww-roomcard > .wp-block-column{ margin:0 !important; }

/* Details panel */
.ww-roominfo{ display:flex; flex-direction:column; }
.ww-roominfo h3{ margin-top:0; }
.ww-roomrule{
	border:0;
	border-top:1px solid rgba(35,43,44,.14);
	margin:24px 0 20px;
	width:100%;
}
.ww-amenity-grid{
	list-style:none;
	padding:0;
	margin:0;
	display:grid;
	grid-template-columns:repeat(2, minmax(0,1fr));
	column-gap:18px;
	row-gap:11px;
}
.ww-amenity-grid li{
	position:relative;
	padding-left:22px;
	line-height:1.4;
}
.ww-amenity-grid li::before{
	content:'';
	position:absolute;
	left:0;
	top:0.32em;
	width:13px;
	height:13px;
	background-repeat:no-repeat;
	background-position:center;
	background-size:contain;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234C6E77' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}
.ww-roominfo .wp-block-buttons{ margin-top:auto !important; padding-top:28px; }

@media (max-width:1250px){
	.ww-roomcard{ max-width:none; flex-wrap:wrap !important; }
	.ww-roomcard > .wp-block-column{ flex-basis:100% !important; width:100% !important; }
	.ww-roominfo{ min-width:0 !important; }
}
@media (max-width:620px){
	.ww-amenity-grid{ grid-template-columns:1fr; }
}

/* Cards run wide; the prose above them keeps a readable measure */
.ww-roomcard{ margin-left:0 !important; margin-right:0 !important; }

/* Room section: prose at a readable measure, cards full width */
.ww-roomcard{ width:100%; max-width:none !important; }
.ww-amenity-grid li{ white-space:normal; overflow-wrap:normal; hyphens:none; }
.ww-roominfo{ min-width:0; }

/* --- Hero text legibility ------------------------------------------------ */
/* The photo is bright and unaltered, so the glyphs carry their own shadow  */
/* rather than dimming the room behind them.                               */
.ww-hero .wp-block-cover__background{ display:none !important; }
.ww-hero h1,
.ww-hero .wp-block-cover__inner-container > p{
	text-shadow:0 2px 18px rgba(35,43,44,.62), 0 1px 4px rgba(35,43,44,.5);
}
.ww-hero .wp-block-button__link{ text-shadow:none; }

/* --- Room photo carousel -------------------------------------------------- */
.ww-carousel{ position:relative; height:100%; display:flex; }
.ww-roomshots.has-nested-images{
	display:flex !important;
	flex-wrap:nowrap !important;
	gap:0 !important;
	margin:0 !important;
	width:100%;
	overflow-x:auto;
	overflow-y:hidden;
	scroll-snap-type:x mandatory;
	scrollbar-width:none;
	-ms-overflow-style:none;
}
.ww-roomshots.has-nested-images::-webkit-scrollbar{ display:none; }
.ww-roomshots.has-nested-images figure.wp-block-image{
	flex:0 0 100% !important;
	width:100% !important;
	max-width:100% !important;
	margin:0 !important;
	scroll-snap-align:start;
	aspect-ratio:4 / 3;
}
.ww-roomshots.has-nested-images figure.wp-block-image img{
	width:100% !important;
	height:100% !important;
	object-fit:cover;
	display:block;
}

/* Arrows */
.ww-carousel-nav{
	position:absolute;
	top:50%;
	width:44px;
	height:44px;
	padding:0;
	border:0;
	border-radius:50%;
	background:rgba(255,255,255,.88);
	color:var(--wp--preset--color--ink);
	cursor:pointer;
	display:flex;
	align-items:center;
	justify-content:center;
	box-shadow:0 2px 10px rgba(35,43,44,.20);
	transition:background .15s ease;
	z-index:2;
}
.ww-carousel-nav:hover{ background:#fff; }
.ww-carousel-prev{ left:14px; }
.ww-carousel-next{ right:14px; }
.ww-carousel-next svg{ transform:rotate(180deg); }
.ww-carousel-nav svg{ width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }

/* Dots */
.ww-carousel-dots{
	position:absolute;
	bottom:14px;
	left:0;
	right:0;
	display:flex;
	justify-content:center;
	gap:7px;
	z-index:2;
}
.ww-carousel-dot{
	width:7px;
	height:7px;
	border-radius:50%;
	background:rgba(255,255,255,.55);
	cursor:pointer;
	transition:background .15s ease;
}
.ww-carousel-dot.is-active{ background:#fff; }

@media (max-width:520px){
	.ww-carousel-nav{ width:38px; height:38px; }
	.ww-carousel-prev{ left:8px; }
	.ww-carousel-next{ right:8px; }
}

/* --- Location map -------------------------------------------------------- */
.ww-map-frame{
	position:relative;
	width:100%;
	aspect-ratio:16 / 9;
	margin-top:24px;
	border-radius:10px;
	overflow:hidden;
	border:1px solid rgba(35,43,44,.12);
}
.ww-map-frame iframe{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	border:0;
}
@media (max-width:640px){ .ww-map-frame{ aspect-ratio:4 / 3; } }

/* --- Homepage end cap ---------------------------------------------------- */
.ww-endcap .wp-block-columns{ align-items:center; }
.ww-endcap-logo figure{ margin:0 auto !important; }
.ww-endcap-logo img{ max-width:100%; height:auto; display:block; }
/* Map rendered in black and white to sit with the monochrome logo */
.ww-map-mono iframe{
	filter:grayscale(1) contrast(1.05);
	-webkit-filter:grayscale(1) contrast(1.05);
}
.ww-map-mono{ margin-top:0 !important; }
@media (max-width:780px){
	.ww-endcap .wp-block-columns{ flex-wrap:wrap !important; }
	.ww-endcap .wp-block-column{ flex-basis:100% !important; }
	.ww-endcap-logo img{ width:240px !important; }
}

/* --- Footer (black) ------------------------------------------------------ */
.ww-footer, .ww-footer p, .ww-footer h3{ color:#F2EFEA !important; }
.ww-footer a{ color:#F2EFEA !important; text-decoration:none; }
.ww-footer a:hover{ text-decoration:underline; }
.ww-footer h3{ opacity:.92; }
.ww-footer .ww-footer-rule{ border-top:1px solid rgba(255,255,255,.18) !important; background:none !important; color:transparent !important; margin:36px 0 20px; }
.ww-footer-logo figure{ margin:0 auto !important; }
.ww-footer-logo img{ width:100%; max-width:none; height:auto; display:block; }
.ww-footer .ww-map-frame{ margin-top:0 !important; aspect-ratio:4 / 3; border:1px solid rgba(255,255,255,.16); }
@media (max-width:900px){
	.ww-footer .wp-block-columns{ flex-wrap:wrap !important; }
	.ww-footer .wp-block-column{ flex-basis:100% !important; }
	.ww-footer-logo img{ max-width:320px; }
}

/* --- Photo bands (Arrival & Parking) ------------------------------------- */
.ww-photoband{ margin-top:32px; overflow:hidden; }
.ww-photoband h1, .ww-photoband h2, .ww-photoband p{ text-shadow:0 2px 14px rgba(0,0,0,.5); }
.ww-photoband .wp-block-cover__inner-container{ max-width:760px; }
.ww-photoband .wp-block-button__link{ text-shadow:none; }

/* --- Amenity icons (homepage) -------------------------------------------- */
.ww-ico-desk h3, .ww-ico-kitchen h3, .ww-ico-comfort h3{
	position:relative;
	padding-top:140px;
}
.ww-ico-desk h3::before, .ww-ico-kitchen h3::before, .ww-ico-comfort h3::before{
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:129px;
	background-color:transparent;
	background-repeat:no-repeat;
	background-position:center bottom;
	background-size:contain;
}
.ww-ico-desk h3::before{ background-image:url('https://whiteandwoodbitola.com/wp-content/uploads/2026/08/room-to-work-symbol.webp'); }
.ww-ico-kitchen h3::before{ background-image:url('https://whiteandwoodbitola.com/wp-content/uploads/2026/08/kitchenette-bathroom-symbol.webp'); }
.ww-ico-comfort h3::before{ background-image:url('https://whiteandwoodbitola.com/wp-content/uploads/2026/08/comfort-entertainment-symbol.webp'); }

/* Hero vertical centring */
.wp-block-cover.ww-hero.has-custom-content-position.is-position-center-left{
	align-items:center !important;
}
.wp-block-cover.ww-hero.has-custom-content-position.is-position-center-left > .wp-block-cover__inner-container{
	align-self:center !important;
	margin-top:0 !important;
	margin-bottom:0 !important;
}
.ww-hero .wp-block-buttons{ justify-content:flex-start !important; }

/* --- Hero centring (final) ------------------------------------------------ */
.wp-block-cover.ww-hero{
	display:flex !important;
	align-items:center !important;
	justify-content:flex-start !important;
}
.wp-block-cover.ww-hero > .wp-block-cover__inner-container{
	align-self:center !important;
	margin-top:auto !important;
	margin-bottom:auto !important;
	transform:none !important;
}

/* --- Page-content heading scale ------------------------------------------ */
main h1.wp-block-heading{
	font-size:clamp(27.2px, 3.6vw, 40px) !important;
	font-weight:700 !important;
}
main h2.wp-block-heading{
	font-size:clamp(20.8px, 2.4vw, 28.8px) !important;
	font-weight:700 !important;
}
main h3.wp-block-heading{
	font-weight:700 !important;
}
main h3.wp-block-heading:not([style*="text-transform"]){
	font-size:clamp(17.6px, 1.92vw, 24px) !important;
}
main h3.wp-block-heading[style*="text-transform"]{
	font-size:12px !important;
}
main h4.wp-block-heading{
	font-size:14.4px !important;
	font-weight:700 !important;
}

/* --- Homepage room-includes hierarchy ------------------------------------ */
.ww-room-includes > h2.wp-block-heading{
	font-size:28.8px !important;
	font-weight:700 !important;
}
.ww-room-includes .ww-ico-desk h3,
.ww-room-includes .ww-ico-kitchen h3,
.ww-room-includes .ww-ico-comfort h3{
	font-size:13.6px !important;
	font-weight:700 !important;
}

/* --- Homepage amenity-title priority fix -------------------------------- */
main .ww-room-includes .ww-ico-desk h3.wp-block-heading,
main .ww-room-includes .ww-ico-kitchen h3.wp-block-heading,
main .ww-room-includes .ww-ico-comfort h3.wp-block-heading{
    font-size:18px !important;
    line-height:1.25 !important;
}

/* --- Arrival & Parking matched hero heading sizes ----------------------- */
main h2.wp-block-heading.ww-arrival-parking-title{
    font-size:clamp(27.2px, 3.6vw, 40px) !important;
}

/* --- Arrival & Parking small section titles ----------------------------- */
main h2.wp-block-heading.ww-arrival-small-title{
    font-size:20px !important;
    line-height:1.25 !important;
}

/* --- Compact mobile header ---------------------------------------------- */
.ww-mobile-controls{ display:none !important; }
@media (max-width:720px){
    .ww-header{
        position:relative;
        z-index:50;
        padding:8px 14px !important;
    }
    .ww-header .ww-contact,
    .ww-header .ww-links{
        display:none !important;
    }
    .ww-header .ww-mainrow{
        display:flex !important;
        flex-wrap:nowrap !important;
        justify-content:space-between !important;
        align-items:center !important;
        width:100%;
        margin:0 !important;
        padding:0 !important;
        gap:16px !important;
    }
    .ww-header .ww-logo{
        flex:0 0 auto !important;
        margin:0 !important;
    }
    .ww-header .ww-logo img{
        display:block;
        width:110px !important;
        height:auto !important;
    }
    .ww-mobile-controls{
        display:flex !important;
        flex:0 0 auto;
        align-items:center;
        justify-content:flex-end;
        gap:8px;
        margin-left:auto;
    }
    .ww-mobile-icon{
        box-sizing:border-box;
        display:flex;
        align-items:center;
        justify-content:center;
        width:40px;
        height:40px;
        margin:0;
        padding:0;
        color:var(--wp--preset--color--ink);
        background:var(--wp--preset--color--surface);
        border:1px solid #d8d8d5;
        border-radius:8px;
        cursor:pointer;
        text-decoration:none;
    }
    .ww-mobile-icon:hover,
    .ww-mobile-icon:focus-visible{
        color:var(--wp--preset--color--surface);
        background:var(--wp--preset--color--accent);
        outline:none;
    }
    .ww-mobile-icon svg{
        width:18px;
        height:18px;
        fill:none;
        stroke:currentColor;
        stroke-width:1.8;
        stroke-linecap:round;
        stroke-linejoin:round;
    }
    .ww-mobile-menu{
        position:relative;
        margin:0;
    }
    .ww-mobile-menu summary{
        width:auto;
        min-width:82px;
        padding:0 12px;
        gap:8px;
        list-style:none;
        color:#ffffff;
        background:#000000;
        border-color:#000000;
        font-family:var(--wp--preset--font-family--manrope);
        font-size:12px;
        font-weight:700;
        letter-spacing:.08em;
    }
    .ww-mobile-menu summary:hover,
    .ww-mobile-menu summary:focus-visible,
    .ww-mobile-menu[open] > summary{
        color:#000000;
        background:#ffffff;
        border-color:#000000;
    }
    .ww-mobile-menu summary::-webkit-details-marker{
        display:none;
    }
    .ww-mobile-menu[open] > summary{
        color:var(--wp--preset--color--surface);
        background:var(--wp--preset--color--accent);
    }
    .ww-mobile-menu-panel{
        position:absolute;
        top:calc(100% + 8px);
        right:0;
        z-index:100;
        box-sizing:border-box;
        display:flex;
        flex-direction:column;
        width:min(270px, calc(100vw - 28px));
        padding:10px;
        background:var(--wp--preset--color--surface);
        border:1px solid #e2ded7;
        border-radius:10px;
        box-shadow:0 14px 34px rgba(35,43,44,.16);
    }
    .ww-mobile-menu-panel a{
        display:block;
        padding:11px 12px;
        color:var(--wp--preset--color--ink) !important;
        border-radius:7px;
        font-family:var(--wp--preset--font-family--manrope);
        font-size:15px;
        font-weight:600;
        line-height:1.25;
        text-align:left;
        text-decoration:none;
        text-transform:none;
        letter-spacing:0;
    }
    .ww-mobile-menu-panel a:hover,
    .ww-mobile-menu-panel a:focus-visible{
        background:#f2efe9;
        outline:none;
    }
}
/* --- Center homepage hero buttons on mobile ----------------------------- */
@media (max-width:720px){
    }
/* --- Desktop navigation on the logo rule -------------------------------- */
@media (min-width:1281px){
    .ww-header .ww-mainrow{
        display:grid !important;
        grid-template-columns:228px minmax(0, 1fr);
        column-gap:0 !important;
        align-items:end !important;
    }
    .ww-header .ww-logo,
    .ww-header .ww-logo img{
        width:201px !important;
        max-width:none !important;
    }
    .ww-header .ww-links{
        width:100%;
        margin-bottom:23px;
        padding-top:0;
        padding-bottom:10px;
        border-top:0;
        border-bottom:1px solid var(--wp--preset--color--ink);
    }
}
/* --- Separate header logo images ---------------------------------------- */
.ww-header .ww-logo-parts{
    width:201px;
    flex:0 0 201px;
    gap:0 !important;
    align-items:center !important;
    line-height:0;
}
.ww-header .ww-logo-parts figure{
    margin:0 auto !important;
}
@media (min-width:721px){
    .ww-header .ww-logo-parts .ww-logo-mark img{
        width:116px !important;
        max-width:none !important;
    }
    .ww-header .ww-logo-parts .ww-logo-wordmark img{
        width:201px !important;
        max-width:none !important;
    }
}
@media (max-width:720px){
    .ww-header .ww-logo-parts{
        width:110px !important;
        flex-basis:110px !important;
    }
    .ww-header .ww-logo-parts .ww-logo-mark img{
        width:74px !important;
    }
    .ww-header .ww-logo-parts .ww-logo-wordmark img{
        width:110px !important;
    }
}

/* --- Desktop wordmark line alignment ------------------------------------ */
@media (min-width:1281px){
    .ww-header .ww-logo-parts .ww-logo-wordmark{
        transform:translateY(6px);
    }
}

/* --- Center desktop page links; booking stays right --------------------- */
@media (min-width:1281px){
    .ww-header .ww-links{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
        column-gap:20px !important;
        align-items:center !important;
    }
    .ww-header .ww-links .ww-nav{
        grid-column:2;
        justify-content:center !important;
    }
    .ww-header .ww-links .ww-actions{
        grid-column:3;
        justify-self:end;
        justify-content:flex-end !important;
    }
}

/* --- True full-header centering for desktop navigation ------------------ */
@media (min-width:1281px){
    .ww-header .ww-mainrow{
        position:relative;
    }
    .ww-header .ww-links{
        display:flex !important;
        justify-content:flex-end !important;
    }
    .ww-header .ww-links .ww-nav{
        position:absolute;
        left:50%;
        transform:translateX(-50%);
        grid-column:auto;
        justify-content:center !important;
    }
    .ww-header .ww-links .ww-actions{
        grid-column:auto;
        margin-left:auto;
        justify-self:auto;
        justify-content:flex-end !important;
    }
}

/* --- Mobile offer panel over entrance photo ----------------------------- */
@media (max-width:720px){
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns{
        position:relative;
        display:block !important;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2){
        position:absolute;
        z-index:3;
        top:auto;
        bottom:18px;
        left:10px;
        right:10px;
        width:auto !important;
        margin:0 !important;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2) > .wp-block-group{
        padding-top:0 !important;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2) > .wp-block-group > h2{
        margin:0 auto !important;
        padding:9px 10px;
        width:max-content;
        max-width:100%;
        font-size:20px !important;
        line-height:1.15 !important;
        background:rgba(250,249,247,.78);
        border-radius:8px;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2) > .wp-block-group > .wp-block-columns{
        display:flex !important;
        flex-wrap:nowrap !important;
        gap:8px !important;
        margin-top:14px !important;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2) > .wp-block-group > .wp-block-columns > .wp-block-column{
        flex:1 1 0 !important;
        min-width:0;
        padding:16px 4px 14px !important;
        background:rgba(250,249,247,.78) !important;
        border-radius:8px !important;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2) > .wp-block-group > .wp-block-columns h3{
        font-size:20px !important;
        line-height:1 !important;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2) > .wp-block-group > .wp-block-columns > .wp-block-column > .wp-block-group{
        margin-top:12px !important;
        margin-bottom:11px !important;
        width:46px;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2) > .wp-block-group > .wp-block-columns p{
        font-size:13px !important;
        line-height:1.25 !important;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2) > .wp-block-group > .wp-block-group.has-border-color{
        margin-top:16px !important;
        padding:15px 10px 16px !important;
        background:rgba(250,249,247,.78) !important;
        border-radius:8px !important;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2) > .wp-block-group > .wp-block-group.has-border-color > h2{
        font-size:17px !important;
        line-height:1.15 !important;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2) > .wp-block-group > .wp-block-group.has-border-color > .wp-block-group{
        margin-top:9px !important;
        margin-bottom:12px !important;
        width:50px;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2) > .wp-block-group > .wp-block-group.has-border-color > .wp-block-columns{
        display:flex !important;
        flex-wrap:nowrap !important;
        gap:12px !important;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2) > .wp-block-group > .wp-block-group.has-border-color > .wp-block-columns > .wp-block-column{
        flex:1 1 0 !important;
        min-width:0;
    }
    body.page-id-124 .wp-block-post-content img.wp-image-354{
        width:46px !important;
        height:46px !important;
    }
    body.page-id-124 .wp-block-post-content img.wp-image-355{
        width:52px !important;
        height:46px !important;
    }
    body.page-id-124 .wp-block-post-content > .wp-block-group.alignfull > .wp-block-columns > .wp-block-column:nth-child(2) > .wp-block-group > .wp-block-group.has-border-color p{
        margin-top:7px !important;
        font-size:12px !important;
        line-height:1.25 !important;
    }
}

/* --- White mobile MENU button with bold outline ------------------------ */
@media (max-width:720px){
    .ww-mobile-menu > summary.ww-mobile-icon,
    .ww-mobile-menu > summary.ww-mobile-icon:hover,
    .ww-mobile-menu > summary.ww-mobile-icon:focus-visible,
    .ww-mobile-menu[open] > summary.ww-mobile-icon{
        color:#000000 !important;
        background:#ffffff !important;
        border:1.5px solid #000000 !important;
        box-shadow:none !important;
    }
    .ww-mobile-menu > summary.ww-mobile-icon svg{
        stroke-width:2.2;
    }
}

/* --- Bold outline for mobile location button --------------------------- */
@media (max-width:720px){
    .ww-mobile-location{
        border:1.5px solid #000000 !important;
    }
}

/* --- Compact mobile Rooms title spacing -------------------------------- */
@media (max-width:720px){
    body.page-id-24 .wp-block-post-content > .wp-block-group.alignwide:first-child{
        padding-top:28px !important;
        padding-bottom:8px !important;
    }
    body.page-id-24 .wp-block-post-content > .wp-block-group.alignwide:first-child + .wp-block-group.alignwide{
        margin-top:8px !important;
        padding-top:28px !important;
    }
}

/* --- Booking confirmation preference menu ------------------------------ */
body.page-id-26 form.contact-form .grunion-field-radio-wrap{
    grid-column:1 / -1;
    margin-top:12px !important;
}
body.page-id-26 form.contact-form .grunion-field-radio-wrap fieldset{
    width:100%;
    margin:0;
    padding:0;
    border:0;
}
body.page-id-26 form.contact-form .grunion-field-radio-wrap legend.grunion-field-label{
    display:block;
    width:100%;
    margin:0 0 20px;
    padding:0;
    font-family:var(--wp--preset--font-family--manrope);
    font-size:24px;
    font-weight:600;
    line-height:1.25;
}
body.page-id-26 form.contact-form .grunion-field-radio-wrap legend.grunion-field-label::after{
    content:"Choose the easiest way for us to reply.";
    display:block;
    margin-top:7px;
    font-size:16px;
    font-weight:400;
    line-height:1.45;
    opacity:.72;
}
body.page-id-26 form.contact-form .grunion-field-radio-wrap .grunion-label-required{
    font-size:0 !important;
    margin-left:5px;
}
body.page-id-26 form.contact-form .grunion-field-radio-wrap .grunion-label-required::after{
    content:"*";
    font-size:20px;
    color:#c0392b;
}
body.page-id-26 form.contact-form .grunion-radio-options{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
}
body.page-id-26 form.contact-form .grunion-radio-options .contact-form-field{
    min-width:0;
    margin:0;
}
body.page-id-26 form.contact-form .grunion-radio-options input[type="radio"]{
    position:absolute;
    width:1px;
    height:1px;
    margin:-1px;
    padding:0;
    overflow:hidden;
    clip:rect(0 0 0 0);
    clip-path:inset(50%);
    white-space:nowrap;
    border:0;
}
body.page-id-26 form.contact-form .grunion-radio-options label.grunion-radio-label{
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:108px;
    gap:10px;
    padding:14px 10px;
    color:var(--wp--preset--color--ink);
    background:#ffffff;
    border:1px solid rgba(35,43,44,.18);
    border-radius:10px;
    font-family:var(--wp--preset--font-family--manrope);
    font-size:17px;
    font-weight:500;
    line-height:1.2;
    cursor:pointer;
    transition:border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}
body.page-id-26 form.contact-form .grunion-radio-options label.grunion-radio-label::before{
    content:"";
    width:25px;
    height:25px;
    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
}
body.page-id-26 form.contact-form .grunion-radio-options .contact-form-field:nth-child(1) label::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27%23232B2C%27 stroke-width=%271.8%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M20 11.5a8 8 0 0 1-11.7 7L4 20l1.5-4.2A8 8 0 1 1 20 11.5Z%27/%3E%3Cpath d=%27M8.7 8.4c.6 2.4 2.4 4.2 4.8 4.8%27/%3E%3C/svg%3E");
}
body.page-id-26 form.contact-form .grunion-radio-options .contact-form-field:nth-child(2) label::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27%23232B2C%27 stroke-width=%271.8%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.79 19.79 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z%27/%3E%3C/svg%3E");
}
body.page-id-26 form.contact-form .grunion-radio-options .contact-form-field:nth-child(3) label::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27%23232B2C%27 stroke-width=%271.8%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Crect x=%272%27 y=%274%27 width=%2720%27 height=%2716%27 rx=%272%27/%3E%3Cpath d=%27m2 7 10 6 10-6%27/%3E%3C/svg%3E");
}
body.page-id-26 form.contact-form .grunion-radio-options input[type="radio"]:checked + label.grunion-radio-label{
    background:rgba(76,110,119,.10);
    border:1.5px solid var(--wp--preset--color--accent);
    box-shadow:0 0 0 1px rgba(76,110,119,.08);
}
body.page-id-26 form.contact-form .grunion-radio-options input[type="radio"]:focus-visible + label.grunion-radio-label{
    outline:2px solid var(--wp--preset--color--accent);
    outline-offset:2px;
}
body.page-id-26 form.contact-form .grunion-radio-options label.grunion-radio-label:hover{
    border-color:var(--wp--preset--color--accent);
}
@media (max-width:640px){
    body.page-id-26 form.contact-form .grunion-field-radio-wrap{
        margin-top:8px !important;
    }
    body.page-id-26 form.contact-form .grunion-field-radio-wrap legend.grunion-field-label{
        margin-bottom:16px;
        font-size:20px;
    }
    body.page-id-26 form.contact-form .grunion-field-radio-wrap legend.grunion-field-label::after{
        font-size:14px;
    }
    body.page-id-26 form.contact-form .grunion-radio-options{
        gap:8px;
    }
    body.page-id-26 form.contact-form .grunion-radio-options label.grunion-radio-label{
        min-height:94px;
        gap:7px;
        padding:10px 4px;
        font-size:14px;
    }
    body.page-id-26 form.contact-form .grunion-radio-options label.grunion-radio-label::before{
        width:22px;
        height:22px;
    }
}

/* --- Booking preference below submit button --- */
body.page-id-26 form.contact-form > button.pushbutton-wide{
  order:10;
}
body.page-id-26 form.contact-form > .grunion-field-radio-wrap{
  order:11;
  margin-top:8px!important;
}

/* --- Booking submit preference popup ------------------------------------ */
body.page-id-26 form.contact-form > .grunion-field-radio-wrap{
  display:none!important;
}
body.ww-submit-pref-open{
  overflow:hidden;
}
.ww-submit-pref{
  position:fixed!important;
  inset:0!important;
  z-index:999999;
  display:grid;
  width:100vw!important;
  height:100dvh!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:16px;
  place-items:center;
  box-sizing:border-box;
  background:rgba(15,20,20,.55);
  overflow:auto;
}
.ww-submit-pref[hidden]{
  display:none!important;
}
.ww-submit-pref__panel{
  position:relative;
  width:min(620px,100%);
  max-height:calc(100dvh - 32px);
  margin:auto;
  padding:42px 42px 38px;
  border:1px solid rgba(34,44,44,.16);
  border-radius:18px;
  box-sizing:border-box;
  color:#222c2c;
  background:#faf9f6;
  box-shadow:0 24px 80px rgba(0,0,0,.24);
  overflow:auto;
}
.ww-submit-pref__close{
  position:absolute;
  top:12px;
  right:14px;
  display:grid;
  width:38px;
  height:38px;
  padding:0;
  place-items:center;
  border:1px solid rgba(34,44,44,.18);
  border-radius:50%;
  color:#222c2c;
  background:#fff;
  font:400 27px/1 Arial,sans-serif;
  cursor:pointer;
}
.ww-submit-pref h2{
  max-width:520px;
  margin:0;
  padding-right:30px;
  color:#222c2c;
  font-size:28px;
  font-weight:700;
  line-height:1.2;
  text-align:left;
  text-transform:none;
}
.ww-submit-pref h2 + p{
  margin:10px 0 26px;
  color:#5e6464;
  font-size:17px;
}
.ww-submit-pref__choices{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.ww-submit-pref__choice{
  display:flex;
  min-height:116px;
  padding:18px 12px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:12px;
  border:1.5px solid rgba(76,110,119,.32);
  border-radius:12px;
  color:#222c2c;
  background:#fff;
  font:500 17px/1.2 inherit;
  text-align:center;
  cursor:pointer;
  transition:border-color .18s ease,background-color .18s ease,transform .18s ease;
}
.ww-submit-pref__choice:hover,
.ww-submit-pref__choice:focus-visible{
  border-color:#4c6e77;
  background:rgba(76,110,119,.09);
  transform:translateY(-2px);
  outline:none;
}
.ww-submit-pref__choice svg{
  width:27px;
  height:27px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.ww-submit-pref__choice:first-child svg path:last-child{
  fill:currentColor;
  stroke:none;
}
@media(max-width:640px){
  .ww-submit-pref{
    padding:12px;
  }
  .ww-submit-pref__panel{
    width:100%;
    max-height:calc(100dvh - 24px);
    padding:38px 18px 24px;
    border-radius:15px;
  }
  .ww-submit-pref h2{
    padding-right:30px;
    font-size:22px;
  }
  .ww-submit-pref h2 + p{
    margin-bottom:20px;
    font-size:15px;
  }
  .ww-submit-pref__choices{
    gap:8px;
  }
  .ww-submit-pref__choice{
    min-height:100px;
    padding:14px 6px;
    gap:9px;
    font-size:14px;
  }
  .ww-submit-pref__choice svg{
    width:24px;
    height:24px;
  }
}

/* --- High-resolution desktop hero framing ------------------------------- */
body.home .wp-block-cover.ww-hero{
  background-repeat:no-repeat!important;
  background-position:50% 50%!important;
  background-size:cover!important;
}
@media(min-width:782px){
  body.home .wp-block-cover.ww-hero{
    background-image:url("https://whiteandwoodbitola.com/wp-content/uploads/2026/09/title_photo_studio_1_webp-file.webp")!important;
  }
  body.home .wp-block-cover.ww-hero > img.wp-block-cover__image-background{
    display:none !important;
  }
}

body.home .wp-block-cover.ww-hero{
	display:flex !important;
	align-items:center !important;
	min-height:clamp(560px, 56vw, 780px) !important;
	padding-top:0 !important;
	padding-bottom:0 !important;
}
body.home .wp-block-cover.ww-hero > .wp-block-cover__inner-container{
	align-self:center !important;
	margin-top:auto !important;
	margin-bottom:auto !important;
	transform:none !important;
}
body.home .ww-hero .wp-block-buttons{
	transform:none !important;
	margin-top:28px !important;
	position:relative;
	z-index:2;
	width:auto !important;
}
@media (min-width:782px){
	body.home .ww-hero .wp-block-buttons{ justify-content:flex-start !important; }
}
/* --- Hero buttons on the floor ------------------------------------------- */
/* The block is vertically centred, so extra space above the buttons pushes */
/* them down over the floor while lifting the heading clear of the bed.     */
body.home .ww-hero .wp-block-buttons{
	margin-top:clamp(70px, 15vh, 190px) !important;
	transform:none !important;
}

/* --- Mobile homepage hero: single source of truth ------------------------ */
@media (max-width:781px){
  body.home{
    overflow-x:hidden !important;
  }
  body.home .wp-block-cover.ww-hero{
    box-sizing:border-box !important;
    width:100vw !important;
    max-width:100vw !important;
    height:98.19vw !important;
    min-height:0 !important;
    aspect-ratio:auto !important;
    margin:0 !important;
    margin-top:calc(-1 * var(--wp--preset--spacing--20)) !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    position:relative !important;
    background-color:var(--wp--preset--color--surface) !important;
    background-image:url("https://whiteandwoodbitola.com/wp-content/uploads/2026/08/mobile-hero-page-new-2-1.jpg") !important;
    background-size:cover !important;
    background-position:top center !important;
    background-repeat:no-repeat !important;
  }
  body.home .wp-block-cover.ww-hero > img.wp-block-cover__image-background{
    display:none !important;
  }
  body.home .wp-block-cover.ww-hero > .wp-block-cover__inner-container{
    box-sizing:border-box !important;
    position:relative !important;
    width:100% !important;
    max-width:none !important;
    height:100% !important;
    min-height:100% !important;
    margin:0 !important;
    padding:0 18px !important;
    transform:none !important;
    text-align:center;
  }
  body.home .ww-hero h1{
    position:absolute !important;
    top:clamp(44px,12vw,56px) !important;
    left:24px !important;
    right:auto !important;
    width:min(80vw,330px) !important;
    margin:0 !important;
    font-size:clamp(19px,5.3vw,23px) !important;
    line-height:1.06 !important;
    text-align:left !important;
  }
  body.home .ww-hero .wp-block-cover__inner-container > p{
    position:absolute !important;
    top:clamp(90px,25vw,108px) !important;
    left:24px !important;
    right:18px !important;
    margin:0 !important;
    font-size:clamp(14px,3.8vw,16px) !important;
    text-align:left !important;
    white-space:nowrap !important;
  }
  body.home .ww-hero .wp-block-buttons{
    position:absolute !important;
    left:14px !important;
    right:14px !important;
    bottom:12px !important;
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:8px !important;
    width:auto !important;
    margin:0 !important;
    transform:none !important;
  }
  body.home .ww-hero .wp-block-buttons > .wp-block-button{
    flex:0 1 auto !important;
    width:auto !important;
    margin:0 !important;
  }
  body.home .ww-hero .wp-block-buttons .wp-block-button__link{
    box-sizing:border-box !important;
    display:flex !important;
    width:100% !important;
    min-height:48px !important;
    padding:12px 6px !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:clamp(12.5px,3.5vw,14px) !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
  }
}

/* --- Map facade ----------------------------------------------------------- */
/* Nothing loads from Google until the visitor taps. The iframe replaces    */
/* this panel in place, so the layout does not shift.                       */
.ww-map-facade{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	background:#1b1f20;
	border:1px solid rgba(255,255,255,.16);
	transition:background .15s ease;
}
.ww-map-facade:hover,
.ww-map-facade:focus-visible{ background:#242a2b; outline:none; }
.ww-map-facade__inner{
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:10px;
	text-align:center;
	color:#F2EFEA;
	padding:20px;
	font-family:var(--wp--preset--font-family--manrope);
}
.ww-map-facade__pin{
	width:30px;
	height:30px;
	color:#F2EFEA;
	background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27currentColor%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M21%2010c0%207-9%2013-9%2013s-9-6-9-13a9%209%200%200%201%2018%200z%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2710%27%20r%3D%273%27%2F%3E%3C%2Fsvg%3E");
	background-repeat:no-repeat;
	background-position:center;
	background-size:contain;
}
.ww-map-facade__addr{ font-size:14px; line-height:1.5; opacity:.9; }
.ww-map-facade__cta{
	margin-top:4px;
	font-size:13px;
	font-weight:600;
	text-transform:uppercase;
	letter-spacing:0.08em;
	border-bottom:1px solid rgba(242,239,234,.5);
	padding-bottom:2px;
}
.ww-map-facade.is-loaded{ cursor:default; background:none; padding:0; }
.ww-map-facade.is-loaded iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }

/* On the light Arrival page the panel follows the page palette instead */
.ww-map-section .ww-map-facade{ background:var(--wp--preset--color--surface); border:1px solid rgba(35,43,44,.14); }
.ww-map-section .ww-map-facade:hover{ background:#fff; }
.ww-map-section .ww-map-facade__inner{ color:var(--wp--preset--color--ink); }
.ww-map-section .ww-map-facade__pin{ color:var(--wp--preset--color--accent); }
.ww-map-section .ww-map-facade__cta{ border-bottom-color:rgba(35,43,44,.35); }
.ww-map-section .ww-map-frame{ margin-top:24px; aspect-ratio:16 / 9; }


/* --- Footer landmark map image: landmarks ------------------------------- */
.ww-footer .ww-map-frame.ww-map-facade{
  aspect-ratio:1 / 1 !important;
  background-color:#FAF8F4 !important;
  background-image:url("https://whiteandwoodbitola.com/wp-content/uploads/2026/08/white-wood-map-bold-landmarks.png") !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:cover !important;
  border:1px solid rgba(250,248,244,.28) !important;
}
.ww-footer .ww-map-facade:hover{
  background-color:#FAF8F4 !important;
  background-image:url("https://whiteandwoodbitola.com/wp-content/uploads/2026/08/white-wood-map-bold-landmarks.png") !important;
}
.ww-footer .ww-map-facade:focus-visible{
  outline:2px solid #4C6E77 !important;
  outline-offset:3px;
}
.ww-footer .ww-map-facade__inner{
  position:absolute;
  top:14px;
  right:14px;
  left:auto;
  bottom:auto;
  width:auto;
  max-width:150px;
  box-sizing:border-box;
  align-items:flex-start;
  gap:5px;
  padding:10px 12px;
  border:1px solid rgba(35,43,44,.14);
  border-radius:8px;
  color:#232B2C;
  background:rgba(250,248,244,.88);
  -webkit-backdrop-filter:blur(3px);
  backdrop-filter:blur(3px);
  text-align:left;
}
.ww-footer .ww-map-facade__pin{ display:none; }
.ww-footer .ww-map-facade__addr{
  font-size:11px;
  line-height:1.35;
  opacity:1;
}
.ww-footer .ww-map-facade__cta{
  margin-top:1px;
  padding-bottom:0;
  border-bottom:none;
  color:#4C6E77;
  font-size:10px;
  letter-spacing:.06em;
}
.ww-footer .ww-map-facade.is-loaded{
  background:none !important;
}

/* --- White & Wood button accent trial: wall-match B -------------------- */
.has-accent-background-color.wp-block-button__link,
.wp-block-button__link.has-accent-background-color,
.wp-block-button .has-accent-background-color{
  background-color:#2B8285 !important;
}
.has-accent-background-color.wp-block-button__link:hover,
.wp-block-button__link.has-accent-background-color:hover,
.wp-block-button .has-accent-background-color:hover{
  background-color:#246F72 !important;
}

/* --- Oswald body copy typography --------------------------------------- */
@font-face{
  font-family:'Oswald';
  src:url('https://whiteandwoodbitola.com/wp-content/uploads/fonts/oswald-400-normal.ttf') format('truetype');
  font-style:normal;
  font-weight:400;
  font-display:swap;
}

/* Body copy only: headings and functional UI keep their existing fonts. */
body p,
body li,
body blockquote,
body figcaption,
body .wp-block-table td,
body .wp-block-table th{
  font-family:'Oswald', sans-serif !important;
  font-weight:400 !important;
}

/* Preserve heading typography. */
body h1, body h1 *,
body h2, body h2 *,
body h3, body h3 *,
body h4, body h4 *,
body h5, body h5 *,
body h6, body h6 *{
  font-family:var(--wp--preset--font-family--cormorant-garamond) !important;
}


/* --- Homepage Call button: larger label, fixed frame --- */
body.home .ww-call-button .wp-block-button__link{
  width:173.453125px;
  height:45.484375px;
  padding:0 !important;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
}