:root {--forest:#1B3A2C;--forest-dark:#122619;--forest-mid:#264D3B;--gold:#C4A46B;--gold-light:#E8D5A3;--gold-pale:#F7F0E3;--ivory:#FAF5EE;--blush:#F5EAE4;--text:#1A1A1A;--text-mid:#4A4A4A;--text-light:#8A7F78;--white:#FFFFFF;--border:rgba(196,164,107,0.25);--shadow-sm:0 2px 16px rgba(27,58,44,0.08);--shadow-md:0 8px 40px rgba(27,58,44,0.14);--shadow-lg:0 24px 80px rgba(27,58,44,0.18);--serif:'Cormorant Garamond',Georgia,serif;--sans:'Jost',system-ui,sans-serif;--transition:0.35s cubic-bezier(0.4,0,0.2,1);}
*,*::before,*::after {box-sizing:border-box;margin:0;padding:0;}
html {scroll-behavior:smooth;font-size:16px;}
body {font-family:var(--sans);color:var(--text);background:var(--ivory);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
img {max-width:100%;height:auto;display:block;}
a {text-decoration:none;color:inherit;}
ul {list-style:none;}
.container {width:min(1200px,100% - 3rem);margin-inline:auto;}
.eyebrow {display:inline-block;font-family:var(--sans);font-size:0.68rem;font-weight:600;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;}
.section-title {font-family:var(--serif);font-weight:400;line-height:1.15;color:var(--text);}
.divider-gold {display:block;width:48px;height:1px;background:var(--gold);margin:1.25rem 0;}
.divider-gold--center {margin-inline:auto;}
.btn {display:inline-flex;align-items:center;gap:0.5rem;font-family:var(--sans);font-size:0.72rem;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;padding:1rem 2.4rem;border:1.5px solid transparent;cursor:pointer;transition:var(--transition);white-space:nowrap;}
.btn--gold {background:var(--gold);color:var(--forest-dark);border-color:var(--gold);}
.btn--gold:hover {background:#B8953E;transform:translateY(-1px);box-shadow:var(--shadow-md);}
.btn--outline {background:transparent;color:var(--white);border-color:rgba(255,255,255,0.7);}
.btn--outline:hover {background:rgba(255,255,255,0.12);border-color:var(--white);}
.btn--outline-dark {background:transparent;color:var(--forest);border-color:var(--forest);}
.btn--outline-dark:hover {background:var(--forest);color:var(--white);}
.reveal {opacity:0;transform:translateY(24px);transition:opacity 0.65s ease,transform 0.65s ease;}
.reveal.visible {opacity:1;transform:translateY(0);}
.reveal--delay-1 {transition-delay:0.1s;}
.reveal--delay-2 {transition-delay:0.2s;}
.reveal--delay-3 {transition-delay:0.3s;}
.reveal--delay-4 {transition-delay:0.4s;}
.nav {position:fixed;top:0;left:0;right:0;z-index:1000;height:76px;display:flex;align-items:center;background:var(--forest-dark);box-shadow:0 2px 30px rgba(0,0,0,0.25);}
.nav__inner {width:100%;max-width:1340px;margin-inline:auto;padding-inline:2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;}
.nav__logo img {height:44px;width:auto;}
.nav__links {display:flex;align-items:center;gap:2.2rem;}
.nav__link {font-family:var(--sans);font-size:0.7rem;font-weight:500;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.85);transition:color var(--transition);position:relative;}
.nav__link.active {color:var(--gold-light);}
.nav__link::after {content:'';position:absolute;bottom:-3px;left:0;right:100%;height:1px;background:var(--gold);transition:right var(--transition);}
.nav__link.active::after,.nav__link:hover::after {right:0;}
.nav__link:hover {color:var(--gold-light);}
.nav__right {display:flex;align-items:center;gap:1.5rem;}
.nav__phone {font-family:var(--sans);font-size:0.72rem;font-weight:500;letter-spacing:0.1em;color:rgba(255,255,255,0.7);transition:color var(--transition);}
.nav__phone:hover {color:var(--gold-light);}
.nav__cta {font-family:var(--sans);font-size:0.65rem;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;padding:0.65rem 1.6rem;background:var(--gold);color:var(--forest-dark);transition:var(--transition);border:1px solid var(--gold);}
.nav__cta:hover {background:transparent;color:var(--gold-light);border-color:var(--gold-light);}
.nav__hamburger {display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;}
.nav__hamburger span {display:block;width:24px;height:1.5px;background:var(--white);transition:var(--transition);}
.gallery-hero {position:relative;min-height:55vh;display:flex;align-items:flex-end;padding-bottom:5rem;overflow:hidden;}
.gallery-hero__bg {position:absolute;inset:0;background-image:url('/wp-content/uploads/hero-homepage.webp');background-size:cover;background-position:center 20%;transform:scale(1.03);animation:heroZoom 10s ease-out forwards;}
@keyframes heroZoom {to{transform:scale(1.0);}}
.gallery-hero__overlay {position:absolute;inset:0;background:linear-gradient(to top,rgba(18,38,25,0.55) 0%,rgba(18,38,25,0.25) 30%,rgba(18,38,25,0.10) 100%);}
.gallery-hero__content {position:relative;z-index:2;padding-top:76px;animation:heroFadeUp 1s 0.2s both;}
@keyframes heroFadeUp {from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:translateY(0);}}
.gallery-hero__breadcrumb {display:flex;align-items:center;gap:0.5rem;font-family:var(--sans);font-size:0.68rem;color:rgba(255,255,255,0.5);margin-bottom:1.5rem;}
.gallery-hero__breadcrumb a {color:rgba(255,255,255,0.5);transition:color var(--transition);}
.gallery-hero__breadcrumb a:hover {color:var(--gold-light);}
.gallery-hero__breadcrumb span {color:var(--gold);}
.gallery-hero__eyebrow {display:inline-flex;align-items:center;gap:0.75rem;font-family:var(--sans);font-size:0.65rem;font-weight:600;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold-light);margin-bottom:1.2rem;}
.gallery-hero__eyebrow::before {content:'';display:block;width:32px;height:1px;background:var(--gold);}
.gallery-hero__h1 {font-family:var(--serif);font-size:clamp(2.8rem,6vw,5rem);font-weight:400;line-height:1.1;color:var(--white);margin-bottom:1rem;}
.gallery-hero__sub {font-family:var(--sans);font-size:1rem;font-weight:300;color:rgba(255,255,255,0.7);max-width:540px;line-height:1.7;}
.filter-bar {padding:2.5rem 0;background:var(--white);border-bottom:1px solid var(--border);position:sticky;top:76px;z-index:10;}
.filter-bar__inner {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.2rem;}
.filter-bar__label {font-family:var(--sans);font-size:0.7rem;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--text-light);}
.filter-bar__buttons {display:flex;gap:0.6rem;flex-wrap:wrap;}
.filter-btn {font-family:var(--sans);font-size:0.68rem;font-weight:500;letter-spacing:0.14em;text-transform:uppercase;padding:0.45rem 1.2rem;border:1px solid var(--border);background:transparent;color:var(--text-mid);cursor:pointer;transition:var(--transition);}
.filter-btn.active,.filter-btn:hover {background:var(--forest);color:var(--white);border-color:var(--forest);}
.filter-bar__count {font-family:var(--sans);font-size:0.72rem;color:var(--text-light);}
.gallery-section {padding:5rem 0 7rem;background:var(--ivory);}
.gallery-grid {
      columns: 3;
      column-gap: 1.2rem;
    }
.gallery-item {
      break-inside: avoid;
      margin-bottom: 1.2rem;
      overflow: hidden;
      position: relative;
      cursor: pointer;
    }
.gallery-item img {
      width:100%;
      display:block;
      transition: transform 0.7s ease;
    }
.gallery-item:hover img {transform:scale(1.04);}
.gallery-item__overlay {
      position:absolute;inset:0;
      background:linear-gradient(to top,rgba(18,38,25,0.75) 0%,transparent 50%);
      opacity:0;transition:opacity var(--transition);
      display:flex;align-items:flex-end;padding:1.5rem;
    }
.gallery-item:hover .gallery-item__overlay {opacity:1;}
.gallery-item__caption {font-family:var(--sans);font-size:0.7rem;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.85);}
.gallery-item__tag {display:inline-block;font-family:var(--sans);font-size:0.58rem;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);background:rgba(27,58,44,0.8);padding:0.3rem 0.7rem;margin-bottom:0.5rem;}
.featured {padding:7rem 0;background:var(--white);}
.featured__inner {display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center;}
.featured__img {width:100%;height:600px;object-fit:cover;}
.featured__heading {font-family:var(--serif);font-size:clamp(2rem,3.5vw,3rem);font-weight:400;color:var(--text);margin-bottom:1.2rem;line-height:1.2;}
.featured__body {font-family:var(--sans);font-size:0.92rem;font-weight:300;color:var(--text-mid);line-height:1.8;margin-bottom:1.2rem;}
.featured__quote {font-family:var(--serif);font-size:1.3rem;font-weight:400;font-style:italic;color:var(--forest);padding:1.2rem 0 1.2rem 1.4rem;border-left:2px solid var(--gold);margin:1.5rem 0;line-height:1.5;}
.stats-strip {padding:4rem 0;background:var(--forest-dark);}
.stats-strip__inner {display:flex;justify-content:space-around;flex-wrap:wrap;gap:2rem;text-align:center;}
.stats-strip__num {font-family:var(--serif);font-size:3rem;font-weight:400;color:var(--gold);line-height:1;}
.stats-strip__label {font-family:var(--sans);font-size:0.68rem;font-weight:500;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-top:0.3rem;}
.booking-cta {position:relative;padding:7rem 0;background:var(--forest-dark);overflow:hidden;text-align:center;}
.booking-cta::before {content:'';position:absolute;inset:0;background-image:url('/wp-content/uploads/pina-messina-xFcqV_XZNNU-unsplash-scaled.jpg');background-size:cover;background-position:center;opacity:0.12;}
.booking-cta__inner {position:relative;z-index:1;}
.booking-cta__title {font-family:var(--serif);font-size:clamp(2.4rem,4.5vw,3.8rem);font-weight:400;color:var(--white);line-height:1.15;max-width:640px;margin-inline:auto;margin-bottom:1rem;}
.booking-cta__sub {font-family:var(--sans);font-size:0.9rem;font-weight:300;color:rgba(255,255,255,0.55);max-width:420px;margin-inline:auto;margin-bottom:3rem;line-height:1.7;}
.booking-cta__buttons {display:flex;justify-content:center;gap:1.2rem;flex-wrap:wrap;margin-bottom:3rem;}
.booking-cta__info {display:flex;justify-content:center;gap:3rem;flex-wrap:wrap;}
.booking-cta__info-item {display:flex;align-items:center;gap:0.6rem;font-family:var(--sans);font-size:0.72rem;color:rgba(255,255,255,0.45);}
.footer {background:var(--forest-dark);padding:5rem 0 0;border-top:1px solid rgba(196,164,107,0.12);}
.footer__grid {display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:3rem;padding-bottom:4rem;}
.footer__logo {margin-bottom:1.2rem;}
.footer__logo img {height:40px;width:auto;}
.footer__tagline { font-family: var(--serif); font-size: 1rem; font-style: italic; font-weight: 400; color: rgba(255,255,255,0.45); line-height: 1.6; margin-bottom: 1.8rem; }
.footer__social {display:flex;gap:0.8rem;}
.footer__social-link {width:36px;height:36px;border:1px solid rgba(196,164,107,0.3);display:flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:0.7rem;font-weight:600;color:rgba(255,255,255,0.5);transition:var(--transition);}
.footer__social-link:hover {border-color:var(--gold);color:var(--gold);}
.footer__col-title {font-family:var(--sans);font-size:0.62rem;font-weight:600;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold);margin-bottom:1.4rem;}
.footer__nav-link {display:block;font-family:var(--sans);font-size:0.82rem;font-weight:300;color:rgba(255,255,255,0.5);margin-bottom:0.7rem;transition:color var(--transition);}
.footer__nav-link:hover {color:var(--gold-light);}
.footer__address-line {font-family:var(--sans);font-size:0.82rem;font-weight:300;color:rgba(255,255,255,0.5);line-height:1.7;margin-bottom:0.4rem;}
.footer__address-line a {transition:color var(--transition);}
.footer__address-line a:hover {color:var(--gold-light);}
.footer__hours {margin-top:1rem;font-family:var(--sans);font-size:0.78rem;font-weight:300;color:rgba(255,255,255,0.4);line-height:1.8;}
.footer__hours-row {display:flex;justify-content:space-between;gap:1rem;}
.footer__bottom {display:flex;align-items:center;justify-content:space-between;padding:1.5rem 0;flex-wrap:wrap;gap:1rem;}
.footer__copy {font-family:var(--sans);font-size:0.72rem;color:rgba(255,255,255,0.3);}
.footer__legal {display:flex;gap:1.5rem;}
.footer__legal a {font-family:var(--sans);font-size:0.72rem;color:rgba(255,255,255,0.3);transition:color var(--transition);}
.footer__legal a:hover {color:var(--gold-light);}
@media(max-width:1100px) { .gallery-grid {columns:2;} }
@media(max-width:1100px) { .footer__grid {grid-template-columns:1fr 1fr;} }
@media(max-width:900px) { .featured__inner {grid-template-columns:1fr;gap:3rem;} }
@media(max-width:900px) { .featured__img {height:380px;} }
@media(max-width:640px) { .gallery-grid {columns:1;} }
@media(max-width:640px) { .stats-strip__inner {gap:1.5rem;} }
@media(max-width:640px) { .footer__grid {grid-template-columns:1fr;gap:2rem;} }
@media(max-width:640px) { .nav__links {display:none;} }
@media(max-width:640px) { .nav__hamburger {display:flex;} }
:root {--forest:#1B3A2C;--forest-dark:#122619;--gold:#C4A46B;--gold-light:#E8D5A3;--gold-pale:#F7F0E3;--ivory:#FAF5EE;--blush:#F5EAE4;--text:#1A1A1A;--text-mid:#4A4A4A;--white:#FFFFFF;--border:rgba(196,164,107,0.25);--shadow-sm:0 2px 16px rgba(27,58,44,0.08);--radius:4px;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Jost',system-ui,sans-serif;--transition:0.35s cubic-bezier(0.4,0,0.2,1);}
*,*::before,*::after {box-sizing:border-box;margin:0;padding:0;}
html {scroll-behavior:smooth;font-size:16px;}
body {font-family:var(--sans);color:var(--text);background:var(--ivory);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
img {max-width:100%;height:auto;display:block;}
a {text-decoration:none;color:inherit;}
ul {list-style:none;}
.container {width:min(1200px,100% - 3rem);margin-inline:auto;}
.page-header {background:var(--forest-dark);padding:8rem 0 4rem;}
.page-header__breadcrumb {display:flex;align-items:center;gap:0.6rem;font-size:0.72rem;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:1.5rem;}
.page-header__breadcrumb a:hover {color:var(--gold-light);}
.page-header__title {font-family:var(--serif);font-size:clamp(2rem,5vw,3.5rem);font-weight:300;color:var(--white);}
.page-header__title em {font-style:italic;color:var(--gold-light);}
.page-header__sub {font-size:0.95rem;color:rgba(255,255,255,0.6);margin-top:0.8rem;}
.legal-body {padding:5rem 0;}
.legal-body__inner {max-width:800px;}
.legal-body h2 {font-family:var(--serif);font-size:1.6rem;font-weight:400;color:var(--forest);margin:2.5rem 0 0.8rem;}
.legal-body h3 {font-family:var(--serif);font-size:1.2rem;font-weight:400;color:var(--forest);margin:1.5rem 0 0.5rem;}
.legal-body p {font-size:0.95rem;color:var(--text-mid);line-height:1.85;margin-bottom:1rem;}
.legal-body ul {margin:0.5rem 0 1rem 1.2rem;display:flex;flex-direction:column;gap:0.4rem;}
.legal-body ul li {font-size:0.92rem;color:var(--text-mid);list-style:disc;}
.legal-body a {color:var(--forest);border-bottom:1px solid var(--gold);padding-bottom:1px;}
.legal-body a:hover {color:var(--gold);}
.footer {background:var(--forest-dark);padding:5rem 0 0;color:rgba(255,255,255,0.7);}
.footer__grid {display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:3rem;padding-bottom:4rem;}
.footer__logo {margin-bottom:1.2rem;}
.footer__tagline { font-family: var(--serif); font-size: 1rem; font-style: italic; font-weight: 400; color: rgba(255,255,255,0.45); line-height: 1.6; margin-bottom: 1.8rem; }
.footer__social {display:flex;gap:0.8rem;}
.footer__social-link {width:36px;height:36px;border:1px solid rgba(196,164,107,0.3);border-radius:50%;display:grid;place-items:center;font-size:0.75rem;color:var(--gold-light);transition:all var(--transition);}
.footer__social-link:hover {background:var(--gold);color:var(--forest-dark);border-color:var(--gold);}
.footer__col-title {font-size:0.68rem;font-weight:600;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold);margin-bottom:1.2rem;}
.footer__address-line {font-size:0.88rem;color:rgba(255,255,255,0.6);line-height:1.7;}
.footer__address-line a:hover {color:var(--gold-light);}
.footer__hours {margin-top:1rem;}
.footer__hours-row {display:flex;justify-content:space-between;font-size:0.82rem;color:rgba(255,255,255,0.5);padding:0.25rem 0;border-bottom:1px solid rgba(255,255,255,0.06);}
.footer__bottom {border-top:1px solid rgba(255,255,255,0.08);padding:1.5rem 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;}
.footer__copy {font-size:0.78rem;color:rgba(255,255,255,0.35);}
.footer__legal {display:flex;gap:1.5rem;}
.footer__legal a {font-size:0.78rem;color:rgba(255,255,255,0.35);transition:color var(--transition);}
.footer__legal a:hover {color:var(--gold-light);}
@media(max-width:640px) { .footer__grid {grid-template-columns:1fr 1fr;} }
@media(max-width:480px) { .footer__grid {grid-template-columns:1fr;} }
:root {
      --forest:      #1B3A2C;
      --forest-dark: #122619;
      --forest-mid:  #264D3B;
      --gold:        #C4A46B;
      --gold-light:  #E8D5A3;
      --gold-pale:   #F7F0E3;
      --ivory:       #FAF5EE;
      --blush:       #F5EAE4;
      --text:        #1A1A1A;
      --text-mid:    #4A4A4A;
      --text-light:  #8A7F78;
      --white:       #FFFFFF;
      --border:      rgba(196,164,107,0.25);
      --shadow-sm:   0 2px 16px rgba(27,58,44,0.08);
      --shadow-md:   0 8px 40px rgba(27,58,44,0.14);
      --shadow-lg:   0 24px 80px rgba(27,58,44,0.18);
      --radius:      4px;
      --serif:       'Cormorant Garamond', Georgia, serif;
      --sans:        'Jost', system-ui, sans-serif;
      --transition:  0.35s cubic-bezier(0.4,0,0.2,1);
    }
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 16px; }
body { font-family: var(--sans); color: var(--text); background: var(--ivory); line-height: 1.6; overflow-x: hidden; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; display: block; }
a { text-decoration: none; color: inherit; }
ul { list-style: none; }
.container { width: min(1200px, 100% - 3rem); margin-inline: auto; }
.eyebrow { display: inline-block; font-family: var(--sans); font-size: 0.68rem; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--gold); margin-bottom: 1rem; }
.eyebrow--light { color: var(--gold-light); }
.eyebrow--dark { color: var(--forest); }
.section-title { font-family: var(--serif); font-weight: 400; line-height: 1.15; color: var(--text); }
.divider-gold { display: block; width: 48px; height: 1px; background: var(--gold); margin: 1.25rem 0; }
.divider-gold--center { margin-inline: auto; }
.btn { display: inline-flex; align-items: center; gap: 0.5rem; font-family: var(--sans); font-size: 0.72rem; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; padding: 1rem 2.4rem; border: 1.5px solid transparent; cursor: pointer; transition: var(--transition); white-space: nowrap; }
.btn--primary { background: var(--forest); color: var(--white); border-color: var(--forest); }
.btn--primary:hover { background: var(--forest-mid); border-color: var(--forest-mid); transform: translateY(-1px); box-shadow: var(--shadow-md); }
.btn--gold { background: var(--gold); color: var(--forest-dark); border-color: var(--gold); }
.btn--gold:hover { background: #B8953E; border-color: #B8953E; transform: translateY(-1px); box-shadow: var(--shadow-md); }
.btn--outline { background: transparent; color: var(--white); border-color: rgba(255,255,255,0.7); }
.btn--outline:hover { background: rgba(255,255,255,0.12); border-color: var(--white); }
.btn--outline-dark { background: transparent; color: var(--forest); border-color: var(--forest); }
.btn--outline-dark:hover { background: var(--forest); color: var(--white); }
.reveal { opacity: 0; transform: translateY(24px); transition: opacity 0.65s ease, transform 0.65s ease; }
.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal--delay-1 { transition-delay: 0.12s; }
.reveal--delay-2 { transition-delay: 0.24s; }
.reveal--delay-3 { transition-delay: 0.36s; }
.page-hero { position: relative; min-height: 60vh; display: flex; align-items: flex-end; padding-bottom: 5rem; overflow: hidden; }
.page-hero__bg { position: absolute; inset: 0; background-image: url('/wp-content/uploads/hero-homepage.webp'); background-size: cover; background-position: center 30%; transform: scale(1.03); animation: heroZoom 10s ease-out forwards; }
@keyframes heroZoom { to { transform: scale(1.0); } }
.page-hero__overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(18,38,25,0.55) 0%, rgba(18,38,25,0.25) 30%, rgba(18,38,25,0.10) 100%); }
.page-hero__content { position: relative; z-index: 2; padding-top: 76px; animation: heroFadeUp 1s 0.2s both; }
@keyframes heroFadeUp { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: translateY(0); } }
.page-hero__breadcrumb { display: flex; align-items: center; gap: 0.5rem; font-family: var(--sans); font-size: 0.68rem; color: rgba(255,255,255,0.5); margin-bottom: 1.5rem; }
.page-hero__breadcrumb a { color: rgba(255,255,255,0.5); transition: color var(--transition); }
.page-hero__breadcrumb a:hover { color: var(--gold-light); }
.page-hero__breadcrumb span { color: var(--gold); }
.page-hero__eyebrow { display: inline-flex; align-items: center; gap: 0.75rem; font-family: var(--sans); font-size: 0.65rem; font-weight: 600; letter-spacing: 0.28em; text-transform: uppercase; color: var(--gold-light); margin-bottom: 1.2rem; }
.page-hero__eyebrow::before { content: ''; display: block; width: 32px; height: 1px; background: var(--gold); }
.page-hero__h1 { font-family: var(--serif); font-size: clamp(2.8rem, 6vw, 5.2rem); font-weight: 400; line-height: 1.1; color: var(--white); margin-bottom: 1.2rem; }
.page-hero__sub { font-family: var(--sans); font-size: 1rem; font-weight: 300; color: rgba(255,255,255,0.7); max-width: 520px; line-height: 1.7; margin-bottom: 2.5rem; }
.rating-overview { background: var(--forest-dark); padding: 5rem 0; }
.rating-overview__inner { display: grid; grid-template-columns: 1fr 2fr; gap: 6rem; align-items: center; }
.rating-main { text-align: center; }
.rating-main__score { font-family: var(--serif); font-size: 8rem; font-weight: 300; color: var(--gold-light); line-height: 1; }
.rating-main__stars { font-size: 2rem; color: var(--gold); letter-spacing: 0.2em; margin: 0.5rem 0; }
.rating-main__count { font-family: var(--sans); font-size: 0.8rem; color: rgba(255,255,255,0.45); letter-spacing: 0.1em; text-transform: uppercase; }
.rating-bars { display: flex; flex-direction: column; gap: 1rem; }
.rating-bar { display: grid; grid-template-columns: 50px 1fr 40px; align-items: center; gap: 1rem; }
.rating-bar__label { font-family: var(--sans); font-size: 0.78rem; color: rgba(255,255,255,0.5); }
.rating-bar__track { height: 4px; background: rgba(255,255,255,0.1); border-radius: 2px; overflow: hidden; }
.rating-bar__fill { height: 100%; background: var(--gold); border-radius: 2px; }
.rating-bar__pct { font-family: var(--sans); font-size: 0.75rem; color: rgba(255,255,255,0.4); text-align: right; }
.rating-sources { display: flex; gap: 2rem; margin-top: 3rem; flex-wrap: wrap; }
.rating-source { background: rgba(255,255,255,0.04); border: 1px solid rgba(196,164,107,0.15); padding: 1.2rem 2rem; text-align: center; flex: 1; min-width: 140px; }
.rating-source__name { font-family: var(--sans); font-size: 0.62rem; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gold); margin-bottom: 0.4rem; }
.rating-source__score { font-family: var(--serif); font-size: 2rem; font-weight: 400; color: var(--white); }
.rating-source__badge { font-family: var(--sans); font-size: 0.65rem; color: rgba(255,255,255,0.4); margin-top: 0.2rem; }
@media (max-width: 900px) { .rating-overview__inner { grid-template-columns: 1fr; gap: 3rem; } }
.reviews { padding: 7rem 0; }
.reviews__header { text-align: center; max-width: 600px; margin-inline: auto; margin-bottom: 4rem; }
.reviews__heading { font-size: clamp(2rem, 3.5vw, 3rem); margin-bottom: 1rem; }
.reviews__sub { font-size: 0.95rem; color: var(--text-mid); line-height: 1.7; }
.reviews__filter { display: flex; gap: 0.8rem; justify-content: center; margin-bottom: 3rem; flex-wrap: wrap; }
.filter-btn { font-family: var(--sans); font-size: 0.65rem; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; padding: 0.6rem 1.4rem; border: 1px solid var(--border); background: transparent; color: var(--text-mid); cursor: pointer; transition: var(--transition); }
.filter-btn.active, .filter-btn:hover { background: var(--forest); color: var(--white); border-color: var(--forest); }
.reviews__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
.review-card { background: var(--white); padding: 2.5rem; border: 1px solid var(--border); display: flex; flex-direction: column; transition: box-shadow var(--transition), transform var(--transition); }
.review-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
.review-card__header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 1.2rem; }
.review-card__stars { color: var(--gold); font-size: 0.85rem; letter-spacing: 0.1em; }
.review-card__source { font-family: var(--sans); font-size: 0.62rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: var(--text-light); }
.review-card__text { font-family: var(--serif); font-size: 1.02rem; font-weight: 300; font-style: italic; color: var(--text); line-height: 1.75; flex: 1; margin-bottom: 1.5rem; }
.review-card__divider { width: 32px; height: 1px; background: var(--gold); margin-bottom: 1.2rem; }
.review-card__name { font-family: var(--sans); font-size: 0.72rem; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: var(--text); }
.review-card__service { font-family: var(--sans); font-size: 0.75rem; color: var(--text-light); margin-top: 0.2rem; }
.review-card--featured { background: var(--forest); }
.review-card--featured .review-card__stars { color: var(--gold); }
.review-card--featured .review-card__source { color: rgba(255,255,255,0.35); }
.review-card--featured .review-card__text { color: rgba(255,255,255,0.85); }
.review-card--featured .review-card__divider { background: var(--gold); }
.review-card--featured .review-card__name { color: var(--white); }
.review-card--featured .review-card__service { color: rgba(255,255,255,0.45); }
@media (max-width: 900px) { .reviews__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 580px) { .reviews__grid { grid-template-columns: 1fr; } }
.awards { background: var(--gold-pale); padding: 5rem 0; }
.awards__heading { font-family: var(--serif); font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 400; text-align: center; margin-bottom: 3rem; }
.awards__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2rem; }
.award-item { text-align: center; padding: 2.5rem 1.5rem; background: var(--white); border: 1px solid var(--border); transition: box-shadow var(--transition); }
.award-item:hover { box-shadow: var(--shadow-md); }
.award-item__icon { font-family: var(--serif); font-size: 2.5rem; color: var(--gold); margin-bottom: 0.8rem; }
.award-item__title { font-family: var(--serif); font-size: 1.2rem; font-weight: 400; color: var(--text); margin-bottom: 0.4rem; }
.award-item__desc { font-family: var(--sans); font-size: 0.78rem; color: var(--text-light); line-height: 1.5; }
@media (max-width: 900px) { .awards__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .awards__grid { grid-template-columns: 1fr; } }
.leave-review { padding: 7rem 0; background: var(--blush); }
.leave-review__inner { text-align: center; max-width: 640px; margin-inline: auto; }
.leave-review__heading { font-size: clamp(2rem, 3.5vw, 3rem); margin-bottom: 1rem; }
.leave-review__sub { font-family: var(--sans); font-size: 0.95rem; color: var(--text-mid); line-height: 1.7; margin-bottom: 2.5rem; }
.leave-review__platforms { display: flex; gap: 1.2rem; justify-content: center; flex-wrap: wrap; }
.platform-btn { display: flex; align-items: center; gap: 0.6rem; font-family: var(--sans); font-size: 0.72rem; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; padding: 1rem 2rem; border: 1.5px solid var(--forest); color: var(--forest); transition: var(--transition); }
.platform-btn:hover { background: var(--forest); color: var(--white); }
.platform-btn__icon { font-size: 1rem; }
.booking-cta { position: relative; padding: 7rem 0; background: var(--forest-dark); overflow: hidden; text-align: center; }
.booking-cta::before { content: ''; position: absolute; inset: 0; background-image: url('/wp-content/uploads/hero-homepage.webp'); background-size: cover; background-position: center; opacity: 0.1; }
.booking-cta__inner { position: relative; z-index: 1; }
.booking-cta__title { font-family: var(--serif); font-size: clamp(2.4rem, 4.5vw, 3.8rem); font-weight: 400; color: var(--white); line-height: 1.15; max-width: 640px; margin-inline: auto; margin-bottom: 1rem; }
.booking-cta__sub { font-family: var(--sans); font-size: 0.9rem; font-weight: 300; color: rgba(255,255,255,0.55); max-width: 420px; margin-inline: auto; margin-bottom: 3rem; line-height: 1.7; }
.booking-cta__buttons { display: flex; justify-content: center; gap: 1.2rem; flex-wrap: wrap; margin-bottom: 3rem; }
.booking-cta__info { display: flex; justify-content: center; gap: 3rem; flex-wrap: wrap; }
.booking-cta__info-item { display: flex; align-items: center; gap: 0.6rem; font-family: var(--sans); font-size: 0.72rem; color: rgba(255,255,255,0.45); }
.footer { background: var(--forest-dark); padding: 5rem 0 0; border-top: 1px solid rgba(196,164,107,0.12); }
.footer__grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 3rem; padding-bottom: 4rem; }
.footer__logo { margin-bottom: 1.2rem; }
.footer__logo img { height: 40px; width: auto; }
.footer__tagline { font-family: var(--serif); font-size: 1rem; font-style: italic; font-weight: 400; color: rgba(255,255,255,0.45); line-height: 1.6; margin-bottom: 1.8rem; }
.footer__social { display: flex; gap: 0.8rem; }
.footer__social-link { width: 36px; height: 36px; border: 1px solid rgba(196,164,107,0.3); display: flex; align-items: center; justify-content: center; font-family: var(--sans); font-size: 0.7rem; font-weight: 600; color: rgba(255,255,255,0.5); transition: var(--transition); }
.footer__social-link:hover { border-color: var(--gold); color: var(--gold); }
.footer__col-title { font-family: var(--sans); font-size: 0.62rem; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--gold); margin-bottom: 1.4rem; }
.footer__address-line { font-family: var(--sans); font-size: 0.82rem; font-weight: 300; color: rgba(255,255,255,0.5); line-height: 1.7; margin-bottom: 0.4rem; }
.footer__address-line a { transition: color var(--transition); }
.footer__address-line a:hover { color: var(--gold-light); }
.footer__hours { margin-top: 1rem; font-family: var(--sans); font-size: 0.78rem; font-weight: 300; color: rgba(255,255,255,0.4); line-height: 1.8; }
.footer__hours-row { display: flex; justify-content: space-between; gap: 1rem; }
.footer__bottom { display: flex; align-items: center; justify-content: space-between; padding: 1.5rem 0; flex-wrap: wrap; gap: 1rem; }
.footer__copy { font-family: var(--sans); font-size: 0.72rem; color: rgba(255,255,255,0.3); }
.footer__legal { display: flex; gap: 1.5rem; }
.footer__legal a { font-family: var(--sans); font-size: 0.72rem; color: rgba(255,255,255,0.3); transition: color var(--transition); }
.footer__legal a:hover { color: var(--gold-light); }
@media (max-width: 640px) { .footer__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 480px) { .footer__grid { grid-template-columns: 1fr; } }
:root {--forest:#1B3A2C;--forest-dark:#122619;--gold:#C4A46B;--gold-light:#E8D5A3;--gold-pale:#F7F0E3;--ivory:#FAF5EE;--blush:#F5EAE4;--text:#1A1A1A;--text-mid:#4A4A4A;--white:#FFFFFF;--border:rgba(196,164,107,0.25);--shadow-sm:0 2px 16px rgba(27,58,44,0.08);--radius:4px;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Jost',system-ui,sans-serif;--transition:0.35s cubic-bezier(0.4,0,0.2,1);}
*,*::before,*::after {box-sizing:border-box;margin:0;padding:0;}
html {scroll-behavior:smooth;font-size:16px;}
body {font-family:var(--sans);color:var(--text);background:var(--ivory);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
img {max-width:100%;height:auto;display:block;}
a {text-decoration:none;color:inherit;}
ul {list-style:none;}
.container {width:min(1200px,100% - 3rem);margin-inline:auto;}
.page-header {background:var(--forest-dark);padding:8rem 0 4rem;}
.page-header__breadcrumb {display:flex;align-items:center;gap:0.6rem;font-size:0.72rem;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:1.5rem;}
.page-header__breadcrumb a:hover {color:var(--gold-light);}
.page-header__title {font-family:var(--serif);font-size:clamp(2rem,5vw,3.5rem);font-weight:300;color:var(--white);}
.page-header__title em {font-style:italic;color:var(--gold-light);}
.page-header__sub {font-size:0.95rem;color:rgba(255,255,255,0.6);margin-top:0.8rem;}
.legal-body {padding:5rem 0;}
.legal-body__inner {max-width:800px;}
.legal-body h2 {font-family:var(--serif);font-size:1.6rem;font-weight:400;color:var(--forest);margin:2.5rem 0 0.8rem;}
.legal-body h3 {font-family:var(--serif);font-size:1.2rem;font-weight:400;color:var(--forest);margin:1.5rem 0 0.5rem;}
.legal-body p {font-size:0.95rem;color:var(--text-mid);line-height:1.85;margin-bottom:1rem;}
.legal-body ul {margin:0.5rem 0 1rem 1.2rem;display:flex;flex-direction:column;gap:0.4rem;}
.legal-body ul li {font-size:0.92rem;color:var(--text-mid);list-style:disc;}
.legal-body a {color:var(--forest);border-bottom:1px solid var(--gold);padding-bottom:1px;}
.legal-body a:hover {color:var(--gold);}
.footer {background:var(--forest-dark);padding:5rem 0 0;color:rgba(255,255,255,0.7);}
.footer__grid {display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:3rem;padding-bottom:4rem;}
.footer__logo {margin-bottom:1.2rem;}
.footer__tagline { font-family: var(--serif); font-size: 1rem; font-style: italic; font-weight: 400; color: rgba(255,255,255,0.45); line-height: 1.6; margin-bottom: 1.8rem; }
.footer__social {display:flex;gap:0.8rem;}
.footer__social-link {width:36px;height:36px;border:1px solid rgba(196,164,107,0.3);border-radius:50%;display:grid;place-items:center;font-size:0.75rem;color:var(--gold-light);transition:all var(--transition);}
.footer__social-link:hover {background:var(--gold);color:var(--forest-dark);border-color:var(--gold);}
.footer__col-title {font-size:0.68rem;font-weight:600;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold);margin-bottom:1.2rem;}
.footer__address-line {font-size:0.88rem;color:rgba(255,255,255,0.6);line-height:1.7;}
.footer__address-line a:hover {color:var(--gold-light);}
.footer__hours {margin-top:1rem;}
.footer__hours-row {display:flex;justify-content:space-between;font-size:0.82rem;color:rgba(255,255,255,0.5);padding:0.25rem 0;border-bottom:1px solid rgba(255,255,255,0.06);}
.footer__bottom {border-top:1px solid rgba(255,255,255,0.08);padding:1.5rem 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;}
.footer__copy {font-size:0.78rem;color:rgba(255,255,255,0.35);}
.footer__legal {display:flex;gap:1.5rem;}
.footer__legal a {font-size:0.78rem;color:rgba(255,255,255,0.35);transition:color var(--transition);}
.footer__legal a:hover {color:var(--gold-light);}
@media(max-width:640px) { .footer__grid {grid-template-columns:1fr 1fr;} }
@media(max-width:480px) { .footer__grid {grid-template-columns:1fr;} }
/* === a11y skip links: visually hidden until keyboard-focused === */
.skip-nav,
.screen-reader-text {
  position: absolute;
  left: -9999px;
  top: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
  white-space: nowrap;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
}
.skip-nav:focus,
.screen-reader-text:focus {
  position: fixed;
  left: 1rem;
  top: 1rem;
  width: auto;
  height: auto;
  padding: 0.75rem 1.25rem;
  background: var(--forest-dark, #122619);
  color: #fff;
  font-family: var(--sans, sans-serif);
  font-size: 0.95rem;
  text-decoration: none;
  border-radius: 4px;
  z-index: 99999;
  clip: auto;
  clip-path: none;
  white-space: normal;
}

/* ── Mobile overflow fix: nowrap CTAs in grid items at <860px ── */
@media (max-width: 860px) {
  .intro__inner > .reveal,
  .apart__inner > .reveal,
  .about__inner > .reveal {
    min-width: 0;
  }
  .intro__inner .btn,
  .apart__inner .btn,
  .about__inner .btn {
    white-space: normal;
    max-width: 100%;
  }
}

/* Founder section decorations (home about variant) */
.about__img-wrap { position: relative; }
.about__img-border {
  position: absolute;
  inset: 2rem -2rem -2rem 2rem;
  border: 1px solid rgba(196,164,107,0.25);
  pointer-events: none;
  z-index: -1;
}
.about__eyebrow {
  color: var(--gold);
  display: inline-block;
  font-family: var(--sans);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}
.divider-gold {
  display: block;
  width: 48px;
  height: 1px;
  background: var(--gold);
  margin: 1.25rem 0;
}
.divider-gold--center { margin-inline: auto; }
.about__stats {
  display: flex;
  gap: 3rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(196,164,107,0.15);
  flex-wrap: wrap;
}
@media (max-width: 768px) {
  .about__stats { gap: 2rem; }
  .about__img-border { inset: 1rem -1rem -1rem 1rem; }
}
/* Contact form submit button (matches source styling) */
.form-submit { width:100%; background:var(--forest); color:var(--white); border:none; padding:1.2rem; font-family:var(--sans); font-size:0.72rem; font-weight:600; letter-spacing:0.2em; text-transform:uppercase; cursor:pointer; transition:var(--transition); margin-top:0.5rem; }
.form-submit:hover { background:var(--forest-mid); }

/* Source-parity: founder section gold offset frame (was missing from theme) */
.about__img-wrap { position: relative; }
.about__img { width: 100%; aspect-ratio: 3/4; object-fit: cover; display: block; }
.about__img-border {
  position: absolute;
  inset: 2rem -2rem -2rem 2rem;
  border: 1px solid rgba(196,164,107,0.25);
  pointer-events: none;
  z-index: -1;
}
@media (max-width: 900px) {
  .about__img-wrap { max-width: 500px; margin-inline: auto; }
}

/* Fix z-index trap: Elementor widget container creates stacking context that
   eats z-index:-1, hiding the border behind the section bg. Use 0/1 instead. */
.about__img-wrap > .about__img-border { z-index: 0 !important; }
.about__img-wrap > .about__img { position: relative; z-index: 1; }
/* Allow the border to extend past Elementor widget container clipping */
.elementor-element:has(.about__img-wrap),
.elementor-widget-container:has(.about__img-wrap),
.elementor-widget-wrap:has(.about__img-wrap),
.elementor-element:has(.about__img-wrap) > .elementor-widget-container { overflow: visible !important; }


/* lh:subline-style v2 */
.hero__subline,
.page-hero__subline,
.gallery-hero__subline,
.blog-hero__subline,
.contact-hero__subline,
.post-hero__subline {
  font-family: var(--sans);
  font-size: clamp(0.78rem, 1.05vw, 0.92rem);
  font-weight: 400;
  line-height: 1.6;
  color: rgba(255,255,255,0.72);
  max-width: 520px;
  margin-top: 1.25rem;
  letter-spacing: 0.01em;
}

/* === Blog post styles from Vercel reference, added 2026-05-27 === */
.post-hero{position:relative;min-height:55vh;display:flex;align-items:flex-end;padding:0 0 4rem;overflow:hidden;}
.post-hero__bg{position:absolute;inset:0;background-image:url('/images/hero-couture.webp');background-size:cover;background-position:center 30%;}
.post-hero__overlay{position:absolute;inset:0;background:linear-gradient(160deg,rgba(18,38,25,0.45) 0%,rgba(18,38,25,0.8) 100%);}
.post-hero__content{position:relative;z-index:2;max-width:800px;padding-top:100px;}
.post-hero__breadcrumb{display:flex;align-items:center;gap:0.6rem;margin-bottom:1.5rem;font-size:0.72rem;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.6);}
.post-hero__breadcrumb a:hover{color:var(--gold-light);}
.post-hero__category{display:inline-block;background:var(--gold);color:var(--forest-dark);font-size:0.62rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;padding:0.3rem 0.8rem;border-radius:var(--radius);margin-bottom:1.2rem;}
.post-hero__h1{font-family:var(--serif);font-size:clamp(2rem,5vw,3.8rem);font-weight:300;line-height:1.1;color:var(--white);margin-bottom:1rem;}
.post-hero__meta{font-size:0.78rem;color:rgba(255,255,255,0.55);font-weight:500;letter-spacing:0.08em;}
.post-body{padding:5rem 0 6rem;}
.post-body__inner{display:grid;grid-template-columns:1fr 320px;gap:4rem;}
.post-content h2{font-family:var(--serif);font-size:1.8rem;font-weight:400;color:var(--forest);margin:2.5rem 0 1rem;line-height:1.25;}
.post-content h3{font-family:var(--serif);font-size:1.35rem;font-weight:400;color:var(--forest);margin:2rem 0 0.7rem;}
.post-content p{font-size:1rem;color:var(--text-mid);line-height:1.85;margin-bottom:1.2rem;}
.post-content ul{margin:1rem 0 1.5rem;padding-left:1.2rem;display:flex;flex-direction:column;gap:0.5rem;}
.post-content ul li{font-size:0.95rem;color:var(--text-mid);line-height:1.7;list-style:disc;}
.post-content blockquote{border-left:3px solid var(--gold);padding:1rem 1.5rem;margin:2rem 0;background:var(--gold-pale);border-radius:0 var(--radius) var(--radius) 0;}
.post-content blockquote p{font-family:var(--serif);font-size:1.15rem;font-style:italic;color:var(--forest);margin:0;}
.post-content .post-image{margin:2.5rem 0;border-radius:var(--radius);overflow:hidden;}
.post-content .post-image img{width:100%;height:360px;object-fit:cover;}
.post-content .post-image figcaption{font-size:0.78rem;color:var(--text-light);text-align:center;padding:0.6rem;font-style:italic;}
.post-sidebar{position:sticky;top:100px;align-self:start;display:flex;flex-direction:column;gap:2rem;}
@media (max-width:900px){.post-body__inner{grid-template-columns:1fr;}.post-sidebar{position:static;}}


/* === Blog sidebar + related-posts layout, added 2026-05-28 === */
.post-sidebar {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    align-self: start;
}
@media (min-width: 901px) {
    .post-sidebar {
        position: sticky;
        top: 100px;
    }
}
.post-sidebar__card {
    border-radius: var(--radius);
}

/* Related posts (the "More from the Blog" section at bottom of single post) */
.related-posts {
    background: var(--blush);
    padding: 5rem 0 6rem;
}
.related-posts__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 3rem;
}
.related-posts__header h2 {
    font-family: var(--serif);
    font-size: 2rem;
    font-weight: 400;
    color: var(--text);
    margin: 0;
}
.related-posts__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}
@media (max-width: 900px) {
    .related-posts__grid {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }
}
.related-card {
    background: transparent;
}
.related-card__img {
    aspect-ratio: 4/3;
    overflow: hidden;
    margin-bottom: 1.25rem;
}
.related-card__img a {
    display: block;
    width: 100%;
    height: 100%;
}
.related-card__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
