@charset "UTF-8";
/* ==========================================
   @font-face declarations
   Fonts live under assets/fonts/<family-folder>/ as flat webfont files
   (eot, woff2, woff, ttf, [svg]) — no source OTF kept alongside these.
   ========================================== */
/* ---------- Editors Note ----------
   iFonts, "Demo for Personal Use" — see assets/fonts/editors-note/iFonts-License.txt;
   get a commercial licence from https://ifonts.xyz/editors-note-font-family.html
   before shipping this live. */
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-Hairline.eot");
  src: url("../fonts/editors-note/EditorsNote-Hairline.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-Hairline.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-Hairline.woff") format("woff"), url("../fonts/editors-note/EditorsNote-Hairline.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-Hairline.svg#EditorsNote-Hairline") format("svg");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-HairlineItalic.eot");
  src: url("../fonts/editors-note/EditorsNote-HairlineItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-HairlineItalic.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-HairlineItalic.woff") format("woff"), url("../fonts/editors-note/EditorsNote-HairlineItalic.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-HairlineItalic.svg#EditorsNote-HairlineItalic") format("svg");
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-Thin.eot");
  src: url("../fonts/editors-note/EditorsNote-Thin.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-Thin.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-Thin.woff") format("woff"), url("../fonts/editors-note/EditorsNote-Thin.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-Thin.svg#EditorsNote-Thin") format("svg");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-ThinItalic.eot");
  src: url("../fonts/editors-note/EditorsNote-ThinItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-ThinItalic.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-ThinItalic.woff") format("woff"), url("../fonts/editors-note/EditorsNote-ThinItalic.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-ThinItalic.svg#EditorsNote-ThinItalic") format("svg");
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-Extralight.eot");
  src: url("../fonts/editors-note/EditorsNote-Extralight.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-Extralight.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-Extralight.woff") format("woff"), url("../fonts/editors-note/EditorsNote-Extralight.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-Extralight.svg#EditorsNote-Extralight") format("svg");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-ExtralightItalic.eot");
  src: url("../fonts/editors-note/EditorsNote-ExtralightItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-ExtralightItalic.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-ExtralightItalic.woff") format("woff"), url("../fonts/editors-note/EditorsNote-ExtralightItalic.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-ExtralightItalic.svg#EditorsNote-ExtralightItalic") format("svg");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-Light.eot");
  src: url("../fonts/editors-note/EditorsNote-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-Light.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-Light.woff") format("woff"), url("../fonts/editors-note/EditorsNote-Light.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-Light.svg#EditorsNote-Light") format("svg");
  font-weight: 350;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-LightItalic.eot");
  src: url("../fonts/editors-note/EditorsNote-LightItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-LightItalic.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-LightItalic.woff") format("woff"), url("../fonts/editors-note/EditorsNote-LightItalic.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-LightItalic.svg#EditorsNote-LightItalic") format("svg");
  font-weight: 350;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-Regular.eot");
  src: url("../fonts/editors-note/EditorsNote-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-Regular.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-Regular.woff") format("woff"), url("../fonts/editors-note/EditorsNote-Regular.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-Regular.svg#EditorsNote-Regular") format("svg");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-Italic.eot");
  src: url("../fonts/editors-note/EditorsNote-Italic.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-Italic.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-Italic.woff") format("woff"), url("../fonts/editors-note/EditorsNote-Italic.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-Italic.svg#EditorsNote-Italic") format("svg");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-Medium.eot");
  src: url("../fonts/editors-note/EditorsNote-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-Medium.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-Medium.woff") format("woff"), url("../fonts/editors-note/EditorsNote-Medium.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-Medium.svg#EditorsNote-Medium") format("svg");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-MediumItalic.eot");
  src: url("../fonts/editors-note/EditorsNote-MediumItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-MediumItalic.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-MediumItalic.woff") format("woff"), url("../fonts/editors-note/EditorsNote-MediumItalic.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-MediumItalic.svg#EditorsNote-MediumItalic") format("svg");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-Semibold.eot");
  src: url("../fonts/editors-note/EditorsNote-Semibold.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-Semibold.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-Semibold.woff") format("woff"), url("../fonts/editors-note/EditorsNote-Semibold.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-Semibold.svg#EditorsNote-Semibold") format("svg");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-SemiboldItalic.eot");
  src: url("../fonts/editors-note/EditorsNote-SemiboldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-SemiboldItalic.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-SemiboldItalic.woff") format("woff"), url("../fonts/editors-note/EditorsNote-SemiboldItalic.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-SemiboldItalic.svg#EditorsNote-SemiboldItalic") format("svg");
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-Bold.eot");
  src: url("../fonts/editors-note/EditorsNote-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-Bold.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-Bold.woff") format("woff"), url("../fonts/editors-note/EditorsNote-Bold.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-Bold.svg#EditorsNote-Bold") format("svg");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Editors Note";
  src: url("../fonts/editors-note/EditorsNote-BoldItalic.eot");
  src: url("../fonts/editors-note/EditorsNote-BoldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/editors-note/EditorsNote-BoldItalic.woff2") format("woff2"), url("../fonts/editors-note/EditorsNote-BoldItalic.woff") format("woff"), url("../fonts/editors-note/EditorsNote-BoldItalic.ttf") format("truetype"), url("../fonts/editors-note/EditorsNote-BoldItalic.svg#EditorsNote-BoldItalic") format("svg");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
/* ---------- General Sans ----------
   assets/fonts/general-sans/ (no .svg files supplied for this family).
   GeneralSans-Variable[Italic] files also exist there but aren't wired up
   below — add a font-weight-range @font-face for them if variable-weight
   text is needed later. */
@font-face {
  font-family: "General Sans";
  src: url("../fonts/general-sans/GeneralSans-Extralight.eot");
  src: url("../fonts/general-sans/GeneralSans-Extralight.eot?#iefix") format("embedded-opentype"), url("../fonts/general-sans/GeneralSans-Extralight.woff2") format("woff2"), url("../fonts/general-sans/GeneralSans-Extralight.woff") format("woff"), url("../fonts/general-sans/GeneralSans-Extralight.ttf") format("truetype");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../fonts/general-sans/GeneralSans-ExtralightItalic.eot");
  src: url("../fonts/general-sans/GeneralSans-ExtralightItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/general-sans/GeneralSans-ExtralightItalic.woff2") format("woff2"), url("../fonts/general-sans/GeneralSans-ExtralightItalic.woff") format("woff"), url("../fonts/general-sans/GeneralSans-ExtralightItalic.ttf") format("truetype");
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../fonts/general-sans/GeneralSans-Light.eot");
  src: url("../fonts/general-sans/GeneralSans-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/general-sans/GeneralSans-Light.woff2") format("woff2"), url("../fonts/general-sans/GeneralSans-Light.woff") format("woff"), url("../fonts/general-sans/GeneralSans-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../fonts/general-sans/GeneralSans-LightItalic.eot");
  src: url("../fonts/general-sans/GeneralSans-LightItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/general-sans/GeneralSans-LightItalic.woff2") format("woff2"), url("../fonts/general-sans/GeneralSans-LightItalic.woff") format("woff"), url("../fonts/general-sans/GeneralSans-LightItalic.ttf") format("truetype");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../fonts/general-sans/GeneralSans-Regular.eot");
  src: url("../fonts/general-sans/GeneralSans-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/general-sans/GeneralSans-Regular.woff2") format("woff2"), url("../fonts/general-sans/GeneralSans-Regular.woff") format("woff"), url("../fonts/general-sans/GeneralSans-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../fonts/general-sans/GeneralSans-Italic.eot");
  src: url("../fonts/general-sans/GeneralSans-Italic.eot?#iefix") format("embedded-opentype"), url("../fonts/general-sans/GeneralSans-Italic.woff2") format("woff2"), url("../fonts/general-sans/GeneralSans-Italic.woff") format("woff"), url("../fonts/general-sans/GeneralSans-Italic.ttf") format("truetype");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../fonts/general-sans/GeneralSans-Medium.eot");
  src: url("../fonts/general-sans/GeneralSans-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/general-sans/GeneralSans-Medium.woff2") format("woff2"), url("../fonts/general-sans/GeneralSans-Medium.woff") format("woff"), url("../fonts/general-sans/GeneralSans-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../fonts/general-sans/GeneralSans-MediumItalic.eot");
  src: url("../fonts/general-sans/GeneralSans-MediumItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/general-sans/GeneralSans-MediumItalic.woff2") format("woff2"), url("../fonts/general-sans/GeneralSans-MediumItalic.woff") format("woff"), url("../fonts/general-sans/GeneralSans-MediumItalic.ttf") format("truetype");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../fonts/general-sans/GeneralSans-Semibold.eot");
  src: url("../fonts/general-sans/GeneralSans-Semibold.eot?#iefix") format("embedded-opentype"), url("../fonts/general-sans/GeneralSans-Semibold.woff2") format("woff2"), url("../fonts/general-sans/GeneralSans-Semibold.woff") format("woff"), url("../fonts/general-sans/GeneralSans-Semibold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../fonts/general-sans/GeneralSans-SemiboldItalic.eot");
  src: url("../fonts/general-sans/GeneralSans-SemiboldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/general-sans/GeneralSans-SemiboldItalic.woff2") format("woff2"), url("../fonts/general-sans/GeneralSans-SemiboldItalic.woff") format("woff"), url("../fonts/general-sans/GeneralSans-SemiboldItalic.ttf") format("truetype");
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../fonts/general-sans/GeneralSans-Bold.eot");
  src: url("../fonts/general-sans/GeneralSans-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/general-sans/GeneralSans-Bold.woff2") format("woff2"), url("../fonts/general-sans/GeneralSans-Bold.woff") format("woff"), url("../fonts/general-sans/GeneralSans-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../fonts/general-sans/GeneralSans-BoldItalic.eot");
  src: url("../fonts/general-sans/GeneralSans-BoldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/general-sans/GeneralSans-BoldItalic.woff2") format("woff2"), url("../fonts/general-sans/GeneralSans-BoldItalic.woff") format("woff"), url("../fonts/general-sans/GeneralSans-BoldItalic.ttf") format("truetype");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

:root {
  --color-text: #000;
  --color-bg: #ECE5D4;
  --color-white:#ffffff;
  --button-bg:#3C0000;
  --font-heading: "Editors Note";
  --font-base: "General Sans", sans-serif;
  --size-container: 1440px;
}

html {
  scroll-behavior: smooth;
  font-size: 18px;
}

body {
  font-family: var(--font-base);
  font-size: 1rem;
  line-height: 1.333rem;
  background-color: var(--color-bg);
  color: var(--color-text);
}

a {
  color: inherit;
  text-decoration: none;
}

img {
  max-width: 100%;
  display: block;
}

ul, ol {
  list-style: none;
}

strong {
  font-weight: 600;
}

.primary-btn {
  display: inline-block;
  background-color: var(--button-bg);
  color: #F4F0E5;
  padding: 0.667rem 1.333rem;
  border-radius: 2px;
  font-size: 1.111rem;
  line-height: 1.444rem;
  box-shadow: 0px 4px 10.9px 0px rgba(130, 4, 24, 0.2509803922);
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
.primary-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0px 10px 20px 0px rgba(130, 4, 24, 0.3137254902);
}
.primary-btn:active {
  transform: translateY(-1px);
  box-shadow: 0px 4px 10.9px 0px rgba(130, 4, 24, 0.2509803922);
  transition-duration: 0.1s;
}
@media (max-width: 1650px) {
  .primary-btn {
    font-size: 1rem;
    line-height: 1.333rem;
  }
}

.container {
  width: 100%;
  max-width: var(--size-container);
  margin: 0 auto;
  padding: 5.333rem 4.444rem;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  font-weight: 400;
  letter-spacing: 1%;
}
h1 em, h2 em, h3 em, h4 em, h5 em, h6 em {
  font-weight: 500;
  font-style: italic;
}

h1 {
  font-size: 3.111rem;
  line-height: 3.444rem;
}

h2 {
  font-size: 2.889rem;
  line-height: 3.222rem;
}

h3 {
  font-size: 2.111rem;
  line-height: 2.444rem;
}

h4 {
  font-size: 1.556rem;
  line-height: 2rem;
}

.has-small-font-size {
  font-size: 0.889rem;
}

.has-normal-font-size {
  font-size: 1rem;
}

header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
  transition: background 0.5s ease, box-shadow 0.2s ease;
}
header.is-scrolled {
  background: var(--color-bg);
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.0784313725);
}
header.is-white:not(.is-scrolled) a.logo, header.is-white:not(.is-scrolled) .menu-caret {
  filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(298deg) brightness(102%) contrast(102%);
}
header.is-white:not(.is-scrolled) .menu-area .menu .menu-item a {
  color: var(--color-white);
}
header.is-white:not(.is-scrolled) .primary-btn {
  border-color: var(--color-white);
  color: var(--color-white);
}
header.is-white:not(.is-scrolled) .primary-btn.yt-btn {
  color: #000;
}
header.is-white:not(.is-scrolled) .mobile-menu-toggle {
  color: var(--color-white);
}
header a.logo {
  position: relative;
  z-index: 1;
  transition: filter 0.2s ease;
}
header .container {
  padding: 0.667rem 2.222rem !important;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
header .menu-area {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  width: 100%;
  justify-content: center;
  left: 0;
}
header .menu-area .menu {
  display: flex;
  gap: 1.333rem;
}
header .menu-area .menu .menu-item {
  position: relative;
}
header .menu-area .menu .menu-item a {
  padding: 8px;
  font-size: 0.778rem;
  line-height: 1rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 10px;
  transition: color 0.2s ease;
}
header .menu-area .menu .menu-item .menu-caret {
  transition: transform 0.2s ease;
}
header .menu-area .menu .menu-item.menu-item-has-children:hover > a .menu-caret {
  transform: rotate(180deg);
}
header .menu-area .menu .menu-item .sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 220px;
  padding: 8px;
  background: var(--color-white);
  border-radius: 6px;
  box-shadow: 0 10px 24px 0 rgba(0, 0, 0, 0.1411764706);
  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
  z-index: 10;
}
header .menu-area .menu .menu-item .sub-menu .menu-item a {
  display: block;
  padding: 8px 12px;
  border-radius: 4px;
  color: var(--color-text);
  white-space: nowrap;
}
header .menu-area .menu .menu-item .sub-menu .menu-item a:hover {
  background: var(--color-bg);
}
header .menu-area .menu .menu-item .sub-menu .menu-item .sub-menu {
  top: 0;
  left: 100%;
}
header .menu-area .menu .menu-item:hover > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
header .action-btn {
  display: flex;
  align-items: center;
  gap: 12px;
}
header .primary-btn {
  padding: 7px 16px;
  background: transparent;
  border: 1px solid #000;
  color: #000;
  box-shadow: unset;
  font-size: 0.778rem;
  line-height: 1rem;
  position: relative;
  z-index: 1;
  box-shadow: unset !important;
}
header .primary-btn.yt-btn {
  background: #fff;
  color: #000;
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #fff;
}

.mobile-menu {
  display: none;
}

body.mobile-menu-is-open {
  overflow: hidden;
}

.mobile-menu-toggle {
  position: relative;
  z-index: 2;
  width: 28px;
  height: 20px;
  padding: 0;
  background: none;
  border: 0;
  color: inherit;
  cursor: pointer;
}
.mobile-menu-toggle span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: currentColor;
  border-radius: 1px;
  transition: transform 0.25s ease, opacity 0.2s ease, top 0.25s ease;
}
.mobile-menu-toggle span:nth-child(1) {
  top: 0;
}
.mobile-menu-toggle span:nth-child(2) {
  top: 9px;
}
.mobile-menu-toggle span:nth-child(3) {
  top: 18px;
}
.mobile-menu-toggle.is-open span:nth-child(1) {
  top: 9px;
  transform: rotate(45deg);
}
.mobile-menu-toggle.is-open span:nth-child(2) {
  opacity: 0;
}
.mobile-menu-toggle.is-open span:nth-child(3) {
  top: 9px;
  transform: rotate(-45deg);
}

.mobile-menu-panel {
  display: flex;
  position: fixed;
  inset: 0;
  z-index: 200;
  flex-direction: column;
  background: var(--color-bg);
  overflow-y: auto;
  visibility: hidden;
  transform: translateY(-100%);
  transition: transform 0.35s ease, visibility 0.35s;
}
.mobile-menu-panel.is-open {
  visibility: visible;
  transform: translateY(0);
}

.mobile-menu-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
  padding: 18px 16px;
  background: rgba(0, 0, 0, 0.1019607843);
}
.mobile-menu-top .logo img {
  height: 15px;
  width: auto;
}

.mobile-menu-close {
  position: relative;
  width: 24px;
  height: 24px;
  padding: 0;
  background: none;
  border: 0;
  color: inherit;
  cursor: pointer;
}
.mobile-menu-close::before, .mobile-menu-close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 17px;
  height: 1px;
  background: currentColor;
}
.mobile-menu-close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.mobile-menu-close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.menu-block {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 2.667rem 1.333rem;
  flex: 1;
}

.mobile-menu-nav .menu {
  display: flex;
  flex-direction: column;
}
.mobile-menu-nav .menu-item {
  border-bottom: 1px solid #938972;
}
.mobile-menu-nav .menu-item > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.333rem;
  padding: 1.333rem 0.444rem;
  color: var(--color-text);
}
.mobile-menu-nav .menu-item .menu-caret {
  transition: transform 0.2s ease;
}
.mobile-menu-nav .menu-item.is-open > a .menu-caret {
  transform: rotate(180deg);
}
.mobile-menu-nav .menu-item .sub-menu {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.25s ease;
}
.mobile-menu-nav .menu-item .sub-menu .menu-item {
  border-bottom: 0;
  padding-left: 1.333rem;
}
.mobile-menu-nav .menu-item .sub-menu .menu-item > a {
  padding: 0.667rem 0;
  font-size: 1rem;
}
.mobile-menu-nav .menu-item.is-open > .sub-menu {
  max-height: 500px;
}

.mobile-menu-cta {
  display: block;
  flex-shrink: 0;
  text-align: center;
}

.mobile-menu-panel a.logo,
.mobile-menu-panel .menu-caret {
  filter: none !important;
}
.mobile-menu-panel .action-area {
  display: flex;
  gap: 1rem;
}
.mobile-menu-panel .primary-btn {
  background: transparent;
  border: 1px solid #000 !important;
  color: #000 !important;
  box-shadow: 0px 4px 10.9px 0px rgba(130, 4, 24, 0.2509803922) !important;
  font-size: 1.111rem;
  line-height: 1.444rem;
  padding-block: 12px;
  flex: 1;
}
.mobile-menu-panel .primary-btn.yt-btn {
  background: #fff !important;
  color: #000 !important;
  justify-content: center;
}

footer {
  background: #ECE5D4;
}
footer .footer-banner {
  position: relative;
  overflow: hidden;
  height: 100dvh;
}
footer .footer-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
footer .footer-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5019607843);
  z-index: 1;
}
footer .site-footer {
  color: #000000;
  position: sticky;
  top: 0;
  transition: color 1s ease;
  z-index: 2;
  height: 100dvh;
}
footer .site-footer.is-white {
  color: #fff;
}
footer .site-footer.is-white .top-section .news-letter .form .tnp-field-email input {
  border-color: #fff;
  color: #fff;
}
footer .site-footer.is-white .top-section .news-letter .form .tnp-field-email input::-moz-placeholder {
  color: #fff;
}
footer .site-footer.is-white .top-section .news-letter .form .tnp-field-email input::placeholder {
  color: #fff;
}
footer .site-footer.is-white .footer-logo img {
  filter: unset;
  opacity: 100%;
}
footer .container {
  display: flex;
  flex-direction: column;
  gap: 8.889rem;
  position: relative;
  z-index: 2;
  height: 100%;
  justify-content: space-around;
}
footer .top-section {
  display: flex;
  gap: 2.222rem;
  align-items: flex-start;
  flex-wrap: wrap;
}
footer .top-section .footer-links {
  flex: 1;
}
footer .top-section .footer-links .menu {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 0.889rem;
  line-height: 1.222rem;
}
footer .top-section .news-letter {
  max-width: 435px;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
footer .top-section .news-letter span {
  font-size: 0.778rem;
  line-height: 1rem;
}
footer .top-section .news-letter .form {
  display: flex;
  flex-direction: column;
  gap: 0.889rem;
}
footer .top-section .news-letter .form label {
  display: none;
}
footer .top-section .news-letter .form .tnp-subscription {
  margin: 0;
}
footer .top-section .news-letter .form form {
  display: flex;
  gap: 12px;
}
footer .top-section .news-letter .form .tnp-field {
  margin: 0;
}
footer .top-section .news-letter .form .tnp-field .tnp-submit {
  display: inline-block;
  background-color: #6C0000;
  color: var(--color-white);
  padding: 12px 26.49px;
  border-radius: 2px;
  font-size: 1rem;
  line-height: 24px;
  box-shadow: 0px 4px 10.9px 0px rgba(130, 4, 24, 0.2509803922);
  font-weight: 500;
  border: 0;
}
footer .top-section .news-letter .form .tnp-field-email {
  flex: 1;
  margin: 0;
}
footer .top-section .news-letter .form .tnp-field-email input {
  background: transparent;
  border: 1px solid #000;
  color: #000;
  border-radius: 2px;
  padding: 15px 12px;
  font-size: 0.778rem;
  line-height: 1rem;
  transition: color 1s ease, border 1s ease;
}
footer .top-section .news-letter .form .tnp-field-email input::-moz-placeholder {
  color: #000;
  transition: color 1s ease;
}
footer .top-section .news-letter .form .tnp-field-email input::placeholder {
  color: #000;
  transition: color 1s ease;
}
footer .footer-logo img {
  width: 100%;
  filter: brightness(0) saturate(100%) invert(0%) sepia(3%) saturate(0%) hue-rotate(257deg) brightness(104%) contrast(104%);
  opacity: 20%;
  transition: opacity 1s ease, filter 1s ease;
}
footer .footer-logo span.copy {
  display: none;
}

.count {
  font-size: 4.444rem;
  line-height: 5.556rem;
  color: #DBD1B8;
  font-weight: 600;
  font-family: var(--font-heading);
}

.home-hero {
  position: relative;
  overflow: hidden;
  color: var(--color-white);
  min-height: 100dvh;
  display: flex;
}
.home-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6980392157);
  z-index: 1;
}
.home-hero .hero-media {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.home-hero .hero-poster,
.home-hero .hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-hero .hero-video {
  opacity: 0;
  transition: opacity 0.6s ease;
}
.home-hero.is-video-ready .hero-video {
  opacity: 1;
}
.home-hero .container {
  position: relative;
  z-index: 2;
  padding: 10.972rem 5.333rem 14.306rem !important;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.home-hero .content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3.556rem;
  max-width: 800px;
}
.home-hero .content p {
  max-width: 640px;
  color: #ECE5D4;
}

.busniess-info {
  background: #3C0000;
  position: relative;
  color: var(--color-white);
}
.busniess-info::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../images/graphic.webp) no-repeat center center/cover;
  z-index: 1;
}
.busniess-info .container {
  display: flex;
  align-items: center;
  gap: 4.444rem;
  position: relative;
  z-index: 2;
}
.busniess-info .content {
  display: flex;
  flex-direction: column;
  gap: 4.444rem;
}
.busniess-info .content p {
  padding: 0 1.333rem;
  font-size: 1.111rem;
  font-style: italic;
  line-height: 1.444rem;
}
.busniess-info .content p.p-0 {
  padding: 0;
}
.busniess-info img.banner-img {
  flex: 1;
}

.brand {
  padding: 2.222rem 0;
  background-color: var(--color-bg);
}
.brand img {
  height: 72px;
}
.brand .marquee {
  overflow: hidden;
  width: 100%;
}
.brand .marquee-track {
  display: flex;
  align-items: center;
  gap: 0.667rem;
  width: max-content;
  animation: jc-marquee 50s linear infinite;
}
.brand .marquee:hover .marquee-track,
.brand .marquee:focus-within .marquee-track {
  animation-play-state: paused;
}

@keyframes jc-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
@media (prefers-reduced-motion: reduce) {
  .brand .marquee-track {
    animation: none;
  }
}
.services-area .container {
  display: flex;
  gap: 3.556rem;
  align-items: center;
}
.services-area .content {
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
  max-width: 590px;
  padding-inline: 1.333rem;
}
.services-area .content em {
  color: #3C0000;
}
.services-area .content img {
  flex: 1;
}

.my-works {
  background: #F4F0E5;
  height: 100dvh;
}
.my-works .container {
  padding-block: 3.667rem;
  height: 100%;
}
.my-works .content {
  max-width: 1102px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 2.111rem;
  align-items: center;
  height: 100%;
}
.my-works .content h2 {
  text-align: center;
}
.my-works .video-block {
  aspect-ratio: 16/9;
  box-shadow: 0px 4px 10.9px 0px rgba(0, 0, 0, 0.0784313725);
  max-width: 100%;
  flex: 1;
}
.my-works .bottom-text {
  display: flex;
  flex-direction: column;
  gap: 1.222rem;
  align-items: center;
  max-width: 790px;
  text-align: center;
}
.my-works .bottom-text .text {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
}
.my-works .bottom-text strong {
  font-size: 1.111rem;
  line-height: 1.444rem;
  font-weight: 500;
}
.my-works .bottom-text p {
  font-size: 1.111rem;
  line-height: 1.444rem;
}

.intro .container {
  display: flex;
  flex-direction: column;
  gap: 5.333rem;
  align-items: center;
}
.intro .content {
  display: flex;
  flex-direction: column;
  gap: 3.111rem;
  max-width: 964px;
  align-items: center;
}
.intro .content .text {
  display: flex;
  gap: 3.556rem;
}
.intro .content .text p:first-child {
  max-width: 493px;
}
.intro .experties {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.778rem;
  width: 100%;
}
.intro .experties .experty {
  display: flex;
  flex-direction: column;
  gap: 0.667rem;
  padding-inline: 1.333rem;
  align-items: flex-start;
  position: relative;
  justify-content: center;
}
.intro .experties .experty span {
  max-width: 201px;
  font-weight: 500;
}
.intro .experties .experty::after {
  content: "";
  height: 100px;
  width: 1px;
  position: absolute;
  right: -16px;
  background: #CCC2A9;
}
.intro .experties .experty:nth-child(4)::after {
  display: none;
}

.work-with {
  background: #E6DCC4;
}
.work-with .container {
  display: flex;
  gap: 3.556rem;
}
.work-with .image-area {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.222rem;
  flex: 1;
}
.work-with .content {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: space-between;
  flex: 1;
  align-items: flex-start;
}
.work-with .content .professions {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}
.work-with .content .professions h3 {
  display: flex;
  gap: 16px;
  color: #3C0000;
  font-weight: 600;
}
.work-with .content .professions h3 span {
  color: #CCC2A9;
}
.work-with .content .professions h3:not(:last-child) {
  border-bottom: 1px solid #CCC2A9;
  padding-bottom: 1.333rem;
}

.experiences .container {
  padding-block: 5.556rem;
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
  align-items: center;
}
.experiences em {
  color: #3C0000;
}
.experiences .videos-area {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.333rem;
  width: 100%;
}
.experiences .videos-area .video-box {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}
.experiences .videos-area .video-box .video-block {
  aspect-ratio: 397.33/606;
  width: 100%;
}
.experiences .videos-area .video-box .video-block .video-play-btn {
  width: 42px;
}
.experiences .videos-area .video-box .text {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 0.778rem;
  line-height: 1rem;
  color: rgba(0, 0, 0, 0.6);
  font-weight: 500;
}
.experiences .videos-area .video-box .text h4 {
  letter-spacing: 2%;
}
.experiences .videos-area .video-box .text span {
  font-size: 16px;
  line-height: 1.333rem;
}

.review {
  background: #CCC2A9;
  position: relative;
}
@media (max-width: 1650px) {
  .review {
    height: 100dvh;
  }
}
.review::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../images/re-g.webp) no-repeat center 28%/cover;
}
@media (min-width: 1650px) {
  .review::before {
    background: url(../images/re-g.webp) no-repeat center 20%/cover;
  }
}
.review::before {
  z-index: 1;
}
@media (min-width: 1650px) {
  .review .container {
    padding-block: 23.333rem 3.528rem;
  }
}
.review .container {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
}
@media (max-width: 1650px) {
  .review .container {
    height: 100%;
    align-items: flex-end;
    padding-bottom: 2rem;
  }
}
.review .review-box {
  max-width: 775px;
  width: 100%;
  display: flex;
  align-items: flex-start;
  gap: 2rem;
}
.review .review-box .content {
  display: flex;
  flex-direction: column;
  gap: 1.222rem;
}
.review .review-box .content .text {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1.222rem;
}
.review .review-box .content .text h3 {
  font-size: 1.7rem;
  line-height: 2rem;
}
@media (max-width: 1650px) {
  .review .review-box .content .text h3 {
    font-size: 1.5rem;
    line-height: 1.9rem;
  }
}
.review .review-box .content .text .divider {
  max-width: 467px;
  width: 100%;
  height: 1px;
  background: rgba(0, 0, 0, 0.4117647059);
}
.review .review-box .content .info {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-weight: 500;
  font-size: 0.894rem;
}
.review .review-box .content .info h4 {
  font-weight: 600;
}
@media (max-width: 1650px) {
  .review .review-box .content .info h4 {
    font-size: 1.3rem;
    line-height: 1.5rem;
  }
}
.review .review-box .content .info .location {
  font-size: 0.778rem;
  line-height: 1rem;
  font-style: italic;
}

.conversation {
  background: linear-gradient(-270.38deg, #EDE6D5 25.89%, #FBF9F4 58.43%);
  position: relative;
}
.conversation::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../images/layer1.webp) no-repeat 0px 66px/cover;
  z-index: 1;
}
.conversation .container {
  display: flex;
  gap: 1.333rem;
  align-items: center;
  position: relative;
  z-index: 2;
  padding-block: 4.723rem 0;
}
.conversation .container .content {
  max-width: 584px;
  flex-direction: column;
  gap: 2.222rem;
  display: flex;
  align-items: flex-start;
  padding-bottom: 4.723rem;
}
.conversation .container .content p {
  max-width: 541px;
  font-size: 1.111rem;
  line-height: 1.444rem;
}
.conversation .container .content h2 span {
  color: #6C0000;
}
.conversation .container .banner-img {
  flex: 1;
  align-self: flex-end;
}

.blog-section {
  background: #F4F0E5;
}
.blog-section .container {
  padding: 6.667rem 8rem;
  display: flex;
  flex-direction: column;
  gap: 4rem;
  align-items: center;
}
.blog-section em {
  color: #3C0000;
}

.hero-sr {
  background-size: cover;
  color: #fff;
  min-height: 100dvh;
  display: flex;
}
.hero-sr .container {
  display: flex;
  align-items: center;
}
.hero-sr .content {
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
  max-width: 783px;
}
.hero-sr .content h1 {
  max-width: 644px;
  min-height: 139px;
}
.hero-sr .content .text {
  display: flex;
  gap: 2.667rem;
}
.hero-sr .content .text p {
  flex: 1;
  font-weight: 500;
}
.hero-sr .content .text p:first-child {
  flex: unset;
  max-width: 406px;
}

.work-i-do {
  background: #CCC2A9;
}
.work-i-do .container {
  display: flex;
  justify-content: center;
  align-items: center;
}
.work-i-do .content {
  max-width: 800px;
  text-align: center;
}

.how-we {
  background-color: #E6DCC4;
}
.how-we .container {
  padding-inline: 6.667rem;
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
  align-items: center;
}
.how-we .content {
  display: flex;
  flex-direction: column;
  gap: 2.222rem;
  align-items: flex-start;
  width: 100%;
}
.how-we .content .label {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.how-we .content .text {
  display: flex;
  gap: 3.556rem;
}
.how-we .content .text .discription {
  max-width: 400px;
  display: flex;
  flex-direction: column;
  gap: 2.222rem;
}
.how-we .content .text .discription p {
  font-size: 1.111rem;
  line-height: 1.444rem;
  flex: 1;
}
.how-we .content .text .discription h3 {
  border-top: 1px solid #938972;
  font-style: italic;
  color: #3C0000;
  padding-top: 1.333rem;
}
.how-we .content .banner-img {
  width: 100%;
}
.how-we .content .disc {
  max-width: 944px;
  display: flex;
  gap: 2.222rem;
}
.how-we .content .disc p {
  font-weight: 500;
  flex: 1;
}
.how-we .content .disc p:first-child {
  max-width: 518px;
  flex: unset;
}

.we-walk {
  background: #E6DCC4;
}
.we-walk .container {
  display: flex;
  gap: 4.444rem;
  align-items: center;
  flex-direction: column;
}
.we-walk .label {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
  align-items: center;
}
.we-walk .label p {
  font-size: 1.111rem;
  line-height: 1.444rem;
  text-align: center;
}
.we-walk .content {
  display: flex;
  flex-direction: column;
  gap: 2.222rem;
}
.we-walk .content .procedure {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3.111rem;
}
.we-walk .content .procedure .item {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}
.we-walk .content .procedure .item .top-h {
  display: flex;
  flex-direction: column;
  gap: 0.889rem;
}
.we-walk .content .procedure .item .top-h h3 {
  color: #3C0000;
  font-weight: 600;
  padding-bottom: 1.333rem;
  border-bottom: 1px solid #CCC2A9;
  display: flex;
  gap: 0.889rem;
}
.we-walk .content .procedure .item .top-h h3 .number {
  color: #CCC2A9;
  display: flex;
  align-items: center;
  gap: 0.889rem;
}
.we-walk .content .note {
  font-weight: 600;
  font-style: italic;
  font-size: 1.111rem;
  padding-inline: 0.889rem;
  color: #3A3529;
}
.we-walk.new-sr {
  background: #E6DCC4;
}
.we-walk.new-sr .label {
  text-align: center;
  gap: 0.889rem;
}
.we-walk.new-sr .label span.tag-txt {
  font-size: 0.889rem;
  line-height: 1.222rem;
  max-width: 376px;
}
.we-walk.new-sr .content {
  max-width: 1200px;
}
.we-walk.new-sr .container {
  gap: 3.556rem;
}
.we-walk.new-sr .procedure {
  gap: 1.333rem;
}
.we-walk.new-sr .procedure .item {
  background: #FBF9F4;
  padding: 1.333rem 1.778rem;
}
.we-walk.new-sr .procedure .item .top-h h4 {
  color: #3C0000;
  letter-spacing: 2%;
}
.we-walk.new-sr .procedure .item .top-h span.step {
  font-size: 0.778rem;
  line-height: 1rem;
  font-weight: 500;
}

.ser-list {
  background: #EDE6D5;
}
.ser-list .container {
  display: flex;
  flex-direction: column;
  gap: 4.444rem;
  padding: 6.667rem;
}
.ser-list .content {
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  align-items: flex-start;
}
.ser-list .content p {
  font-size: 1.111rem;
  line-height: 1.444rem;
  max-width: 516px;
}
.ser-list .content h2 {
  padding-bottom: 1.778rem;
  border-bottom: 1px solid #938972;
}
.ser-list .content h2 span {
  font-weight: 500;
  font-style: italic;
  color: #6C0000;
}
.ser-list .list {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1.333rem;
}
.ser-list .list .item {
  grid-column: span 2;
  background: #F4F0E5;
  padding: 2.222rem 1.778rem;
  border-bottom: 1px solid #CCC2A9;
  display: flex;
  flex-direction: column;
  gap: 1.778rem;
  align-items: flex-start;
}
.ser-list .list .item .top-h {
  display: flex;
  flex-direction: column;
  gap: 0.889rem;
  font-size: 1.111rem;
  line-height: 1.444rem;
  font-weight: 500;
}
.ser-list .list .item .top-h h4 {
  font-weight: 500;
}
.ser-list .list .item p {
  font-size: 0.889rem;
  line-height: 1.222rem;
  font-weight: 500;
}
.ser-list .list .item:nth-last-child(2):nth-child(3n+1), .ser-list .list .item:last-child:nth-child(3n+2) {
  grid-column: span 3;
}

.page-id-7934 .work-i-do .content {
  max-width: 884px;
}
.page-id-7934 .need-sr .content p {
  max-width: 522px;
}
.page-id-7934 .arrow-img img {
  filter: brightness(0) saturate(100%) invert(4%) sepia(78%) saturate(6042%) hue-rotate(20deg) brightness(98%) contrast(110%);
}

.what-changes .container {
  padding: 5.333rem;
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
  align-items: center;
}
.what-changes h2 {
  min-height: 89px;
}
.what-changes em {
  color: #3C0000;
}
.what-changes .content {
  display: flex;
  gap: 4.444rem;
}
.what-changes .content .title {
  max-width: 560px;
  font-size: 2.111rem;
  line-height: 2.778rem;
  letter-spacing: 1%;
  font-weight: 600;
  font-family: var(--font-heading);
}
.what-changes .content p {
  flex: 1;
  display: flex;
  gap: 1.778rem;
  font-weight: 500;
}
.what-changes .content p span {
  flex: 1;
}
.what-changes .content p::before {
  content: "";
  width: 4px;
  height: 60px;
  background: #3C0000;
}
.what-changes .benefits {
  padding-block: 2.222rem;
  display: flex;
  gap: 4.444rem;
  width: 100%;
}
.what-changes .benefits .list {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.what-changes .benefits .list h4 {
  padding-block: 2.667rem;
  border-bottom: 1px solid #DBD1B8;
  letter-spacing: 3%;
  font-weight: 600;
}
.what-changes .benefits .list h4:last-child {
  border: none;
}
.what-changes .benefits img {
  flex: 1;
}
.what-changes .note {
  font-weight: 600;
  letter-spacing: 3%;
  max-width: 754px;
  text-align: center;
}

.first-step {
  background: #DBD1B8;
}
.first-step .container {
  padding-block: 7.778rem;
  display: flex;
  justify-content: center;
}
.first-step em {
  color: #3C0000;
}
.first-step .content {
  display: flex;
  flex-direction: column;
  gap: 2.667rem;
  align-items: center;
  max-width: 846px;
}
.first-step .content h2 {
  padding-bottom: 1.833rem;
  border-bottom: 1px solid #CCC2A9;
  width: 100%;
  text-align: center;
}
.first-step .content .text {
  width: 100%;
  display: flex;
  gap: 4.444rem;
}
.first-step .content .text p {
  font-size: 1.111rem;
  line-height: 1.444rem;
  flex: 1;
}
.first-step .content .text p:first-child {
  flex: unset;
  max-width: 421px;
}

.hero-sr.services .content {
  align-items: flex-start;
  gap: 1.556rem;
}
.hero-sr.services .content .top-he {
  display: flex;
  flex-direction: column;
  gap: 0.778rem;
}
.hero-sr.services .content p {
  max-width: 460px;
}

.hero-sr span.tag {
  font-size: 14px;
  line-height: 18px;
  letter-spacing: 12%;
  color: #ECE5D4;
}

.busniess-info.services .content {
  gap: 1.778rem;
}

.new-life {
  background: #EDE6D5;
}
.new-life .container {
  padding-block: 4rem;
  display: flex;
  justify-content: center;
}
.new-life .content {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  max-width: 816px;
}
.new-life .content .top-heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.894rem;
}
.new-life .content .top-heading h3 {
  color: #3C0000;
}
.new-life .content .text {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1.333rem;
}
.new-life .content .text h4 {
  max-width: 445px;
}

.need-sr.services {
  background: #F4F0E5;
}
.need-sr.services .content .text p {
  max-width: 551px;
  min-height: 351px;
}

.work-sr.services {
  background: #EDE6D5;
}
.work-sr.services .container {
  padding: 5.333rem;
  align-items: center;
}
.work-sr.services .container .text {
  gap: 1rem;
  max-width: 526px;
}
.work-sr.services .container .text .list h3 {
  padding-bottom: 1rem;
  align-items: center;
}

.table-services {
  background: #F4F0E5;
}
.table-services .container {
  padding-block: 6.667rem;
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
}
.table-services .content {
  display: flex;
  align-items: center;
  gap: 3.556rem;
}
.table-services .content .text {
  max-width: 595px;
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}
.table-services .content .text p {
  font-style: italic;
}
.table-services .content .text h4 {
  font-weight: 600;
}

.intro.services .content .text p:first-child {
  max-width: 446px;
}

.experiences.services {
  background: #F4F0E5;
}
.experiences.services .videos-area {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.experiences.services .videos-area .video-box {
  width: calc((100% - 2.666rem) / 3);
}
@media (max-width: 850px) {
  .experiences.services .videos-area .video-box {
    width: calc((100% - 1.333rem) / 2);
  }
}
@media (max-width: 600px) {
  .experiences.services .videos-area .video-box {
    width: 100%;
  }
}

.asking-services {
  background: #EDE6D5;
}
.asking-services .container {
  display: flex;
  flex-direction: column;
  gap: 3.111rem;
}
.asking-services .content {
  max-width: 1164px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3.556rem;
}
.asking-services .content .text {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}
.asking-services .content .text strong {
  font-size: 1.111rem;
  line-height: 1.444rem;
  letter-spacing: 1%;
}

.hero-sr.story {
  background-image: var(--bg-desktop);
  background-position: center;
}
@media (max-width: 600px) {
  .hero-sr.story {
    background-image: var(--bg-mobile, var(--bg-desktop));
  }
}
.hero-sr.story .content {
  max-width: 586px;
  gap: 4px;
}
.hero-sr.story .content p {
  max-width: 419px;
  font-size: 1.111rem;
  line-height: 1.444rem;
}

.picture-perfect {
  background: #F4F0E5;
}
.picture-perfect .container {
  padding: 7.778rem 6.667rem;
  display: flex;
  flex-direction: column;
  gap: 4.444rem;
  align-items: center;
}
.picture-perfect .container > h2 {
  text-align: center;
}
.picture-perfect .content {
  display: flex;
  gap: 3.556rem;
}
.picture-perfect .content .img-col {
  display: flex;
  flex-wrap: wrap;
  gap: 1.333rem;
  flex: 1;
}
.picture-perfect .content .img-col img {
  width: calc(50% - 0.6665rem);
  object-fit: cover;
}
.picture-perfect .content .img-col img:nth-child(1) {
  width: 100%;
}
.picture-perfect .content .text {
  display: flex;
  flex-direction: column;
  gap: 2.222rem;
  max-width: 612px;
}
.picture-perfect .content .text h2 {
  padding-bottom: 1.833rem;
  border-bottom: 1px solid #CCC2A9;
  width: 100%;
}
.picture-perfect .content .text h3, .picture-perfect .content .text h4 {
  font-weight: 600;
}
.picture-perfect .content .text .story-text {
  display: flex;
  flex-direction: column;
  gap: 0.889rem;
  padding-top: 1.333rem;
  border-top: 1px solid #CCC2A9;
}
.picture-perfect .content .text .story-text p {
  max-width: 582px;
  font-size: 1.111rem;
  line-height: 1.444rem;
}

.what-i-did {
  background: #EDE6D5;
}
.what-i-did .container {
  padding-inline: 6.667rem;
  display: flex;
  justify-content: center;
}
.what-i-did .container h2 {
  color: #3C0000;
  max-width: 944px;
  text-align: center;
}

.performance {
  background: #F4F0E5;
  position: relative;
  overflow: hidden;
}
.performance .container {
  display: flex;
  gap: 2rem;
  align-items: center;
  padding-bottom: 0;
  position: relative;
  z-index: 1;
}
.performance .image-area {
  flex: 1;
}
.performance .image-area img {
  margin: 0 auto;
}
.performance .content {
  max-width: 598px;
  gap: 2.222rem;
  display: flex;
  flex-direction: column;
}
.performance .content .top-h {
  display: flex;
  flex-direction: column;
  gap: 2.222rem;
}
.performance .content .top-h h2 {
  color: #3C0000;
}
.performance .content .top-h h4 {
  font-weight: 600;
}
.performance .content .text {
  display: flex;
  flex-direction: column;
  gap: 0.889rem;
  padding-top: 1.333rem;
  border-top: 1px solid #E6DCC4;
}
.performance .content .text h3 {
  font-weight: 600;
}
.performance::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../images/gr-pr.webp) no-repeat left bottom/contain;
  z-index: 1;
}

.facade .container {
  display: flex;
  flex-direction: column;
  gap: 2.444rem;
}
.facade .top-h {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
  max-width: 566px;
}
.facade .top-h h2 {
  color: #3C0000;
}
.facade .content {
  display: flex;
  gap: 3.556rem;
}
.facade .content .text {
  max-width: 558px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1rem;
}
.facade .content .img-area {
  flex: 1;
}
.facade .content .img-area img {
  width: 100%;
}

.kitchen {
  background: #DBD1B8;
}
.kitchen .content {
  max-width: 558px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 4.444rem;
  align-items: center;
  text-align: center;
}
.kitchen .content h2 {
  color: #3C0000;
  padding-bottom: 1.778rem;
  border-bottom: 1px solid #6F664F;
}
.kitchen .content p {
  font-size: 1.111rem;
  line-height: 1.444rem;
}

.collapse {
  background: #CCC2A9;
}
.collapse .container {
  padding-inline: 4rem;
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
}
.collapse .top-h {
  max-width: 509px;
  display: flex;
  flex-direction: column;
  gap: 1.778rem;
}
.collapse .top-h h2 {
  color: #3C0000;
}
.collapse .content {
  display: flex;
  gap: 4rem;
  align-items: center;
}
.collapse .content p {
  max-width: 526px;
  font-size: 1.111rem;
  line-height: 1.444rem;
}

.rebuild .container {
  display: flex;
  gap: 3.556rem;
  align-items: center;
}
.rebuild .img-area img {
  width: 100%;
}
.rebuild .content {
  max-width: 573px;
  gap: 1.778rem;
  display: flex;
  flex-direction: column;
}
.rebuild .content .top-h {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}
.rebuild .content p {
  font-size: 1.111rem;
  line-height: 1.444rem;
  max-width: 516px;
}

.table-today {
  background: #DBD1B8;
}
.table-today .container {
  display: flex;
  gap: 4rem;
}
.table-today p {
  font-size: 1.111rem;
  line-height: 1.444rem;
}
.table-today .content {
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  flex-direction: column;
  flex: 1;
}
@media (min-width: 1440px) {
  .table-today .content {
    padding-bottom: 1.333rem;
  }
}
.table-today .content h2 {
  padding-bottom: 1.333rem;
  border-bottom: 1px solid #938972;
}
.table-today .media-area {
  display: flex;
  flex-direction: column;
  gap: 2.667rem;
  flex: 1;
  justify-content: end;
}

.synthesis {
  background: #E6DCC4;
}
.synthesis .container {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-block: 4rem;
}
.synthesis .container .content {
  display: flex;
  flex-direction: column;
  gap: 2.222rem;
  align-items: center;
}
.synthesis .container .content .top-h {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
  max-width: 670px;
  width: 100%;
  align-items: center;
  text-align: center;
}
.synthesis .container .content .top-h h2 {
  color: #3C0000;
}
.synthesis .container .content .text {
  display: flex;
  gap: 2.222rem;
}
.synthesis .container .content .text > p:first-child {
  max-width: 567px;
}
.synthesis .container .content p {
  font-size: 1.111rem;
  line-height: 1.444rem;
}

.coach {
  background: #DBD1B8;
}
.coach .container {
  display: flex;
  gap: 3.556rem;
  align-items: center;
}
.coach .container .content {
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
  max-width: 835px;
  width: 100%;
}
.coach .container h3 {
  color: #3C0000;
  font-weight: 600;
}
.coach .container p {
  font-size: 1.111rem;
  line-height: 1.444rem;
  max-width: 690px;
}

.the-work {
  background: #3C0000;
  position: relative;
}
.the-work::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../images/gr-wo.webp) no-repeat center center/cover;
  z-index: 1;
}
.the-work .container {
  position: relative;
  z-index: 2;
}
.the-work .content {
  max-width: 976px;
  margin-inline: auto;
  color: #fff;
  text-align: center;
}
.the-work h3 {
  font-weight: 600;
}

.retainer.story {
  background: #EDE6D5;
}
.retainer.story .container {
  align-items: flex-start;
}
.retainer.story .media {
  align-items: flex-start;
  flex: 1;
}
.retainer.story .media h2 {
  max-width: unset;
}
.retainer.story .media h4 {
  max-width: 535px;
  font-weight: 600;
  letter-spacing: 3%;
}
.retainer.story .content {
  flex: 1;
}

.qualification {
  background: #E6DCC4;
}
.qualification .container {
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
  align-items: center;
}
.qualification .intro .experties .experty span {
  max-width: 530px;
}
.qualification .intro .experties .experty:last-child::after {
  display: none;
}
.qualification .intro .experties .experty:last-child:nth-child(4n+3) {
  grid-column: span 2;
}
.qualification .intro .experties .experty:last-child:nth-child(4n+2) {
  grid-column: span 3;
}

.practice {
  background: #DBD1B8;
}
.practice .container {
  display: flex;
  gap: 3.556rem;
  align-items: center;
}
.practice .content {
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
  align-items: flex-start;
}
.practice .content h3 span {
  color: #3C0000;
}
.practice .content h3:first-child {
  max-width: 629px;
}

.done-work .container {
  padding-inline: 4.833rem;
  display: flex;
  gap: 4.444rem;
  align-items: center;
  justify-content: center;
}
.done-work .content {
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
  max-width: 533px;
}
.done-work .content p {
  font-size: 1.111rem;
  line-height: 1.444rem;
}
.done-work .content p strong {
  font-weight: 600;
}

.hero-sr.media .content {
  max-width: 756px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: 2.222rem;
  color: #fff;
  align-items: center;
  text-align: center;
}

.busniess-info.media .banner-img {
  max-width: 630px;
}
.busniess-info.media .content {
  gap: 1.111rem;
  color: #fff;
}
.busniess-info.media .content p {
  padding: 0;
  font-size: 1rem;
  line-height: 1.333rem;
}
.busniess-info.media .content p.desc2 {
  font-size: 0.889rem;
  line-height: 1.222rem;
  font-weight: 600;
}
.busniess-info.media .content h4 {
  letter-spacing: 2%;
  font-weight: 500;
}
.busniess-info.media .content ul:not(.list) {
  list-style: disc;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.busniess-info.media .content ul.list {
  display: flex;
  flex-direction: column;
  gap: 1.778rem;
}
.busniess-info.media .content ul.list li {
  display: flex;
  gap: 24px;
  font-size: 1.111rem;
  font-style: italic;
  line-height: 1.444rem;
  align-items: flex-start;
}

.disarming {
  background: #F4F0E5;
}
.disarming .container {
  padding-block: 12.222rem;
}
.disarming .container .content {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  width: 100%;
}
.disarming .container .content h3 {
  color: #3C0000;
  max-width: 627px;
}
.disarming .container .content p {
  font-size: 1.111rem;
  line-height: 1.444rem;
  padding-right: 18px;
  padding-top: 24px;
  border-top: 1px solid #3A3529;
  max-width: 485px;
}

.hero-sr.others .container {
  justify-content: center;
}
.hero-sr.others .content h1 {
  max-width: 100%;
  min-height: auto;
  text-align: center;
}

.faq-area .faq-tabs {
  background: #EDE6D5;
}
.faq-area .faq-tabs .container {
  padding-block: 1.333rem !important;
  display: flex;
  gap: 2.222rem;
  overflow-x: auto;
}
.faq-area .faq-tabs .faq-tab {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 1rem;
  line-height: 1.333rem;
  color: #000;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  gap: 8px;
  white-space: nowrap;
}
.faq-area .faq-tabs .faq-tab::after {
  content: "";
  width: 0;
  height: 2px;
  background: #000000;
  transition: width 0.3s ease;
  border-radius: 1px;
}
.faq-area .faq-tabs .faq-tab.is-active::after {
  width: 100%;
}
.faq-area .faq-category {
  background: #FBF9F4;
}
.faq-area .faq-category:nth-child(odd):not([hidden]) {
  background: #F4F0E5;
}
.faq-area .faq-category:nth-child(even) {
  background: #FBF9F4;
}
.faq-area .faq-category[hidden] {
  display: none;
}
.faq-area .faq-category .container {
  display: flex;
  gap: 4.444rem;
  align-items: flex-start;
}
.faq-area .faq-category-title {
  flex: 0 0 400px;
  color: #3C0000;
  font-weight: 600;
}
.faq-area .faq-list {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.faq-area .faq-item {
  border-bottom: 1px solid rgba(58, 53, 41, 0.1019607843);
  padding: 1.556rem 0;
}
.faq-area .faq-item:first-child {
  padding-top: 0;
}
.faq-area .faq-question {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.333rem;
  background: none;
  border: none;
  text-align: left;
  cursor: pointer;
  font-size: 1rem;
  line-height: 24px;
  font-weight: 500;
  color: var(--color-text);
}
.faq-area .faq-item.is-open .faq-question span {
  font-weight: 600;
  color: #3C0000;
}
.faq-area .faq-icon {
  position: relative;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.faq-area .faq-icon::before, .faq-area .faq-icon::after {
  content: "";
  position: absolute;
  background: currentColor;
}
.faq-area .faq-icon::before {
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  transform: translateY(-50%);
}
.faq-area .faq-icon::after {
  left: 50%;
  top: 0;
  width: 1px;
  height: 100%;
  transform: translateX(-50%);
  transition: transform 0.2s ease, opacity 0.2s ease;
}
.faq-area .faq-item.is-open .faq-icon::after {
  transform: translateX(-50%) scaleY(0);
  opacity: 0;
}
.faq-area .faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
  color: rgba(0, 0, 0, 0.6);
  font-size: 0.889rem;
  line-height: 1.333rem;
}
.faq-area .faq-answer p {
  padding-top: 0.889rem;
  font-size: 0.889rem;
  line-height: 1.222rem;
  font-weight: 500;
  max-width: 640px;
}

.blog-area {
  background: #F4F0E5;
}
.blog-area .container {
  padding: 6.667rem;
}

.wait-list {
  background: #DBD1B8;
  padding: 1.778rem;
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
  border-radius: 4px;
  margin-top: 1.333rem;
}
.wait-list p {
  font-size: 0.889rem;
  line-height: 1.222rem;
}
.wait-list .tnp-field label {
  display: none;
}
.wait-list div.tnp-subscription {
  margin: 0;
  max-width: 100%;
  width: 100%;
}
.wait-list form {
  display: flex;
  gap: 12px;
}
.wait-list .tnp-subscription .tnp-field {
  margin: 0;
}
.wait-list .tnp-subscription .tnp-field .tnp-submit {
  display: inline-block;
  background-color: #6C0000;
  color: var(--color-white);
  padding: 12px 24px;
  font-weight: 400;
  border-radius: 2px;
  font-size: 1rem;
  line-height: 24px;
  box-shadow: 0px 4px 10.9px 0px rgba(130, 4, 24, 0.2509803922);
  border: 0;
  cursor: pointer;
}
.wait-list .tnp-subscription .tnp-field-email {
  flex: 1;
  margin: 0;
}
.wait-list .tnp-subscription .tnp-field-email input {
  background: #F4F0E5;
  color: #000;
  border-radius: 2px;
  padding: 15px 12px;
  font-size: 0.778rem;
  line-height: 1rem;
  transition: color 1s ease, border 1s ease;
}
.wait-list .tnp-subscription .tnp-field-email input::-moz-placeholder {
  color: #818181;
  transition: color 1s ease;
}
.wait-list .tnp-subscription .tnp-field-email input::placeholder {
  color: #818181;
  transition: color 1s ease;
}

.blog-listing {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 1.333rem;
  width: 100%;
}

.blog-card {
  background: #E6DCC4;
  border-radius: 6px;
  padding: 0.889rem;
  display: flex;
  flex-direction: column;
  gap: 0.889rem;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.0588235294);
}

.blog-card--featured {
  grid-row: 1/3;
  padding: 1.333rem;
}

.blog-card-media {
  display: block;
  border-radius: 2px;
  overflow: hidden;
}
.blog-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 532/220;
}

.blog-card--featured .blog-card-media {
  flex: 1;
}

.blog-card-body {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}

.blog-content {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.blog-content h4 {
  letter-spacing: 2%;
}
.blog-content p {
  font-size: 0.778rem;
  line-height: 1rem;
}

.blog-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.blog-category-name {
  background: #CCC2A9;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 0.778rem;
  line-height: 1rem;
  font-weight: 500;
}

.blog-card-date {
  font-size: 0.778rem;
  line-height: 100%;
  color: rgba(0, 0, 0, 0.6);
}

.blog-card-title a {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}

.blog-card-more {
  font-size: 0.778rem;
  line-height: 100%;
  color: #3C0000;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 8px;
}
.blog-card-more img {
  transition: transform 0.2s ease;
}
.blog-card-more:hover img {
  transform: translateX(4px);
}

.blog-listing--grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: unset;
  gap: 1.333rem;
  width: 100%;
}
.blog-listing--grid .blog-card-media img {
  aspect-ratio: 336/220;
}
.blog-listing--grid .blog-card {
  padding: 24px;
}

.blog-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-top: 56px;
}
.blog-pagination__arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 30px;
  height: 30px;
  border-radius: 4px;
  background: #F3EEE2;
  box-shadow: 0px 0px 3.9px 0px rgba(0, 0, 0, 0.2);
  color: #6C1A1A;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.blog-pagination__arrow svg {
  width: 16px;
  height: 16px;
}
.blog-pagination__arrow--prev svg {
  transform: rotate(180deg);
}
.blog-pagination__arrow:not(.is-disabled):hover {
  box-shadow: 0 6px 16px rgba(60, 0, 0, 0.14);
  transform: translateY(-1px);
}
.blog-pagination__arrow.is-disabled {
  opacity: 0.4;
  pointer-events: none;
}
.blog-pagination__pages {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 12px;
}
.blog-pagination .page-numbers {
  font-family: var(--font-base);
  font-size: 16px;
  line-height: 100%;
  font-weight: 500;
  color: #8A8A8A;
  transition: color 0.2s ease;
}
.blog-pagination a.page-numbers:hover,
.blog-pagination .page-numbers.current {
  color: #3C0000;
}
.blog-pagination .page-numbers.current {
  font-weight: 700;
}
@media (max-width: 575px) {
  .blog-pagination {
    gap: 1.333rem;
  }
  .blog-pagination__arrow {
    width: 3.111rem;
    height: 3.111rem;
  }
  .blog-pagination__pages {
    gap: 1rem;
  }
  .blog-pagination .page-numbers {
    font-size: 1.333rem;
  }
}

.video-block {
  position: relative;
  overflow: hidden;
}

.video-block .video-poster,
.video-block .video-el {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.video-block .video-el {
  z-index: 0;
}

.video-block .video-poster {
  z-index: 1;
}

.video-block .video-play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  cursor: pointer;
  transition: transform 0.2s ease;
  background: transparent;
  border: 0;
}
.video-block .video-play-btn:hover {
  transform: translate(-50%, -50%) scale(1.08);
}

.video-block.is-playing .video-poster,
.video-block.is-playing .video-play-btn {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.hero-sr.post {
  position: relative;
}
.hero-sr.post::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 1;
}
.hero-sr.post .container {
  position: relative;
  z-index: 2;
}

.post-content {
  max-width: 760px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}
.post-content .blog-info {
  margin-bottom: 0.889rem;
}
.post-content p {
  font-size: 0.889rem;
  line-height: 1.333rem;
}
.post-content .entry-content {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}
.post-content .entry-content h1, .post-content .entry-content h2, .post-content .entry-content h3, .post-content .entry-content h4, .post-content .entry-content h5, .post-content .entry-content h6 {
  font-weight: 600;
}
.post-content .entry-content a {
  text-decoration: underline;
}
.post-content .entry-content ol {
  list-style: decimal;
  padding-inline-start: 1.2rem;
  font-size: 0.889rem;
  line-height: 1.333rem;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.post-content .entry-content ol ::marker {
  font-weight: 600;
}
.post-content .entry-content ol strong {
  font-weight: 600;
}
.post-content .entry-content ul {
  list-style: disc;
  padding-inline-start: 1.2rem;
  font-size: 0.889rem;
  line-height: 1.333rem;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.post-content .entry-content ul ::marker {
  font-weight: 600;
}
.post-content .entry-content ul strong {
  font-weight: 600;
}
.post-content .entry-content blockquote {
  position: relative;
  overflow: hidden;
  background: #3C0000;
  color: var(--color-white);
  padding: 5.333rem 4.444rem;
  text-align: center;
}
.post-content .entry-content blockquote::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../images/graphic.webp) no-repeat center center/cover;
  z-index: 1;
}
.post-content .entry-content blockquote * {
  position: relative;
  z-index: 2;
}
.post-content .entry-content blockquote p, .post-content .entry-content blockquote h1, .post-content .entry-content blockquote h2, .post-content .entry-content blockquote h3, .post-content .entry-content blockquote h4, .post-content .entry-content blockquote h5, .post-content .entry-content blockquote h6 {
  font-size: 1.556rem;
  line-height: 2rem;
  font-weight: 500;
  font-style: italic;
  font-family: var(--font-heading);
}

.performance.about-julia::before {
  background: url(../images/gr-about.webp) no-repeat left bottom/contain;
}
.performance.about-julia .image-area {
  display: flex;
  justify-content: center;
}
.performance.about-julia .top-h h4 {
  font-weight: 600;
  font-style: italic;
  max-width: 488px;
  letter-spacing: 3%;
}
.performance.about-julia .content ul {
  list-style: disc;
  padding-inline-start: 1.2rem;
  font-size: 1.111rem;
  line-height: 1.444rem;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}
.performance.about-julia .content ul a {
  text-decoration: underline;
}
.performance.about-julia .content p {
  font-size: 1rem;
  line-height: 1.333rem;
  font-weight: 400;
}

.related-posts .container {
  padding-block: 6.667rem;
  display: flex;
  flex-direction: column;
  gap: 3.333rem;
  align-items: center;
}
.related-posts h2 span {
  color: #3C0000;
  font-style: italic;
  font-weight: 500;
}

.testimonials-hero .content {
  max-width: 490px;
  margin: 0 auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}
.testimonials-hero .content p {
  color: #ECE5D4;
}

.testimonials-area {
  background: #EDE6D5;
}
.testimonials-area .testimonial-tabs .container {
  padding-block: 1.333rem !important;
  display: flex;
  gap: 2.222rem;
  overflow: auto;
}
.testimonials-area .testimonial-tabs .testimonial-tab {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 1rem;
  line-height: 1.333rem;
  color: #000;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  gap: 8px;
  white-space: nowrap;
}
.testimonials-area .testimonial-tabs .testimonial-tab::after {
  content: "";
  width: 0;
  height: 2px;
  background: #000000;
  transition: width 0.3s ease;
  border-radius: 1px;
}
.testimonials-area .testimonial-tabs .testimonial-tab.is-active::after {
  width: 100%;
}

.container.testimonial {
  padding: 4.444rem;
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
}

.testimonial-category {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
.testimonial-category[hidden] {
  display: none;
}
.testimonial-category h2 {
  font-weight: 500;
  font-style: italic;
}
.testimonial-category .testimonial-list {
  columns: 3;
  column-gap: 1.333rem;
}
.testimonial-category .testimonial-item {
  break-inside: avoid;
  display: flex;
  flex-direction: column;
  gap: 1.778rem;
  background: #F4F0E5;
  padding: 1.333rem;
  margin-bottom: 1.333rem;
}
.testimonial-category .testimonial-item.testimonial-item--video {
  padding: 0;
  height: 520px;
}
.testimonial-category .testimonial-item.testimonial-item--video .video-block {
  aspect-ratio: 16/9;
  width: 100%;
  height: 100%;
}
.testimonial-category .testimonial-item .video-play-btn {
  width: 42px;
}
.testimonial-category .testimonial-heading {
  font-weight: 600;
  letter-spacing: 3%;
  color: #3C0000;
}
.testimonial-category .testimonial-quote {
  font-size: 0.889rem;
  line-height: 1.222rem;
}
.testimonial-category .testimonial-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.testimonial-category .testimonial-name {
  font-weight: 600;
}
.testimonial-category .testimonial-role {
  font-size: 0.778rem;
  line-height: 1rem;
  color: #000000;
  font-weight: 500;
}
.testimonial-category .testimonial-location {
  font-size: 0.778rem;
  line-height: 1rem;
  color: #000000;
  font-weight: 500;
}

.legal-page .container {
  padding-top: 9.111rem;
  display: flex;
  flex-direction: column;
  gap: 4.444rem;
  align-items: center;
}
.legal-page .top-h {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
  max-width: 826px;
  width: 100%;
  align-items: center;
  text-align: center;
}
.legal-page .top-h p {
  font-weight: 500;
  font-size: 1.111rem;
  line-height: 1.444rem;
}
.legal-page .top-h p a {
  text-decoration: underline;
}
.legal-page .content {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
  width: 100%;
  max-width: 808px;
}
.legal-page .content span.updated {
  font-size: 0.778rem;
  line-height: 1rem;
  font-weight: 500;
}
.legal-page .content a {
  text-decoration: underline;
}
.legal-page .content p {
  font-size: 0.889rem;
  line-height: 1.333rem;
}
.legal-page .content h1, .legal-page .content h2, .legal-page .content h3, .legal-page .content h4, .legal-page .content h5, .legal-page .content h6 {
  font-weight: 600;
}
.legal-page .content ol {
  list-style: decimal;
  padding-inline-start: 1.2rem;
  font-size: 0.889rem;
  line-height: 1.333rem;
  font-weight: 500;
  display: flex;
  flex-direction: column;
}
.legal-page .content ol ::marker {
  font-weight: 600;
}
.legal-page .content ol strong {
  font-weight: 600;
}
.legal-page .content ul {
  list-style: disc;
  padding-inline-start: 1.2rem;
  font-size: 0.889rem;
  line-height: 1.333rem;
  font-weight: 500;
  display: flex;
  flex-direction: column;
}
.legal-page .content ul ::marker {
  font-weight: 600;
}
.legal-page .content ul strong {
  font-weight: 600;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.lets-talk [hidden] {
  display: none !important;
}
.lets-talk .lets-talk-step {
  padding: 7.778rem 5.333rem 8.419rem;
}
.lets-talk .lets-talk-step--form h1 {
  margin-bottom: 3.556rem;
}
.lets-talk h1 {
  text-align: center;
}
.lets-talk .lets-talk-intro {
  display: flex;
  gap: 4.444rem;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
.lets-talk .lets-talk-intro__form {
  max-width: 557px;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 3.111rem;
}
.lets-talk .lets-talk-intro__form h1 {
  text-align: left;
}
.lets-talk .lets-talk-intro__form .primary-btn {
  align-self: flex-end;
  border: 0;
  cursor: pointer;
}
.lets-talk .lets-talk-intro__image {
  flex: 1;
}
.lets-talk .lets-talk-intro__image img {
  width: 100%;
  object-fit: cover;
}
.lets-talk .lets-talk-options {
  display: flex;
  flex-direction: column;
  gap: 0.889rem;
}
.lets-talk .lets-talk-option {
  display: flex;
  align-items: center;
  gap: 1.111rem;
  padding: 1.5rem 1.556rem;
  border: 1.5px solid transparent;
  border-radius: 6px;
  background: #F4F0E5;
  cursor: pointer;
  font-family: var(--font-heading);
  font-size: 1.556rem;
  line-height: 2rem;
  transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
  justify-content: space-between;
}
.lets-talk .lets-talk-option input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.lets-talk .lets-talk-option__radio {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 2px solid #CCC2A9;
  flex-shrink: 0;
  position: relative;
  transition: border-color 0.2s ease;
}
.lets-talk .lets-talk-option__radio::after {
  content: "";
  position: absolute;
  inset: 4px;
  border-radius: 50%;
  background: var(--button-bg);
  transform: scale(0);
  transition: transform 0.15s ease;
}
.lets-talk .lets-talk-option.is-active {
  border-color: #3C0000;
  color: #3C0000;
  font-weight: 600;
}
.lets-talk .lets-talk-option.is-active .lets-talk-option__radio {
  border-color: var(--button-bg);
}
.lets-talk .lets-talk-option.is-active .lets-talk-option__radio::after {
  transform: scale(1);
}
.lets-talk .lets-talk-form {
  max-width: 791px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 2.667rem;
}
.lets-talk .form-row {
  display: flex;
  gap: 2.667rem;
  flex-wrap: wrap;
}
.lets-talk .form-row .form-field {
  flex: 1 1 260px;
}
.lets-talk .underline-input {
  display: block;
  width: 100%;
  border: 0;
  border-bottom: 1px solid rgba(58, 53, 41, 0.4);
  background: transparent;
  padding-bottom: 0.611rem;
  font-family: inherit;
  font-size: 0.778rem;
  color: var(--color-text);
  resize: none;
  overflow: hidden;
}
.lets-talk .underline-input::placeholder {
  color: #818181;
}
.lets-talk .underline-input:focus {
  outline: none;
  border-color: var(--button-bg);
}
.lets-talk .underline-input.has-error {
  border-color: #B00020;
}
.lets-talk .form-block {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}
.lets-talk .form-block h3 {
  font-family: var(--font-base);
  font-size: 1.111rem;
  line-height: 1.444rem;
  font-weight: 500;
}
.lets-talk .form-block__desc {
  font-size: 0.889rem;
  line-height: 1.222rem;
  color: rgba(58, 53, 41, 0.7019607843);
  margin-top: -0.667rem;
}
.lets-talk .form-block.has-error h3::after {
  content: " — please choose one";
  color: #B00020;
  font-weight: 400;
  font-size: 0.778rem;
}
.lets-talk .pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.556rem;
}
.lets-talk .pill-btn {
  border: 1px solid #CCC2A9;
  background: transparent;
  color: var(--color-text);
  padding: 0.5rem 0.833rem;
  border-radius: 4px;
  font-family: inherit;
  font-size: 0.778rem;
  line-height: 1rem;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  font-weight: 500;
}
.lets-talk .pill-btn.is-active {
  background: var(--button-bg);
  border-color: var(--button-bg);
  color: var(--color-white);
}
.lets-talk .lets-talk-form__error {
  color: #B00020;
  font-size: 0.889rem;
  text-align: center;
}
.lets-talk .lets-talk-form__submit {
  display: flex;
  justify-content: center;
}
.lets-talk .lets-talk-form__submit .primary-btn {
  border: 0;
  cursor: pointer;
  font-family: inherit;
  min-width: 180px;
}
.lets-talk .lets-talk-form__submit .primary-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.lets-talk .lets-talk-form__submit .primary-btn.is-loading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  opacity: 0.85;
  cursor: wait;
}
.lets-talk .lets-talk-form__submit .primary-btn.is-loading::after {
  content: "";
  width: 16px;
  height: 16px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: jc-spin 0.7s linear infinite;
}
.lets-talk .lets-talk-success {
  max-width: 610px;
  margin: 0 auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 1.111rem;
}

.hero-sr.sub-services .content {
  max-width: 712px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: 1.778rem;
  color: #fff;
  align-items: center;
  text-align: center;
}
.hero-sr.sub-services .content h1 {
  max-width: 100%;
  min-height: unset;
}
.hero-sr.sub-services .content p {
  max-width: 583px;
}

.available-ser {
  background: #CCC2A9;
}
.available-ser .content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.667rem;
  max-width: 852px;
  text-align: center;
  margin: 0 auto;
}
.available-ser .content h2 {
  max-width: 625px;
}
.available-ser .content .text {
  display: flex;
  gap: 2.222rem;
  align-items: baseline;
}
.available-ser .content .text p {
  max-width: 349px;
  font-size: 1.111rem;
  line-height: 1.444rem;
  text-align: left;
}

.busniess-info .content .text-ser {
  display: flex;
  flex-direction: column;
  gap: 1.778rem;
}
.busniess-info .content .text-ser p {
  font-size: 1rem;
  line-height: 1.333rem;
  font-weight: 400;
  font-style: normal;
}
.busniess-info .content .text-ser p strong {
  font-weight: 500;
}

.work-sr {
  background: #F4F0E5;
}
.work-sr .container {
  padding: 7.111rem 8rem;
  display: flex;
  flex-direction: column;
  gap: 4.444rem;
}
.work-sr .top-heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.222rem;
}
.work-sr .top-heading span {
  font-size: 1.111rem;
  line-height: 1.444rem;
  text-align: center;
}
.work-sr .top-heading em {
  color: #3C0000;
}
.work-sr .top-heading h4 {
  font-weight: 600;
  letter-spacing: 3%;
}
.work-sr .top-heading h4 span {
  color: #6C0000;
  font-size: inherit;
  line-height: inherit;
}
.work-sr .content {
  display: flex;
  gap: 4.444rem;
  align-items: center;
}
.work-sr .content .text {
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
  max-width: 632px;
}
.work-sr .content .text .list {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}
.work-sr .content .text .list h3 {
  display: flex;
  gap: 0.889rem;
  align-items: flex-start;
  padding-bottom: 1.333rem;
  border-bottom: 1px solid #CCC2A9;
  color: #3C0000;
  font-weight: 600;
}
.work-sr .content .text .list h3 span {
  color: #CCC2A9;
}
.work-sr .content .text .list h3 p {
  font-size: 1.111rem;
  line-height: 1.444rem;
  color: var(--color-text);
  font-family: var(--font-base);
  font-weight: 400;
  letter-spacing: 0;
}
.work-sr .content .text .list:last-child h3.no-title {
  padding-bottom: 0;
  border-bottom: 0;
}
.work-sr .content .media {
  display: flex;
  flex-direction: column;
  gap: 2.222rem;
}
.work-sr .content .media .other-info {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-left: 1.778rem;
  position: relative;
}
.work-sr .content .media .other-info::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 4px;
  height: 60px;
  background: #6C0000;
}
.work-sr .content .media .other-info span {
  font-size: 0.778rem;
  line-height: 1rem;
  text-transform: uppercase;
  color: #6C0000;
  letter-spacing: 12%;
  font-weight: 600;
}

.need-sr .container {
  display: flex;
  gap: 3.556rem;
  align-items: center;
}
.need-sr .content {
  max-width: 590px;
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
}
.need-sr .content em {
  color: #3C0000;
}
.need-sr .content .text {
  display: flex;
  flex-direction: column;
  gap: 1.778rem;
}
.need-sr .content .text h3 {
  color: #6C0000;
  font-weight: 600;
}
.need-sr .content .text p {
  font-size: 1.111rem;
  line-height: 1.444rem;
}

.review-sr .top-heading {
  display: flex;
  flex-direction: column;
  gap: 1.222rem;
}
.review-sr .top-heading .other-text {
  font-weight: 500;
  max-width: 681px;
  font-size: 0.894rem;
  line-height: 1.222rem;
}

.review.review-sr .review-box .content .text .divider {
  max-width: 689px;
}

.conversation.con-sr .container {
  padding-block: 5.333rem 0;
  align-items: flex-end;
}
.conversation.con-sr .content {
  padding-bottom: 5.333rem;
}
.conversation.con-sr .content .steps {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.conversation.con-sr .content .steps .step {
  display: flex;
  gap: 0.889rem;
  align-items: center;
  padding-bottom: 1rem;
  border-bottom: 1px solid #CCC2A9;
}
.conversation.con-sr .content .steps .step:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.conversation.con-sr .content .steps .step .number {
  font-size: 2.111rem;
  line-height: 2.444rem;
  font-family: var(--font-heading);
  color: #CCC2A9;
}
.conversation.con-sr .content .steps .step p {
  font-size: 1.111rem;
  line-height: 1.444rem;
  font-weight: 500;
}

.attention-sr {
  background: #E6DCC4;
}
.attention-sr .container {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
.attention-sr h2 {
  max-width: 600px;
}
.attention-sr .content {
  display: flex;
  gap: 4rem;
  align-items: center;
}
.attention-sr p {
  max-width: 637px;
  font-size: 1.111rem;
  line-height: 1.444rem;
}

.retainer {
  background: #E6DCC4;
}
.retainer .container {
  display: flex;
  gap: 3.556em;
}
.retainer .media {
  display: flex;
  flex-direction: column;
  gap: 2.222rem;
}
.retainer .media h2 {
  max-width: 492px;
}
.retainer .content {
  display: flex;
  flex-direction: column;
  gap: 2.222rem;
  justify-content: center;
  max-width: 608px;
}
.retainer .content .roles {
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
}
.retainer .content .roles .role {
  display: flex;
  gap: 0.889rem;
  align-items: baseline;
  padding-bottom: 1.333rem;
  border-bottom: 1px solid #CCC2A9;
}
.retainer .content .roles .role:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.retainer .content .roles .role .number {
  font-size: 2.111rem;
  line-height: 2.444rem;
  font-family: var(--font-heading);
  color: #CCC2A9;
  letter-spacing: 1%;
}
.retainer .content .roles .role .text {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.retainer .content .roles .role .text h3 {
  font-weight: 600;
  color: #3C0000;
}
.retainer .content .roles .role .text span {
  font-size: 0.778rem;
  line-height: 1rem;
}

.right-door-sr {
  background: #F4F0E5;
}
.right-door-sr .container {
  padding-block: 6.667rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3.556rem;
  text-align: center;
}
.right-door-sr .content {
  max-width: 842px;
  display: flex;
  flex-direction: column;
  gap: 1.333rem;
  align-items: center;
}
.right-door-sr .content h4 {
  font-weight: 500;
  letter-spacing: 2%;
}
.right-door-sr .content p {
  font-style: italic;
}

.page-id-7706 .busniess-info .content .text-ser p {
  max-width: 573px;
  font-size: 20px;
  line-height: 26px;
}

.page-id-7728 .busniess-info .content .text-ser p {
  max-width: 523px;
  font-size: 20px;
  line-height: 26px;
}

.conversation .container .banner-img img {
  margin: 0 auto;
}

.page-id-7647 .conversation .container .content {
  gap: 32px;
}

@media (max-width: 1600px) and (min-width: 1250px) and (min-height: 600px) {
  .page-id-7677 .available-ser {
    height: 100dvh;
  }
  .page-id-7677 .available-ser .container {
    height: 100%;
    padding-block: 3.5rem;
  }
  .page-id-7677 .available-ser .content {
    height: 100%;
  }
  .page-id-7677 .available-ser .auto-h {
    flex: 1;
    overflow: hidden;
  }
  .page-id-7677 .available-ser .auto-h img {
    height: 100%;
    object-fit: cover;
  }
}
@media (min-width: 1250px) and (min-height: 600px) {
  .right-door-sr {
    height: 100dvh;
  }
  .right-door-sr .container {
    height: 100%;
    padding-block: 3.5rem;
    gap: 2.5rem;
  }
  .right-door-sr .auto-h {
    flex: 1;
    overflow: hidden;
  }
  .right-door-sr .auto-h img {
    height: 100%;
    object-fit: cover;
  }
}
.media-articles {
  background: #EDE6D5;
}
.media-articles .container {
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
  align-items: center;
}
.media-articles .blog-info span.tag {
  font-family: var(--font-heading);
  font-weight: 500;
}
.media-articles .blog-card-title a {
  -webkit-line-clamp: unset;
  line-clamp: unset;
}

.hero-sr.sub-services.family .content {
  max-width: 622px;
}
.hero-sr.sub-services.family .content p {
  max-width: 473px;
}

.attention-sr.family h2 {
  max-width: unset;
}

.review.review-family {
  height: unset;
}
.review.review-family::before {
  background: url(../images/graphic-f.webp) no-repeat bottom/cover;
}
.review.review-family.review2::before {
  background: url(../images/graphic-f2.webp) no-repeat bottom/cover;
}
.review.review-family.review2 .review-box {
  max-width: 779px;
}
.review.review-family .container {
  padding-bottom: 4.444rem;
}
@media (min-width: 1650px) {
  .review.review-family .container {
    padding: 5.333rem 4.444rem;
  }
}
.review.review-family .review-box {
  max-width: 715px;
}
.review.review-family .review-box .content .text h3 {
  font-size: 2.111rem;
  line-height: 2.444rem;
  font-weight: 600;
}

.familly-call .container {
  display: flex;
  flex-direction: column;
  gap: 3.556rem;
  align-items: center;
}
.familly-call .boxes {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.333rem;
  max-width: 100%;
}
.familly-call .boxes .box {
  background: #F4F0E5;
  padding: 1.333rem;
}
.familly-call .boxes h4 {
  font-weight: 600;
  color: #3C0000;
  letter-spacing: 3%;
}

.need-sr .content h2 span {
  color: #3C0000;
}

.familly-testimonial .testimonial-category {
  gap: 3.556rem;
  align-items: center;
}
.familly-testimonial .testimonial-category .testimonial-list {
  columns: unset;
  column-gap: 1.333rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.familly-testimonial .testimonial-category .testimonial-quote {
  flex: 1;
}
.familly-testimonial .testimonial-category h2 {
  font-weight: 400;
  font-style: unset;
}

.retainer.family .content h2 {
  color: #3C0000;
}

.faq-family {
  background: #fff;
}
.faq-family div.content {
  max-width: 566px;
  display: flex;
  flex-direction: column;
  gap: 4.444rem;
  align-items: center;
  margin: 0 auto;
}
.faq-family div.content h2 {
  text-align: center;
  max-width: 400px;
}

.page-id-7677 .need-sr .content .text h3 {
  order: 2;
}

.page-id-7647 .need-sr .content .text p {
  max-width: 473px;
}

.work-sr.services.sub {
  background: #E6DCC4;
}
.work-sr.services.sub .content {
  width: 100%;
  align-items: center;
}
.work-sr.services.sub .content .media {
  flex: 1;
}
.work-sr.services.sub .container .text {
  max-width: unset;
  flex: 1;
}
.work-sr.services.sub .container .text .list h3 {
  font-weight: 400;
  align-items: flex-start;
}
.work-sr.services.sub .container .text .list h3 span.heading {
  max-width: 378px;
  color: #000;
}

.faq-family.media div.content {
  max-width: 742px;
}
.faq-family.media div.content .faq-list {
  width: 100%;
}
.faq-family.media div.content .faq-answer p {
  max-width: 100%;
}

.page-id-195 .facade .container {
  padding-bottom: 0 !important;
}
.page-id-195 .facade .content .text {
  justify-content: center;
}

.work-sr.services.table .content {
  width: 100%;
}
.work-sr.services.table .container .text {
  max-width: unset;
  flex: 1;
}
.work-sr.services.table h4 {
  margin-top: 2rem;
}
.work-sr.services.table h4 em {
  color: #3C0000;
}

.experiences.services.table .top-h {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  max-width: 484px;
  text-align: center;
}

.we-walk.adv {
  background: #F4F0E5;
}
.we-walk.adv .label p {
  max-width: 710px;
}

.my-works.table {
  height: auto;
}
.my-works.table .bottom-text p {
  font-size: 16px;
}

.media-articles.events-boxes {
  background: #FBF9F4;
}
.media-articles.events-boxes .top-h {
  display: flex;
  flex-direction: column;
  gap: 0.889rem;
  align-items: center;
  text-align: center;
}
.media-articles.events-boxes .top-h p {
  font-size: 0.889rem;
  line-height: 1.222rem;
  max-width: 376px;
}
.media-articles.events-boxes .top-h span.tag-text {
  font-size: 14px;
  line-height: 18px;
  letter-spacing: 12%;
  color: #3C0000;
  font-weight: 600;
}
.media-articles.events-boxes--two {
  background: #EDE6D5;
}
.media-articles.events-boxes--two .container {
  align-items: flex-start;
}
.media-articles.events-boxes--two .top-h {
  align-items: self-start;
  text-align: left;
}
.media-articles.events-boxes--two .top-h p {
  max-width: unset;
}
.media-articles.events-boxes--two .top-h em {
  color: #6C0000;
}
.media-articles.events-boxes--two .blog-card-media {
  max-height: 260px;
}
.media-articles.events-boxes--two .blog-card {
  padding: 0;
  overflow: hidden;
  gap: 0;
}
.media-articles.events-boxes--two .blog-card-body {
  padding: 24px;
}
.media-articles.events-boxes--two .blog-content p {
  font-size: 1rem;
  line-height: 1.333rem;
}
.media-articles.events-boxes--two .blog-content {
  gap: 1rem;
}

.media-articles.events-boxes--two .blog-listing--grid {
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 768px) {
  .media-articles.events-boxes--two .blog-listing--grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1450px) {
  .container {
    padding: 4.333rem 3.333rem !important;
  }
  .busniess-info .container > img {
    width: 50%;
  }
  .busniess-info .content p {
    padding: 0;
  }
  .services-area .container > img {
    width: 50%;
  }
  .services-area .content {
    max-width: 100%;
    padding-inline: 0;
  }
  .conversation .container {
    padding-bottom: 0 !important;
  }
  .conversation .container .content {
    max-width: unset;
    flex: 1;
    padding-bottom: 0rem;
  }
  .what-changes .content .title {
    flex: 1;
    max-width: unset;
  }
  .picture-perfect .content {
    gap: 1.556rem;
  }
  .picture-perfect .content .text {
    max-width: unset;
    flex: 1;
  }
  .performance::before {
    left: -198px;
  }
  .performance .content, .rebuild .content {
    max-width: unset;
    flex: 1;
  }
  .performance .container {
    padding-bottom: 0 !important;
  }
  .facade .content {
    gap: 2.556rem;
    align-items: flex-start;
  }
  .facade .content .text {
    max-width: unset;
    flex: 1;
  }
  .done-work .content {
    max-width: unset;
    flex: 1;
  }
  .done-work .container > img {
    width: 50%;
  }
  .lets-talk .lets-talk-intro__form {
    max-width: unset;
    flex: 1;
  }
  .lets-talk .lets-talk-step {
    padding-top: 7.778rem !important;
  }
  .legal-page .container {
    padding-top: 9.111rem !important;
  }
  header .menu-area .menu {
    gap: 1rem;
  }
  .need-sr .container > img {
    width: 50%;
  }
  .need-sr .content {
    max-width: unset;
    flex: 1;
  }
  .work-sr.services .container .text {
    max-width: unset;
    flex: 1;
  }
  .work-sr .content .media {
    width: 50%;
  }
  .table-services .content .text {
    max-width: unset;
    flex: 1;
  }
  .table-services .content > img {
    width: 50%;
  }
  .work-sr .content .text {
    max-width: unset;
    flex: 1;
  }
  .retainer .media {
    width: 50%;
  }
  .retainer .content {
    max-width: unset;
    flex: 1;
  }
  .collapse .top-h {
    gap: 1rem;
  }
  .collapse .container {
    gap: 1.556rem;
  }
  .collapse .content {
    gap: 2rem;
  }
  .collapse .content > img {
    width: 50%;
  }
  .collapse .content p {
    max-width: unset;
  }
  .attention-sr .container {
    gap: 2rem;
  }
  .attention-sr .content {
    gap: 2rem;
  }
  .attention-sr .content > img {
    width: 50%;
    flex: 1;
  }
  .how-we .content .text > img {
    width: 50%;
  }
  .how-we .content .text .discription {
    max-width: unset;
  }
  .practice .container > img {
    width: 45%;
  }
  .page-id-195 .rebuild .container > .img-area {
    width: 50%;
  }
}
@media (min-width: 1024px) and (max-width: 1450px) {
  .review .container {
    padding-block: 14.333rem 2.528rem !important;
  }
}
@media (max-width: 1200px) {
  .site-header .menu-area,
  .site-header .action-btn {
    display: none;
  }
  .mobile-menu {
    display: block;
  }
  header .container {
    padding: 18px 16px !important;
  }
  .review .container {
    justify-content: flex-start;
  }
  .review .review-box {
    max-width: 720px;
  }
  .ser-list .content {
    flex-direction: column;
  }
  .ser-list .content p {
    max-width: 100%;
  }
  .how-we .content .text {
    gap: 1.556rem;
  }
  .review.review-family .container {
    justify-content: center;
  }
  .familly-call .boxes {
    grid-template-columns: repeat(3, 1fr);
  }
  .featured .container {
    gap: 1rem;
  }
}
@media (max-width: 1024px) {
  h1 {
    font-size: 2.7rem;
    line-height: 3.2rem;
  }
  h2 {
    font-size: 2.3rem;
    line-height: 2.5rem;
  }
  h3 {
    font-size: 2rem;
    line-height: 2.3rem;
  }
  .container {
    padding: 3.333rem 2.333rem !important;
  }
  .intro .experties {
    gap: 1rem;
  }
  .intro .experties .experty {
    padding-inline: 1rem;
  }
  .intro .experties .experty::after {
    right: 0;
  }
  .conversation .container .content p {
    max-width: 541px;
    font-size: 1rem;
    line-height: 1.333rem;
  }
  .how-we .content .disc p:first-child {
    flex: 1;
  }
  .what-changes .content {
    gap: 2.444rem;
  }
  .what-changes .benefits img {
    width: 50%;
    object-fit: cover;
  }
  .what-changes .benefits {
    padding-block: 0;
  }
  .what-changes .benefits .list {
    justify-content: center;
  }
  .what-changes .benefits .list h4 {
    padding-block: 1.333rem;
  }
  .first-step .content .text p:first-child {
    flex: 1;
    max-width: unset;
  }
  .hero-sr.story {
    background-position: bottom;
  }
  .performance::before {
    left: -259px;
  }
  .performance .container {
    align-items: flex-end;
  }
  .rebuild .container {
    gap: 1.556rem;
  }
  .coach .container {
    gap: 1.556rem;
  }
  .coach .container .content {
    flex: 1;
  }
  .coach .container > img {
    flex: 1;
    width: 50%;
  }
  .done-work .container {
    gap: 3.444rem;
  }
  .done-work .container > img {
    width: 45%;
  }
  .disarming .container .content {
    gap: 2rem;
  }
  .disarming .container .content h3 {
    max-width: unset;
    flex: 1;
  }
  .disarming .container .content p {
    max-width: unset;
    flex: 1;
    padding-right: 0;
  }
  .testimonial-category .testimonial-list {
    columns: 2;
  }
  .blog-listing--grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .faq-area .faq-category .container {
    gap: 2.222rem;
  }
  .faq-area .faq-category-title {
    flex: 1;
  }
  .lets-talk .lets-talk-intro {
    gap: 2.444rem;
  }
  .need-sr .container, .need-sr .content {
    gap: 1.556rem;
  }
  .we-walk .content .procedure {
    gap: 1.111rem;
  }
  .work-sr .content {
    gap: 1.444rem;
  }
  .table-services .content {
    gap: 1.556rem;
  }
  .table-services .container {
    gap: 2.667rem;
  }
  .familly-call .boxes {
    grid-template-columns: repeat(2, 1fr);
  }
  .familly-testimonial .testimonial-category .testimonial-list {
    grid-template-columns: repeat(2, 1fr);
  }
  .practice .content, .practice .container {
    gap: 1.556rem;
  }
  .table-today .container {
    gap: 2rem;
  }
}
@media (max-width: 850px) {
  .busniess-info .container, .busniess-info .content {
    gap: 2.444rem;
  }
  .busniess-info .container > img {
    width: 45%;
  }
  .services-area .container > img {
    width: 45%;
  }
  .services-area .content, .services-area .container {
    gap: 1.556rem;
  }
  .experiences .videos-area {
    grid-template-columns: repeat(2, 1fr);
  }
  .we-walk .content .procedure {
    grid-template-columns: repeat(2, 1fr);
  }
  .performance::before {
    left: -321px;
  }
  .ser-list .list {
    grid-template-columns: repeat(2, 1fr);
  }
  .ser-list .list .item, .ser-list .list .item:nth-last-child(2):nth-child(3n+1), .ser-list .list .item:last-child:nth-child(3n+2) {
    grid-column: unset;
  }
}
@media (max-width: 768px) {
  h1 {
    font-size: 2.111rem;
    line-height: 2.444rem;
  }
  h2, h3 {
    font-size: 1.667rem;
    line-height: 1.889rem;
  }
  h4 {
    font-size: 1.333rem;
    line-height: 1.556rem;
  }
  .home-hero .container {
    padding: 14.5rem 2.222rem 14.444rem !important;
  }
  .home-hero .content h1 br {
    display: none;
  }
  .busniess-info .container {
    flex-direction: column;
    gap: 4.444rem;
  }
  .busniess-info .container h2 {
    font-size: 2.111rem;
    line-height: 2.444rem;
  }
  .busniess-info .content {
    gap: 2.222rem;
  }
  .busniess-info .container > img {
    width: 100%;
  }
  .services-area .container {
    flex-direction: column;
    gap: 3.111rem;
  }
  .services-area .content {
    gap: 1.333rem;
  }
  .services-area .container > img {
    width: 100%;
  }
  .my-works .bottom-text strong {
    font-size: 1.111rem;
    line-height: 1.444rem;
  }
  .my-works .bottom-text p {
    font-size: 0.889rem;
    line-height: 1.222rem;
  }
  .intro .content .text {
    display: flex;
    gap: 2.222rem;
    flex-direction: column;
  }
  .intro .experties {
    width: 100%;
    grid-template-columns: repeat(2, 1fr);
  }
  .intro .experties .experty {
    padding-inline: 0;
    align-items: center;
  }
  .intro .experties .experty::after {
    display: none;
  }
  .intro .experties .experty span {
    text-align: center;
  }
  .qualification .intro .experties .experty:last-child:nth-child(n) {
    grid-column: auto;
  }
  .qualification .intro .experties .experty:last-child:nth-child(odd) {
    grid-column: span 2;
  }
  .work-with .container {
    flex-direction: column;
  }
  .work-with .container .content {
    gap: 3.566rem;
  }
  .review .review-box {
    gap: 16px;
  }
  .review .review-box > img {
    width: 30px;
  }
  .review .review-box .content .text h3, .review .review-box .content .text h4 {
    font-size: 1.25rem;
    line-height: 1.5rem;
  }
  .conversation .container {
    flex-direction: column-reverse;
  }
  .conversation .container .content p {
    max-width: 100%;
  }
  .conversation .container .banner-img {
    width: 100%;
  }
  .blog-listing {
    grid-template-columns: 1fr;
    grid-template-rows: unset;
  }
  .blog-card--featured {
    grid-row: 1;
  }
  .blog-section .container {
    gap: 2.222rem;
  }
  .blog-card-media img {
    aspect-ratio: 297/264;
  }
  .hero-sr .content .text {
    flex-direction: column;
  }
  .hero-sr .content .text p:first-child {
    max-width: 100%;
  }
  .hero-sr {
    background-position: -267px;
  }
  .we-walk .content .procedure {
    grid-template-columns: repeat(1, 1fr);
  }
  .ser-list .list {
    grid-template-columns: repeat(1, 1fr);
  }
  .ser-list .list .item,
  .ser-list .list .item:nth-last-child(2):nth-child(3n+1),
  .ser-list .list .item:last-child:nth-child(3n+2) {
    grid-column: auto;
  }
  .what-changes .container {
    gap: 1.778rem;
  }
  .what-changes .content {
    gap: 2.222rem;
    flex-direction: column;
    padding-top: 1.778rem;
  }
  .what-changes .content .title {
    font-size: 1.667rem;
    line-height: 1.889rem;
  }
  .what-changes .content p {
    font-size: 0.889rem;
    line-height: 1.222rem;
    gap: 0.889rem;
  }
  .what-changes h2 {
    min-height: unset;
  }
  .what-changes .benefits {
    flex-direction: column;
    gap: 2.222rem;
  }
  .what-changes .benefits .list h4 {
    font-size: 1.333rem;
    line-height: 1.556rem;
    letter-spacing: 1%;
  }
  .what-changes .benefits img {
    width: 100%;
  }
  .what-changes .note {
    font-size: 1.333rem;
    line-height: 1.556rem;
    letter-spacing: 1%;
    text-align: left;
    font-weight: 500;
  }
  .conversation {
    background: linear-gradient(-0.38deg, #EDE6D5 25.89%, #FBF9F4 58.43%);
  }
  .first-step .content .text {
    gap: 2.222rem;
    flex-direction: column;
  }
  .first-step .content h2 {
    padding-bottom: 0;
    border-bottom: 0;
  }
  .hero-sr.story {
    background-position: 64%;
  }
  .hero-sr.story .container {
    align-items: flex-start;
    padding-bottom: 5.333rem !important;
    padding-top: 112px !important;
  }
  .hero-sr.story .content {
    gap: 2.222rem;
  }
  .hero-sr.story .content h1 {
    min-height: auto;
  }
  .picture-perfect .container {
    gap: 2.222rem;
  }
  .picture-perfect .content {
    flex-direction: column;
    gap: 3.556rem;
  }
  .picture-perfect .content .text {
    gap: 1.778rem;
  }
  .picture-perfect .content .text p, .picture-perfect .content .text .story-text p {
    font-size: 0.889rem;
    line-height: 1.222rem;
  }
  .picture-perfect .content .img-col {
    gap: 8px;
  }
  .picture-perfect .content .img-col img {
    width: calc(50% - 4px);
  }
  .picture-perfect .content .img-col img:nth-child(1) {
    width: 100%;
  }
  .performance .container {
    flex-direction: column-reverse;
  }
  .performance::before {
    left: 0;
    right: -50%;
  }
  .facade .container {
    gap: 2.222rem;
  }
  .facade .content {
    gap: 2.222rem;
    align-items: flex-start;
    flex-direction: column-reverse;
  }
  .facade .content .img-area {
    width: 100%;
  }
  .collapse .top-h h3 {
    font-size: 1.333rem;
    line-height: 1.556rem;
  }
  .collapse .container {
    gap: 2.222rem;
  }
  .collapse .content p {
    font-size: 0.889rem;
    line-height: 1.222rem;
  }
  .collapse .content {
    max-width: 100%;
    flex-direction: column;
  }
  .collapse .content > img {
    width: unset;
  }
  .rebuild .container {
    gap: 3.556rem;
    flex-direction: column-reverse;
  }
  .rebuild .container .top-h h3 {
    font-size: 1.333rem;
    line-height: 1.556rem;
  }
  .rebuild .container .content p {
    font-size: 0.889rem;
    line-height: 1.222rem;
    max-width: 100%;
  }
  .synthesis .container .content .top-h h3 {
    font-size: 1.333rem;
    line-height: 1.556rem;
  }
  .synthesis .container .content p {
    font-size: 0.889rem;
    line-height: 1.222rem;
  }
  .coach .container {
    gap: 3.556rem;
    flex-direction: column;
  }
  .coach .container h3 {
    font-size: 1.333rem;
    line-height: 1.556rem;
  }
  .coach .container p {
    font-size: 0.889rem;
    line-height: 1.222rem;
  }
  .coach .container > img {
    width: unset;
  }
  .done-work .container {
    gap: 2.222rem;
    flex-direction: column;
  }
  .done-work .container > img {
    width: 100%;
  }
  .done-work .content p {
    font-size: 0.889rem;
    line-height: 1.222rem;
  }
  .busniess-info.media .content p, .busniess-info.media .content ul.list li {
    font-size: 1rem;
    line-height: 1.333rem;
  }
  .disarming .container .content {
    gap: 4.444rem;
    flex-direction: column;
  }
  .disarming .container .content p {
    font-size: 0.889rem;
    line-height: 1.222rem;
  }
  .testimonial-category .testimonial-list {
    columns: 1;
  }
  .blog-listing--grid {
    grid-template-columns: repeat(1, 1fr);
  }
  .hero-sr.post {
    background-position: center;
    min-height: auto;
  }
  .hero-sr.post .container {
    padding-block: 6.75rem !important;
  }
  .post-content .entry-content blockquote {
    padding: 2.667rem 0.889rem;
  }
  .related-posts .container {
    gap: 2.222rem;
  }
  .faq-area .faq-category .container {
    gap: 3.556rem;
    flex-direction: column;
  }
  .lets-talk .lets-talk-intro {
    gap: 4.444rem;
    flex-direction: column;
  }
  .lets-talk .lets-talk-option {
    font-size: 1.333rem;
    line-height: 1.556rem;
  }
  footer .top-section {
    gap: 8px;
    flex-direction: column;
  }
  footer .top-section .footer-links .menu {
    font-size: 14px;
    line-height: 20px;
  }
  footer .top-section .news-letter {
    margin-top: 32px;
  }
  footer .top-section .news-letter span.copy {
    display: none;
  }
  footer .footer-logo {
    display: flex;
    flex-direction: column;
    gap: 40px;
  }
  footer .footer-logo span.copy {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 0.778rem;
    line-height: 1rem;
  }
  footer .top-section .news-letter, footer .top-section .news-letter .form .tnp-subscription {
    width: 100%;
    max-width: 100%;
  }
  .need-sr .container {
    flex-direction: column-reverse;
  }
  .need-sr .content {
    max-width: 100%;
    flex: 1;
  }
  .need-sr.services .content .text p {
    max-width: 100%;
    min-height: unset;
  }
  .need-sr .container > img {
    width: unset;
  }
  .we-walk .container {
    gap: 1.444rem;
  }
  .we-walk .content .procedure .item .top-h h3 {
    font-size: 1.333rem;
    line-height: 1.556rem;
  }
  .we-walk .content .procedure {
    gap: 2.111rem;
  }
  .work-sr .content {
    gap: 4.444rem;
    flex-direction: column;
  }
  .work-sr.services .container .text .list h3 p {
    font-size: 0.889rem;
    line-height: 1.222rem;
  }
  .work-sr.services .container .text .list h3 {
    font-size: 1.333rem;
    line-height: 1.556rem;
  }
  .work-sr .container {
    gap: 1.778rem;
  }
  .work-sr .content .media {
    width: unset;
  }
  .table-services .content {
    gap: 1.778rem;
    flex-direction: column;
  }
  .table-services .content > img {
    width: 100%;
  }
  .table-services .container h2 {
    font-weight: 600;
  }
  .conversation.con-sr .content .steps .step p {
    font-size: 1rem;
    line-height: 1.333rem;
  }
  .attention-sr .container {
    gap: 1.444rem;
  }
  .attention-sr h2, .attention-sr p {
    max-width: 100%;
  }
  .retainer .container {
    flex-direction: column;
    gap: 1.556em;
  }
  .retainer .media {
    width: 100%;
  }
  .conversation.con-sr .content {
    padding-bottom: 0;
  }
  .home .review .review-box .content .text h3, .home .review .review-box .content .text h4 {
    font-size: 1.2rem;
    line-height: 1.4rem;
  }
  .attention-sr .content {
    flex-direction: column;
  }
  .attention-sr .content > img {
    width: unset;
	flex:unset;  
  }
  .ser-list .content h2 {
    width: 100%;
  }
  .ser-list .content {
    gap: 1.778rem;
  }
  .ser-list .content p {
    font-size: 1rem;
    line-height: 1.333rem;
  }
  .ser-list .container {
    gap: 3.556rem;
  }
  .need-sr.new-sr .container {
    flex-direction: column;
  }
  .page-id-7934 .need-sr .content p {
    max-width: 100%;
  }
  .how-we .content .text {
    flex-direction: column;
  }
  .how-we .content .text > img {
    width: 100%;
  }
  .how-we .container {
    gap: 2.667rem;
  }
  .we-walk.new-sr .container {
    gap: 2.667rem;
  }
  .familly-testimonial .testimonial-category .testimonial-list {
    grid-template-columns: repeat(1, 1fr);
  }
  .familly-testimonial .testimonial-category {
    gap: 2.556rem;
  }
  .practice .container {
    gap: 3.556rem;
    flex-direction: column;
  }
  .practice .container > img {
    width: auto;
  }
  .table-today .container {
    gap: 1.5rem;
    flex-direction: column;
  }
  .table-today .content h2 br {
    display: none;
  }
  .page-id-195 .rebuild .container {
    flex-direction: column;
    gap: 1.556rem;
  }
  .page-id-195 .rebuild .container > .img-area {
    width: 100%;
  }
  .page-id-195 .rebuild .container br {
    display: none;
  }
  .page-id-195 .rebuild .content {
    gap: 0;
  }
}
@media (max-width: 600px) {
  .home-hero .container {
    padding: 4rem 1.333rem !important;
  }
  .container {
    padding: 2.667rem 1.333rem !important;
  }
  .intro .content > img {
    padding: 0 31px;
  }
  .intro .experties {
    width: 100%;
    gap: 24px;
  }
  .intro .experties span {
    font-size: 16px;
  }
  .experiences .videos-area {
    grid-template-columns: repeat(1, 1fr);
  }
  .experiences .primary-btn {
    width: 100%;
    text-align: center;
  }
  .conversation .primary-btn {
    width: 100%;
    text-align: center;
  }
  .how-we .content .disc {
    flex-direction: column;
  }
  .how-we .content .banner-img {
    aspect-ratio: 345/204;
    object-fit: cover;
  }
  .how-we .content .disc p {
    font-size: 0.889rem;
    line-height: 1.333rem;
  }
  .how-we .content .primary-btn {
    width: 100%;
    text-align: center;
  }
  .ser-list .list .item .primary-btn, .first-step .content .primary-btn {
    width: 100%;
    text-align: center;
  }
  .performance::before {
    right: -84%;
  }
  .coach .container > img {
    width: 100%;
  }
  .lets-talk .lets-talk-intro__form .primary-btn {
    width: 100%;
  }
  footer .top-section .news-letter .form form {
    flex-direction: column;
  }
  footer .top-section .news-letter .form .tnp-field .tnp-submit {
    width: 100%;
  }
  .asking-services .content {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.778rem;
  }
  .hero-sr.story .container {
    padding-top: 80px !important;
  }
  footer .container {
    padding-top: 4rem !important;
  }
  .brand {
    padding: 1rem 0;
  }
  .services-area .container {
    padding-top: 0 !important;
    gap: 1.111rem;
  }
  .hero-sr.services .content {
    gap: 1.556rem;
  }
  .synthesis .container .content .text {
    gap: 1rem;
    flex-direction: column;
  }
  .available-ser .content {
    gap: 1.667rem;
  }
  .available-ser .content .text {
    flex-direction: column;
    width: 100%;
    gap: 1.222rem;
  }
  .available-ser .content .text p {
    max-width: 100%;
    font-size: 1rem;
    line-height: 1.333rem;
  }
  .familly-call .container {
    gap: 2.556rem;
  }
  .familly-call .boxes {
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem;
  }
  .review.review-family .review-box .content .text h3 {
    font-size: 1.25rem;
    line-height: 1.5rem;
  }
  .wait-list form {
    flex-direction: column;
  }
}
[data-reveal] {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 1s cubic-bezier(0.4, 0, 0.2, 1), transform 1s cubic-bezier(0.4, 0, 0.2, 1);
  transition-delay: var(--reveal-delay, 0.1s);
}
[data-reveal].is-revealed {
  opacity: 1;
  transform: translateY(0);
}

[data-reveal=fade] {
  transform: none;
}
[data-reveal=fade].is-revealed {
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  [data-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
.site-preloader {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #6E021D;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.8s cubic-bezier(0.45, 0, 0.55, 1), visibility 0s linear 0.8s;
}
.site-preloader span.bg {
  content: "";
  position: absolute;
  inset: 0;
}
.site-preloader span.bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.site-preloader.is-loaded {
  opacity: 0;
  visibility: hidden;
}

@keyframes site-preloader-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.site-preloader__logo {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  animation: site-preloader-fade-in 1s cubic-bezier(0.45, 0, 0.55, 1) 0.15s both;
}

.site-preloader__word {
  display: block;
  opacity: 0.28;
  transition: opacity 1.2s cubic-bezier(0.45, 0, 0.55, 1);
}
.site-preloader__word img {
  display: block;
  height: 1.333rem;
  width: auto;
}
.site-preloader__word.is-lit {
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  .site-preloader,
  .site-preloader__word {
    transition: none;
  }
  .site-preloader__logo {
    animation: none;
  }
}
.position-sticky {
  position: sticky;
  top: 0;
}

section {
  position: relative;
}

.arrow-img {
  position: absolute;
  bottom: 30px;
  left: 50%;
  animation: floatArrow 1.5s ease-in-out infinite;
  transition: opacity 0.8s var(--ease-in-out);
  cursor: pointer;
}
@media (max-width: 600px) {
  .arrow-img {
    bottom: 3rem;
  }
}

@keyframes jc-spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes floatArrow {
  0% {
    transform: translateX(-50%) translateY(0);
  }
  50% {
    transform: translateX(-50%) translateY(-12px);
  }
  100% {
    transform: translateX(-50%) translateY(0);
  }
}
/* ==========================================
   EVENTS + GALLERY
   Ported for the Events + Event Gallery templates. Tokens below alias the
   theme's own variables (fonts, container, maroon button colour) and add the
   cream / hairline / muted shades these sections use, so it all reads as one
   system. Classes here don't clash with anything else in this file.
   ========================================== */
:root {
  --font-display: var(--font-heading); /* "Editors Note" */
  --font-body: var(--font-base); /* "General Sans", sans-serif */
  --container: var(--size-container);
  --white: var(--color-white);
  --ink: var(--color-text);
  --maroon-deep: var(--button-bg); /* #3C0000 */
  --maroon: #6C0000;
  --muted: #818181;
  --cream: #ECE5D4;
  --cream-strip: #EDE6D5;
  --cream-warm: #F4F0E5;
  --cream-cool: #FBF9F4;
  --line: #DBD1B8;
  --line-soft: #E6DCC4;
  --eyebrow-line: #CCC2A9;
  --eyebrow-ink: #3A3529;
  --card-height: 490px;
  --card-pitch: 530px;
  --card-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
  --btn-shadow: 0 4px 11px rgba(130, 4, 24, 0.25);
}

.overline {
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  line-height: 18px;
  letter-spacing: 12%;
  text-transform: uppercase;
}
.overline--maroon {
  color: var(--maroon-deep);
}

.eyebrow {
  display: inline-flex;
  padding: 6px 12px;
  border: 1px solid var(--eyebrow-line);
  border-radius: 100px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--eyebrow-ink);
}

.hairline {
  border: 0;
  border-top: 1px solid var(--cream-warm);
  width: 100%;
}

.section-title {
  font-family: var(--font-display);
  font-size: 52px;
  line-height: 58px;
  letter-spacing: 0.01em;
  color: var(--ink);
}
.section-title--left {
  font-size: 38px;
  line-height: 44px;
  text-align: left;
}
.section-title--center {
  font-size: 38px;
  line-height: 44px;
  text-align: center;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 24px;
  border: 0;
  border-radius: 2px;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 500;
  line-height: 18px;
  cursor: pointer;
  transition: opacity 0.2s ease, transform 0.2s ease;
}
.btn--maroon {
  background: var(--maroon-deep);
  color: var(--white);
  box-shadow: var(--btn-shadow);
}
.btn--maroon:hover {
  opacity: 0.9;
}
.btn--light {
  background: var(--white);
  color: var(--ink);
  box-shadow: var(--btn-shadow);
  padding: 8px 16px;
}
.btn--block {
  width: 100%;
}

.sharing {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-size: 14px;
}
.sharing svg {
  flex: none;
}

/* ==========================================
   FEATURED GATHERING
   ========================================== */
.featured {
  background: #F4F0E5;
}
.featured .container {
  padding: 6.667rem 7.778rem;
  display: flex;
  gap: 4.444rem;
  align-items: flex-start;
}
.featured__main {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 64px;
  min-width: 0;
}
.featured .section-title {
  text-align: left;
}
.featured__content {
  display: grid;
  grid-template-columns: 64px 1fr;
  column-gap: 64px;
  row-gap: 40px;
  padding: 0 24px;
  align-items: stretch;
}

.timeline-cell {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 4px;
  min-width: 0;
}
.timeline-cell.is-hidden {
  display: none;
}
.timeline-cell.is-last-visible .timeline__connector {
  display: none;
}

.timeline__dot {
  flex: none;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--maroon-deep);
}

.timeline__label {
  margin: 2px 0 16px;
  font-family: var(--font-heading);
  font-size: 2.111rem;
  line-height: 2.444rem;
  font-weight: 600;
  text-transform: none;
  display: flex;
  flex-direction: column;
  gap: 2px;
  color: #000000;
  align-items: center;
}
.timeline__label .mth {
  font-size: 0.778rem;
  line-height: 1rem;
  font-family: var(--font-base);
  letter-spacing: 12%;
}

.timeline__connector {
  flex: 1;
  width: 2px;
  min-height: 40px;
  background: var(--line);
  border-radius: 1px;
}

.event-card {
  background: var(--white);
  border: 1px solid var(--line);
  box-shadow: var(--card-shadow);
  display: flex;
  flex-direction: column;
}
.event-card.is-hidden {
  display: none;
}
.event-card__image {
  height: 260px;
  flex: none;
}
.event-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.event-card__body {
  flex: 1;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-height: 0;
}
.event-card__body .body-info {
  display: flex;
  gap: 2rem;
  align-items: center;
}
.event-card__body .body-info .event-card__titles {
  flex: 1;
}
.event-card__body .body-info .scanner {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.event-card__body .body-info .scanner img {
  max-width: 132px;
}
.event-card__body .body-info .scanner span {
  font-size: 14px;
  font-weight: 600;
  color: #6C0000;
}
.event-card__titles {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.event-card__title {
  font-weight: 600;
  color: var(--ink);
}
.event-card__topic {
  font-size: 14px;
  font-weight: 500;
  line-height: 18px;
}
.event-card__topic.info-txt {
  color: #5a544b;
}
.event-card__footer {
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.event-card__footer .primary-btn {
  font-size: 14px;
  font-weight: 500;
  line-height: 18px;
}

/* ── Calendar widget ── */
.calendar {
  flex: none;
  width: 336px;
  position: sticky;
  top: 90px;
  padding: 24px;
  background: var(--white);
  border: 1px solid var(--line-soft);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.calendar__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.calendar__month {
  font-size: 20px;
  font-weight: 500;
  line-height: 26px;
  color: var(--ink);
}
.calendar__nav {
  display: flex;
  gap: 12px;
}
.calendar__nav button {
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  display: inline-flex;
}
.calendar__nav button:disabled {
  opacity: 0.25;
  cursor: default;
}
.calendar__grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 4px;
  row-gap: 4px;
}
.calendar__weekday {
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
}
.calendar__toggle {
  display: inline-flex;
  gap: 4px;
  padding: 3px;
  background: var(--cream-warm);
  border-radius: 999px;
  align-self: flex-start;
}
.calendar__filter {
  border: 0;
  background: none;
  padding: 4px 14px;
  border-radius: 999px;
  font-family: var(--font-body);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
  cursor: pointer;
}
.calendar__filter.is-active {
  background: var(--maroon-deep);
  color: var(--white);
}
.calendar__day {
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--ink);
  border-radius: 100px;
}
.calendar__day.is-muted {
  color: var(--muted);
}
.calendar__day.is-empty {
  visibility: hidden;
}
.calendar__day.has-event {
  position: relative;
  border: 0;
  background: none;
  font-weight: 600;
  color: var(--maroon-deep);
  cursor: pointer;
}
.calendar__day.has-event::after {
  content: "";
  position: absolute;
  bottom: 3px;
  left: 50%;
  transform: translateX(-50%);
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--maroon-deep);
}
.calendar__day.has-event:hover {
  background: var(--cream-warm);
}
.calendar__hint {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: var(--muted);
}
.calendar__link-dot {
  flex: none;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--maroon-deep);
}

.event-card,
.gallery-card {
  scroll-margin-top: 90px;
}
.event-card.is-located,
.gallery-card.is-located {
  border-radius: 4px;
  animation: justine-locate 2.4s ease-in-out;
}

@keyframes justine-locate {
  0%, 33%, 66% {
    box-shadow: 0 0 0 3px var(--cream-cool), 0 0 0 8px var(--maroon-deep);
  }
  16%, 50%, 83%, 100% {
    box-shadow: 0 0 0 3px var(--cream-cool), 0 0 0 0 rgba(60, 0, 0, 0);
  }
}
.featured__more {
  padding: 0 40px;
  display: flex;
  justify-content: center;
}

.load-more {
  background: none;
  border: 0;
  padding: 10px 8px;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--maroon-deep);
  cursor: pointer;
  border-bottom: 1px solid currentColor;
}
.load-more:hover {
  opacity: 0.7;
}

/* ==========================================
   UPCOMING DINNERS
   ========================================== */
.upcoming {
  background: var(--cream-cool);
}
.upcoming .container {
  padding-inline: 6.667rem;
  display: flex;
  flex-direction: column;
  gap: 80px;
}
.upcoming__row {
  display: flex;
  gap: 32px;
  align-items: stretch;
}

.events-gallery {
  background: var(--cream-cool);
}
.events-gallery .container {
  padding-inline: 6.667rem;
  display: flex;
  flex-direction: column;
  gap: 56px;
}
.events-gallery__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  text-align: center;
}
.events-gallery__head p {
  color: var(--ink);
}
.events-gallery__row {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.events-gallery__row-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
}
.events-gallery__row-head h3 {
  font-family: var(--font-heading);
  color: var(--ink);
}
.events-gallery__view-all {
  flex-shrink: 0;
  margin-left: auto;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  font-family: inherit;
  color: var(--maroon);
  font-size: 14px;
  letter-spacing: 0.04em;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.events-gallery__grid {
  column-count: 4;
  column-gap: 20px;
}
.events-gallery__photo {
  display: block;
  width: 100%;
  margin: 0 0 20px;
  padding: 0;
  border: 0;
  cursor: zoom-in;
  overflow: hidden;
  background: var(--line);
  break-inside: avoid;
}
.events-gallery__photo img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.4s ease;
}
.events-gallery__photo:hover img {
  transform: scale(1.04);
}
.events-gallery__grid.is-masonry {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  column-count: initial;
}
.events-gallery__grid.is-masonry .events-gallery__photo {
  margin: 0;
}
.events-gallery__grid.is-masonry .events-gallery__photo img {
  height: 100%;
  object-fit: cover;
}
.events-gallery__col {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (max-width: 1100px) {
  .events-gallery__grid {
    column-count: 3;
  }
}
@media (max-width: 767px) {
  .events-gallery__grid {
    column-count: 2;
    column-gap: 12px;
  }
  .events-gallery__photo {
    margin-bottom: 12px;
  }
  .events-gallery__grid.is-masonry, .events-gallery__col {
    gap: 12px;
  }
}
@media (max-width: 820px) {
  .events-gallery .container {
    padding: 64px 24px;
  }
  .events-gallery__row-head {
    flex-direction: column;
    gap: 6px;
  }
  .events-gallery__view-all {
    margin-left: 0;
  }
}

html.lightbox-open {
  overflow: hidden;
}

.lightbox {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 64px 80px;
  background: rgba(15, 12, 10, 0.92);
}
.lightbox[hidden] {
  display: none;
}
.lightbox__stage {
  margin: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.lightbox__img {
  max-width: 100%;
  max-height: calc(100% - 40px);
  object-fit: contain;
  user-select: none;
}
.lightbox__count {
  color: rgba(255, 255, 255, 0.75);
  font-size: 14px;
  letter-spacing: 0.08em;
}
.lightbox__close, .lightbox__nav {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  cursor: pointer;
  line-height: 1;
  transition: background 0.2s ease;
}
.lightbox__close:hover, .lightbox__close:focus-visible, .lightbox__nav:hover, .lightbox__nav:focus-visible {
  background: rgba(255, 255, 255, 0.25);
}
.lightbox__close[hidden], .lightbox__nav[hidden] {
  display: none;
}
.lightbox__close {
  top: 20px;
  right: 20px;
  width: 44px;
  height: 44px;
  font-size: 30px;
}
.lightbox__nav {
  top: 50%;
  transform: translateY(-50%);
  width: 52px;
  height: 52px;
  font-size: 36px;
}
.lightbox__nav--prev {
  left: 16px;
}
.lightbox__nav--next {
  right: 16px;
}
@media (max-width: 820px) {
  .lightbox {
    padding: 64px 12px;
  }
  .lightbox__nav {
    top: auto;
    bottom: 16px;
    transform: none;
    width: 44px;
    height: 44px;
  }
}

.dinner-card {
  flex: 1;
  display: flex;
  flex-direction: column;
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 4px;
  box-shadow: var(--card-shadow);
  overflow: hidden;
  min-width: 0;
}
.dinner-card__image {
  height: 200px;
}
.dinner-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.dinner-card__body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  flex: 1;
}
.dinner-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.dinner-card__date {
  font-size: 14px;
  color: var(--ink);
}
.dinner-card__titles {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.dinner-card__title {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: 24px;
  line-height: 28px;
  letter-spacing: 0.01em;
  color: var(--ink);
}
.dinner-card__topic {
  font-size: 14px;
  font-weight: 500;
  line-height: 18px;
  color: var(--ink);
}
.dinner-card__footer {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* ==========================================
   GALLERY / PAST EVENINGS
   ========================================== */
.gallery {
  background: var(--cream-cool);
  max-width: var(--container);
  margin-inline: auto;
  padding: 96px 80px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.gallery__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
}
.gallery__intro {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
}
.gallery__archive {
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  color: var(--maroon-deep);
  white-space: nowrap;
}
.gallery__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
}

.gallery-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.gallery-card__image {
  height: 220px;
  border-radius: 4px;
  overflow: hidden;
}
.gallery-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gallery-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.gallery-card__date {
  font-size: 14px;
  color: var(--muted);
}

/* ==========================================
   EVENT GALLERY PAGE
   ========================================== */
.gallery-page {
  background: var(--cream-cool);
  min-height: 60vh;
}
.gallery-page__inner {
  max-width: var(--container);
  margin-inline: auto;
  padding: 140px 80px 120px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.gallery-page__head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}
.gallery-page__date {
  font-size: 14px;
  color: var(--muted);
}

.gallery-back {
  align-self: flex-start;
  font-size: 14px;
  font-weight: 600;
  color: var(--maroon-deep);
}
.gallery-back:hover {
  opacity: 0.75;
}

.photo-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
}
.photo-grid .photo {
  margin: 0;
  border-radius: 4px;
  overflow: hidden;
  aspect-ratio: 3/2;
}
.photo-grid .photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gallery-empty {
  font-size: 16px;
  color: var(--muted);
  padding: 32px 0;
}

.section-splitter {
  height: 1px;
  border: 0;
  background: var(--line);
  max-width: calc(var(--container) - 160px);
  margin-inline: auto;
}

.gallery-card__image--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--cream-warm);
  border: 1px dashed var(--line);
}
.gallery-card__image--empty span {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}

/* ---- Events responsive ---- */
@media (max-width: 1100px) {
  .calendar {
    display: none;
  }
}
@media (max-width: 820px) {
  .featured__content {
    grid-template-columns: 1fr;
    padding: 0;
  }
  .timeline-cell {
    display: none;
  }
  .upcoming, .gallery {
    padding: 64px 24px;
  }
  .gallery__grid {
    grid-template-columns: 1fr;
  }
  .gallery__head {
    flex-direction: column;
    align-items: flex-start;
  }
  .gallery-page__inner {
    padding: 48px 24px 80px;
  }
  .photo-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .section-title {
    font-size: 36px;
    line-height: 40px;
  }
}

/*# sourceMappingURL=style.css.map */
