/*
Theme Name: Stargazing Atlas V13.18 Regions Grid Polish
Description: Astra child theme for Stargazing Atlas with polished hero, logo, separated feature cards, and state image cards.
Author: Stargazing Atlas
Template: astra
Version: 13.18
Text Domain: stargazing-atlas-v1318
*/

:root{
  --sa-night:#050816;
  --sa-deep:#081327;
  --sa-panel:#0B1426;
  --sa-card:#0E1B33;
  --sa-gold:#D9A441;
  --sa-gold-2:#F3C55B;
  --sa-violet:#B468FF;
  --sa-blue:#38A8FF;
  --sa-green:#28C76F;
  --sa-white:#fff;
  --sa-muted:#B8C4D8;
  --sa-paper:#F4F7FB;
  --sa-ink:#101827;
  --sa-line:rgba(255,255,255,.14);
  --sa-shadow:0 34px 95px rgba(0,0,0,.30);
}

/* Astra homepage reset */
.home .site-header,
.home .ast-primary-header-bar,
.home .main-header-bar,
.home .site-footer,
.home .ast-footer-copyright,
.home .ast-footer-overlay,
.home .entry-header,
.home .comments-area,
.home .post-thumb-img-content{
  display:none!important;
}
.home #content,
.home .site-content,
.home .ast-container,
.home .content-area,
.home .site-main,
.home article,
.home .entry-content{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  display:block!important;
  float:none!important;
}
body.home{background:var(--sa-paper);}
.sa-v532,.sa-v532 *{box-sizing:border-box;}
.sa-v532{
  font-family:Inter,"Plus Jakarta Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:var(--sa-paper);
  color:var(--sa-ink);
  overflow:hidden;
}
.sa-v532 a{text-decoration:none!important;}

/* Header */
.sa-header{
  background:#050816;
  color:#fff;
  min-height:102px;
  display:flex;
  align-items:center;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.sa-header-inner{
  width:100%;
  max-width:1320px;
  margin:0 auto;
  padding:0 42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
}
.sa-brand{
  display:flex;
  align-items:center;
  gap:15px;
  color:#fff!important;
  flex:0 0 auto;
}
.sa-brand-img{
  width:64px;
  height:64px;
  display:block;
  flex:0 0 auto;
}
.sa-brand-text{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  line-height:1;
}
.sa-brand-main{
  display:block;
  color:#fff;
  font-size:26px;
  font-weight:950;
  letter-spacing:.055em;
}
.sa-brand-sub{
  display:block;
  width:100%;
  text-align:center;
  color:var(--sa-gold);
  font-size:14px;
  font-weight:900;
  letter-spacing:.34em;
  margin-top:8px;
  padding-left:.34em;
}
.sa-menu{
  margin-left:auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:34px;
}
.sa-menu a{
  color:#fff!important;
  font-weight:900;
  font-size:15px;
  white-space:nowrap;
  line-height:1;
}
.sa-menu a:hover{color:var(--sa-gold-2)!important;}

/* Hero */
.sa-hero{
  position:relative;
  color:#fff;
  min-height:830px;
  background:
    linear-gradient(90deg, rgba(5,8,22,.48) 0%, rgba(5,8,22,.30) 38%, rgba(5,8,22,.06) 72%, rgba(5,8,22,.06) 100%),
    linear-gradient(180deg, rgba(5,8,22,.02) 0%, rgba(5,8,22,.01) 58%, rgba(5,8,22,.58) 100%),
    url('assets/hero-stargazing-v532.webp') center center/cover no-repeat;
}
.sa-hero-content{
  max-width:1320px;
  margin:0 auto;
  padding:128px 42px 235px;
  position:relative;
  z-index:2;
}
.sa-kicker{
  color:var(--sa-gold-2);
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:16px;
  font-weight:950;
  margin-bottom:26px;
  text-shadow:0 10px 28px rgba(0,0,0,.65);
}
.sa-hero h1{
  color:#fff;
  max-width:760px;
  margin:0 0 30px;
  font-size:clamp(58px,6.3vw,92px);
  line-height:1.03;
  letter-spacing:-.055em;
  font-weight:950;
  text-shadow:0 18px 55px rgba(0,0,0,.72);
}
.sa-hero p{
  max-width:710px;
  color:#fff;
  margin:0 0 38px;
  font-size:21px;
  line-height:1.58;
  text-shadow:0 14px 40px rgba(0,0,0,.74);
}
.sa-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;}
.sa-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-width:250px;
  min-height:62px;
  padding:18px 28px;
  border-radius:7px;
  font-size:16px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.01em;
  transition:.2s ease;
}
.sa-btn-gold{color:#07111f!important;background:var(--sa-gold);box-shadow:0 24px 48px rgba(217,164,65,.26);}
.sa-btn-gold:hover{background:var(--sa-gold-2);transform:translateY(-2px);}
.sa-btn-outline{color:#fff!important;border:1px solid rgba(255,255,255,.48);background:rgba(5,8,22,.32);backdrop-filter:blur(10px);}
.sa-btn-outline:hover{border-color:var(--sa-gold-2);color:var(--sa-gold-2)!important;}

/* Four hero cards */
.sa-feature-wrap{
  position:relative;
  z-index:6;
  margin-top:-120px;
  padding:0 42px;
}
.sa-features{
  max-width:1240px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
}
.sa-feature{
  min-height:255px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:14px;
  background:linear-gradient(180deg, rgba(15,29,51,.97), rgba(7,15,30,.99));
  box-shadow:0 24px 58px rgba(0,0,0,.28);
  padding:34px 32px 30px;
  color:#fff;
}
.sa-feature-icon{
  width:66px;
  height:66px;
  border-radius:50%;
  display:grid;
  place-items:center;
  margin:0 0 24px 0;
  border:1px solid rgba(217,164,65,.50);
  color:var(--sa-gold-2);
  background:rgba(217,164,65,.10);
  font-size:28px;
}
.sa-feature:nth-child(2) .sa-feature-icon{color:#5AE08A;border-color:rgba(40,199,111,.46);background:rgba(40,199,111,.12);}
.sa-feature:nth-child(3) .sa-feature-icon{color:#DF88FF;border-color:rgba(180,104,255,.48);background:rgba(180,104,255,.13);}
.sa-feature:nth-child(4) .sa-feature-icon{color:#6FC9FF;border-color:rgba(56,168,255,.48);background:rgba(56,168,255,.13);}
.sa-feature h3{
  color:#fff;
  font-size:21px;
  line-height:1.2;
  margin:0 0 14px;
  padding:0;
  font-weight:950;
}
.sa-feature p{
  color:#d8e0ec;
  font-size:15px;
  line-height:1.65;
  margin:0 0 20px;
  padding:0;
}
.sa-feature a{
  display:inline-block;
  color:var(--sa-gold-2)!important;
  font-size:16px;
  line-height:1.2;
  font-weight:950;
}

/* Content sections */
.sa-section{
  max-width:1320px;
  margin:0 auto;
  padding:86px 42px;
}
.sa-section-dark{
  background:#050816;
  color:#fff;
  padding:92px 42px;
}
.sa-inner{max-width:1320px;margin:0 auto;}
.sa-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  margin-bottom:34px;
}
.sa-title{
  color:#101827;
  margin:0;
  font-size:38px;
  font-weight:950;
  letter-spacing:-.04em;
}
.sa-title:after{
  content:"";
  display:block;
  width:48px;
  height:4px;
  background:var(--sa-gold);
  margin-top:14px;
}
.sa-section-dark .sa-title{color:#fff;}
.sa-sub{
  max-width:680px;
  color:#64748b;
  line-height:1.7;
  margin:13px 0 0;
  font-size:16px;
}
.sa-section-dark .sa-sub{color:#B8C4D8;}
.sa-small-link{color:#2563eb!important;font-weight:950;}

.sa-state-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
}
.sa-state-card{
  position:relative;
  min-height:210px;
  padding:24px;
  overflow:hidden;
  border-radius:16px;
  color:#fff!important;
  background:
    linear-gradient(180deg, rgba(5,8,22,.10), rgba(5,8,22,.93)),
    var(--state-img) center/cover no-repeat;
  box-shadow:0 18px 45px rgba(5,8,22,.20);
  transition:.2s ease;
}
.sa-state-card:hover{transform:translateY(-3px);}
.sa-state-card small{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(217,164,65,.17);
  border:1px solid rgba(217,164,65,.35);
  color:#F5D483;
  font-weight:900;
}
.sa-state-card strong{
  position:absolute;
  left:24px;
  bottom:50px;
  color:#fff;
  font-size:24px;
  font-weight:950;
}
.sa-state-card span{
  position:absolute;
  left:24px;
  bottom:24px;
  color:#d0dae8;
  font-size:14px;
}

.sa-guides{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.sa-guide{
  background:#fff;
  border-radius:16px;
  overflow:hidden;
  border:1px solid rgba(15,23,42,.06);
  box-shadow:0 16px 45px rgba(15,23,42,.08);
}
.sa-guide-thumb{
  display:block;
  height:198px;
  background:
    linear-gradient(180deg,rgba(5,8,22,.05),rgba(5,8,22,.78)),
    url('assets/hero-stargazing-v532.webp') center/cover no-repeat;
}
.sa-guide-body{padding:22px;}
.sa-badge{
  display:inline-block;
  background:var(--sa-violet);
  color:#fff;
  font-size:11px;
  font-weight:950;
  padding:6px 9px;
  border-radius:5px;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:13px;
}
.sa-guide h3{margin:0 0 10px;font-size:21px;line-height:1.25;}
.sa-guide h3 a{color:var(--sa-ink)!important;}
.sa-guide p{font-size:14px;line-height:1.65;color:#475569;margin:0 0 16px;}
.sa-read{color:#2563eb!important;font-weight:950;}

.sa-topic-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
}
.sa-topic-card{
  background:var(--sa-card);
  border:1px solid var(--sa-line);
  border-radius:18px;
  padding:30px;
  color:#fff;
}
.sa-topic-card h3{color:#fff;margin:0 0 14px;}
.sa-topic-card ul{margin:0;padding-left:18px;color:#B8C4D8;line-height:1.9;}
.sa-topic-card a{color:var(--sa-gold-2)!important;font-weight:950;display:inline-block;margin-top:16px;}

.sa-footer{
  background:#050816;
  color:#B7C2D4;
  padding:64px 42px 28px;
}
.sa-footer-grid{
  max-width:1320px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1.35fr 1fr 1fr;
  gap:40px;
}
.sa-footer h3,.sa-footer h4{color:#fff;margin-top:0;}
.sa-footer a{display:block;color:#B7C2D4!important;margin:10px 0;}
.sa-footer-bottom{
  max-width:1320px;
  margin:38px auto 0;
  border-top:1px solid var(--sa-line);
  padding-top:24px;
  color:#7F8CA3;
  font-size:14px;
}

@media(max-width:1120px){
  .sa-header-inner{padding:0 28px;}
  .sa-menu{display:none;}
  .sa-features,.sa-state-grid,.sa-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .sa-guides{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:720px){
  .sa-header{min-height:86px;}
  .sa-header-inner{padding:0 18px;}
  .sa-brand-img{width:50px;height:50px;}
  .sa-brand-main{font-size:20px;}
  .sa-brand-sub{font-size:11px;}
  .sa-hero{min-height:760px;background-position:center top;}
  .sa-hero-content{padding:86px 20px 190px;}
  .sa-hero h1{font-size:47px;}
  .sa-hero p{font-size:18px;}
  .sa-btn{min-width:100%;}
  .sa-feature-wrap{margin-top:-88px;padding-left:18px;padding-right:18px;}
  .sa-features{grid-template-columns:1fr;gap:18px;}
  .sa-feature{min-height:auto;padding:28px 26px;}
  .sa-section,.sa-section-dark{padding:58px 20px;}
  .sa-head{display:block;}
  .sa-state-grid,.sa-guides,.sa-topic-grid{grid-template-columns:1fr;}
  .sa-footer{padding-left:20px;padding-right:20px;}
  .sa-footer-grid{grid-template-columns:1fr;}
}


/* V5.3.2 CARDFIX: smaller icons + proper inner spacing */
.sa-feature-wrap{
  margin-top:-95px !important;
  padding-left:42px !important;
  padding-right:42px !important;
}

.sa-features{
  max-width:1120px !important;
  gap:20px !important;
}

.sa-feature{
  min-height:220px !important;
  padding:28px 26px 26px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
}

.sa-feature-icon{
  width:48px !important;
  height:48px !important;
  min-width:48px !important;
  min-height:48px !important;
  margin:0 0 20px 0 !important;
  font-size:21px !important;
  line-height:1 !important;
}

.sa-feature h3{
  font-size:18px !important;
  line-height:1.25 !important;
  margin:0 0 12px 0 !important;
  padding:0 !important;
  width:100% !important;
}

.sa-feature p{
  font-size:14px !important;
  line-height:1.55 !important;
  margin:0 0 18px 0 !important;
  padding:0 !important;
  width:100% !important;
}

.sa-feature a{
  font-size:14px !important;
  margin-top:auto !important;
  padding:0 !important;
  line-height:1.2 !important;
}

@media(max-width:1120px){
  .sa-features{
    max-width:760px !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  .sa-feature-wrap{
    margin-top:-70px !important;
    padding-left:18px !important;
    padding-right:18px !important;
  }
  .sa-features{
    max-width:100% !important;
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .sa-feature{
    min-height:auto !important;
    padding:24px 22px !important;
  }
  .sa-feature-icon{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;
    font-size:19px !important;
    margin-bottom:16px !important;
  }
}


/* v5.3.6 card spacing fix */
.sa-feature{
padding:28px 28px 30px !important;
}
.sa-feature-icon{
width:54px !important;
height:54px !important;
font-size:24px !important;
margin:0 0 18px 0 !important;
display:flex !important;
align-items:center !important;
justify-content:center !important;
}
.sa-feature h3{
margin:0 0 14px 0 !important;
line-height:1.25 !important;
}
.sa-feature p{
margin:0 0 18px 0 !important;
line-height:1.7 !important;
}
.sa-feature a{
display:inline-block !important;
margin-top:6px !important;
}


/* =========================================================
   V5.3.7 FINAL CARD SPACING FIX
   Fixes: icons/text glued to card edges, bad inner spacing.
   ========================================================= */

body.home .sa-feature-wrap,
body.home .sa-v5 .sa-feature-wrap,
body.home .sa-v532 .sa-feature-wrap,
body.home .sa-v4 .sa-feature-wrap{
  margin-top:-95px !important;
  padding-left:42px !important;
  padding-right:42px !important;
}

body.home .sa-features,
body.home .sa-v5 .sa-features,
body.home .sa-v532 .sa-features,
body.home .sa-v4 .sa-features{
  width:100% !important;
  max-width:1120px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:22px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}

/* FULL RESET FOR EACH FEATURE CARD */
body.home .sa-feature,
body.home .sa-v5 .sa-feature,
body.home .sa-v532 .sa-feature,
body.home .sa-v4 .sa-feature{
  box-sizing:border-box !important;
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  min-height:218px !important;
  height:auto !important;
  padding:30px 28px 26px 28px !important;
  margin:0 !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:14px !important;
  background:linear-gradient(180deg, rgba(15,29,51,.97), rgba(7,15,30,.99)) !important;
  box-shadow:0 22px 54px rgba(0,0,0,.28) !important;
  overflow:hidden !important;
  color:#fff !important;
}

/* ICON: smaller, inside card, clean top-left spacing */
body.home .sa-feature .sa-feature-icon,
body.home .sa-v5 .sa-feature .sa-feature-icon,
body.home .sa-v532 .sa-feature .sa-feature-icon,
body.home .sa-v4 .sa-feature .sa-feature-icon{
  box-sizing:border-box !important;
  position:static !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:46px !important;
  height:46px !important;
  min-width:46px !important;
  min-height:46px !important;
  max-width:46px !important;
  max-height:46px !important;
  margin:0 0 22px 0 !important;
  padding:0 !important;
  border-radius:50% !important;
  font-size:19px !important;
  line-height:1 !important;
  transform:none !important;
  top:auto !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
}

/* TITLE: no edge collision */
body.home .sa-feature h3,
body.home .sa-v5 .sa-feature h3,
body.home .sa-v532 .sa-feature h3,
body.home .sa-v4 .sa-feature h3{
  box-sizing:border-box !important;
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 0 12px 0 !important;
  padding:0 !important;
  color:#fff !important;
  font-size:18px !important;
  line-height:1.28 !important;
  font-weight:950 !important;
  letter-spacing:-.01em !important;
  white-space:normal !important;
  overflow:visible !important;
}

/* DESCRIPTION: separate from title and link */
body.home .sa-feature p,
body.home .sa-v5 .sa-feature p,
body.home .sa-v532 .sa-feature p,
body.home .sa-v4 .sa-feature p{
  box-sizing:border-box !important;
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 0 18px 0 !important;
  padding:0 !important;
  color:#d8e0ec !important;
  font-size:13.5px !important;
  line-height:1.6 !important;
  font-weight:400 !important;
  white-space:normal !important;
  overflow:visible !important;
}

/* LINK: stays at bottom with breathing room */
body.home .sa-feature a,
body.home .sa-v5 .sa-feature a,
body.home .sa-v532 .sa-feature a,
body.home .sa-v4 .sa-feature a{
  box-sizing:border-box !important;
  display:inline-block !important;
  margin-top:auto !important;
  padding:0 !important;
  color:#F3C55B !important;
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:950 !important;
  white-space:normal !important;
}

/* Remove any old grid-column layout inside card */
body.home .sa-feature > *,
body.home .sa-v5 .sa-feature > *,
body.home .sa-v532 .sa-feature > *,
body.home .sa-v4 .sa-feature > *{
  grid-column:auto !important;
  grid-row:auto !important;
}

/* Desktop: if screen is narrow, prevent text squeezing */
@media(max-width:1180px){
  body.home .sa-features,
  body.home .sa-v5 .sa-features,
  body.home .sa-v532 .sa-features,
  body.home .sa-v4 .sa-features{
    max-width:760px !important;
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  body.home .sa-feature-wrap,
  body.home .sa-v5 .sa-feature-wrap,
  body.home .sa-v532 .sa-feature-wrap,
  body.home .sa-v4 .sa-feature-wrap{
    margin-top:-72px !important;
    padding-left:18px !important;
    padding-right:18px !important;
  }

  body.home .sa-features,
  body.home .sa-v5 .sa-features,
  body.home .sa-v532 .sa-features,
  body.home .sa-v4 .sa-features{
    max-width:100% !important;
    grid-template-columns:1fr !important;
    gap:16px !important;
  }

  body.home .sa-feature,
  body.home .sa-v5 .sa-feature,
  body.home .sa-v532 .sa-feature,
  body.home .sa-v4 .sa-feature{
    min-height:auto !important;
    padding:26px 24px 24px 24px !important;
  }

  body.home .sa-feature .sa-feature-icon,
  body.home .sa-v5 .sa-feature .sa-feature-icon,
  body.home .sa-v532 .sa-feature .sa-feature-icon,
  body.home .sa-v4 .sa-feature .sa-feature-icon{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    min-height:42px !important;
    font-size:18px !important;
    margin-bottom:18px !important;
  }
}


/* =========================================================
   V5.3.8 MOCKUP MATCH
   White feature cards + image state cards like reference.
   ========================================================= */

.sa-header{
  min-height:92px !important;
  background:#050816 !important;
}

.sa-header-inner{
  max-width:1440px !important;
  padding:0 56px !important;
}

.sa-menu{
  gap:44px !important;
}

.sa-menu a{
  font-size:15px !important;
  text-transform:uppercase !important;
  letter-spacing:.01em !important;
}

.sa-hero{
  min-height:700px !important;
  background:
    linear-gradient(90deg, rgba(5,8,22,.40) 0%, rgba(5,8,22,.22) 38%, rgba(5,8,22,.04) 72%, rgba(5,8,22,.04) 100%),
    linear-gradient(180deg, rgba(5,8,22,.00) 0%, rgba(5,8,22,.00) 62%, rgba(5,8,22,.48) 100%),
    url('assets/hero-stargazing-v538.webp') center center/cover no-repeat !important;
}

.sa-hero-content{
  max-width:1440px !important;
  padding:104px 56px 190px !important;
}

.sa-kicker{
  font-size:16px !important;
  margin-bottom:20px !important;
}

.sa-hero h1{
  max-width:720px !important;
  font-size:clamp(54px,5.8vw,86px) !important;
  line-height:1.02 !important;
  margin-bottom:24px !important;
}

.sa-hero p{
  max-width:650px !important;
  font-size:19px !important;
  line-height:1.62 !important;
  margin-bottom:34px !important;
}

.sa-btn{
  min-width:230px !important;
  min-height:58px !important;
  border-radius:7px !important;
}

/* 4 cards: white, separated, roomy like mockup */
body.home .sa-feature-wrap,
.sa-feature-wrap{
  margin-top:-70px !important;
  padding-left:56px !important;
  padding-right:56px !important;
  z-index:8 !important;
}

body.home .sa-features,
.sa-features{
  max-width:1180px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:18px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}

body.home .sa-feature,
.sa-feature{
  min-height:210px !important;
  padding:30px 28px 26px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  background:#ffffff !important;
  color:#101827 !important;
  border:1px solid rgba(15,23,42,.10) !important;
  border-radius:12px !important;
  box-shadow:0 18px 38px rgba(15,23,42,.13) !important;
  overflow:hidden !important;
}

body.home .sa-feature-icon,
.sa-feature-icon{
  width:54px !important;
  height:54px !important;
  min-width:54px !important;
  min-height:54px !important;
  max-width:54px !important;
  max-height:54px !important;
  margin:0 0 22px 0 !important;
  padding:0 !important;
  border-radius:50% !important;
  font-size:24px !important;
  line-height:1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  position:static !important;
  transform:none !important;
  background:#071329 !important;
  color:#F3C55B !important;
  border:1px solid rgba(217,164,65,.65) !important;
}

body.home .sa-feature:nth-child(2) .sa-feature-icon,
.sa-feature:nth-child(2) .sa-feature-icon{
  color:#5AE08A !important;
  border-color:rgba(40,199,111,.60) !important;
  background:#082a21 !important;
}
body.home .sa-feature:nth-child(3) .sa-feature-icon,
.sa-feature:nth-child(3) .sa-feature-icon{
  color:#D98BFF !important;
  border-color:rgba(180,104,255,.60) !important;
  background:#171036 !important;
}
body.home .sa-feature:nth-child(4) .sa-feature-icon,
.sa-feature:nth-child(4) .sa-feature-icon{
  color:#62C9FF !important;
  border-color:rgba(56,168,255,.62) !important;
  background:#08223e !important;
}

body.home .sa-feature h3,
.sa-feature h3{
  color:#101827 !important;
  width:100% !important;
  margin:0 0 14px 0 !important;
  padding:0 !important;
  font-size:19px !important;
  line-height:1.25 !important;
  font-weight:950 !important;
  letter-spacing:-.015em !important;
}

body.home .sa-feature p,
.sa-feature p{
  color:#334155 !important;
  width:100% !important;
  margin:0 0 18px 0 !important;
  padding:0 !important;
  font-size:14.5px !important;
  line-height:1.65 !important;
}

body.home .sa-feature a,
.sa-feature a{
  color:#D9A441 !important;
  display:inline-block !important;
  margin-top:auto !important;
  padding:0 !important;
  font-size:15px !important;
  line-height:1.2 !important;
  font-weight:950 !important;
}

/* Explore by state section spacing and card design */
.sa-section{
  max-width:1440px !important;
  padding:68px 56px 82px !important;
}

.sa-title{
  font-size:34px !important;
  letter-spacing:-.035em !important;
}

.sa-state-grid{
  display:grid !important;
  grid-template-columns:repeat(8, minmax(0, 1fr)) !important;
  gap:14px !important;
}

.sa-state-card{
  min-height:160px !important;
  border-radius:8px !important;
  padding:14px !important;
  box-shadow:0 12px 28px rgba(15,23,42,.20) !important;
  background:
    linear-gradient(180deg, rgba(5,8,22,.08), rgba(5,8,22,.92)),
    var(--state-img) center/cover no-repeat !important;
}

.sa-state-card small{
  position:absolute !important;
  left:14px !important;
  top:12px !important;
  font-size:9px !important;
  line-height:1 !important;
  padding:5px 7px !important;
  border-radius:999px !important;
  color:#F3C55B !important;
  background:rgba(5,8,22,.76) !important;
  border:1px solid rgba(217,164,65,.40) !important;
  text-transform:uppercase !important;
}

.sa-state-card strong{
  left:14px !important;
  bottom:34px !important;
  font-size:20px !important;
  line-height:1.05 !important;
}

.sa-state-card span{
  left:14px !important;
  bottom:16px !important;
  font-size:11px !important;
  color:#e6eefb !important;
}

/* If old dark feature card rules remain, neutralize them */
.sa-feature > *{
  grid-column:auto !important;
  grid-row:auto !important;
}

@media(max-width:1200px){
  .sa-features{
    max-width:760px !important;
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
  .sa-state-grid{
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  }
}

@media(max-width:720px){
  .sa-header-inner{
    padding:0 18px !important;
  }
  .sa-menu{
    display:none !important;
  }
  .sa-hero{
    min-height:760px !important;
    background-position:center top !important;
  }
  .sa-hero-content{
    padding:84px 20px 170px !important;
  }
  .sa-hero h1{
    font-size:44px !important;
  }
  .sa-feature-wrap{
    margin-top:-58px !important;
    padding-left:18px !important;
    padding-right:18px !important;
  }
  .sa-features{
    max-width:100% !important;
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .sa-feature{
    min-height:auto !important;
    padding:26px 24px !important;
  }
  .sa-feature-icon{
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    min-height:48px !important;
    font-size:21px !important;
    margin-bottom:18px !important;
  }
  .sa-section{
    padding:56px 20px !important;
  }
  .sa-state-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}


/* =========================================================
   STARGAZING ATLAS V5.3.9 FINAL MOCKUP OVERRIDE
   Reference target: white 4 feature cards + larger photo state cards.
   ========================================================= */

body.home .sa-header{
  min-height:92px !important;
  background:#050816 !important;
}

body.home .sa-header-inner{
  max-width:1440px !important;
  padding-left:62px !important;
  padding-right:62px !important;
}

body.home .sa-menu{
  gap:46px !important;
}

body.home .sa-menu a{
  text-transform:uppercase !important;
  font-size:15px !important;
  font-weight:900 !important;
  color:#fff !important;
}

body.home .sa-hero{
  min-height:680px !important;
  background:
    linear-gradient(90deg, rgba(5,8,22,.44) 0%, rgba(5,8,22,.26) 39%, rgba(5,8,22,.05) 74%, rgba(5,8,22,.05) 100%),
    linear-gradient(180deg, rgba(5,8,22,0) 0%, rgba(5,8,22,0) 63%, rgba(5,8,22,.42) 100%),
    url('assets/hero-stargazing-v539.webp') center center/cover no-repeat !important;
}

body.home .sa-hero-content{
  max-width:1440px !important;
  padding:102px 62px 172px !important;
}

body.home .sa-hero h1{
  max-width:690px !important;
  font-size:clamp(54px,5.6vw,82px) !important;
  line-height:1.02 !important;
  margin-bottom:24px !important;
}

body.home .sa-hero p{
  max-width:620px !important;
  font-size:19px !important;
  line-height:1.62 !important;
  margin-bottom:32px !important;
}

/* 4 FEATURE CARDS - EXACT WHITE LOOK */
body.home .sa-feature-wrap{
  position:relative !important;
  z-index:10 !important;
  margin-top:-58px !important;
  padding:0 62px !important;
}

body.home .sa-feature-wrap .sa-features{
  width:100% !important;
  max-width:1160px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:20px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}

body.home .sa-feature-wrap .sa-features .sa-feature{
  box-sizing:border-box !important;
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  min-height:214px !important;
  height:auto !important;
  margin:0 !important;
  padding:28px 28px 24px !important;
  border-radius:10px !important;
  border:1px solid rgba(15,23,42,.10) !important;
  background:#ffffff !important;
  color:#101827 !important;
  box-shadow:0 20px 36px rgba(15,23,42,.13) !important;
  overflow:hidden !important;
}

/* icons in cards */
body.home .sa-feature-wrap .sa-feature .sa-feature-icon{
  position:static !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:52px !important;
  height:52px !important;
  min-width:52px !important;
  min-height:52px !important;
  max-width:52px !important;
  max-height:52px !important;
  margin:0 0 20px 0 !important;
  padding:0 !important;
  border-radius:50% !important;
  font-size:23px !important;
  line-height:1 !important;
  background:#071329 !important;
  color:#F3C55B !important;
  border:1px solid rgba(217,164,65,.65) !important;
  transform:none !important;
}

body.home .sa-feature-wrap .sa-feature:nth-child(2) .sa-feature-icon{background:#082a21 !important;color:#5AE08A !important;border-color:rgba(40,199,111,.60) !important;}
body.home .sa-feature-wrap .sa-feature:nth-child(3) .sa-feature-icon{background:#171036 !important;color:#D98BFF !important;border-color:rgba(180,104,255,.60) !important;}
body.home .sa-feature-wrap .sa-feature:nth-child(4) .sa-feature-icon{background:#08223e !important;color:#62C9FF !important;border-color:rgba(56,168,255,.62) !important;}

body.home .sa-feature-wrap .sa-feature h3{
  display:block !important;
  width:100% !important;
  margin:0 0 13px 0 !important;
  padding:0 !important;
  color:#101827 !important;
  font-size:19px !important;
  line-height:1.25 !important;
  font-weight:950 !important;
  letter-spacing:-.01em !important;
}

body.home .sa-feature-wrap .sa-feature p{
  display:block !important;
  width:100% !important;
  margin:0 0 18px 0 !important;
  padding:0 !important;
  color:#334155 !important;
  font-size:14.5px !important;
  line-height:1.62 !important;
  font-weight:400 !important;
}

body.home .sa-feature-wrap .sa-feature a{
  display:inline-block !important;
  margin-top:auto !important;
  padding:0 !important;
  color:#D9A441 !important;
  font-size:15px !important;
  line-height:1.25 !important;
  font-weight:950 !important;
}

/* clear inherited grid values */
body.home .sa-feature-wrap .sa-feature > *{
  grid-column:auto !important;
  grid-row:auto !important;
}

/* EXPLORE BY STATE LIKE REFERENCE */
body.home .sa-section{
  max-width:1440px !important;
  padding:60px 62px 88px !important;
}

body.home .sa-head{
  margin-bottom:30px !important;
}

body.home .sa-title{
  font-size:34px !important;
  line-height:1.1 !important;
}

body.home .sa-state-grid{
  display:grid !important;
  grid-template-columns:repeat(8,minmax(0,1fr)) !important;
  gap:16px !important;
}

body.home .sa-state-grid .sa-state-card{
  min-height:164px !important;
  border-radius:7px !important;
  padding:14px !important;
  overflow:hidden !important;
  box-shadow:0 15px 30px rgba(15,23,42,.22) !important;
  background:
    linear-gradient(180deg, rgba(5,8,22,.08), rgba(5,8,22,.92)),
    var(--state-img) center/cover no-repeat !important;
}

body.home .sa-state-card small{
  position:absolute !important;
  left:14px !important;
  top:12px !important;
  font-size:8.5px !important;
  line-height:1 !important;
  padding:5px 7px !important;
  border-radius:999px !important;
  color:#F3C55B !important;
  background:rgba(5,8,22,.80) !important;
  border:1px solid rgba(217,164,65,.45) !important;
  text-transform:uppercase !important;
  font-weight:950 !important;
}

body.home .sa-state-card strong{
  position:absolute !important;
  left:14px !important;
  bottom:36px !important;
  color:#fff !important;
  font-size:20px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
}

body.home .sa-state-card span{
  position:absolute !important;
  left:14px !important;
  bottom:17px !important;
  color:#e6eefb !important;
  font-size:11px !important;
  line-height:1.2 !important;
}

/* kill old dark card backgrounds in all variants */
body.home .sa-v5 .sa-feature,
body.home .sa-v532 .sa-feature,
body.home .sa-v4 .sa-feature{
  background:#fff !important;
  color:#101827 !important;
}

@media(max-width:1200px){
  body.home .sa-feature-wrap .sa-features{
    max-width:760px !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  body.home .sa-state-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  body.home .sa-header-inner{
    padding-left:18px !important;
    padding-right:18px !important;
  }
  body.home .sa-menu{
    display:none !important;
  }
  body.home .sa-hero{
    min-height:760px !important;
    background-position:center top !important;
  }
  body.home .sa-hero-content{
    padding:84px 20px 160px !important;
  }
  body.home .sa-hero h1{
    font-size:44px !important;
  }
  body.home .sa-feature-wrap{
    margin-top:-46px !important;
    padding-left:18px !important;
    padding-right:18px !important;
  }
  body.home .sa-feature-wrap .sa-features{
    max-width:100% !important;
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  body.home .sa-feature-wrap .sa-features .sa-feature{
    min-height:auto !important;
    padding:26px 24px !important;
  }
  body.home .sa-state-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  body.home .sa-section{
    padding:56px 20px 72px !important;
  }
}


/* V5.4.0 STATE CARD FIX: reference-style bottom cards */
body.home .sa-section:first-of-type{
  padding-top:54px !important;
}

body.home .sa-section{
  max-width:1440px !important;
  padding-left:62px !important;
  padding-right:62px !important;
}

body.home .sa-head{
  max-width:1320px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.home .sa-state-grid{
  width:100% !important;
  max-width:1320px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(8, minmax(0, 1fr)) !important;
  gap:16px !important;
  align-items:stretch !important;
}

body.home .sa-state-grid .sa-state-card{
  box-sizing:border-box !important;
  position:relative !important;
  display:block !important;
  min-height:178px !important;
  height:178px !important;
  border-radius:8px !important;
  padding:0 !important;
  overflow:hidden !important;
  box-shadow:0 16px 34px rgba(15,23,42,.22) !important;
  border:0 !important;
  background:
    linear-gradient(180deg, rgba(5,8,22,.02) 0%, rgba(5,8,22,.18) 42%, rgba(5,8,22,.92) 100%),
    var(--state-img) center center/cover no-repeat !important;
  transition:transform .18s ease, box-shadow .18s ease !important;
}

body.home .sa-state-grid .sa-state-card:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 22px 42px rgba(15,23,42,.28) !important;
}

body.home .sa-state-grid .sa-state-card small{
  position:absolute !important;
  left:12px !important;
  top:12px !important;
  z-index:3 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:20px !important;
  padding:0 8px !important;
  border-radius:999px !important;
  background:rgba(3,6,14,.82) !important;
  border:1px solid rgba(217,164,65,.56) !important;
  color:#F3C55B !important;
  font-size:8px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.02em !important;
}

body.home .sa-state-grid .sa-state-card strong{
  position:absolute !important;
  left:14px !important;
  right:12px !important;
  bottom:34px !important;
  z-index:3 !important;
  color:#fff !important;
  font-size:20px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:-.02em !important;
  text-shadow:0 8px 18px rgba(0,0,0,.85) !important;
}

body.home .sa-state-grid .sa-state-card span{
  position:absolute !important;
  left:14px !important;
  right:12px !important;
  bottom:15px !important;
  z-index:3 !important;
  color:#eef5ff !important;
  font-size:10.5px !important;
  line-height:1.15 !important;
  font-weight:500 !important;
  text-shadow:0 6px 14px rgba(0,0,0,.85) !important;
}

@media(max-width:1300px){
  body.home .sa-state-grid{
    grid-template-columns:repeat(4, minmax(0,1fr)) !important;
    max-width:760px !important;
  }
  body.home .sa-state-grid .sa-state-card{
    height:180px !important;
    min-height:180px !important;
  }
}

@media(max-width:720px){
  body.home .sa-section{
    padding-left:20px !important;
    padding-right:20px !important;
  }
  body.home .sa-state-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    gap:14px !important;
  }
  body.home .sa-state-grid .sa-state-card{
    height:165px !important;
    min-height:165px !important;
  }
}


/* =========================================================
   V5.4.1 FINAL STATE CARDS
   Bigger reference-style image cards below Explore By State.
   ========================================================= */

body.home main[class*="sa-"] .sa-section{
  max-width:1440px !important;
  padding-left:62px !important;
  padding-right:62px !important;
}

body.home main[class*="sa-"] .sa-head{
  max-width:1320px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.home main[class*="sa-"] .sa-state-grid{
  width:100% !important;
  max-width:1320px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(8, minmax(135px, 1fr)) !important;
  gap:16px !important;
  align-items:stretch !important;
}

body.home main[class*="sa-"] .sa-state-grid .sa-state-card{
  box-sizing:border-box !important;
  position:relative !important;
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  height:185px !important;
  min-height:185px !important;
  max-height:none !important;
  padding:0 !important;
  border:0 !important;
  border-radius:8px !important;
  overflow:hidden !important;
  background-image:
    linear-gradient(180deg, rgba(5,8,22,.02) 0%, rgba(5,8,22,.16) 40%, rgba(5,8,22,.94) 100%),
    var(--state-img) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  box-shadow:0 16px 34px rgba(15,23,42,.22) !important;
  transition:transform .18s ease, box-shadow .18s ease !important;
}

body.home main[class*="sa-"] .sa-state-grid .sa-state-card:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 22px 42px rgba(15,23,42,.28) !important;
}

body.home main[class*="sa-"] .sa-state-grid .sa-state-card small{
  position:absolute !important;
  z-index:4 !important;
  left:12px !important;
  top:12px !important;
  height:20px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 8px !important;
  margin:0 !important;
  border-radius:999px !important;
  background:rgba(3,6,14,.84) !important;
  border:1px solid rgba(217,164,65,.58) !important;
  color:#F3C55B !important;
  font-size:8px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.02em !important;
}

body.home main[class*="sa-"] .sa-state-grid .sa-state-card strong{
  position:absolute !important;
  z-index:4 !important;
  left:14px !important;
  right:12px !important;
  bottom:35px !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  font-size:20px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:-.02em !important;
  text-shadow:0 8px 18px rgba(0,0,0,.85) !important;
}

body.home main[class*="sa-"] .sa-state-grid .sa-state-card span{
  position:absolute !important;
  z-index:4 !important;
  left:14px !important;
  right:12px !important;
  bottom:16px !important;
  margin:0 !important;
  padding:0 !important;
  color:#eef5ff !important;
  font-size:10.5px !important;
  line-height:1.15 !important;
  font-weight:500 !important;
  text-shadow:0 6px 14px rgba(0,0,0,.85) !important;
}

/* prevent older rules from shrinking cards */
body.home .sa-state-card{
  min-height:185px !important;
  height:185px !important;
}

@media(max-width:1300px){
  body.home main[class*="sa-"] .sa-state-grid{
    max-width:900px !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  }
  body.home main[class*="sa-"] .sa-state-grid .sa-state-card{
    height:190px !important;
    min-height:190px !important;
  }
}

@media(max-width:720px){
  body.home main[class*="sa-"] .sa-section{
    padding-left:20px !important;
    padding-right:20px !important;
  }
  body.home main[class*="sa-"] .sa-state-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:14px !important;
  }
  body.home main[class*="sa-"] .sa-state-grid .sa-state-card{
    height:170px !important;
    min-height:170px !important;
  }
}


/* =========================================================
   V5.4.2 ABSOLUTE FINAL OVERRIDE
   This targets the exact visible state cards and forces
   the reference-style larger image cards.
   ========================================================= */

/* State section spacing */
html body.home main .sa-section{
  max-width:1440px !important;
  padding-left:62px !important;
  padding-right:62px !important;
}

html body.home main .sa-head{
  max-width:1320px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Force 8 larger cards */
html body.home main .sa-state-grid,
html body.home .sa-state-grid{
  width:100% !important;
  max-width:1320px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(8, 1fr) !important;
  column-gap:18px !important;
  row-gap:18px !important;
  align-items:stretch !important;
}

/* Force exact large visual card */
html body.home main .sa-state-grid > a.sa-state-card,
html body.home .sa-state-grid > a.sa-state-card,
html body.home a.sa-state-card{
  box-sizing:border-box !important;
  position:relative !important;
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  height:215px !important;
  min-height:215px !important;
  max-height:215px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:10px !important;
  overflow:hidden !important;
  background-image:
    linear-gradient(180deg, rgba(5,8,22,0) 0%, rgba(5,8,22,.18) 42%, rgba(5,8,22,.96) 100%),
    var(--state-img) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  box-shadow:0 18px 38px rgba(15,23,42,.25) !important;
  color:#fff !important;
  text-decoration:none !important;
}

html body.home main .sa-state-grid > a.sa-state-card:hover,
html body.home a.sa-state-card:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 24px 48px rgba(15,23,42,.30) !important;
}

/* Top pill */
html body.home main a.sa-state-card small,
html body.home a.sa-state-card small{
  position:absolute !important;
  left:14px !important;
  top:14px !important;
  z-index:5 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:22px !important;
  padding:0 9px !important;
  margin:0 !important;
  border-radius:999px !important;
  background:rgba(3,6,14,.86) !important;
  border:1px solid rgba(217,164,65,.58) !important;
  color:#F3C55B !important;
  font-size:8.5px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.02em !important;
}

/* Title */
html body.home main a.sa-state-card strong,
html body.home a.sa-state-card strong{
  position:absolute !important;
  left:16px !important;
  right:14px !important;
  bottom:42px !important;
  z-index:5 !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  font-size:23px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:-.02em !important;
  text-shadow:0 9px 20px rgba(0,0,0,.90) !important;
}

/* Subtitle */
html body.home main a.sa-state-card span,
html body.home a.sa-state-card span{
  position:absolute !important;
  left:16px !important;
  right:14px !important;
  bottom:20px !important;
  z-index:5 !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#eef5ff !important;
  font-size:12px !important;
  line-height:1.2 !important;
  font-weight:500 !important;
  text-shadow:0 7px 16px rgba(0,0,0,.90) !important;
}

/* Also keep white feature cards like reference */
html body.home main .sa-feature{
  background:#fff !important;
  color:#101827 !important;
}

html body.home main .sa-feature h3{
  color:#101827 !important;
}

html body.home main .sa-feature p{
  color:#334155 !important;
}

html body.home main .sa-feature a{
  color:#D9A441 !important;
}

/* Responsive */
@media(max-width:1300px){
  html body.home main .sa-state-grid,
  html body.home .sa-state-grid{
    max-width:900px !important;
    grid-template-columns:repeat(4, 1fr) !important;
  }

  html body.home main .sa-state-grid > a.sa-state-card,
  html body.home .sa-state-grid > a.sa-state-card,
  html body.home a.sa-state-card{
    height:215px !important;
    min-height:215px !important;
    max-height:215px !important;
  }
}

@media(max-width:720px){
  html body.home main .sa-section{
    padding-left:20px !important;
    padding-right:20px !important;
  }

  html body.home main .sa-state-grid,
  html body.home .sa-state-grid{
    grid-template-columns:repeat(2, 1fr) !important;
    gap:14px !important;
  }

  html body.home main .sa-state-grid > a.sa-state-card,
  html body.home .sa-state-grid > a.sa-state-card,
  html body.home a.sa-state-card{
    height:185px !important;
    min-height:185px !important;
    max-height:185px !important;
  }
}


/* =========================================================
   V5.4.3 WIDE STATE CARD FIX
   Makes Explore By State cards match reference width/scale.
   ========================================================= */

html body.home main .sa-section,
html body.home .sa-section{
  max-width:100% !important;
  width:100% !important;
  padding-left:72px !important;
  padding-right:72px !important;
}

html body.home main .sa-head,
html body.home .sa-head{
  max-width:1540px !important;
  width:100% !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

html body.home main .sa-state-grid,
html body.home .sa-state-grid{
  width:100% !important;
  max-width:1540px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  display:grid !important;
  grid-template-columns:repeat(8, minmax(0, 1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}

html body.home main .sa-state-grid > a.sa-state-card,
html body.home .sa-state-grid > a.sa-state-card,
html body.home a.sa-state-card{
  width:100% !important;
  height:190px !important;
  min-height:190px !important;
  max-height:190px !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:9px !important;
  overflow:hidden !important;
  background-image:
    linear-gradient(180deg, rgba(5,8,22,0) 0%, rgba(5,8,22,.16) 42%, rgba(5,8,22,.96) 100%),
    var(--state-img) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  box-shadow:0 18px 36px rgba(15,23,42,.24) !important;
}

html body.home a.sa-state-card small{
  left:14px !important;
  top:14px !important;
  height:22px !important;
  padding:0 9px !important;
  font-size:8.5px !important;
}

html body.home a.sa-state-card strong{
  left:16px !important;
  right:14px !important;
  bottom:42px !important;
  font-size:23px !important;
}

html body.home a.sa-state-card span{
  left:16px !important;
  right:14px !important;
  bottom:20px !important;
  font-size:12px !important;
}

/* Push Popular Guides down a bit like reference */
html body.home main .sa-section + .sa-section{
  padding-top:84px !important;
}

/* Keep white cards reference-like */
html body.home main .sa-feature{
  background:#fff !important;
  color:#101827 !important;
}

@media(max-width:1400px){
  html body.home main .sa-state-grid,
  html body.home .sa-state-grid{
    max-width:980px !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  }

  html body.home main .sa-state-grid > a.sa-state-card,
  html body.home .sa-state-grid > a.sa-state-card,
  html body.home a.sa-state-card{
    height:210px !important;
    min-height:210px !important;
    max-height:210px !important;
  }
}

@media(max-width:720px){
  html body.home main .sa-section,
  html body.home .sa-section{
    padding-left:20px !important;
    padding-right:20px !important;
  }

  html body.home main .sa-state-grid,
  html body.home .sa-state-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    gap:14px !important;
  }

  html body.home main .sa-state-grid > a.sa-state-card,
  html body.home .sa-state-grid > a.sa-state-card,
  html body.home a.sa-state-card{
    height:185px !important;
    min-height:185px !important;
    max-height:185px !important;
  }
}


/* =========================================================
   V5.5 REAL STATE IMAGES + REFERENCE CARD TUNING
   ========================================================= */

html body.home main .sa-state-grid,
html body.home .sa-state-grid{
  max-width:1440px !important;
  grid-template-columns:repeat(8, minmax(0, 1fr)) !important;
  gap:16px !important;
}

html body.home main .sa-state-grid > a.sa-state-card,
html body.home .sa-state-grid > a.sa-state-card,
html body.home a.sa-state-card{
  height:172px !important;
  min-height:172px !important;
  max-height:172px !important;
  border-radius:8px !important;
  background-size:cover !important;
  background-position:center center !important;
  box-shadow:0 16px 32px rgba(15,23,42,.24) !important;
}

html body.home main a.sa-state-card strong,
html body.home a.sa-state-card strong{
  font-size:19px !important;
  bottom:32px !important;
}

html body.home main a.sa-state-card span,
html body.home a.sa-state-card span{
  font-size:10.5px !important;
  bottom:14px !important;
}

html body.home main a.sa-state-card small,
html body.home a.sa-state-card small{
  font-size:8px !important;
  height:19px !important;
  top:11px !important;
  left:11px !important;
}

@media(max-width:1400px){
  html body.home main .sa-state-grid,
  html body.home .sa-state-grid{
    max-width:980px !important;
    grid-template-columns:repeat(4, minmax(0,1fr)) !important;
  }
  html body.home main .sa-state-grid > a.sa-state-card,
  html body.home .sa-state-grid > a.sa-state-card,
  html body.home a.sa-state-card{
    height:190px !important;
    min-height:190px !important;
    max-height:190px !important;
  }
}


/* =========================================================
   V5.6 REAL JPG CARD IMAGES
   SVG/illustration look removed. State cards use real JPG crops.
   ========================================================= */

html body.home main .sa-state-grid,
html body.home .sa-state-grid{
  max-width:1440px !important;
  grid-template-columns:repeat(8, minmax(0, 1fr)) !important;
  gap:16px !important;
}

html body.home main .sa-state-grid > a.sa-state-card,
html body.home .sa-state-grid > a.sa-state-card,
html body.home a.sa-state-card{
  height:178px !important;
  min-height:178px !important;
  max-height:178px !important;
  border-radius:8px !important;
  background-image:
    linear-gradient(180deg, rgba(5,8,22,0) 0%, rgba(5,8,22,.16) 42%, rgba(5,8,22,.96) 100%),
    var(--state-img) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  box-shadow:0 16px 32px rgba(15,23,42,.24) !important;
}

html body.home a.sa-state-card small{
  top:12px !important;
  left:12px !important;
  height:20px !important;
  padding:0 8px !important;
  font-size:8px !important;
  background:rgba(3,6,14,.82) !important;
}

html body.home a.sa-state-card strong{
  left:14px !important;
  bottom:34px !important;
  font-size:20px !important;
}

html body.home a.sa-state-card span{
  left:14px !important;
  bottom:15px !important;
  font-size:10.5px !important;
}

@media(max-width:1400px){
  html body.home main .sa-state-grid,
  html body.home .sa-state-grid{
    max-width:980px !important;
    grid-template-columns:repeat(4, minmax(0,1fr)) !important;
  }

  html body.home main .sa-state-grid > a.sa-state-card,
  html body.home .sa-state-grid > a.sa-state-card,
  html body.home a.sa-state-card{
    height:190px !important;
    min-height:190px !important;
    max-height:190px !important;
  }
}


/* =========================================================
   V6.0 FEATURED IMAGE STATE CARDS
   State cards use each post's Featured Image; fallback assets only if missing.
   ========================================================= */

html body.home main .sa-state-grid,
html body.home .sa-state-grid{
  max-width:1440px !important;
  grid-template-columns:repeat(8, minmax(0, 1fr)) !important;
  gap:16px !important;
}

html body.home main .sa-state-grid > a.sa-state-card,
html body.home .sa-state-grid > a.sa-state-card,
html body.home a.sa-state-card{
  height:182px !important;
  min-height:182px !important;
  max-height:182px !important;
  border-radius:8px !important;
  background-image:
    linear-gradient(180deg, rgba(5,8,22,0) 0%, rgba(5,8,22,.14) 42%, rgba(5,8,22,.96) 100%),
    var(--state-img) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  box-shadow:0 16px 32px rgba(15,23,42,.24) !important;
}

html body.home a.sa-state-card small{
  top:12px !important;
  left:12px !important;
  height:20px !important;
  padding:0 8px !important;
  font-size:8px !important;
}

html body.home a.sa-state-card strong{
  left:14px !important;
  bottom:34px !important;
  font-size:20px !important;
}

html body.home a.sa-state-card span{
  left:14px !important;
  bottom:15px !important;
  font-size:10.5px !important;
}

@media(max-width:1400px){
  html body.home main .sa-state-grid,
  html body.home .sa-state-grid{
    max-width:980px !important;
    grid-template-columns:repeat(4, minmax(0,1fr)) !important;
  }

  html body.home main .sa-state-grid > a.sa-state-card,
  html body.home .sa-state-grid > a.sa-state-card,
  html body.home a.sa-state-card{
    height:195px !important;
    min-height:195px !important;
    max-height:195px !important;
  }
}


/* v6.0.3 state cards upgrade */
.sa-state-grid{
display:grid!important;
grid-template-columns:repeat(4,minmax(220px,1fr))!important;
gap:24px!important;
}
.sa-state-card{
height:320px!important;
border-radius:18px!important;
background-size:cover!important;
background-position:center center!important;
box-shadow:0 18px 40px rgba(0,0,0,.25)!important;
overflow:hidden!important;
position:relative!important;
padding:20px!important;
display:flex!important;
flex-direction:column!important;
justify-content:flex-end!important;
}
.sa-state-card:before{
content:"";
position:absolute;inset:0;
background:linear-gradient(to top, rgba(0,0,0,.78), rgba(0,0,0,.18) 55%, rgba(0,0,0,.05));
}
.sa-state-card>*{position:relative;z-index:2;}
.sa-state-card strong{font-size:34px!important;line-height:1!important;color:#fff!important;}
.sa-state-card span{font-size:16px!important;color:#fff!important;}
.sa-state-card small{
position:absolute;
top:14px;left:14px;
background:#091224;
color:#f3c55b;
padding:6px 10px;
border-radius:999px;
font-weight:700;
}


/* =========================================================
   V6.5 REAL STATE CARD IMAGES
   Uses bundled Arizona / Utah / Nevada / Texas / Colorado /
   New Mexico / California / Wyoming PNG images.
   ========================================================= */

html body.home main .sa-state-grid,
html body.home .sa-state-grid{
  width:100% !important;
  max-width:1440px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}

html body.home main .sa-state-grid > a.sa-state-card,
html body.home .sa-state-grid > a.sa-state-card,
html body.home a.sa-state-card{
  box-sizing:border-box !important;
  position:relative !important;
  display:block !important;
  width:100% !important;
  height:260px !important;
  min-height:260px !important;
  max-height:260px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:14px !important;
  overflow:hidden !important;
  color:#fff !important;
  text-decoration:none !important;
  background-image:
    linear-gradient(180deg, rgba(5,8,22,0) 0%, rgba(5,8,22,.18) 48%, rgba(5,8,22,.94) 100%),
    var(--state-img) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  box-shadow:0 18px 42px rgba(15,23,42,.23) !important;
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
}

html body.home main .sa-state-grid > a.sa-state-card:hover,
html body.home .sa-state-grid > a.sa-state-card:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 26px 58px rgba(15,23,42,.32) !important;
  filter:saturate(1.06) contrast(1.04) !important;
}

html body.home a.sa-state-card small{
  position:absolute !important;
  z-index:5 !important;
  left:18px !important;
  top:18px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:26px !important;
  padding:0 12px !important;
  margin:0 !important;
  border-radius:999px !important;
  background:rgba(3,6,14,.82) !important;
  border:1px solid rgba(217,164,65,.62) !important;
  color:#F3C55B !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.02em !important;
}

html body.home a.sa-state-card strong{
  position:absolute !important;
  z-index:5 !important;
  left:22px !important;
  right:18px !important;
  bottom:48px !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  font-size:30px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:-.03em !important;
  text-shadow:0 10px 26px rgba(0,0,0,.90) !important;
}

html body.home a.sa-state-card span{
  position:absolute !important;
  z-index:5 !important;
  left:22px !important;
  right:18px !important;
  bottom:24px !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#f3f7ff !important;
  font-size:15px !important;
  line-height:1.2 !important;
  font-weight:500 !important;
  text-shadow:0 8px 20px rgba(0,0,0,.9) !important;
}

@media(max-width:1200px){
  html body.home main .sa-state-grid,
  html body.home .sa-state-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  html body.home main .sa-state-grid,
  html body.home .sa-state-grid{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }

  html body.home main .sa-state-grid > a.sa-state-card,
  html body.home .sa-state-grid > a.sa-state-card,
  html body.home a.sa-state-card{
    height:235px !important;
    min-height:235px !important;
    max-height:235px !important;
  }
}


/* V6.6 BIG SHOWCASE STATE CARDS */
.sa-state-grid{
display:grid !important;
grid-template-columns:repeat(4,minmax(260px,1fr)) !important;
gap:24px !important;
max-width:1440px !important;
margin:0 auto !important;
}

.sa-state-card{
height:320px !important;
min-height:320px !important;
max-height:320px !important;
border-radius:18px !important;
}

.sa-state-card strong{
font-size:38px !important;
bottom:58px !important;
}

.sa-state-card span{
font-size:16px !important;
bottom:28px !important;
}

@media(max-width:1200px){
.sa-state-grid{grid-template-columns:repeat(2,1fr)!important;}
}

@media(max-width:768px){
.sa-state-grid{grid-template-columns:1fr!important;}
.sa-state-card{height:280px!important;}
}


/* =========================================================
   STARGAZING ATLAS V6.7 FORCE BIG STATE CARDS
   This file is enqueued last and overrides all previous card CSS.
   ========================================================= */

html body.home main .sa-section,
html body.home .sa-section{
  max-width:100% !important;
  width:100% !important;
  padding-left:70px !important;
  padding-right:70px !important;
}

html body.home main .sa-head,
html body.home .sa-head{
  width:100% !important;
  max-width:1320px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

html body.home main .sa-state-grid,
html body.home .sa-state-grid,
html body.home div.sa-state-grid{
  width:100% !important;
  max-width:1320px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:24px !important;
  align-items:stretch !important;
}

html body.home main .sa-state-grid > a.sa-state-card,
html body.home .sa-state-grid > a.sa-state-card,
html body.home a.sa-state-card{
  box-sizing:border-box !important;
  position:relative !important;
  display:block !important;
  width:100% !important;
  height:300px !important;
  min-height:300px !important;
  max-height:300px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:16px !important;
  overflow:hidden !important;
  background-image:
    linear-gradient(180deg, rgba(5,8,22,0) 0%, rgba(5,8,22,.18) 48%, rgba(5,8,22,.95) 100%),
    var(--state-img) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  box-shadow:0 22px 50px rgba(15,23,42,.26) !important;
  color:#fff !important;
  text-decoration:none !important;
}

html body.home main .sa-state-grid > a.sa-state-card:hover,
html body.home .sa-state-grid > a.sa-state-card:hover{
  transform:translateY(-5px) !important;
  box-shadow:0 30px 70px rgba(15,23,42,.35) !important;
}

html body.home a.sa-state-card small{
  position:absolute !important;
  top:20px !important;
  left:20px !important;
  z-index:5 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:28px !important;
  padding:0 13px !important;
  border-radius:999px !important;
  background:rgba(3,6,14,.82) !important;
  border:1px solid rgba(217,164,65,.65) !important;
  color:#F3C55B !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.02em !important;
}

html body.home a.sa-state-card strong{
  position:absolute !important;
  z-index:5 !important;
  left:24px !important;
  right:20px !important;
  bottom:58px !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  font-size:34px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:-.035em !important;
  text-shadow:0 12px 28px rgba(0,0,0,.95) !important;
}

html body.home a.sa-state-card span{
  position:absolute !important;
  z-index:5 !important;
  left:24px !important;
  right:20px !important;
  bottom:30px !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#f3f7ff !important;
  font-size:16px !important;
  line-height:1.25 !important;
  font-weight:500 !important;
  text-shadow:0 9px 22px rgba(0,0,0,.95) !important;
}

@media(max-width:1200px){
  html body.home main .sa-state-grid,
  html body.home .sa-state-grid,
  html body.home div.sa-state-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    max-width:900px !important;
  }
}

@media(max-width:720px){
  html body.home main .sa-section,
  html body.home .sa-section{
    padding-left:20px !important;
    padding-right:20px !important;
  }

  html body.home main .sa-state-grid,
  html body.home .sa-state-grid,
  html body.home div.sa-state-grid{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }

  html body.home main .sa-state-grid > a.sa-state-card,
  html body.home .sa-state-grid > a.sa-state-card,
  html body.home a.sa-state-card{
    height:260px !important;
    min-height:260px !important;
    max-height:260px !important;
  }
}


/* =========================================================
   V6.8 HARD HTML GRID — 4 + 4 LARGE STATE SHOWCASE
   Uses new class names so previous .sa-state-grid CSS cannot shrink cards.
   ========================================================= */

html body.home .sa-v68-state-showcase{
  width:100% !important;
  max-width:1320px !important;
  margin:0 auto !important;
  display:flex !important;
  flex-direction:column !important;
  gap:24px !important;
}

html body.home .sa-v68-state-row{
  width:100% !important;
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:24px !important;
}

html body.home .sa-v68-state-card{
  box-sizing:border-box !important;
  position:relative !important;
  display:block !important;
  width:100% !important;
  height:300px !important;
  min-height:300px !important;
  max-height:300px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:16px !important;
  overflow:hidden !important;
  color:#fff !important;
  text-decoration:none !important;
  background-image:
    linear-gradient(180deg, rgba(5,8,22,0) 0%, rgba(5,8,22,.18) 48%, rgba(5,8,22,.96) 100%),
    var(--state-img) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  box-shadow:0 22px 50px rgba(15,23,42,.26) !important;
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
}

html body.home .sa-v68-state-card:hover{
  transform:translateY(-5px) !important;
  box-shadow:0 30px 70px rgba(15,23,42,.35) !important;
  filter:saturate(1.05) contrast(1.04) !important;
}

html body.home .sa-v68-state-card small{
  position:absolute !important;
  z-index:5 !important;
  top:20px !important;
  left:20px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:28px !important;
  padding:0 13px !important;
  border-radius:999px !important;
  background:rgba(3,6,14,.84) !important;
  border:1px solid rgba(217,164,65,.66) !important;
  color:#F3C55B !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.02em !important;
}

html body.home .sa-v68-state-card strong{
  position:absolute !important;
  z-index:5 !important;
  left:24px !important;
  right:20px !important;
  bottom:58px !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  font-size:34px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:-.035em !important;
  text-shadow:0 12px 28px rgba(0,0,0,.95) !important;
}

html body.home .sa-v68-state-card span{
  position:absolute !important;
  z-index:5 !important;
  left:24px !important;
  right:20px !important;
  bottom:30px !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#f3f7ff !important;
  font-size:16px !important;
  line-height:1.25 !important;
  font-weight:500 !important;
  text-shadow:0 9px 22px rgba(0,0,0,.95) !important;
}

@media(max-width:1200px){
  html body.home .sa-v68-state-row{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  html body.home .sa-v68-state-showcase{
    gap:18px !important;
  }
  html body.home .sa-v68-state-row{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  html body.home .sa-v68-state-card{
    height:260px !important;
    min-height:260px !important;
    max-height:260px !important;
  }
}


/* =========================================================
   V6.9 PREMIUM STATE CARD POLISH
   Hover zoom, richer overlay, softer shadow, premium movement.
   ========================================================= */

html body.home .sa-v68-state-card{
  isolation:isolate !important;
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    filter .28s ease !important;
}

html body.home .sa-v68-state-card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  background:inherit !important;
  background-size:cover !important;
  background-position:center center !important;
  transform:scale(1) !important;
  transition:transform .42s ease, filter .42s ease !important;
}

html body.home .sa-v68-state-card::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:2 !important;
  background:
    radial-gradient(circle at 50% 12%, rgba(255,255,255,.10), transparent 34%),
    linear-gradient(180deg, rgba(5,8,22,.05) 0%, rgba(5,8,22,.22) 48%, rgba(5,8,22,.96) 100%) !important;
  pointer-events:none !important;
}

html body.home .sa-v68-state-card:hover{
  transform:translateY(-7px) !important;
  box-shadow:0 34px 82px rgba(15,23,42,.42) !important;
  filter:saturate(1.08) contrast(1.04) !important;
}

html body.home .sa-v68-state-card:hover::before{
  transform:scale(1.065) !important;
  filter:saturate(1.08) contrast(1.05) !important;
}

html body.home .sa-v68-state-card small,
html body.home .sa-v68-state-card strong,
html body.home .sa-v68-state-card span{
  z-index:5 !important;
}

html body.home .sa-v68-state-card small{
  box-shadow:0 8px 20px rgba(0,0,0,.22) !important;
  backdrop-filter:blur(8px) !important;
}

html body.home .sa-v68-state-card strong{
  transition:transform .28s ease !important;
}

html body.home .sa-v68-state-card span{
  opacity:.94 !important;
  transition:transform .28s ease, opacity .28s ease !important;
}

html body.home .sa-v68-state-card:hover strong{
  transform:translateY(-4px) !important;
}

html body.home .sa-v68-state-card:hover span{
  transform:translateY(-4px) !important;
  opacity:1 !important;
}

/* Section polish */
html body.home .sa-v68-state-showcase{
  gap:26px !important;
}

html body.home .sa-v68-state-row{
  gap:26px !important;
}

html body.home .sa-v68-state-card{
  height:312px !important;
  min-height:312px !important;
  max-height:312px !important;
  border-radius:18px !important;
}

/* keep clickable content above pseudo layers */
html body.home .sa-v68-state-card > *{
  position:relative !important;
}

@media(max-width:720px){
  html body.home .sa-v68-state-card{
    height:270px !important;
    min-height:270px !important;
    max-height:270px !important;
  }
}


/* =========================================================
   V7.0 DYNAMIC STATE ENGINE
   Dynamic 4 + 4 large state cards with featured-image fallback,
   Bortle / Best Month metadata, premium hover.
   ========================================================= */

html body.home .sa-v70-state-showcase{
  width:100% !important;
  max-width:1320px !important;
  margin:0 auto !important;
  display:flex !important;
  flex-direction:column !important;
  gap:26px !important;
}

html body.home .sa-v70-state-row{
  width:100% !important;
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:26px !important;
}

html body.home .sa-v70-state-card{
  box-sizing:border-box !important;
  position:relative !important;
  display:block !important;
  width:100% !important;
  height:318px !important;
  min-height:318px !important;
  max-height:318px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:18px !important;
  overflow:hidden !important;
  color:#fff !important;
  text-decoration:none !important;
  isolation:isolate !important;
  background-image:
    linear-gradient(180deg, rgba(5,8,22,0) 0%, rgba(5,8,22,.20) 48%, rgba(5,8,22,.96) 100%),
    var(--state-img) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  box-shadow:0 24px 58px rgba(15,23,42,.28) !important;
  transition:transform .28s ease, box-shadow .28s ease, filter .28s ease !important;
}

html body.home .sa-v70-state-card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  background:inherit !important;
  background-size:cover !important;
  background-position:center center !important;
  transform:scale(1) !important;
  transition:transform .42s ease, filter .42s ease !important;
}

html body.home .sa-v70-state-card::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:2 !important;
  background:
    radial-gradient(circle at 50% 10%, rgba(255,255,255,.10), transparent 34%),
    linear-gradient(180deg, rgba(5,8,22,.02) 0%, rgba(5,8,22,.20) 48%, rgba(5,8,22,.97) 100%) !important;
  pointer-events:none !important;
}

html body.home .sa-v70-state-card:hover{
  transform:translateY(-7px) !important;
  box-shadow:0 34px 82px rgba(15,23,42,.42) !important;
  filter:saturate(1.08) contrast(1.04) !important;
}

html body.home .sa-v70-state-card:hover::before{
  transform:scale(1.065) !important;
  filter:saturate(1.08) contrast(1.05) !important;
}

html body.home .sa-v70-state-card small,
html body.home .sa-v70-state-card strong,
html body.home .sa-v70-state-card span,
html body.home .sa-v70-state-card em{
  position:absolute !important;
  z-index:5 !important;
}

html body.home .sa-v70-state-card small{
  top:20px !important;
  left:20px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:28px !important;
  padding:0 13px !important;
  border-radius:999px !important;
  background:rgba(3,6,14,.84) !important;
  border:1px solid rgba(217,164,65,.66) !important;
  color:#F3C55B !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.02em !important;
  box-shadow:0 8px 20px rgba(0,0,0,.22) !important;
  backdrop-filter:blur(8px) !important;
}

html body.home .sa-v70-state-card strong{
  left:24px !important;
  right:20px !important;
  bottom:74px !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  font-size:34px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:-.035em !important;
  text-shadow:0 12px 28px rgba(0,0,0,.95) !important;
  transition:transform .28s ease !important;
}

html body.home .sa-v70-state-card span{
  left:24px !important;
  right:20px !important;
  bottom:50px !important;
  display:block !important;
  color:#f3f7ff !important;
  font-size:16px !important;
  line-height:1.25 !important;
  font-weight:600 !important;
  text-shadow:0 9px 22px rgba(0,0,0,.95) !important;
  transition:transform .28s ease, opacity .28s ease !important;
}

html body.home .sa-v70-state-card em{
  left:24px !important;
  bottom:24px !important;
  display:inline-flex !important;
  align-items:center !important;
  height:22px !important;
  padding:0 9px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.13) !important;
  border:1px solid rgba(255,255,255,.20) !important;
  color:#fff !important;
  font-size:11px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:800 !important;
  backdrop-filter:blur(7px) !important;
}

html body.home .sa-v70-state-card:hover strong,
html body.home .sa-v70-state-card:hover span,
html body.home .sa-v70-state-card:hover em{
  transform:translateY(-4px) !important;
}

html body.home .sa-v70-state-footer{
  max-width:1320px !important;
  margin:26px auto 0 !important;
  display:flex !important;
  justify-content:flex-end !important;
}

html body.home .sa-v70-state-footer a{
  color:#0b57ff !important;
  font-weight:900 !important;
  text-decoration:none !important;
}

@media(max-width:1200px){
  html body.home .sa-v70-state-row{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  html body.home .sa-v70-state-showcase{
    gap:18px !important;
  }
  html body.home .sa-v70-state-row{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  html body.home .sa-v70-state-card{
    height:270px !important;
    min-height:270px !important;
    max-height:270px !important;
  }
  html body.home .sa-v70-state-card strong{
    font-size:30px !important;
  }
}


/* =========================================================
   V7.1 DARK SKY SCORE & BORTLE LAYER
   Adds premium score badge to dynamic state cards.
   ========================================================= */

html body.home .sa-v70-state-card{
  height:330px !important;
  min-height:330px !important;
  max-height:330px !important;
}

html body.home .sa-v70-state-card .sa-v71-score,
html body.home .sa-v70-state-card b.sa-v71-score{
  position:absolute !important;
  z-index:6 !important;
  right:18px !important;
  top:18px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  width:74px !important;
  height:58px !important;
  border-radius:16px !important;
  background:rgba(3,6,14,.72) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:0 14px 30px rgba(0,0,0,.28) !important;
  backdrop-filter:blur(10px) !important;
  color:#fff !important;
  text-decoration:none !important;
  font-style:normal !important;
}

html body.home .sa-v70-state-card .sa-v71-score i,
html body.home .sa-v70-state-card b.sa-v71-score i{
  display:block !important;
  margin:0 0 3px 0 !important;
  color:#F3C55B !important;
  font-size:22px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:-.04em !important;
}

html body.home .sa-v70-state-card .sa-v71-score span,
html body.home .sa-v70-state-card b.sa-v71-score span{
  display:block !important;
  max-width:62px !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
  color:#eaf1ff !important;
  font-size:8px !important;
  line-height:1 !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.03em !important;
}

html body.home .sa-v70-state-card small{
  top:20px !important;
  left:20px !important;
}

html body.home .sa-v70-state-card strong{
  bottom:86px !important;
}

html body.home .sa-v70-state-card span{
  bottom:62px !important;
}

html body.home .sa-v70-state-card em{
  bottom:32px !important;
}

html body.home .sa-v70-state-card:hover .sa-v71-score{
  transform:translateY(-3px) scale(1.03) !important;
  border-color:rgba(243,197,91,.55) !important;
}

html body.home .sa-v70-state-card .sa-v71-score{
  transition:transform .25s ease, border-color .25s ease !important;
}

/* Score legend below cards */
html body.home .sa-v70-state-footer{
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
}

html body.home .sa-v70-state-footer::before{
  content:"Dark Sky Score combines darkness, altitude, remoteness, and viewing season." !important;
  color:#475569 !important;
  font-size:13px !important;
  line-height:1.4 !important;
}

@media(max-width:720px){
  html body.home .sa-v70-state-card{
    height:290px !important;
    min-height:290px !important;
    max-height:290px !important;
  }
  html body.home .sa-v70-state-card .sa-v71-score{
    width:66px !important;
    height:54px !important;
  }
  html body.home .sa-v70-state-footer{
    flex-direction:column !important;
    align-items:flex-start !important;
  }
}


/* =========================================================
   V7.2 TRAVEL DATA BADGES
   Removes artificial score numbers. Uses cleaner Bortle + Best Season badges.
   ========================================================= */

html body.home .sa-v70-state-card{
  height:326px !important;
  min-height:326px !important;
  max-height:326px !important;
  border-radius:18px !important;
  box-shadow:0 24px 58px rgba(15,23,42,.27) !important;
}

/* remove previous numeric score layer entirely */
html body.home .sa-v71-score,
html body.home b.sa-v71-score{
  display:none !important;
}

/* content positioning after score removal */
html body.home .sa-v70-state-card strong{
  bottom:88px !important;
  font-size:35px !important;
}

html body.home .sa-v70-state-card span{
  bottom:62px !important;
  font-size:16px !important;
}

/* new two-badge data layer */
html body.home .sa-v70-state-card em{
  left:24px !important;
  right:20px !important;
  bottom:26px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  height:auto !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  backdrop-filter:none !important;
}

html body.home .sa-v70-state-card em span{
  position:static !important;
  display:inline-flex !important;
  align-items:center !important;
  height:24px !important;
  padding:0 10px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.14) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  color:#fff !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:900 !important;
  text-shadow:none !important;
  backdrop-filter:blur(8px) !important;
}

/* Make top badge cleaner */
html body.home .sa-v70-state-card small{
  background:rgba(3,6,14,.78) !important;
  border-color:rgba(243,197,91,.72) !important;
}

/* Stronger premium hover */
html body.home .sa-v70-state-card:hover{
  transform:translateY(-8px) !important;
  box-shadow:0 38px 88px rgba(15,23,42,.43) !important;
}

html body.home .sa-v70-state-card:hover em span{
  border-color:rgba(243,197,91,.38) !important;
}

/* Footer note: replace score language with travel language */
html body.home .sa-v70-state-footer::before{
  content:"Use Bortle class and best viewing season to choose your next Milky Way trip." !important;
  color:#475569 !important;
  font-size:13px !important;
  line-height:1.4 !important;
}

@media(max-width:720px){
  html body.home .sa-v70-state-card{
    height:292px !important;
    min-height:292px !important;
    max-height:292px !important;
  }
}


/* =========================================================
   Stargazing Atlas V8.0 Homepage Rebuild
   Full homepage rebuilt as one clean system.
   ========================================================= */

:root{
  --sa-dark:#050914;
  --sa-ink:#071126;
  --sa-muted:#41506a;
  --sa-gold:#d9a441;
  --sa-blue:#0b57ff;
  --sa-bg:#f4f7fb;
}

html body.home{background:var(--sa-bg)!important;color:var(--sa-ink)!important;}
html body.home .site-content,
html body.home .ast-container,
html body.home .entry-content{
  max-width:none!important;
  padding:0!important;
  margin:0!important;
}

.sa-v8-home{background:var(--sa-bg);overflow:hidden;}
.sa-v8-hero{
  min-height:640px;
  background-size:cover;
  background-position:center center;
  display:flex;
  align-items:center;
  padding:120px 70px 160px;
  color:#fff;
}
.sa-v8-hero-inner{max-width:1320px;width:100%;margin:0 auto;}
.sa-v8-kicker{
  margin:0 0 20px;
  color:#f3c55b;
  font-size:14px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.sa-v8-hero h1{
  margin:0;
  max-width:720px;
  color:#fff;
  font-size:72px;
  line-height:.96;
  font-weight:950;
  letter-spacing:-.055em;
  text-shadow:0 16px 42px rgba(0,0,0,.38);
}
.sa-v8-subtitle{
  max-width:650px;
  margin:26px 0 0;
  color:#f3f7ff;
  font-size:20px;
  line-height:1.55;
}
.sa-v8-actions{display:flex;gap:16px;margin-top:34px;flex-wrap:wrap;}
.sa-v8-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  padding:0 26px;
  border-radius:9px;
  font-size:14px;
  font-weight:950;
  text-decoration:none!important;
}
.sa-v8-btn.primary{background:#e5aa36;color:#071126!important;box-shadow:0 18px 42px rgba(217,164,65,.26);}
.sa-v8-btn.secondary{background:rgba(5,9,20,.38);color:#fff!important;border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(8px);}

.sa-v8-feature-wrap{position:relative;margin-top:-82px;padding:0 70px 72px;}
.sa-v8-feature-grid{
  max-width:1320px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
}
.sa-v8-feature-card{
  display:block;
  background:#fff;
  border-radius:14px;
  padding:30px 28px;
  color:var(--sa-ink)!important;
  text-decoration:none!important;
  box-shadow:0 22px 62px rgba(15,23,42,.14);
  transition:transform .22s ease, box-shadow .22s ease;
}
.sa-v8-feature-card:hover{transform:translateY(-5px);box-shadow:0 32px 80px rgba(15,23,42,.22);}
.sa-v8-icon{
  width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  margin-bottom:22px;font-size:24px;background:#071126;color:#f3c55b;border:1px solid rgba(217,164,65,.5);
}
.sa-v8-icon.green{background:#064e2f;color:#78d46b;}
.sa-v8-icon.purple{background:#21104d;color:#c4a5ff;}
.sa-v8-icon.blue{background:#082f5f;color:#7dd3fc;}
.sa-v8-feature-card h3{margin:0 0 12px;font-size:20px;line-height:1.15;font-weight:950;color:var(--sa-ink);}
.sa-v8-feature-card p{margin:0 0 20px;color:#334155;font-size:15px;line-height:1.55;}
.sa-v8-feature-card strong{color:#d99408;font-size:15px;font-weight:950;}

.sa-v8-section{padding:84px 70px;background:var(--sa-bg);}
.sa-v8-head{max-width:1320px;margin:0 auto 34px;}
.sa-v8-head.row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;}
.sa-v8-head h2{margin:0 0 12px;color:var(--sa-ink);font-size:36px;line-height:1.05;font-weight:950;letter-spacing:-.04em;}
.sa-v8-head p{max-width:660px;margin:0;color:var(--sa-muted);font-size:15px;line-height:1.55;}
.sa-v8-head a{color:var(--sa-blue)!important;font-weight:950;text-decoration:none!important;white-space:nowrap;}

.sa-v8-state-grid{
  max-width:1320px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:26px;
}
.sa-v8-state-card{
  position:relative;display:block;height:318px;border-radius:18px;overflow:hidden;color:#fff!important;text-decoration:none!important;
  background-image:linear-gradient(180deg,rgba(5,8,22,0) 0%,rgba(5,8,22,.22) 48%,rgba(5,8,22,.96) 100%),var(--img);
  background-size:cover;background-position:center center;
  box-shadow:0 24px 58px rgba(15,23,42,.28);
  transition:transform .28s ease,box-shadow .28s ease,filter .28s ease;
}
.sa-v8-state-card:hover{transform:translateY(-7px);box-shadow:0 34px 82px rgba(15,23,42,.42);filter:saturate(1.08) contrast(1.04);}
.sa-v8-state-card small{
  position:absolute;top:20px;left:20px;height:28px;padding:0 13px;border-radius:999px;
  display:inline-flex;align-items:center;background:rgba(3,6,14,.84);border:1px solid rgba(217,164,65,.66);
  color:#f3c55b;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.02em;
}
.sa-v8-state-card strong{position:absolute;left:24px;right:20px;bottom:88px;color:#fff;font-size:35px;line-height:1.05;font-weight:950;letter-spacing:-.035em;text-shadow:0 12px 28px rgba(0,0,0,.95);}
.sa-v8-state-card > span{position:absolute;left:24px;right:20px;bottom:62px;color:#f3f7ff;font-size:16px;font-weight:700;text-shadow:0 9px 22px rgba(0,0,0,.95);}
.sa-v8-state-card em{position:absolute;left:24px;right:20px;bottom:26px;display:flex;flex-wrap:wrap;gap:8px;font-style:normal;}
.sa-v8-state-card em b{height:24px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);color:#fff;font-size:11px;font-weight:900;backdrop-filter:blur(8px);}

.sa-v8-guides{padding-top:70px;}
.sa-v8-guide-grid{
  max-width:1320px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;
}
.sa-v8-guide-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 22px 60px rgba(15,23,42,.14);transition:transform .24s ease,box-shadow .24s ease;}
.sa-v8-guide-card:hover{transform:translateY(-6px);box-shadow:0 34px 84px rgba(15,23,42,.22);}
.sa-v8-guide-card a{display:block;color:inherit!important;text-decoration:none!important;}
.sa-v8-guide-img{height:220px;background-size:cover;background-position:center center;transition:transform .4s ease,filter .4s ease;}
.sa-v8-guide-card:hover .sa-v8-guide-img{transform:scale(1.045);filter:saturate(1.08) contrast(1.04);}
.sa-v8-guide-body{padding:28px 26px 30px;background:#fff;}
.sa-v8-guide-body small{display:inline-flex;height:28px;align-items:center;padding:0 12px;border-radius:7px;background:#a855f7;color:#fff;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.04em;margin-bottom:18px;}
.sa-v8-guide-body h3{margin:0 0 14px;color:var(--sa-ink);font-size:22px;line-height:1.16;font-weight:950;letter-spacing:-.02em;}
.sa-v8-guide-body p{margin:0 0 20px;color:#334155;font-size:14px;line-height:1.65;}
.sa-v8-guide-body strong{color:var(--sa-blue);font-size:15px;font-weight:950;}

.sa-v8-topic-section{background:#050914;padding:84px 70px 100px;color:#fff;}
.sa-v8-topic-section .sa-v8-head h2{color:#fff;}
.sa-v8-topic-section .sa-v8-head p{color:#dce6f6;}
.sa-v8-topic-grid{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;}
.sa-v8-topic-grid a{display:block;border:1px solid rgba(255,255,255,.12);background:#0b1528;border-radius:16px;padding:28px;color:#fff!important;text-decoration:none!important;}
.sa-v8-topic-grid h3{margin:0 0 12px;color:#fff;font-size:22px;font-weight:950;}
.sa-v8-topic-grid p{margin:0;color:#cbd5e1;font-size:14px;line-height:1.5;}

@media(max-width:1100px){
  .sa-v8-feature-grid,.sa-v8-state-grid,.sa-v8-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .sa-v8-guide-grid{grid-template-columns:1fr;max-width:620px;}
}
@media(max-width:720px){
  .sa-v8-hero{padding:90px 20px 130px;min-height:560px;}
  .sa-v8-hero h1{font-size:46px;}
  .sa-v8-subtitle{font-size:17px;}
  .sa-v8-feature-wrap,.sa-v8-section,.sa-v8-topic-section{padding-left:20px;padding-right:20px;}
  .sa-v8-feature-grid,.sa-v8-state-grid,.sa-v8-topic-grid{grid-template-columns:1fr;}
  .sa-v8-state-card{height:292px;}
  .sa-v8-head.row{flex-direction:column;align-items:flex-start;}
}


/* =========================================================
   V8.0.1 FOOTER RESTORE
   Adds visible premium homepage footer back into front-page.php.
   ========================================================= */

.sa-v8-footer{
  background:#050914 !important;
  color:#fff !important;
  padding:76px 70px 34px !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
}

.sa-v8-footer-inner{
  max-width:1320px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:1.4fr .8fr .8fr .8fr !important;
  gap:54px !important;
}

.sa-v8-footer-brand h2{
  margin:0 0 14px !important;
  color:#fff !important;
  font-size:28px !important;
  line-height:1.1 !important;
  font-weight:950 !important;
  letter-spacing:-.03em !important;
}

.sa-v8-footer-brand p{
  margin:0 !important;
  max-width:360px !important;
  color:#dce6f6 !important;
  font-size:15px !important;
  line-height:1.7 !important;
}

.sa-v8-footer-col h3{
  margin:0 0 18px !important;
  color:#fff !important;
  font-size:16px !important;
  font-weight:950 !important;
}

.sa-v8-footer-col a{
  display:block !important;
  margin:0 0 13px !important;
  color:#dce6f6 !important;
  font-size:15px !important;
  text-decoration:none !important;
}

.sa-v8-footer-col a:hover{
  color:#f3c55b !important;
}

.sa-v8-footer-bottom{
  max-width:1320px !important;
  margin:44px auto 0 !important;
  padding-top:26px !important;
  border-top:1px solid rgba(255,255,255,.12) !important;
  color:#9fb0c8 !important;
  font-size:13px !important;
}

@media(max-width:900px){
  .sa-v8-footer{
    padding:58px 24px 30px !important;
  }
  .sa-v8-footer-inner{
    grid-template-columns:1fr 1fr !important;
    gap:34px !important;
  }
}

@media(max-width:560px){
  .sa-v8-footer-inner{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   V8.1 PERFORMANCE BUILD
   WebP image references + lighter rendering polish.
   ========================================================= */

.sa-v8-state-card,
.sa-v8-guide-img,
.sa-v8-hero{
  background-color:#050914 !important;
}

.sa-v8-state-card,
.sa-v8-guide-card{
  will-change:transform !important;
}

@media(max-width:720px){
  .sa-v8-hero{
    min-height:520px !important;
  }
}


/* =========================================================
   V8.2 HEADER + LOGO + CATEGORY MENU FIX
   Restores fixed premium top navigation on homepage.
   ========================================================= */

html body.home .site-header,
html body.home header.site-header,
html body.home .ast-primary-header-bar,
html body.home .main-header-bar{
  display:none !important;
}

.sa-v82-site-header{
  position:relative !important;
  z-index:999 !important;
  width:100% !important;
  background:#050914 !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.22) !important;
}

.sa-v82-header-inner{
  max-width:1320px !important;
  margin:0 auto !important;
  min-height:92px !important;
  padding:0 70px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:36px !important;
}

.sa-v82-logo{
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  text-decoration:none !important;
  color:#fff !important;
  flex:0 0 auto !important;
}

.sa-v82-logo-mark{
  position:relative !important;
  width:58px !important;
  height:58px !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:linear-gradient(145deg,#071126,#142447) !important;
  border:2px solid #d9a441 !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.08),0 12px 28px rgba(0,0,0,.28) !important;
  overflow:hidden !important;
}

.sa-v82-logo-stars{
  position:absolute !important;
  top:9px !important;
  left:14px !important;
  color:#f3c55b !important;
  font-size:15px !important;
  line-height:1 !important;
}

.sa-v82-logo-mountain{
  position:absolute !important;
  bottom:10px !important;
  left:13px !important;
  width:34px !important;
  height:24px !important;
  background:
    linear-gradient(135deg, transparent 49%, #fff 50% 63%, transparent 64%) left bottom/22px 22px no-repeat,
    linear-gradient(45deg, transparent 49%, #cbd5e1 50% 63%, transparent 64%) right bottom/24px 24px no-repeat !important;
}

.sa-v82-logo-text{
  display:flex !important;
  flex-direction:column !important;
  line-height:1 !important;
}

.sa-v82-logo-text strong{
  color:#fff !important;
  font-size:25px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.035em !important;
}

.sa-v82-logo-text em{
  margin-top:7px !important;
  color:#f3c55b !important;
  font-size:15px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.34em !important;
  text-align:center !important;
}

.sa-v82-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:30px !important;
  flex-wrap:wrap !important;
}

.sa-v82-nav a{
  color:#fff !important;
  text-decoration:none !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.01em !important;
  transition:color .18s ease !important;
}

.sa-v82-nav a:hover{
  color:#f3c55b !important;
}

html body.home .sa-v8-hero{
  margin-top:0 !important;
}

/* Keep admin bar from overlapping header on logged-in view */
body.admin-bar .sa-v82-site-header{
  margin-top:0 !important;
}

@media(max-width:1100px){
  .sa-v82-header-inner{
    padding:18px 28px !important;
    min-height:auto !important;
    align-items:flex-start !important;
    flex-direction:column !important;
  }

  .sa-v82-nav{
    justify-content:flex-start !important;
    gap:18px 24px !important;
  }
}

@media(max-width:640px){
  .sa-v82-header-inner{
    padding:16px 20px !important;
  }

  .sa-v82-logo-mark{
    width:48px !important;
    height:48px !important;
  }

  .sa-v82-logo-text strong{
    font-size:20px !important;
  }

  .sa-v82-logo-text em{
    font-size:12px !important;
  }

  .sa-v82-nav a{
    font-size:12px !important;
  }
}


/* =========================================================
   V8.2.1 ABSOLUTE VISIBLE HEADER FIX
   Header is inserted directly before homepage main content.
   ========================================================= */

/* Hide Astra native header on homepage only, because we render our own clean header. */
body.home .site-header,
body.home header.site-header,
body.home .ast-primary-header-bar,
body.home .main-header-bar,
body.home .ast-mobile-header-wrap{
  display:none !important;
}

body.home .sa-v821-header-shell{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  z-index:999999 !important;
  width:100% !important;
  background:#050914 !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.24) !important;
}

body.home .sa-v821-header{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:34px !important;
  width:100% !important;
  max-width:1320px !important;
  min-height:94px !important;
  margin:0 auto !important;
  padding:0 70px !important;
  box-sizing:border-box !important;
}

body.home .sa-v821-logo{
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  flex:0 0 auto !important;
  color:#fff !important;
  text-decoration:none !important;
}

body.home .sa-v821-logo-mark{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:58px !important;
  height:58px !important;
  flex:0 0 58px !important;
  border-radius:50% !important;
  background:linear-gradient(145deg,#071126,#142447) !important;
  border:2px solid #d9a441 !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.08),0 12px 28px rgba(0,0,0,.30) !important;
  overflow:hidden !important;
}

body.home .sa-v821-star{
  position:absolute !important;
  top:9px !important;
  left:15px !important;
  color:#f3c55b !important;
  font-size:15px !important;
  line-height:1 !important;
}

body.home .sa-v821-mountain{
  position:absolute !important;
  left:12px !important;
  bottom:10px !important;
  width:36px !important;
  height:25px !important;
  background:
    linear-gradient(135deg, transparent 49%, #fff 50% 63%, transparent 64%) left bottom/23px 23px no-repeat,
    linear-gradient(45deg, transparent 49%, #cbd5e1 50% 63%, transparent 64%) right bottom/25px 25px no-repeat !important;
}

body.home .sa-v821-logo-copy{
  display:flex !important;
  flex-direction:column !important;
  line-height:1 !important;
}

body.home .sa-v821-logo-copy strong{
  display:block !important;
  color:#fff !important;
  font-size:25px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.035em !important;
}

body.home .sa-v821-logo-copy em{
  display:block !important;
  margin-top:7px !important;
  color:#f3c55b !important;
  font-size:15px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.34em !important;
  text-align:center !important;
}

body.home .sa-v821-menu{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:wrap !important;
  gap:28px !important;
}

body.home .sa-v821-menu a{
  display:inline-flex !important;
  align-items:center !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.01em !important;
  white-space:nowrap !important;
  transition:color .18s ease !important;
}

body.home .sa-v821-menu a:hover{
  color:#f3c55b !important;
}

/* Prevent hero from sliding under header */
body.home .sa-v8-hero{
  margin-top:0 !important;
}

@media(max-width:1120px){
  body.home .sa-v821-header{
    min-height:auto !important;
    padding:20px 28px !important;
    flex-direction:column !important;
    align-items:flex-start !important;
  }
  body.home .sa-v821-menu{
    justify-content:flex-start !important;
    gap:18px 24px !important;
  }
}

@media(max-width:640px){
  body.home .sa-v821-header{
    padding:16px 20px !important;
  }
  body.home .sa-v821-logo-mark{
    width:48px !important;
    height:48px !important;
    flex-basis:48px !important;
  }
  body.home .sa-v821-logo-copy strong{
    font-size:20px !important;
  }
  body.home .sa-v821-logo-copy em{
    font-size:12px !important;
  }
  body.home .sa-v821-menu a{
    font-size:12px !important;
  }
}


/* =========================================================
   V8.2 BRANDING BUILD
   Real logo image, favicon-ready assets, premium category nav.
   ========================================================= */

body.home .site-header,
body.home header.site-header,
body.home .ast-primary-header-bar,
body.home .main-header-bar,
body.home .ast-mobile-header-wrap{
  display:none !important;
}

body.home .sa-v82b-header-shell{
  display:block !important;
  position:relative !important;
  z-index:999999 !important;
  width:100% !important;
  background:#050914 !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.24) !important;
}

body.home .sa-v82b-header{
  max-width:1320px !important;
  min-height:96px !important;
  margin:0 auto !important;
  padding:0 70px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:34px !important;
  box-sizing:border-box !important;
}

body.home .sa-v82b-logo{
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  color:#fff !important;
  text-decoration:none !important;
  flex:0 0 auto !important;
  transition:transform .22s ease !important;
}

body.home .sa-v82b-logo:hover{
  transform:scale(1.025) !important;
}

body.home .sa-v82b-logo img{
  width:64px !important;
  height:64px !important;
  display:block !important;
  object-fit:contain !important;
  border-radius:50% !important;
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.32)) !important;
}

body.home .sa-v82b-logo span{
  display:flex !important;
  flex-direction:column !important;
  line-height:1 !important;
}

body.home .sa-v82b-logo strong{
  color:#fff !important;
  font-size:25px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.035em !important;
}

body.home .sa-v82b-logo em{
  margin-top:7px !important;
  color:#f3c55b !important;
  font-size:15px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.34em !important;
  text-align:center !important;
}

body.home .sa-v82b-menu{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:wrap !important;
  gap:28px !important;
}

body.home .sa-v82b-menu a{
  display:inline-flex !important;
  align-items:center !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.01em !important;
  white-space:nowrap !important;
  transition:color .18s ease, transform .18s ease !important;
}

body.home .sa-v82b-menu a:hover{
  color:#f3c55b !important;
  transform:translateY(-1px) !important;
}

body.home .sa-v8-hero{
  margin-top:0 !important;
}

@media(max-width:1120px){
  body.home .sa-v82b-header{
    min-height:auto !important;
    padding:20px 28px !important;
    flex-direction:column !important;
    align-items:flex-start !important;
  }
  body.home .sa-v82b-menu{
    justify-content:flex-start !important;
    gap:18px 24px !important;
  }
}

@media(max-width:640px){
  body.home .sa-v82b-header{
    padding:16px 20px !important;
  }
  body.home .sa-v82b-logo img{
    width:52px !important;
    height:52px !important;
  }
  body.home .sa-v82b-logo strong{
    font-size:20px !important;
  }
  body.home .sa-v82b-logo em{
    font-size:12px !important;
  }
  body.home .sa-v82b-menu a{
    font-size:12px !important;
  }
}


/* =========================================================
   V8.3 DISCOVERY BUILD
   Adds search, planning metrics, and discovery cards.
   ========================================================= */

.sa-v83-discovery{
  background:#f4f7fb !important;
  padding:18px 70px 86px !important;
}

.sa-v83-discovery-inner{
  max-width:1320px !important;
  margin:0 auto !important;
  background:linear-gradient(135deg,#071126 0%,#0b1528 54%,#10213d 100%) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:26px !important;
  padding:44px !important;
  color:#fff !important;
  box-shadow:0 30px 90px rgba(15,23,42,.18) !important;
  position:relative !important;
  overflow:hidden !important;
}

.sa-v83-discovery-inner::before{
  content:"" !important;
  position:absolute !important;
  inset:-120px -120px auto auto !important;
  width:360px !important;
  height:360px !important;
  border-radius:50% !important;
  background:radial-gradient(circle,rgba(217,164,65,.22),transparent 62%) !important;
  pointer-events:none !important;
}

.sa-v83-discovery-head{
  position:relative !important;
  max-width:760px !important;
  margin-bottom:28px !important;
}

.sa-v83-discovery-head p{
  margin:0 0 12px !important;
  color:#f3c55b !important;
  font-size:13px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
}

.sa-v83-discovery-head h2{
  margin:0 0 14px !important;
  color:#fff !important;
  font-size:38px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:-.04em !important;
}

.sa-v83-discovery-head span{
  display:block !important;
  color:#dce6f6 !important;
  font-size:16px !important;
  line-height:1.65 !important;
}

.sa-v83-search{
  position:relative !important;
  display:flex !important;
  gap:12px !important;
  max-width:900px !important;
  margin:0 0 30px !important;
}

.sa-v83-search input{
  width:100% !important;
  min-height:58px !important;
  border-radius:12px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
  padding:0 18px !important;
  font-size:15px !important;
  outline:none !important;
}

.sa-v83-search input::placeholder{
  color:#cbd5e1 !important;
}

.sa-v83-search button{
  min-height:58px !important;
  padding:0 22px !important;
  border:0 !important;
  border-radius:12px !important;
  background:#e5aa36 !important;
  color:#071126 !important;
  font-size:14px !important;
  font-weight:950 !important;
  white-space:nowrap !important;
  cursor:pointer !important;
}

.sa-v83-metrics{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
  margin:0 0 26px !important;
}

.sa-v83-metrics div{
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.11) !important;
  border-radius:16px !important;
  padding:20px !important;
}

.sa-v83-metrics strong{
  display:block !important;
  color:#fff !important;
  font-size:32px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:-.04em !important;
}

.sa-v83-metrics span{
  display:block !important;
  margin-top:8px !important;
  color:#cbd5e1 !important;
  font-size:13px !important;
  line-height:1.35 !important;
}

.sa-v83-discovery-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
}

.sa-v83-discovery-card{
  display:block !important;
  min-height:210px !important;
  padding:26px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  color:#fff !important;
  text-decoration:none !important;
  transition:transform .22s ease, background .22s ease, border-color .22s ease !important;
}

.sa-v83-discovery-card:hover{
  transform:translateY(-5px) !important;
  background:rgba(255,255,255,.11) !important;
  border-color:rgba(243,197,91,.35) !important;
}

.sa-v83-discovery-card small{
  display:inline-flex !important;
  height:26px !important;
  align-items:center !important;
  padding:0 10px !important;
  border-radius:999px !important;
  background:rgba(217,164,65,.16) !important;
  border:1px solid rgba(217,164,65,.35) !important;
  color:#f3c55b !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  margin-bottom:18px !important;
}

.sa-v83-discovery-card h3{
  margin:0 0 12px !important;
  color:#fff !important;
  font-size:22px !important;
  line-height:1.16 !important;
  font-weight:950 !important;
  letter-spacing:-.02em !important;
}

.sa-v83-discovery-card p{
  margin:0 0 18px !important;
  color:#dce6f6 !important;
  font-size:14px !important;
  line-height:1.6 !important;
}

.sa-v83-discovery-card strong{
  color:#f3c55b !important;
  font-size:14px !important;
  font-weight:950 !important;
}

@media(max-width:1050px){
  .sa-v83-metrics{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .sa-v83-discovery-grid{grid-template-columns:1fr !important;}
}

@media(max-width:720px){
  .sa-v83-discovery{
    padding:18px 20px 60px !important;
  }
  .sa-v83-discovery-inner{
    padding:30px 22px !important;
    border-radius:20px !important;
  }
  .sa-v83-search{
    flex-direction:column !important;
  }
  .sa-v83-metrics{
    grid-template-columns:1fr !important;
  }
  .sa-v83-discovery-head h2{
    font-size:30px !important;
  }
}


/* =========================================================
   V8.5 INTERACTIVE USA MAP / STATE EXPLORER
   ========================================================= */

.sa-v85-map{
  background:#f4f7fb !important;
  padding:20px 70px 88px !important;
}

.sa-v85-map-inner{
  max-width:1320px !important;
  margin:0 auto !important;
}

.sa-v85-map-head{
  margin:0 0 34px !important;
  max-width:760px !important;
}

.sa-v85-map-head p{
  margin:0 0 12px !important;
  color:#d99408 !important;
  font-size:13px !important;
  font-weight:950 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.sa-v85-map-head h2{
  margin:0 0 12px !important;
  color:#071126 !important;
  font-size:38px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:-.04em !important;
}

.sa-v85-map-head span{
  display:block !important;
  color:#41506a !important;
  font-size:16px !important;
  line-height:1.6 !important;
}

.sa-v85-map-layout{
  display:grid !important;
  grid-template-columns:1.6fr .9fr !important;
  gap:28px !important;
  align-items:stretch !important;
}

.sa-v85-map-panel{
  min-height:520px !important;
  border-radius:26px !important;
  overflow:hidden !important;
  background:linear-gradient(135deg,#071126,#10213d) !important;
  box-shadow:0 28px 80px rgba(15,23,42,.16) !important;
  border:1px solid rgba(255,255,255,.08) !important;
}

.sa-v85-map-bg{
  position:relative !important;
  width:100% !important;
  height:100% !important;
  min-height:520px !important;
  background:
    radial-gradient(circle at 22% 28%,rgba(217,164,65,.22),transparent 20%),
    radial-gradient(circle at 72% 40%,rgba(59,130,246,.18),transparent 24%),
    linear-gradient(135deg,#071126,#0b1528 55%,#10213d) !important;
}

.sa-v85-map-bg::before{
  content:"" !important;
  position:absolute !important;
  inset:58px 70px !important;
  border-radius:48% 52% 44% 56% / 40% 50% 50% 60% !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  transform:skew(-10deg) rotate(-2deg) !important;
  box-shadow:inset 0 0 80px rgba(255,255,255,.03) !important;
}

.sa-v85-map-bg::after{
  content:"USA Stargazing Explorer" !important;
  position:absolute !important;
  left:34px !important;
  bottom:28px !important;
  color:rgba(255,255,255,.50) !important;
  font-size:13px !important;
  font-weight:900 !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
}

.sa-v85-pin{
  position:absolute !important;
  z-index:4 !important;
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  color:#fff !important;
  text-decoration:none !important;
  transform:translate(-50%,-50%) !important;
}

.sa-v85-pin b{
  width:38px !important;
  height:38px !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#e5aa36 !important;
  color:#071126 !important;
  font-size:12px !important;
  font-weight:950 !important;
  box-shadow:0 0 0 8px rgba(217,164,65,.15),0 14px 30px rgba(0,0,0,.28) !important;
  transition:transform .2s ease, box-shadow .2s ease !important;
}

.sa-v85-pin span{
  opacity:0 !important;
  pointer-events:none !important;
  white-space:nowrap !important;
  background:rgba(3,6,14,.82) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  color:#fff !important;
  height:28px !important;
  padding:0 10px !important;
  border-radius:999px !important;
  display:flex !important;
  align-items:center !important;
  font-size:11px !important;
  font-weight:900 !important;
  transform:translateX(-6px) !important;
  transition:opacity .18s ease, transform .18s ease !important;
}

.sa-v85-pin:hover b{
  transform:scale(1.12) !important;
  box-shadow:0 0 0 11px rgba(217,164,65,.20),0 18px 38px rgba(0,0,0,.34) !important;
}

.sa-v85-pin:hover span{
  opacity:1 !important;
  transform:translateX(0) !important;
}

.sa-v85-pin.arizona{left:24%;top:63%}
.sa-v85-pin.utah{left:34%;top:50%}
.sa-v85-pin.nevada{left:23%;top:48%}
.sa-v85-pin.texas{left:57%;top:72%}
.sa-v85-pin.colorado{left:45%;top:49%}
.sa-v85-pin.newmexico{left:42%;top:65%}
.sa-v85-pin.california{left:14%;top:55%}
.sa-v85-pin.wyoming{left:42%;top:35%}

.sa-v85-map-sidebar{
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
}

.sa-v85-sidebar-card{
  border-radius:24px !important;
  padding:34px !important;
  background:#071126 !important;
  color:#fff !important;
  box-shadow:0 24px 70px rgba(15,23,42,.16) !important;
}

.sa-v85-sidebar-card small{
  display:inline-flex !important;
  height:26px !important;
  align-items:center !important;
  padding:0 10px !important;
  border-radius:999px !important;
  background:rgba(217,164,65,.16) !important;
  border:1px solid rgba(217,164,65,.36) !important;
  color:#f3c55b !important;
  font-size:10px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  margin-bottom:18px !important;
}

.sa-v85-sidebar-card h3{
  margin:0 0 14px !important;
  color:#fff !important;
  font-size:28px !important;
  line-height:1.08 !important;
  font-weight:950 !important;
  letter-spacing:-.035em !important;
}

.sa-v85-sidebar-card p{
  margin:0 0 22px !important;
  color:#dce6f6 !important;
  font-size:15px !important;
  line-height:1.65 !important;
}

.sa-v85-sidebar-card a{
  color:#f3c55b !important;
  text-decoration:none !important;
  font-weight:950 !important;
}

.sa-v85-mini-grid{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:14px !important;
}

.sa-v85-mini-grid a{
  display:block !important;
  min-height:130px !important;
  border-radius:18px !important;
  padding:20px !important;
  background:#fff !important;
  color:#071126 !important;
  text-decoration:none !important;
  box-shadow:0 14px 38px rgba(15,23,42,.09) !important;
  transition:transform .2s ease, box-shadow .2s ease !important;
}

.sa-v85-mini-grid a:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 22px 54px rgba(15,23,42,.16) !important;
}

.sa-v85-mini-grid strong{
  display:block !important;
  margin:0 0 8px !important;
  color:#071126 !important;
  font-size:16px !important;
  line-height:1.15 !important;
  font-weight:950 !important;
}

.sa-v85-mini-grid span{
  display:block !important;
  color:#41506a !important;
  font-size:13px !important;
  line-height:1.4 !important;
}

@media(max-width:1050px){
  .sa-v85-map-layout{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:720px){
  .sa-v85-map{
    padding:20px 20px 64px !important;
  }
  .sa-v85-map-head h2{
    font-size:30px !important;
  }
  .sa-v85-map-panel,
  .sa-v85-map-bg{
    min-height:420px !important;
  }
  .sa-v85-map-bg::before{
    inset:66px 36px !important;
  }
  .sa-v85-pin span{
    display:none !important;
  }
  .sa-v85-mini-grid{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   V8.6 MOON PHASE & STARGAZING CONDITIONS CENTER
   ========================================================= */

.sa-v86-conditions{
  background:#f4f7fb !important;
  padding:20px 70px 90px !important;
}

.sa-v86-inner{
  max-width:1320px !important;
  margin:0 auto !important;
  color:#fff !important;
}

.sa-v86-head{
  max-width:780px !important;
  margin:0 0 34px !important;
}

.sa-v86-head p{
  margin:0 0 12px !important;
  color:#d99408 !important;
  font-size:13px !important;
  font-weight:950 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.sa-v86-head h2{
  margin:0 0 12px !important;
  color:#071126 !important;
  font-size:38px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:-.04em !important;
}

.sa-v86-head span{
  display:block !important;
  color:#41506a !important;
  font-size:16px !important;
  line-height:1.6 !important;
}

.sa-v86-grid{
  display:grid !important;
  grid-template-columns:1.05fr 1fr 1fr !important;
  gap:24px !important;
  margin-bottom:24px !important;
}

.sa-v86-moon-card,
.sa-v86-condition-card,
.sa-v86-meteor-card,
.sa-v86-recommend{
  border-radius:26px !important;
  background:linear-gradient(135deg,#071126,#10213d) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 28px 80px rgba(15,23,42,.16) !important;
  padding:34px !important;
  position:relative !important;
  overflow:hidden !important;
}

.sa-v86-moon-card::before,
.sa-v86-meteor-card::before{
  content:"" !important;
  position:absolute !important;
  width:260px !important;
  height:260px !important;
  right:-90px !important;
  top:-100px !important;
  border-radius:50% !important;
  background:radial-gradient(circle,rgba(217,164,65,.22),transparent 64%) !important;
}

.sa-v86-grid small{
  display:inline-flex !important;
  height:28px !important;
  align-items:center !important;
  padding:0 11px !important;
  border-radius:999px !important;
  background:rgba(217,164,65,.16) !important;
  border:1px solid rgba(217,164,65,.36) !important;
  color:#f3c55b !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  margin-bottom:20px !important;
}

.sa-v86-moon-visual{
  width:116px !important;
  height:116px !important;
  border-radius:50% !important;
  background:#dbe7ff !important;
  box-shadow:0 0 0 12px rgba(255,255,255,.06),0 0 60px rgba(219,231,255,.35) !important;
  margin:8px 0 26px !important;
  position:relative !important;
  overflow:hidden !important;
}

.sa-v86-moon-visual span{
  position:absolute !important;
  inset:0 !important;
  border-radius:50% !important;
  background:#071126 !important;
  transform:translateX(34px) !important;
  box-shadow:-20px 0 30px rgba(7,17,38,.6) !important;
}

.sa-v86-moon-card h3,
.sa-v86-meteor-card h3,
.sa-v86-recommend h3{
  margin:0 0 14px !important;
  color:#fff !important;
  font-size:30px !important;
  line-height:1.08 !important;
  font-weight:950 !important;
  letter-spacing:-.035em !important;
}

.sa-v86-moon-card p,
.sa-v86-meteor-card p,
.sa-v86-recommend p{
  margin:0 0 22px !important;
  color:#dce6f6 !important;
  font-size:15px !important;
  line-height:1.65 !important;
}

.sa-v86-moon-stats{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:12px !important;
}

.sa-v86-moon-stats div{
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.11) !important;
  border-radius:16px !important;
  padding:16px !important;
}

.sa-v86-moon-stats strong{
  display:block !important;
  color:#fff !important;
  font-size:24px !important;
  line-height:1 !important;
  font-weight:950 !important;
}

.sa-v86-moon-stats em{
  display:block !important;
  margin-top:7px !important;
  color:#cbd5e1 !important;
  font-size:12px !important;
  font-style:normal !important;
  font-weight:800 !important;
}

.sa-v86-condition-card ul{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  gap:14px !important;
}

.sa-v86-condition-card li{
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:18px !important;
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.11) !important;
  border-radius:16px !important;
  padding:16px !important;
}

.sa-v86-condition-card li span{
  color:#dce6f6 !important;
  font-size:14px !important;
  font-weight:800 !important;
}

.sa-v86-condition-card li strong{
  color:#f3c55b !important;
  font-size:13px !important;
  font-weight:950 !important;
  text-align:right !important;
}

.sa-v86-meteor-meta{
  display:grid !important;
  gap:10px !important;
}

.sa-v86-meteor-meta span{
  display:block !important;
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.11) !important;
  border-radius:999px !important;
  padding:11px 14px !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:900 !important;
}

.sa-v86-timeline{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:16px !important;
  margin-bottom:24px !important;
}

.sa-v86-timeline div{
  background:#fff !important;
  border-radius:18px !important;
  padding:22px !important;
  box-shadow:0 14px 38px rgba(15,23,42,.09) !important;
}

.sa-v86-timeline strong{
  display:block !important;
  color:#071126 !important;
  font-size:17px !important;
  line-height:1.1 !important;
  font-weight:950 !important;
  margin-bottom:8px !important;
}

.sa-v86-timeline span{
  display:block !important;
  color:#41506a !important;
  font-size:13px !important;
  line-height:1.4 !important;
}

.sa-v86-recommend{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:22px !important;
}

.sa-v86-recommend h3{
  font-size:28px !important;
}

.sa-v86-recommend p{
  margin-bottom:0 !important;
}

.sa-v86-links{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  justify-content:flex-end !important;
}

.sa-v86-links a{
  display:inline-flex !important;
  min-height:42px !important;
  align-items:center !important;
  padding:0 16px !important;
  border-radius:999px !important;
  background:#e5aa36 !important;
  color:#071126 !important;
  text-decoration:none !important;
  font-size:13px !important;
  font-weight:950 !important;
}

@media(max-width:1050px){
  .sa-v86-grid{
    grid-template-columns:1fr !important;
  }
  .sa-v86-timeline{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .sa-v86-recommend{
    flex-direction:column !important;
    align-items:flex-start !important;
  }
  .sa-v86-links{
    justify-content:flex-start !important;
  }
}

@media(max-width:720px){
  .sa-v86-conditions{
    padding:20px 20px 64px !important;
  }
  .sa-v86-head h2{
    font-size:30px !important;
  }
  .sa-v86-moon-card,
  .sa-v86-condition-card,
  .sa-v86-meteor-card,
  .sa-v86-recommend{
    padding:26px !important;
    border-radius:22px !important;
  }
  .sa-v86-timeline{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   V8.8 FULL MOON CALENDAR CENTER
   ========================================================= */

.sa-v88-moon-calendar{
  background:#f4f7fb !important;
  padding:20px 70px 92px !important;
}

.sa-v88-inner{
  max-width:1320px !important;
  margin:0 auto !important;
}

.sa-v88-head{
  max-width:820px !important;
  margin:0 0 34px !important;
}

.sa-v88-head p{
  margin:0 0 12px !important;
  color:#d99408 !important;
  font-size:13px !important;
  font-weight:950 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.sa-v88-head h2{
  margin:0 0 12px !important;
  color:#071126 !important;
  font-size:38px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:-.04em !important;
}

.sa-v88-head span{
  display:block !important;
  color:#41506a !important;
  font-size:16px !important;
  line-height:1.6 !important;
}

.sa-v88-layout{
  display:grid !important;
  grid-template-columns:.85fr 1.6fr !important;
  gap:26px !important;
  align-items:stretch !important;
}

.sa-v88-feature{
  border-radius:26px !important;
  background:linear-gradient(135deg,#071126,#10213d) !important;
  color:#fff !important;
  padding:36px !important;
  box-shadow:0 28px 80px rgba(15,23,42,.16) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  overflow:hidden !important;
  position:relative !important;
}

.sa-v88-feature::before{
  content:"" !important;
  position:absolute !important;
  width:260px !important;
  height:260px !important;
  right:-110px !important;
  top:-100px !important;
  border-radius:50% !important;
  background:radial-gradient(circle,rgba(217,164,65,.22),transparent 64%) !important;
}

.sa-v88-feature small{
  display:inline-flex !important;
  height:28px !important;
  align-items:center !important;
  padding:0 11px !important;
  border-radius:999px !important;
  background:rgba(217,164,65,.16) !important;
  border:1px solid rgba(217,164,65,.36) !important;
  color:#f3c55b !important;
  font-size:10px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  margin-bottom:22px !important;
}

.sa-v88-moon-icon{
  width:124px !important;
  height:124px !important;
  border-radius:50% !important;
  background:#f3f7ff !important;
  box-shadow:0 0 0 12px rgba(255,255,255,.06),0 0 70px rgba(243,247,255,.34) !important;
  margin:0 0 26px !important;
}

.sa-v88-feature h3{
  margin:0 0 14px !important;
  color:#fff !important;
  font-size:32px !important;
  line-height:1.08 !important;
  font-weight:950 !important;
  letter-spacing:-.035em !important;
}

.sa-v88-feature p{
  margin:0 0 24px !important;
  color:#dce6f6 !important;
  font-size:15px !important;
  line-height:1.65 !important;
}

.sa-v88-feature-meta{
  display:grid !important;
  gap:10px !important;
}

.sa-v88-feature-meta span{
  display:block !important;
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.11) !important;
  border-radius:999px !important;
  padding:12px 14px !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:900 !important;
}

.sa-v88-calendar{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:16px !important;
}

.sa-v88-month{
  background:#fff !important;
  border-radius:18px !important;
  padding:22px !important;
  box-shadow:0 14px 38px rgba(15,23,42,.09) !important;
  transition:transform .2s ease, box-shadow .2s ease !important;
}

.sa-v88-month:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 22px 54px rgba(15,23,42,.15) !important;
}

.sa-v88-month strong{
  display:block !important;
  color:#d99408 !important;
  font-size:13px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
  margin-bottom:10px !important;
}

.sa-v88-month span{
  display:block !important;
  color:#071126 !important;
  font-size:18px !important;
  line-height:1.1 !important;
  font-weight:950 !important;
  margin-bottom:8px !important;
}

.sa-v88-month em{
  display:block !important;
  color:#41506a !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-style:normal !important;
  font-weight:700 !important;
}

.sa-v88-dark-window{
  margin-top:26px !important;
  display:grid !important;
  grid-template-columns:.8fr 1.2fr !important;
  gap:24px !important;
  background:#071126 !important;
  color:#fff !important;
  border-radius:26px !important;
  padding:34px !important;
  box-shadow:0 28px 80px rgba(15,23,42,.16) !important;
}

.sa-v88-dark-window h3{
  margin:0 0 12px !important;
  color:#fff !important;
  font-size:28px !important;
  font-weight:950 !important;
  letter-spacing:-.03em !important;
}

.sa-v88-dark-window p{
  margin:0 !important;
  color:#dce6f6 !important;
  font-size:15px !important;
  line-height:1.6 !important;
}

.sa-v88-rules{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}

.sa-v88-rules span{
  display:flex !important;
  align-items:center !important;
  min-height:46px !important;
  padding:0 14px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.11) !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:900 !important;
}

@media(max-width:1050px){
  .sa-v88-layout,
  .sa-v88-dark-window{
    grid-template-columns:1fr !important;
  }
  .sa-v88-calendar{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  .sa-v88-moon-calendar{
    padding:20px 20px 64px !important;
  }
  .sa-v88-head h2{
    font-size:30px !important;
  }
  .sa-v88-calendar{
    grid-template-columns:1fr 1fr !important;
  }
  .sa-v88-rules{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:480px){
  .sa-v88-calendar{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   V8.9 LIGHT POLLUTION & BORTLE EXPLORER
   ========================================================= */

.sa-v89-light{
  background:#f4f7fb !important;
  padding:20px 70px 94px !important;
}

.sa-v89-inner{
  max-width:1320px !important;
  margin:0 auto !important;
}

.sa-v89-head{
  max-width:820px !important;
  margin:0 0 34px !important;
}

.sa-v89-head p{
  margin:0 0 12px !important;
  color:#d99408 !important;
  font-size:13px !important;
  font-weight:950 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.sa-v89-head h2{
  margin:0 0 12px !important;
  color:#071126 !important;
  font-size:38px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:-.04em !important;
}

.sa-v89-head span{
  display:block !important;
  color:#41506a !important;
  font-size:16px !important;
  line-height:1.6 !important;
}

.sa-v89-layout{
  display:grid !important;
  grid-template-columns:1.2fr .8fr !important;
  gap:26px !important;
  margin-bottom:26px !important;
}

.sa-v89-bortle,
.sa-v89-escape{
  background:linear-gradient(135deg,#071126,#10213d) !important;
  color:#fff !important;
  border-radius:26px !important;
  padding:36px !important;
  box-shadow:0 28px 80px rgba(15,23,42,.16) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  overflow:hidden !important;
  position:relative !important;
}

.sa-v89-bortle::before,
.sa-v89-escape::before{
  content:"" !important;
  position:absolute !important;
  width:280px !important;
  height:280px !important;
  right:-110px !important;
  top:-120px !important;
  border-radius:50% !important;
  background:radial-gradient(circle,rgba(217,164,65,.18),transparent 64%) !important;
}

.sa-v89-bortle small,
.sa-v89-escape small{
  display:inline-flex !important;
  height:28px !important;
  align-items:center !important;
  padding:0 11px !important;
  border-radius:999px !important;
  background:rgba(217,164,65,.16) !important;
  border:1px solid rgba(217,164,65,.36) !important;
  color:#f3c55b !important;
  font-size:10px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  margin-bottom:20px !important;
}

.sa-v89-bortle h3,
.sa-v89-escape h3{
  margin:0 0 24px !important;
  color:#fff !important;
  font-size:32px !important;
  line-height:1.08 !important;
  font-weight:950 !important;
  letter-spacing:-.035em !important;
}

.sa-v89-scale{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:12px !important;
}

.sa-v89-scale div{
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.11) !important;
  border-radius:18px !important;
  padding:18px !important;
}

.sa-v89-scale b{
  display:flex !important;
  width:42px !important;
  height:42px !important;
  border-radius:50% !important;
  align-items:center !important;
  justify-content:center !important;
  background:#e5aa36 !important;
  color:#071126 !important;
  font-size:17px !important;
  font-weight:950 !important;
  margin-bottom:14px !important;
}

.sa-v89-scale span{
  display:block !important;
  color:#dce6f6 !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
}

.sa-v89-escape p{
  margin:0 0 20px !important;
  color:#dce6f6 !important;
  font-size:15px !important;
  line-height:1.65 !important;
}

.sa-v89-escape ul{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  gap:10px !important;
}

.sa-v89-escape li{
  color:#fff !important;
  font-size:14px !important;
  font-weight:850 !important;
}

.sa-v89-regions{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
}

.sa-v89-regions a{
  display:block !important;
  background:#fff !important;
  border-radius:18px !important;
  padding:24px !important;
  color:#071126 !important;
  text-decoration:none !important;
  box-shadow:0 14px 38px rgba(15,23,42,.09) !important;
  transition:transform .2s ease, box-shadow .2s ease !important;
}

.sa-v89-regions a:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 22px 54px rgba(15,23,42,.15) !important;
}

.sa-v89-regions strong{
  display:block !important;
  color:#071126 !important;
  font-size:20px !important;
  font-weight:950 !important;
  margin-bottom:8px !important;
}

.sa-v89-regions span{
  display:block !important;
  color:#41506a !important;
  font-size:13px !important;
  line-height:1.45 !important;
  margin-bottom:14px !important;
}

.sa-v89-regions em{
  display:inline-flex !important;
  height:26px !important;
  align-items:center !important;
  padding:0 10px !important;
  border-radius:999px !important;
  background:#071126 !important;
  color:#f3c55b !important;
  font-size:11px !important;
  font-style:normal !important;
  font-weight:950 !important;
}

@media(max-width:1050px){
  .sa-v89-layout{
    grid-template-columns:1fr !important;
  }
  .sa-v89-scale{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
  .sa-v89-regions{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  .sa-v89-light{
    padding:20px 20px 64px !important;
  }
  .sa-v89-head h2{
    font-size:30px !important;
  }
  .sa-v89-scale,
  .sa-v89-regions{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   V10.0 PREMIUM REGIONS SHOWCASE
   Replaces the weak interactive map with photo-driven destination cards.
   ========================================================= */

.sa-v85-map{
  display:none !important;
}

.sa-v100-regions{
  background:#f4f7fb !important;
  padding:28px 70px 96px !important;
}

.sa-v100-inner{
  max-width:1320px !important;
  margin:0 auto !important;
}

.sa-v100-head{
  max-width:820px !important;
  margin:0 0 34px !important;
}

.sa-v100-head p{
  margin:0 0 12px !important;
  color:#d99408 !important;
  font-size:13px !important;
  font-weight:950 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.sa-v100-head h2{
  margin:0 0 12px !important;
  color:#071126 !important;
  font-size:40px !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  letter-spacing:-.045em !important;
}

.sa-v100-head span{
  display:block !important;
  color:#41506a !important;
  font-size:16px !important;
  line-height:1.6 !important;
}

.sa-v100-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:24px !important;
}

.sa-v100-card{
  position:relative !important;
  display:block !important;
  height:318px !important;
  min-height:318px !important;
  border-radius:22px !important;
  overflow:hidden !important;
  color:#fff !important;
  text-decoration:none !important;
  background-image:
    linear-gradient(180deg,rgba(5,8,22,0) 0%,rgba(5,8,22,.30) 46%,rgba(5,8,22,.97) 100%),
    var(--img) !important;
  background-size:cover !important;
  background-position:center center !important;
  box-shadow:0 24px 64px rgba(15,23,42,.20) !important;
  transition:transform .26s ease, box-shadow .26s ease, filter .26s ease !important;
}

.sa-v100-card.large{
  grid-column:span 2 !important;
  height:380px !important;
}

.sa-v100-card:hover{
  transform:translateY(-7px) !important;
  box-shadow:0 38px 92px rgba(15,23,42,.32) !important;
  filter:saturate(1.08) contrast(1.04) !important;
}

.sa-v100-card small{
  position:absolute !important;
  top:22px !important;
  left:22px !important;
  display:inline-flex !important;
  align-items:center !important;
  height:28px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  background:rgba(3,6,14,.78) !important;
  border:1px solid rgba(217,164,65,.62) !important;
  color:#f3c55b !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  backdrop-filter:blur(8px) !important;
}

.sa-v100-card strong{
  position:absolute !important;
  left:26px !important;
  right:26px !important;
  bottom:104px !important;
  display:block !important;
  color:#fff !important;
  font-size:38px !important;
  line-height:1.02 !important;
  font-weight:950 !important;
  letter-spacing:-.045em !important;
  text-shadow:0 14px 34px rgba(0,0,0,.92) !important;
}

.sa-v100-card.large strong{
  font-size:48px !important;
}

.sa-v100-card span{
  position:absolute !important;
  left:26px !important;
  right:26px !important;
  bottom:58px !important;
  display:block !important;
  color:#f3f7ff !important;
  font-size:14px !important;
  line-height:1.45 !important;
  font-weight:650 !important;
  text-shadow:0 10px 26px rgba(0,0,0,.92) !important;
}

.sa-v100-card.large span{
  max-width:520px !important;
  font-size:15px !important;
}

.sa-v100-card em{
  position:absolute !important;
  left:26px !important;
  bottom:26px !important;
  color:#f3c55b !important;
  font-size:14px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:950 !important;
  text-shadow:0 10px 26px rgba(0,0,0,.9) !important;
}

.sa-v100-bottom{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex-wrap:wrap !important;
  gap:14px !important;
  margin-top:28px !important;
}

.sa-v100-bottom a{
  display:inline-flex !important;
  align-items:center !important;
  min-height:44px !important;
  padding:0 17px !important;
  border-radius:999px !important;
  background:#071126 !important;
  color:#f3c55b !important;
  text-decoration:none !important;
  font-size:13px !important;
  font-weight:950 !important;
}

@media(max-width:1120px){
  .sa-v100-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .sa-v100-card.large{
    grid-column:span 1 !important;
    height:340px !important;
  }
}

@media(max-width:720px){
  .sa-v100-regions{
    padding:24px 20px 68px !important;
  }
  .sa-v100-head h2{
    font-size:31px !important;
  }
  .sa-v100-grid{
    grid-template-columns:1fr !important;
  }
  .sa-v100-card,
  .sa-v100-card.large{
    height:310px !important;
  }
  .sa-v100-card strong,
  .sa-v100-card.large strong{
    font-size:34px !important;
  }
}


/* =========================================================
   V10.5 AUTHORITY ARTICLE LAYOUT
   Premium single post design for Stargazing Atlas.
   ========================================================= */

body.single-post{
  background:#06101f !important;
}

body.single-post .site-content,
body.single-post .ast-container,
body.single-post .entry-content{
  max-width:none !important;
  padding:0 !important;
  margin:0 !important;
}

.sa105-article-page{
  background:
    radial-gradient(circle at 12% 4%, rgba(217,164,65,.12), transparent 24%),
    linear-gradient(180deg,#050914 0%,#071126 42%,#06101f 100%) !important;
  color:#fff !important;
  min-height:100vh !important;
}

.sa105-article-hero{
  padding:34px 70px 90px !important;
}

.sa105-article-inner{
  max-width:1320px !important;
  margin:0 auto !important;
}

.sa105-breadcrumb{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  align-items:center !important;
  margin:0 0 30px !important;
  color:#9fb0c8 !important;
  font-size:13px !important;
}

.sa105-breadcrumb a{
  color:#cbd5e1 !important;
  text-decoration:none !important;
}

.sa105-breadcrumb strong{
  color:#f3c55b !important;
  font-weight:850 !important;
}

.sa105-layout{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 360px !important;
  gap:42px !important;
  align-items:start !important;
}

.sa105-main{
  min-width:0 !important;
}

.sa105-label-row{
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
  flex-wrap:wrap !important;
  margin-bottom:18px !important;
}

.sa105-label-row span{
  display:inline-flex !important;
  height:34px !important;
  align-items:center !important;
  padding:0 14px !important;
  border-radius:999px !important;
  background:rgba(217,164,65,.16) !important;
  border:1px solid rgba(217,164,65,.46) !important;
  color:#f3c55b !important;
  font-size:12px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
}

.sa105-label-row em{
  color:#f3c55b !important;
  font-style:normal !important;
  letter-spacing:.08em !important;
}

.sa105-label-row b{
  color:#dce6f6 !important;
  font-size:12px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
}

.sa105-main h1{
  max-width:820px !important;
  margin:0 0 18px !important;
  color:#fff !important;
  font-size:54px !important;
  line-height:1.02 !important;
  font-weight:950 !important;
  letter-spacing:-.055em !important;
}

.sa105-excerpt{
  max-width:840px !important;
  margin:0 0 22px !important;
  color:#e5edf8 !important;
  font-size:20px !important;
  line-height:1.6 !important;
}

.sa105-meta{
  display:flex !important;
  gap:16px 24px !important;
  flex-wrap:wrap !important;
  margin:0 0 24px !important;
  color:#cbd5e1 !important;
  font-size:14px !important;
}

.sa105-score-strip{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:16px !important;
  overflow:hidden !important;
  margin-bottom:24px !important;
}

.sa105-score-strip div{
  padding:22px 24px !important;
  border-right:1px solid rgba(255,255,255,.10) !important;
}

.sa105-score-strip div:last-child{
  border-right:0 !important;
}

.sa105-score-strip i{
  color:#f3c55b !important;
  font-style:normal !important;
  font-size:28px !important;
  margin-right:14px !important;
}

.sa105-score-strip strong{
  display:inline-block !important;
  color:#fff !important;
  font-size:26px !important;
  line-height:1 !important;
  font-weight:950 !important;
}

.sa105-score-strip span{
  display:block !important;
  margin-top:8px !important;
  color:#f3c55b !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.05em !important;
}

.sa105-featured-image{
  border-radius:18px !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 28px 80px rgba(0,0,0,.32) !important;
  margin:0 0 22px !important;
  max-height:520px !important;
}

.sa105-featured-image img{
  display:block !important;
  width:100% !important;
  height:520px !important;
  object-fit:cover !important;
}

.sa105-contents{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:16px 24px !important;
  padding:18px 20px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:14px !important;
  margin:0 0 30px !important;
}

.sa105-contents strong{
  color:#f3c55b !important;
  font-size:13px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
}

.sa105-contents a{
  color:#fff !important;
  text-decoration:none !important;
  font-size:13px !important;
  font-weight:800 !important;
}

.sa105-content{
  color:#e5edf8 !important;
  font-size:18px !important;
  line-height:1.82 !important;
}

.sa105-content h2,
.sa105-content h3{
  color:#fff !important;
  margin-top:38px !important;
  margin-bottom:14px !important;
  font-weight:950 !important;
  letter-spacing:-.035em !important;
}

.sa105-content h2{
  font-size:31px !important;
}

.sa105-content h3{
  font-size:25px !important;
}

.sa105-content p,
.sa105-content li{
  color:#e5edf8 !important;
}

.sa105-content a{
  color:#f3c55b !important;
  font-weight:850 !important;
}

.sa105-content img{
  border-radius:16px !important;
}

.sa105-pro-box,
.sa105-author-box,
.sa105-related-bottom,
.sa105-location-cards{
  margin-top:34px !important;
  padding:28px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
}

.sa105-pro-box strong{
  color:#f3c55b !important;
  font-size:14px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
}

.sa105-pro-box p,
.sa105-author-box p{
  margin:8px 0 0 !important;
  color:#dce6f6 !important;
}

.sa105-location-cards h2,
.sa105-related-bottom h2{
  margin:0 0 20px !important;
  color:#fff !important;
  font-size:28px !important;
}

.sa105-location-grid,
.sa105-related-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:16px !important;
}

.sa105-location-grid a,
.sa105-related-grid a{
  display:block !important;
  padding:22px !important;
  border-radius:14px !important;
  background:#0b1528 !important;
  color:#fff !important;
  text-decoration:none !important;
  border:1px solid rgba(255,255,255,.10) !important;
}

.sa105-location-grid strong{
  display:block !important;
  color:#fff !important;
  font-size:17px !important;
  margin-bottom:9px !important;
}

.sa105-location-grid span{
  display:block !important;
  color:#cbd5e1 !important;
  font-size:14px !important;
  line-height:1.45 !important;
  margin-bottom:12px !important;
}

.sa105-location-grid em,
.sa105-related-grid a{
  color:#f3c55b !important;
  font-style:normal !important;
  font-weight:950 !important;
}

.sa105-author-box h3{
  margin:0 0 10px !important;
  color:#fff !important;
  font-size:22px !important;
}

.sa105-sidebar{
  position:sticky !important;
  top:34px !important;
  display:grid !important;
  gap:22px !important;
}

.sa105-widget{
  padding:26px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 20px 60px rgba(0,0,0,.18) !important;
}

.sa105-widget h3{
  margin:0 0 18px !important;
  color:#f3c55b !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
}

.sa105-widget dl{
  margin:0 !important;
}

.sa105-widget dt,
.sa105-widget dd{
  display:inline-block !important;
  width:48% !important;
  margin:0 !important;
  padding:12px 0 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  color:#dce6f6 !important;
  font-size:13px !important;
  vertical-align:top !important;
}

.sa105-widget dd{
  color:#fff !important;
  text-align:right !important;
  font-weight:850 !important;
}

.sa105-widget > a,
.sa105-side-link{
  display:block !important;
  color:#fff !important;
  text-decoration:none !important;
  padding:12px 0 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  font-size:14px !important;
  font-weight:850 !important;
}

.sa105-side-link{
  display:flex !important;
  gap:12px !important;
  align-items:center !important;
}

.sa105-side-link img{
  width:66px !important;
  height:52px !important;
  object-fit:cover !important;
  border-radius:8px !important;
}

@media(max-width:1050px){
  .sa105-layout{
    grid-template-columns:1fr !important;
  }
  .sa105-sidebar{
    position:static !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:720px){
  .sa105-article-hero{
    padding:28px 20px 64px !important;
  }
  .sa105-main h1{
    font-size:38px !important;
  }
  .sa105-excerpt{
    font-size:17px !important;
  }
  .sa105-score-strip,
  .sa105-location-grid,
  .sa105-related-grid,
  .sa105-sidebar{
    grid-template-columns:1fr !important;
  }
  .sa105-score-strip div{
    border-right:0 !important;
    border-bottom:1px solid rgba(255,255,255,.10) !important;
  }
  .sa105-featured-image img{
    height:340px !important;
  }
}


/* =========================================================
   V11.0 AUTHORITY POST SYSTEM
   Unified header, premium footer, reading progress, trust + prev/next.
   ========================================================= */

body.single-post .site-header,
body.single-post header.site-header,
body.single-post .ast-primary-header-bar,
body.single-post .main-header-bar,
body.single-post .ast-mobile-header-wrap{
  display:none !important;
}

.sa110-reading-progress{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  width:100% !important;
  height:4px !important;
  z-index:1000000 !important;
  background:rgba(255,255,255,.08) !important;
}

.sa110-reading-progress span{
  display:block !important;
  width:0;
  height:100% !important;
  background:#f3c55b !important;
  box-shadow:0 0 18px rgba(243,197,91,.55) !important;
}

.sa110-post-header{
  background:#050914 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.22) !important;
  position:relative !important;
  z-index:99999 !important;
}

.sa110-header-inner{
  max-width:1320px !important;
  min-height:92px !important;
  margin:0 auto !important;
  padding:0 70px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:34px !important;
}

.sa110-logo{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  text-decoration:none !important;
  color:#fff !important;
}

.sa110-logo-icon{
  width:56px !important;
  height:56px !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:linear-gradient(145deg,#071126,#142447) !important;
  border:2px solid #d9a441 !important;
  color:#f3c55b !important;
  font-size:24px !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.08) !important;
}

.sa110-logo span:not(.sa110-logo-icon){
  display:flex !important;
  flex-direction:column !important;
  line-height:1 !important;
}

.sa110-logo strong{
  color:#fff !important;
  font-size:23px !important;
  font-weight:950 !important;
  letter-spacing:.04em !important;
}

.sa110-logo em{
  margin-top:7px !important;
  color:#f3c55b !important;
  font-size:13px !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.32em !important;
  text-align:center !important;
}

.sa110-nav{
  display:flex !important;
  align-items:center !important;
  gap:28px !important;
  flex-wrap:wrap !important;
}

.sa110-nav a{
  color:#fff !important;
  text-decoration:none !important;
  font-size:13px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.01em !important;
}

.sa110-nav a:hover{
  color:#f3c55b !important;
}

/* tighten hero slightly */
.sa105-article-hero{
  padding-top:30px !important;
}

.sa105-main h1{
  font-size:50px !important;
}

.sa105-featured-image,
.sa105-featured-image img{
  max-height:470px !important;
}

.sa105-featured-image img{
  height:470px !important;
}

.sa110-trust-box{
  margin-top:34px !important;
  padding:30px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
}

.sa110-trust-box h2{
  margin:0 0 20px !important;
  color:#fff !important;
  font-size:28px !important;
  font-weight:950 !important;
  letter-spacing:-.035em !important;
}

.sa110-trust-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
}

.sa110-trust-grid div{
  background:#0b1528 !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:14px !important;
  padding:20px !important;
}

.sa110-trust-grid strong{
  display:block !important;
  color:#f3c55b !important;
  font-size:15px !important;
  font-weight:950 !important;
  margin-bottom:8px !important;
}

.sa110-trust-grid span{
  display:block !important;
  color:#dce6f6 !important;
  font-size:14px !important;
  line-height:1.5 !important;
}

.sa110-prev-next{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:18px !important;
  margin-top:34px !important;
}

.sa110-prev-next a{
  display:block !important;
  padding:24px !important;
  border-radius:18px !important;
  background:#0b1528 !important;
  color:#fff !important;
  text-decoration:none !important;
  border:1px solid rgba(255,255,255,.10) !important;
}

.sa110-prev-next small{
  display:block !important;
  color:#f3c55b !important;
  font-size:12px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  margin-bottom:9px !important;
}

.sa110-prev-next strong{
  color:#fff !important;
  font-size:18px !important;
  line-height:1.25 !important;
}

.sa110-footer{
  background:#050914 !important;
  color:#fff !important;
  padding:72px 70px 38px !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
}

.sa110-footer-inner{
  max-width:1320px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:1.4fr .8fr .8fr .8fr !important;
  gap:48px !important;
}

.sa110-footer h3{
  margin:0 0 14px !important;
  color:#fff !important;
  font-size:28px !important;
  font-weight:950 !important;
}

.sa110-footer h4{
  margin:0 0 18px !important;
  color:#f3c55b !important;
  font-size:14px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
}

.sa110-footer p{
  margin:0 !important;
  max-width:380px !important;
  color:#cbd5e1 !important;
  font-size:15px !important;
  line-height:1.7 !important;
}

.sa110-footer a{
  display:block !important;
  color:#dce6f6 !important;
  text-decoration:none !important;
  margin-bottom:12px !important;
  font-size:14px !important;
}

.sa110-footer a:hover{
  color:#f3c55b !important;
}

@media(max-width:1050px){
  .sa110-header-inner{
    padding:18px 28px !important;
    min-height:auto !important;
    flex-direction:column !important;
    align-items:flex-start !important;
  }
  .sa110-footer-inner{
    grid-template-columns:1fr 1fr !important;
  }
}

@media(max-width:720px){
  .sa110-header-inner,
  .sa110-footer{
    padding-left:20px !important;
    padding-right:20px !important;
  }
  .sa110-nav{
    gap:16px 20px !important;
  }
  .sa110-nav a{
    font-size:12px !important;
  }
  .sa105-main h1{
    font-size:36px !important;
  }
  .sa105-featured-image img{
    height:330px !important;
  }
  .sa110-trust-grid,
  .sa110-prev-next,
  .sa110-footer-inner{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   V11.1 POST HEADER + FOOTER FIX
   Forces unified header top, full-width footer bottom, hides Astra footer.
   ========================================================= */

body.single-post .site-header,
body.single-post header.site-header,
body.single-post .ast-primary-header-bar,
body.single-post .main-header-bar,
body.single-post .ast-mobile-header-wrap,
body.single-post .site-footer,
body.single-post footer.site-footer,
body.single-post .ast-footer-copyright,
body.single-post .ast-small-footer{
  display:none !important;
}

body.single-post{
  background:#050914 !important;
  overflow-x:hidden !important;
}

body.single-post .site-content,
body.single-post .ast-container,
body.single-post .content-area,
body.single-post .site-main{
  max-width:none !important;
  width:100% !important;
  padding:0 !important;
  margin:0 !important;
}

.sa111-reading-progress{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  width:100% !important;
  height:4px !important;
  z-index:1000000 !important;
  background:rgba(255,255,255,.08) !important;
}

.sa111-reading-progress span{
  display:block !important;
  width:0;
  height:100% !important;
  background:#f3c55b !important;
  box-shadow:0 0 18px rgba(243,197,91,.55) !important;
}

.sa111-post-header{
  display:block !important;
  width:100% !important;
  background:#050914 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.22) !important;
  position:relative !important;
  z-index:99999 !important;
  clear:both !important;
}

.sa111-header-inner{
  max-width:1320px !important;
  min-height:92px !important;
  margin:0 auto !important;
  padding:0 70px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:34px !important;
  box-sizing:border-box !important;
}

.sa111-logo{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  text-decoration:none !important;
  color:#fff !important;
  flex:0 0 auto !important;
}

.sa111-logo-icon{
  width:56px !important;
  height:56px !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:linear-gradient(145deg,#071126,#142447) !important;
  border:2px solid #d9a441 !important;
  color:#f3c55b !important;
  font-size:24px !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.08) !important;
}

.sa111-logo-copy{
  display:flex !important;
  flex-direction:column !important;
  line-height:1 !important;
}

.sa111-logo-copy strong{
  color:#fff !important;
  font-size:23px !important;
  font-weight:950 !important;
  letter-spacing:.04em !important;
}

.sa111-logo-copy em{
  margin-top:7px !important;
  color:#f3c55b !important;
  font-size:13px !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.32em !important;
  text-align:center !important;
}

.sa111-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:28px !important;
  flex-wrap:wrap !important;
}

.sa111-nav a{
  color:#fff !important;
  text-decoration:none !important;
  font-size:13px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.01em !important;
}

.sa111-nav a:hover{
  color:#f3c55b !important;
}

/* Fix article canvas so footer cannot appear beside content */
.sa105-article-page,
.sa105-article-hero,
.sa105-article-inner{
  width:100% !important;
  box-sizing:border-box !important;
}

.sa105-article-page{
  display:block !important;
  clear:both !important;
  background:
    radial-gradient(circle at 12% 4%, rgba(217,164,65,.12), transparent 24%),
    linear-gradient(180deg,#050914 0%,#071126 42%,#06101f 100%) !important;
}

.sa105-layout{
  max-width:1320px !important;
  margin:0 auto !important;
  grid-template-columns:minmax(0, 1fr) 360px !important;
}

.sa111-footer{
  display:block !important;
  clear:both !important;
  width:100% !important;
  background:#050914 !important;
  color:#fff !important;
  padding:72px 70px 34px !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
  box-sizing:border-box !important;
}

.sa111-footer-inner{
  max-width:1320px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:1.4fr .8fr .8fr .8fr !important;
  gap:48px !important;
  align-items:start !important;
}

.sa111-footer h3{
  margin:0 0 14px !important;
  color:#fff !important;
  font-size:28px !important;
  font-weight:950 !important;
}

.sa111-footer h4{
  margin:0 0 18px !important;
  color:#f3c55b !important;
  font-size:14px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
}

.sa111-footer p{
  margin:0 !important;
  max-width:380px !important;
  color:#cbd5e1 !important;
  font-size:15px !important;
  line-height:1.7 !important;
}

.sa111-footer a{
  display:block !important;
  color:#dce6f6 !important;
  text-decoration:none !important;
  margin-bottom:12px !important;
  font-size:14px !important;
}

.sa111-footer a:hover{
  color:#f3c55b !important;
}

.sa111-footer-bottom{
  max-width:1320px !important;
  margin:42px auto 0 !important;
  padding-top:24px !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
  color:#9fb0c8 !important;
  font-size:13px !important;
}

/* Hide old V11 footer if cached CSS/HTML appears */
.sa110-footer{
  display:none !important;
}

@media(max-width:1050px){
  .sa111-header-inner{
    padding:18px 28px !important;
    min-height:auto !important;
    flex-direction:column !important;
    align-items:flex-start !important;
  }

  .sa105-layout{
    grid-template-columns:1fr !important;
  }

  .sa111-footer-inner{
    grid-template-columns:1fr 1fr !important;
  }
}

@media(max-width:720px){
  .sa111-header-inner,
  .sa111-footer{
    padding-left:20px !important;
    padding-right:20px !important;
  }

  .sa111-nav{
    gap:16px 20px !important;
  }

  .sa111-nav a{
    font-size:12px !important;
  }

  .sa111-footer-inner{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   V11.2 CLEAN SINGLE REBUILD
   Complete replacement for broken post footer/header layout.
   ========================================================= */

body.single-post .site-header,
body.single-post header.site-header,
body.single-post .ast-primary-header-bar,
body.single-post .main-header-bar,
body.single-post .ast-mobile-header-wrap,
body.single-post .site-footer,
body.single-post footer.site-footer,
body.single-post .ast-footer-copyright,
body.single-post .ast-small-footer{
  display:none !important;
}

body.single-post,
body.single-post .site,
body.single-post .site-content,
body.single-post .ast-container,
body.single-post .content-area,
body.single-post .site-main{
  background:#050914 !important;
  max-width:none !important;
  width:100% !important;
  padding:0 !important;
  margin:0 !important;
  overflow-x:hidden !important;
}

.sa112-reading-progress{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  width:100% !important;
  height:4px !important;
  z-index:1000000 !important;
  background:rgba(255,255,255,.08) !important;
}

.sa112-reading-progress span{
  display:block !important;
  width:0;
  height:100% !important;
  background:#f3c55b !important;
  box-shadow:0 0 18px rgba(243,197,91,.55) !important;
}

.sa112-header{
  display:block !important;
  width:100% !important;
  background:#050914 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.22) !important;
  position:relative !important;
  z-index:99999 !important;
  clear:both !important;
}

.sa112-header-inner{
  max-width:1320px !important;
  min-height:92px !important;
  margin:0 auto !important;
  padding:0 70px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:34px !important;
  box-sizing:border-box !important;
}

.sa112-logo{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  text-decoration:none !important;
  color:#fff !important;
}

.sa112-logo-mark{
  width:56px !important;
  height:56px !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:linear-gradient(145deg,#071126,#142447) !important;
  border:2px solid #d9a441 !important;
  color:#f3c55b !important;
  font-size:24px !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.08) !important;
}

.sa112-logo-text{
  display:flex !important;
  flex-direction:column !important;
  line-height:1 !important;
}

.sa112-logo-text strong{
  color:#fff !important;
  font-size:23px !important;
  font-weight:950 !important;
  letter-spacing:.04em !important;
}

.sa112-logo-text em{
  margin-top:7px !important;
  color:#f3c55b !important;
  font-size:13px !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.32em !important;
  text-align:center !important;
}

.sa112-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:28px !important;
  flex-wrap:wrap !important;
}

.sa112-nav a{
  color:#fff !important;
  text-decoration:none !important;
  font-size:13px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.01em !important;
}

.sa112-nav a:hover{color:#f3c55b !important;}

.sa112-page{
  display:block !important;
  width:100% !important;
  clear:both !important;
  background:
    radial-gradient(circle at 12% 4%, rgba(217,164,65,.12), transparent 24%),
    linear-gradient(180deg,#050914 0%,#071126 42%,#06101f 100%) !important;
  color:#fff !important;
}

.sa112-shell{
  max-width:1320px !important;
  margin:0 auto !important;
  padding:34px 70px 90px !important;
  box-sizing:border-box !important;
}

.sa112-breadcrumb{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  align-items:center !important;
  margin:0 0 30px !important;
  color:#9fb0c8 !important;
  font-size:13px !important;
}

.sa112-breadcrumb a{color:#cbd5e1 !important;text-decoration:none !important;}
.sa112-breadcrumb strong{color:#f3c55b !important;font-weight:850 !important;}

.sa112-grid{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 360px !important;
  gap:42px !important;
  align-items:start !important;
  width:100% !important;
}

.sa112-article{min-width:0 !important;}

.sa112-label-row{
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
  flex-wrap:wrap !important;
  margin-bottom:18px !important;
}

.sa112-label-row span{
  display:inline-flex !important;
  height:34px !important;
  align-items:center !important;
  padding:0 14px !important;
  border-radius:999px !important;
  background:rgba(217,164,65,.16) !important;
  border:1px solid rgba(217,164,65,.46) !important;
  color:#f3c55b !important;
  font-size:12px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
}

.sa112-label-row em{color:#f3c55b !important;font-style:normal !important;}
.sa112-label-row b{color:#dce6f6 !important;font-size:12px !important;font-weight:900 !important;text-transform:uppercase !important;}

.sa112-article h1{
  max-width:820px !important;
  margin:0 0 18px !important;
  color:#fff !important;
  font-size:50px !important;
  line-height:1.02 !important;
  font-weight:950 !important;
  letter-spacing:-.055em !important;
}

.sa112-excerpt{
  max-width:840px !important;
  margin:0 0 22px !important;
  color:#e5edf8 !important;
  font-size:19px !important;
  line-height:1.6 !important;
}

.sa112-meta{
  display:flex !important;
  gap:16px 24px !important;
  flex-wrap:wrap !important;
  margin:0 0 24px !important;
  color:#cbd5e1 !important;
  font-size:14px !important;
}

.sa112-score-strip{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:16px !important;
  overflow:hidden !important;
  margin-bottom:24px !important;
}

.sa112-score-strip div{
  padding:22px 24px !important;
  border-right:1px solid rgba(255,255,255,.10) !important;
}

.sa112-score-strip div:last-child{border-right:0 !important;}
.sa112-score-strip i{color:#f3c55b !important;font-style:normal !important;font-size:28px !important;margin-right:14px !important;}
.sa112-score-strip strong{display:inline-block !important;color:#fff !important;font-size:26px !important;line-height:1 !important;font-weight:950 !important;}
.sa112-score-strip span{display:block !important;margin-top:8px !important;color:#f3c55b !important;font-size:11px !important;font-weight:950 !important;text-transform:uppercase !important;}

.sa112-featured{
  border-radius:18px !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 28px 80px rgba(0,0,0,.32) !important;
  margin:0 0 22px !important;
}

.sa112-featured img{
  display:block !important;
  width:100% !important;
  height:470px !important;
  object-fit:cover !important;
}

.sa112-contents{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:16px 24px !important;
  padding:18px 20px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:14px !important;
  margin:0 0 30px !important;
}

.sa112-contents strong{color:#f3c55b !important;font-size:13px !important;font-weight:950 !important;text-transform:uppercase !important;}
.sa112-contents a{color:#fff !important;text-decoration:none !important;font-size:13px !important;font-weight:800 !important;}

.sa112-content{color:#e5edf8 !important;font-size:18px !important;line-height:1.82 !important;}
.sa112-content h2,.sa112-content h3{color:#fff !important;margin-top:38px !important;margin-bottom:14px !important;font-weight:950 !important;letter-spacing:-.035em !important;}
.sa112-content h2{font-size:31px !important;}
.sa112-content h3{font-size:25px !important;}
.sa112-content p,.sa112-content li{color:#e5edf8 !important;}
.sa112-content a{color:#f3c55b !important;font-weight:850 !important;}
.sa112-content img{border-radius:16px !important;}

.sa112-panel,.sa112-locations,.sa112-trust,.sa112-author,.sa112-prevnext{
  margin-top:34px !important;
}

.sa112-panel,.sa112-locations,.sa112-trust,.sa112-author{
  padding:28px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
}

.sa112-panel strong{color:#f3c55b !important;font-size:14px !important;font-weight:950 !important;text-transform:uppercase !important;}
.sa112-panel p,.sa112-author p{margin:8px 0 0 !important;color:#dce6f6 !important;}

.sa112-locations h2,.sa112-trust h2{margin:0 0 20px !important;color:#fff !important;font-size:28px !important;}
.sa112-locations > div,.sa112-trust > div,.sa112-prevnext{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px !important;}
.sa112-trust > div{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
.sa112-prevnext{grid-template-columns:1fr 1fr !important;}

.sa112-locations a,.sa112-trust article,.sa112-prevnext a{
  display:block !important;
  padding:22px !important;
  border-radius:14px !important;
  background:#0b1528 !important;
  color:#fff !important;
  text-decoration:none !important;
  border:1px solid rgba(255,255,255,.10) !important;
}

.sa112-locations strong,.sa112-trust strong,.sa112-prevnext strong{display:block !important;color:#fff !important;font-size:17px !important;margin-bottom:9px !important;}
.sa112-trust strong{color:#f3c55b !important;}
.sa112-locations span,.sa112-trust span{display:block !important;color:#cbd5e1 !important;font-size:14px !important;line-height:1.45 !important;margin-bottom:12px !important;}
.sa112-locations em{color:#f3c55b !important;font-style:normal !important;font-weight:950 !important;}
.sa112-prevnext small{display:block !important;color:#f3c55b !important;font-size:12px !important;font-weight:950 !important;text-transform:uppercase !important;margin-bottom:9px !important;}

.sa112-author h3{margin:0 0 10px !important;color:#fff !important;font-size:22px !important;}

.sa112-sidebar{
  position:sticky !important;
  top:34px !important;
  display:grid !important;
  gap:22px !important;
}

.sa112-widget{
  padding:26px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 20px 60px rgba(0,0,0,.18) !important;
}

.sa112-widget h3{
  margin:0 0 18px !important;
  color:#f3c55b !important;
  font-size:15px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
}

.sa112-widget dl{margin:0 !important;}
.sa112-widget dt,.sa112-widget dd{
  display:inline-block !important;
  width:48% !important;
  margin:0 !important;
  padding:12px 0 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  color:#dce6f6 !important;
  font-size:13px !important;
  vertical-align:top !important;
}
.sa112-widget dd{color:#fff !important;text-align:right !important;font-weight:850 !important;}

.sa112-widget > a{
  display:block !important;
  color:#fff !important;
  text-decoration:none !important;
  padding:12px 0 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  font-size:14px !important;
  font-weight:850 !important;
}

.sa112-footer{
  display:block !important;
  clear:both !important;
  width:100% !important;
  background:#050914 !important;
  color:#fff !important;
  padding:72px 70px 34px !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
  box-sizing:border-box !important;
}

.sa112-footer-inner{
  max-width:1320px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:1.4fr .8fr .8fr .8fr !important;
  gap:48px !important;
  align-items:start !important;
}

.sa112-footer h3{margin:0 0 14px !important;color:#fff !important;font-size:28px !important;font-weight:950 !important;}
.sa112-footer h4{margin:0 0 18px !important;color:#f3c55b !important;font-size:14px !important;font-weight:950 !important;text-transform:uppercase !important;}
.sa112-footer p{margin:0 !important;max-width:380px !important;color:#cbd5e1 !important;font-size:15px !important;line-height:1.7 !important;}
.sa112-footer a{display:block !important;color:#dce6f6 !important;text-decoration:none !important;margin-bottom:12px !important;font-size:14px !important;}
.sa112-footer a:hover{color:#f3c55b !important;}
.sa112-footer-bottom{
  max-width:1320px !important;
  margin:42px auto 0 !important;
  padding-top:24px !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
  color:#9fb0c8 !important;
  font-size:13px !important;
}

@media(max-width:1050px){
  .sa112-header-inner{padding:18px 28px !important;min-height:auto !important;flex-direction:column !important;align-items:flex-start !important;}
  .sa112-grid{grid-template-columns:1fr !important;}
  .sa112-sidebar{position:static !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .sa112-footer-inner{grid-template-columns:1fr 1fr !important;}
}

@media(max-width:720px){
  .sa112-header-inner,.sa112-shell,.sa112-footer{padding-left:20px !important;padding-right:20px !important;}
  .sa112-nav{gap:16px 20px !important;}
  .sa112-nav a{font-size:12px !important;}
  .sa112-article h1{font-size:36px !important;}
  .sa112-excerpt{font-size:17px !important;}
  .sa112-score-strip,.sa112-locations > div,.sa112-trust > div,.sa112-prevnext,.sa112-sidebar,.sa112-footer-inner{grid-template-columns:1fr !important;}
  .sa112-featured img{height:330px !important;}
}


/* =========================================================
   V11.3 STANDALONE SINGLE FIX
   No Astra wrapper dependency. Header, article and footer cannot drift.
   ========================================================= */

html body.sa113-body,
body.single-post.sa113-body{
  margin:0 !important;
  padding:0 !important;
  background:#050914 !important;
  overflow-x:hidden !important;
}

body.sa113-body *{
  box-sizing:border-box !important;
}

body.sa113-body .site,
body.sa113-body .site-content,
body.sa113-body .ast-container,
body.sa113-body .content-area,
body.sa113-body .site-main,
body.sa113-body .site-header,
body.sa113-body .site-footer,
body.sa113-body .ast-primary-header-bar,
body.sa113-body .main-header-bar,
body.sa113-body .ast-mobile-header-wrap,
body.sa113-body footer.site-footer{
  display:none !important;
}

.sa113-reading-progress{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  width:100% !important;
  height:4px !important;
  z-index:1000000 !important;
  background:rgba(255,255,255,.08) !important;
}

.sa113-reading-progress span{
  display:block !important;
  width:0;
  height:100% !important;
  background:#f3c55b !important;
  box-shadow:0 0 18px rgba(243,197,91,.55) !important;
}

.sa113-header{
  display:block !important;
  width:100% !important;
  background:#050914 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.22) !important;
  position:relative !important;
  z-index:99999 !important;
}

.sa113-header-inner{
  max-width:1320px !important;
  min-height:92px !important;
  margin:0 auto !important;
  padding:0 70px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:34px !important;
}

.sa113-logo{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  text-decoration:none !important;
  color:#fff !important;
  flex:0 0 auto !important;
}

.sa113-logo-mark{
  width:56px !important;
  height:56px !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:linear-gradient(145deg,#071126,#142447) !important;
  border:2px solid #d9a441 !important;
  color:#f3c55b !important;
  font-size:24px !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.08) !important;
}

.sa113-logo-text{
  display:flex !important;
  flex-direction:column !important;
  line-height:1 !important;
}

.sa113-logo-text strong{
  color:#fff !important;
  font-size:23px !important;
  font-weight:950 !important;
  letter-spacing:.04em !important;
}

.sa113-logo-text em{
  margin-top:7px !important;
  color:#f3c55b !important;
  font-size:13px !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.32em !important;
  text-align:center !important;
}

.sa113-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:28px !important;
  flex-wrap:wrap !important;
}

.sa113-nav a{
  color:#fff !important;
  text-decoration:none !important;
  font-size:13px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.01em !important;
}

.sa113-nav a:hover{color:#f3c55b !important;}

.sa113-page{
  display:block !important;
  width:100% !important;
  background:
    radial-gradient(circle at 12% 4%, rgba(217,164,65,.12), transparent 24%),
    linear-gradient(180deg,#050914 0%,#071126 42%,#06101f 100%) !important;
  color:#fff !important;
}

.sa113-shell{
  max-width:1320px !important;
  margin:0 auto !important;
  padding:34px 70px 90px !important;
}

.sa113-breadcrumb{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  align-items:center !important;
  margin:0 0 30px !important;
  color:#9fb0c8 !important;
  font-size:13px !important;
}

.sa113-breadcrumb a{color:#cbd5e1 !important;text-decoration:none !important;}
.sa113-breadcrumb strong{color:#f3c55b !important;font-weight:850 !important;}

.sa113-grid{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 360px !important;
  gap:42px !important;
  align-items:start !important;
  width:100% !important;
}

.sa113-article{min-width:0 !important;}

.sa113-label-row{
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
  flex-wrap:wrap !important;
  margin-bottom:18px !important;
}

.sa113-label-row span{
  display:inline-flex !important;
  height:34px !important;
  align-items:center !important;
  padding:0 14px !important;
  border-radius:999px !important;
  background:rgba(217,164,65,.16) !important;
  border:1px solid rgba(217,164,65,.46) !important;
  color:#f3c55b !important;
  font-size:12px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
}

.sa113-label-row em{color:#f3c55b !important;font-style:normal !important;}
.sa113-label-row b{color:#dce6f6 !important;font-size:12px !important;font-weight:900 !important;text-transform:uppercase !important;}

.sa113-article h1{
  max-width:820px !important;
  margin:0 0 18px !important;
  color:#fff !important;
  font-size:50px !important;
  line-height:1.02 !important;
  font-weight:950 !important;
  letter-spacing:-.055em !important;
}

.sa113-excerpt{
  max-width:840px !important;
  margin:0 0 22px !important;
  color:#e5edf8 !important;
  font-size:19px !important;
  line-height:1.6 !important;
}

.sa113-meta{
  display:flex !important;
  gap:16px 24px !important;
  flex-wrap:wrap !important;
  margin:0 0 24px !important;
  color:#cbd5e1 !important;
  font-size:14px !important;
}

.sa113-score-strip{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:16px !important;
  overflow:hidden !important;
  margin-bottom:24px !important;
}

.sa113-score-strip div{
  padding:22px 24px !important;
  border-right:1px solid rgba(255,255,255,.10) !important;
}

.sa113-score-strip div:last-child{border-right:0 !important;}
.sa113-score-strip i{color:#f3c55b !important;font-style:normal !important;font-size:28px !important;margin-right:14px !important;}
.sa113-score-strip strong{display:inline-block !important;color:#fff !important;font-size:26px !important;line-height:1 !important;font-weight:950 !important;}
.sa113-score-strip span{display:block !important;margin-top:8px !important;color:#f3c55b !important;font-size:11px !important;font-weight:950 !important;text-transform:uppercase !important;}

.sa113-featured{
  border-radius:18px !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 28px 80px rgba(0,0,0,.32) !important;
  margin:0 0 22px !important;
}

.sa113-featured img{
  display:block !important;
  width:100% !important;
  height:470px !important;
  object-fit:cover !important;
}

.sa113-contents{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:16px 24px !important;
  padding:18px 20px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:14px !important;
  margin:0 0 30px !important;
}

.sa113-contents strong{color:#f3c55b !important;font-size:13px !important;font-weight:950 !important;text-transform:uppercase !important;}
.sa113-contents a{color:#fff !important;text-decoration:none !important;font-size:13px !important;font-weight:800 !important;}

.sa113-content{color:#e5edf8 !important;font-size:18px !important;line-height:1.82 !important;}
.sa113-content h2,.sa113-content h3{color:#fff !important;margin-top:38px !important;margin-bottom:14px !important;font-weight:950 !important;letter-spacing:-.035em !important;}
.sa113-content h2{font-size:31px !important;}
.sa113-content h3{font-size:25px !important;}
.sa113-content p,.sa113-content li{color:#e5edf8 !important;}
.sa113-content a{color:#f3c55b !important;font-weight:850 !important;}
.sa113-content img{border-radius:16px !important;}

.sa113-panel,.sa113-locations,.sa113-trust,.sa113-author,.sa113-prevnext{margin-top:34px !important;}
.sa113-panel,.sa113-locations,.sa113-trust,.sa113-author{
  padding:28px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
}

.sa113-panel strong{color:#f3c55b !important;font-size:14px !important;font-weight:950 !important;text-transform:uppercase !important;}
.sa113-panel p,.sa113-author p{margin:8px 0 0 !important;color:#dce6f6 !important;}
.sa113-locations h2,.sa113-trust h2{margin:0 0 20px !important;color:#fff !important;font-size:28px !important;}

.sa113-locations > div,.sa113-trust > div,.sa113-prevnext{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:16px !important;
}

.sa113-trust > div{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
.sa113-prevnext{grid-template-columns:1fr 1fr !important;}

.sa113-locations a,.sa113-trust article,.sa113-prevnext a{
  display:block !important;
  padding:22px !important;
  border-radius:14px !important;
  background:#0b1528 !important;
  color:#fff !important;
  text-decoration:none !important;
  border:1px solid rgba(255,255,255,.10) !important;
}

.sa113-locations strong,.sa113-trust strong,.sa113-prevnext strong{display:block !important;color:#fff !important;font-size:17px !important;margin-bottom:9px !important;}
.sa113-trust strong{color:#f3c55b !important;}
.sa113-locations span,.sa113-trust span{display:block !important;color:#cbd5e1 !important;font-size:14px !important;line-height:1.45 !important;margin-bottom:12px !important;}
.sa113-locations em{color:#f3c55b !important;font-style:normal !important;font-weight:950 !important;}
.sa113-prevnext small{display:block !important;color:#f3c55b !important;font-size:12px !important;font-weight:950 !important;text-transform:uppercase !important;margin-bottom:9px !important;}
.sa113-author h3{margin:0 0 10px !important;color:#fff !important;font-size:22px !important;}

.sa113-sidebar{
  position:sticky !important;
  top:34px !important;
  display:grid !important;
  gap:22px !important;
}

.sa113-widget{
  padding:26px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 20px 60px rgba(0,0,0,.18) !important;
}

.sa113-widget h3{
  margin:0 0 18px !important;
  color:#f3c55b !important;
  font-size:15px !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
}

.sa113-widget dl{margin:0 !important;}
.sa113-widget dt,.sa113-widget dd{
  display:inline-block !important;
  width:48% !important;
  margin:0 !important;
  padding:12px 0 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  color:#dce6f6 !important;
  font-size:13px !important;
  vertical-align:top !important;
}

.sa113-widget dd{color:#fff !important;text-align:right !important;font-weight:850 !important;}

.sa113-widget > a{
  display:block !important;
  color:#fff !important;
  text-decoration:none !important;
  padding:12px 0 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  font-size:14px !important;
  font-weight:850 !important;
}

.sa113-footer{
  display:block !important;
  width:100% !important;
  background:#050914 !important;
  color:#fff !important;
  padding:72px 70px 34px !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
}

.sa113-footer-inner{
  max-width:1320px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:1.4fr .8fr .8fr .8fr !important;
  gap:48px !important;
  align-items:start !important;
}

.sa113-footer h3{margin:0 0 14px !important;color:#fff !important;font-size:28px !important;font-weight:950 !important;}
.sa113-footer h4{margin:0 0 18px !important;color:#f3c55b !important;font-size:14px !important;font-weight:950 !important;text-transform:uppercase !important;}
.sa113-footer p{margin:0 !important;max-width:380px !important;color:#cbd5e1 !important;font-size:15px !important;line-height:1.7 !important;}
.sa113-footer a{display:block !important;color:#dce6f6 !important;text-decoration:none !important;margin-bottom:12px !important;font-size:14px !important;}
.sa113-footer a:hover{color:#f3c55b !important;}
.sa113-footer-bottom{
  max-width:1320px !important;
  margin:42px auto 0 !important;
  padding-top:24px !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
  color:#9fb0c8 !important;
  font-size:13px !important;
}

@media(max-width:1050px){
  .sa113-header-inner{padding:18px 28px !important;min-height:auto !important;flex-direction:column !important;align-items:flex-start !important;}
  .sa113-grid{grid-template-columns:1fr !important;}
  .sa113-sidebar{position:static !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .sa113-footer-inner{grid-template-columns:1fr 1fr !important;}
}

@media(max-width:720px){
  .sa113-header-inner,.sa113-shell,.sa113-footer{padding-left:20px !important;padding-right:20px !important;}
  .sa113-nav{gap:16px 20px !important;}
  .sa113-nav a{font-size:12px !important;}
  .sa113-article h1{font-size:36px !important;}
  .sa113-excerpt{font-size:17px !important;}
  .sa113-score-strip,.sa113-locations > div,.sa113-trust > div,.sa113-prevnext,.sa113-sidebar,.sa113-footer-inner{grid-template-columns:1fr !important;}
  .sa113-featured img{height:330px !important;}
}


/* =========================================================
   V11.4 VISUAL POLISH BUILD
   Unified navy background, premium cards, sidebar polish, author/footer refinement.
   ========================================================= */

/* One premium background color across article, header and footer */
html body.sa113-body,
body.single-post.sa113-body,
.sa113-header,
.sa113-page,
.sa113-footer{
  background:#020b1f !important;
}

.sa113-page{
  background:
    radial-gradient(circle at 18% 0%, rgba(217,164,65,.075), transparent 24%),
    radial-gradient(circle at 88% 18%, rgba(56,111,255,.055), transparent 25%),
    #020b1f !important;
}

.sa113-header{
  background:rgba(2,11,31,.96) !important;
  backdrop-filter:blur(14px) !important;
  border-bottom:1px solid rgba(255,255,255,.09) !important;
}

.sa113-footer{
  background:#020b1f !important;
  border-top:1px solid rgba(255,255,255,.09) !important;
}

/* Container spacing: a little more premium breathing room */
.sa113-shell{
  padding-top:42px !important;
  padding-bottom:104px !important;
}

.sa113-grid{
  gap:48px !important;
}

/* Header visual balance */
.sa113-header-inner{
  min-height:96px !important;
}

.sa113-logo-mark{
  background:
    radial-gradient(circle at 50% 45%, rgba(243,197,91,.18), transparent 38%),
    linear-gradient(145deg,#05112b,#111f41) !important;
  border-color:#e0ad3e !important;
}

.sa113-nav a{
  opacity:.94 !important;
}

.sa113-nav a:hover{
  opacity:1 !important;
}

/* Hero tightening + premium title */
.sa113-article h1{
  max-width:900px !important;
  font-size:52px !important;
  text-shadow:0 20px 50px rgba(0,0,0,.45) !important;
}

.sa113-excerpt{
  max-width:850px !important;
  color:#f0f5ff !important;
}

/* Glass cards polish */
.sa113-score-strip,
.sa113-widget,
.sa113-panel,
.sa113-locations,
.sa113-trust,
.sa113-author,
.sa113-prevnext a{
  background:
    linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035)) !important;
  border:1px solid rgba(255,255,255,.13) !important;
  box-shadow:
    0 28px 74px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
}

/* Featured image: stronger premium banner */
.sa113-featured{
  border-radius:24px !important;
  box-shadow:
    0 34px 95px rgba(0,0,0,.42),
    0 0 0 1px rgba(255,255,255,.06) !important;
}

.sa113-featured img{
  height:520px !important;
  border-radius:24px !important;
}

/* Contents bar */
.sa113-contents{
  background:rgba(255,255,255,.055) !important;
  border-color:rgba(255,255,255,.13) !important;
  box-shadow:0 18px 48px rgba(0,0,0,.18) !important;
}

/* Sidebar polish */
.sa113-sidebar{
  gap:24px !important;
}

.sa113-widget{
  border-radius:22px !important;
  padding:28px !important;
}

.sa113-widget h3{
  letter-spacing:.045em !important;
}

.sa113-widget > a{
  position:relative !important;
  padding:14px 0 14px 18px !important;
}

.sa113-widget > a::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:21px !important;
  width:7px !important;
  height:7px !important;
  border-radius:50% !important;
  background:#f3c55b !important;
  box-shadow:0 0 14px rgba(243,197,91,.44) !important;
}

.sa113-widget > a:hover{
  color:#f3c55b !important;
}

/* Location / trust cards */
.sa113-locations a,
.sa113-trust article{
  background:
    linear-gradient(180deg,rgba(9,23,51,.94),rgba(6,17,38,.94)) !important;
  border-color:rgba(255,255,255,.12) !important;
  transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}

.sa113-locations a:hover,
.sa113-trust article:hover,
.sa113-prevnext a:hover{
  transform:translateY(-4px) !important;
  border-color:rgba(243,197,91,.32) !important;
  box-shadow:0 26px 70px rgba(0,0,0,.30) !important;
}

/* Author profile box */
.sa114-author{
  display:flex !important;
  align-items:center !important;
  gap:20px !important;
}

.sa114-author-mark{
  flex:0 0 58px !important;
  width:58px !important;
  height:58px !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:linear-gradient(145deg,#071126,#142447) !important;
  border:2px solid #d9a441 !important;
  color:#f3c55b !important;
  font-size:25px !important;
  box-shadow:0 0 0 6px rgba(217,164,65,.08) !important;
}

.sa114-author-copy h3{
  margin-top:0 !important;
}

/* Previous / next as bigger premium cards */
.sa113-prevnext a{
  min-height:146px !important;
  border-radius:18px !important;
  background:
    linear-gradient(180deg,rgba(11,21,40,.88),rgba(5,15,34,.96)),
    radial-gradient(circle at 12% 18%,rgba(243,197,91,.16),transparent 30%) !important;
}

.sa113-prevnext small{
  color:#f3c55b !important;
}

.sa113-prevnext strong{
  font-size:20px !important;
  line-height:1.25 !important;
}

/* Footer polish */
.sa113-footer{
  padding-top:82px !important;
}

.sa113-footer-inner{
  gap:56px !important;
}

.sa113-footer h3{
  font-size:31px !important;
  letter-spacing:-.035em !important;
}

.sa113-footer h4{
  letter-spacing:.05em !important;
}

.sa113-footer a{
  opacity:.92 !important;
  transition:opacity .18s ease, color .18s ease, transform .18s ease !important;
}

.sa113-footer a:hover{
  opacity:1 !important;
  transform:translateX(3px) !important;
}

.sa113-footer-bottom{
  display:flex !important;
  justify-content:space-between !important;
  gap:20px !important;
}

/* Remove any old black/gradient remnants from previous versions */
.sa105-article-page,
.sa112-page,
.sa111-footer,
.sa110-footer{
  background:#020b1f !important;
}

/* Mobile polish */
@media(max-width:1050px){
  .sa113-featured img{
    height:430px !important;
  }
}

@media(max-width:720px){
  .sa113-article h1{
    font-size:38px !important;
  }

  .sa113-featured img{
    height:340px !important;
  }

  .sa114-author{
    align-items:flex-start !important;
  }

  .sa113-footer-bottom{
    flex-direction:column !important;
  }
}


/* =========================================================
   V11.5 FINAL POST POLISH
   Footer Site column + homepage-style logo refinement.
   ========================================================= */

/* Header logo: closer to homepage visual language */
.sa113-logo{
  gap:16px !important;
}

.sa113-logo-mark{
  width:60px !important;
  height:60px !important;
  font-size:24px !important;
  border:2px solid #e0ad3e !important;
  background:
    radial-gradient(circle at 50% 38%,rgba(255,255,255,.16),transparent 18%),
    linear-gradient(145deg,#061126,#162b55) !important;
  position:relative !important;
}

.sa113-logo-mark::after{
  content:"" !important;
  position:absolute !important;
  left:13px !important;
  right:13px !important;
  bottom:14px !important;
  height:17px !important;
  background:
    linear-gradient(135deg,transparent 0 24%,#fff 25% 36%,transparent 37%),
    linear-gradient(45deg,transparent 0 28%,#dce6f6 29% 43%,transparent 44%) !important;
  opacity:.86 !important;
  clip-path:polygon(0 100%,28% 30%,45% 76%,62% 18%,100% 100%) !important;
}

.sa113-logo-text strong{
  font-size:25px !important;
  letter-spacing:.055em !important;
}

.sa113-logo-text em{
  font-size:13px !important;
  letter-spacing:.34em !important;
  color:#f3c55b !important;
}

/* Premium underline like the homepage logo */
.sa113-logo-text::after{
  content:"" !important;
  display:block !important;
  width:100% !important;
  height:2px !important;
  margin-top:8px !important;
  background:linear-gradient(90deg,transparent,#f3c55b,transparent) !important;
  opacity:.9 !important;
}

/* Footer brand with homepage-style horizontal logo */
.sa115-footer-brand h3{
  display:none !important;
}

.sa115-footer-logo{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  margin-bottom:18px !important;
  color:#fff !important;
}

.sa115-logo-mark{
  width:56px !important;
  height:56px !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:
    radial-gradient(circle at 50% 38%,rgba(255,255,255,.16),transparent 18%),
    linear-gradient(145deg,#061126,#162b55) !important;
  border:2px solid #e0ad3e !important;
  color:#f3c55b !important;
  font-size:23px !important;
  position:relative !important;
  box-shadow:0 0 0 5px rgba(217,164,65,.08) !important;
}

.sa115-logo-mark::after{
  content:"" !important;
  position:absolute !important;
  left:12px !important;
  right:12px !important;
  bottom:13px !important;
  height:16px !important;
  background:#fff !important;
  opacity:.86 !important;
  clip-path:polygon(0 100%,28% 30%,45% 76%,62% 18%,100% 100%) !important;
}

.sa115-footer-logo span:not(.sa115-logo-mark){
  display:flex !important;
  flex-direction:column !important;
  line-height:1 !important;
}

.sa115-footer-logo strong{
  color:#fff !important;
  font-size:25px !important;
  font-weight:950 !important;
  letter-spacing:.055em !important;
}

.sa115-footer-logo em{
  margin-top:7px !important;
  color:#f3c55b !important;
  font-size:13px !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.34em !important;
  text-align:center !important;
}

.sa115-footer-logo span:not(.sa115-logo-mark)::after{
  content:"" !important;
  display:block !important;
  width:100% !important;
  height:2px !important;
  margin-top:8px !important;
  background:linear-gradient(90deg,transparent,#f3c55b,transparent) !important;
  opacity:.9 !important;
}

/* Footer column polish */
.sa113-footer h4{
  color:#f3c55b !important;
}

.sa113-footer-bottom{
  color:#9fb0c8 !important;
}

/* Related sidebar slightly closer to reference */
.sa113-widget > a{
  line-height:1.45 !important;
}

/* Keep full post background locked */
html body.sa113-body,
body.single-post.sa113-body,
.sa113-header,
.sa113-page,
.sa113-footer{
  background:#020b1f !important;
}

@media(max-width:720px){
  .sa113-logo-text strong,
  .sa115-footer-logo strong{
    font-size:21px !important;
  }
}


/* =========================================================
   V11.6 LOGO FIX
   Post header/footer logo now uses homepage logo asset when available.
   Detected asset: assets/stargazing-atlas-logo.svg
   ========================================================= */


/* V11.6 use real homepage logo asset */
.sa113-logo,
.sa115-footer-logo{
  width:280px !important;
  height:76px !important;
  display:block !important;
  background-image:url("assets/stargazing-atlas-logo.svg") !important;
  background-size:contain !important;
  background-repeat:no-repeat !important;
  background-position:left center !important;
}

.sa113-logo > *,
.sa115-footer-logo > *{
  display:none !important;
}


/* Make post logo size match homepage better */
.sa113-header-inner{
  min-height:96px !important;
}

.sa113-logo-text strong,
.sa115-footer-logo strong{
  line-height:.95 !important;
}

.sa113-logo-text em,
.sa115-footer-logo em{
  margin-top:8px !important;
}


/* =========================================================
   V11.7 LOGO LAYOUT FIX
   Fixes V11.6 issue where only icon showed in header and footer logo overlapped.
   Uses icon asset + real text layout, matching homepage style.
   Asset: assets/stargazing-atlas-logo.svg
   ========================================================= */

/* Header logo: icon + text, not background-only */
.sa113-logo{
  width:auto !important;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  background:none !important;
  background-image:none !important;
  text-decoration:none !important;
  color:#fff !important;
  flex:0 0 auto !important;
}

.sa113-logo > *{
  display:flex !important;
}

.sa113-logo-mark{
  flex:0 0 58px !important;
  width:58px !important;
  height:58px !important;
  border-radius:50% !important;
  display:block !important;
  background-image:url("assets/stargazing-atlas-logo.svg") !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  border:0 !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.10) !important;
  color:transparent !important;
  overflow:hidden !important;
}

.sa113-logo-mark::before,
.sa113-logo-mark::after{
  display:none !important;
  content:none !important;
}

.sa113-logo-text{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  line-height:1 !important;
  min-width:230px !important;
}

.sa113-logo-text strong{
  display:block !important;
  color:#fff !important;
  font-size:26px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.sa113-logo-text em{
  display:block !important;
  margin-top:8px !important;
  color:#f3c55b !important;
  font-size:13px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.34em !important;
  text-align:center !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.sa113-logo-text::after{
  content:"" !important;
  display:block !important;
  width:100% !important;
  height:2px !important;
  margin-top:8px !important;
  background:linear-gradient(90deg,transparent,#f3c55b,transparent) !important;
  opacity:.9 !important;
}

/* Footer logo: no overlap, same layout */
.sa115-footer-logo{
  width:auto !important;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  margin-bottom:20px !important;
  background:none !important;
  background-image:none !important;
  color:#fff !important;
}

.sa115-footer-logo > *{
  display:flex !important;
}

.sa115-logo-mark{
  flex:0 0 54px !important;
  width:54px !important;
  height:54px !important;
  border-radius:50% !important;
  display:block !important;
  background-image:url("assets/stargazing-atlas-logo.svg") !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  border:0 !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.10) !important;
  color:transparent !important;
  overflow:hidden !important;
}

.sa115-logo-mark::before,
.sa115-logo-mark::after{
  display:none !important;
  content:none !important;
}

.sa115-footer-logo span:not(.sa115-logo-mark){
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  line-height:1 !important;
  min-width:230px !important;
}

.sa115-footer-logo strong{
  display:block !important;
  color:#fff !important;
  font-size:24px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.sa115-footer-logo em{
  display:block !important;
  margin-top:8px !important;
  color:#f3c55b !important;
  font-size:13px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.34em !important;
  text-align:center !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.sa115-footer-logo span:not(.sa115-logo-mark)::after{
  content:"" !important;
  display:block !important;
  width:100% !important;
  height:2px !important;
  margin-top:8px !important;
  background:linear-gradient(90deg,transparent,#f3c55b,transparent) !important;
  opacity:.9 !important;
}

/* Keep footer Site column */
.sa113-footer h4{
  color:#f3c55b !important;
}

/* Mobile logo sizing */
@media(max-width:720px){
  .sa113-logo-text,
  .sa115-footer-logo span:not(.sa115-logo-mark){
    min-width:180px !important;
  }

  .sa113-logo-text strong{
    font-size:21px !important;
  }

  .sa115-footer-logo strong{
    font-size:20px !important;
  }

  .sa113-logo-text em,
  .sa115-footer-logo em{
    font-size:11px !important;
  }
}


/* =========================================================
   V11.8 BRAND UNIFICATION BUILD
   Unifies homepage and post logos with the professional V11.7 logo system.
   Logo asset: assets/stargazing-atlas-logo.svg
   ========================================================= */

/* Global homepage/header logo unification */
.sa-logo,
.sa-site-logo,
.sa-brand,
.sa-header-logo,
.site-branding a,
.site-title a,
.custom-logo-link{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  width:auto !important;
  height:auto !important;
  background:none !important;
  background-image:none !important;
  text-decoration:none !important;
}

/* Hide old image if theme outputs both image and text in homepage header, then rebuild via pseudo */
.site-branding .custom-logo,
.custom-logo-link img{
  display:none !important;
}

.custom-logo-link::before,
.site-title a::before,
.sa-logo::before,
.sa-site-logo::before,
.sa-brand::before,
.sa-header-logo::before{
  content:"" !important;
  flex:0 0 58px !important;
  width:58px !important;
  height:58px !important;
  display:block !important;
  border-radius:50% !important;
  background-image:url("assets/stargazing-atlas-logo.svg") !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.10) !important;
}

/* Homepage text logo block */
.site-title a,
.sa-logo,
.sa-site-logo,
.sa-brand,
.sa-header-logo{
  color:#fff !important;
  font-size:0 !important;
  line-height:1 !important;
}

.site-title a::after,
.custom-logo-link::after,
.sa-logo::after,
.sa-site-logo::after,
.sa-brand::after,
.sa-header-logo::after{
  content:"STARGAZING\A ATLAS" !important;
  white-space:pre !important;
  display:block !important;
  color:#fff !important;
  font-size:26px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  text-align:left !important;
  text-shadow:none !important;
}

/* Gold ATLAS is not possible inside a single ::after without markup, so add premium underline */
.site-title a,
.custom-logo-link,
.sa-logo,
.sa-site-logo,
.sa-brand,
.sa-header-logo{
  position:relative !important;
}

.site-title a span,
.sa-logo span,
.sa-site-logo span,
.sa-brand span,
.sa-header-logo span{
  display:none !important;
}

/* Post logo remains V11.7 fixed layout */
.sa113-logo{
  width:auto !important;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  background:none !important;
  background-image:none !important;
  text-decoration:none !important;
  color:#fff !important;
  flex:0 0 auto !important;
}

.sa113-logo > *{
  display:flex !important;
}

.sa113-logo-mark{
  flex:0 0 58px !important;
  width:58px !important;
  height:58px !important;
  border-radius:50% !important;
  display:block !important;
  background-image:url("assets/stargazing-atlas-logo.svg") !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  border:0 !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.10) !important;
  color:transparent !important;
  overflow:hidden !important;
}

.sa113-logo-mark::before,
.sa113-logo-mark::after{
  display:none !important;
  content:none !important;
}

.sa113-logo-text{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  line-height:1 !important;
  min-width:230px !important;
}

.sa113-logo-text strong{
  display:block !important;
  color:#fff !important;
  font-size:26px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.sa113-logo-text em{
  display:block !important;
  margin-top:8px !important;
  color:#f3c55b !important;
  font-size:13px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.34em !important;
  text-align:center !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.sa113-logo-text::after{
  content:"" !important;
  display:block !important;
  width:100% !important;
  height:2px !important;
  margin-top:8px !important;
  background:linear-gradient(90deg,transparent,#f3c55b,transparent) !important;
  opacity:.9 !important;
}

/* Footer logo keeps V11.7 fixed layout */
.sa115-footer-logo{
  width:auto !important;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  margin-bottom:20px !important;
  background:none !important;
  background-image:none !important;
  color:#fff !important;
}

.sa115-footer-logo > *{
  display:flex !important;
}

.sa115-logo-mark{
  flex:0 0 54px !important;
  width:54px !important;
  height:54px !important;
  border-radius:50% !important;
  display:block !important;
  background-image:url("assets/stargazing-atlas-logo.svg") !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  border:0 !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.10) !important;
  color:transparent !important;
  overflow:hidden !important;
}

.sa115-logo-mark::before,
.sa115-logo-mark::after{
  display:none !important;
  content:none !important;
}

.sa115-footer-logo span:not(.sa115-logo-mark){
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  line-height:1 !important;
  min-width:230px !important;
}

.sa115-footer-logo strong{
  display:block !important;
  color:#fff !important;
  font-size:24px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.sa115-footer-logo em{
  display:block !important;
  margin-top:8px !important;
  color:#f3c55b !important;
  font-size:13px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.34em !important;
  text-align:center !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.sa115-footer-logo span:not(.sa115-logo-mark)::after{
  content:"" !important;
  display:block !important;
  width:100% !important;
  height:2px !important;
  margin-top:8px !important;
  background:linear-gradient(90deg,transparent,#f3c55b,transparent) !important;
  opacity:.9 !important;
}

/* Menu hover unification */
.sa113-nav a:hover,
.main-navigation a:hover,
.site-header a:hover,
.sa-nav a:hover,
.sa-header-nav a:hover{
  color:#f3c55b !important;
}

/* Footer Site column lock */
.sa113-footer h4{
  color:#f3c55b !important;
}

@media(max-width:720px){
  .custom-logo-link::before,
  .site-title a::before,
  .sa-logo::before,
  .sa-site-logo::before,
  .sa-brand::before,
  .sa-header-logo::before,
  .sa113-logo-mark{
    width:52px !important;
    height:52px !important;
    flex-basis:52px !important;
  }

  .site-title a::after,
  .custom-logo-link::after,
  .sa-logo::after,
  .sa-site-logo::after,
  .sa-brand::after,
  .sa-header-logo::after{
    font-size:21px !important;
  }

  .sa113-logo-text,
  .sa115-footer-logo span:not(.sa115-logo-mark){
    min-width:180px !important;
  }

  .sa113-logo-text strong,
  .sa115-footer-logo strong{
    font-size:21px !important;
  }
}



/* Kill old homepage logo image behavior */
body:not(.single-post) .custom-logo-link img,
body:not(.single-post) .site-branding img,
body:not(.single-post) .sa-site-logo img,
body:not(.single-post) .sa-logo img,
body:not(.single-post) .sa-brand img,
body:not(.single-post) .sa-header-logo img{
  display:none !important;
}

/* Rebuild homepage/category logo as exact post-style: icon + STARGAZING / ATLAS + underline */
body:not(.single-post) .custom-logo-link,
body:not(.single-post) .site-title a,
body:not(.single-post) .site-branding a,
body:not(.single-post) .sa-logo,
body:not(.single-post) .sa-site-logo,
body:not(.single-post) .sa-brand,
body:not(.single-post) .sa-header-logo{
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:14px !important;
  background:none !important;
  background-image:none !important;
  text-decoration:none !important;
  color:#fff !important;
  font-size:0 !important;
  line-height:1 !important;
  overflow:visible !important;
}

/* Logo icon */
body:not(.single-post) .custom-logo-link::before,
body:not(.single-post) .site-title a::before,
body:not(.single-post) .site-branding a::before,
body:not(.single-post) .sa-logo::before,
body:not(.single-post) .sa-site-logo::before,
body:not(.single-post) .sa-brand::before,
body:not(.single-post) .sa-header-logo::before{
  content:"" !important;
  flex:0 0 58px !important;
  width:58px !important;
  height:58px !important;
  display:block !important;
  border-radius:50% !important;
  background-image:url("assets/stargazing-atlas-logo.svg") !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.10) !important;
}

/* Text block */
body:not(.single-post) .custom-logo-link::after,
body:not(.single-post) .site-title a::after,
body:not(.single-post) .site-branding a::after,
body:not(.single-post) .sa-logo::after,
body:not(.single-post) .sa-site-logo::after,
body:not(.single-post) .sa-brand::after,
body:not(.single-post) .sa-header-logo::after{
  content:"STARGAZING\A    ATLAS" !important;
  white-space:pre !important;
  display:block !important;
  color:#fff !important;
  font-size:26px !important;
  line-height:1.02 !important;
  font-weight:950 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  text-align:center !important;
  padding-bottom:10px !important;
  border-bottom:2px solid transparent !important;
  background:
    linear-gradient(90deg,transparent,#f3c55b,transparent) left bottom/100% 2px no-repeat !important;
}

/* Hide duplicate old title text that may remain inside branding */
body:not(.single-post) .site-title,
body:not(.single-post) .site-description{
  font-size:0 !important;
}

/* Make header branding area match post header scale */
body:not(.single-post) .site-branding,
body:not(.single-post) .sa-header-brand,
body:not(.single-post) .sa-brand-wrap{
  display:flex !important;
  align-items:center !important;
}

/* Main menu stays aligned beside bigger logo */
body:not(.single-post) .main-navigation,
body:not(.single-post) .sa-nav,
body:not(.single-post) .sa-header-nav{
  display:flex !important;
  align-items:center !important;
}

body:not(.single-post) .main-navigation a:hover,
body:not(.single-post) .site-header a:hover,
body:not(.single-post) .sa-nav a:hover,
body:not(.single-post) .sa-header-nav a:hover{
  color:#f3c55b !important;
}

/* Keep post logo exactly as fixed in V11.7 */
.sa113-logo{
  width:auto !important;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  background:none !important;
  background-image:none !important;
  text-decoration:none !important;
  color:#fff !important;
  flex:0 0 auto !important;
}

.sa113-logo > *{ display:flex !important; }

.sa113-logo-mark{
  flex:0 0 58px !important;
  width:58px !important;
  height:58px !important;
  border-radius:50% !important;
  display:block !important;
  background-image:url("assets/stargazing-atlas-logo.svg") !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  border:0 !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.10) !important;
  color:transparent !important;
  overflow:hidden !important;
}

.sa113-logo-mark::before,
.sa113-logo-mark::after{
  display:none !important;
  content:none !important;
}

.sa113-logo-text{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  line-height:1 !important;
  min-width:230px !important;
}

.sa113-logo-text strong{
  display:block !important;
  color:#fff !important;
  font-size:26px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.sa113-logo-text em{
  display:block !important;
  margin-top:8px !important;
  color:#f3c55b !important;
  font-size:13px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.34em !important;
  text-align:center !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

.sa113-logo-text::after{
  content:"" !important;
  display:block !important;
  width:100% !important;
  height:2px !important;
  margin-top:8px !important;
  background:linear-gradient(90deg,transparent,#f3c55b,transparent) !important;
  opacity:.9 !important;
}

/* Mobile */
@media(max-width:720px){
  body:not(.single-post) .custom-logo-link::before,
  body:not(.single-post) .site-title a::before,
  body:not(.single-post) .site-branding a::before,
  body:not(.single-post) .sa-logo::before,
  body:not(.single-post) .sa-site-logo::before,
  body:not(.single-post) .sa-brand::before,
  body:not(.single-post) .sa-header-logo::before{
    flex-basis:52px !important;
    width:52px !important;
    height:52px !important;
  }

  body:not(.single-post) .custom-logo-link::after,
  body:not(.single-post) .site-title a::after,
  body:not(.single-post) .site-branding a::after,
  body:not(.single-post) .sa-logo::after,
  body:not(.single-post) .sa-site-logo::after,
  body:not(.single-post) .sa-brand::after,
  body:not(.single-post) .sa-header-logo::after{
    font-size:21px !important;
  }
}



/* Target the homepage header/brand classes used by the theme */
body.home .sa-header .sa-logo,
body.front-page .sa-header .sa-logo,
body.home .sa-logo,
body.home a.sa-logo,
body.home .sa-site-logo,
body.home .sa-brand,
body.home .sa-header-logo,
body.home .site-branding a,
body.home .custom-logo-link,
body.home .site-title a,
body.home header a[href="/"],
body.home header a[href*="stargazingatlas.com"] {
  width:auto !important;
  height:auto !important;
  min-width:300px !important;
  max-width:none !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:14px !important;
  background:none !important;
  background-image:none !important;
  text-decoration:none !important;
  color:#fff !important;
  font-size:0 !important;
  line-height:1 !important;
  overflow:visible !important;
  position:relative !important;
}

/* Hide the old homepage logo image/text output */
body.home .sa-header .sa-logo img,
body.front-page .sa-header .sa-logo img,
body.home .sa-logo img,
body.home .sa-site-logo img,
body.home .sa-brand img,
body.home .sa-header-logo img,
body.home .custom-logo-link img,
body.home .site-branding img,
body.home .site-title,
body.home .site-description,
body.home .sa-logo span,
body.home .sa-site-logo span,
body.home .sa-brand span,
body.home .sa-header-logo span {
  display:none !important;
}

/* Homepage icon */
body.home .sa-header .sa-logo::before,
body.front-page .sa-header .sa-logo::before,
body.home .sa-logo::before,
body.home a.sa-logo::before,
body.home .sa-site-logo::before,
body.home .sa-brand::before,
body.home .sa-header-logo::before,
body.home .site-branding a::before,
body.home .custom-logo-link::before,
body.home .site-title a::before,
body.home header a[href="/"]::before,
body.home header a[href*="stargazingatlas.com"]::before {
  content:"" !important;
  flex:0 0 58px !important;
  width:58px !important;
  height:58px !important;
  display:block !important;
  border-radius:50% !important;
  background-image:url("assets/stargazing-atlas-logo.svg") !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  box-shadow:0 0 0 4px rgba(217,164,65,.10) !important;
}

/* Homepage STARGAZING / ATLAS text */
body.home .sa-header .sa-logo::after,
body.front-page .sa-header .sa-logo::after,
body.home .sa-logo::after,
body.home a.sa-logo::after,
body.home .sa-site-logo::after,
body.home .sa-brand::after,
body.home .sa-header-logo::after,
body.home .site-branding a::after,
body.home .custom-logo-link::after,
body.home .site-title a::after,
body.home header a[href="/"]::after,
body.home header a[href*="stargazingatlas.com"]::after {
  content:"STARGAZING\A    ATLAS" !important;
  white-space:pre !important;
  display:block !important;
  color:#fff !important;
  font-size:26px !important;
  line-height:1.02 !important;
  font-weight:950 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  text-align:center !important;
  padding-bottom:10px !important;
  background:linear-gradient(90deg,transparent,#f3c55b,transparent) left bottom/100% 2px no-repeat !important;
}

/* Keep homepage header alignment stable */
body.home .sa-header,
body.home header {
  overflow:visible !important;
}

body.home .sa-header-inner,
body.home .site-header .ast-container,
body.home .main-header-bar .ast-container {
  display:flex !important;
  align-items:center !important;
}

body.home .sa-nav,
body.home .main-navigation,
body.home nav {
  align-items:center !important;
}

/* Post logo remains unchanged */
.sa113-logo {
  width:auto !important;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  background:none !important;
  background-image:none !important;
}

.sa113-logo-mark {
  background-image:url("assets/stargazing-atlas-logo.svg") !important;
  background-size:cover !important;
  background-position:center center !important;
}

/* Mobile */
@media(max-width:720px){
  body.home .sa-header .sa-logo,
  body.front-page .sa-header .sa-logo,
  body.home .sa-logo,
  body.home a.sa-logo,
  body.home .sa-site-logo,
  body.home .sa-brand,
  body.home .sa-header-logo,
  body.home .site-branding a,
  body.home .custom-logo-link,
  body.home .site-title a {
    min-width:240px !important;
  }

  body.home .sa-header .sa-logo::before,
  body.front-page .sa-header .sa-logo::before,
  body.home .sa-logo::before,
  body.home a.sa-logo::before,
  body.home .sa-site-logo::before,
  body.home .sa-brand::before,
  body.home .sa-header-logo::before,
  body.home .site-branding a::before,
  body.home .custom-logo-link::before,
  body.home .site-title a::before {
    flex-basis:52px !important;
    width:52px !important;
    height:52px !important;
  }

  body.home .sa-header .sa-logo::after,
  body.front-page .sa-header .sa-logo::after,
  body.home .sa-logo::after,
  body.home a.sa-logo::after,
  body.home .sa-site-logo::after,
  body.home .sa-brand::after,
  body.home .sa-header-logo::after,
  body.home .site-branding a::after,
  body.home .custom-logo-link::after,
  body.home .site-title a::after {
    font-size:21px !important;
  }
}



/* Hide any old homepage logo that may still render alongside the hardfixed logo */
body.home .custom-logo-link:not(.sa-home-logo),
body.home .site-title:not(:has(.sa-home-logo)),
body.home .site-description,
body.home .sa-logo:not(.sa-home-logo) img,
body.home .sa-brand:not(.sa-home-logo) img,
body.home .sa-site-logo:not(.sa-home-logo) img,
body.home .sa-header-logo:not(.sa-home-logo) img {
  display:none !important;
}

/* Keep nav aligned */
body.home .sa-header-inner,
body.home .site-header .ast-container,
body.front-page .sa-header-inner {
  display:flex !important;
  align-items:center !important;
}

@media(max-width:720px){
  .sa-home-logo .sa113-logo-mark {
    flex-basis:52px !important;
    width:52px !important;
    height:52px !important;
  }

  .sa-home-logo .sa113-logo-text {
    min-width:180px !important;
  }

  .sa-home-logo .sa113-logo-text strong {
    font-size:21px !important;
  }

  .sa-home-logo .sa113-logo-text em {
    font-size:11px !important;
  }
}



/* Hide any leftover old homepage logo if it still exists */
body.home header img[src*="logo"],
body.home header img[src*="stargazing-atlas-logo"] {
  display:none !important;
}

/* But never hide our background-image logo */
body.home .sa-real-home-logo img {
  display:none !important;
}

@media(max-width:720px){
  .sa-real-home-logo .sa113-logo-mark {
    flex-basis:52px !important;
    width:52px !important;
    height:52px !important;
  }

  .sa-real-home-logo .sa113-logo-text {
    min-width:180px !important;
  }

  .sa-real-home-logo .sa113-logo-text strong {
    font-size:21px !important;
  }

  .sa-real-home-logo .sa113-logo-text em {
    font-size:11px !important;
  }
}


/* Shared header shell look */
.sa-v82b-header,
.sa113-header,
body:not(.home) .site-header,
body:not(.home) .ast-primary-header-bar,
body:not(.home) .main-header-bar{
  background:var(--sa-v12-night) !important;
  border-bottom:1px solid var(--sa-v12-line) !important;
  color:#fff !important;
}

/* Keep Astra homepage hidden only on homepage because homepage has its own sa-v82b-header */
body.home .site-header,
body.home .ast-primary-header-bar,
body.home .main-header-bar{
  display:none !important;
}

/* Shared inner alignment */
.sa-v82b-header,
.sa113-header{
  min-height:92px !important;
  display:flex !important;
  align-items:center !important;
}

.sa-v82b-header > *,
.sa113-header-inner,
.sa-v82b-header-shell{
  width:100% !important;
  max-width:1320px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* HOME HEADER LOGO */
body.home .sa-v82b-logo{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  color:#fff !important;
  text-decoration:none !important;
  flex:0 0 auto !important;
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  background:none !important;
  overflow:visible !important;
}

body.home .sa-v82b-logo::before,
body.home .sa-v82b-logo::after{
  content:none !important;
  display:none !important;
}

body.home .sa-v82b-logo img{
  display:block !important;
  width:60px !important;
  height:50px !important;
  min-width:60px !important;
  flex:0 0 50px !important;
  border-radius:50% !important;
  object-fit:cover !important;
  filter:none !important;
  box-shadow:0 0 0 2px rgba(217,164,65,.10) !important;
}

body.home .sa-v82b-logo span{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:center !important;
  line-height:1 !important;
  min-width:230px !important;
}

body.home .sa-v82b-logo strong{
  display:block !important;
  color:#fff !important;
  font-size:26px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

body.home .sa-v82b-logo em{
  display:block !important;
  margin-top:8px !important;
  padding-left:.34em !important;
  color:var(--sa-v12-gold) !important;
  font-size:13px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.34em !important;
  text-align:center !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

body.home .sa-v82b-logo span::before{
  content:none !important;
  display:none !important;
}

body.home .sa-v82b-logo span::after{
  content:"" !important;
  display:block !important;
  width:100% !important;
  height:2px !important;
  margin-top:8px !important;
  background:linear-gradient(90deg,transparent,var(--sa-v12-gold),transparent) !important;
  opacity:.9 !important;
}

/* POST CUSTOM HEADER LOGO */
body.single .sa113-logo{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  color:#fff !important;
  text-decoration:none !important;
  width:auto !important;
  height:auto !important;
  overflow:visible !important;
}

body.single .sa113-logo-mark{
  display:block !important;
  width:60px !important;
  height:50px !important;
  min-width:60px !important;
  flex:0 0 50px !important;
  border-radius:50% !important;
  background-image:url("assets/branding/stargazing-atlas-icon-512.webp") !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  box-shadow:0 0 0 2px rgba(217,164,65,.10) !important;
  color:transparent !important;
  overflow:hidden !important;
}

body.single .sa113-logo-mark::before,
body.single .sa113-logo-mark::after{
  content:none !important;
  display:none !important;
}

body.single .sa113-logo-text{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:center !important;
  line-height:1 !important;
  min-width:230px !important;
}

body.single .sa113-logo-text strong{
  display:block !important;
  color:#fff !important;
  font-size:26px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

body.single .sa113-logo-text em{
  display:block !important;
  margin-top:8px !important;
  padding-left:.34em !important;
  color:var(--sa-v12-gold) !important;
  font-size:13px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:950 !important;
  letter-spacing:.34em !important;
  text-align:center !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

body.single .sa113-logo-text::after{
  content:"" !important;
  display:block !important;
  width:100% !important;
  height:2px !important;
  margin-top:8px !important;
  background:linear-gradient(90deg,transparent,var(--sa-v12-gold),transparent) !important;
  opacity:.9 !important;
}

/* ASTRA HEADER LOGO FOR PAGE / CATEGORY / ARCHIVE */
body.page .site-title,
body.category .site-title,
body.archive .site-title{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
}

body.page .site-title a,
body.category .site-title a,
body.archive .site-title a{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  color:#fff !important;
  text-decoration:none !important;
  width:auto !important;
  min-width:300px !important;
  height:auto !important;
  font-size:0 !important;
  line-height:1 !important;
  overflow:visible !important;
}

body.page .site-title a::before,
body.category .site-title a::before,
body.archive .site-title a::before{
  content:"" !important;
  display:block !important;
  width:60px !important;
  height:50px !important;
  min-width:60px !important;
  flex:0 0 50px !important;
  border-radius:50% !important;
  background-image:url("assets/branding/stargazing-atlas-icon-512.webp") !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  box-shadow:0 0 0 2px rgba(217,164,65,.10) !important;
}

body.page .site-title a::after,
body.category .site-title a::after,
body.archive .site-title a::after{
  content:"STARGAZING\A    ATLAS" !important;
  white-space:pre !important;
  display:block !important;
  color:#fff !important;
  font-size:26px !important;
  line-height:1.02 !important;
  font-weight:950 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  text-align:center !important;
  padding-bottom:10px !important;
  background:linear-gradient(90deg,transparent,var(--sa-v12-gold),transparent) left bottom/100% 2px no-repeat !important;
}

/* Menus */
.sa-v82b-menu,
.sa113-nav,
body:not(.home) .main-navigation,
body:not(.home) .main-header-menu{
  display:flex !important;
  align-items:center !important;
}

.sa-v82b-menu a,
.sa113-nav a,
body:not(.home) .main-navigation a,
body:not(.home) .main-header-menu a{
  color:#fff !important;
  font-weight:900 !important;
  font-size:15px !important;
  white-space:nowrap !important;
  line-height:1 !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
}

.sa-v82b-menu a:hover,
.sa113-nav a:hover,
body:not(.home) .main-navigation a:hover,
body:not(.home) .main-header-menu a:hover{
  color:var(--sa-v12-gold) !important;
}

/* Hide text duplicate from Astra if any theme prints it separately */
body.page .site-title a > *,
body.category .site-title a > *,
body.archive .site-title a > *{
  display:none !important;
}

/* Mobile */
@media(max-width:720px){
  body.home .sa-v82b-logo img,
  body.single .sa113-logo-mark,
  body.page .site-title a::before,
  body.category .site-title a::before,
  body.archive .site-title a::before{
    width:52px !important;
    height:44px !important;
    min-width:52px !important;
    flex-basis:44px !important;
  }

  body.home .sa-v82b-logo span,
  body.single .sa113-logo-text{
    min-width:180px !important;
  }

  body.page .site-title a,
  body.category .site-title a,
  body.archive .site-title a{
    min-width:240px !important;
  }

  body.home .sa-v82b-logo strong,
  body.single .sa113-logo-text strong,
  body.page .site-title a::after,
  body.category .site-title a::after,
  body.archive .site-title a::after{
    font-size:21px !important;
  }

  body.home .sa-v82b-logo em,
  body.single .sa113-logo-text em{
    font-size:11px !important;
  }
}

/* =========================================================
   V13.13 - Premium Dark Homepage Feature Cards
   Locks the four homepage feature cards into the dark-sky
   design language without touching header/footer templates.
   ========================================================= */
body.home .sa-v8-feature-wrap{
  margin-top:-82px !important;
  padding:0 70px 72px !important;
  background:linear-gradient(180deg, rgba(2,8,22,0) 0%, #071021 44%, #071021 100%) !important;
}

body.home .sa-v8-feature-grid{
  max-width:1120px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px !important;
}

body.home .sa-v8-feature-card{
  position:relative !important;
  min-height:220px !important;
  padding:30px 28px 26px !important;
  border-radius:18px !important;
  border:1px solid rgba(246,196,83,.22) !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(246,196,83,.16), transparent 34%),
    linear-gradient(180deg, rgba(17,31,55,.98), rgba(6,14,30,.99)) !important;
  box-shadow:0 28px 70px rgba(0,0,0,.35) !important;
  color:#fff !important;
  overflow:hidden !important;
  isolation:isolate !important;
}

body.home .sa-v8-feature-card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(135deg, rgba(255,255,255,.08), transparent 38%, rgba(246,196,83,.06)) !important;
  opacity:.72 !important;
  pointer-events:none !important;
  z-index:-1 !important;
}

body.home .sa-v8-feature-card:hover{
  transform:translateY(-6px) !important;
  border-color:rgba(246,196,83,.52) !important;
  box-shadow:0 34px 90px rgba(0,0,0,.46), 0 0 0 1px rgba(246,196,83,.08) inset !important;
}

body.home .sa-v8-icon{
  width:52px !important;
  height:52px !important;
  margin:0 0 22px !important;
  border:1px solid rgba(246,196,83,.44) !important;
  background:rgba(246,196,83,.12) !important;
  box-shadow:0 0 28px rgba(246,196,83,.14) !important;
}

body.home .sa-v8-feature-card h3{
  margin:0 0 12px !important;
  color:#fff !important;
  font-size:20px !important;
  line-height:1.18 !important;
  font-weight:950 !important;
  letter-spacing:-.02em !important;
}

body.home .sa-v8-feature-card p{
  margin:0 0 20px !important;
  color:#d8e2f1 !important;
  font-size:15px !important;
  line-height:1.58 !important;
}

body.home .sa-v8-feature-card strong{
  color:#f6c453 !important;
  font-size:15px !important;
  font-weight:950 !important;
}

@media(max-width:1180px){
  body.home .sa-v8-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;max-width:760px !important;}
}

@media(max-width:720px){
  body.home .sa-v8-feature-wrap{margin-top:-42px !important;padding:0 20px 50px !important;}
  body.home .sa-v8-feature-grid{grid-template-columns:1fr !important;gap:16px !important;}
  body.home .sa-v8-feature-card{min-height:auto !important;padding:26px 24px !important;}
}


/* =========================================================
   V13.14 - Dark Theme Consistency
   Removes the light/white homepage background breaks and
   keeps the full front page inside the Stargazing Atlas night
   magazine design language. Header/footer untouched.
   ========================================================= */
html body.home,
html body.home.sa-v8-front,
html body.home .site,
html body.home .site-content,
html body.home .content-area,
html body.home .entry-content,
html body.home .sa-v8-home{
  background:#020817 !important;
  color:#eef5ff !important;
}

body.home .sa-v8-home{
  background:
    radial-gradient(circle at 18% 16%, rgba(56,168,255,.10), transparent 28%),
    radial-gradient(circle at 86% 38%, rgba(246,196,83,.08), transparent 30%),
    linear-gradient(180deg,#020817 0%,#061126 42%,#020817 100%) !important;
}

/* Section background locks */
body.home .sa-v83-discovery,
body.home .sa-v100-regions,
body.home .sa-v8-section,
body.home .sa-v8-guides,
body.home .sa-v86-conditions,
body.home .sa-v88-moon-calendar,
body.home .sa-v89-light,
body.home .sa-v8-topic-section{
  background:transparent !important;
  color:#eef5ff !important;
}

body.home .sa-v83-discovery{
  padding-top:34px !important;
}

body.home .sa-v100-regions,
body.home .sa-v8-section{
  padding-top:88px !important;
  padding-bottom:92px !important;
}

body.home .sa-v100-inner,
body.home .sa-v8-head,
body.home .sa-v86-inner,
body.home .sa-v88-inner,
body.home .sa-v89-inner{
  color:#eef5ff !important;
}

body.home .sa-v100-head h2,
body.home .sa-v8-head h2,
body.home .sa-v86-head h2,
body.home .sa-v88-head h2,
body.home .sa-v89-head h2{
  color:#ffffff !important;
  text-shadow:0 14px 36px rgba(0,0,0,.34) !important;
}

body.home .sa-v100-head p,
body.home .sa-v8-head p,
body.home .sa-v86-head p,
body.home .sa-v88-head p,
body.home .sa-v89-head p,
body.home .sa-v100-head span,
body.home .sa-v86-head span,
body.home .sa-v88-head span,
body.home .sa-v89-head span{
  color:#cdd8ea !important;
}

/* Premium dark panels where old white/grey blocks appeared */
body.home .sa-v83-discovery-inner,
body.home .sa-v86-inner,
body.home .sa-v88-inner,
body.home .sa-v89-inner{
  background:
    radial-gradient(circle at 18% 0%, rgba(246,196,83,.10), transparent 30%),
    linear-gradient(135deg, rgba(9,19,38,.98), rgba(5,12,27,.99) 55%, rgba(9,22,45,.98)) !important;
  border:1px solid rgba(246,196,83,.18) !important;
  box-shadow:0 34px 95px rgba(0,0,0,.34) !important;
}

/* Region cards section now sits on dark canvas, not light paper */
body.home .sa-v100-regions{
  position:relative !important;
}
body.home .sa-v100-regions::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(180deg, rgba(2,8,23,.0) 0%, rgba(11,22,42,.82) 45%, rgba(2,8,23,.0) 100%),
    radial-gradient(circle at 72% 10%, rgba(246,196,83,.08), transparent 34%) !important;
  pointer-events:none !important;
}
body.home .sa-v100-inner{
  position:relative !important;
  z-index:1 !important;
}

/* Any remaining homepage white cards become dark-glass cards */
body.home .sa-v8-guide-card,
body.home .sa-v8-guide-body,
body.home .sa-v83-discovery-card,
body.home .sa-v86-moon-card,
body.home .sa-v86-condition-card,
body.home .sa-v86-meteor-card,
body.home .sa-v88-feature,
body.home .sa-v88-calendar,
body.home .sa-v88-dark-window,
body.home .sa-v89-bortle,
body.home .sa-v89-escape,
body.home .sa-v89-regions,
body.home .sa-v8-topic-grid a{
  background:linear-gradient(180deg, rgba(17,31,55,.96), rgba(6,14,30,.98)) !important;
  border:1px solid rgba(246,196,83,.16) !important;
  color:#eef5ff !important;
  box-shadow:0 24px 70px rgba(0,0,0,.28) !important;
}

body.home .sa-v8-guide-body h3,
body.home .sa-v83-discovery-card h3,
body.home .sa-v86-moon-card h3,
body.home .sa-v86-meteor-card h3,
body.home .sa-v8-topic-grid h3{
  color:#fff !important;
}

body.home .sa-v8-guide-body p,
body.home .sa-v83-discovery-card p,
body.home .sa-v86-moon-card p,
body.home .sa-v86-meteor-card p,
body.home .sa-v8-topic-grid p{
  color:#d8e2f1 !important;
}

body.home .sa-v8-guide-body strong,
body.home .sa-v83-discovery-card strong,
body.home .sa-v100-bottom a,
body.home .sa-v86-links a{
  color:#f6c453 !important;
}

/* Clean the pale strip after feature cards */
body.home .sa-v8-feature-wrap{
  background:linear-gradient(180deg, rgba(2,8,22,0) 0%, #071021 36%, #020817 100%) !important;
}

/* Keep search inputs readable on the dark canvas */
body.home input,
body.home select,
body.home textarea{
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(255,255,255,.18) !important;
  color:#fff !important;
}

body.home input::placeholder,
body.home textarea::placeholder{
  color:#cbd5e1 !important;
}

@media(max-width:720px){
  body.home .sa-v100-regions,
  body.home .sa-v8-section{
    padding-top:62px !important;
    padding-bottom:68px !important;
  }
}


/* =========================================================
   V13.16 FINAL POLISH
   - Removes Category: prefix on archive/category headings via template update.
   - Adds breathing room between homepage planning cards.
   - Converts remaining light region cards to dark premium glass cards.
   - Fixes gold pill text contrast.
   ========================================================= */

body.home .sa-v86-grid,
body.home .sa-v88-layout,
body.home .sa-v89-layout{
  gap:30px !important;
}

body.home .sa-v86-timeline,
body.home .sa-v88-calendar,
body.home .sa-v89-regions{
  gap:22px !important;
}

body.home .sa-v86-timeline div,
body.home .sa-v88-month,
body.home .sa-v89-regions a{
  background:linear-gradient(180deg, rgba(16,31,56,.98), rgba(5,13,29,.99)) !important;
  border:1px solid rgba(246,196,83,.18) !important;
  color:#eef5ff !important;
  box-shadow:0 24px 70px rgba(0,0,0,.30) !important;
}

body.home .sa-v86-timeline strong,
body.home .sa-v88-month span,
body.home .sa-v89-regions strong{
  color:#ffffff !important;
}

body.home .sa-v86-timeline span,
body.home .sa-v88-month em,
body.home .sa-v89-regions span{
  color:#d8e2f1 !important;
}

body.home .sa-v88-month strong{
  color:#f6c453 !important;
}

body.home .sa-v89-regions em{
  background:#f6c453 !important;
  color:#061126 !important;
  border:1px solid rgba(246,196,83,.35) !important;
  box-shadow:none !important;
}

/* Gold destination pills: black text for readability */
body.home .sa-v86-links a,
body.home .sa-v100-bottom a,
body.home a.sa-pill,
body.home .sa-pill,
body.home .sa-v8-state-card em b{
  color:#061126 !important;
}

body.home .sa-v86-links a{
  background:#f6c453 !important;
  border-color:rgba(246,196,83,.55) !important;
  text-shadow:none !important;
}

body.home .sa-v86-links a:hover{
  color:#061126 !important;
  filter:brightness(1.04) !important;
}

/* Reduce the stuck-together feeling on large planning blocks */
body.home .sa-v86-inner,
body.home .sa-v88-inner,
body.home .sa-v89-inner{
  padding-left:0 !important;
  padding-right:0 !important;
}

body.home .sa-v86-conditions,
body.home .sa-v88-moon-calendar,
body.home .sa-v89-light{
  padding-top:72px !important;
  padding-bottom:72px !important;
}

/* Category/archive title polish if any plugin/theme text slips through */
.sa-v1312-hero h1 .screen-reader-text,
.sa-v1312-hero h1 span.taxonomy-label{
  display:none !important;
}

@media(max-width:1050px){
  body.home .sa-v86-grid,
  body.home .sa-v88-layout,
  body.home .sa-v89-layout,
  body.home .sa-v86-timeline,
  body.home .sa-v88-calendar,
  body.home .sa-v89-regions{
    gap:18px !important;
  }
}

@media(max-width:720px){
  body.home .sa-v86-conditions,
  body.home .sa-v88-moon-calendar,
  body.home .sa-v89-light{
    padding-top:52px !important;
    padding-bottom:56px !important;
  }
}
