/* v1.0.5 loader fix */
:root{--sl-green-dark:#17372B;--sl-green:#2F5A45;--sl-charcoal:#242826;--sl-stone:#D7D2C8;--sl-cream:#F7F4ED;--sl-accent:#A48755;--sl-white:#fff}html{scroll-behavior:smooth}body{margin:0}.sl-eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.sl-hero{min-height:72vh;display:grid;align-items:end;position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.58)),linear-gradient(120deg,#345d4b,#17372b)}.sl-hero__inner{padding:clamp(3rem,8vw,7rem) 1.5rem;color:#fff;max-width:1240px;margin:auto;width:100%;box-sizing:border-box}.sl-hero h1{max-width:900px;margin:.5rem 0 1rem;font-size:clamp(2.6rem,6vw,5.5rem)}.sl-hero p{max-width:760px;font-size:clamp(1rem,1.5vw,1.25rem)}.sl-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem}.sl-actions a{display:inline-block;padding:.9rem 1.15rem;text-decoration:none;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.sl-primary{background:#fff;color:var(--sl-green-dark)}.sl-secondary{border:1px solid rgba(255,255,255,.8);color:#fff}.sl-section{padding:clamp(3.5rem,7vw,6rem) 1.5rem}.sl-wrap{max-width:1240px;margin:0 auto}.sl-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.sl-card{background:#fff;padding:1.5rem;box-shadow:0 12px 40px rgba(0,0,0,.06)}.sl-card h3{margin-top:.3rem}.sl-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:center}.sl-panel{background:var(--sl-green-dark);color:#fff}.sl-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.sl-fact{padding:1.1rem;border-top:1px solid var(--sl-stone)}.sl-fact strong{display:block;font-size:1.4rem}.sl-cta{background:var(--sl-green-dark);color:#fff;text-align:center}.sl-footer{background:#111a16;color:#fff;padding:3rem 1.5rem}.sl-footer a{color:#fff}@media(max-width:900px){.sl-grid-4,.sl-facts{grid-template-columns:repeat(2,1fr)}.sl-split{grid-template-columns:1fr}}@media(max-width:620px){.sl-grid-4,.sl-facts{grid-template-columns:1fr}.sl-hero{min-height:68vh}.sl-actions a{width:100%;text-align:center;box-sizing:border-box}}

.sl-page-hero{background:var(--sl-green-dark);color:#fff;padding:clamp(4rem,8vw,7rem) 1.5rem}
.sl-page-hero .sl-wrap{max-width:1240px;margin:auto}
.sl-page-hero h1{max-width:900px;margin:.35rem 0 1rem;font-size:clamp(2.5rem,5vw,5rem)}
.sl-page-hero p{max-width:760px;font-size:1.15rem}
.sl-content-narrow{max-width:860px;margin:auto}
.sl-table-wrap{overflow:auto;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.05)}
.sl-table{width:100%;border-collapse:collapse;min-width:760px}
.sl-table th,.sl-table td{padding:1rem;border-bottom:1px solid var(--sl-stone);text-align:left}
.sl-table th{background:var(--sl-green-dark);color:#fff}
.sl-inline-button{display:inline-block;padding:.9rem 1.1rem;text-decoration:none;background:var(--sl-green-dark);color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.sl-breadcrumbs{font-size:.9rem;opacity:.85;margin-bottom:1rem}
.sl-prose h2{margin-top:2.5rem}
.sl-two-col{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:3rem;align-items:start}
.sl-sidebar{background:#fff;padding:1.5rem;position:sticky;top:100px;box-shadow:0 10px 30px rgba(0,0,0,.05)}
@media(max-width:900px){.sl-two-col{grid-template-columns:1fr}.sl-sidebar{position:static}}

.sl-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.sl-feature{background:#fff;padding:1.5rem;border-top:4px solid var(--sl-accent);box-shadow:0 10px 30px rgba(0,0,0,.05)}
.sl-kicker{font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--sl-accent)}
.sl-banner{background:linear-gradient(120deg,var(--sl-green-dark),var(--sl-green));color:#fff;padding:clamp(3rem,7vw,6rem) 1.5rem}
.sl-banner .sl-wrap{max-width:1240px;margin:auto}
.sl-link-row{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.25rem}
.sl-link-row a{font-weight:700}
@media(max-width:900px){.sl-feature-grid{grid-template-columns:1fr}}


.sl-menu-category{background:#fff;padding:0 1.25rem;margin-bottom:2rem;box-shadow:0 10px 30px rgba(0,0,0,.05)}
.sl-menu-item{display:grid;grid-template-columns:1fr auto;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--sl-stone)}
.sl-menu-item:last-child{border-bottom:0}
.sl-menu-item h3{margin:0 0 .25rem}
.sl-menu-item p{margin:0}
.sl-faq{background:#fff;border-bottom:1px solid var(--sl-stone);padding:1rem 1.25rem}
.sl-faq summary{cursor:pointer;font-weight:700}
.sl-faq div{padding-top:.75rem}

.sl-lead-form{background:#fff;padding:clamp(1.25rem,3vw,2.25rem);box-shadow:0 12px 40px rgba(0,0,0,.07);max-width:780px;margin:0 auto}
.sl-form-field{margin:0 0 1rem}
.sl-form-field label{display:block;margin-bottom:.35rem}
.sl-form-field input,.sl-form-field select,.sl-form-field textarea{width:100%;box-sizing:border-box;padding:.8rem;border:1px solid #b9b9b3;background:#fff;font:inherit}
.sl-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.sl-mobile-cta{display:none}
@media(max-width:780px){
  body{padding-bottom:68px}
  .sl-mobile-cta{position:fixed;display:flex;bottom:0;left:0;right:0;z-index:9999;background:#fff;border-top:1px solid #ddd;padding:.55rem;gap:.5rem;box-shadow:0 -8px 20px rgba(0,0,0,.08)}
  .sl-mobile-cta a{flex:1;text-align:center;padding:.75rem .5rem;text-decoration:none;font-weight:800;text-transform:uppercase;font-size:.8rem}
  .sl-mobile-cta .primary{background:var(--sl-green-dark);color:#fff}
  .sl-mobile-cta .secondary{border:1px solid var(--sl-green-dark);color:var(--sl-green-dark)}
}

/* v1.0.3 photographic homepage */
.sl-site-header{position:relative;z-index:50;background:#fff}
.sl-topbar{background:#0e3329;color:#fff;font-size:.75rem}
.sl-topbar a{color:#fff;text-decoration:none}
.sl-header-wrap{max-width:1280px;margin:auto;padding:0 24px}
.sl-topbar-inner{display:flex;justify-content:space-between;padding-top:7px;padding-bottom:7px}
.sl-header-main .sl-header-wrap{display:flex;align-items:center;gap:28px;min-height:88px}
.sl-brand{display:flex;flex-direction:column;text-decoration:none;color:var(--sl-green-dark);margin-right:auto}
.sl-brand-name{font-family:Georgia,serif;font-size:1.45rem;letter-spacing:.08em}
.sl-brand-sub{font-size:.62rem;letter-spacing:.08em;font-weight:700}
.sl-main-nav{display:flex;gap:22px}
.sl-main-nav a{text-decoration:none;color:var(--sl-charcoal);font-weight:700;font-size:.9rem}
.sl-header-actions{display:flex;gap:10px}
.sl-header-actions a,.sl-green-button,.sl-gold-button,.sl-outline-light,.sl-outline-dark{display:inline-block;padding:.85rem 1rem;text-decoration:none;text-transform:uppercase;font-size:.76rem;font-weight:800;letter-spacing:.04em}
.sl-header-book,.sl-green-button{background:var(--sl-green-dark);color:#fff}
.sl-header-event,.sl-gold-button{background:var(--sl-accent);color:#fff}

.sl-photo-hero{min-height:620px;position:relative;display:flex;align-items:center;background-image:var(--sl-hero-image);background-size:cover;background-position:center}
.sl-photo-overlay,.sl-final-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,30,23,.88) 0%,rgba(3,30,23,.62) 44%,rgba(3,30,23,.10) 78%)}
.sl-photo-hero-inner{position:relative;z-index:2;width:min(1280px,calc(100% - 48px));margin:auto;color:#fff}
.sl-photo-hero h1{font-size:clamp(3rem,5.4vw,5.7rem);max-width:850px;margin:.55rem 0 1rem}
.sl-hero-copy{max-width:690px;font-size:1.08rem}
.sl-gold{color:#d8b365}
.sl-section-intro{max-width:760px;margin-bottom:2rem}
.sl-photo-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.sl-photo-card{display:block;background:#fff;text-decoration:none;color:var(--sl-charcoal);box-shadow:0 12px 35px rgba(0,0,0,.09)}
.sl-photo-card-image{display:block;height:200px;background-image:var(--card-image);background-size:cover;background-position:center}
.sl-photo-card-body{display:flex;flex-direction:column;gap:.55rem;padding:1.2rem}
.sl-photo-card-body small{font-weight:800;letter-spacing:.12em;color:var(--sl-accent)}
.sl-photo-card-body strong{font-family:Georgia,serif;font-size:1.25rem}
.sl-photo-card-body b{color:var(--sl-green-dark);font-size:.82rem;margin-top:.5rem}

.sl-image-split{display:grid;grid-template-columns:1fr 1fr;min-height:520px}
.sl-image-right .sl-image-split-photo{order:2}
.sl-image-split-photo{background-size:cover;background-position:center}
.sl-image-split-copy{padding:clamp(3rem,7vw,6rem);display:flex;flex-direction:column;justify-content:center}
.sl-dark-section{background:var(--sl-green-dark);color:#fff}
.sl-mini-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:1.6rem 0;border-top:1px solid rgba(255,255,255,.28);padding-top:1rem}
.sl-mini-facts span{font-size:.8rem}.sl-mini-facts strong{display:block;font-size:1.1rem}
.sl-outline-light{border:1px solid rgba(255,255,255,.7);color:#fff}
.sl-outline-dark{border:1px solid var(--sl-green-dark);color:var(--sl-green-dark)}

.sl-room-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.sl-room-grid a{display:flex;flex-direction:column;gap:.55rem;padding:1.5rem;background:#fff;text-decoration:none;color:var(--sl-charcoal);border-top:4px solid var(--sl-accent);box-shadow:0 9px 24px rgba(0,0,0,.06)}
.sl-room-grid strong{font-family:Georgia,serif;font-size:1.2rem}.sl-room-grid b{font-size:.78rem;color:var(--sl-green-dark);margin-top:.5rem}

.sl-triptych{display:grid;grid-template-columns:1fr 1fr 1fr;min-height:470px}
.sl-triptych-copy{padding:clamp(2.5rem,5vw,4.5rem);background:#f4efe5;display:flex;flex-direction:column;justify-content:center}
.sl-triptych-photo{background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-end;color:#fff}
.sl-triptych-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,28,22,.88),rgba(4,28,22,.1))}
.sl-triptych-photo>div{position:relative;padding:2rem}.sl-triptych-photo a{color:#fff;font-weight:700}
.sl-location-faq{display:grid;grid-template-columns:1.1fr 1fr 1fr;background:#fff}
.sl-location-panel{background-size:cover;background-position:center;min-height:360px}
.sl-location-copy,.sl-faq-panel{padding:clamp(2rem,4vw,3.5rem)}
.sl-final-photo-cta{position:relative;min-height:330px;background-image:var(--sl-final-image);background-size:cover;background-position:center;display:flex;align-items:center}
.sl-final-inner{position:relative;z-index:2;color:#fff;text-align:center;width:min(1100px,calc(100% - 48px));margin:auto}.sl-final-inner .sl-actions{justify-content:center}

@media(max-width:1050px){
 .sl-main-nav{display:none}
 .sl-photo-card-grid,.sl-room-grid{grid-template-columns:repeat(2,1fr)}
 .sl-triptych{grid-template-columns:1fr 1fr}.sl-triptych-copy{grid-column:1/-1}
 .sl-location-faq{grid-template-columns:1fr 1fr}.sl-location-panel{grid-column:1/-1}
}
@media(max-width:700px){
 .sl-topbar{display:none}.sl-header-main .sl-header-wrap{min-height:70px}.sl-header-event{display:none}
 .sl-brand-name{font-size:1.05rem}.sl-header-book{font-size:.68rem;padding:.7rem}
 .sl-photo-hero{min-height:610px}.sl-photo-overlay{background:rgba(4,35,27,.70)}
 .sl-photo-card-grid,.sl-room-grid,.sl-triptych,.sl-location-faq{grid-template-columns:1fr}
 .sl-image-split{grid-template-columns:1fr}.sl-image-split-photo{min-height:320px}.sl-image-right .sl-image-split-photo{order:0}
 .sl-mini-facts{grid-template-columns:repeat(2,1fr)}
}

/* v1.0.6 visual completion */
.sl-wedding-photo{background-position:center 58%;filter:saturate(.86)}
.sl-events-home:empty{display:none}
.sl-recognition-strip{background:#d8b365;color:#18372d;padding:1.25rem 24px}
.sl-recognition-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.sl-recognition-inner div{display:flex;flex-direction:column;gap:.25rem;text-align:center}
.sl-recognition-inner small{font-size:.68rem;font-weight:900;letter-spacing:.13em}
.sl-recognition-inner strong{font-family:Georgia,serif;font-size:1.05rem}

.sl-footer-v2{background:#0b1d17;padding:0;color:#fff}
.sl-footer-wrap{max-width:1280px;margin:auto;padding:4rem 24px 3rem;display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:2.25rem}
.sl-footer-v2 h3{font-size:1rem;margin:.15rem 0 1rem;color:#d8b365}
.sl-footer-v2 a{display:block;color:#fff;text-decoration:none;margin:.45rem 0;font-size:.86rem}
.sl-footer-v2 a:hover{text-decoration:underline}
.sl-footer-brand strong{display:block;font-family:Georgia,serif;letter-spacing:.09em;font-size:1.3rem}
.sl-footer-brand>span{display:block;font-size:.62rem;letter-spacing:.08em;margin-top:.15rem}
.sl-footer-brand p{font-size:.86rem;opacity:.9;max-width:310px}
.sl-footer-bottom{border-top:1px solid rgba(255,255,255,.15);max-width:1280px;margin:auto;padding:1rem 24px 1.5rem;display:flex;justify-content:space-between;gap:1rem;font-size:.72rem;opacity:.82}
.sl-footer-bottom a{display:inline;color:#fff}

.sl-image-split-copy h2,.sl-triptych h2{font-size:clamp(2rem,3.2vw,3.5rem)}
.sl-experience{padding-top:5rem;padding-bottom:5rem}
.sl-room-grid{margin-top:1.5rem}
.sl-photo-card-image{background-position:center}
.sl-photo-card:nth-child(2) .sl-photo-card-image{background-position:center 58%}

@media(max-width:1050px){
 .sl-footer-wrap{grid-template-columns:repeat(2,1fr)}
 .sl-footer-brand{grid-column:1/-1}
}
@media(max-width:700px){
 .sl-recognition-inner{grid-template-columns:1fr;gap:1rem}
 .sl-footer-wrap{grid-template-columns:1fr}
 .sl-footer-brand{grid-column:auto}
 .sl-footer-bottom{flex-direction:column}
}

/* v1.0.7 editorial wedding + flow refinement */
.sl-wedding-feature{
  display:grid;
  grid-template-columns:1fr 1fr;
  min-height:540px;
  background:#f7f4ed;
}
.sl-wedding-visual{
  min-height:540px;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 20%, rgba(216,179,101,.24), transparent 30%),
    linear-gradient(145deg,#0e3329 0%,#173f32 54%,#8b744d 130%);
  color:#fff;
}
.sl-wedding-visual:before,
.sl-wedding-visual:after{
  content:"";
  position:absolute;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
}
.sl-wedding-visual:before{width:430px;height:430px;left:-95px;bottom:-165px}
.sl-wedding-visual:after{width:250px;height:250px;right:-70px;top:-85px}
.sl-wedding-visual-inner{
  position:relative;
  z-index:2;
  width:min(520px,76%);
}
.sl-wedding-mark{
  display:block;
  font-family:Georgia,serif;
  font-size:7rem;
  line-height:.85;
  color:#d8b365;
  margin-bottom:1.3rem;
}
.sl-wedding-visual-inner p{
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.14em;
  line-height:1.7;
  color:#e9dfc9;
}
.sl-wedding-visual-inner strong{
  display:block;
  font-family:Georgia,serif;
  font-size:clamp(2.4rem,4vw,4.8rem);
  line-height:1;
  max-width:440px;
}
.sl-wedding-copy{
  padding:clamp(3.25rem,6vw,6.5rem);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.sl-wedding-copy h2{font-size:clamp(2.4rem,4vw,4.5rem);max-width:700px}
.sl-wedding-copy>p:not(.sl-eyebrow){max-width:700px}
.sl-wedding-highlights{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1rem;
  border-top:1px solid #d7d2c8;
  border-bottom:1px solid #d7d2c8;
  padding:1rem 0;
  margin:1.6rem 0;
}
.sl-wedding-highlights span{font-size:.78rem}
.sl-wedding-highlights strong{display:block;font-size:1rem;color:#17372b}
.sl-wedding-gallery-link{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:center;
  margin-top:1.2rem;
  padding:1rem 1.25rem;
  background:#17372b;
  color:#fff;
}
.sl-wedding-gallery-link a{color:#fff;font-weight:800;text-decoration:none}
.sl-wedding-gallery-link span{font-family:Georgia,serif}
.sl-triptych-copy{min-height:420px}
.sl-location-copy{display:flex;flex-direction:column;justify-content:center}
.sl-final-photo-cta{min-height:300px}

@media(max-width:900px){
  .sl-wedding-feature{grid-template-columns:1fr}
  .sl-wedding-visual{min-height:380px}
  .sl-wedding-copy{padding:3rem 24px}
}
@media(max-width:620px){
  .sl-wedding-highlights{grid-template-columns:1fr}
  .sl-wedding-gallery-link{align-items:flex-start;flex-direction:column}
}

/* v1.0.8 navy / slate palette */
:root{
  --sl-green-dark:#243A50;
  --sl-green:#355A76;
  --sl-charcoal:#232B31;
  --sl-stone:#D9D4CA;
  --sl-cream:#F7F3EA;
  --sl-accent:#C19A52;
  --sl-navy:#243A50;
  --sl-blue:#355A76;
  --sl-gold:#C19A52;
}

.sl-topbar{background:#243A50}
.sl-header-book,.sl-blue-button{background:#243A50;color:#fff}
.sl-header-event,.sl-gold-button{background:#C19A52;color:#fff}
.sl-dark-section{background:#243A50}
.sl-green-button{background:#243A50;color:#fff}
.sl-outline-blue{border:1px solid #243A50;color:#243A50;background:transparent}
.sl-room-grid a{border-top-color:#C19A52}
.sl-recognition-strip{background:#D9C08A;color:#243A50}
.sl-footer-v2{background:#1E2E3E}
.sl-footer-v2 h3{color:#D7B36B}
.sl-wedding-gallery-link{background:#243A50}
.sl-triptych-copy{background:#F2EDE4}
.sl-location-copy,.sl-faq-panel{background:#F7F3EA}
.sl-final-photo-cta .sl-final-overlay{background:linear-gradient(90deg,rgba(36,58,80,.94),rgba(36,58,80,.62),rgba(36,58,80,.18))}
.sl-photo-overlay{background:linear-gradient(90deg,rgba(28,43,58,.90) 0%,rgba(36,58,80,.62) 44%,rgba(36,58,80,.12) 78%)}

/* Replace editorial W treatment with real wedding/event photography */
.sl-wedding-photo-feature{display:grid;grid-template-columns:1.05fr .95fr;min-height:560px;background:#F7F3EA}
.sl-wedding-photo{
  min-height:560px;
  background-size:cover;
  background-position:center;
  position:relative;
  display:flex;
  align-items:flex-end;
}
.sl-wedding-photo-overlay{
  position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(26,40,53,.88) 0%,rgba(26,40,53,.25) 58%,rgba(26,40,53,.08) 100%);
}
.sl-wedding-photo-caption{
  position:relative;
  z-index:2;
  color:#fff;
  padding:clamp(2rem,5vw,4rem);
  display:flex;
  flex-direction:column;
  gap:.55rem;
}
.sl-wedding-photo-caption strong{
  font-family:Georgia,serif;
  font-size:clamp(2.4rem,4vw,4.5rem);
  line-height:1;
}
.sl-wedding-photo-caption span{
  font-size:.9rem;
  font-weight:700;
}
.sl-wedding-copy{background:#F7F3EA}
.sl-wedding-highlights strong{color:#243A50}
.sl-photo-card-body b,.sl-room-grid b{color:#243A50}
.sl-site-header{box-shadow:0 1px 0 rgba(36,58,80,.08)}
.sl-main-nav a{color:#243A50}
.sl-brand{color:#243A50}
.sl-gold{color:#C19A52}
.sl-eyebrow{letter-spacing:.13em}
.sl-primary{background:#fff;color:#243A50}
.sl-outline-light{border-color:rgba(255,255,255,.72);color:#fff}

@media(max-width:900px){
  .sl-wedding-photo-feature{grid-template-columns:1fr}
  .sl-wedding-photo{min-height:420px}
}

/* v1.0.9 photography reliability + CTA polish */
.sl-wedding-photo{
  background-color:#243A50;
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center 42%;
}
.sl-wedding-photo-overlay{
  background:linear-gradient(0deg,rgba(24,39,53,.82) 0%,rgba(24,39,53,.22) 62%,rgba(24,39,53,.06) 100%);
}
.sl-location-copy .sl-blue-button,
.sl-outing-copy .sl-blue-button{
  display:inline-flex;
  width:auto;
  min-width:190px;
  justify-content:center;
  text-decoration:none;
  padding:.95rem 1.2rem;
}

/* v1.0.10 homepage cleanup */
.sl-compact-cta{
  display:inline-flex !important;
  width:auto !important;
  min-width:0 !important;
  max-width:max-content !important;
  align-items:center;
  justify-content:center;
  padding:.88rem 1.2rem !important;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
}
.sl-triptych-copy .sl-compact-cta,
.sl-location-copy .sl-compact-cta{align-self:flex-start}
.sl-wedding-photo-feature{min-height:500px}
.sl-wedding-photo{min-height:500px;background-position:center 48%}
.sl-wedding-copy{padding-top:clamp(2.5rem,5vw,5rem);padding-bottom:clamp(2.5rem,5vw,5rem)}
.sl-wedding-highlights{margin:1.2rem 0}
.sl-photo-card:nth-child(2) .sl-photo-card-image{background-position:center 42%}
.sl-location-panel{background-position:center}
@media(max-width:900px){
  .sl-wedding-photo-feature{min-height:0}
  .sl-wedding-photo{min-height:390px}
}

/* v1.0.11 video hero */
.sl-video-hero{
  overflow:hidden;
  isolation:isolate;
  background-image:var(--sl-hero-image);
  background-size:cover;
  background-position:center;
}
.sl-video-wrap{
  position:absolute;
  inset:0;
  overflow:hidden;
  z-index:0;
  pointer-events:none;
}
.sl-hero-video{
  position:absolute;
  top:50%;
  left:50%;
  width:177.77777778vh;
  min-width:100%;
  height:56.25vw;
  min-height:100%;
  transform:translate(-50%,-50%);
  border:0;
  pointer-events:none;
}
.sl-video-hero .sl-photo-overlay{z-index:1}
.sl-video-hero .sl-photo-hero-inner{z-index:2}
.sl-video-hero .sl-photo-overlay{
  background:linear-gradient(90deg,rgba(25,40,55,.90) 0%,rgba(30,49,67,.62) 46%,rgba(30,49,67,.18) 78%);
}

/* Preserve speed and readability on phones/tablets. */
@media(max-width:800px){
  .sl-video-wrap{display:none}
  .sl-video-hero{
    background-image:var(--sl-hero-image);
    background-size:cover;
    background-position:center;
  }
}

/* Respect users who explicitly reduce motion. */
@media(prefers-reduced-motion:reduce){
  .sl-video-wrap{display:none}
}

/* v1.0.12 native homepage video */
.sl-video-wrap{
  position:absolute;
  inset:0;
  overflow:hidden;
  z-index:0;
  pointer-events:none;
}
.sl-hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transform:none;
  border:0;
  pointer-events:none;
}
@media(max-width:800px){
  .sl-video-wrap{display:none}
}
@media(prefers-reduced-motion:reduce){
  .sl-video-wrap{display:none}
}

/* v1.1.0 interior landing pages */
.sl-inner-hero{
  min-height:520px;position:relative;display:flex;align-items:flex-end;
  background-image:var(--inner-image);background-size:cover;background-position:center;
}
.sl-inner-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,43,58,.92),rgba(36,58,80,.55),rgba(36,58,80,.08))}
.sl-inner-hero-copy{position:relative;z-index:2;width:min(1280px,calc(100% - 48px));margin:auto;padding:5rem 0;color:#fff}
.sl-inner-hero-copy h1{font-size:clamp(3rem,5vw,5.3rem);max-width:850px;margin:.4rem 0 1rem}
.sl-inner-hero-copy>p:not(.sl-eyebrow){max-width:700px;font-size:1.02rem}
.sl-inner-intro{padding:5rem 0;background:#F7F3EA}
.sl-inner-intro h2{font-size:clamp(2.2rem,4vw,4rem);max-width:820px}
.sl-inner-action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:2rem}
.sl-inner-action-grid-3{grid-template-columns:repeat(3,1fr)}
.sl-inner-action-grid a{display:flex;flex-direction:column;gap:.5rem;background:#fff;padding:1.5rem;text-decoration:none;color:#232B31;border-top:4px solid #C19A52;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.sl-inner-action-grid small{font-weight:900;letter-spacing:.12em;color:#C19A52}
.sl-inner-action-grid strong{font-family:Georgia,serif;font-size:1.2rem}
.sl-inner-action-grid span{font-size:.86rem}
.sl-inner-split{display:grid;grid-template-columns:1fr 1fr;min-height:520px;background:#F7F3EA}
.sl-inner-split-blue{background:#243A50;color:#fff}
.sl-inner-photo{background-size:cover;background-position:center;min-height:520px}
.sl-inner-copy{padding:clamp(3rem,6vw,6rem);display:flex;flex-direction:column;justify-content:center}
.sl-inner-copy h2{font-size:clamp(2.4rem,4vw,4.2rem)}
.sl-link-stack{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}
.sl-link-stack a{color:inherit;font-weight:800}
.sl-room-photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:2rem}
.sl-room-photo-grid a{background:#fff;text-decoration:none;color:#232B31;box-shadow:0 8px 24px rgba(0,0,0,.06);padding-bottom:1rem}
.sl-room-photo{height:180px;background-size:cover;background-position:center}
.sl-room-photo-grid small,.sl-room-photo-grid strong,.sl-room-photo-grid span{display:block;padding-left:1rem;padding-right:1rem}
.sl-room-photo-grid small{margin-top:1rem;color:#C19A52;font-weight:900}
.sl-room-photo-grid strong{font-family:Georgia,serif;font-size:1.25rem;margin:.25rem 0 .5rem}
.sl-room-photo-grid span{font-size:.8rem;font-weight:800;color:#243A50}
.sl-inner-final-cta{background:#243A50;color:#fff;padding:3.5rem max(24px,calc((100vw - 1280px)/2));display:flex;justify-content:space-between;gap:2rem;align-items:center}
.sl-inner-final-cta h2{margin:0;font-size:clamp(2rem,3vw,3.3rem)}
.sl-inner-final-cta .sl-actions{flex-shrink:0}
@media(max-width:1000px){
 .sl-inner-action-grid,.sl-room-photo-grid{grid-template-columns:repeat(2,1fr)}
 .sl-inner-action-grid-3{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
 .sl-inner-hero{min-height:500px}
 .sl-inner-split{grid-template-columns:1fr}
 .sl-inner-photo{min-height:320px}
 .sl-inner-action-grid,.sl-inner-action-grid-3,.sl-room-photo-grid{grid-template-columns:1fr}
 .sl-inner-final-cta{align-items:flex-start;flex-direction:column}
}

/* v1.2.0 expanded interior pages */
.sl-small-note{font-size:.8rem;opacity:.75;margin-top:1rem}
.sl-room-detail{padding:5rem 0;background:#F7F3EA}
.sl-room-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem}
.sl-room-detail-grid>div{background:#fff;padding:2rem;border-top:4px solid #C19A52;box-shadow:0 8px 24px rgba(0,0,0,.05)}
.sl-room-detail-grid h2{font-size:clamp(2rem,3vw,3.2rem);margin:.4rem 0 1rem}
.sl-amenity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:2rem}
.sl-amenity-grid span{background:#fff;padding:1rem 1.2rem;border-left:4px solid #C19A52;font-weight:800;box-shadow:0 6px 18px rgba(0,0,0,.04)}
@media(max-width:760px){
  .sl-room-detail-grid,.sl-amenity-grid{grid-template-columns:1fr}
}

/* v1.3.0 remaining major pages */
.sl-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.sl-contact-grid>div{background:#fff;padding:2rem;border-top:4px solid #C19A52;box-shadow:0 8px 24px rgba(0,0,0,.05)}
.sl-contact-grid h2{font-size:clamp(2rem,3vw,3.2rem)}
@media(max-width:760px){.sl-contact-grid{grid-template-columns:1fr}}

/* v1.3.2 Course Tour full-width presentation */
.sl-course-tour-intro{
  padding-top:3.25rem;
  padding-bottom:4rem;
}
.sl-course-tour-intro .sl-wrap{
  margin-bottom:1.5rem;
}
.sl-course-tour-full{
  width:100%;
  max-width:none;
  margin:0;
}
.sl-course-tour-full .sl-course-tour{
  width:min(1320px,calc(100% - 64px)) !important;
  max-width:1320px !important;
  margin:0 auto !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:28px !important;
}
.sl-course-tour-full .sl-hole-card{
  min-width:0;
}
.sl-course-tour-full .sl-hole-video{
  aspect-ratio:16/9;
}
.sl-course-tour-full .sl-hole-copy{
  padding:1.45rem 1.5rem 1.55rem;
}
.sl-course-tour-full .sl-hole-copy h3{
  font-size:1.85rem;
}
.sl-course-tour-full .sl-hole-yardages span{
  padding:.9rem .75rem;
}
.sl-course-tour-full .sl-hole-yardages strong{
  font-size:1.2rem;
}
@media(max-width:1100px){
  .sl-course-tour-full .sl-course-tour{
    width:min(960px,calc(100% - 44px)) !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:700px){
  .sl-course-tour-intro{padding-top:2rem}
  .sl-course-tour-full .sl-course-tour{
    width:min(640px,calc(100% - 28px)) !important;
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
}

/* v1.3.3 Course Tour polish */
.sl-course-tour-intro{
  padding-top:2rem;
  padding-bottom:0;
}
.sl-course-tour-intro .sl-wrap{
  margin-bottom:1.1rem;
}
.sl-course-tour-full{
  padding-bottom:3.75rem;
}
.sl-course-tour-full .sl-course-tour{
  row-gap:34px !important;
}
.sl-course-tour-cta{
  background:#243A50;
  color:#fff;
  padding:3.25rem max(32px,calc((100vw - 1320px)/2));
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:2rem;
}
.sl-course-tour-cta h2{
  margin:.25rem 0 .65rem;
  font-size:clamp(2rem,3vw,3.25rem);
}
.sl-course-tour-cta p:not(.sl-eyebrow){
  margin:0;
  max-width:680px;
}
.sl-course-tour-cta .sl-actions{
  flex-shrink:0;
}
@media(max-width:760px){
  .sl-course-tour-full{padding-bottom:2.5rem}
  .sl-course-tour-cta{
    flex-direction:column;
    align-items:flex-start;
    padding:2.5rem 22px;
  }
}

/* v1.3.4 Course Tour hero image */
.sl-course-tour-photo-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background-image:var(--course-tour-hero) !important;
  background-position:center 52% !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}
.sl-course-tour-photo-hero .sl-course-tour-hero-overlay{
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg,rgba(22,45,65,.90) 0%,rgba(22,45,65,.76) 46%,rgba(22,45,65,.42) 100%);
}
.sl-course-tour-photo-hero .sl-wrap{
  position:relative;
  z-index:1;
}
.sl-course-tour-photo-hero h1,
.sl-course-tour-photo-hero p{
  color:#fff;
}


/* v1.3.9 Course Tour photographic banner - loaded stylesheet */
.sl-page-hero.sl-course-tour-banner{
  position:relative !important;
  overflow:hidden !important;
  background:
    linear-gradient(90deg,rgba(25,49,70,.82) 0%,rgba(25,49,70,.64) 52%,rgba(25,49,70,.40) 100%),
    url('../images/course-tour-banner.jpg') center 52% / cover no-repeat !important;
}
.sl-page-hero.sl-course-tour-banner .sl-wrap{
  position:relative;
  z-index:2;
}
.sl-page-hero.sl-course-tour-banner .sl-eyebrow,
.sl-page-hero.sl-course-tour-banner h1,
.sl-page-hero.sl-course-tour-banner p{
  color:#fff;
}


/* v1.4.0 Course Tour spacing polish */
.sl-section:has(.sl-course-tour-shell),
.sl-section:has(.sl-course-tour){
  padding-top:48px !important;
}

.sl-section:has(.sl-course-tour-shell) .sl-wrap,
.sl-section:has(.sl-course-tour) .sl-wrap{
  padding-top:0 !important;
  margin-top:0 !important;
}

.sl-course-tour-shell{
  margin-top:0 !important;
}

.sl-course-tour{
  margin-top:0 !important;
}

@media(max-width:700px){
  .sl-section:has(.sl-course-tour-shell),
  .sl-section:has(.sl-course-tour){
    padding-top:32px !important;
  }
}


/* v1.4.1 Course Tour footer spacing */
.sl-course-tour-shell{
  margin-bottom:48px !important;
}

@media(max-width:700px){
  .sl-course-tour-shell{
    margin-bottom:36px !important;
  }
}


/* v1.4.2 Course Tour responsive polish */
@media (max-width: 1100px){
  .sl-page-hero.sl-course-tour-banner .sl-wrap{
    width:min(92%,900px);
  }

  .sl-page-hero.sl-course-tour-banner h1{
    font-size:clamp(2.7rem,6vw,4.4rem);
    line-height:.98;
  }

  .sl-section:has(.sl-course-tour-shell),
  .sl-section:has(.sl-course-tour){
    padding-left:0 !important;
    padding-right:0 !important;
  }
}

@media (max-width: 760px){
  .sl-page-hero.sl-course-tour-banner{
    min-height:360px;
    display:flex;
    align-items:center;
    background-position:42% center !important;
  }

  .sl-page-hero.sl-course-tour-banner .sl-wrap{
    width:calc(100% - 40px);
    margin:0 auto;
  }

  .sl-page-hero.sl-course-tour-banner h1{
    font-size:clamp(2.5rem,11vw,3.7rem);
    line-height:.96;
    max-width:10ch;
  }

  .sl-page-hero.sl-course-tour-banner p:not(.sl-eyebrow){
    max-width:34rem;
    font-size:.98rem;
    line-height:1.55;
  }
}

@media (max-width: 480px){
  .sl-page-hero.sl-course-tour-banner{
    min-height:330px;
    background-position:38% center !important;
  }

  .sl-page-hero.sl-course-tour-banner .sl-wrap{
    width:calc(100% - 28px);
  }

  .sl-page-hero.sl-course-tour-banner h1{
    font-size:clamp(2.2rem,12vw,3.15rem);
  }
}

/* v1.4.3 Mobile Course Tour polish */
@media (max-width:700px){
  .sl-page-hero.sl-course-tour-banner{
    min-height:300px !important;
    background-position:34% center !important;
  }
  .sl-page-hero.sl-course-tour-banner .sl-wrap{
    width:calc(100% - 24px) !important;
  }
  .sl-page-hero.sl-course-tour-banner h1{
    font-size:clamp(2.2rem,10.5vw,3.05rem) !important;
    line-height:.97 !important;
    margin-bottom:.7rem;
  }
  .sl-page-hero.sl-course-tour-banner p:not(.sl-eyebrow){
    font-size:1rem !important;
    line-height:1.5 !important;
    max-width:31rem;
  }
  .sl-section:has(.sl-course-tour-shell),
  .sl-section:has(.sl-course-tour){
    padding-top:28px !important;
  }
  footer .sl-wrap{
    width:calc(100% - 28px);
  }
  footer{
    padding-top:2rem !important;
    padding-bottom:1.5rem !important;
  }
}
@media (max-width:430px){
  .sl-page-hero.sl-course-tour-banner{
    min-height:285px !important;
    background-position:30% center !important;
  }
  .sl-page-hero.sl-course-tour-banner .sl-wrap{
    width:calc(100% - 20px) !important;
  }
  footer{font-size:.94rem;}
}

/* v1.4.4 final Course Tour mobile polish */
@media(max-width:700px){
 .sl-page-hero.sl-course-tour-banner{
   min-height:310px!important;
   padding-top:38px!important;
   padding-bottom:28px!important;
   display:flex!important;
   align-items:center!important;
 }
 .sl-page-hero.sl-course-tour-banner .sl-wrap{padding-top:12px!important}
 .sl-page-hero.sl-course-tour-banner .sl-eyebrow{margin-top:0!important}
 footer .sl-footer-grid{gap:18px!important}
 footer h3,footer h4{margin-bottom:7px!important}
 footer p,footer li{margin-bottom:4px!important;line-height:1.4!important}
 footer .wp-block-button__link,footer a[class*="button"],footer .sl-button{
   min-height:44px!important;
   display:inline-flex!important;
   align-items:center!important;
   justify-content:center!important;
   padding:10px 14px!important;
 }
}
@media(max-width:430px){
 .sl-page-hero.sl-course-tour-banner{
   min-height:300px!important;
   padding-top:42px!important;
   background-position:30% center!important;
 }
}


/* v1.4.5 Golf Course Details polish */
.sl-course-details-tour-callout{
  display:grid;
  grid-template-columns:1fr 1fr;
  background:#243A50;
  color:#fff;
  min-height:430px;
}
.sl-course-details-tour-image{
  background:url('../images/course-details-tour.jpg') center center / cover no-repeat;
}
.sl-course-details-tour-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(3rem,6vw,6rem);
}
.sl-course-details-tour-copy h2{
  color:#fff;
  font-size:clamp(2.2rem,4vw,4.5rem);
  line-height:1;
  margin:.35rem 0 1rem;
}
.sl-course-details-tour-copy p:not(.sl-eyebrow){
  max-width:620px;
  line-height:1.65;
}
.sl-course-details-tour-copy .sl-actions{
  margin-top:1.25rem;
}
.sl-inner-action-grid > a{
  transition:transform .18s ease,box-shadow .18s ease;
}
.sl-inner-action-grid > a:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 28px rgba(0,0,0,.10);
}
@media(max-width:900px){
  .sl-course-details-tour-callout{
    grid-template-columns:1fr;
  }
  .sl-course-details-tour-image{
    min-height:300px;
  }
}
@media(max-width:700px){
  .sl-course-details-tour-image{
    min-height:230px;
    background-position:35% center;
  }
  .sl-course-details-tour-copy{
    padding:2.25rem 20px 2.5rem;
  }
  .sl-course-details-tour-copy h2{
    font-size:clamp(2rem,10vw,3rem);
  }
  .sl-inner-action-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .sl-inner-action-grid > a{
    min-height:110px;
  }
}


/* v1.5.5 Golf Rates */
.sl-rates-page{background:#f7f3ea}
.sl-rates-overview,
.sl-rates-info{
  padding:72px 24px;
}
.sl-rates-wrap{
  width:min(1100px,calc(100% - 32px))!important;
  max-width:1100px!important;
  margin:0 auto!important;
}
.sl-rates-heading{
  max-width:760px;
  margin:0 auto 34px;
  text-align:center;
}
.sl-rates-heading h2{
  font-size:clamp(2.25rem,4vw,4rem);
  line-height:1.02;
  margin:.4rem 0 1rem;
}
.sl-rates-heading > p:not(.sl-eyebrow){
  font-size:1.05rem;
  line-height:1.65;
}
.sl-rates-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  margin:0 auto 26px;
}
.sl-season-rate{
  background:#fff;
  border-top:4px solid #c79a45;
  padding:30px;
  box-shadow:0 10px 28px rgba(24,39,53,.08);
}
.sl-season-rate h3{
  font-size:1.65rem;
  margin:.35rem 0 1rem;
}
.sl-rate-dates{
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  align-items:center;
  margin-bottom:1rem;
  color:#243a50;
}
.sl-rate-dates span{opacity:.6}
.sl-text-link{
  color:#243a50;
  font-weight:700;
  text-decoration:none;
}
.sl-text-link:hover{text-decoration:underline}
.sl-dynamic-pricing{
  display:grid;
  grid-template-columns:minmax(200px,.7fr) minmax(0,1.3fr);
  gap:34px;
  background:#243a50;
  color:#fff;
  padding:32px;
  margin-top:22px;
}
.sl-dynamic-pricing h3{
  color:#fff;
  margin:.3rem 0 0;
  font-size:1.8rem;
}
.sl-dynamic-pricing p{line-height:1.6}
.sl-rates-disclaimer{
  font-size:.9rem;
  opacity:.82;
  margin-bottom:0;
}
.sl-rates-booking-split{
  margin:0!important;
}
.sl-rates-info-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
}
.sl-rates-info-grid article{
  background:#fff;
  padding:24px;
  min-height:190px;
}
.sl-rates-info-grid h3{
  margin-top:0;
  font-size:1.2rem;
}
.sl-rates-info-grid p{
  line-height:1.55;
}
@media(max-width:900px){
  .sl-rates-info-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:700px){
  .sl-rates-overview,
  .sl-rates-info{
    padding:42px 14px;
  }
  .sl-rates-wrap{
    width:100%!important;
    max-width:100%!important;
  }
  .sl-rates-heading{
    text-align:left;
    margin-bottom:24px;
  }
  .sl-rates-cards,
  .sl-rates-info-grid,
  .sl-dynamic-pricing{
    grid-template-columns:1fr;
  }
  .sl-season-rate{
    padding:22px;
  }
  .sl-dynamic-pricing{
    gap:14px;
    padding:24px 22px;
  }
  .sl-rates-info-grid article{
    min-height:0;
    padding:22px;
  }
}


/* v1.5.7 Tee Times */
.sl-tee-times-page{background:#f7f3ea}
.sl-tee-booking,
.sl-tee-info{
  padding:72px 24px;
}
.sl-tee-wrap{
  width:min(1100px,calc(100% - 32px))!important;
  max-width:1100px!important;
  margin:0 auto!important;
}
.sl-tee-heading{
  max-width:760px;
  margin:0 auto 32px;
  text-align:center;
}
.sl-tee-heading h2{
  font-size:clamp(2.25rem,4vw,4rem);
  line-height:1.02;
  margin:.4rem 0 1rem;
}
.sl-tee-heading > p:not(.sl-eyebrow){
  font-size:1.05rem;
  line-height:1.65;
}
.sl-tee-booking-card{
  background:#fff;
  border-top:4px solid #c79a45;
  padding:22px;
  box-shadow:0 12px 32px rgba(24,39,53,.09);
  min-height:280px;
}
.sl-tee-booking-card iframe{
  display:block;
  width:100%!important;
  max-width:100%!important;
  min-height:720px;
  border:0;
}
.sl-tee-times-split{
  margin:0!important;
}
.sl-tee-info-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
}
.sl-tee-info-grid article{
  background:#fff;
  padding:24px;
  min-height:210px;
}
.sl-tee-info-grid h3{
  margin-top:0;
  font-size:1.2rem;
}
.sl-tee-info-grid p{
  line-height:1.55;
}
@media(max-width:900px){
  .sl-tee-info-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:700px){
  .sl-tee-booking,
  .sl-tee-info{
    padding:42px 14px;
  }
  .sl-tee-wrap{
    width:100%!important;
    max-width:100%!important;
  }
  .sl-tee-heading{
    text-align:left;
    margin-bottom:24px;
  }
  .sl-tee-booking-card{
    padding:8px;
    border-top-width:3px;
  }
  .sl-tee-booking-card iframe{
    min-height:820px;
  }
  .sl-tee-info-grid{
    grid-template-columns:1fr;
  }
  .sl-tee-info-grid article{
    min-height:0;
    padding:22px;
  }
}


/* v1.5.8 Quick18 booking destinations */
.sl-booking-options{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.sl-booking-option{
  background:#fff;
  border-top:4px solid #c79a45;
  padding:28px;
  box-shadow:0 10px 28px rgba(24,39,53,.08);
}
.sl-booking-option h3{
  margin:.35rem 0 .8rem;
  font-size:1.5rem;
}
.sl-booking-option p:not(.sl-eyebrow){
  min-height:48px;
  line-height:1.55;
}
.sl-booking-option .sl-primary{
  display:inline-block;
  margin-top:10px;
}
@media(max-width:850px){
  .sl-booking-options{grid-template-columns:1fr}
  .sl-booking-option p:not(.sl-eyebrow){min-height:0}
}

/* v1.5.9 embedded Quick18 booking */
.sl-embedded-booking{
  background:#fff;
  border-top:4px solid #c79a45;
  box-shadow:0 12px 32px rgba(24,39,53,.09);
  overflow:hidden;
}
.sl-embedded-booking-head{padding:26px 28px 12px}
.sl-embedded-booking-head h3{font-size:1.7rem;margin:.3rem 0 .6rem}
.sl-quick18-frame{
  display:block;
  width:100%;
  height:1050px;
  border:0;
  background:#fff;
}
.sl-booking-secondary{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:20px;
}
.sl-booking-mini{
  display:flex;
  flex-direction:column;
  gap:6px;
  background:#fff;
  border-top:3px solid #c79a45;
  padding:22px;
  color:#243a50;
  text-decoration:none;
  box-shadow:0 8px 22px rgba(24,39,53,.06);
}
.sl-booking-mini strong{font-size:1.3rem}
.sl-booking-mini:hover{transform:translateY(-1px)}
@media(max-width:700px){
  .sl-quick18-frame{height:1250px}
  .sl-booking-secondary{grid-template-columns:1fr}
  .sl-embedded-booking-head{padding:20px 18px 8px}
}


/* v1.6.0 Tee Times embedded booking integration */
.sl-tee-booking{
  padding:54px 24px 62px!important;
}
.sl-tee-booking .sl-tee-wrap{
  width:min(1320px,calc(100% - 36px))!important;
  max-width:1320px!important;
}
.sl-tee-booking .sl-tee-heading{
  max-width:820px!important;
  margin-bottom:26px!important;
}
.sl-embedded-booking{
  width:100%!important;
  max-width:none!important;
  margin:0 auto!important;
  border-top:4px solid #c79a45!important;
}
.sl-embedded-booking-head{
  max-width:1180px;
  margin:0 auto;
  padding:24px 28px 14px!important;
}
.sl-quick18-frame{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:980px!important;
  min-height:980px!important;
  border:0!important;
  background:#fff!important;
}
.sl-booking-secondary{
  width:100%!important;
  max-width:980px!important;
  margin:18px auto 0!important;
  gap:18px!important;
}
.sl-booking-mini{
  min-height:110px;
  justify-content:center;
}
@media(max-width:1100px){
  .sl-tee-booking .sl-tee-wrap{
    width:min(100%,calc(100% - 24px))!important;
  }
  .sl-quick18-frame{
    height:1040px!important;
    min-height:1040px!important;
  }
}
@media(max-width:760px){
  .sl-tee-booking{
    padding:36px 10px 44px!important;
  }
  .sl-tee-booking .sl-tee-wrap{
    width:100%!important;
    max-width:100%!important;
  }
  .sl-embedded-booking-head{
    padding:18px 16px 8px!important;
  }
  .sl-quick18-frame{
    height:1380px!important;
    min-height:1380px!important;
  }
  .sl-booking-secondary{
    grid-template-columns:1fr!important;
    max-width:100%!important;
    margin-top:14px!important;
  }
}


/* v1.6.1 Course Tour refinement */
.sl-course-tour-page{background:#f7f3ea}
.sl-course-tour-intro{
  padding:62px 24px 38px;
}
.sl-course-tour-intro-wrap{
  width:min(1180px,calc(100% - 32px))!important;
  max-width:1180px!important;
  margin:0 auto!important;
}
.sl-course-tour-intro-copy{
  max-width:760px;
  margin:0 auto 34px;
  text-align:center;
}
.sl-course-tour-intro-copy h2{
  font-size:clamp(2.25rem,4vw,4rem);
  line-height:1.02;
  margin:.4rem 0 1rem;
}
.sl-course-tour-intro-copy p:not(.sl-eyebrow){
  font-size:1.05rem;
  line-height:1.65;
}
.sl-course-tour-facts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
}
.sl-course-tour-facts div{
  background:#fff;
  padding:24px;
  text-align:center;
}
.sl-course-tour-facts strong{
  display:block;
  color:#243a50;
  font-family:Georgia,serif;
  font-size:2rem;
  line-height:1;
  margin-bottom:8px;
}
.sl-course-tour-facts span{
  font-size:.78rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.sl-course-tour-grid-section{
  padding:30px 0 72px;
}
.sl-course-tour-split{
  margin:0!important;
}
.sl-course-tour-links{
  padding:66px 24px;
}
.sl-course-tour-links-wrap{
  width:min(1100px,calc(100% - 32px))!important;
  max-width:1100px!important;
  margin:0 auto!important;
}
.sl-course-tour-links-heading{
  max-width:720px;
  margin:0 auto 30px;
  text-align:center;
}
.sl-course-tour-links-heading h2{
  font-size:clamp(2.1rem,3.6vw,3.5rem);
  line-height:1.05;
  margin:.35rem 0 0;
}
.sl-course-tour-links-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
}
.sl-course-tour-links-grid article{
  background:#fff;
  padding:28px;
  min-height:185px;
}
.sl-course-tour-links-grid h3{
  margin-top:0;
  font-size:1.3rem;
}
.sl-course-tour-links-grid p{
  line-height:1.55;
}
@media(max-width:900px){
  .sl-course-tour-facts{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .sl-course-tour-links-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:700px){
  .sl-course-tour-intro{
    padding:42px 14px 24px;
  }
  .sl-course-tour-intro-wrap,
  .sl-course-tour-links-wrap{
    width:100%!important;
    max-width:100%!important;
  }
  .sl-course-tour-intro-copy,
  .sl-course-tour-links-heading{
    text-align:left;
  }
  .sl-course-tour-facts{
    grid-template-columns:1fr 1fr;
  }
  .sl-course-tour-facts div{
    padding:18px 12px;
  }
  .sl-course-tour-grid-section{
    padding:18px 0 48px;
  }
  .sl-course-tour-links{
    padding:44px 14px;
  }
}


/* v1.6.3 booking cross-navigation */
.sl-other-bookings{
  margin-top:28px;
}
.sl-other-bookings-head{
  max-width:760px;
  margin:0 auto 18px;
  text-align:center;
}
.sl-other-bookings-head h2{
  font-size:clamp(1.8rem,3vw,2.8rem);
  margin:.35rem 0 0;
}
.sl-booking-secondary-standalone{
  max-width:980px!important;
}
@media(max-width:700px){
  .sl-other-bookings{
    margin-top:22px;
  }
  .sl-other-bookings-head{
    text-align:left;
  }
}


/* v1.6.4 Indoor Golf Simulator */
.sl-simulator-page{background:#f7f3ea}
.sl-simulator-intro,
.sl-simulator-info{padding:68px 24px}
.sl-simulator-wrap{
  width:min(1100px,calc(100% - 32px))!important;
  max-width:1100px!important;
  margin:0 auto!important;
}
.sl-simulator-heading{
  max-width:760px;
  margin:0 auto 32px;
  text-align:center;
}
.sl-simulator-heading h2{
  font-size:clamp(2.25rem,4vw,4rem);
  line-height:1.02;
  margin:.4rem 0 1rem;
}
.sl-simulator-heading > p:not(.sl-eyebrow){
  font-size:1.05rem;
  line-height:1.65;
}
.sl-simulator-features{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
}
.sl-simulator-features article{
  background:#fff;
  padding:28px;
  min-height:190px;
}
.sl-simulator-features h3{
  margin:.35rem 0 .8rem;
  font-size:1.35rem;
}
.sl-simulator-features p:not(.sl-eyebrow){line-height:1.55}
.sl-simulator-split{margin:0!important}
.sl-simulator-info-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
}
.sl-simulator-info-grid article{
  background:#fff;
  padding:24px;
  min-height:210px;
}
.sl-simulator-info-grid h3{
  margin-top:0;
  font-size:1.2rem;
}
.sl-simulator-info-grid p{line-height:1.55}
@media(max-width:900px){
  .sl-simulator-features{grid-template-columns:1fr}
  .sl-simulator-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .sl-simulator-intro,
  .sl-simulator-info{padding:44px 14px}
  .sl-simulator-wrap{
    width:100%!important;
    max-width:100%!important;
  }
  .sl-simulator-heading{text-align:left}
  .sl-simulator-info-grid{grid-template-columns:1fr}
  .sl-simulator-info-grid article{min-height:0}
}


/* v1.6.5 Responsive embedded Quick18 booking */
.sl-tee-times-page,
.sl-tee-booking,
.sl-embedded-booking,
.sl-booking-secondary,
.sl-other-bookings{
  box-sizing:border-box;
}

.sl-embedded-booking{
  width:100%;
  max-width:100%;
  overflow:hidden;
}

.sl-quick18-frame{
  display:block;
  width:100%!important;
  max-width:100%!important;
  border:0!important;
  background:#fff;
}

@media (max-width:900px){
  .sl-tee-booking{
    padding-left:12px!important;
    padding-right:12px!important;
  }

  .sl-tee-booking .sl-tee-wrap{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }

  .sl-embedded-booking{
    border-left:0!important;
    border-right:0!important;
    box-shadow:none!important;
  }

  .sl-embedded-booking-head{
    padding:20px 18px 10px!important;
  }

  .sl-quick18-frame{
    width:100%!important;
    min-width:0!important;
    height:1450px!important;
    min-height:1450px!important;
  }

  .sl-booking-secondary,
  .sl-booking-secondary-standalone{
    width:100%!important;
    max-width:100%!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    margin-top:14px!important;
  }

  .sl-booking-mini{
    width:100%!important;
    min-height:0!important;
    padding:18px!important;
  }
}

@media (max-width:600px){
  html, body{
    max-width:100%;
    overflow-x:hidden;
  }

  .sl-tee-booking{
    padding:28px 0 36px!important;
  }

  .sl-tee-booking .sl-tee-heading{
    padding:0 16px;
    margin-bottom:20px!important;
  }

  .sl-embedded-booking{
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    border-radius:0!important;
  }

  .sl-embedded-booking-head{
    padding:18px 16px 8px!important;
  }

  .sl-embedded-booking-head h2,
  .sl-embedded-booking-head h3{
    font-size:1.5rem!important;
    line-height:1.15!important;
  }

  .sl-quick18-frame{
    width:100vw!important;
    max-width:100vw!important;
    height:1650px!important;
    min-height:1650px!important;
  }

  .sl-other-bookings{
    padding:0 14px;
    margin-top:22px!important;
  }

  .sl-other-bookings-head{
    padding:0 2px;
  }

  .sl-booking-secondary,
  .sl-booking-secondary-standalone{
    padding:0!important;
  }

  .sl-booking-mini{
    box-shadow:0 6px 18px rgba(24,39,53,.06)!important;
  }
}

@media (max-width:420px){
  .sl-quick18-frame{
    height:1780px!important;
    min-height:1780px!important;
  }

  .sl-embedded-booking-head p{
    font-size:.92rem;
    line-height:1.5;
  }
}


/* v1.6.6 Hybrid Quick18 booking behavior */
.sl-mobile-booking-fallback{
  display:none;
}

@media (max-width:700px){
  /* Quick18 searchmatrix is desktop-oriented. Hide iframe on phones. */
  .sl-quick18-frame{
    display:none!important;
  }

  .sl-mobile-booking-fallback{
    display:block!important;
    padding:24px 18px 28px;
    background:#fff;
    border-top:1px solid #e6dfd3;
  }

  .sl-mobile-booking-fallback h3{
    margin:.35rem 0 .8rem;
    font-size:1.55rem;
    line-height:1.15;
  }

  .sl-mobile-booking-fallback p:not(.sl-eyebrow){
    margin:0 0 18px;
    font-size:1rem;
    line-height:1.55;
  }

  .sl-mobile-booking-button{
    display:block!important;
    width:100%;
    box-sizing:border-box;
    text-align:center;
    padding:15px 16px!important;
  }

  .sl-embedded-booking{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    border-radius:0!important;
  }

  .sl-other-bookings{
    margin-top:18px!important;
  }
}

@media (min-width:701px){
  .sl-quick18-frame{
    display:block!important;
  }
  .sl-mobile-booking-fallback{
    display:none!important;
  }
}


/* v1.6.7 Golf Outings */
.sl-outings-page{background:#f7f3ea}
.sl-outings-intro,
.sl-outings-info,
.sl-outings-process{
  padding:68px 24px;
}
.sl-outings-wrap{
  width:min(1100px,calc(100% - 32px))!important;
  max-width:1100px!important;
  margin:0 auto!important;
}
.sl-outings-heading{
  max-width:780px;
  margin:0 auto 32px;
  text-align:center;
}
.sl-outings-heading h2{
  font-size:clamp(2.25rem,4vw,4rem);
  line-height:1.03;
  margin:.4rem 0 1rem;
}
.sl-outings-heading > p:not(.sl-eyebrow){
  font-size:1.05rem;
  line-height:1.65;
}
.sl-outings-features{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
}
.sl-outings-features article{
  background:#fff;
  padding:28px;
  min-height:190px;
}
.sl-outings-features h3{
  margin:.35rem 0 .8rem;
  font-size:1.35rem;
}
.sl-outings-features p:not(.sl-eyebrow){line-height:1.55}
.sl-outings-split{margin:0!important}
.sl-outings-info-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
}
.sl-outings-info-grid article{
  background:#fff;
  padding:24px;
  min-height:220px;
}
.sl-outings-info-grid h3{margin-top:0;font-size:1.2rem}
.sl-outings-info-grid p{line-height:1.55}
.sl-outings-process{
  background:#fff;
}
.sl-outings-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.sl-outings-steps article{
  background:#f7f3ea;
  border-top:4px solid #c79a45;
  padding:26px;
}
.sl-outings-steps span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  border-radius:50%;
  background:#243a50;
  color:#fff;
  font-weight:700;
  margin-bottom:14px;
}
.sl-outings-steps h3{margin:.2rem 0 .7rem;font-size:1.25rem}
.sl-outings-steps p{line-height:1.55}
.sl-outings-process-cta{
  text-align:center;
  margin-top:28px;
}
@media(max-width:900px){
  .sl-outings-features,
  .sl-outings-steps{grid-template-columns:1fr}
  .sl-outings-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .sl-outings-intro,
  .sl-outings-info,
  .sl-outings-process{padding:44px 14px}
  .sl-outings-wrap{width:100%!important;max-width:100%!important}
  .sl-outings-heading{text-align:left}
  .sl-outings-info-grid{grid-template-columns:1fr}
  .sl-outings-info-grid article{min-height:0}
}


/* v1.6.8 Outing Worksheet */
.sl-worksheet-page{background:#f7f3ea}
.sl-worksheet-intro{padding:58px 24px 28px}
.sl-worksheet-form-section{padding:18px 24px 72px}
.sl-worksheet-wrap{
  width:min(1080px,calc(100% - 32px))!important;
  max-width:1080px!important;
  margin:0 auto!important;
}
.sl-worksheet-intro .sl-worksheet-wrap{
  max-width:820px!important;
  text-align:center;
}
.sl-worksheet-intro h2{
  font-size:clamp(2.15rem,3.8vw,3.8rem);
  line-height:1.04;
  margin:.4rem 0 1rem;
}
.sl-worksheet-intro p:not(.sl-eyebrow){font-size:1.04rem;line-height:1.65}

.sl-outing-form{display:grid;gap:24px}
.sl-form-section{
  background:#fff;
  border-top:4px solid #c79a45;
  padding:30px;
  box-shadow:0 10px 30px rgba(24,39,53,.07);
}
.sl-form-section-head{
  display:flex;
  gap:16px;
  align-items:center;
  margin-bottom:24px;
}
.sl-form-section-head>span{
  display:flex;
  align-items:center;
  justify-content:center;
  width:42px;height:42px;
  flex:0 0 42px;
  border-radius:50%;
  background:#243a50;color:#fff;font-weight:800;
}
.sl-form-section-head h2{margin:.2rem 0 0;font-size:1.8rem}
.sl-form-grid{display:grid;gap:18px}
.sl-form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.sl-span-2{grid-column:1/-1}
.sl-outing-form label{
  display:flex;
  flex-direction:column;
  gap:7px;
  color:#243a50;
  font-weight:700;
  font-size:.9rem;
}
.sl-outing-form input,
.sl-outing-form textarea,
.sl-outing-form select{
  width:100%;
  box-sizing:border-box;
  padding:12px 13px;
  border:1px solid #d8d2c7;
  background:#fff;
  color:#1f2e3a;
  font:inherit;
  font-weight:400;
  border-radius:0;
}
.sl-outing-form input:focus,
.sl-outing-form textarea:focus,
.sl-outing-form select:focus{
  outline:2px solid rgba(199,154,69,.35);
  border-color:#c79a45;
}
.sl-player-count{max-width:260px;margin-top:18px}
.sl-choice-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.sl-choice-cards-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.sl-choice-card{
  display:block!important;
  position:relative;
  border:1px solid #ddd6ca;
  background:#f9f6ef;
  padding:16px;
  cursor:pointer;
}
.sl-choice-card input{
  width:auto!important;
  margin:0 8px 0 0;
}
.sl-choice-card span{display:inline}
.sl-choice-card strong{display:block;margin-bottom:4px}
.sl-choice-card small{display:block;font-weight:400;line-height:1.45;color:#5b646b}
.sl-form-subsection{margin-top:28px;padding-top:24px;border-top:1px solid #e4ded4}
.sl-form-subsection h3{margin:0 0 14px;font-size:1.3rem}
.sl-form-note{font-size:.9rem;line-height:1.55;color:#5e666c}
.sl-ticket-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.sl-ticket-grid label{background:#f9f6ef;padding:16px}
.sl-ticket-grid small{font-weight:400;color:#646b70}
.sl-outing-total{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
  margin:22px 0;
}
.sl-outing-total>div{
  background:#243a50;color:#fff;padding:22px;
}
.sl-outing-total span{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#d8b66d;margin-bottom:7px}
.sl-outing-total strong{font-family:Georgia,serif;font-size:2rem}
.sl-submit-button{border:0;cursor:pointer;font-size:.9rem}
.sl-form-success,.sl-form-error{
  background:#fff;padding:30px;border-top:4px solid #c79a45;box-shadow:0 10px 30px rgba(24,39,53,.07)
}
.sl-form-error{border-top-color:#a94442}
.sl-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}

@media(max-width:900px){
  .sl-choice-cards-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-ticket-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .sl-worksheet-intro{padding:42px 14px 22px}
  .sl-worksheet-form-section{padding:12px 10px 46px}
  .sl-worksheet-wrap{width:100%!important;max-width:100%!important}
  .sl-worksheet-intro .sl-worksheet-wrap{text-align:left}
  .sl-form-section{padding:22px 16px}
  .sl-form-grid-2,.sl-choice-cards,.sl-choice-cards-4,.sl-ticket-grid,.sl-outing-total{grid-template-columns:1fr}
  .sl-span-2{grid-column:auto}
  .sl-player-count{max-width:none}
  .sl-form-section-head{align-items:flex-start}
  .sl-outing-total strong{font-size:1.7rem}
}


/* v1.6.9 Outing Worksheet desktop layout refinement */
.sl-worksheet-wrap{
  width:min(1240px,calc(100% - 48px))!important;
  max-width:1240px!important;
}

.sl-worksheet-intro .sl-worksheet-wrap{
  max-width:900px!important;
}

.sl-outing-form{
  max-width:1180px;
  margin:0 auto;
}

.sl-form-section{
  padding:34px 36px;
}

.sl-form-grid-2{
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:22px;
  row-gap:18px;
}

/* More balanced contact section */
.sl-form-grid-2 label:nth-of-type(5),
.sl-form-grid-2 label:nth-of-type(6),
.sl-form-grid-2 label:nth-of-type(13){
  grid-column:1/-1;
}

/* Golf section */
.sl-form-section:nth-of-type(2) .sl-choice-cards{
  grid-template-columns:repeat(2,minmax(0,1fr));
  max-width:900px;
}
.sl-player-count{
  max-width:320px;
}

/* Food section */
.sl-form-section:nth-of-type(3) .sl-choice-cards{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.sl-form-section:nth-of-type(3) .sl-choice-cards-4{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

/* Beverage ticket section */
.sl-ticket-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.sl-form-section:nth-of-type(4) .sl-choice-cards{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

/* Choice cards */
.sl-choice-card{
  min-height:92px;
  display:flex!important;
  align-items:flex-start;
  gap:10px;
  box-sizing:border-box;
}
.sl-choice-card input{
  flex:0 0 auto;
  margin-top:3px!important;
}
.sl-choice-card span{
  display:block;
  min-width:0;
}
.sl-choice-card strong{
  font-size:1rem;
}
.sl-choice-card small{
  margin-top:4px;
}

/* Ticket fields */
.sl-ticket-grid label{
  min-height:130px;
  justify-content:space-between;
}
.sl-ticket-grid input{
  margin-top:10px;
}

/* Comments/totals */
.sl-form-section:nth-of-type(5) textarea{
  min-height:150px;
}
.sl-outing-total{
  margin-top:26px;
}
.sl-outing-total>div{
  padding:28px;
}
.sl-outing-total strong{
  font-size:2.35rem;
}
.sl-submit-button{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-width:280px;
  padding:15px 22px!important;
  margin-top:8px;
}

/* Section typography */
.sl-form-section-head h2{
  font-size:2rem;
}
.sl-form-section h3{
  font-size:1.35rem;
}

@media(max-width:1024px){
  .sl-worksheet-wrap{
    width:min(100%,calc(100% - 28px))!important;
  }
  .sl-outing-form{
    max-width:100%;
  }
  .sl-form-section{
    padding:28px 24px;
  }
  .sl-form-section:nth-of-type(3) .sl-choice-cards-4{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .sl-ticket-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:700px){
  .sl-worksheet-wrap{
    width:100%!important;
    max-width:100%!important;
  }
  .sl-outing-form{
    width:100%;
  }
  .sl-form-section{
    padding:22px 16px;
  }
  .sl-form-grid-2,
  .sl-form-section:nth-of-type(2) .sl-choice-cards,
  .sl-form-section:nth-of-type(3) .sl-choice-cards,
  .sl-form-section:nth-of-type(3) .sl-choice-cards-4,
  .sl-ticket-grid,
  .sl-form-section:nth-of-type(4) .sl-choice-cards,
  .sl-outing-total{
    grid-template-columns:1fr;
  }
  .sl-choice-card{
    min-height:0;
  }
  .sl-ticket-grid label{
    min-height:0;
  }
  .sl-submit-button{
    width:100%;
    min-width:0;
  }
}


/* v1.7.0 Outing planner item descriptions */
.sl-item-desc{
  display:block;
  margin-top:9px;
  font-size:.88rem;
  line-height:1.5;
  font-weight:400;
  color:#586168;
}
.sl-item-desc b{
  color:#243a50;
  font-weight:700;
}
.sl-form-section:nth-of-type(3) .sl-choice-card{
  min-height:150px;
}
.sl-form-section:nth-of-type(3) .sl-choice-cards-4{
  align-items:stretch;
}
@media(max-width:1024px){
  .sl-form-section:nth-of-type(3) .sl-choice-card{
    min-height:0;
  }
}


/* v1.7.1 Outing worksheet alignment + expandable descriptions */
.sl-outing-form .sl-form-grid,
.sl-outing-form .sl-form-row{
  align-items:start;
}
.sl-outing-form input,
.sl-outing-form select,
.sl-outing-form textarea{
  box-sizing:border-box;
}
.sl-outing-form .sl-field,
.sl-outing-form .sl-field-wide{
  min-width:0;
}
.sl-outing-form .sl-field-wide{
  grid-column:1 / -1;
  width:100%;
}
.sl-outing-form .sl-field-wide input,
.sl-outing-form .sl-field-wide textarea,
.sl-outing-form .sl-field-wide select{
  width:100%;
  max-width:none;
}

/* Keep City / State / ZIP / Country aligned as a clean grid */
.sl-outing-form .sl-address-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  gap:14px 16px;
  width:100%;
}
.sl-outing-form .sl-address-grid .sl-country{
  grid-column:1 / -1;
}

.sl-item-details{
  margin-top:10px;
  border-top:1px solid rgba(36,58,80,.14);
  padding-top:8px;
}
.sl-item-details summary{
  position:relative;
  cursor:pointer;
  list-style:none;
  padding-right:26px;
  color:#243a50;
  font-size:.82rem;
  line-height:1.35;
  font-weight:700;
}
.sl-item-details summary::-webkit-details-marker{display:none}
.sl-item-details summary::after{
  content:"+";
  position:absolute;
  right:2px;
  top:-3px;
  font-family:Arial,sans-serif;
  font-size:1.35rem;
  line-height:1;
  font-weight:400;
  color:#b88427;
}
.sl-item-details[open] summary::after{content:"−"}
.sl-item-details .sl-item-desc{
  margin-top:9px;
  padding-right:4px;
  font-size:.86rem;
  line-height:1.55;
}
.sl-form-section:nth-of-type(3) .sl-choice-card{min-height:0}

@media(max-width:700px){
  .sl-outing-form .sl-address-grid{grid-template-columns:1fr}
  .sl-outing-form .sl-address-grid .sl-country{grid-column:auto}
}


/* v1.7.2 Outing Worksheet polished visual system */
.sl-worksheet-form-section{padding-top:28px}
.sl-outing-form{gap:28px}
.sl-form-section{
  position:relative;
  border-top:0;
  border-radius:2px;
  box-shadow:0 14px 38px rgba(28,43,55,.08);
  overflow:hidden;
  padding:0 34px 34px;
}
.sl-form-section::before{
  content:"";
  display:block;
  height:4px;
  background:#c79a45;
  margin:0 -34px 28px;
}
.sl-form-section-head{margin-bottom:28px}
.sl-form-section-head>span{
  width:44px;height:44px;flex-basis:44px;
  box-shadow:0 4px 10px rgba(36,58,80,.15)
}
.sl-form-section-head .sl-eyebrow{margin-bottom:2px}
.sl-form-section-head h2{font-size:2.05rem;letter-spacing:-.01em}
.sl-form-section h3{margin-bottom:16px;color:#243a50}
.sl-form-subsection{margin-top:30px;padding-top:26px;border-top:1px solid #e7e0d5}

.sl-contact-top-grid,
.sl-contact-bottom-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px 20px;
}
.sl-contact-bottom-grid .sl-field-wide{grid-column:1/-1}
.sl-address-section .sl-form-grid{gap:18px}
.sl-address-grid{
  display:grid!important;
  grid-template-columns:2fr 1fr 1fr!important;
  gap:18px 20px!important;
  margin-top:18px;
}
.sl-address-grid .sl-country{grid-column:1/-1!important}
.sl-address-grid label,
.sl-contact-top-grid label,
.sl-contact-bottom-grid label{min-width:0}
.sl-address-grid input,
.sl-contact-top-grid input,
.sl-contact-bottom-grid input{width:100%!important}

.sl-outing-form label{color:#23394d;font-weight:700;font-size:.88rem}
.sl-outing-form input,
.sl-outing-form textarea,
.sl-outing-form select{
  min-height:46px;
  border:1px solid #d8d0c5;
  background:#fff;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.sl-outing-form textarea{min-height:120px;resize:vertical}
.sl-outing-form input:hover,
.sl-outing-form textarea:hover,
.sl-outing-form select:hover{border-color:#b9afa1}
.sl-outing-form input:focus,
.sl-outing-form textarea:focus,
.sl-outing-form select:focus{
  outline:0;border-color:#c79a45;box-shadow:0 0 0 3px rgba(199,154,69,.12)
}

.sl-turn-lunch-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.sl-meal-package-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  align-items:stretch!important
}
.sl-bloody-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch!important
}
.sl-choice-cards{gap:14px!important}
.sl-choice-card{
  position:relative;
  min-height:118px!important;
  padding:18px!important;
  border:1px solid #ddd5c9!important;
  background:#faf7f1!important;
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease
}
.sl-choice-card:hover{
  transform:translateY(-1px);
  border-color:#c79a45!important;
  box-shadow:0 8px 20px rgba(36,58,80,.08);
  background:#fff!important
}
.sl-choice-card:has(input:checked){
  border-color:#c79a45!important;
  background:#fffaf0!important;
  box-shadow:inset 0 0 0 1px #c79a45,0 8px 22px rgba(36,58,80,.07)
}
.sl-choice-card input[type="radio"]{accent-color:#243a50;transform:scale(1.08)}
.sl-choice-card strong{font-size:1.02rem!important;line-height:1.25}
.sl-choice-card small{margin-top:5px;color:#6d7377!important}
.sl-item-details{margin-top:12px!important;padding-top:10px!important}
.sl-item-details summary{font-size:.84rem!important;letter-spacing:.01em}
.sl-item-details summary::after{color:#c18825!important}

.sl-ticket-grid{gap:14px!important}
.sl-ticket-grid label{
  min-height:150px!important;
  background:#faf7f1!important;
  border:1px solid #e2dbd0;
  padding:18px!important
}
.sl-form-note{color:#697076!important;font-size:.9rem!important}
.sl-review-callout{
  display:flex;flex-direction:column;gap:4px;
  background:#f6f1e7;border-left:4px solid #c79a45;
  padding:15px 18px;margin:22px 0 18px
}
.sl-review-callout strong{color:#243a50}
.sl-review-callout span{font-size:.9rem;color:#626a70}
.sl-outing-total{
  border-radius:2px;overflow:hidden;
  box-shadow:0 8px 22px rgba(36,58,80,.08)
}
.sl-outing-total>div{padding:30px!important}
.sl-outing-total strong{font-size:2.45rem!important}
.sl-submit-row{display:flex;align-items:center;gap:18px;margin-top:18px}
.sl-submit-row span{font-size:.9rem;color:#6b7277}
.sl-submit-button{
  display:inline-flex!important;
  align-items:center;justify-content:center;
  min-width:300px!important;min-height:48px;
  border:0!important;cursor:pointer;
  box-shadow:0 7px 16px rgba(36,58,80,.12)
}

@media(max-width:1100px){
  .sl-meal-package-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .sl-form-section{padding:0 16px 24px}
  .sl-form-section::before{margin:0 -16px 22px}
  .sl-contact-top-grid,
  .sl-contact-bottom-grid,
  .sl-address-grid,
  .sl-turn-lunch-grid,
  .sl-meal-package-grid,
  .sl-bloody-grid{grid-template-columns:1fr!important}
  .sl-address-grid .sl-country,
  .sl-contact-bottom-grid .sl-field-wide{grid-column:auto!important}
  .sl-choice-card{min-height:0!important}
  .sl-submit-row{flex-direction:column;align-items:stretch}
  .sl-submit-button{width:100%!important;min-width:0!important}
  .sl-submit-row span{text-align:center}
}


/* v1.7.3 Worksheet alignment correction */
.sl-contact-section .sl-contact-top-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.sl-address-section .sl-form-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
}
.sl-address-grid{
  display:grid!important;
  grid-template-columns:minmax(0,2fr) minmax(140px,1fr) minmax(140px,1fr)!important;
  align-items:end!important;
}
.sl-address-grid .sl-country{
  grid-column:1/-1!important;
}
.sl-contact-bottom-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.sl-contact-bottom-grid .sl-field-wide{
  grid-column:1/-1!important;
}
.sl-meal-package-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  align-items:start!important;
}
.sl-meal-package-grid>.sl-choice-card,
.sl-bloody-grid>.sl-choice-card,
.sl-turn-lunch-grid>.sl-choice-card{
  width:auto!important;
  height:auto!important;
  min-height:130px!important;
  align-self:stretch!important;
}
.sl-bloody-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.sl-turn-lunch-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.sl-meal-notes{
  display:block;
  margin-top:24px;
}
@media(max-width:1000px){
  .sl-meal-package-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .sl-contact-section .sl-contact-top-grid,
  .sl-address-grid,
  .sl-contact-bottom-grid,
  .sl-meal-package-grid,
  .sl-bloody-grid,
  .sl-turn-lunch-grid{grid-template-columns:1fr!important}
  .sl-address-grid .sl-country,
  .sl-contact-bottom-grid .sl-field-wide{grid-column:auto!important}
}


/* v1.7.4 Final worksheet card-grid cleanup */
.sl-meal-package-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
}
.sl-meal-package-grid > .sl-choice-card{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:150px!important;
}
.sl-meal-package-grid > .sl-choice-card .sl-item-details{
  margin-top:auto!important;
}
.sl-turn-lunch-grid,
.sl-bloody-grid{
  gap:16px!important;
}
.sl-bloody-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.sl-turn-lunch-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.sl-item-desc{
  font-size:.9rem!important;
  line-height:1.6!important;
}
.sl-item-desc strong{
  display:inline;
  color:#243a50;
}
.sl-address-grid{
  grid-template-columns:minmax(0,2fr) minmax(140px,1fr) minmax(140px,1fr)!important;
}
.sl-contact-section + .sl-contact-section{
  display:none!important;
}
@media(max-width:1100px){
  .sl-meal-package-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .sl-meal-package-grid,
  .sl-bloody-grid,
  .sl-turn-lunch-grid,
  .sl-address-grid{
    grid-template-columns:1fr!important;
  }
}


/* v1.7.5 worksheet structural card fix */
.sl-option-grid{
  display:grid!important;
  gap:18px!important;
  width:100%!important;
  align-items:stretch!important;
}
.sl-option-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.sl-option-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))!important}

.sl-option-card{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  border:1px solid #ddd5c7!important;
  background:#f8f5ee!important;
  padding:0!important;
  overflow:hidden!important;
}
.sl-option-select{
  display:flex!important;
  gap:12px!important;
  align-items:flex-start!important;
  padding:22px 18px!important;
  min-height:125px!important;
  cursor:pointer!important;
  margin:0!important;
}
.sl-option-select input{margin-top:3px!important;flex:0 0 auto!important}
.sl-option-select span{display:flex!important;flex-direction:column!important;gap:8px!important}
.sl-option-select strong{font-size:1rem!important;color:#183149!important}
.sl-option-select small{font-size:.82rem!important;color:#5f6368!important}
.sl-option-card:has(input:checked){
  border-color:#c9932f!important;
  box-shadow:0 5px 18px rgba(29,49,68,.08)!important;
}
.sl-option-details{
  margin-top:auto!important;
  border-top:1px solid #ddd5c7!important;
  padding:0 18px!important;
  background:#fff!important;
}
.sl-option-details summary{
  position:relative!important;
  list-style:none!important;
  cursor:pointer!important;
  padding:14px 24px 14px 0!important;
  font-weight:700!important;
  color:#183149!important;
}
.sl-option-details summary::-webkit-details-marker{display:none!important}
.sl-option-details summary:after{
  content:"+"!important;
  position:absolute!important;
  right:0!important;
  color:#c9932f!important;
  font-size:1.25rem!important;
  top:10px!important;
}
.sl-option-details[open] summary:after{content:"−"!important}
.sl-option-details > div{
  padding:0 0 18px!important;
  line-height:1.65!important;
  font-size:.9rem!important;
}

/* Make the address/contact layout intentional and balanced. */
.sl-contact-section .sl-address-grid{
  display:grid!important;
  grid-template-columns:2fr 1fr 1fr!important;
  gap:18px!important;
  align-items:end!important;
}
.sl-contact-section .sl-address-grid > *{min-width:0!important}
.sl-contact-section .sl-address-grid .sl-full{grid-column:1/-1!important}

@media(max-width:1100px){
  .sl-option-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .sl-option-grid--2,.sl-option-grid--4,
  .sl-contact-section .sl-address-grid{grid-template-columns:1fr!important}
  .sl-contact-section .sl-address-grid .sl-full{grid-column:auto!important}
}


/* v1.7.6 targeted worksheet alignment fixes */

/* Address row: City | State | ZIP must remain on the same row */
.sl-contact-section .sl-address-grid{
  display:grid!important;
  grid-template-columns:minmax(0,2fr) minmax(150px,1fr) minmax(150px,1fr)!important;
  grid-auto-flow:row!important;
  align-items:end!important;
  gap:18px 20px!important;
}
.sl-contact-section .sl-address-grid > label{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  grid-row:1!important;
}
.sl-contact-section .sl-address-grid > label:nth-child(1){
  grid-column:1!important;
}
.sl-contact-section .sl-address-grid > label:nth-child(2){
  grid-column:2!important;
}
.sl-contact-section .sl-address-grid > label:nth-child(3){
  grid-column:3!important;
}
.sl-contact-section .sl-address-grid > label.sl-country,
.sl-contact-section .sl-address-grid > label:nth-child(4){
  grid-column:1 / -1!important;
  grid-row:2!important;
}
.sl-contact-section .sl-address-grid input{
  width:100%!important;
  max-width:none!important;
}

/* Bloody Mary: all three choices occupy one even desktop row */
.sl-bloody-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  gap:18px!important;
  align-items:stretch!important;
}
.sl-bloody-grid > .sl-choice-card{
  grid-column:auto!important;
  grid-row:1!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  align-self:stretch!important;
}
.sl-bloody-grid > .sl-choice-card:nth-child(1){grid-column:1!important}
.sl-bloody-grid > .sl-choice-card:nth-child(2){grid-column:2!important}
.sl-bloody-grid > .sl-choice-card:nth-child(3){grid-column:3!important}

@media(max-width:760px){
  .sl-contact-section .sl-address-grid{
    grid-template-columns:1fr!important;
  }
  .sl-contact-section .sl-address-grid > label,
  .sl-contact-section .sl-address-grid > label:nth-child(1),
  .sl-contact-section .sl-address-grid > label:nth-child(2),
  .sl-contact-section .sl-address-grid > label:nth-child(3),
  .sl-contact-section .sl-address-grid > label.sl-country,
  .sl-contact-section .sl-address-grid > label:nth-child(4){
    grid-column:1!important;
    grid-row:auto!important;
  }

  .sl-bloody-grid{
    grid-template-columns:1fr!important;
  }
  .sl-bloody-grid > .sl-choice-card,
  .sl-bloody-grid > .sl-choice-card:nth-child(1),
  .sl-bloody-grid > .sl-choice-card:nth-child(2),
  .sl-bloody-grid > .sl-choice-card:nth-child(3){
    grid-column:1!important;
    grid-row:auto!important;
  }
}


/* v1.7.7 Golf Leagues */
.sl-leagues-page{background:#f7f3ea}
.sl-leagues-intro,
.sl-leagues-grid-section,
.sl-league-incentive,
.sl-leagues-info{padding:68px 24px}
.sl-leagues-wrap{
  width:min(1120px,calc(100% - 32px))!important;
  max-width:1120px!important;
  margin:0 auto!important;
}
.sl-leagues-heading{
  max-width:760px;
  margin:0 auto 32px;
  text-align:center;
}
.sl-leagues-heading h2{
  font-size:clamp(2.25rem,4vw,4rem);
  line-height:1.03;
  margin:.4rem 0 1rem;
}
.sl-league-facts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
}
.sl-league-facts div{
  background:#fff;
  padding:24px;
  text-align:center;
}
.sl-league-facts strong{
  display:block;
  font-family:Georgia,serif;
  color:#243a50;
  font-size:2rem;
  line-height:1;
  margin-bottom:8px;
}
.sl-league-facts span{
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.sl-leagues-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.sl-league-card{
  background:#fff;
  border-top:4px solid #c79a45;
  padding:26px;
  min-height:250px;
  box-shadow:0 10px 28px rgba(24,39,53,.06);
}
.sl-league-card h3{font-size:1.45rem;margin:.3rem 0 .5rem}
.sl-league-time{
  color:#243a50;
  font-weight:800;
  font-size:1.05rem;
  margin-bottom:14px;
}
.sl-league-card p:not(.sl-eyebrow){line-height:1.55}
.sl-leagues-split{margin:0!important}
.sl-incentive-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  background:#243a50;
  color:#fff;
  padding:34px 38px;
}
.sl-incentive-card h2{
  color:#fff;
  font-size:clamp(2rem,3.5vw,3.2rem);
  margin:.35rem 0 .7rem;
}
.sl-incentive-card p{line-height:1.6}
.sl-leagues-info-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
}
.sl-leagues-info-grid article{
  background:#fff;
  padding:24px;
  min-height:190px;
}
.sl-leagues-info-grid h3{margin-top:0;font-size:1.2rem}
.sl-leagues-info-grid p{line-height:1.55}

@media(max-width:900px){
  .sl-league-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-leagues-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-leagues-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-incentive-card{align-items:flex-start;flex-direction:column}
}
@media(max-width:700px){
  .sl-leagues-intro,
  .sl-leagues-grid-section,
  .sl-league-incentive,
  .sl-leagues-info{padding:44px 14px}
  .sl-leagues-wrap{width:100%!important;max-width:100%!important}
  .sl-leagues-heading{text-align:left}
  .sl-league-facts,
  .sl-leagues-grid,
  .sl-leagues-info-grid{grid-template-columns:1fr}
  .sl-league-card,
  .sl-leagues-info-grid article{min-height:0}
  .sl-incentive-card{padding:26px 22px}
}


/* v1.7.8 Stay & Play */
.sl-stay-play-page{background:#f7f3ea}
.sl-stay-play-intro,
.sl-stay-play-grid-section,
.sl-stay-play-amenities,
.sl-stay-play-plan{padding:68px 24px}
.sl-stay-play-wrap{
  width:min(1120px,calc(100% - 32px))!important;
  max-width:1120px!important;
  margin:0 auto!important;
}
.sl-stay-play-heading{
  max-width:780px;
  margin:0 auto 32px;
  text-align:center;
}
.sl-stay-play-heading h2{
  font-size:clamp(2.25rem,4vw,4rem);
  line-height:1.03;
  margin:.4rem 0 1rem;
}
.sl-stay-play-heading > p:not(.sl-eyebrow){
  font-size:1.05rem;
  line-height:1.65;
}
.sl-stay-play-facts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
}
.sl-stay-play-facts div{
  background:#fff;
  padding:24px;
  text-align:center;
}
.sl-stay-play-facts strong{
  display:block;
  font-family:Georgia,serif;
  color:#243a50;
  font-size:2rem;
  line-height:1;
  margin-bottom:8px;
}
.sl-stay-play-facts span{
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.sl-stay-play-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.sl-stay-play-grid article{
  background:#fff;
  border-top:4px solid #c79a45;
  padding:28px;
  min-height:220px;
  box-shadow:0 10px 28px rgba(24,39,53,.06);
}
.sl-stay-play-grid h3{margin:.35rem 0 .8rem;font-size:1.35rem}
.sl-stay-play-grid p:not(.sl-eyebrow){line-height:1.55}
.sl-stay-play-split{margin:0!important}
.sl-stay-play-amenities-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
}
.sl-stay-play-amenities-grid article{
  background:#fff;
  padding:24px;
  min-height:200px;
}
.sl-stay-play-amenities-grid h3{margin-top:0;font-size:1.2rem}
.sl-stay-play-amenities-grid p{line-height:1.55}
.sl-stay-play-plan{background:#fff}
.sl-stay-play-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.sl-stay-play-steps article{
  background:#f7f3ea;
  border-top:4px solid #c79a45;
  padding:26px;
}
.sl-stay-play-steps span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;height:36px;
  border-radius:50%;
  background:#243a50;color:#fff;
  font-weight:700;
  margin-bottom:14px;
}
.sl-stay-play-steps h3{margin:.2rem 0 .7rem;font-size:1.25rem}
.sl-stay-play-steps p{line-height:1.55}

@media(max-width:900px){
  .sl-stay-play-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-stay-play-grid{grid-template-columns:1fr}
  .sl-stay-play-amenities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-stay-play-steps{grid-template-columns:1fr}
}
@media(max-width:700px){
  .sl-stay-play-intro,
  .sl-stay-play-grid-section,
  .sl-stay-play-amenities,
  .sl-stay-play-plan{padding:44px 14px}
  .sl-stay-play-wrap{width:100%!important;max-width:100%!important}
  .sl-stay-play-heading{text-align:left}
  .sl-stay-play-facts,
  .sl-stay-play-amenities-grid{grid-template-columns:1fr}
  .sl-stay-play-grid article,
  .sl-stay-play-amenities-grid article{min-height:0}
}


/* v1.7.9 Stay hub */
.sl-stay-page{background:#f7f3ea}
.sl-stay-intro,
.sl-stay-options,
.sl-stay-amenities,
.sl-stay-uses{padding:68px 24px}
.sl-stay-wrap{
  width:min(1120px,calc(100% - 32px))!important;
  max-width:1120px!important;
  margin:0 auto!important;
}
.sl-stay-heading{
  max-width:780px;
  margin:0 auto 32px;
  text-align:center;
}
.sl-stay-heading h2{
  font-size:clamp(2.25rem,4vw,4rem);
  line-height:1.03;
  margin:.4rem 0 1rem;
}
.sl-stay-heading>p:not(.sl-eyebrow){font-size:1.05rem;line-height:1.65}
.sl-stay-facts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4;
}
.sl-stay-facts div{background:#fff;padding:24px;text-align:center}
.sl-stay-facts strong{
  display:block;
  font-family:Georgia,serif;
  color:#243a50;
  font-size:2rem;
  line-height:1;
  margin-bottom:8px
}
.sl-stay-facts span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.sl-stay-option-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px
}
.sl-stay-option-grid article{
  background:#fff;
  border-top:4px solid #c79a45;
  padding:28px;
  min-height:225px;
  box-shadow:0 10px 28px rgba(24,39,53,.06)
}
.sl-stay-option-grid h3{font-size:1.35rem;margin:.35rem 0 .8rem}
.sl-stay-option-grid p:not(.sl-eyebrow){line-height:1.55}
.sl-stay-split{margin:0!important}
.sl-stay-amenities-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4
}
.sl-stay-amenities-grid article{background:#fff;padding:24px;min-height:205px}
.sl-stay-amenities-grid h3{margin-top:0;font-size:1.2rem}
.sl-stay-amenities-grid p{line-height:1.55}
.sl-stay-uses{background:#fff}
.sl-stay-use-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px
}
.sl-stay-use-grid article{
  background:#f7f3ea;
  border-top:4px solid #c79a45;
  padding:26px
}
.sl-stay-use-grid span{
  display:inline-flex;
  color:#c79a45;
  font-weight:800;
  letter-spacing:.08em;
  margin-bottom:10px
}
.sl-stay-use-grid h3{margin:.1rem 0 .7rem;font-size:1.25rem}
.sl-stay-use-grid p{line-height:1.55}

@media(max-width:900px){
  .sl-stay-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-stay-option-grid{grid-template-columns:1fr}
  .sl-stay-amenities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-stay-use-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .sl-stay-intro,
  .sl-stay-options,
  .sl-stay-amenities,
  .sl-stay-uses{padding:44px 14px}
  .sl-stay-wrap{width:100%!important;max-width:100%!important}
  .sl-stay-heading{text-align:left}
  .sl-stay-facts,.sl-stay-amenities-grid{grid-template-columns:1fr}
  .sl-stay-option-grid article,.sl-stay-amenities-grid article{min-height:0}
}


/* v1.8.0 Solitude Inn */
.sl-inn-page{background:#f7f3ea}
.sl-inn-intro,
.sl-inn-purpose,
.sl-inn-game-room,
.sl-inn-property,
.sl-inn-plan{padding:68px 24px}
.sl-inn-wrap{
  width:min(1120px,calc(100% - 32px))!important;
  max-width:1120px!important;
  margin:0 auto!important;
}
.sl-inn-heading{
  max-width:800px;
  margin:0 auto 32px;
  text-align:center
}
.sl-inn-heading h2{
  font-size:clamp(2.25rem,4vw,4rem);
  line-height:1.03;
  margin:.4rem 0 1rem
}
.sl-inn-heading>p:not(.sl-eyebrow){font-size:1.05rem;line-height:1.65}
.sl-inn-facts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;background:#d9d2c4
}
.sl-inn-facts div{background:#fff;padding:24px;text-align:center}
.sl-inn-facts strong{
  display:block;font-family:Georgia,serif;
  color:#243a50;font-size:2rem;line-height:1;margin-bottom:8px
}
.sl-inn-facts span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.sl-inn-purpose-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px
}
.sl-inn-purpose-grid article{
  background:#fff;border-top:4px solid #c79a45;
  padding:28px;min-height:230px;
  box-shadow:0 10px 28px rgba(24,39,53,.06)
}
.sl-inn-purpose-grid h3{font-size:1.35rem;margin:.35rem 0 .8rem}
.sl-inn-purpose-grid p:not(.sl-eyebrow){line-height:1.55}
.sl-inn-split{margin:0!important}
.sl-inn-game-room{background:#fff}
.sl-inn-game-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;background:#d9d2c4
}
.sl-inn-game-grid article{background:#f7f3ea;padding:24px;min-height:190px}
.sl-inn-game-grid strong{
  display:block;font-family:Georgia,serif;color:#243a50;
  font-size:1.2rem;margin-bottom:10px
}
.sl-inn-game-grid p{line-height:1.55}
.sl-inn-property-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;background:#d9d2c4
}
.sl-inn-property-grid article{background:#fff;padding:24px;min-height:205px}
.sl-inn-property-grid h3{margin-top:0;font-size:1.2rem}
.sl-inn-property-grid p{line-height:1.55}
.sl-inn-plan{background:#fff}
.sl-inn-plan-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px
}
.sl-inn-plan-grid article{
  background:#f7f3ea;border-top:4px solid #c79a45;padding:26px
}
.sl-inn-plan-grid span{
  display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;border-radius:50%;
  background:#243a50;color:#fff;font-weight:700;margin-bottom:14px
}
.sl-inn-plan-grid h3{margin:.2rem 0 .7rem;font-size:1.25rem}
.sl-inn-plan-grid p{line-height:1.55}

@media(max-width:900px){
  .sl-inn-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-inn-purpose-grid{grid-template-columns:1fr}
  .sl-inn-game-grid,.sl-inn-property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-inn-plan-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .sl-inn-intro,.sl-inn-purpose,.sl-inn-game-room,.sl-inn-property,.sl-inn-plan{padding:44px 14px}
  .sl-inn-wrap{width:100%!important;max-width:100%!important}
  .sl-inn-heading{text-align:left}
  .sl-inn-facts,.sl-inn-game-grid,.sl-inn-property-grid{grid-template-columns:1fr}
  .sl-inn-purpose-grid article,.sl-inn-game-grid article,.sl-inn-property-grid article{min-height:0}
}


/* v1.8.2 consolidated Golf Getaways section */
.sl-stay-golf{
  padding:68px 24px;
  background:#fff;
}
.sl-stay-golf-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.sl-stay-golf-grid article{
  background:#f7f3ea;
  border-top:4px solid #c79a45;
  padding:26px;
}
.sl-stay-golf-grid span{
  display:inline-flex;
  color:#c79a45;
  font-weight:800;
  letter-spacing:.08em;
  margin-bottom:10px;
}
.sl-stay-golf-grid h3{
  margin:.1rem 0 .7rem;
  font-size:1.25rem;
}
.sl-stay-golf-grid p{
  line-height:1.55;
}
.sl-stay-golf-actions{
  justify-content:center;
  margin-top:28px;
}
@media(max-width:900px){
  .sl-stay-golf-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .sl-stay-golf{padding:44px 14px}
  .sl-stay-golf-actions{justify-content:flex-start}
}

/* v1.8.6 About */
.sl-about-page{background:#f7f3ea}
.sl-about-intro,.sl-about-destinations{padding:68px 24px}
.sl-about-wrap{width:min(1120px,calc(100% - 32px))!important;max-width:1120px!important;margin:0 auto!important}
.sl-about-heading{max-width:800px;margin:0 auto 32px;text-align:center}
.sl-about-heading h2{font-size:clamp(2.25rem,4vw,4rem);line-height:1.03;margin:.4rem 0 1rem}
.sl-about-heading>p:not(.sl-eyebrow){font-size:1.05rem;line-height:1.65}
.sl-about-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.sl-about-grid article{background:#fff;border-top:4px solid #c79a45;padding:26px;min-height:235px;box-shadow:0 10px 28px rgba(24,39,53,.06)}
.sl-about-grid h3{font-size:1.25rem;margin:.35rem 0 .8rem}.sl-about-grid p:not(.sl-eyebrow){line-height:1.55}
.sl-about-destination-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#d9d2c4}
.sl-about-destination-grid article{background:#fff;padding:24px;min-height:190px}
.sl-about-destination-grid h3{margin-top:0;font-size:1.2rem}.sl-about-destination-grid p{line-height:1.55}
@media(max-width:900px){.sl-about-grid,.sl-about-destination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.sl-about-intro,.sl-about-destinations{padding:44px 14px}.sl-about-wrap{width:100%!important;max-width:100%!important}.sl-about-heading{text-align:left}.sl-about-grid,.sl-about-destination-grid{grid-template-columns:1fr}.sl-about-grid article,.sl-about-destination-grid article{min-height:0}}


/* v1.8.7 Bunker's Burger & BBQ */
.sl-bunkers-page{background:#f7f3ea}
.sl-bunkers-intro,
.sl-bunkers-options,
.sl-bunkers-links{padding:68px 24px}
.sl-bunkers-wrap{
  width:min(1120px,calc(100% - 32px))!important;
  max-width:1120px!important;
  margin:0 auto!important
}
.sl-bunkers-heading{
  max-width:780px;
  margin:0 auto 32px;
  text-align:center
}
.sl-bunkers-heading h2{
  font-size:clamp(2.25rem,4vw,4rem);
  line-height:1.03;
  margin:.4rem 0 1rem
}
.sl-bunkers-heading>p:not(.sl-eyebrow){font-size:1.05rem;line-height:1.65}
.sl-bunkers-facts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4
}
.sl-bunkers-facts div{background:#fff;padding:24px;text-align:center}
.sl-bunkers-facts strong{
  display:block;
  font-family:Georgia,serif;
  color:#243a50;
  font-size:1.8rem;
  line-height:1;
  margin-bottom:8px
}
.sl-bunkers-facts span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.sl-bunkers-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px
}
.sl-bunkers-grid article{
  background:#fff;
  border-top:4px solid #c79a45;
  padding:28px;
  min-height:220px;
  box-shadow:0 10px 28px rgba(24,39,53,.06)
}
.sl-bunkers-grid h3{font-size:1.35rem;margin:.35rem 0 .8rem}
.sl-bunkers-grid p:not(.sl-eyebrow){line-height:1.55}
.sl-bunkers-split{margin:0!important}
.sl-bunkers-link-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4
}
.sl-bunkers-link-grid article{background:#fff;padding:24px;min-height:205px}
.sl-bunkers-link-grid h3{margin-top:0;font-size:1.2rem}
.sl-bunkers-link-grid p{line-height:1.55}

@media(max-width:900px){
  .sl-bunkers-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-bunkers-grid{grid-template-columns:1fr}
  .sl-bunkers-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .sl-bunkers-intro,.sl-bunkers-options,.sl-bunkers-links{padding:44px 14px}
  .sl-bunkers-wrap{width:100%!important;max-width:100%!important}
  .sl-bunkers-heading{text-align:left}
  .sl-bunkers-facts,.sl-bunkers-link-grid{grid-template-columns:1fr}
  .sl-bunkers-grid article,.sl-bunkers-link-grid article{min-height:0}
}


/* v1.8.8 Bunker's real photography */
.sl-bunkers-gallery{padding:68px 24px;background:#fff}
.sl-bunkers-photo-grid{
  display:grid;
  grid-template-columns:1.35fr .825fr .825fr;
  gap:16px;
  align-items:stretch
}
.sl-bunkers-photo-grid figure{
  margin:0;
  overflow:hidden;
  background:#eee;
  min-height:360px
}
.sl-bunkers-photo-grid img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover
}
.sl-bunkers-photo-wide img{object-position:center}
@media(max-width:900px){
  .sl-bunkers-photo-grid{grid-template-columns:1fr 1fr}
  .sl-bunkers-photo-wide{grid-column:1/-1}
  .sl-bunkers-photo-grid figure{min-height:320px}
}
@media(max-width:700px){
  .sl-bunkers-gallery{padding:44px 14px}
  .sl-bunkers-photo-grid{grid-template-columns:1fr}
  .sl-bunkers-photo-wide{grid-column:auto}
  .sl-bunkers-photo-grid figure{min-height:0;aspect-ratio:4/3}
}


/* v1.8.9 Solitude Inn photography */
.sl-inn-photo-section,.sl-inn-gallery{padding:68px 24px;background:#fff}
.sl-inn-photo-grid{
  display:grid;
  grid-template-columns:1.35fr .825fr .825fr;
  gap:16px
}
.sl-inn-photo-grid figure,.sl-inn-gallery-grid figure{
  margin:0;overflow:hidden;background:#eee
}
.sl-inn-photo-grid figure{min-height:340px}
.sl-inn-photo-grid img,.sl-inn-gallery-grid img{
  width:100%;height:100%;display:block;object-fit:cover
}
.sl-inn-gallery-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-auto-rows:260px;
  gap:16px
}
.sl-inn-gallery-wide{grid-column:span 2;grid-row:span 2}
.sl-inn-photo-actions{justify-content:center;margin-top:28px}
@media(max-width:900px){
  .sl-inn-photo-grid{grid-template-columns:1fr 1fr}
  .sl-inn-photo-feature{grid-column:1/-1}
  .sl-inn-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:240px}
}
@media(max-width:700px){
  .sl-inn-photo-section,.sl-inn-gallery{padding:44px 14px}
  .sl-inn-photo-grid,.sl-inn-gallery-grid{grid-template-columns:1fr;grid-auto-rows:auto}
  .sl-inn-photo-feature,.sl-inn-gallery-wide{grid-column:auto;grid-row:auto}
  .sl-inn-photo-grid figure,.sl-inn-gallery-grid figure{min-height:0;aspect-ratio:4/3}
  .sl-inn-photo-actions{justify-content:flex-start}
}

/* v1.9.0 Indoor Golf Simulator */
.sl-sim-page{background:#f7f3ea}.sl-sim-intro,.sl-sim-options,.sl-sim-how{padding:68px 24px}
.sl-sim-wrap{width:min(1120px,calc(100% - 32px))!important;max-width:1120px!important;margin:0 auto!important}
.sl-sim-heading{max-width:780px;margin:0 auto 32px;text-align:center}.sl-sim-heading h2{font-size:clamp(2.25rem,4vw,4rem);line-height:1.03;margin:.4rem 0 1rem}.sl-sim-heading>p:not(.sl-eyebrow){font-size:1.05rem;line-height:1.65}
.sl-sim-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#d9d2c4}.sl-sim-facts div{background:#fff;padding:24px;text-align:center}.sl-sim-facts strong{display:block;font-family:Georgia,serif;color:#243a50;font-size:1.65rem;line-height:1;margin-bottom:8px}.sl-sim-facts span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.sl-sim-grid,.sl-sim-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.sl-sim-grid article,.sl-sim-steps article{background:#fff;border-top:4px solid #c79a45;padding:26px;min-height:215px;box-shadow:0 10px 28px rgba(24,39,53,.06)}.sl-sim-grid h3,.sl-sim-steps h3{font-size:1.25rem;margin:.35rem 0 .8rem}.sl-sim-grid p:not(.sl-eyebrow),.sl-sim-steps p{line-height:1.55}
.sl-sim-how{background:#fff}.sl-sim-steps article{background:#f7f3ea}.sl-sim-steps span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#243a50;color:#fff;font-weight:700;margin-bottom:12px}
@media(max-width:900px){.sl-sim-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.sl-sim-grid,.sl-sim-steps{grid-template-columns:1fr}}
@media(max-width:700px){.sl-sim-intro,.sl-sim-options,.sl-sim-how{padding:44px 14px}.sl-sim-wrap{width:100%!important;max-width:100%!important}.sl-sim-heading{text-align:left}.sl-sim-facts{grid-template-columns:1fr}.sl-sim-grid article,.sl-sim-steps article{min-height:0}}


/* v1.9.1 Home simulator feature */
.sl-home-simulator{
  background:#243a50;
  color:#fff;
  padding:48px 24px;
}
.sl-home-simulator-inner{
  width:min(1180px,calc(100% - 32px))!important;
  max-width:1180px!important;
  margin:0 auto!important;
  display:grid;
  grid-template-columns:1.35fr .65fr;
  gap:42px;
  align-items:center;
}
.sl-home-simulator-copy h2{
  color:#fff;
  font-size:clamp(2.2rem,4vw,3.8rem);
  line-height:1.03;
  margin:.35rem 0 1rem;
}
.sl-home-simulator-copy>p:not(.sl-eyebrow){
  max-width:760px;
  line-height:1.65;
  font-size:1.05rem;
}
.sl-home-simulator-side{
  display:grid;
  grid-template-columns:1fr;
  gap:1px;
  background:rgba(255,255,255,.14);
}
.sl-home-simulator-side div{
  background:rgba(255,255,255,.06);
  padding:18px 20px;
}
.sl-home-simulator-side strong{
  display:block;
  font-family:Georgia,serif;
  color:#fff;
  font-size:1.35rem;
  margin-bottom:4px;
}
.sl-home-simulator-side span{
  color:rgba(255,255,255,.78);
  font-size:.85rem;
}
@media(max-width:900px){
  .sl-home-simulator-inner{grid-template-columns:1fr}
}
@media(max-width:700px){
  .sl-home-simulator{padding:40px 14px}
  .sl-home-simulator-inner{
    width:100%!important;
    max-width:100%!important;
    gap:24px;
  }
}

/* v1.9.2 Wedding tour scheduler */
.sl-tour-page{background:#f7f3ea}
.sl-tour-booking{padding:68px 24px}
.sl-tour-wrap{width:min(1120px,calc(100% - 32px))!important;max-width:1120px!important;margin:0 auto!important}
.sl-tour-heading{max-width:760px;margin:0 auto 30px;text-align:center}
.sl-tour-heading h2{font-size:clamp(2.25rem,4vw,4rem);line-height:1.03;margin:.4rem 0 1rem}
.sl-tour-heading>p:not(.sl-eyebrow){font-size:1.05rem;line-height:1.65}
.sl-tour-embed{background:#fff;border:1px solid #ded8cc;padding:22px;min-height:650px;box-shadow:0 12px 34px rgba(24,39,53,.08)}
@media(max-width:700px){.sl-tour-booking{padding:44px 10px}.sl-tour-wrap{width:100%!important;max-width:100%!important}.sl-tour-heading{text-align:left;padding:0 6px}.sl-tour-embed{padding:8px;min-height:700px}}

/* v1.9.4 Schedule Tour visual refinement */
.sl-tour-booking{padding:58px 24px 64px}
.sl-tour-wrap{max-width:920px!important}
.sl-tour-heading{margin-bottom:24px}
.sl-tour-heading h2{margin-bottom:.65rem}
.sl-tour-embed{
  width:min(100%,760px);
  margin:0 auto;
  min-height:0;
  padding:18px;
  background:#fff;
  border:1px solid #ddd5c7;
  box-shadow:0 10px 28px rgba(24,39,53,.07);
  overflow:hidden;
}
.sl-tour-embed iframe{
  display:block;
  width:100%!important;
  max-width:100%!important;
  margin:0 auto!important;
  border:0!important;
}
@media(min-width:900px){
  .sl-tour-embed{padding:20px 28px}
}
@media(max-width:700px){
  .sl-tour-booking{padding:38px 10px 46px}
  .sl-tour-embed{width:100%;padding:6px;border-left:0;border-right:0;box-shadow:none}
}


/* v1.9.5 Wedding Packages */
.sl-wpkg-page{background:#f7f3ea}
.sl-wpkg-intro,.sl-wpkg-included,.sl-wpkg-flow{padding:68px 24px}
.sl-wpkg-wrap{
  width:min(1120px,calc(100% - 32px))!important;
  max-width:1120px!important;
  margin:0 auto!important
}
.sl-wpkg-heading{
  max-width:820px;
  margin:0 auto 32px;
  text-align:center
}
.sl-wpkg-heading h2{
  font-size:clamp(2.25rem,4vw,4rem);
  line-height:1.03;
  margin:.4rem 0 1rem
}
.sl-wpkg-heading>p:not(.sl-eyebrow){font-size:1.05rem;line-height:1.65}
.sl-wpkg-room-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px
}
.sl-wpkg-room-grid article{
  background:#fff;
  border-top:4px solid #c79a45;
  padding:26px;
  min-height:265px;
  box-shadow:0 10px 28px rgba(24,39,53,.06)
}
.sl-wpkg-room-grid h3{font-size:1.3rem;margin:.35rem 0 .45rem}
.sl-wpkg-room-grid strong{display:block;color:#243a50;margin-bottom:12px}
.sl-wpkg-room-grid p:not(.sl-eyebrow){line-height:1.55}
.sl-wpkg-split{margin:0!important}
.sl-wpkg-included-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d9d2c4
}
.sl-wpkg-included-grid article{background:#fff;padding:24px;min-height:205px}
.sl-wpkg-included-grid h3{margin-top:0;font-size:1.2rem}
.sl-wpkg-included-grid p{line-height:1.55}
.sl-wpkg-flow{background:#fff}
.sl-wpkg-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px
}
.sl-wpkg-steps article{
  background:#f7f3ea;
  border-top:4px solid #c79a45;
  padding:26px
}
.sl-wpkg-steps span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;height:36px;
  border-radius:50%;
  background:#243a50;color:#fff;font-weight:700;
  margin-bottom:12px
}
.sl-wpkg-steps h3{font-size:1.25rem;margin:.2rem 0 .7rem}
.sl-wpkg-steps p{line-height:1.55}
@media(max-width:900px){
  .sl-wpkg-room-grid,.sl-wpkg-included-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-wpkg-steps{grid-template-columns:1fr}
}
@media(max-width:700px){
  .sl-wpkg-intro,.sl-wpkg-included,.sl-wpkg-flow{padding:44px 14px}
  .sl-wpkg-wrap{width:100%!important;max-width:100%!important}
  .sl-wpkg-heading{text-align:left}
  .sl-wpkg-room-grid,.sl-wpkg-included-grid{grid-template-columns:1fr}
  .sl-wpkg-room-grid article,.sl-wpkg-included-grid article{min-height:0}
}



/* v1.9.8 Wedding Gallery + supplied Solitude photography */
.sl-wedding-gallery-page{background:#f7f3ea}
.sl-wg-intro,.sl-wg-gallery{padding:68px 24px}
.sl-wg-wrap{width:min(1180px,calc(100% - 32px))!important;max-width:1180px!important;margin:0 auto!important}
.sl-wg-heading{max-width:820px;margin:0 auto;text-align:center}
.sl-wg-heading h2{font-size:clamp(2.25rem,4vw,4rem);line-height:1.03;margin:.4rem 0 1rem}
.sl-wg-heading>p:not(.sl-eyebrow){font-size:1.05rem;line-height:1.65}
.sl-wg-gallery{padding-top:10px;background:#fff}
.sl-wg-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-rows:330px;
  gap:14px
}
.sl-wg-grid figure{
  margin:0;
  position:relative;
  overflow:hidden;
  background:#e8e3da
}
.sl-wg-feature{grid-column:span 2;grid-row:span 2}
.sl-wg-grid img{width:100%;height:100%;display:block;object-fit:cover}
.sl-wg-grid figcaption{
  position:absolute;
  left:0;right:0;bottom:0;
  padding:54px 18px 16px;
  background:linear-gradient(transparent,rgba(15,27,38,.86));
  color:#fff
}
.sl-wg-grid figcaption strong,.sl-wg-grid figcaption span{display:block}
.sl-wg-grid figcaption strong{font-family:Georgia,serif;font-size:1.15rem}
.sl-wg-grid figcaption span{font-size:.82rem;margin-top:3px;color:rgba(255,255,255,.82)}


@media(max-width:900px){
  .sl-wg-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:280px}
}
@media(max-width:700px){
  .sl-wg-intro,.sl-wg-gallery{padding:44px 14px}
  .sl-wg-wrap{width:100%!important;max-width:100%!important}
  .sl-wg-heading{text-align:left}
  .sl-wg-grid{grid-template-columns:1fr;grid-auto-rows:auto}
  .sl-wg-feature{grid-column:auto;grid-row:auto}
  .sl-wg-grid figure{aspect-ratio:4/3}
}


/* v2.0.4 Wedding Gallery video collection */
.sl-wg-videos{padding:72px 0;background:#f6f1e7}
.sl-wg-videos .sl-wg-heading{text-align:center;max-width:760px;margin:0 auto 32px}
.sl-wg-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.sl-wg-video{background:#162d43;min-width:0}
.sl-wg-video iframe{display:block;width:100%;aspect-ratio:16/9;border:0}
.sl-wg-video-feature{grid-column:1/-1}
.sl-wg-video-link{display:flex;min-height:220px}
.sl-wg-video-link a{display:flex;flex-direction:column;justify-content:center;width:100%;padding:36px;color:#fff;text-decoration:none}
.sl-wg-video-link strong{font-family:Georgia,serif;font-size:28px;line-height:1.1;margin-bottom:12px}
.sl-wg-video-link span{font-weight:700;letter-spacing:.06em;font-size:13px;color:#d3a646}
@media(max-width:760px){
  .sl-wg-videos{padding:48px 0}
  .sl-wg-video-grid{grid-template-columns:1fr}
  .sl-wg-video-feature{grid-column:auto}
}


/* v2.0.7 Wedding Gallery cleanup + MediaZilla */
.sl-wg-video-mediazilla{background:#162d43}
.sl-wg-video-mediazilla iframe{display:block;width:100%;aspect-ratio:16/9;border:0;background:#000}
.sl-wg-video-fallback{margin:0;padding:12px 16px;background:#162d43;color:#fff;font-size:.86rem}
.sl-wg-video-fallback a{color:#d3a646;font-weight:700}
.sl-wedding-gallery-page + footer{margin-top:0}
.sl-wg-gallery-more{margin-top:0}

/* v2.0.8 exact MediaZilla embed */
.sl-wg-video-mediazilla .youtube{position:relative;width:100%;aspect-ratio:860/510;overflow:hidden;background:#000}
.sl-wg-video-mediazilla .youtube .video{position:absolute;inset:0;width:100%;height:100%;border:0}


/* v2.0.13 Unified Wedding Gallery */
.sl-wg-gallery-unified{
  padding-top:54px;
  padding-bottom:72px;
  background:#fff;
}
.sl-wg-gallery-unified .sl-wg-heading{
  max-width:820px;
  margin:0 auto 34px;
  text-align:center;
}
@media(max-width:700px){
  .sl-wg-gallery-unified{padding:42px 14px 50px}
  .sl-wg-gallery-unified .sl-wg-heading{text-align:left}
}

/* Text-only reception cards on main Weddings page */
.sl-room-text-grid > a{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:190px;
  padding:28px;
  background:#fff;
  border-top:4px solid #c79a45;
}
.sl-room-text-grid > a small{margin-bottom:8px}
.sl-room-text-grid > a strong{font-size:1.35rem;margin-bottom:12px}


/* v2.0.14 Wedding Hall framework / Grande Hall */
.sl-hall-page{background:#f7f3ea}
.sl-hall-intro,.sl-hall-feature,.sl-hall-plan,.sl-hall-links{padding:68px 24px}
.sl-hall-wrap{width:min(1120px,calc(100% - 32px))!important;max-width:1120px!important;margin:0 auto!important}
.sl-hall-heading{max-width:800px;margin:0 auto 32px;text-align:center}
.sl-hall-heading h2{font-size:clamp(2.25rem,4vw,4rem);line-height:1.03;margin:.4rem 0 1rem}
.sl-hall-heading>p:not(.sl-eyebrow){font-size:1.05rem;line-height:1.65}
.sl-hall-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#d9d2c4}
.sl-hall-facts div{background:#fff;padding:24px;text-align:center}
.sl-hall-facts strong{display:block;font-family:Georgia,serif;color:#243a50;font-size:1.75rem;line-height:1;margin-bottom:8px}
.sl-hall-facts span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.sl-hall-feature-grid,.sl-hall-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sl-hall-feature-grid article,.sl-hall-plan-grid article{background:#fff;border-top:4px solid #c79a45;padding:27px;min-height:220px;box-shadow:0 10px 28px rgba(24,39,53,.06)}
.sl-hall-feature-grid h3,.sl-hall-plan-grid h3{font-size:1.3rem;margin:.35rem 0 .8rem}
.sl-hall-feature-grid p:not(.sl-eyebrow),.sl-hall-plan-grid p{line-height:1.55}
.sl-hall-plan{background:#fff}.sl-hall-plan-grid article{background:#f7f3ea}
.sl-hall-plan-grid span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#243a50;color:#fff;font-weight:700;margin-bottom:12px}
.sl-hall-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#d9d2c4}
.sl-hall-link-grid a{display:flex;flex-direction:column;background:#fff;padding:28px;text-decoration:none;color:inherit}
.sl-hall-link-grid strong{font-family:Georgia,serif;color:#243a50;font-size:1.35rem;margin-bottom:6px}
.sl-hall-link-grid span{font-size:.9rem}
@media(max-width:900px){.sl-hall-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.sl-hall-feature-grid,.sl-hall-plan-grid{grid-template-columns:1fr}.sl-hall-link-grid{grid-template-columns:1fr}}
@media(max-width:700px){.sl-hall-intro,.sl-hall-feature,.sl-hall-plan,.sl-hall-links{padding:44px 14px}.sl-hall-wrap{width:100%!important;max-width:100%!important}.sl-hall-heading{text-align:left}.sl-hall-facts{grid-template-columns:1fr}.sl-hall-feature-grid article,.sl-hall-plan-grid article{min-height:0}}


/* v2.0.15 Grande Hall Matterport virtual tour */
.sl-hall-virtual-tour{padding:72px 24px;background:#fff}
.sl-matterport{position:relative;width:100%;max-width:1120px;margin:0 auto;aspect-ratio:16/9;overflow:hidden;background:#111;box-shadow:0 16px 38px rgba(24,39,53,.12)}
.sl-matterport iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.sl-hall-tour-action{text-align:center;margin-top:26px}
@media(max-width:700px){
  .sl-hall-virtual-tour{padding:46px 14px}
  .sl-matterport{aspect-ratio:4/3}
  .sl-hall-tour-action .sl-blue-button{width:100%;text-align:center}
}


/* v2.0.21 Outdoor Ceremony */
.sl-ceremony-page{background:#f7f3ea}
.sl-ceremony-intro,.sl-ceremony-photo-feature,.sl-ceremony-flow,.sl-ceremony-rooms{padding:68px 24px}
.sl-ceremony-wrap{width:min(1120px,calc(100% - 32px))!important;max-width:1120px!important;margin:0 auto!important}
.sl-ceremony-heading{max-width:820px;margin:0 auto 32px;text-align:center}
.sl-ceremony-heading h2{font-size:clamp(2.25rem,4vw,4rem);line-height:1.03;margin:.4rem 0 1rem}
.sl-ceremony-heading>p:not(.sl-eyebrow){font-size:1.05rem;line-height:1.65}
.sl-ceremony-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#d9d2c4}
.sl-ceremony-facts div{background:#fff;padding:24px;text-align:center}
.sl-ceremony-facts strong{display:block;font-family:Georgia,serif;color:#243a50;font-size:1.55rem;line-height:1;margin-bottom:8px}
.sl-ceremony-facts span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.sl-ceremony-photo-feature{background:#fff;padding-top:10px}
.sl-ceremony-photo-grid{display:grid;grid-template-columns:1.3fr .85fr .85fr;gap:14px;align-items:stretch}
.sl-ceremony-photo-grid figure{margin:0;overflow:hidden;background:#e8e3da;min-height:360px}
.sl-ceremony-photo-grid img{display:block;width:100%;height:100%;object-fit:cover}
.sl-ceremony-flow{background:#fff}
.sl-ceremony-flow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sl-ceremony-flow-grid article{background:#f7f3ea;border-top:4px solid #c79a45;padding:26px}
.sl-ceremony-flow-grid span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#243a50;color:#fff;font-weight:700;margin-bottom:12px}
.sl-ceremony-flow-grid h3{font-size:1.25rem;margin:.2rem 0 .7rem}
.sl-ceremony-flow-grid p{line-height:1.55}
.sl-ceremony-room-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.sl-ceremony-room-grid>a{min-height:180px}
@media(max-width:900px){
  .sl-ceremony-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-ceremony-photo-grid{grid-template-columns:1fr 1fr}
  .sl-ceremony-feature{grid-column:1/-1}
  .sl-ceremony-flow-grid{grid-template-columns:1fr}
  .sl-ceremony-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .sl-ceremony-intro,.sl-ceremony-photo-feature,.sl-ceremony-flow,.sl-ceremony-rooms{padding:44px 14px}
  .sl-ceremony-wrap{width:100%!important;max-width:100%!important}
  .sl-ceremony-heading{text-align:left}
  .sl-ceremony-facts,.sl-ceremony-photo-grid,.sl-ceremony-room-grid{grid-template-columns:1fr}
  .sl-ceremony-feature{grid-column:auto}
  .sl-ceremony-photo-grid figure{min-height:0;aspect-ratio:4/3}
}


/* v2.0.22 Header dropdown navigation */
.sl-site-header{position:relative;z-index:1000;background:#fff}
.sl-header-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px}
.sl-main-nav{justify-self:center}
.sl-nav-list{display:flex;align-items:center;gap:20px;list-style:none;margin:0;padding:0}
.sl-nav-item{position:relative}
.sl-nav-item>a{display:block;text-decoration:none;color:#1f2d3a;font-weight:700;font-size:.9rem;padding:25px 0}
.sl-has-submenu{display:flex;align-items:center}
.sl-submenu-toggle{display:none}
.sl-submenu{
  position:absolute;
  top:100%;
  left:50%;
  transform:translateX(-50%) translateY(8px);
  min-width:230px;
  list-style:none;
  margin:0;
  padding:10px 0;
  background:#fff;
  border-top:3px solid #c79a45;
  box-shadow:0 16px 38px rgba(18,36,52,.18);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:.18s ease;
  z-index:2000
}
.sl-submenu li{margin:0}
.sl-submenu a{display:block;padding:10px 18px;color:#21384e;text-decoration:none;font-size:.88rem;white-space:nowrap}
.sl-submenu a:hover,.sl-submenu a:focus{background:#f5f0e7;color:#000}
.sl-has-submenu:hover>.sl-submenu,
.sl-has-submenu:focus-within>.sl-submenu,
.sl-has-submenu.is-open>.sl-submenu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateX(-50%) translateY(0)
}
.sl-header-actions{display:flex;gap:8px;align-items:center}
.sl-header-actions a{white-space:nowrap}
.sl-mobile-toggle{display:none;border:0;background:transparent;padding:10px;cursor:pointer}
.sl-mobile-toggle span{display:block;width:24px;height:2px;background:#20364b;margin:5px 0}
@media(max-width:1180px){
  .sl-header-inner{gap:18px}
  .sl-nav-list{gap:14px}
  .sl-nav-item>a{font-size:.84rem}
}
@media(max-width:980px){
  .sl-header-inner{grid-template-columns:1fr auto}
  .sl-mobile-toggle{display:block;justify-self:end}
  .sl-main-nav{
    position:absolute;
    top:100%;
    left:0;
    right:0;
    background:#fff;
    box-shadow:0 16px 38px rgba(18,36,52,.18);
    display:none;
    max-height:calc(100vh - 100px);
    overflow:auto;
  }
  .sl-main-nav.is-open{display:block}
  .sl-nav-list{display:block;padding:8px 18px 18px}
  .sl-nav-item{display:block;border-bottom:1px solid #e7e1d7}
  .sl-nav-item>a{padding:14px 42px 14px 0}
  .sl-has-submenu{display:block}
  .sl-submenu-toggle{
    display:block;
    position:absolute;
    top:7px;
    right:0;
    width:36px;
    height:36px;
    border:0;
    background:transparent;
    font-size:1.3rem;
    color:#20364b;
    cursor:pointer
  }
  .sl-submenu{
    position:static;
    transform:none!important;
    min-width:0;
    box-shadow:none;
    border-top:0;
    border-left:3px solid #c79a45;
    margin:0 0 10px;
    padding:4px 0 4px 12px;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    display:none
  }
  .sl-has-submenu.is-open>.sl-submenu{display:block}
  .sl-submenu a{padding:9px 12px;white-space:normal}
  .sl-header-actions{display:none}
  .sl-nav-open{overflow:hidden}
}

/* v2.0.23 Outdoor Ceremony supplied photography */
.sl-ceremony-photo-grid-five{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.sl-ceremony-photo-grid-five .sl-ceremony-feature{
  grid-column:1 / -1;
}
.sl-ceremony-photo-grid-five figure{
  overflow:hidden;
}
.sl-ceremony-photo-grid-five img{
  width:100%;
  height:100%;
  min-height:320px;
  object-fit:cover;
  display:block;
}
.sl-ceremony-photo-grid-five .sl-ceremony-feature img{
  min-height:520px;
}
@media(max-width:760px){
  .sl-ceremony-photo-grid-five{grid-template-columns:1fr}
  .sl-ceremony-photo-grid-five .sl-ceremony-feature{grid-column:auto}
  .sl-ceremony-photo-grid-five img,
  .sl-ceremony-photo-grid-five .sl-ceremony-feature img{min-height:280px}
}


/* v2.0.24 Schedule a Tour */
.sl-tour-page{background:#f7f3ea}
.sl-tour-intro,.sl-tour-booking,.sl-tour-prepare{padding:68px 24px}
.sl-tour-wrap{width:min(1120px,calc(100% - 32px))!important;max-width:1120px!important;margin:0 auto!important}
.sl-tour-heading{max-width:820px;margin:0 auto 32px;text-align:center}
.sl-tour-heading h2{font-size:clamp(2.25rem,4vw,4rem);line-height:1.03;margin:.4rem 0 1rem}
.sl-tour-heading>p:not(.sl-eyebrow){font-size:1.05rem;line-height:1.65}
.sl-tour-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#d9d2c4}
.sl-tour-facts div{background:#fff;padding:24px;text-align:center}
.sl-tour-facts strong{display:block;font-family:Georgia,serif;color:#243a50;font-size:1.55rem;line-height:1;margin-bottom:8px}
.sl-tour-facts span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.sl-tour-booking{background:#fff}
.sl-tour-booking-shell{max-width:860px;margin:0 auto;background:#fff;border:1px solid #ddd5c8;padding:18px;box-shadow:0 14px 34px rgba(24,39,53,.08);min-height:520px}
.sl-tour-booking-shell iframe{width:100%!important;max-width:100%;border:0}
.sl-tour-prepare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sl-tour-prepare-grid article{background:#fff;border-top:4px solid #c79a45;padding:26px}
.sl-tour-prepare-grid span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#243a50;color:#fff;font-weight:700;margin-bottom:12px}
.sl-tour-prepare-grid h3{font-size:1.25rem;margin:.2rem 0 .7rem}
.sl-tour-prepare-grid p{line-height:1.55}
@media(max-width:900px){
  .sl-tour-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-tour-prepare-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .sl-tour-intro,.sl-tour-booking,.sl-tour-prepare{padding:44px 14px}
  .sl-tour-wrap{width:100%!important;max-width:100%!important}
  .sl-tour-heading{text-align:left}
  .sl-tour-facts{grid-template-columns:1fr}
  .sl-tour-booking-shell{padding:10px;min-height:460px}
}


/* v2.0.25 Wedding Packages */
.sl-packages-page{background:#f7f3ea}
.sl-packages-intro,.sl-packages-spaces,.sl-packages-details{padding:72px 24px}
.sl-packages-wrap{width:min(1160px,calc(100% - 32px))!important;max-width:1160px!important;margin:0 auto!important}
.sl-packages-intro{text-align:center}
.sl-packages-intro h2,.sl-package-heading h2{font-size:clamp(2.35rem,4vw,4rem);line-height:1.02;margin:.45rem 0 1rem}
.sl-packages-intro .sl-section-intro{max-width:820px;margin:0 auto 34px;line-height:1.65}
.sl-package-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#d9d2c4}
.sl-package-feature-grid article{background:#fff;padding:25px 18px}
.sl-package-feature-grid strong{display:block;font-family:Georgia,serif;font-size:1.18rem;color:#243a50;margin-bottom:7px}
.sl-package-feature-grid span{font-size:.9rem}
.sl-packages-spaces{background:#fff}
.sl-package-heading{text-align:center;max-width:820px;margin:0 auto 34px}
.sl-package-heading>p:not(.sl-eyebrow){line-height:1.65}
.sl-package-room-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.sl-package-room-grid>a{background:#f7f3ea;text-decoration:none;color:inherit;box-shadow:0 10px 25px rgba(24,39,53,.07);transition:transform .2s ease,box-shadow .2s ease}
.sl-package-room-grid>a:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(24,39,53,.13)}
.sl-package-room-image{height:210px;background-size:cover;background-position:center}
.sl-package-room-grid>a>div:last-child{padding:20px}
.sl-package-room-grid small{color:#b8862e;font-weight:800;letter-spacing:.08em}
.sl-package-room-grid h3{font-size:1.45rem;margin:.45rem 0 .75rem}
.sl-package-room-grid span{font-size:.83rem;font-weight:800;color:#243a50}
.sl-package-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sl-package-detail-grid article{background:#fff;border-top:4px solid #c79a45;padding:28px}
.sl-package-detail-grid span{font-size:.8rem;font-weight:800;letter-spacing:.1em;color:#b8862e}
.sl-package-detail-grid h3{font-size:1.35rem;margin:.6rem 0}
.sl-package-detail-grid p{line-height:1.6}
.sl-packages-photo-band{display:grid;grid-template-columns:repeat(3,1fr);height:360px}
.sl-packages-photo-band>div{background-size:cover;background-position:center}
@media(max-width:950px){
 .sl-package-feature-grid,.sl-package-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sl-package-detail-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
 .sl-packages-intro,.sl-packages-spaces,.sl-packages-details{padding:46px 14px}
 .sl-packages-wrap{width:100%!important;max-width:100%!important}
 .sl-package-feature-grid,.sl-package-room-grid{grid-template-columns:1fr}
 .sl-package-room-image{height:240px}
 .sl-packages-photo-band{grid-template-columns:1fr;height:auto}
 .sl-packages-photo-band>div{height:260px}
}


/* v2.0.26 Wedding Packages reception cards: text only */
.sl-package-room-grid>a{
  min-height:145px;
  display:flex;
  align-items:stretch;
}
.sl-package-room-grid>a>div:last-child{
  width:100%;
  padding:24px 20px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.sl-package-room-grid h3{margin:.45rem 0 .75rem}
@media(max-width:650px){
  .sl-package-room-grid>a{min-height:130px}
}


/* v2.0.27 Wedding Gallery */
.sl-wedding-gallery-page{background:#f7f3ea}
.sl-gallery-intro{padding:68px 24px 34px;text-align:center}
.sl-gallery-wrap{width:min(1160px,calc(100% - 32px))!important;max-width:1160px!important;margin-left:auto!important;margin-right:auto!important}
.sl-gallery-intro h2{font-size:clamp(2.35rem,4vw,4rem);line-height:1.03;margin:.45rem 0 1rem}
.sl-gallery-intro>div>p:last-child{max-width:800px;margin:0 auto;line-height:1.65}
.sl-real-wedding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-bottom:72px}
.sl-real-wedding-grid figure{margin:0;overflow:hidden;background:#e8e2d7;height:430px}
.sl-real-wedding-grid .sl-gallery-wide{grid-column:1/-1;height:520px}
.sl-real-wedding-grid img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.sl-real-wedding-grid figure:hover img{transform:scale(1.015)}
.sl-gallery-content{background:#fff}
.sl-gallery-content>.sl-wrap{padding-top:0;padding-bottom:0}
@media(max-width:700px){
 .sl-gallery-intro{padding:46px 14px 26px;text-align:left}
 .sl-gallery-wrap{width:100%!important;max-width:100%!important}
 .sl-real-wedding-grid{grid-template-columns:1fr;padding:0 14px 46px!important}
 .sl-real-wedding-grid .sl-gallery-wide{grid-column:auto;height:300px}
 .sl-real-wedding-grid figure{height:300px}
}


/* v2.0.28 Wedding Catering */
.sl-wedding-catering-page{background:#f7f3ea}
.sl-catering-intro,.sl-catering-process{padding:72px 24px}
.sl-catering-wrap{width:min(1120px,calc(100% - 32px))!important;max-width:1120px!important;margin:0 auto!important}
.sl-catering-intro{text-align:center}
.sl-catering-intro h2,.sl-catering-heading h2,.sl-catering-note h2{font-size:clamp(2.25rem,4vw,3.8rem);line-height:1.04;margin:.45rem 0 1rem}
.sl-catering-intro .sl-section-intro{max-width:820px;margin:0 auto 34px;line-height:1.65}
.sl-catering-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#d9d2c4}
.sl-catering-feature-grid article{background:#fff;padding:25px 18px}
.sl-catering-feature-grid strong{display:block;font-family:Georgia,serif;color:#243a50;font-size:1.18rem;margin-bottom:7px}
.sl-catering-feature-grid span{font-size:.9rem;line-height:1.45}
.sl-catering-process{background:#fff}
.sl-catering-heading{text-align:center;max-width:800px;margin:0 auto 34px}
.sl-catering-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sl-catering-process-grid article{background:#f7f3ea;border-top:4px solid #c79a45;padding:28px}
.sl-catering-process-grid span{font-size:.8rem;font-weight:800;letter-spacing:.1em;color:#b8862e}
.sl-catering-process-grid h3{font-size:1.35rem;margin:.6rem 0}
.sl-catering-process-grid p{line-height:1.6}
.sl-catering-note{background:#243a50;color:#fff;padding:64px 24px;text-align:center}
.sl-catering-note>div>div{max-width:800px;margin:0 auto}
.sl-catering-note h2{color:#fff}
.sl-catering-note p:last-child{line-height:1.65}
@media(max-width:900px){
 .sl-catering-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sl-catering-process-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
 .sl-catering-intro,.sl-catering-process,.sl-catering-note{padding:46px 14px}
 .sl-catering-wrap{width:100%!important;max-width:100%!important}
 .sl-catering-intro{text-align:left}
 .sl-catering-feature-grid{grid-template-columns:1fr}
}


/* v2.0.29 Wedding Reviews */
.sl-reviews-page{background:#f7f3ea}
.sl-reviews-intro,.sl-reviews-grid-section,.sl-reviews-links{padding:72px 24px}
.sl-reviews-wrap{width:min(1120px,calc(100% - 32px))!important;max-width:1120px!important;margin:0 auto!important}
.sl-reviews-intro{text-align:center}
.sl-reviews-intro h2,.sl-reviews-heading h2{font-size:clamp(2.3rem,4vw,3.9rem);line-height:1.03;margin:.45rem 0 1rem}
.sl-reviews-intro p:last-child{max-width:820px;margin:0 auto;line-height:1.65}
.sl-reviews-grid-section{background:#fff}
.sl-reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sl-reviews-grid article{background:#f7f3ea;border-top:4px solid #c79a45;padding:27px}
.sl-review-stars{letter-spacing:.18em;color:#b8862e;font-size:.9rem;margin-bottom:12px}
.sl-reviews-grid h3{font-size:1.25rem;margin:.3rem 0 .7rem}
.sl-reviews-grid p{line-height:1.6}
.sl-reviews-heading{text-align:center;max-width:800px;margin:0 auto 34px}
.sl-reviews-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#d9d2c4}
.sl-reviews-link-grid a{display:flex;flex-direction:column;background:#fff;padding:28px;text-decoration:none;color:inherit}
.sl-reviews-link-grid strong{font-family:Georgia,serif;color:#243a50;font-size:1.3rem;margin-bottom:7px}
.sl-reviews-link-grid span{font-size:.9rem}
@media(max-width:900px){
  .sl-reviews-grid,.sl-reviews-link-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
  .sl-reviews-intro,.sl-reviews-grid-section,.sl-reviews-links{padding:46px 14px}
  .sl-reviews-wrap{width:100%!important;max-width:100%!important}
  .sl-reviews-intro{text-align:left}
}


/* v2.0.30 Wedding Accommodations */
.sl-wedding-stay-page{background:#f7f3ea}
.sl-wedding-stay-intro,.sl-wedding-stay-benefits,.sl-wedding-stay-links{padding:72px 24px}
.sl-wedding-stay-wrap{width:min(1120px,calc(100% - 32px))!important;max-width:1120px!important;margin:0 auto!important}
.sl-wedding-stay-intro{text-align:center}
.sl-wedding-stay-intro h2,.sl-wedding-stay-heading h2{font-size:clamp(2.3rem,4vw,3.9rem);line-height:1.03;margin:.45rem 0 1rem}
.sl-wedding-stay-intro>div>p:last-of-type{max-width:820px;margin:0 auto 34px;line-height:1.65}
.sl-wedding-stay-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#d9d2c4}
.sl-wedding-stay-facts article{background:#fff;padding:26px 18px}
.sl-wedding-stay-facts strong{display:block;font-family:Georgia,serif;color:#243a50;font-size:1.35rem;margin-bottom:7px}
.sl-wedding-stay-facts span{font-size:.9rem}
.sl-wedding-stay-benefits{background:#fff}
.sl-wedding-stay-heading{text-align:center;max-width:820px;margin:0 auto 34px}
.sl-wedding-stay-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sl-wedding-stay-grid article{background:#f7f3ea;border-top:4px solid #c79a45;padding:28px}
.sl-wedding-stay-grid span{font-size:.8rem;font-weight:800;letter-spacing:.1em;color:#b8862e}
.sl-wedding-stay-grid h3{font-size:1.35rem;margin:.6rem 0}
.sl-wedding-stay-grid p{line-height:1.6}
.sl-wedding-stay-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#d9d2c4}
.sl-wedding-stay-link-grid a{display:flex;flex-direction:column;background:#fff;padding:28px;text-decoration:none;color:inherit}
.sl-wedding-stay-link-grid strong{font-family:Georgia,serif;color:#243a50;font-size:1.3rem;margin-bottom:7px}
.sl-wedding-stay-link-grid span{font-size:.9rem;line-height:1.45}
@media(max-width:900px){
 .sl-wedding-stay-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sl-wedding-stay-grid,.sl-wedding-stay-link-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
 .sl-wedding-stay-intro,.sl-wedding-stay-benefits,.sl-wedding-stay-links{padding:46px 14px}
 .sl-wedding-stay-wrap{width:100%!important;max-width:100%!important}
 .sl-wedding-stay-intro{text-align:left}
 .sl-wedding-stay-facts{grid-template-columns:1fr}
}


/* v2.0.31 Wedding FAQ */
.sl-wedding-faq-page{background:#f7f3ea}
.sl-wfaq-intro,.sl-wfaq-section,.sl-wfaq-links{padding:72px 24px}
.sl-wfaq-wrap{width:min(980px,calc(100% - 32px))!important;max-width:980px!important;margin:0 auto!important}
.sl-wfaq-intro{text-align:center}
.sl-wfaq-intro h2,.sl-wfaq-heading h2{font-size:clamp(2.3rem,4vw,3.8rem);line-height:1.03;margin:.45rem 0 1rem}
.sl-wfaq-intro p:last-child{max-width:760px;margin:0 auto;line-height:1.65}
.sl-wfaq-section{background:#fff}
.sl-wfaq-list{border-top:1px solid #d9d2c4}
.sl-wfaq-item{border-bottom:1px solid #d9d2c4;background:#fff}
.sl-wfaq-item summary{cursor:pointer;list-style:none;padding:22px 52px 22px 0;font-family:Georgia,serif;font-size:1.18rem;color:#243a50;position:relative}
.sl-wfaq-item summary::-webkit-details-marker{display:none}
.sl-wfaq-item summary:after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-family:Arial,sans-serif;font-size:1.55rem;color:#b8862e}
.sl-wfaq-item[open] summary:after{content:"−"}
.sl-wfaq-item>div{padding:0 48px 22px 0}
.sl-wfaq-item p{margin:0;line-height:1.65}
.sl-wfaq-heading{text-align:center;max-width:800px;margin:0 auto 34px}
.sl-wfaq-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#d9d2c4}
.sl-wfaq-link-grid a{display:flex;flex-direction:column;background:#fff;padding:28px;text-decoration:none;color:inherit}
.sl-wfaq-link-grid strong{font-family:Georgia,serif;color:#243a50;font-size:1.25rem;margin-bottom:7px}
.sl-wfaq-link-grid span{font-size:.9rem;line-height:1.45}
@media(max-width:800px){
 .sl-wfaq-link-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
 .sl-wfaq-intro,.sl-wfaq-section,.sl-wfaq-links{padding:46px 14px}
 .sl-wfaq-wrap{width:100%!important;max-width:100%!important}
 .sl-wfaq-intro{text-align:left}
 .sl-wfaq-item summary{font-size:1.06rem;padding-right:42px}
 .sl-wfaq-item>div{padding-right:0}
}


/* v2.0.32 WeddingWire Reviews */
.sl-weddingwire-section{
  padding:72px 24px;
  background:#fff;
}
.sl-weddingwire-widget-shell{
  max-width:980px;
  margin:0 auto;
  padding:30px;
  background:#f7f3ea;
  border-top:4px solid #c79a45;
  box-shadow:0 12px 32px rgba(24,39,53,.08);
  overflow:hidden;
}
.sl-weddingwire-widget-shell .ww-reviews-widget{
  width:100%;
  max-width:100%;
}
.sl-weddingwire-widget-shell img{
  max-width:100%;
  height:auto;
}
@media(max-width:650px){
  .sl-weddingwire-section{padding:46px 14px}
  .sl-weddingwire-widget-shell{padding:18px}
}


/* Keep mobile header behavior unchanged */
@media(max-width:980px){
  .sl-topbar,
  .sl-site-header{
    position:relative;
    top:auto;
  }
}


/* v2.0.35 Fixed desktop header / mega menu */
@media(min-width:981px){

  body{
    padding-top:110px;
  }

  body.admin-bar{
    padding-top:110px;
  }

  .sl-topbar{
    position:fixed !important;
    top:0;
    left:0;
    right:0;
    z-index:5001;
    width:100%;
  }

  .sl-site-header{
    position:fixed !important;
    top:28px;
    left:0;
    right:0;
    z-index:5000;
    width:100%;
    background:#fff;
    box-shadow:0 6px 18px rgba(18,36,52,.10);
  }

  .admin-bar .sl-topbar{
    top:32px;
  }

  .admin-bar .sl-site-header{
    top:60px;
  }

  .sl-submenu{
    z-index:5200 !important;
  }
}

/* WordPress admin bar becomes 46px on narrower logged-in screens */
@media(min-width:981px) and (max-width:1100px){
  .admin-bar .sl-topbar{top:32px}
  .admin-bar .sl-site-header{top:60px}
}

@media(max-width:980px){
  body,
  body.admin-bar{
    padding-top:0;
  }

  .sl-topbar,
  .sl-site-header{
    position:relative !important;
    top:auto !important;
    left:auto;
    right:auto;
  }
}


/* v2.0.36 Defensive fixed desktop navigation override */
@media screen and (min-width:981px){
  html{scroll-padding-top:120px}
  body:not(.wp-admin){
    padding-top:110px !important;
  }
  .sl-topbar{
    position:fixed !important;
    inset:0 0 auto 0 !important;
    top:0 !important;
    z-index:99998 !important;
  }
  .sl-site-header{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    top:28px !important;
    z-index:99997 !important;
  }
  body.admin-bar .sl-topbar{
    top:32px !important;
  }
  body.admin-bar .sl-site-header{
    top:60px !important;
  }
  .sl-site-header .sl-submenu{
    z-index:99999 !important;
  }
}


/* v2.0.39 Indoor Golf Simulator */
.sl-simulator-page{background:#f7f3ea}
.sl-sim-intro,.sl-sim-tech,.sl-sim-rates,.sl-sim-tips{padding:72px 24px}
.sl-sim-wrap{width:min(1120px,calc(100% - 32px))!important;max-width:1120px!important;margin:0 auto!important}
.sl-sim-intro{text-align:center}
.sl-sim-intro h2,.sl-sim-heading h2,.sl-sim-tech h2{font-size:clamp(2.25rem,4vw,3.8rem);line-height:1.03;margin:.45rem 0 1rem}
.sl-sim-intro .sl-section-intro{max-width:820px;margin:0 auto 34px;line-height:1.65}
.sl-sim-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#d9d2c4}
.sl-sim-feature-grid article{background:#fff;padding:26px 18px}
.sl-sim-feature-grid strong{display:block;font-family:Georgia,serif;color:#243a50;font-size:1.25rem;margin-bottom:7px}
.sl-sim-feature-grid span{font-size:.9rem}
.sl-sim-tech{background:#fff}
.sl-sim-tech-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.sl-sim-tech-grid article{background:#f7f3ea;border-top:4px solid #c79a45;padding:30px}
.sl-sim-tech-grid p,.sl-sim-tech-grid li{line-height:1.65}
.sl-sim-tech-grid ul{padding-left:1.15rem}
.sl-sim-heading{text-align:center;max-width:800px;margin:0 auto 34px}
.sl-sim-rates{background:#f7f3ea}
.sl-sim-rate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.sl-sim-rate-grid article{background:#fff;padding:30px;border-top:4px solid #c79a45;box-shadow:0 12px 30px rgba(24,39,53,.06)}
.sl-sim-rate-grid h3{font-size:1.75rem;margin:.35rem 0 1.25rem}
.sl-sim-price-row,.sl-sim-hours-row{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid #e6e0d6}
.sl-sim-price-row strong{font-size:1.18rem;color:#243a50}
.sl-sim-price-row span,.sl-sim-hours-row span{text-align:right}
.sl-sim-rate-grid .sl-blue-button{display:inline-block;margin-top:22px}
.sl-sim-rate-note{text-align:center;margin:24px 0 0;font-size:.88rem}
.sl-sim-tips{background:#fff}
.sl-sim-tip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sl-sim-tip-grid article{background:#f7f3ea;border-top:4px solid #c79a45;padding:28px}
.sl-sim-tip-grid span{font-size:.8rem;font-weight:800;letter-spacing:.1em;color:#b8862e}
.sl-sim-tip-grid h3{font-size:1.3rem;margin:.6rem 0}
.sl-sim-tip-grid p{line-height:1.6}
@media(max-width:900px){
 .sl-sim-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sl-sim-tech-grid,.sl-sim-rate-grid,.sl-sim-tip-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
 .sl-sim-intro,.sl-sim-tech,.sl-sim-rates,.sl-sim-tips{padding:46px 14px}
 .sl-sim-wrap{width:100%!important;max-width:100%!important}
 .sl-sim-intro{text-align:left}
 .sl-sim-feature-grid{grid-template-columns:1fr}
 .sl-sim-price-row,.sl-sim-hours-row{display:block}
 .sl-sim-price-row span,.sl-sim-hours-row span{display:block;text-align:left;margin-top:4px}
}


/* v2.0.40 Wedding Accommodations Inn photography */
.sl-inn-photo-section{
  padding:72px 24px;
  background:#fff;
}
.sl-inn-photo-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.sl-inn-photo-grid figure{
  margin:0;
  overflow:hidden;
  min-height:360px;
  background:#e8e2d7;
}
.sl-inn-photo-grid .sl-inn-photo-wide{
  grid-column:1 / -1;
  min-height:520px;
}
.sl-inn-photo-grid img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
@media(max-width:700px){
  .sl-inn-photo-section{padding:46px 14px}
  .sl-inn-photo-grid{grid-template-columns:1fr}
  .sl-inn-photo-grid .sl-inn-photo-wide{grid-column:auto;min-height:300px}
  .sl-inn-photo-grid figure{min-height:280px}
}

/* v2.0.40 Sitewide awards strip */
.sl-awards-strip{
  background:#f7f3ea;
  padding:56px 24px 46px;
  border-top:1px solid #ded6ca;
}
.sl-awards-strip .sl-wrap{
  width:min(1180px,calc(100% - 32px))!important;
  max-width:1180px!important;
  margin:0 auto!important;
}
.sl-awards-heading{
  text-align:center;
  max-width:820px;
  margin:0 auto 30px;
}
.sl-awards-heading h2{
  font-size:clamp(2rem,3vw,3.25rem);
  line-height:1.05;
  margin:.45rem 0 0;
}
.sl-awards-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
  align-items:center;
}
.sl-award-card{
  background:#fff;
  min-height:190px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  border:1px solid #e5ded3;
  box-shadow:0 8px 20px rgba(24,39,53,.05);
}
.sl-award-card img{
  max-width:100%;
  max-height:165px;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
}
@media(max-width:1000px){
  .sl-awards-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:650px){
  .sl-awards-strip{padding:44px 14px 36px}
  .sl-awards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl-award-card{min-height:150px;padding:14px}
  .sl-award-card img{max-height:130px}
}


/* v2.0.41 Simulator hero image reliability */
.sl-simulator-page .sl-inner-hero{
  background-image:var(--inner-image) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}

/* v2.0.42 Private Events */
.sl-private-event-types,.sl-private-event-service{padding:68px 24px}
.sl-private-event-types{background:#fff}
.sl-private-event-service{background:#f7f3ea;text-align:center}
.sl-feature-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#ddd5c8}
.sl-feature-grid-4 article{background:#fff;padding:30px 24px}
.sl-private-event-room-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sl-private-event-room-list div{padding:24px;background:#f7f3ea;border-top:2px solid #c79a4a}
.sl-private-event-room-list strong,.sl-private-event-room-list span{display:block}
.sl-private-event-room-list span{margin-top:5px;font-size:.9rem}
@media(max-width:850px){.sl-feature-grid-4{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.sl-feature-grid-4,.sl-private-event-room-list{grid-template-columns:1fr}}


/* v2.0.43 Award descriptions */
.sl-award-card{
  flex-direction:column;
  text-align:center;
  gap:14px;
}
.sl-award-card p{
  margin:0;
  color:#243a50;
  font-size:.88rem;
  line-height:1.45;
  font-weight:600;
}
@media(max-width:650px){
  .sl-award-card p{
    font-size:.82rem;
  }
}


/* v2.0.44 Simulator hero asset + CTA cleanup */
.sl-simulator-page .sl-simulator-hero{
  position:relative;
  min-height:560px;
  display:flex;
  align-items:center;
  background:
    linear-gradient(90deg,rgba(16,35,52,.82) 0%,rgba(16,35,52,.56) 45%,rgba(16,35,52,.22) 100%),
    url('/wp-content/themes/solitude-links/assets/images/simulator-hero.jpg') center center / cover no-repeat !important;
}
.sl-simulator-page .sl-simulator-hero .sl-inner-overlay{
  display:none !important;
}
.sl-simulator-page .sl-simulator-hero .sl-inner-hero-copy{
  position:relative;
  z-index:2;
}
@media(max-width:700px){
  .sl-simulator-page .sl-simulator-hero{
    min-height:470px;
    background-position:center center !important;
  }
}


/* v2.0.45 Official Solitude Links header logo */
.sl-brand-logo{
  display:flex !important;
  align-items:center;
  flex:0 0 auto;
  text-decoration:none;
}
.sl-brand-logo img{
  display:block;
  width:auto;
  height:58px;
  max-width:260px;
  object-fit:contain;
}
@media(min-width:981px){
  .sl-header-inner{
    min-height:78px;
  }
}
@media(max-width:980px){
  .sl-brand-logo img{
    height:46px;
    max-width:205px;
  }
}
@media(max-width:520px){
  .sl-brand-logo img{
    height:40px;
    max-width:180px;
  }
}


/* v2.0.46 Bunker's menu + Toast actions */
.sl-bunkers-hero-actions{flex-wrap:wrap}
.sl-bunkers-action-strip{padding:36px 24px;background:#f7f3ea}
.sl-bunkers-action-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;background:#d8d0c3
}
.sl-bunkers-action-grid a{
  display:flex;flex-direction:column;background:#fff;padding:26px;
  text-decoration:none;color:inherit
}
.sl-bunkers-action-grid small{
  color:#b8862e;font-weight:800;letter-spacing:.12em;margin-bottom:7px
}
.sl-bunkers-action-grid strong{
  font-family:Georgia,serif;color:#243a50;font-size:1.35rem;margin-bottom:6px
}
.sl-bunkers-action-grid span{font-size:.9rem;line-height:1.45}

.sl-bunkers-menu-page{background:#f7f3ea}
.sl-menu-intro{padding:66px 24px 34px;text-align:center}
.sl-menu-wrap{width:min(1120px,calc(100% - 32px))!important;max-width:1120px!important;margin:0 auto!important}
.sl-menu-intro h2{font-size:clamp(2.3rem,4vw,3.8rem);margin:.4rem 0 .7rem}
.sl-menu-section{padding:20px 24px 72px}
.sl-menu-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.sl-menu-category{
  background:#fff;border-top:4px solid #c79a45;padding:28px;
  box-shadow:0 8px 22px rgba(24,39,53,.05)
}
.sl-menu-category-wide{grid-column:1 / -1}
.sl-menu-category>h2{
  font-size:1.8rem;margin:0 0 15px;color:#243a50
}
.sl-menu-category>article,.sl-menu-subgrid article{
  display:flex;justify-content:space-between;gap:18px;padding:14px 0;
  border-bottom:1px solid #e7e0d5
}
.sl-menu-category article:last-child,.sl-menu-subgrid article:last-child{border-bottom:0}
.sl-menu-category h3{font-size:1.05rem;margin:0 0 5px;color:#202b34}
.sl-menu-category p{margin:0;line-height:1.5;font-size:.92rem}
.sl-menu-category article>strong{
  color:#b8862e;font-size:1rem;white-space:nowrap
}
.sl-menu-note{color:#b8862e;font-weight:700;margin:-5px 0 8px!important}
.sl-menu-subgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
.sl-menu-drinks article{align-items:flex-start}
.sl-menu-disclaimer{
  text-align:center;font-size:.82rem;margin:30px auto 0;max-width:850px
}
.sl-bunkers-order-cta{
  background:#243a50;color:#fff;padding:44px 24px
}
.sl-bunkers-order-cta>.sl-wrap{
  display:flex;justify-content:space-between;align-items:center;gap:30px
}
.sl-bunkers-order-cta h2{color:#fff;margin:.3rem 0 0;font-size:clamp(2rem,3vw,3rem)}

@media(max-width:850px){
  .sl-bunkers-action-grid,.sl-menu-columns{grid-template-columns:1fr}
  .sl-menu-category-wide{grid-column:auto}
  .sl-menu-subgrid{grid-template-columns:1fr}
  .sl-bunkers-order-cta>.sl-wrap{display:block}
  .sl-bunkers-order-cta .sl-actions{margin-top:24px}
}
@media(max-width:650px){
  .sl-bunkers-action-strip,.sl-menu-section,.sl-menu-intro,.sl-bunkers-order-cta{padding-left:14px;padding-right:14px}
  .sl-menu-wrap{width:100%!important;max-width:100%!important}
  .sl-menu-category{padding:22px 18px}
  .sl-menu-category>article,.sl-menu-subgrid article{display:block}
  .sl-menu-category article>strong{display:block;margin-top:6px}
}


/* v2.0.47 Match Bunker's Order Online / Reserve a Table CTA buttons */
.sl-bunkers-order-cta .sl-actions{
  display:flex;
  align-items:stretch;
  gap:12px;
}
.sl-bunkers-order-cta .sl-actions > a{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:190px;
  min-width:190px;
  min-height:56px;
  padding:14px 20px !important;
  margin:0 !important;
  line-height:1.1;
  text-align:center;
  white-space:nowrap;
}
@media(max-width:650px){
  .sl-bunkers-order-cta .sl-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .sl-bunkers-order-cta .sl-actions > a{
    width:100%;
    min-width:0;
  }
}


/* v2.0.50 Event sales polish */
.sl-private-events-page .sl-inner-intro,
.sl-private-events-page .sl-section,
.sl-corporate-events-page .sl-inner-intro,
.sl-corporate-events-page .sl-section,
body .sl-section{
  padding-top:54px;
  padding-bottom:54px;
}

.sl-event-sales-band,
.sl-corporate-sales-band{
  background:#243a50;
  color:#fff;
  padding:58px 24px;
}
.sl-event-sales-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:42px;
  align-items:start;
}
.sl-event-sales-copy h2{
  color:#fff;
  font-size:clamp(2.3rem,4vw,3.7rem);
  line-height:1.04;
  margin:.4rem 0 1rem;
}
.sl-event-sales-copy p:last-child{
  line-height:1.65;
  max-width:620px;
}
.sl-event-sales-points{
  display:grid;
  gap:12px;
}
.sl-event-sales-points div{
  background:rgba(255,255,255,.08);
  border-left:3px solid #c79a45;
  padding:20px 22px;
}
.sl-event-sales-points strong,
.sl-event-sales-points span{
  display:block;
}
.sl-event-sales-points strong{
  color:#fff;
  font-family:Georgia,serif;
  font-size:1.18rem;
  margin-bottom:5px;
}
.sl-event-sales-points span{
  color:rgba(255,255,255,.82);
  line-height:1.45;
}

.sl-menu-downloads{
  gap:18px !important;
}
.sl-menu-downloads .sl-card{
  display:flex;
  flex-direction:column;
}
.sl-menu-downloads .sl-card .sl-primary,
.sl-menu-downloads .sl-card .sl-gold-button{
  margin-top:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  text-align:center;
}

.sl-event-menu-callout{
  padding:58px 24px;
  background:#fff;
  text-align:center;
  border-top:1px solid #ded6ca;
}
.sl-event-menu-callout h2{
  font-size:clamp(2.2rem,3vw,3.3rem);
  margin:.4rem 0 .8rem;
}
.sl-event-menu-callout .sl-actions{
  justify-content:center;
  flex-wrap:wrap;
  margin-top:24px;
}

/* tighten oversized whitespace in event layouts */
.sl-card-grid{
  margin-top:24px;
}
.sl-card-grid .sl-card{
  padding:26px 24px;
}
.sl-inner-intro + .sl-section{
  padding-top:36px;
}

@media(max-width:850px){
  .sl-event-sales-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:650px){
  .sl-event-sales-band,
  .sl-corporate-sales-band,
  .sl-event-menu-callout{
    padding-left:14px;
    padding-right:14px;
  }
}


/* v2.0.51 Stabilization components */
.sl-native-form{
  max-width:900px;
  margin:24px auto 0;
  background:#fff;
  padding:28px;
  border-top:4px solid #c79a45;
  box-shadow:0 10px 30px rgba(25,39,52,.06);
}
.sl-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-bottom:20px;
}
.sl-native-form label{
  display:flex;
  flex-direction:column;
  gap:7px;
  font-weight:700;
  color:#243a50;
}
.sl-native-form input,
.sl-native-form textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid #d8d2c9;
  background:#fff;
  padding:12px 13px;
  font:inherit;
}
.sl-form-full{grid-column:1/-1}
.sl-honeypot{position:absolute!important;left:-9999px!important}
.sl-form-success{
  max-width:900px;
  margin:20px auto;
  padding:16px 18px;
  background:#eef6ee;
  border-left:4px solid #567a56;
}
.sl-course-facts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#d8d0c3;
  margin:26px 0;
}
.sl-course-facts>div{
  background:#fff;
  padding:22px;
  text-align:center;
}
.sl-course-facts strong,
.sl-course-facts span{display:block}
.sl-course-facts strong{
  font-family:Georgia,serif;
  color:#243a50;
  font-size:1.8rem;
}
.sl-course-tour-shortcode-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  max-width:1180px;
  margin:0 auto;
  padding:0 24px 50px;
}
.sl-hole-card{
  background:#fff;
  padding:24px;
  border-top:3px solid #c79a45;
  box-shadow:0 8px 22px rgba(25,39,52,.06);
}
.sl-hole-card>span{
  color:#b8862e;
  font-size:.72rem;
  letter-spacing:.12em;
  font-weight:800;
}
.sl-hole-card h3{font-size:1.5rem;margin:.35rem 0 .6rem}
.sl-faq{
  border-top:1px solid #d8d0c3;
  padding:14px 0;
}
.sl-faq summary{
  cursor:pointer;
  font-weight:700;
  color:#243a50;
}
.sl-faq p{line-height:1.55}
@media(max-width:800px){
  .sl-form-grid,.sl-course-tour-shortcode-grid{grid-template-columns:1fr}
  .sl-course-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* v2.0.52 Header logo + equal CTA buttons */
.sl-site-header .sl-header-inner{
  display:flex;
  align-items:center;
}

.sl-site-header .sl-brand-logo{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 245px !important;
  width:245px !important;
  min-width:245px !important;
  height:74px !important;
  overflow:visible !important;
  text-decoration:none !important;
}

.sl-site-header .sl-brand-logo img{
  display:block !important;
  width:230px !important;
  max-width:230px !important;
  min-width:230px !important;
  height:auto !important;
  max-height:68px !important;
  object-fit:contain !important;
  object-position:left center !important;
  opacity:1 !important;
  visibility:visible !important;
}

.sl-site-header .sl-header-actions{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  margin-left:auto !important;
}

.sl-site-header .sl-header-cta{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  width:150px !important;
  min-width:150px !important;
  height:48px !important;
  min-height:48px !important;
  padding:0 18px !important;
  margin:0 !important;
  border:2px solid transparent !important;
  font-size:12px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:.06em !important;
  text-align:center !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}

.sl-site-header .sl-header-tee{
  background:#fff !important;
  color:#243a50 !important;
  border-color:#243a50 !important;
}

.sl-site-header .sl-header-tee:hover,
.sl-site-header .sl-header-tee:focus{
  background:#243a50 !important;
  color:#fff !important;
}

.sl-site-header .sl-header-event{
  background:#c79a45 !important;
  color:#fff !important;
  border-color:#c79a45 !important;
}

.sl-site-header .sl-header-event:hover,
.sl-site-header .sl-header-event:focus{
  background:#a97b2e !important;
  border-color:#a97b2e !important;
  color:#fff !important;
}

@media (max-width:1100px){
  .sl-site-header .sl-brand-logo{
    flex-basis:210px !important;
    width:210px !important;
    min-width:210px !important;
  }
  .sl-site-header .sl-brand-logo img{
    width:195px !important;
    min-width:195px !important;
    max-width:195px !important;
  }
  .sl-site-header .sl-header-cta{
    width:138px !important;
    min-width:138px !important;
  }
}

@media (max-width:980px){
  .sl-site-header .sl-brand-logo{
    flex:0 0 auto !important;
    width:auto !important;
    min-width:0 !important;
    height:62px !important;
  }
  .sl-site-header .sl-brand-logo img{
    width:185px !important;
    min-width:0 !important;
    max-width:185px !important;
    max-height:56px !important;
  }
  .sl-site-header .sl-header-actions{
    display:none !important;
  }
}


/* v2.0.52 Event menu CTA normalization */
.sl-menu-downloads .sl-menu-cta,
.sl-menu-downloads .sl-primary,
.sl-menu-downloads .sl-gold-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:245px !important;
  min-height:52px !important;
  padding:13px 18px !important;
  text-align:center !important;
  text-decoration:none !important;
}


/* v2.0.53 Deterministic header + PDF menu buttons */
.sl-site-header .sl-brand-logo{
  display:flex !important;
  align-items:center !important;
  width:250px !important;
  min-width:250px !important;
  height:78px !important;
  overflow:visible !important;
}
.sl-site-header .sl-brand-logo img{
  display:block !important;
  width:235px !important;
  height:auto !important;
  max-width:235px !important;
  max-height:70px !important;
  object-fit:contain !important;
  visibility:visible !important;
  opacity:1 !important;
}
.sl-site-header .sl-header-actions{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}
.sl-site-header .sl-header-actions .sl-header-cta{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:158px !important;
  min-width:158px !important;
  height:48px !important;
  min-height:48px !important;
  padding:0 16px !important;
  margin:0 !important;
  border:2px solid #243a50 !important;
  box-sizing:border-box !important;
  text-decoration:none !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.05em !important;
  white-space:nowrap !important;
}
.sl-site-header .sl-header-actions .sl-header-tee{
  background:#243a50 !important;
  color:#fff !important;
  border-color:#243a50 !important;
}
.sl-site-header .sl-header-actions .sl-header-event{
  background:#c79a45 !important;
  color:#fff !important;
  border-color:#c79a45 !important;
}

/* PDF menu links should never render as plain text */
.sl-menu-downloads a.sl-menu-pdf-button,
.sl-menu-downloads a.sl-gold-button,
.sl-menu-downloads .sl-card a[href$=".pdf"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:280px !important;
  min-height:54px !important;
  padding:14px 20px !important;
  margin-top:22px !important;
  background:#c79a45 !important;
  color:#fff !important;
  border:2px solid #c79a45 !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.04em !important;
  line-height:1.15 !important;
  box-sizing:border-box !important;
  text-align:center !important;
}
.sl-menu-downloads a.sl-menu-pdf-button:hover,
.sl-menu-downloads .sl-card a[href$=".pdf"]:hover{
  background:#a97b2e !important;
  border-color:#a97b2e !important;
  color:#fff !important;
}

@media(max-width:980px){
  .sl-site-header .sl-brand-logo{
    width:auto !important;
    min-width:0 !important;
    height:62px !important;
  }
  .sl-site-header .sl-brand-logo img{
    width:190px !important;
    max-width:190px !important;
  }
}
@media(max-width:650px){
  .sl-menu-downloads a.sl-menu-pdf-button,
  .sl-menu-downloads a.sl-gold-button,
  .sl-menu-downloads .sl-card a[href$=".pdf"]{
    width:100% !important;
    min-width:0 !important;
  }
}


/* v2.0.54 Perfect Venue integration */
.sl-perfectvenue-section{
  padding:64px 24px;
  background:#fff;
  border-top:1px solid #ded6ca;
}
.sl-perfectvenue-heading{
  text-align:center;
  max-width:760px;
  margin:0 auto 28px;
}
.sl-perfectvenue-heading h2{
  font-size:clamp(2.3rem,4vw,3.7rem);
  line-height:1.05;
  margin:.4rem 0 .8rem;
}
.sl-perfectvenue-embed{
  max-width:900px;
  margin:0 auto;
}
@media(max-width:650px){
  .sl-perfectvenue-section{padding:46px 14px}
}


/* v2.0.55 Perfect Venue layout stabilization.
   Reserve form space while the external embed initializes so full-page captures
   and normal browsing do not reflow/duplicate stitched sections. */
.sl-perfectvenue-embed{
  min-height:560px;
  position:relative;
}
.sl-perfectvenue-embed [data-pv-venue-contact-form-id]{
  min-height:520px;
}
@media(max-width:650px){
  .sl-perfectvenue-embed{min-height:680px;}
  .sl-perfectvenue-embed [data-pv-venue-contact-form-id]{min-height:640px;}
}


/* v2.0.56 Wedding Your Day CTA + shuttle presentation */
.sl-event-sales-copy > a.sl-gold-button{
  display:inline-block;
  margin-top:1rem;
  padding:.9rem 1.15rem;
  text-decoration:none !important;
  text-transform:uppercase;
  font-size:.76rem;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.04em;
  background:#C19A52;
  color:#fff !important;
}
.sl-event-sales-copy > a.sl-gold-button:hover,
.sl-event-sales-copy > a.sl-gold-button:focus{
  filter:brightness(.94);
  text-decoration:none !important;
}
.sl-shuttle-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:clamp(2rem,5vw,5rem);
  align-items:center;
}
.sl-shuttle-image img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:800/356;
  object-fit:cover;
}
.sl-shuttle-copy{max-width:620px}
@media(max-width:800px){
  .sl-shuttle-grid{grid-template-columns:1fr;gap:1.5rem}
  .sl-shuttle-copy{max-width:none}
}


/* v2.0.57 Weddings desktop mega menu */
@media (min-width:981px){
  .sl-weddings-mega{
    position:static !important;
  }

  .sl-weddings-mega-menu{
    position:absolute !important;
    left:50% !important;
    top:100% !important;
    transform:translateX(-50%) !important;
    width:min(1040px, calc(100vw - 48px)) !important;
    padding:30px 32px 32px !important;
    display:grid !important;
    grid-template-columns:1.15fr .9fr 1fr 1.15fr !important;
    gap:0 !important;
    background:#fff !important;
    border-top:3px solid #c79a45 !important;
    box-shadow:0 18px 45px rgba(25,39,52,.18) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    z-index:99999 !important;
  }

  .sl-weddings-mega:hover > .sl-weddings-mega-menu,
  .sl-weddings-mega.is-open > .sl-weddings-mega-menu,
  .sl-weddings-mega:focus-within > .sl-weddings-mega-menu{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  .sl-weddings-mega-menu .sl-mega-column{
    padding:0 24px !important;
    border-right:1px solid #e6dfd5 !important;
  }

  .sl-weddings-mega-menu .sl-mega-column:first-child{
    padding-left:0 !important;
  }

  .sl-weddings-mega-menu .sl-mega-column:last-child{
    border-right:0 !important;
    padding-right:0 !important;
  }

  .sl-weddings-mega-menu .sl-mega-heading{
    display:block !important;
    margin:0 0 12px !important;
    color:#b8862e !important;
    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.13em !important;
  }

  .sl-weddings-mega-menu a{
    display:block !important;
    padding:7px 0 !important;
    color:#243a50 !important;
    font-size:14px !important;
    line-height:1.3 !important;
    font-weight:650 !important;
    text-decoration:none !important;
    background:transparent !important;
    white-space:normal !important;
  }

  .sl-weddings-mega-menu a:hover,
  .sl-weddings-mega-menu a:focus{
    color:#b8862e !important;
  }

  .sl-weddings-mega-menu .sl-mega-cta{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-width:150px !important;
    margin-top:14px !important;
    padding:12px 16px !important;
    background:#c79a45 !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:.05em !important;
  }

  .sl-weddings-mega-menu .sl-mega-cta:hover,
  .sl-weddings-mega-menu .sl-mega-cta:focus{
    background:#a97b2e !important;
    color:#fff !important;
  }
}

/* Mobile: grouped headings, no nested hover/flyout behavior */
@media (max-width:980px){
  .sl-weddings-mega-menu{
    display:none;
    position:static !important;
    width:100% !important;
    padding:8px 0 12px 18px !important;
    background:transparent !important;
    box-shadow:none !important;
    border:0 !important;
  }

  .sl-weddings-mega.is-open > .sl-weddings-mega-menu{
    display:block !important;
  }

  .sl-weddings-mega-menu .sl-mega-column{
    padding:8px 0 4px !important;
  }

  .sl-weddings-mega-menu .sl-mega-heading{
    display:block;
    padding:6px 0 3px;
    color:#c79a45;
    font-size:10px;
    font-weight:800;
    letter-spacing:.12em;
  }

  .sl-weddings-mega-menu a{
    display:block;
    padding:7px 0 !important;
  }

  .sl-weddings-mega-menu .sl-mega-cta{
    margin-top:5px;
  }
}


/* v2.0.58 Sectioned mega menus for Golf / Events / Stay / Dine */
@media (min-width:981px){

  .sl-mega-nav{
    position:static !important;
  }

  .sl-sectioned-menu{
    position:absolute !important;
    top:100% !important;
    left:50% !important;
    transform:translateX(-50%) !important;
    display:grid !important;
    background:#fff !important;
    border-top:3px solid #c79a45 !important;
    box-shadow:0 18px 45px rgba(25,39,52,.18) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    z-index:99999 !important;
    padding:28px 30px 30px !important;
  }

  .sl-mega-nav:hover > .sl-sectioned-menu,
  .sl-mega-nav.is-open > .sl-sectioned-menu,
  .sl-mega-nav:focus-within > .sl-sectioned-menu{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  .sl-golf-mega-menu{
    width:min(820px, calc(100vw - 48px)) !important;
    grid-template-columns:1.1fr 1fr .9fr !important;
  }

  .sl-events-mega-menu{
    width:min(900px, calc(100vw - 48px)) !important;
    grid-template-columns:1fr 1fr 1fr !important;
  }

  .sl-stay-mega-menu{
    width:min(760px, calc(100vw - 48px)) !important;
    grid-template-columns:1fr 1fr 1fr !important;
  }

  .sl-dine-mega-menu{
    width:min(610px, calc(100vw - 48px)) !important;
    grid-template-columns:1fr 1fr !important;
  }

  .sl-sectioned-menu .sl-mega-column{
    padding:0 22px !important;
    border-right:1px solid #e6dfd5 !important;
  }

  .sl-sectioned-menu .sl-mega-column:first-child{
    padding-left:0 !important;
  }

  .sl-sectioned-menu .sl-mega-column:last-child{
    border-right:0 !important;
    padding-right:0 !important;
  }

  .sl-sectioned-menu .sl-mega-heading{
    display:block !important;
    margin:0 0 11px !important;
    color:#b8862e !important;
    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.13em !important;
  }

  .sl-sectioned-menu a{
    display:block !important;
    padding:7px 0 !important;
    background:transparent !important;
    color:#243a50 !important;
    text-decoration:none !important;
    font-size:14px !important;
    font-weight:650 !important;
    line-height:1.3 !important;
    white-space:normal !important;
  }

  .sl-sectioned-menu a:hover,
  .sl-sectioned-menu a:focus{
    color:#b8862e !important;
  }

  .sl-sectioned-menu .sl-mega-cta{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-width:145px !important;
    margin-top:14px !important;
    padding:12px 16px !important;
    background:#c79a45 !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:.05em !important;
  }

  .sl-sectioned-menu .sl-mega-cta:hover,
  .sl-sectioned-menu .sl-mega-cta:focus{
    background:#a97b2e !important;
    color:#fff !important;
  }
}

@media (max-width:980px){
  .sl-sectioned-menu{
    display:none;
    position:static !important;
    width:100% !important;
    padding:8px 0 12px 18px !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
  }

  .sl-mega-nav.is-open > .sl-sectioned-menu{
    display:block !important;
  }

  .sl-sectioned-menu .sl-mega-column{
    padding:8px 0 4px !important;
  }

  .sl-sectioned-menu .sl-mega-heading{
    display:block;
    padding:6px 0 3px;
    color:#c79a45;
    font-size:10px;
    font-weight:800;
    letter-spacing:.12em;
  }

  .sl-sectioned-menu a{
    display:block;
    padding:7px 0 !important;
  }
}


/* v2.0.59 Header height / logo clearance
   Gives the taller Solitude Links logo enough vertical room so the golfer mark
   is not clipped at the top of the primary header. */
@media (min-width:981px){
  .sl-header-main,
  .sl-main-header,
  .site-header .sl-header-main{
    min-height:86px !important;
    height:auto !important;
    overflow:visible !important;
  }

  .sl-header-inner,
  .sl-header-main .sl-container,
  .sl-main-header .sl-container{
    min-height:86px !important;
    height:auto !important;
    align-items:center !important;
    overflow:visible !important;
  }

  .sl-site-logo,
  .sl-logo,
  .sl-brand,
  .sl-branding{
    overflow:visible !important;
  }

  .sl-site-logo img,
  .sl-logo img,
  .sl-brand img,
  .sl-branding img{
    max-height:68px !important;
    height:auto !important;
    width:auto !important;
    object-fit:contain !important;
    object-position:center !important;
  }
}

@media (max-width:980px){
  .sl-header-main,
  .sl-main-header,
  .site-header .sl-header-main{
    min-height:76px !important;
    height:auto !important;
    overflow:visible !important;
  }

  .sl-header-inner,
  .sl-header-main .sl-container,
  .sl-main-header .sl-container{
    min-height:76px !important;
    height:auto !important;
    align-items:center !important;
    overflow:visible !important;
  }
}


/* v2.0.60 Address / Open in Maps CTA cleanup */
.sl-map-button,
a.sl-map-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:150px !important;
  min-height:48px !important;
  padding:12px 18px !important;
  margin-top:18px !important;
  background:#c79a45 !important;
  color:#fff !important;
  border:2px solid #c79a45 !important;
  box-sizing:border-box !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.05em !important;
  box-shadow:none !important;
  outline:none !important;
}

.sl-map-button:hover,
.sl-map-button:focus{
  background:#a97b2e !important;
  border-color:#a97b2e !important;
  color:#fff !important;
  text-decoration:none !important;
}

/* Address card rhythm */
.sl-contact-card,
.sl-address-card{
  padding:44px 34px !important;
}

.sl-contact-card h2,
.sl-address-card h2{
  margin-bottom:28px !important;
  line-height:1.02 !important;
}

.sl-contact-card p,
.sl-address-card p{
  margin-bottom:0 !important;
}

@media(max-width:650px){
  .sl-map-button,
  a.sl-map-button{
    width:100% !important;
  }
}


/* v2.0.62 Routed Contact Form */
.sl-contact-form-section{
  padding:64px 24px;
  background:#f7f3ea;
  border-top:1px solid #ded6ca;
}
.sl-contact-form-heading{
  text-align:center;
  max-width:760px;
  margin:0 auto 28px;
}
.sl-contact-form-heading h2{
  font-size:clamp(2.35rem,4vw,3.8rem);
  line-height:1.04;
  margin:.4rem 0 .8rem;
}
.sl-department-contact-form{
  max-width:900px;
  margin:0 auto;
  background:#fff;
  padding:30px;
  border-top:4px solid #c79a45;
  box-shadow:0 10px 30px rgba(25,39,52,.06);
}
.sl-department-contact-form select,
.sl-department-contact-form input,
.sl-department-contact-form textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid #d8d2c9;
  background:#fff;
  padding:13px 14px;
  font:inherit;
  color:#243a50;
}
.sl-department-contact-form select{
  min-height:48px;
}
.sl-contact-submit{
  min-width:190px;
  min-height:50px;
}
.sl-form-error{
  max-width:900px;
  margin:0 auto 20px;
  padding:16px 18px;
  background:#fff1f0;
  border-left:4px solid #b84b43;
  color:#6e2722;
}
@media(max-width:650px){
  .sl-contact-form-section{padding:46px 14px}
  .sl-department-contact-form{padding:22px 18px}
  .sl-contact-submit{width:100%}
}


/* v2.0.64 Department contact form */
.sl-department-contact-form{max-width:820px;margin:34px auto 0}
.sl-department-form{background:#fff;padding:34px;border-top:4px solid #c79a45;box-shadow:0 10px 30px rgba(25,39,52,.06)}
.sl-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 22px}
.sl-form-field{margin:0}
.sl-form-full{grid-column:1/-1}
.sl-department-form label{display:block;margin:0 0 7px;color:#243a50;font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.sl-department-form input,.sl-department-form select,.sl-department-form textarea{width:100%;box-sizing:border-box;border:1px solid #cfc9bf;background:#fff;color:#222;padding:13px 14px;font:inherit;border-radius:0}
.sl-department-form input:focus,.sl-department-form select:focus,.sl-department-form textarea:focus{outline:2px solid #c79a45;outline-offset:1px;border-color:#c79a45}
.sl-department-form textarea{resize:vertical}
.sl-department-form .sl-btn-gold{margin-top:22px;min-height:48px;padding:13px 22px;border:2px solid #c79a45;background:#c79a45;color:#fff;font-size:12px;font-weight:800;letter-spacing:.05em;cursor:pointer}
.sl-department-form .sl-btn-gold:hover,.sl-department-form .sl-btn-gold:focus{background:#a97b2e;border-color:#a97b2e}
.sl-form-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.sl-form-notice{margin:0 0 22px;padding:14px 16px;font-weight:700}
.sl-form-success{background:#edf4ed;color:#23482b}
.sl-form-error{background:#f8ece9;color:#7c3028}
@media(max-width:650px){.sl-department-form{padding:24px 20px}.sl-form-grid{grid-template-columns:1fr}.sl-form-full{grid-column:auto}.sl-department-form .sl-btn-gold{width:100%}}


/* v2.0.83 Course Details premium FAQ */
.sl-course-faq-section{
  padding:80px 24px !important;
  background:#f7f4ed !important;
}
.sl-course-faq-section .sl-faq-wrap{
  width:min(860px,100%) !important;
  max-width:860px !important;
  margin:0 auto !important;
}
.sl-course-faq-section .sl-faq-intro{
  text-align:center !important;
  max-width:760px !important;
  margin:0 auto 36px !important;
}
.sl-course-faq-section .sl-faq-intro .sl-eyebrow{
  margin:0 0 10px !important;
  color:#bd9144 !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.15em !important;
}
.sl-course-faq-section .sl-faq-intro h2{
  margin:0 0 14px !important;
  font-size:clamp(30px,3.2vw,44px) !important;
  line-height:1.08 !important;
}
.sl-course-faq-section .sl-faq-intro > p:last-child{
  max-width:660px !important;
  margin:0 auto !important;
  font-size:16px !important;
  line-height:1.65 !important;
}
.sl-course-faq-section .sl-faq-grid-single{
  display:block !important;
}
.sl-course-faq-section .sl-faq-grid-single details{
  display:block !important;
  width:100% !important;
  box-sizing:border-box !important;
  margin:0 0 12px !important;
  padding:0 24px !important;
  background:#fff !important;
  border:1px solid rgba(28,48,64,.14) !important;
  border-radius:0 !important;
  box-shadow:0 5px 18px rgba(30,42,52,.04) !important;
}
.sl-course-faq-section .sl-faq-grid-single summary{
  display:block !important;
  position:relative !important;
  padding:21px 48px 21px 0 !important;
  cursor:pointer !important;
  list-style:none !important;
  color:#222a29 !important;
  font-size:16px !important;
  line-height:1.4 !important;
  font-weight:700 !important;
}
.sl-course-faq-section .sl-faq-grid-single summary::-webkit-details-marker{
  display:none !important;
}
.sl-course-faq-section .sl-faq-grid-single summary::marker{
  content:"" !important;
}
.sl-course-faq-section .sl-faq-grid-single summary::after{
  content:"+" !important;
  position:absolute !important;
  right:0 !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  color:#bd9144 !important;
  font-size:28px !important;
  line-height:1 !important;
  font-weight:400 !important;
}
.sl-course-faq-section .sl-faq-grid-single details[open] summary::after{
  content:"−" !important;
}
.sl-course-faq-section .sl-faq-answer{
  padding:0 48px 21px 0 !important;
}
.sl-course-faq-section .sl-faq-answer p{
  margin:0 !important;
  font-size:15px !important;
  line-height:1.72 !important;
  color:#3d4548 !important;
}
.sl-course-faq-section .sl-faq-answer a{
  color:#203b56 !important;
  font-weight:700 !important;
  text-decoration:underline !important;
  text-underline-offset:3px !important;
}
.sl-course-faq-section .sl-faq-cta{
  display:flex !important;
  justify-content:center !important;
  gap:12px !important;
  flex-wrap:wrap !important;
  margin-top:30px !important;
}
.sl-course-faq-section .sl-faq-primary,
.sl-course-faq-section .sl-faq-secondary{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:48px !important;
  padding:13px 22px !important;
  box-sizing:border-box !important;
  text-decoration:none !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.05em !important;
}
.sl-course-faq-section .sl-faq-primary{
  background:#c79a45 !important;
  border:2px solid #c79a45 !important;
  color:#fff !important;
}
.sl-course-faq-section .sl-faq-secondary{
  background:#fff !important;
  border:2px solid #203b56 !important;
  color:#203b56 !important;
}
@media(max-width:700px){
  .sl-course-faq-section{padding:58px 18px !important}
  .sl-course-faq-section .sl-faq-grid-single details{padding:0 18px !important}
  .sl-course-faq-section .sl-faq-grid-single summary{padding:18px 42px 18px 0 !important}
  .sl-course-faq-section .sl-faq-answer{padding:0 34px 18px 0 !important}
  .sl-course-faq-section .sl-faq-cta{display:grid !important;grid-template-columns:1fr !important}
  .sl-course-faq-section .sl-faq-primary,
  .sl-course-faq-section .sl-faq-secondary{width:100% !important}
}


/* v2.0.84 Sitewide contextual FAQ system */
.sl-faq-section{
  padding:80px 24px !important;
  background:#f7f4ed !important;
}
.sl-faq-section .sl-faq-wrap{
  width:min(860px,100%) !important;
  max-width:860px !important;
  margin:0 auto !important;
}
.sl-faq-section .sl-faq-intro{
  text-align:center !important;
  max-width:760px !important;
  margin:0 auto 36px !important;
}
.sl-faq-section .sl-faq-intro .sl-eyebrow{
  margin:0 0 10px !important;
  color:#bd9144 !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.15em !important;
}
.sl-faq-section .sl-faq-intro h2{
  margin:0 0 14px !important;
  font-size:clamp(30px,3.2vw,44px) !important;
  line-height:1.08 !important;
}
.sl-faq-section .sl-faq-intro > p:last-child{
  max-width:660px !important;
  margin:0 auto !important;
  font-size:16px !important;
  line-height:1.65 !important;
}
.sl-faq-section .sl-faq-grid-single{
  display:block !important;
}
.sl-faq-section .sl-faq-grid-single details{
  display:block !important;
  width:100% !important;
  box-sizing:border-box !important;
  margin:0 0 12px !important;
  padding:0 24px !important;
  background:#fff !important;
  border:1px solid rgba(28,48,64,.14) !important;
  border-radius:0 !important;
  box-shadow:0 5px 18px rgba(30,42,52,.04) !important;
}
.sl-faq-section .sl-faq-grid-single summary{
  display:block !important;
  position:relative !important;
  padding:21px 48px 21px 0 !important;
  cursor:pointer !important;
  list-style:none !important;
  color:#222a29 !important;
  font-size:16px !important;
  line-height:1.4 !important;
  font-weight:700 !important;
}
.sl-faq-section .sl-faq-grid-single summary::-webkit-details-marker{display:none !important;}
.sl-faq-section .sl-faq-grid-single summary::marker{content:"" !important;}
.sl-faq-section .sl-faq-grid-single summary::after{
  content:"+" !important;
  position:absolute !important;
  right:0 !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  color:#bd9144 !important;
  font-size:28px !important;
  line-height:1 !important;
  font-weight:400 !important;
}
.sl-faq-section .sl-faq-grid-single details[open] summary::after{content:"−" !important;}
.sl-faq-section .sl-faq-answer{padding:0 48px 21px 0 !important;}
.sl-faq-section .sl-faq-answer p{margin:0 !important;font-size:15px !important;line-height:1.72 !important;color:#3d4548 !important;}
.sl-faq-section .sl-faq-answer a{color:#203b56 !important;font-weight:700 !important;text-decoration:underline !important;text-underline-offset:3px !important;}
.sl-faq-section .sl-faq-cta{display:flex !important;justify-content:center !important;gap:12px !important;flex-wrap:wrap !important;margin-top:30px !important;}
.sl-faq-section .sl-faq-primary,.sl-faq-section .sl-faq-secondary{
  display:inline-flex !important;align-items:center !important;justify-content:center !important;min-height:48px !important;
  padding:13px 22px !important;box-sizing:border-box !important;text-decoration:none !important;font-size:12px !important;line-height:1 !important;
  font-weight:800 !important;letter-spacing:.05em !important;
}
.sl-faq-section .sl-faq-primary{background:#c79a45 !important;border:2px solid #c79a45 !important;color:#fff !important;}
.sl-faq-section .sl-faq-secondary{background:#fff !important;border:2px solid #203b56 !important;color:#203b56 !important;}
@media(max-width:700px){
  .sl-faq-section{padding:58px 18px !important}
  .sl-faq-section .sl-faq-grid-single details{padding:0 18px !important}
  .sl-faq-section .sl-faq-grid-single summary{padding:18px 42px 18px 0 !important}
  .sl-faq-section .sl-faq-answer{padding:0 34px 18px 0 !important}
  .sl-faq-section .sl-faq-cta{display:grid !important;grid-template-columns:1fr !important}
  .sl-faq-section .sl-faq-primary,.sl-faq-section .sl-faq-secondary{width:100% !important}
}


/* v2.0.85 Sticky mega-menu hover stability */
@media (min-width: 901px) {
  .sl-nav-item,
  .sl-nav-item.has-mega,
  .sl-header-nav > li,
  .sl-header-nav > li.has-mega {
    position: relative;
  }

  /* Invisible hover bridge closes the small gap between nav item and panel. */
  .sl-nav-item.has-mega::after,
  .sl-header-nav > li.has-mega::after {
    content: "";
    position: absolute;
    left: -8px;
    right: -8px;
    top: 100%;
    height: 18px;
    background: transparent;
    pointer-events: auto;
  }

  .sl-mega-menu,
  .sl-mega-panel,
  .sl-mega {
    margin-top: 0 !important;
  }

  /* Keep panel open while parent, bridge, or panel is hovered/focused. */
  .sl-nav-item.has-mega:hover > .sl-mega-menu,
  .sl-nav-item.has-mega:focus-within > .sl-mega-menu,
  .sl-header-nav > li.has-mega:hover > .sl-mega-menu,
  .sl-header-nav > li.has-mega:focus-within > .sl-mega-menu,
  .sl-nav-item.has-mega:hover > .sl-mega-panel,
  .sl-nav-item.has-mega:focus-within > .sl-mega-panel,
  .sl-header-nav > li.has-mega:hover > .sl-mega-panel,
  .sl-header-nav > li.has-mega:focus-within > .sl-mega-panel {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  /* Prevent sticky header stacking contexts from putting panel underneath page content. */
  .sl-site-header,
  .sl-header,
  .sl-header-main,
  .sl-sticky-header {
    overflow: visible !important;
  }

  .sl-site-header,
  .sl-header,
  .sl-sticky-header {
    z-index: 9999 !important;
  }

  .sl-mega-menu,
  .sl-mega-panel,
  .sl-mega {
    z-index: 10000 !important;
  }
}


@media (min-width: 901px) {
  .sl-nav-item.has-mega.sl-mega-hover-open > .sl-mega-menu,
  .sl-nav-item.has-mega.sl-mega-hover-open > .sl-mega-panel,
  .sl-nav-item.has-mega.sl-mega-hover-open > .sl-mega,
  .sl-header-nav > li.has-mega.sl-mega-hover-open > .sl-mega-menu,
  .sl-header-nav > li.has-mega.sl-mega-hover-open > .sl-mega-panel,
  .sl-header-nav > li.has-mega.sl-mega-hover-open > .sl-mega {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
}


/* v2.0.86 Golf landing page */
.sl-golf-hero{
  position:relative;min-height:560px;display:flex;align-items:center;
  background-image:url('/wp-content/themes/solitude-links/assets/images/home-course-aerial.jpeg');
  background-size:cover;background-position:center;
}
.sl-golf-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,32,49,.86),rgba(11,32,49,.42))}
.sl-golf-hero-content{position:relative;z-index:1;max-width:820px;margin-left:auto;margin-right:auto;color:#fff;padding:110px 24px}
.sl-golf-hero-content h1{font-size:clamp(48px,7vw,78px);line-height:.98;margin:.12em 0 .22em;color:#fff}
.sl-golf-hero-content>p:last-of-type{font-size:19px;line-height:1.65;max-width:760px}
.sl-golf-hero-actions,.sl-golf-inline-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.sl-outline-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 22px;border:2px solid #203b56;color:#203b56;text-decoration:none;font-size:12px;font-weight:800;letter-spacing:.05em}
.sl-outline-light{border-color:#fff;color:#fff}
.sl-golf-intro{padding:88px 24px;background:#fff}
.sl-golf-intro-inner{text-align:center;max-width:900px}
.sl-golf-intro h2,.sl-golf-dine h2,.sl-golf-final-cta h2{font-size:clamp(34px,4.5vw,54px);line-height:1.06;margin:.15em 0 .35em}
.sl-golf-intro p:last-child{font-size:17px;line-height:1.75;color:#45515a}
.sl-golf-feature-grid-section{padding:0 24px 92px;background:#fff}
.sl-golf-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sl-golf-card{padding:34px 30px;border:1px solid rgba(25,48,66,.14);background:#f8f6f0;min-height:245px}
.sl-golf-card h3{font-size:27px;margin:.2em 0 .45em}
.sl-golf-card p:not(.sl-eyebrow){line-height:1.65;color:#4a555b}
.sl-golf-card>a{display:inline-block;margin-top:10px;color:#203b56;font-size:12px;font-weight:800;letter-spacing:.04em;text-decoration:none}
.sl-golf-split{display:grid;grid-template-columns:1fr 1fr;min-height:510px;background:#102c42;color:#fff}
.sl-golf-split-reverse .sl-golf-split-image{order:2}
.sl-golf-split-image{background-size:cover;background-position:center}
.sl-golf-simulator-image{background-image:url('/wp-content/themes/solitude-links/assets/images/trailer-simulator.jpg');background-position:center;background-size:cover}
.sl-golf-stay-image{background-image:url('/wp-content/themes/solitude-links/assets/images/solitude-inn-exterior.jpg')}
.sl-golf-split-content{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(38px,7vw,100px)}
.sl-golf-split-content h2{font-size:clamp(34px,4.5vw,52px);line-height:1.05;color:#fff;margin:.15em 0 .35em}
.sl-golf-split-content>p:last-of-type{font-size:16px;line-height:1.75;max-width:620px}
.sl-golf-dine{padding:90px 24px;text-align:center;background:#fff}
.sl-golf-dine-inner{max-width:760px}
.sl-golf-dine p:not(.sl-eyebrow){font-size:17px;line-height:1.7}
.sl-golf-final-cta{padding:90px 24px;text-align:center;background:#102c42;color:#fff}
.sl-golf-final-cta h2{color:#fff}
.sl-golf-final-cta .sl-golf-hero-actions{justify-content:center}
@media(max-width:900px){
 .sl-golf-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sl-golf-split{grid-template-columns:1fr}
 .sl-golf-split-image{min-height:360px}
 .sl-golf-split-reverse .sl-golf-split-image{order:0}
}
@media(max-width:620px){
 .sl-golf-hero{min-height:500px}
 .sl-golf-hero-content{padding:86px 20px}
 .sl-golf-feature-grid{grid-template-columns:1fr}
 .sl-golf-intro,.sl-golf-dine,.sl-golf-final-cta{padding:64px 20px}
 .sl-golf-feature-grid-section{padding:0 20px 64px}
 .sl-golf-split-content{padding:54px 22px}
 .sl-golf-split-image{min-height:290px}
 .sl-golf-hero-actions,.sl-golf-inline-actions{display:grid;grid-template-columns:1fr}
}


/* v2.0.89 Definitive mega-menu hover fix using actual Solitude menu classes */
@media (min-width:981px){

  .sl-site-header,
  .sl-site-header .sl-header-inner,
  .sl-main-nav,
  .sl-nav-list{
    overflow:visible !important;
  }

  .sl-main-nav .sl-has-submenu > .sl-submenu{
    transition:
      opacity .12s ease,
      visibility .12s ease !important;
  }

  /* JS persistent state. This applies to Weddings as well as Golf/Events/Stay/Dine. */
  .sl-main-nav .sl-has-submenu.is-hover-open > .sl-submenu,
  .sl-main-nav .sl-has-submenu.is-open > .sl-submenu,
  .sl-main-nav .sl-has-submenu:focus-within > .sl-submenu{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  /*
   * Expand the interactive area underneath every top-level item.
   * The element lives inside the menu item and bridges the pointer's trip
   * from the sticky nav bar to an absolutely-positioned mega panel.
   */
  .sl-main-nav .sl-has-submenu > a{
    position:relative !important;
  }

  .sl-main-nav .sl-has-submenu > a::after{
    content:"";
    position:absolute;
    z-index:99998;
    left:-14px;
    right:-14px;
    top:100%;
    height:28px;
    background:transparent;
  }

  .sl-main-nav .sl-has-submenu > .sl-submenu{
    z-index:100000 !important;
  }
}


/* v2.0.93 authentic Solitude trailer imagery */
.sl-golf-simulator-image{
  background-image:url('/wp-content/themes/solitude-links/assets/images/trailer-simulator.jpg');
  background-position:center;
  background-size:cover;
}
.sl-golf-hero-video-fallback,
.sl-course-hero-fallback{
  background-image:url('/wp-content/themes/solitude-links/assets/images/trailer-aerial-hero.jpg');
  background-position:center;
  background-size:cover;
}


/* v2.0.94 authentic video panels */
.sl-video-hero{position:relative;overflow:hidden}
.sl-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.sl-video-hero .sl-golf-hero-overlay{z-index:1}
.sl-video-hero .sl-golf-hero-content{z-index:2}
.sl-inner-video{position:relative;overflow:hidden;background:#152d42}
.sl-inner-video video{display:block;width:100%;height:100%;min-height:100%;object-fit:cover;object-position:center}
.sl-golf-split-image.sl-inner-video video{min-height:510px}
@media(max-width:900px){.sl-golf-split-image.sl-inner-video video{min-height:360px}}
@media(max-width:620px){.sl-golf-split-image.sl-inner-video video{min-height:290px}}
@media (prefers-reduced-motion: reduce){
  .sl-inner-video video,.sl-hero-video{display:none}
  .sl-golf-hero{background-image:url('/wp-content/themes/solitude-links/assets/images/trailer-aerial-hero.jpg');background-size:cover;background-position:center}
}


/* v2.0.95 Golf Outings polish */
.sl-outings-page .sl-inner-video video{
  object-position:center 55%;
}
.sl-outings-page .sl-section,
.sl-outings-page section{
  scroll-margin-top:120px;
}
.sl-outings-page .sl-faq-section{
  padding-top:64px !important;
  padding-bottom:64px !important;
}
.sl-outings-page .sl-faq-intro{
  margin-bottom:28px !important;
}
.sl-outings-page .sl-faq-cta{
  margin-top:22px !important;
}

/* Tighten the large vertical gaps around planning/content blocks without crushing the layout */
.sl-outings-page .sl-content-section,
.sl-outings-page .sl-planning-section,
.sl-outings-page .sl-cards-section,
.sl-outings-page .sl-section{
  padding-top:clamp(48px,5vw,70px);
  padding-bottom:clamp(48px,5vw,70px);
}

@media(max-width:700px){
  .sl-outings-page .sl-faq-section{
    padding-top:52px !important;
    padding-bottom:52px !important;
  }
}


/* v2.0.96 Weddings / Events / Bunker's video polish */

/* Weddings: keep ceremony focal point centered and slightly lower */
body .sl-weddings-page .sl-inner-video video,
body.page-weddings .sl-inner-video video{
  object-position:center 58%;
}

/* Outdoor ceremony: favor gazebo and seating area */
body .sl-outdoor-ceremony-page .sl-inner-video video,
body.page-outdoor-ceremony .sl-inner-video video{
  object-position:center 60%;
}

/* Events: banquet footage should show tables instead of ceiling */
body .sl-events-page .sl-inner-video video,
body.page-events .sl-inner-video video{
  object-position:center 62%;
}

/* Bunker's: keep people and bar activity in frame */
body .sl-bunkers-page .sl-inner-video video,
body.page-bunkers .sl-inner-video video{
  object-position:center 52%;
}

/* Give all content video panels a polished consistent minimum height */
body .sl-inner-photo.sl-inner-video,
body .sl-inner-video{
  min-height:420px;
}
body .sl-inner-photo.sl-inner-video video,
body .sl-inner-video video{
  min-height:420px;
}

/* Avoid oversized blank bands around video-led sections */
body .sl-video-feature + section,
body section + .sl-video-feature{
  margin-top:0 !important;
}

@media(max-width:900px){
  body .sl-inner-photo.sl-inner-video,
  body .sl-inner-video,
  body .sl-inner-photo.sl-inner-video video,
  body .sl-inner-video video{
    min-height:340px;
  }
}
@media(max-width:620px){
  body .sl-inner-photo.sl-inner-video,
  body .sl-inner-video,
  body .sl-inner-photo.sl-inner-video video,
  body .sl-inner-video video{
    min-height:280px;
  }
}


/* v2.0.97 video performance/layout safeguards */
.sl-inner-video,
.sl-video-hero{contain:paint}
.sl-inner-video video,
.sl-hero-video{backface-visibility:hidden;transform:translateZ(0)}
@media (prefers-reduced-motion: reduce){
  .sl-inner-video video,.sl-hero-video{animation:none!important}
}

/* v2.0.104 simulator still-to-video replacement */
.sl-inner-photo .sl-inner-video,
.sl-inner-photo.sl-inner-video{width:100%;height:100%;overflow:hidden}
.sl-inner-photo .sl-inner-video video,
.sl-inner-photo.sl-inner-video video{width:100%;height:100%;object-fit:cover;display:block}

/* v2.0.107 Real Weddings Vimeo library */
.sl-real-weddings{padding:clamp(60px,7vw,96px) 0;background:#f7f4ed}
.sl-real-weddings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:36px}
.sl-real-wedding-card{background:#fff;box-shadow:0 8px 28px rgba(0,0,0,.08)}
.sl-real-wedding-card h3{margin:0;padding:16px 18px 18px;font-size:1.15rem}
.sl-video-embed{position:relative;aspect-ratio:16/9;background:#102b3e;overflow:hidden}
.sl-video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.sl-real-weddings-actions{justify-content:center;margin-top:32px}
@media(max-width:760px){.sl-real-weddings-grid{grid-template-columns:1fr;gap:22px}}

/* v2.0.108 wedding ceremony video */
.sl-wedding-ceremony-video{overflow:hidden}
.sl-wedding-ceremony-video video{width:100%;height:100%;display:block;object-fit:cover}

/* v2.0.109 Weddings final visual polish */
.sl-wedding-ceremony-video video{object-position:center 48%}
.sl-real-weddings{content-visibility:auto;contain-intrinsic-size:900px}
.sl-real-weddings .sl-section-heading{max-width:760px;margin-left:auto;margin-right:auto;text-align:center}
@media(max-width:760px){
  .sl-wedding-ceremony-video,
  .sl-wedding-ceremony-video video{min-height:300px}
}

/* v2.0.110 Real Weddings library polish */
.sl-real-wedding-card{overflow:hidden;border-radius:2px}
.sl-real-wedding-card h3{line-height:1.3}
.sl-real-weddings-library .sl-real-weddings-grid{align-items:start}
.sl-video-embed iframe{background:#102b3e}
@media(max-width:760px){
  .sl-real-weddings{padding:52px 0}
  .sl-real-weddings-grid{margin-top:28px}
}

/* v2.0.111 Weddings subpage consistency */
.sl-wedding-subnav{padding:38px 24px;background:#102c42;color:#fff}
.sl-wedding-subnav .sl-eyebrow{color:#d4ad63}
.sl-wedding-subnav-links{display:flex;gap:10px 18px;flex-wrap:wrap;margin-top:12px}
.sl-wedding-subnav-links a{color:#fff;text-decoration:none;font-size:13px;font-weight:700;letter-spacing:.02em}
.sl-wedding-subnav-links a:hover,.sl-wedding-subnav-links a:focus{text-decoration:underline;text-underline-offset:4px}
.sl-gallery-final-cta{padding:76px 24px;text-align:center;background:#f7f4ed}
.sl-gallery-final-cta .sl-wrap{max-width:760px}
.sl-gallery-final-cta h2{font-size:clamp(34px,4vw,52px);margin:.15em 0 .35em}
.sl-gallery-final-cta .sl-actions{justify-content:center;margin-top:24px}
@media(max-width:700px){
  .sl-wedding-subnav{padding:30px 18px}
  .sl-wedding-subnav-links{display:grid;grid-template-columns:1fr;gap:8px}
}

/* v2.0.112 regional SEO content */
.sl-geo-service-area{padding:clamp(58px,7vw,88px) 24px;background:#fff;text-align:center}
.sl-geo-service-area .sl-wrap{max-width:920px}
.sl-geo-service-area h2{font-size:clamp(34px,4vw,50px);margin:.15em auto .45em;max-width:800px}
.sl-geo-service-area p{max-width:820px;margin:0 auto 16px;line-height:1.75}
.sl-geo-areas{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 10px;margin-top:28px}
.sl-geo-areas span{padding:8px 12px;background:#f3efe5;font-size:13px;font-weight:700;color:#18384d}
.sl-geo-note-section{padding:32px 24px;background:#f7f4ed}
.sl-geo-note-section .sl-wrap{max-width:980px}
.sl-geo-note{margin:0;line-height:1.7;color:#304756}

/* v2.0.113 league payment */
.sl-league-payment{padding:clamp(58px,7vw,88px) 24px;background:#f7f4ed}
.sl-league-payment .sl-wrap{max-width:1000px}
.sl-league-payment .sl-section-heading{text-align:center;max-width:760px;margin:0 auto 32px}
.sl-powr-form{background:#fff;padding:clamp(18px,3vw,34px);box-shadow:0 8px 28px rgba(0,0,0,.06)}

/* v2.0.118 Online Store / Gift Cards */
.sl-store-hero{padding:clamp(78px,9vw,130px) 24px;background:#17384f;color:#fff;text-align:center}
.sl-store-hero .sl-wrap{max-width:900px}
.sl-store-hero h1{font-size:clamp(44px,6vw,72px);margin:.15em 0 .25em;color:#fff}
.sl-store-hero p:not(.sl-eyebrow){font-size:18px;line-height:1.65;max-width:700px;margin:0 auto}
.sl-store-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:30px}
.sl-store-options{padding:clamp(60px,8vw,96px) 24px;background:#f7f4ed}
.sl-store-options .sl-wrap{max-width:1050px}
.sl-store-options .sl-section-heading{text-align:center;max-width:720px;margin:0 auto 38px}
.sl-store-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.sl-store-card{background:#fff;padding:clamp(28px,4vw,48px);border-top:3px solid #c89b45;box-shadow:0 8px 28px rgba(0,0,0,.06)}
.sl-store-card h3{font-size:30px;margin:.25em 0 .5em}
.sl-store-card p:not(.sl-eyebrow){line-height:1.7;margin-bottom:24px}
.sl-store-cta{background:#17384f;color:#fff;padding:42px 24px}
.sl-store-cta .sl-wrap{max-width:1050px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.sl-store-cta h2{color:#fff;margin:.1em 0 0}
@media(max-width:720px){.sl-store-grid{grid-template-columns:1fr}.sl-store-cta .sl-wrap{display:block}.sl-store-cta .sl-btn{margin-top:22px}}

/* v2.0.119 Gift card navigation + promo */
.sl-gift-card-promo{padding:44px 24px;background:#17384f;color:#fff}
.sl-gift-card-promo .sl-wrap{max-width:1050px;display:flex;justify-content:space-between;align-items:center;gap:28px}
.sl-gift-card-promo h2{color:#fff;margin:.1em 0 .25em}
.sl-gift-card-promo p:not(.sl-eyebrow){margin:0;max-width:650px}
@media(max-width:720px){.sl-gift-card-promo .sl-wrap{display:block}.sl-gift-card-promo .sl-actions{margin-top:22px}}

/* v2.0.122 Dedicated FAQ hubs */
.sl-faq-hub-intro{padding:64px 24px 36px;background:#f7f4ed;text-align:center}
.sl-faq-hub-wrap{max-width:920px}
.sl-faq-hub-intro h2{font-size:clamp(34px,4vw,50px);margin:.12em 0 .35em}
.sl-faq-hub-group{padding:42px 24px;background:#f7f4ed}
.sl-faq-hub-group:nth-of-type(even){background:#fff}
.sl-faq-hub-group h2{font-size:clamp(26px,3vw,36px);margin:0 0 22px}
.sl-faq-hub-list{display:grid;gap:8px}
.sl-faq-hub-item{background:#fff;border:1px solid rgba(20,45,65,.12)}
.sl-faq-hub-group:nth-of-type(even) .sl-faq-hub-item{background:#f8f5ef}
.sl-faq-hub-item summary{cursor:pointer;padding:17px 20px;font-weight:750;color:#17384f}
.sl-faq-hub-item div{padding:0 20px 18px}
.sl-faq-hub-item p{margin:0;line-height:1.72;color:#3f4e56}
.sl-faq-hub-links{padding:60px 24px;background:#17384f;color:#fff}
.sl-faq-hub-links .sl-eyebrow{color:#d2a44f}
.sl-faq-hub-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.sl-faq-hub-link-grid a{background:rgba(255,255,255,.09);border-left:3px solid #c99e4d;color:#fff;text-decoration:none;padding:18px}
.sl-faq-hub-link-grid strong,.sl-faq-hub-link-grid span{display:block}
.sl-faq-hub-link-grid span{margin-top:6px;font-size:13px;opacity:.9}
.sl-faq-hub-main-link{text-align:center;margin-top:24px}
@media(max-width:760px){.sl-faq-hub-link-grid{grid-template-columns:1fr}.sl-faq-hub-group{padding:34px 18px}}

/* v2.0.123 FAQ hub navigation polish */
.sl-faq-breadcrumbs{max-width:920px;margin:0 auto;padding:20px 24px 0;display:flex;gap:8px;flex-wrap:wrap;font-size:13px;color:#53636d}
.sl-faq-breadcrumbs a{color:#17384f;text-decoration:none;font-weight:700}
.sl-faq-breadcrumbs a:hover,.sl-faq-breadcrumbs a:focus{text-decoration:underline;text-underline-offset:3px}

/* v2.0.124 Jobs + Email Club */
.sl-jobs-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:34px 0}
.sl-jobs-cards>div{padding:24px;background:#f7f4ed;border-top:3px solid #c99e4d}
.sl-jobs-cards h3{margin-top:0}.sl-jobs-cta{margin-top:28px}.sl-small{font-size:13px;opacity:.78}
.sl-email-benefits{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:28px 0}
.sl-email-benefits span{padding:10px 14px;background:#f7f4ed;border:1px solid rgba(20,45,65,.12);font-weight:700}
.sl-email-signup-button{display:inline-block;margin:8px 0 16px}
@media(max-width:700px){.sl-jobs-cards{grid-template-columns:1fr}}

/* v2.0.125 Sitewide Email Club footer CTA */
.sl-footer-email-club{background:#f2eee5;padding:34px 24px;border-top:1px solid rgba(23,56,79,.10)}
.sl-footer-email-club-inner{max-width:1120px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.sl-footer-email-club h2{margin:.1em 0 .2em;font-size:clamp(28px,3.2vw,40px);color:#17384f}
.sl-footer-email-club p:not(.sl-eyebrow){margin:0;color:#42545f}
@media(max-width:760px){
  .sl-footer-email-club-inner{display:block}
  .sl-footer-email-club .sl-primary{display:inline-block;margin-top:20px}
}

/* v2.0.130 Department-specific Job Application */
.sl-job-application{padding:clamp(64px,8vw,96px) 24px;background:#f7f4ed}
.sl-job-application-wrap{max-width:980px}
.sl-job-application .sl-section-heading{text-align:center;max-width:760px;margin:0 auto 34px}
.sl-job-form{background:#fff;padding:clamp(24px,4vw,44px);box-shadow:0 10px 32px rgba(18,43,61,.08);border-top:3px solid #c99e4d}
.sl-job-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.sl-field{display:flex;flex-direction:column;gap:7px}
.sl-field-full{grid-column:1/-1}
.sl-field label{font-weight:750;color:#17384f}
.sl-field input,.sl-field select,.sl-field textarea{width:100%;border:1px solid #cbd3d8;background:#fff;padding:12px 13px;font:inherit;color:#25353e}
.sl-field textarea{resize:vertical}
.sl-field small{font-size:12px;color:#66757d}
.sl-job-checkboxes{display:flex;flex-wrap:wrap;gap:10px 18px;padding:12px 0}
.sl-job-checkboxes label,.sl-job-certify{display:flex;align-items:flex-start;gap:8px;font-weight:500}
.sl-job-checkboxes input,.sl-job-certify input{width:auto;margin-top:3px}
.sl-job-submit{border:0;cursor:pointer;margin-top:26px}
.sl-form-success,.sl-form-error{padding:16px 18px;margin-bottom:22px}
.sl-form-success{background:#edf6ef;border-left:4px solid #497d54;color:#254a2c}
.sl-form-error{background:#fff1ef;border-left:4px solid #a4463c;color:#742f29}
@media(max-width:720px){.sl-job-form-grid{grid-template-columns:1fr}.sl-field-full{grid-column:auto}}

/* v2.0.131 CTA button consistency */
main a.sl-primary,
main a.sl-btn,
main a.sl-gold-button,
main a.sl-blue-button,
main a.sl-outline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.4em;
  text-decoration:none;
  font-weight:800;
  letter-spacing:.035em;
  line-height:1.2;
  cursor:pointer;
}
main a.sl-primary,
main a.sl-btn-navy{
  padding:13px 18px;
  background:#17384f;
  color:#fff;
  border:1px solid #17384f;
}
main a.sl-primary:hover,
main a.sl-primary:focus,
main a.sl-btn-navy:hover,
main a.sl-btn-navy:focus{
  background:#0f2b40;
  color:#fff;
}
main a.sl-gold-button{
  padding:13px 18px;
  background:#c99e4d;
  color:#fff;
  border:1px solid #c99e4d;
}
main a.sl-outline{
  padding:13px 18px;
  background:transparent;
  color:#17384f;
  border:1px solid #17384f;
}


/* v2.0.135 FAQ typography normalization */
.sl-faq-hub-item summary,
.sl-faq-section .sl-faq-grid-single summary,
.sl-course-faq-section .sl-faq-grid-single summary{
  font-family:Arial,Helvetica,sans-serif !important;
  font-weight:700 !important;
  font-stretch:normal !important;
  font-style:normal !important;
  letter-spacing:0 !important;
  line-height:1.45 !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* v2.0.141 Bridal Tasting dedicated template */
.sl-bridal-page{background:#f7f4ed;color:#242826}
.sl-bridal-hero{position:relative;min-height:460px;display:flex;align-items:center;background:url('../images/outdoor-ceremony-couple.jpg') center 44%/cover no-repeat;color:#fff;overflow:hidden}
.sl-bridal-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,34,50,.92) 0%,rgba(13,34,50,.70) 44%,rgba(13,34,50,.20) 78%)}
.sl-bridal-hero-copy{position:relative;z-index:1;padding:76px 24px;width:100%;box-sizing:border-box}
.sl-bridal-hero h1{color:#fff;font-size:clamp(3rem,6vw,5rem);line-height:1;margin:.12em 0 .25em;max-width:760px}
.sl-bridal-hero-copy>p:not(.sl-eyebrow){font-size:clamp(1.05rem,1.7vw,1.3rem);line-height:1.6;max-width:730px;margin:0 0 28px;color:rgba(255,255,255,.95)}
.sl-gold{color:#c99d47!important}
.sl-bridal-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.sl-btn{display:inline-flex!important;align-items:center;justify-content:center;min-height:48px;padding:13px 22px!important;border:2px solid transparent!important;text-decoration:none!important;text-transform:uppercase;font-size:.76rem!important;font-weight:800!important;letter-spacing:.07em!important;line-height:1.2!important;box-sizing:border-box;transition:transform .15s ease,background-color .15s ease,color .15s ease,border-color .15s ease}
.sl-btn:hover{transform:translateY(-1px);text-decoration:none!important}
.sl-btn-gold{background:#c99d47!important;border-color:#c99d47!important;color:#102b40!important}
.sl-btn-gold:hover{background:#dab15f!important;border-color:#dab15f!important;color:#102b40!important}
.sl-btn-navy{background:#193146!important;border-color:#193146!important;color:#fff!important}
.sl-btn-navy:hover{background:#24465f!important;border-color:#24465f!important;color:#fff!important}
.sl-btn-light{background:transparent!important;border-color:rgba(255,255,255,.82)!important;color:#fff!important}
.sl-btn-light:hover{background:#fff!important;border-color:#fff!important;color:#193146!important}
.sl-btn-wide{width:100%;margin-top:22px}
.sl-bridal-content{padding:clamp(54px,7vw,88px) 24px}
.sl-bridal-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.75fr);gap:clamp(28px,4vw,52px);align-items:start}
.sl-bridal-main{display:grid;gap:28px}
.sl-bridal-card,.sl-bridal-book-card{background:#fff;border:1px solid rgba(25,49,70,.12);box-shadow:0 14px 38px rgba(25,49,70,.07);padding:clamp(28px,4vw,44px)}
.sl-bridal-card h2,.sl-bridal-book-card h2,.sl-bridal-payment h2{margin:.15em 0 .55em;font-size:clamp(1.8rem,3vw,2.5rem)}
.sl-bridal-card h3{margin:1.35em 0 .35em;color:#193146}
.sl-bridal-card p,.sl-bridal-book-card p,.sl-bridal-payment p{line-height:1.72}
.sl-bridal-book-card{background:#193146;color:#fff}
.sl-bridal-book-card h2{color:#fff}.sl-bridal-book-card p{color:rgba(255,255,255,.92)}
.sl-bridal-sidebar{position:sticky;top:112px}
.sl-bridal-date-card{background:#f2ece1}
.sl-bridal-capacity-callout{margin:18px 0 8px;padding:14px 16px;background:#193146;color:#fff;border-left:4px solid #c99d47;font-size:.94rem;line-height:1.35}.sl-bridal-capacity-callout strong{color:#fff}
.sl-bridal-year-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0}
.sl-bridal-year{background:#fff;border-top:4px solid #c99d47;padding:22px}
.sl-bridal-year h3{font-size:1.45rem;margin:0 0 10px;color:#193146}.sl-bridal-year ul{margin:0;padding-left:18px}.sl-bridal-year li{margin:7px 0}
.sl-bridal-facts{margin:20px 0 0;border-top:1px solid rgba(25,49,70,.16);border-bottom:1px solid rgba(25,49,70,.16)}
.sl-bridal-facts>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-top:1px solid rgba(25,49,70,.09)}.sl-bridal-facts>div:first-child{border-top:0}
.sl-bridal-facts dt{color:#64727c}.sl-bridal-facts dd{margin:0;text-align:right;font-weight:800;color:#193146}
.sl-bridal-payment{scroll-margin-top:110px;background:#193146;color:#fff;padding:clamp(56px,7vw,88px) 24px}
.sl-bridal-payment-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr);gap:clamp(30px,5vw,64px);align-items:start}
.sl-bridal-payment h2{color:#fff;font-size:clamp(2.2rem,4vw,3.1rem)}.sl-bridal-payment-copy p{color:rgba(255,255,255,.92)}
.sl-bridal-price{margin-top:28px;padding:22px;border-left:4px solid #c99d47;background:rgba(255,255,255,.07);display:flex;flex-direction:column;gap:4px}.sl-bridal-price strong{font-size:1.75rem;color:#fff}.sl-bridal-price span{color:rgba(255,255,255,.82)}
.sl-bridal-payment-form{background:#f7f4ed;padding:clamp(22px,3vw,34px);min-height:500px;color:#242826}.sl-bridal-payment-form .powr-form-builder{width:100%;max-width:590px;margin:0 auto;min-height:460px}
.sl-bridal-bottom-actions{padding:38px 24px 64px}.sl-bridal-actions-center{justify-content:center}
@media(max-width:900px){.sl-bridal-grid,.sl-bridal-payment-grid{grid-template-columns:1fr}.sl-bridal-sidebar{position:static}.sl-bridal-hero{min-height:400px;background-position:58% center}}
@media(max-width:600px){.sl-bridal-hero-copy{padding:58px 18px}.sl-bridal-hero h1{font-size:2.9rem}.sl-bridal-content,.sl-bridal-payment{padding-left:18px;padding-right:18px}.sl-bridal-actions{flex-direction:column;align-items:stretch}.sl-btn{width:100%}.sl-bridal-year-grid{grid-template-columns:1fr}.sl-bridal-facts>div{flex-direction:column;gap:3px}.sl-bridal-facts dd{text-align:left}.sl-bridal-card,.sl-bridal-book-card{padding:24px}}
/* v2.0.150 Accessibility foundation */

.sl-skip-link {
  position: fixed;
  left: 16px;
  top: -100px;
  z-index: 999999;
  padding: 12px 18px;
  background: #ffffff;
  color: #193146;
  border: 2px solid #193146;
  font-weight: 700;
  text-decoration: none;
}

.sl-skip-link:focus {
  top: 16px;
}

/* Highly visible keyboard focus */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid currentColor;
  outline-offset: 4px;
}

/* Never communicate disabled/required/error states by color alone */
[aria-invalid="true"] {
  outline: 3px solid currentColor;
  outline-offset: 2px;
}

/* Respect operating-system motion preferences */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  video[autoplay] {
    visibility: visible;
  }
}

/* Improve minimum interactive target size */
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.sl-primary,
.sl-gold-button,
.sl-mobile-cta a {
  min-height: 44px;
}