/* Lara Wedding Films — layout and typography copied from the Vigbo design.
   Breakpoints (same as Vigbo): desktop ≥1025px, tablet 768–1024px (burger menu, columns kept), mobile ≤767px (one column). */

:root {
	--ff-head: "Gilda Display", "Times New Roman", serif;
	--ff-text: "Arsenal", Arial, sans-serif;
	--ff-menu: Helvetica, "Helvetica Neue", Arial, sans-serif;
	--c-text: #303030;
	--c-accent: #98856c;
	--c-line: #e6e6e6;
	--pad-x: 65px;
	--sec-pad: 60px 65px;
	/* Vigbo preset variables (also referenced from inline styles inside page texts) */
	--PRESET-FONT--f__h1-font-family: var(--ff-head); --PRESET-FONT--f__h1-font-size: 40px; --PRESET-FONT--f__h1-line-height: 1.2; --PRESET-FONT--f__h1-font-weight: 400; --PRESET-FONT--f__h1-letter-spacing: .014em; --PRESET-FONT--f__h1-font-style: normal; --PRESET-FONT--f__h1-text-transform: none;
	--PRESET-FONT--f__h2-font-family: var(--ff-head); --PRESET-FONT--f__h2-font-size: 24px; --PRESET-FONT--f__h2-line-height: 1.6; --PRESET-FONT--f__h2-font-weight: 400; --PRESET-FONT--f__h2-letter-spacing: .062em; --PRESET-FONT--f__h2-font-style: normal; --PRESET-FONT--f__h2-text-transform: none;
	--PRESET-FONT--f__h3-font-family: var(--ff-head); --PRESET-FONT--f__h3-font-size: 16px; --PRESET-FONT--f__h3-line-height: 2; --PRESET-FONT--f__h3-font-weight: 400; --PRESET-FONT--f__h3-letter-spacing: .162em; --PRESET-FONT--f__h3-font-style: normal; --PRESET-FONT--f__h3-text-transform: none;
	--PRESET-FONT--f__h4-font-family: var(--ff-head); --PRESET-FONT--f__h4-font-size: 10px; --PRESET-FONT--f__h4-line-height: 2; --PRESET-FONT--f__h4-font-weight: 400; --PRESET-FONT--f__h4-letter-spacing: .262em; --PRESET-FONT--f__h4-font-style: normal; --PRESET-FONT--f__h4-text-transform: none;
	--PRESET-FONT--f__1-font-family: var(--ff-text); --PRESET-FONT--f__1-font-size: 16px; --PRESET-FONT--f__1-line-height: 2.2; --PRESET-FONT--f__1-font-weight: 400; --PRESET-FONT--f__1-letter-spacing: 0em; --PRESET-FONT--f__1-font-style: normal; --PRESET-FONT--f__1-text-transform: none;
	--PRESET-FONT--f__2-font-family: var(--ff-text); --PRESET-FONT--f__2-font-size: 13px; --PRESET-FONT--f__2-line-height: 2.4; --PRESET-FONT--f__2-font-weight: 400; --PRESET-FONT--f__2-letter-spacing: 0.05em; --PRESET-FONT--f__2-font-style: normal; --PRESET-FONT--f__2-text-transform: none;
	--PRESET-FONT--f__3-font-family: var(--ff-text); --PRESET-FONT--f__3-font-size: 10px; --PRESET-FONT--f__3-line-height: 2.4; --PRESET-FONT--f__3-font-weight: 400; --PRESET-FONT--f__3-letter-spacing: 0.15em; --PRESET-FONT--f__3-font-style: normal; --PRESET-FONT--f__3-text-transform: none;
}
@media (max-width: 1024px) {
	:root {
		--pad-x: 40px;
		--sec-pad: 40px;
		--PRESET-FONT--f__h1-font-size: calc(20px + 2vw);
		--PRESET-FONT--f__h2-font-size: calc(20px + .4vw);
		--PRESET-FONT--f__h3-font-size: calc(15.2px + .1vw);
		--PRESET-FONT--f__1-font-size: calc(15.2px + .1vw);
		--PRESET-FONT--f__2-font-size: calc(12px + .1vw);
	}
}
@media (max-width: 767px) {
	:root { --pad-x: 20px; --sec-pad: 20px; --PRESET-FONT--f__h1-letter-spacing: .01em; --PRESET-FONT--f__h2-letter-spacing: .058em; --PRESET-FONT--f__h3-letter-spacing: .158em; }
	.vg-acc-item summary { padding-right: 60px !important; }
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: #fff; color: #626262; font-family: "Times New Roman", Times, serif; font-size: 16px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
img { max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; transition: color .3s; }
a:hover { color: var(--c-accent); }
button { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); }

/* ------------------------------------------------------------------ presets */
.f__h1, .f__h2, .f__h3, .f__h4, .f__1, .f__2, .f__3 { font-weight: 400; font-style: normal; text-transform: none; }
.f__h1 { font-family: var(--PRESET-FONT--f__h1-font-family); font-size: var(--PRESET-FONT--f__h1-font-size); line-height: 1.2; letter-spacing: var(--PRESET-FONT--f__h1-letter-spacing); }
.f__h2 { font-family: var(--PRESET-FONT--f__h2-font-family); font-size: var(--PRESET-FONT--f__h2-font-size); line-height: 1.6; letter-spacing: var(--PRESET-FONT--f__h2-letter-spacing); }
.f__h3 { font-family: var(--PRESET-FONT--f__h3-font-family); font-size: var(--PRESET-FONT--f__h3-font-size); line-height: 2; letter-spacing: var(--PRESET-FONT--f__h3-letter-spacing); }
.f__h4 { font-family: var(--PRESET-FONT--f__h4-font-family); font-size: var(--PRESET-FONT--f__h4-font-size); line-height: 2; letter-spacing: var(--PRESET-FONT--f__h4-letter-spacing); }
.f__1 { font-family: var(--PRESET-FONT--f__1-font-family); font-size: var(--PRESET-FONT--f__1-font-size); line-height: 2.2; letter-spacing: 0; }
.f__2 { font-family: var(--PRESET-FONT--f__2-font-family); font-size: var(--PRESET-FONT--f__2-font-size); line-height: 2.4; letter-spacing: .05em; }
.f__3 { font-family: var(--PRESET-FONT--f__3-font-family); font-size: var(--PRESET-FONT--f__3-font-size); line-height: 2.4; letter-spacing: .15em; }

/* ------------------------------------------------------------------ header */
.lwf-header { background: #fff; position: relative; z-index: 50; }
.lwf-header__in { display: flex; align-items: center; justify-content: space-between; height: 70px; padding: 0 var(--pad-x); border-bottom: 1px solid var(--c-line); max-width: none; }
.lwf-logo { font-family: var(--ff-head); font-size: 14px; line-height: 14px; letter-spacing: .212em; white-space: nowrap; }
.lwf-logo a { color: #000; }
.lwf-logo a:hover { color: #000; }
.lwf-nav .lwf-menu { list-style: none; margin: 0 -21px 0 0; padding: 0; display: flex; }
.lwf-nav .lwf-menu > li { position: relative; margin: 5px 21px; }
.lwf-nav .lwf-menu > li > a { display: block; font-family: var(--ff-menu); font-weight: 700; font-size: 10px; line-height: 16px; letter-spacing: .2em; color: var(--c-text); text-transform: uppercase; margin-right: -.2em; }
.lwf-nav .lwf-menu > li > a:hover,
.lwf-nav .lwf-menu > li:hover > a,
.lwf-nav .lwf-menu > li.current-menu-item > a,
.lwf-nav .lwf-menu > li.current_page_item > a { color: var(--c-accent); }
.lwf-nav .sub-menu { list-style: none; margin: 0; padding: 15px 0 0; position: absolute; top: 16px; left: 50%; width: 160px; transform: translateX(-50%); opacity: 0; visibility: hidden; transition: opacity .3s, visibility .3s; }
.lwf-nav li:hover > .sub-menu, .lwf-nav li:focus-within > .sub-menu { opacity: 1; visibility: visible; }
.lwf-nav .sub-menu li { border-top: 1px solid rgba(255, 255, 255, .45); }
.lwf-nav .sub-menu li:first-child { border-top: 0; }
.lwf-nav .sub-menu a { display: block; background: var(--c-accent); color: #fff; font-family: var(--ff-menu); font-weight: 700; font-size: 9px; line-height: 11.25px; letter-spacing: .2em; text-align: center; padding: 13px 30px 15px 25px; }
.lwf-nav .sub-menu a:hover { color: #fff; background: #8a785f; }
.lwf-burger { display: none; padding: 3px 0 0; line-height: 0; }

.lwf-header--fixed { position: fixed; top: 0; left: 0; right: 0; transform: translateY(-101%); transition: transform .35s ease; z-index: 60; }
.lwf-header--fixed.is-visible { transform: none; }

/* mobile menu (tablet + phone) */
.lwf-mobile-menu { position: fixed; inset: 0; z-index: 100; background: #fff; overflow-y: auto; padding: 100px 40px; transform: translateX(100%); transition: transform .35s ease; }
.lwf-mobile-menu[hidden] { display: block; visibility: hidden; }
.lwf-mobile-menu.is-open { transform: none; visibility: visible; }
.lwf-mobile-menu__close { position: absolute; top: 14px; right: 19px; width: 20px; height: 20px; line-height: 0; }
.lwf-mobile-menu .lwf-menu, .lwf-mobile-menu .sub-menu { list-style: none; margin: 0; padding: 0; }
.lwf-mobile-menu .lwf-menu > li { margin: 0 0 30px; }
.lwf-mobile-menu .lwf-menu > li > a { font-family: var(--ff-menu); font-weight: 700; font-size: 10px; line-height: 16px; letter-spacing: .2em; color: var(--c-text); text-transform: uppercase; }
.lwf-mobile-menu .sub-menu { display: none; padding: 24px 0 0; }
.lwf-mobile-menu li.is-open > .sub-menu { display: block; }
.lwf-mobile-menu .sub-menu li { margin: 0 0 7px; }
.lwf-mobile-menu .sub-menu a { font-family: var(--ff-menu); font-weight: 700; font-size: 9px; line-height: 16px; letter-spacing: .2em; color: var(--c-text); }
.lwf-mobile-menu a:hover, .lwf-mobile-menu .current-menu-item > a { color: var(--c-accent); }
body.lwf-menu-open { overflow: hidden; }

@media (max-width: 1024px) {
	.lwf-nav { display: none; }
	.lwf-burger { display: block; }
}
@media (max-width: 767px) {
	.lwf-header__in { height: 53px; }
	.lwf-logo { letter-spacing: normal; }
}

/* ------------------------------------------------------------------ sections & grid */
.lwf-main { display: block; }
.lwf-page { margin: 0; }
.vg-section { position: relative; display: flex; align-items: center; padding: var(--sec-pad); margin: 0; background-repeat: no-repeat; }
.vg-section.vg-has-ov::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.vg-section > .vg-container { position: relative; z-index: 1; width: 100%; max-width: 2600px; margin: 0 auto; }
.vg-section.vg-np-t { padding-top: 0; }
.vg-section.vg-np-b { padding-bottom: 0; }
.vg-container { min-height: 10px; }
.vg-container > * { margin-top: 0; margin-bottom: 0; }
.lwf-page .wp-block-columns.vg-row, .editor-styles-wrapper .wp-block-columns.vg-row { display: flex; flex-wrap: nowrap !important; gap: 0; margin: 0 -10px; align-items: stretch !important; }
.vg-row > .wp-block-column.vg-col { flex-grow: 0; flex-shrink: 1; min-width: 0; padding: 0 10px; word-break: normal; overflow-wrap: break-word; position: relative; }
.vg-c1 { flex-basis: 4.1667% !important; } .vg-c2 { flex-basis: 8.3333% !important; } .vg-c3 { flex-basis: 12.5% !important; } .vg-c4 { flex-basis: 16.6667% !important; }
.vg-c5 { flex-basis: 20.8333% !important; } .vg-c6 { flex-basis: 25% !important; } .vg-c7 { flex-basis: 29.1667% !important; } .vg-c8 { flex-basis: 33.3333% !important; }
.vg-c9 { flex-basis: 37.5% !important; } .vg-c10 { flex-basis: 41.6667% !important; } .vg-c11 { flex-basis: 45.8333% !important; } .vg-c12 { flex-basis: 50% !important; }
.vg-c13 { flex-basis: 54.1667% !important; } .vg-c14 { flex-basis: 58.3333% !important; } .vg-c15 { flex-basis: 62.5% !important; } .vg-c16 { flex-basis: 66.6667% !important; }
.vg-c17 { flex-basis: 70.8333% !important; } .vg-c18 { flex-basis: 75% !important; } .vg-c19 { flex-basis: 79.1667% !important; } .vg-c20 { flex-basis: 83.3333% !important; }
.vg-c21 { flex-basis: 87.5% !important; } .vg-c22 { flex-basis: 91.6667% !important; } .vg-c23 { flex-basis: 95.8333% !important; } .vg-c24 { flex-basis: 100% !important; }
.vg-col > * { margin-top: 0 !important; margin-bottom: 20px !important; }
.vg-row:last-child > .vg-col > *:last-child { margin-bottom: 0 !important; }
.vg-col > .vg-vline { margin: 0 !important; }

.vg-sp.wp-block-spacer { margin: 0; }
@media (max-width: 1024px) { .vg-sp.wp-block-spacer { max-height: 60px; } }

@media (max-width: 767px) {
	.lwf-page .wp-block-columns.vg-row { flex-wrap: wrap !important; }
	.vg-row > .wp-block-column.vg-col { flex-basis: 100% !important; }
	.vg-row > .vg-col.vg-hide-m, .vg-col.vg-has-vline:not(:has(> :not(.vg-vline))) { display: none; }
	.vg-section > .vg-container { padding: 20px 0; }
	.vg-section.vg-hide-m-bg { background-image: none !important; }
	.vg-sp.wp-block-spacer { max-height: 40px; }
	.vg-m-center .vg-text, .vg-m-center .vg-text p { text-align: center; }
	.vg-m-center .vg-btn { justify-content: center; }
	.vg-row:last-child > .vg-col:not(:last-child) > *:last-child { margin-bottom: 20px !important; }
	.vg-text, .vg-text > * { max-width: 100% !important; }
	.vg-text { display: flow-root; }
}

/* ------------------------------------------------------------------ widgets */
.vg-title { margin: 0; padding: 0 15px; max-width: 100%; font-weight: 400; color: #000; overflow-wrap: break-word; }
.vg-title a { color: inherit; }
@media (max-width: 767px) { .vg-m-center .vg-title { padding-left: 15px !important; } }

.vg-text { color: var(--c-text); max-width: 100%; }
.vg-text > * { margin: 0; }
.vg-text p { margin: 0; }
.vg-text ul, .vg-text ol { margin: 1em 0; padding: 0 40px; line-height: 1.8; }
.vg-text li { margin: 0; list-style-position: inside; }
.vg-text li > p { margin: 0; }
.vg-text a { text-decoration: none; }
.vg-text a:hover { color: var(--c-accent); }
.vg-text strong, .vg-text b { font-weight: 700; }
.vg-text p:empty::before { content: "\00a0"; }

.vg-btn.wp-block-buttons { display: flex; flex-wrap: wrap; gap: 0; }
.vg-btn .wp-block-button { margin: 0; max-width: 100%; }
.vg-btn .wp-block-button__link { display: inline-block; max-width: 100%; border-radius: 0; border: 1px solid transparent; background: #000; color: #fff; padding: 18px 0; font-size: 10px; line-height: 21px; text-align: center; text-decoration: none; white-space: normal; transition: border .1s, background .3s, color .3s; box-shadow: none; }
.vg-btn .f__h4 .wp-block-button__link { font-family: var(--PRESET-FONT--f__h4-font-family); font-size: var(--PRESET-FONT--f__h4-font-size); letter-spacing: var(--PRESET-FONT--f__h4-letter-spacing); }
.vg-btn .f__h3 .wp-block-button__link { font-family: var(--PRESET-FONT--f__h3-font-family); font-size: var(--PRESET-FONT--f__h3-font-size); letter-spacing: var(--PRESET-FONT--f__h3-letter-spacing); line-height: 2; }
.vg-btn .f__1 .wp-block-button__link { font-family: var(--ff-text); font-size: var(--PRESET-FONT--f__1-font-size); }
.vg-btn .f__2 .wp-block-button__link { font-family: var(--ff-text); font-size: var(--PRESET-FONT--f__2-font-size); letter-spacing: .05em; }
.vg-btn .style-bold .wp-block-button__link { font-weight: 700; }
@media (max-width: 767px) { .vg-btn .wp-block-button { width: 100%; } .vg-btn .wp-block-button__link { width: 100% !important; } }

:where(.vg-img).wp-block-image { margin: 0 auto; text-align: center; position: relative; }
.vg-img.wp-block-image img { display: inline-block; max-width: 100%; height: auto; vertical-align: top; }
.vg-img.wp-block-image a { display: inline-block; max-width: 100%; position: relative; vertical-align: top; }
.vg-shape-circle img { border-radius: 50%; }
.vg-hover-color a::after, .vg-hover-color:not(:has(a))::after { content: ""; position: absolute; inset: 0; background: var(--vg-ov, rgba(0, 0, 0, .05)); opacity: 0; transition: opacity .3s; pointer-events: none; }
.vg-hover-color:hover a::after, .vg-hover-color:not(:has(a)):hover::after { opacity: 1; }
.vg-hover-scale { overflow: hidden; }
.vg-hover-scale img { transition: transform .6s ease; }
.vg-hover-scale:hover img { transform: scale(1.06); }

.wp-block-separator.vg-line { border: 0; height: 9px; margin: 0; opacity: 1; background-color: transparent; background-repeat: repeat-x; background-position: center; color: transparent; }
@media (max-width: 767px) { .wp-block-separator.vg-line { width: 100% !important; } }

.vg-has-vline { position: relative; }
.vg-vline { position: absolute; left: 10px; right: 10px; top: calc((100% - 20px) * var(--vt, .165)); height: calc((100% - 20px) * var(--vh, .67)); background-repeat: repeat-y; background-position: center; }
@media (max-width: 767px) { .vg-vline { display: none; } }

/* accordion (FAQ) */
.vg-acc { color: var(--c-text); }
.vg-acc-item { margin: 0 0 20px; }
.vg-acc-item:last-child { margin-bottom: 0; }
.vg-acc-item summary { list-style: none; display: block; position: relative; padding-right: 66px; cursor: pointer; color: var(--c-text); font-family: var(--PRESET-FONT--f__h3-font-family); font-size: var(--PRESET-FONT--f__h3-font-size); line-height: 2; letter-spacing: var(--PRESET-FONT--f__h3-letter-spacing); }
.vg-acc-item summary::-webkit-details-marker { display: none; }
.vg-acc-item summary::after { content: ""; position: absolute; right: 0; top: 50%; width: 25px; height: 25px; margin-top: -12.5px; background: no-repeat center / 25px 25px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25 25'%3E%3Cpath d='M12.5.75a.75.75 0 01.743.648l.007.102v10.25H23.5a.75.75 0 01.102 1.493l-.102.007H13.25V23.5a.75.75 0 01-1.493.102l-.007-.102V13.25H1.5a.75.75 0 01-.102-1.493l.102-.007h10.25V1.5a.75.75 0 01.75-.75z' fill='%23303030'/%3E%3C/svg%3E"); }
.vg-acc-item[open] summary::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25 25'%3E%3Cpath d='M23.5 11.75a.75.75 0 01.102 1.493l-.102.007h-22a.75.75 0 01-.102-1.493L1.5 11.75h22z' fill='%23303030'/%3E%3C/svg%3E"); }
.vg-acc-item.vg-sum-f__h2 summary { font-size: var(--PRESET-FONT--f__h2-font-size); line-height: 1.6; letter-spacing: var(--PRESET-FONT--f__h2-letter-spacing); }
.vg-acc-item > p { margin: 0; padding-top: 20px; color: var(--c-text); }

/* ------------------------------------------------------------------ video */
.lwf-video { position: relative; }
.lwf-video__cover { position: relative; display: block; width: 100%; overflow: hidden; background: #111; }
.lwf-video__img { position: absolute; inset: 0; width: 100%; height: 100% !important; object-fit: cover; max-width: none; }
.lwf-video__play { position: absolute; left: 50%; top: 50%; width: 50px; height: 50px; margin: -25px 0 0 -25px; border-radius: 50%; background: #fff; display: flex; align-items: center; justify-content: center; transition: transform .3s; }
.lwf-video__play svg { margin-left: 3px; }
.lwf-video__cover:hover .lwf-video__play { transform: scale(1.1); }
.lwf-video__desc { padding-top: 5px; color: var(--c-text); max-width: 100%; }

.lwf-lightbox { position: fixed; inset: 0; z-index: 200; display: flex; align-items: center; justify-content: center; padding: 40px; }
.lwf-lightbox[hidden] { display: none; }
.lwf-lightbox__back { position: absolute; inset: 0; background: rgba(0, 0, 0, .5); }
.lwf-lightbox__close { position: absolute; top: 20px; right: 20px; width: 14px; height: 14px; line-height: 0; z-index: 2; }
.lwf-lightbox__frame { position: relative; width: min(900px, 100%, calc((100vh - 80px) * 16 / 9)); aspect-ratio: 16 / 9; background: #000; }
.lwf-lightbox__frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
@media (max-width: 767px) { .lwf-lightbox { padding: 20px; } }

/* ------------------------------------------------------------------ forms (Flo Forms dressed as the Vigbo form) */
.lwf-form .flo-form { margin: 0; }
.lwf-form .form-style1 { font-family: var(--ff-text); }
.lwf-form .field-row { margin: 0 0 22px; padding: 0; width: 100%; }
.lwf-form .flo-form .left_column, .lwf-form .flo-form .right_column { width: calc(50% - 11px) !important; float: left; padding: 0 !important; margin: 0; }
.lwf-form .flo-form .right_column { margin-left: 22px; }
.lwf-form .flo-form .field-row { padding: 0 !important; float: none; margin: 0 0 22px !important; }
.lwf-form .flo-form .submit-row { text-align: center; margin: 22px 0 0 !important; }
.lwf-form .clear { clear: both; }
.lwf-form label.main-label { display: none; }
.lwf-form input[type="text"], .lwf-form input[type="email"], .lwf-form select, .lwf-form textarea {
	display: block; width: 100%; height: 55px; margin: 0; padding: 15px 30px 14px; border: 1px solid #000; border-radius: 27px; background: #fff; color: #000;
	font-family: var(--ff-text); font-size: 10px; line-height: 24px; letter-spacing: .15em; outline: none; box-shadow: none; -webkit-appearance: none; appearance: none;
}
.lwf-form textarea { height: 132px; resize: vertical; }
.lwf-form select { background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0h10L5 6z' fill='%23000'/%3E%3C/svg%3E") no-repeat right 25px center; padding-right: 50px; cursor: pointer; }
.lwf-form select.is-placeholder { color: #000; }
.lwf-form ::placeholder { color: #000; opacity: 1; }
.lwf-form .field-row label.error, .lwf-form label.error { display: block; color: #c0392b; font-size: 10px; letter-spacing: .05em; padding: 4px 30px 0; font-family: var(--ff-text); }
.lwf-form input.error, .lwf-form select.error, .lwf-form textarea.error { border-color: #c0392b; }
.lwf-form .flo-form button[type="submit"], .lwf-form .flo-form input[type="submit"], .lwf-form .flo-form .flo-submit, .lwf-form .flo-form .flo-submit-button {
	display: block; margin: 22px auto 0; min-width: 154px; height: 50px; padding: 15px 60px; border: 0; border-radius: 27px; background: #000; color: #fff;
	font-family: var(--ff-head); font-size: 13px; line-height: 18px; letter-spacing: 1px; cursor: pointer; transition: background .3s, color .3s;
}
.lwf-form .flo-form button[type="submit"]:hover, .lwf-form .flo-form input[type="submit"]:hover { background: #ccc; color: #fff; }
.lwf-form .flo-response, .lwf-form .response, .lwf-form .success { font-family: var(--ff-text); font-size: 13px; letter-spacing: .05em; color: #000; text-align: center; padding-top: 10px; }
@media (max-width: 767px) {
	.lwf-modal { padding: 10px; }
	.lwf-modal__box { padding: 50px 20px 30px; max-height: calc(100vh - 20px); }
	.lwf-form .flo-form .left_column, .lwf-form .flo-form .right_column { width: 100% !important; float: none; margin-left: 0; }
}

/* popup form on Packages ("CHECK AVAILABILITY") */
.lwf-form-popup { display: flex; justify-content: center; }
.lwf-form-open { display: inline-block; padding: 16px 40px; background: #a89f79; color: #fff; font-family: var(--ff-head); font-size: 10px; line-height: 20px; letter-spacing: 2px; transition: background .3s, color .3s; }
.lwf-form-open:hover { background: #8f8565; color: #000; }
.lwf-modal { position: fixed; inset: 0; z-index: 150; display: flex; align-items: center; justify-content: center; padding: 20px; }
.lwf-modal[hidden] { display: none; }
.lwf-modal__back { position: absolute; inset: 0; background: rgba(0, 0, 0, .5); }
.lwf-modal__box { position: relative; width: 100%; max-width: 600px; max-height: calc(100vh - 40px); overflow-y: auto; background: #fff; padding: 60px 40px 40px; }
.lwf-modal__close { position: absolute; top: 20px; right: 20px; width: 16px; height: 16px; line-height: 0; }
.lwf-modal .lwf-form input[type="text"], .lwf-modal .lwf-form input[type="email"], .lwf-modal .lwf-form select, .lwf-modal .lwf-form textarea { border-radius: 0; font-family: Arial, sans-serif; letter-spacing: .1em; }
.lwf-modal .lwf-form .field-row { margin-bottom: 20px; }
.lwf-modal .lwf-form .flo-form button[type="submit"], .lwf-modal .lwf-form .flo-form input[type="submit"] { border-radius: 0; background: #a89f79; font-size: 10px; letter-spacing: 2px; padding: 16px 40px; margin-top: 30px; }
.lwf-modal .lwf-form .flo-form button[type="submit"]:hover, .lwf-modal .lwf-form .flo-form input[type="submit"]:hover { background: #8f8565; color: #000; }

/* ------------------------------------------------------------------ footer */
.lwf-footer { background: #000; position: relative; }
.lwf-footer__menu { padding: 60px var(--pad-x) 0; }
.lwf-footer-menu { list-style: none; margin: 0 -15px; padding: 0; text-align: center; }
.lwf-footer-menu li { display: inline-block; white-space: nowrap; margin: 0 15px; }
.lwf-footer-menu a { color: #fff; margin-right: -.2em; text-transform: uppercase; }
.lwf-footer-menu a:hover { color: #ccc; }
.lwf-footer__bottom { height: 92px; }
.lwf-go-up { position: fixed; right: 0; bottom: 65px; width: 65px; padding: 10px; color: var(--c-text); line-height: 0; display: flex; justify-content: center; opacity: 0; visibility: hidden; transition: opacity .3s, visibility .3s, color .3s; z-index: 40; }
.lwf-go-up.is-visible { opacity: 1; visibility: visible; }
.lwf-go-up:hover { color: var(--c-accent); }
@media (max-width: 1024px) {
	.lwf-go-up { position: static; width: 100%; padding: 0; margin: 0; height: 83px; background: #fff; opacity: 1; visibility: visible; align-items: center; }
}
@media (max-width: 767px) {
	.lwf-footer__menu { padding: 40px 20px 10px; }
	.lwf-footer-menu { margin: 0; }
	.lwf-footer-menu li { display: block; margin: 30px 0; }
	.lwf-footer-menu li:first-child { margin-top: 0; }
	.lwf-footer-menu li:last-child { margin-bottom: 0; }
}

/* simple fallback pages (404, archives) */
.lwf-simple { min-height: 50vh; }
.lwf-simple .vg-title { padding: 0; margin-bottom: 20px; text-align: center; }
.lwf-simple .vg-text { text-align: center; }
