:root {--berry: #5F0027;--orange: #B93513;--cream: #FFF0DB;--berry-dark: #4c001f;--orange-dark: #942a0f;--cream-dark: #ffdcac;--berry-light: #880038;--orange-light: #d53d16;--cream-light: #fff1df;--overlay-black: rgba(0, 0, 0, 0.5);--error-color: #b50f23;--warning-color: #dc8a07;--success-color: #3d7a0e;--header-font-family: "Cinzel";--body-font-family: "Montserrat";--font-awesome: "Font Awesome 7 Free";--fw-thin: 100;--fw-extra-light: 200;--fw-light: 300;--fw-normal: 400;--fw-medium: 500;--fw-semi-bold: 600;--fw-bold: 700;--fw-extra-bold: 800;--fw-heavy: 900;--border-radius-pill: 100rem;--standard-transition: 0.3s ease-in-out;--box-shadow: 0 22px 52px rgba(0, 0, 0, 0.12);}html {scroll-behavior: smooth;box-sizing: border-box;}body {display: flex;flex-direction: column;min-height: 100vh;background-color: var(--cream);}*, *::before, *::after {box-sizing: inherit;}h1, h2, h3, h4, h5, h6 {line-height: 1.2;font-family: var(--header-font-family), sans-serif;font-weight: var(--fw-bold);margin-top: 0;margin-bottom: 1rem;}h1 {font-size: 2.5rem;}h2 {font-size: 2rem;}h3 {font-size: 1.5rem }h4 {font-size: 1.5rem;}h5, h6 {font-size: 1.2rem;}body, button, input, select, optgroup, textarea {font-family: var(--body-font-family), sans-serif;font-size: 1.2rem;font-weight: var(--fw-bold);line-height: 1.5;}p {margin-top: 0;margin-bottom: 1em;&:has(.alignleft) {text-align: start;}&:has(.aligncenter) {text-align: center;}&:has(.alignright) {text-align: end;}}a {text-decoration: underline;color: var(--berry);transition: color var(--standard-transition);&:hover {color: var(--orange);}}em, i {font-style: italic;}strong {font-style: var(--fw-bold);}blockquote {margin: 0 0.5em;padding: 0 1em;border-left: solid 3px var(--berry);}address {font-style: normal;}small {font-size: 75%;}big {font-size: 125%;}.text-berry {color: var(--berry);}.text-orange {color: var(--orange);}.text-cream {color: var(--cream);}.text-white {color: #ffffff;}.text-black {color: #000000;}.text-centered {text-align: center;}.uppercase {text-transform: uppercase;}.overlay {position: absolute;inset: 0;z-index: 10;}.background-image {height: 100%;width: 100%;object-fit: cover;object-position: center;}.list-style-none, .list-style-none ul, .list-style-none ol {list-style: none;margin: 0;padding: 0;}.container {width: 100%;max-width: 1400px;padding-right: 2rem;padding-left: 2rem;margin-left: auto;margin-right: auto;}.column-container {display: flex;flex-direction: column;flex-wrap: wrap;}.column {min-width: 10%;flex: 1;}.section {padding-top: 4rem;padding-bottom: 4rem;}.bg-berry {background-color: var(--berry);}.bg-orange {background-color: var(--orange);}.bg-berry, .bg-orange {h1, h2, h3, h4, h5, h6, p, address {color: var(--cream);}a {text-decoration: underline;color: var(--cream);transition: color var(--standard-transition);&:hover {color: var(--cream-dark);}}}.bg-cream {background-color: var(--cream);h1, h2, h3, h4, h5, h6, p, address {color: #000000;}p:last-of-type {margin-bottom: 0;}a {text-decoration: underline;color: var(--berry);transition: color var(--standard-transition);&:hover {color: var(--orange);}}}.header {position: fixed;top: 0;width: 100%;background: var(--berry);box-shadow: var(--box-shadow);transition: background-color var(--standard-transition);z-index: 20;.container {display: flex;justify-content: space-between;align-items: center;gap: 2rem;padding-right: 0;}.logo {margin: 0;font-size: 1.5rem;font-family: var(--header-font-family), monospace;color: var(--cream);text-decoration: none;}.mobile-menu-open {position: relative;font-size: 2.5rem;color: var(--cream);padding: 1rem;&::before {display: block;content: ' ';position: absolute;inset: 0;transform: scaleX(0);background: var(--berry-dark);transition: transform var(--standard-transition);}&:hover::before {transform: scaleX(1);}i {position: relative;}}}.main-menu-nav {display: none;justify-content: flex-end;align-items: center;.button {margin-left: 1rem;}}.main-menu-list {display: flex;flex-direction: row;align-items: center;> .menu-item {position: relative;&::before {display: block;content: ' ';position: absolute;inset: 0;background: var(--berry-dark);transform: scaleX(0);transition: transform var(--standard-transition);}&:hover::before {transform: scaleX(1);}> a {position: relative;display: flex;align-items: center;gap: 0.5rem;padding: 2rem 1rem;text-decoration: none;color: var(--cream);i {font-size: 0.8em;}}}.sub-menu {position: absolute;top: 100%;box-shadow: var(--box-shadow);min-width: 100%;width: max-content;visibility: hidden;opacity: 0;transition: visibility var(--standard-transition), opacity var(--standard-transition);.menu-item a {display: flex;width: 100%;padding: 0.5rem 1rem;background: var(--orange);color: var(--cream);text-decoration: none;transition: background-color var(--standard-transition);&:hover {background-color: var(--berry-dark);}}}.menu-item-has-children:hover > .sub-menu {visibility: visible;opacity: 1;}}.mobile-menu {position: relative;z-index: 20;.overlay {position: fixed;inset: 0;background-color: var(--overlay-black);visibility: hidden;opacity: 0;transition: visibility var(--standard-transition), opacity var(--standard-transition);}.dialog {position: fixed;top: 0;bottom: 0;left: 100%;width: 100%;z-index: 30;display: flex;flex-direction: column;background: var(--cream);transition: transform var(--standard-transition);}.dialog-header {display: flex;justify-content: flex-end;}.mobile-menu-close {padding: 1rem;line-height: 1;font-size: 1.5rem;color: var(--berry);transition: color var(--standard-transition), background-color var(--standard-transition);&:hover {color: var(--cream);background-color: var(--berry);}}&.open {.overlay {visibility: visible;opacity: 1;}.dialog {transform: translateX(-100%);}}}body:has(.mobile-menu.open) {overflow: hidden;}.mobile-menu-list {display: flex;flex-direction: column;.menu-item-wrapper {display: flex;align-items: stretch;a, i {padding: 1rem;color: var(--berry);text-decoration: none;transition: background-color var(--standard-transition), color var(--standard-transition);&:hover {background-color: var(--berry);color: var(--cream);}}a {flex-grow: 1;}i {display: flex;align-items: center;width: fit-content;&::before {display: block;transition: transform var(--standard-transition);}&.open::before {transform: rotate(180deg);}}}.sub-menu {flex-direction: column;height: 0;overflow: hidden;a {padding-left: 2rem;}}}.button {display: flex;justify-content: center;align-items: center;text-align: center;text-decoration: none;background: none;border: none;padding: 0.5rem 2rem;width: fit-content;cursor: pointer;transition: background-color var(--standard-transition), border-color var(--standard-transition), color var(--standard-transition);}.button-filled-cream {background-color: var(--cream);color: var(--berry);&:hover {background-color: var(--orange);color: var(--cream);}}.button-filled-berry {background-color: var(--berry);color: var(--cream);&:hover {background-color: var(--orange);color: var(--cream);}}.banner, .not-found-banner {position: relative;display: flex;flex-direction: column;justify-content: center;.image {position: absolute;inset: 0;height: 100%;width: 100%;object-fit: cover;z-index: -2;}.container {display: flex;justify-content: center;}.card {background: var(--cream);width: 100%;padding: 1rem;.card-inner {border: 1px solid var(--berry);padding: 1rem;}}}.banner {min-height: 100vh;}.page-not-found {display: flex;flex-direction: column;flex-grow: 1;}.not-found-banner {flex-grow: 1;h1 {text-align: center;}.button {margin: auto;}}.wedding-countdown {padding: 4rem 0;}.countdown {display: flex;flex-direction: column;justify-content: center;align-items: center;margin-top: 2rem;.countdown-component {display: flex;flex-direction: column;align-items: center;width: 100%;padding: 2rem 0;&:not(:last-of-type) {border-bottom: 1px solid var(--cream);}}.value, .name {font-family: var(--header-font-family), sans-serif;margin: 0;}.value {font-size: 3rem;}.name {font-size: 2rem;font-weight: var(--fw-light);}}.details {.content-column {padding: 2rem;p:last-of-type {margin-bottom: 0;}}iframe {width: 100%;height: 100%;min-height: 300px;}}.wedding-menus {.container {display: flex;flex-direction: column;align-items: center;gap: 2rem;}.single-wedding-menu {width: 100%;max-width: 800px;padding: 2rem;}}.accommodation {ul {display: grid;grid-template-columns: 1fr;gap: 2rem;list-style: none;margin: 0;padding: 0;}li {background: var(--orange);transition: transform var(--standard-transition);&:hover {transform: translateY(-1rem);}a {display: flex;justify-content: center;align-items: center;height: 100%;padding: 2rem;color: var(--cream);text-decoration: none;}}}.rsvp-form-wrapper {padding: 1rem;}.rsvp-form {--accent-color: var(--berry);display: flex;flex-direction: column;gap: 2rem;.cf-row {display: flex;flex-direction: column;}.cf-submit-row {display: flex;justify-content: flex-end;align-items: center;gap: 2rem;}.cf-row-repeater {border: 2px solid var(--accent-color);padding: 1rem;}.cf-label, p.cf-label {margin-bottom: 1rem;}.repeater-content-show {border-color: var(--accent-color);}.cf7-field-repeater-reponese, .repeater-field-content > div {display: flex;flex-direction: column;gap: 2rem;}.cf7-repeater, .repeater-field-header-title-text {padding: 0;}.repeater-field-footer {display: flex;justify-content: flex-end;margin-top: 2rem;margin-bottom: 0;}.repeater-field-button-add {display: flex;justify-content: center;align-items: center;text-align: center;text-decoration: none;background: transparent;color: var(--accent-color);border: 2px solid var(--accent-color);border-radius: 0 !important;padding: 0.5rem 2rem !important;opacity: 1 !important;width: fit-content;transition: background-color var(--standard-transition), color var(--standard-transition);&:hover {background-color: var(--accent-color);color: var(--cream);}}label {display: flex;flex-direction: column;gap: 0.25rem;}input, textarea {background: transparent;border: 2px solid var(--accent-color);border-radius: 4px;padding: 0.5rem 0.75rem;&:focus-visible {outline: none;}}.wpcf7-form-control-wrap {display: block;input:not([type="checkbox"]):not([type="radio"]), textarea {width: 100%;}textarea {resize: vertical;}}.wpcf7-not-valid-tip {color: var(--error-color);}.wpcf7-spinner {position: static;width: auto;height: auto;background: none;color: var(--accent-color);opacity: 1;margin: 0;&::before {display: none;}&::after {display: block;content: "\f110";font-family: var(--font-awesome), sans-serif;animation: fa-spin 2s infinite ease-in-out;}}.wpcf7-not-valid-tip {color: var(--error-color);}&.invalid .wpcf7-response-output {border-color: var(--error-color) !important;color: var(--error-color) !important;}&.sent .wpcf7-response-output {border-color: var(--success-color) !important;color: var(--success-color) !important;}.recaptcha-disclaimer {text-align: center;font-size: 0.8em;}}.grecaptcha-badge {visibility: hidden !important;}.footer {background-color: var(--berry);.copyright-text {font-size: 1rem;font-weight: 400;padding-top: 1rem;padding-bottom: 1rem;margin: 0;color: var(--cream);}}@media (min-width: 601px) {body.admin-bar {.header, .mobile-menu .dialog {top: var(--wp-admin--admin-bar--height, 32px);}}}@media (min-width: 768px) {.header .logo {font-size: 2rem;}.mobile-menu .dialog {width: 400px;}.banner, .not-found-banner {.card {width: 80%;padding: 2rem;.card-inner {padding: 2rem;}}}.countdown {flex-direction: row;.countdown-component {width: 200px;padding: 0 2rem;&:not(:last-of-type) {border-bottom: none;border-right: 1px solid var(--cream);}}}.details iframe {min-height: 600px;}.accommodation ul {grid-template-columns: 1fr 1fr;}.rsvp-form-wrapper {padding: 2rem;}}@media (min-width: 1024px) {h1 {font-size: 4rem;}h2 {font-size: 2.5rem;}h3 {font-size: 1.8rem }h4 {font-size: 1.5rem;}h5 {font-size: 1.25rem;}h6 {font-size: 1.2rem;}.section {padding-top: 8rem;padding-bottom: 8rem;}.column-container {flex-direction: row;}.column-container-reverse {flex-direction: row-reverse;}.banner {.container {justify-content: flex-start;}.card {width: 50%;}}}@media (min-width: 1200px) {.header {.container {padding-right: 2rem;}.mobile-menu-open {display: none;}}.main-menu-nav {display: flex;}.accommodation ul {grid-template-columns: 1fr 1fr 1fr 1fr;}}@media (min-width: 1400px) {.banner {justify-content: flex-end;.card {margin-bottom: 15vh;}}}