/* Content requested in October 2026. No social/feed selectors are changed. */
.lsg-kicker { color:var(--maroon); font-weight:700; font-size:.95rem; letter-spacing:.16em; text-transform:uppercase; margin-bottom:.7rem; }
.lsg-about-update h2 { font-size:clamp(2.5rem,4.5vw,4.5rem); max-width:20ch; }
.lsg-about-update .about-copy { font-size:clamp(1.1rem,1.55vw,1.4rem); }
.lsg-about-update .about-inner { padding-block:3.5rem; }
.lsg-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:1rem 1.5rem; margin-top:1.5rem; }
.lsg-button-outline { background:transparent; color:var(--maroon); box-shadow:inset 0 0 0 1px var(--maroon); }
.lsg-button-outline:hover { background:var(--blue); color:var(--white); }
.lsg-text-link { display:inline-block; font-weight:700; text-underline-offset:.25em; padding-block:.65rem; }
.lsg-text-link:hover { color:var(--maroon); }
.lsg-fine-print { font-size:1rem; line-height:1.5; }
.lsg-membership-teaser { padding-block:3.5rem; }
.lsg-membership-teaser .ruled-heading { font-size:clamp(2.4rem,4.1vw,4rem); }
.lsg-membership-teaser .lsg-kicker { text-align:center; }
.lsg-membership-teaser .lsg-fine-print { text-align:center; margin-top:1.2rem; }
.lsg-teaser-plans { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; margin-top:1.5rem; }
.lsg-teaser-plan { padding:1.5rem; background:#fffaf3a8; border-top:3px solid var(--maroon); }
.lsg-teaser-plan h3 { font-size:1.9rem; margin-bottom:.6rem; }
.lsg-teaser-plan p { font-size:1.25rem; }
.lsg-promotions-update .promotions-inner { grid-template-columns:minmax(260px,.85fr) 1.3fr; gap:clamp(2rem,5vw,5rem); }
.lsg-offer-graphic { width:100%; max-width:480px; padding:2.5rem 1.5rem; position:relative; overflow:hidden; color:var(--beige); background:var(--blue) url("assets/terrain.svg") center/cover; border:5px solid var(--beige); outline:1px solid var(--maroon); box-shadow:0 12px 30px #140a0330; text-align:center; }
.lsg-offer-graphic::before,.lsg-offer-graphic::after { content:"★"; position:absolute; color:#e8d8c420; font-size:11rem; line-height:1; pointer-events:none; }
.lsg-offer-graphic::before { top:-2rem; right:-2rem; }
.lsg-offer-graphic::after { bottom:-3rem; left:-3rem; }
.lsg-offer-brand { font-family:Playball,cursive; font-size:2.2rem; }
.lsg-offer-number { font-family:var(--heading); font-size:clamp(6rem,12vw,10.5rem); line-height:1.05; margin-top:1rem; letter-spacing:-.04em; }
.lsg-offer-number span { font-size:.53em; vertical-align:top; line-height:1.8; }
.lsg-offer-graphic .lsg-offer-title { color:var(--beige); font-size:clamp(1.7rem,2.7vw,2.5rem); }
.lsg-offer-tag { margin-top:.8rem; text-transform:uppercase; letter-spacing:.17em; font-size:.9rem; }
.lsg-offer-button { background:var(--beige); color:var(--maroon); margin-top:1.8rem; position:relative; }
.lsg-offer-button:hover { background:var(--white); color:var(--blue); }
.lsg-promotion-details .ruled-heading { justify-content:flex-start; text-align:left; }
.lsg-promotion-details .ruled-heading::before { display:none; }
.lsg-promo-lead { font-family:var(--heading); color:var(--maroon); font-size:1.65rem; margin:1.2rem 0 .6rem; text-transform:uppercase; }
.lsg-promotion-details>p { max-width:44ch; font-size:1.3rem; }
.lsg-promotion-details .lsg-actions { justify-content:flex-start; }
.lsg-coming-soon { margin-top:2rem; border-top:1px solid #82121450; padding-top:1.5rem; }
.lsg-coming-soon h3 { font-size:1.8rem; margin-bottom:.6rem; }
.lsg-coming-soon p { font-size:1.2rem; max-width:44ch; }
.lsg-detail-page { background:var(--beige) url("assets/terrain.svg") center/100% auto; color:var(--blue); padding:3.5rem 0 4rem; }
.lsg-detail-page .lsg-page-content { background:none; padding:0; }
.editor-styles-wrapper .lsg-page-content { background:var(--beige); color:var(--blue); padding:2rem; }
.lsg-detail-page .lsg-detail-inner { width:min(100% - 5rem,1280px); }
.lsg-detail-page .lsg-page-title { font-size:1rem; font-family:var(--body); font-weight:700; text-transform:uppercase; letter-spacing:.2em; color:var(--maroon); margin-bottom:1.5rem; }
.lsg-detail-page h2 { font-size:clamp(2.3rem,4.5vw,4rem); }
.lsg-detail-page p { font-size:1.3rem; line-height:1.5; }
.lsg-detail-page p+p { margin-top:1rem; }
.lsg-philosophy { max-width:950px; }
.lsg-philosophy h2 { margin-bottom:1.5rem; }
.lsg-philosophy .lsg-intro { font-size:1.55rem; }
.lsg-terms-strip { border-left:4px solid var(--maroon); padding:.8rem 1.3rem; margin-top:1.5rem; }
.lsg-terms-strip strong { display:block; font-size:1.35rem; }
.lsg-terms-strip p { font-size:1.15rem; }
.lsg-plans-section { margin-top:4rem; }
.lsg-membership-plans { display:grid; grid-template-columns:1fr 1fr; gap:2rem; align-items:stretch; margin-top:2rem; }
.lsg-membership-plan { background:var(--white); border-top:7px solid var(--maroon); padding:clamp(1.5rem,3vw,2.8rem); display:flex; flex-direction:column; }
.lsg-membership-plan h3 { font-size:clamp(2rem,3.2vw,3.2rem); }
.lsg-membership-plan h4 { font-size:1.75rem; margin:1.5rem 0 .65rem; }
.lsg-membership-plan-premium { background:var(--blue); color:var(--white); border-top-color:var(--maroon); }
.lsg-membership-plan-premium .lsg-kicker { color:var(--beige); }
.lsg-detail-page .lsg-plan-price { font-family:var(--heading); font-size:clamp(2.5rem,4vw,3.8rem); line-height:1.2; margin-top:1rem; color:var(--maroon); }
.lsg-detail-page .lsg-plan-price span { font-family:var(--body); font-size:1.1rem; }
.lsg-membership-plan-premium .lsg-plan-price { color:var(--beige); }
.lsg-detail-page .lsg-plan-term { font-size:1rem; text-transform:uppercase; letter-spacing:.1em; margin:.4rem 0 1.3rem; }
.lsg-benefit-list { padding-left:1.3rem; margin:1rem 0 1.8rem; font-size:1.2rem; line-height:1.45; }
.lsg-benefit-list li+li { margin-top:.7rem; }
.lsg-membership-plan .button { margin-top:auto; align-self:flex-start; }
.lsg-house-credit { display:grid; grid-template-columns:1fr 1.1fr; gap:3rem; padding:3rem 0; margin-top:2rem; border-bottom:1px solid #82121440; }
.lsg-house-credit h2 { margin-bottom:1.2rem; }
.lsg-house-credit h3 { font-size:1.8rem; }
.lsg-house-credit .lsg-fine-print { font-size:1.05rem; }
.lsg-page-cta { text-align:center; padding:3rem 1rem 0; }
.lsg-page-cta p { margin:1rem 0 1.5rem; }
.lsg-specials-intro { max-width:900px; }
.lsg-specials-status { font-family:var(--heading); font-size:2rem!important; color:var(--maroon); text-transform:uppercase; margin:1.5rem 0 .5rem; }
.lsg-specials-intro .button { margin-top:1.5rem; }
.lsg-specials-grid { display:grid; grid-template-columns:1fr 1fr; gap:2rem; margin-top:3rem; }
.lsg-special-card { padding:2rem; background:var(--white); border-top:4px solid var(--maroon); }
.lsg-special-card h2 { font-size:2.3rem; margin-bottom:1rem; }
.editor-styles-wrapper .lsg-membership-plan { height:100%; }
@media(max-width:1000px) {
 .lsg-about-update .about-copy { max-width:65%; }
 .lsg-promotions-update .promotions-inner { grid-template-columns:minmax(230px,.85fr) 1.15fr; gap:2rem; }
 .lsg-membership-plan { padding:1.5rem; }
}
@media(max-width:800px) {
 .lsg-about-update .about-copy { max-width:none; }
 .lsg-teaser-plans,.lsg-membership-plans,.lsg-specials-grid,.lsg-house-credit { grid-template-columns:1fr; }
 .lsg-house-credit { gap:1.5rem; }
 .lsg-promotions-update .promotions-inner { grid-template-columns:1fr; }
 .lsg-offer-graphic { margin-inline:auto; }
 .lsg-offer-number { font-size:9rem; }
 .lsg-promotion-details .ruled-heading { font-size:2.8rem; }
}
@media(max-width:560px) {
 .lsg-detail-page .lsg-detail-inner { width:calc(100% - 2.5rem); }
 .lsg-about-update .about-inner { padding-block:2.5rem; }
 .lsg-membership-teaser { padding:2.5rem 1.25rem; }
 .lsg-membership-teaser .ruled-heading::before,.lsg-membership-teaser .ruled-heading::after { display:none; }
 .lsg-actions { align-items:stretch; flex-direction:column; gap:.8rem; }
 .lsg-actions>* { text-align:center; }
 .lsg-offer-graphic { padding:2rem 1rem; }
 .lsg-offer-brand { font-size:2rem; }
 .lsg-offer-number { font-size:8rem; }
 .lsg-special-card { padding:1.5rem; }
}

/* Shared type sizes for the site content, with the homepage hero kept distinct. */
:root {
 --lsg-text:clamp(1.125rem,1.4vw,1.25rem);
 --lsg-heading:clamp(2rem,3.5vw,3.5rem);
 --lsg-card-heading:clamp(1.5rem,2.2vw,2rem);
 --lsg-eyebrow:.875rem;
}
.about h2,.experiences .section-heading,.players .section-heading,.membership .ruled-heading,
.promotions .ruled-heading,.lsg-plans-section>.section-heading,.lsg-detail-page h2,
.lsg-standard-content>.wp-block-post-title,.lsg-standard-content>h1,.lsg-standard-content h2 { font-size:var(--lsg-heading); }
.lsg-teaser-plan h3,.lsg-membership-plan h3,.lsg-house-credit h3,.lsg-special-card h2,
.lsg-coming-soon h3,.lsg-map-contact h2,.experiences .card-body h3,.players .player-copy h3,.lsg-standard-content h3 { font-size:var(--lsg-card-heading); }
.about-copy,:is(.about-copy,.lsg-teaser-plan,.lsg-promotion-details,.lsg-coming-soon,.lsg-detail-page,.lsg-map-contact) p,
.lsg-benefit-list,.lsg-map-contact address,.lsg-standard-content p,
.experiences .card-body>p:not(.card-subtitle),.players .player-copy p { font-size:var(--lsg-text); line-height:1.5; }
.lsg-detail-page .lsg-intro,.lsg-terms-strip p { font-size:var(--lsg-text); }
.lsg-kicker,.lsg-detail-page .lsg-kicker,.eyebrow,.lsg-detail-page .lsg-page-title,
.lsg-detail-page .lsg-plan-term,.lsg-map-contact .lsg-map-kicker,.experiences .card-subtitle {
 font-family:var(--body); font-size:var(--lsg-eyebrow); font-weight:700; line-height:1.5; letter-spacing:.16em; text-transform:uppercase;
}
.lsg-promotion-details .lsg-promo-lead { font-size:var(--lsg-card-heading); }
.lsg-detail-page .lsg-plan-price { font-size:var(--lsg-heading); }
.lsg-detail-page .lsg-plan-price span,.lsg-fine-print,.lsg-detail-page .lsg-fine-print { font-size:1rem; }
.lsg-page-title { margin-top:0; }

/* Preserve readable copy if the decorative promotion photograph is unavailable. */
.promotions { background-color:var(--beige); }
/* A crisp dark edge separates the white hero letters from photo highlights. */
.hero-copy h1,.hero-copy>p {
 text-shadow:-1px -1px 0 #0a1123,1px -1px 0 #0a1123,-1px 1px 0 #0a1123,1px 1px 0 #0a1123,0 2px 10px #0006;
}

/* The supplied artwork is a normal replaceable image block linked to signup. */
.lsg-promo-flyer { width:100%; max-width:480px; margin-inline:auto; box-shadow:0 12px 30px #140a0330; }
.lsg-promo-flyer-link { display:block; overflow:hidden; text-decoration:none; }
.lsg-promo-flyer img { width:100%; height:auto; aspect-ratio:1121/1216; object-fit:cover; object-position:top; }
.lsg-promo-flyer img.lsg-insider-logo { aspect-ratio:1; object-fit:contain; }
.lsg-promo-flyer-link:focus-visible { outline-offset:6px; }

/* Interior pages use the horizontal brand and the established navigation. */
.lsg-internal-header {
 position:relative; isolation:isolate; background:var(--blue); color:var(--beige); border-top:5px solid var(--maroon);
}
.lsg-internal-image { position:absolute; inset:0; z-index:-2; }
.lsg-internal-image img { width:100%; height:100%; object-fit:cover; object-position:center 46%; }
.lsg-internal-header::after { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(90deg,rgba(10,17,35,.88),rgba(10,17,35,.76)); }
.editor-styles-wrapper .wp-block.lsg-internal-image { position:absolute!important; inset:0; z-index:-2; }
.lsg-internal-header-inner { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; min-height:240px; padding-block:2rem; }
.lsg-internal-brand { display:block; width:250px; max-width:58%; flex-shrink:0; }
.lsg-internal-brand img { width:100%; height:auto; }
.lsg-internal-tagline { font-family:var(--body); font-weight:700; font-size:.95rem; letter-spacing:.18em; text-transform:uppercase; text-align:right; }
.editor-styles-wrapper .lsg-internal-tagline { color:var(--beige); }
@media(max-width:800px) {
 .lsg-internal-header-inner { min-height:200px; padding-block:1.5rem; }
 .lsg-internal-brand { width:210px; }
 .lsg-internal-header+.navigation .mobile-name { display:none; }
 .lsg-internal-header+.navigation .menu-toggle { margin-right:auto; }
}
@media(max-width:560px) {
 .lsg-internal-header-inner { width:calc(100% - 2.5rem); min-height:180px; gap:1rem; }
 .lsg-internal-brand { width:180px; max-width:57%; }
 .lsg-internal-tagline { font-size:.75rem; letter-spacing:.12em; max-width:12ch; }
}

/* A two-color focus ring stays visible on the light and dark brand surfaces. */
body :is(a,button,input,select,textarea,[tabindex]):focus-visible {
 outline:3px solid var(--blue); outline-offset:3px; box-shadow:0 0 0 3px var(--white);
}
.lsg-internal-header :focus-visible,.dark-section :focus-visible,.navigation :focus-visible,
footer :focus-visible,.lsg-membership-plan-premium :focus-visible,.mobile-menu :focus-visible {
 outline-color:var(--white); box-shadow:0 0 0 3px var(--blue);
}
.lsg-standard-content a:not(.button),.lsg-detail-page p a { text-underline-offset:.2em; }
.nav-links>a,footer nav a { min-height:44px; display:flex; align-items:center; }
.lsg-footer-contact { font-family:var(--heading); font-size:1rem; text-transform:uppercase; line-height:1.5; }
.lsg-footer-contact address { margin-bottom:.5rem; }
.lsg-standard-content,.lsg-detail-inner,.dialog-shell { overflow-wrap:break-word; }
.lsg-standard-content .wp-block-query-title { font-size:var(--lsg-heading); margin-bottom:2rem; }
@media(forced-colors:active) {
 body :is(a,button,input,select,textarea,[tabindex]):focus-visible { outline:3px solid Highlight; box-shadow:none; }
}

/* Keep all About copy on solid beige; let the illustration follow its height. */
@media(max-width:800px) {
 .about { display:flex; flex-direction:column; min-height:0; }
 .about::after { display:none; }
 .about>.about-inner { order:0; flex:none; min-width:0; padding-block:2.5rem; background:var(--beige); }
 .about>.about-image {
  order:1; flex:none; position:relative; inset:auto; z-index:auto;
  width:100%; height:clamp(200px,45vw,340px); margin:0;
 }
 .about>.about-image img { height:100%; object-fit:cover; object-position:center 55%; }
 .about .about-copy { max-width:none; }
 .about h2 { white-space:normal; max-width:100%; }
}
