/* ==============================
   KEYSTONE POSSIBILITIES
   LUXURY DESIGN SYSTEM — v2
   May 1, 2026
   ============================== */

/* Google Fonts Import */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ============================
   GLOBAL BODY — Dark Luxury
   ============================ */
body {
  background-color: #111111 !important;
  color: #e8e8e8 !important;
}

/* === GLOBAL TYPOGRAPHY === */
body,
.entry-content,
.ast-single-post .entry-content,
p {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  color: #d4d4d4 !important;
  line-height: 1.8;
  letter-spacing: 0.01em;
}

h1, h2, h3, h4, h5, h6,
.entry-title,
.ast-archive-title,
.page-title,
.site-title {
  font-family: 'Outfit', 'Inter', sans-serif !important;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: #ffffff !important;
}

/* === LOGO FIX — Transparent Background === */
.custom-logo-link,
.custom-logo-link img,
.ast-site-identity img,
.site-logo-img,
img.custom-logo {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
}

/* Remove any wrapper background on logo container */
.ast-site-identity,
.site-branding {
  background: transparent !important;
  background-color: transparent !important;
}

/* === HEADER — Dark Luxury Sticky === */
.ast-primary-header-bar,
.main-header-bar,
#ast-desktop-header,
.ast-above-header,
.ast-main-header-wrap,
header.site-header,
.ast-header-break-point .ast-primary-header-bar {
  background-color: #111111 !important;
  border-bottom: 1px solid rgba(196, 162, 101, 0.25) !important;
  box-shadow: 0 1px 20px rgba(0,0,0,0.3) !important;
}

/* Header text / links */
.main-header-bar .ast-sitename-text,
.main-header-bar a,
.ast-header-break-point .ast-sitename-text,
.site-title a {
  color: #ffffff !important;
}

/* Navigation links */
.main-navigation a,
.ast-nav-menu a,
.ast-header-sections-navigation a,
.main-header-menu > .menu-item > a {
  color: #d4d4d4 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 0.8rem;
  transition: color 0.3s ease;
}

.main-navigation a:hover,
.ast-nav-menu a:hover,
.main-header-menu > .menu-item > a:hover,
.main-header-menu > .menu-item.current-menu-item > a {
  color: #C4A265 !important;
}

/* Mobile menu */
.ast-mobile-popup-drawer,
.ast-mobile-header-wrap,
.ast-header-break-point .main-header-bar {
  background-color: #111111 !important;
}

.ast-mobile-popup-drawer .menu-item a {
  color: #d4d4d4 !important;
  border-bottom-color: rgba(196, 162, 101, 0.15) !important;
}

/* === SECTION HEADERS — Luxury Treatment === */
.entry-content h2 {
  font-size: clamp(1.5rem, 3vw, 2.2rem);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-top: 4rem;
  margin-bottom: 1.5rem;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid #C4A265;
  color: #ffffff !important;
}

.entry-content h3 {
  font-size: clamp(1.1rem, 2vw, 1.5rem);
  letter-spacing: 0.05em;
  color: #C4A265 !important;
  margin-top: 2.5rem;
}

/* === BUTTONS — Gold Accent === */
.wp-block-button .wp-block-button__link,
.ast-custom-button,
a.wp-block-button__link {
  background-color: #C4A265 !important;
  color: #111111 !important;
  border: none !important;
  border-radius: 9999px !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 14px 36px !important;
  transition: all 0.3s ease;
  font-size: 0.85rem;
}

.wp-block-button .wp-block-button__link:hover,
a.wp-block-button__link:hover {
  background-color: #ffffff !important;
  color: #111111 !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 20px rgba(196, 162, 101, 0.3);
}

/* Outlined Button Variant */
.wp-block-button.is-style-outline .wp-block-button__link {
  background-color: transparent !important;
  color: #C4A265 !important;
  border: 2px solid #C4A265 !important;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background-color: #C4A265 !important;
  color: #111111 !important;
}

/* === COVER BLOCKS — Hero Sections === */
.wp-block-cover {
  min-height: 600px !important;
  border-radius: 9999px !important;
}

.wp-block-cover .wp-block-inner-container {
  max-width: 800px;
  text-align: center;
}

.wp-block-cover h1,
.wp-block-cover h2 {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 300;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #fff !important;
  text-shadow: 0 2px 20px rgba(0,0,0,0.4);
  border-bottom: none;
}

.wp-block-cover p {
  color: rgba(255,255,255,0.9) !important;
  font-size: 1.1rem;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

/* === PAGE CONTENT AREA — Dark Background === */
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-article-post,
.ast-separate-container .ast-comment-list li,
.ast-separate-container .comment-respond,
.single .post-navigation,
.ast-separate-container .entry-content .wp-block-group,
.ast-plain-container,
.site-content {
  background-color: #111111 !important;
}

/* === NEGATIVE SPACE — Gallery Effect === */
.entry-content > * {
  margin-bottom: 2rem;
}

.wp-block-group {
  padding: 4rem 2rem;
}

.wp-block-columns {
  gap: 3rem !important;
}

/* === IMAGE TREATMENT === */
.entry-content img,
.wp-block-image img {
  transition: transform 0.6s ease, filter 0.6s ease;
}

.entry-content img:hover,
.wp-block-image img:hover {
  transform: scale(1.02);
}

/* Gallery Grid */
.wp-block-gallery {
  gap: 1rem !important;
}

.wp-block-gallery .wp-block-image {
  overflow: hidden;
  border-radius: 12px;
}

/* === CARD-STYLE SECTIONS === */
.wp-block-group.has-background {
  background-color: transparent !important;
  border-radius: 12px;
  padding: 3rem 2.5rem;
}

/* === FOOTER — Dark Luxury === */
.ast-footer-overlay,
.site-footer,
.ast-small-footer,
footer.site-footer,
.ast-footer-copyright,
.ast-small-footer .ast-footer-overlay,
.ast-above-footer,
.ast-above-footer-wrap,
.ast-below-footer,
.ast-below-footer-wrap,
.site-below-footer-wrap,
.site-primary-footer-wrap,
.ast-builder-footer-grid-columns,
.ast-footer-row-inline,
.site-info {
  background-color: #111111 !important;
  color: #999 !important;
  border: none !important;
  box-shadow: none !important;
}

.site-footer a,
.ast-small-footer a {
  color: #C4A265 !important;
  transition: color 0.3s ease;
}

.site-footer a:hover,
.ast-small-footer a:hover {
  color: #ffffff !important;
}

/* Footer headings/titles */
.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4 {
  color: #ffffff !important;
}

.site-footer p,
.site-footer li {
  color: #999 !important;
}

/* === SEPARATOR — Gold === */
.wp-block-separator {
  border-color: #C4A265 !important;
  opacity: 0.4;
  max-width: 100px;
  margin: 3rem auto;
}

/* === BREADCRUMBS === */
.ast-breadcrumbs,
.ast-breadcrumbs a {
  color: #666 !important;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.ast-breadcrumbs a:hover {
  color: #C4A265 !important;
}

/* === LISTS — Readable on Dark === */
.entry-content ul li,
.entry-content ol li {
  color: #d4d4d4 !important;
}

.entry-content a {
  color: #C4A265 !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.entry-content a:hover {
  color: #ffffff !important;
}

/* === FORMS / INPUTS === */
input, textarea, select {
  background-color: #1a1a1a !important;
  border: 1px solid #333 !important;
  color: #e8e8e8 !important;
  font-family: 'Inter', sans-serif !important;
}

input:focus, textarea:focus, select:focus {
  border-color: #C4A265 !important;
  outline: none !important;
}

/* === SIDEBAR WIDGETS === */
.sidebar-main .widget,
#secondary .widget {
  background-color: #1a1a1a !important;
  border: 1px solid #222 !important;
  padding: 1.5rem;
}

.sidebar-main .widget-title {
  color: #C4A265 !important;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 0.85rem;
}

/* === BLOG CARDS === */
.ast-article-post {
  background-color: #1a1a1a !important;
  border: 1px solid #222 !important;
  transition: border-color 0.3s ease;
}

.ast-article-post:hover {
  border-color: #C4A265 !important;
}

/* === RESPONSIVE === */
@media (max-width: 768px) {
  .wp-block-cover {
    min-height: 400px !important;
  }
  .wp-block-group {
    padding: 2rem 1rem;
  }
  .entry-content h2 {
    font-size: 1.3rem;
    margin-top: 2.5rem;
  }
}
/* KP Header Fix - hide text title, logo present */
.ast-site-title-wrap { display: none !important; }

/* === FOOTER VISIBILITY FIX ===
   Override mystery display:none from WP.com bundle.
   Footer must be visible for SEO, contact info, and social links. */
.site-footer .site-primary-footer-wrap,
.site-footer .site-below-footer-wrap {
  display: grid !important;
}

/* === KEYSTONE SOVEREIGN V10 BLOG MASTERPIECE ENGINE === */
.single-post .entry-header,
.single-post .ast-single-post-order,
.single-post header.entry-header .entry-title,
.single-post header.entry-header .entry-meta {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    visibility: hidden !important;
    overflow: hidden !important;
}
.single-post .ast-container,
.single-post.ast-narrow-container .ast-container,
.single-post #primary {
    max-width: 1120px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.single-post .ast-separate-container .ast-article-single,
.single-post.ast-narrow-container .ast-article-single {
    max-width: 1120px !important;
    width: 100% !important;
    background-color: #04070d !important;
    border: 1px solid rgba(212, 175, 55, 0.28) !important;
    border-radius: 26px !important;
    padding: 2.5rem 3rem !important;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.9), 0 0 45px rgba(56, 189, 248, 0.08) !important;
}
.single-post .entry-content[data-ast-blocks-layout] > *,
.single-post .entry-content > * {
    max-width: 100% !important;
    width: 100% !important;
}
@media (max-width: 920px) {
    .kp-vault-grid {
        grid-template-columns: 1fr !important;
    }
    .kp-telemetry-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .single-post .ast-separate-container .ast-article-single {
        padding: 1.4rem 1.1rem !important;
    }
}
.kp-glow-over,
.kp-glow-card,
.kp-short-cinema-card,
.kp-soundtrack-deck,
.kp-feasibility-launchpad,
.kp-pill-btn-gold,
.kp-pill-btn-blue {
    transition: all 0.32s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.kp-glow-over:hover {
    border-color: rgba(56, 189, 248, 0.72) !important;
    box-shadow: 0 28px 75px rgba(0, 0, 0, 0.94), 0 0 48px rgba(56, 189, 248, 0.28), 0 0 60px rgba(212, 175, 55, 0.24) !important;
}
.kp-glow-card:hover,
.kp-short-cinema-card:hover,
.kp-soundtrack-deck:hover,
.kp-feasibility-launchpad:hover {
    transform: translateY(-5px) !important;
    border-color: #38bdf8 !important;
    box-shadow: 0 22px 50px rgba(0, 0, 0, 0.92), 0 0 34px rgba(56, 189, 248, 0.32), 0 0 24px rgba(212, 175, 55, 0.26) !important;
}
a.kp-pill-btn-gold:hover {
    transform: translateY(-3px) scale(1.02) !important;
    box-shadow: 0 14px 36px rgba(212, 175, 55, 0.65), 0 0 28px rgba(56, 189, 248, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.85) !important;
}
a.kp-pill-btn-blue:hover {
    transform: translateY(-3px) !important;
    border-color: #f6d365 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.9), 0 0 34px rgba(56, 189, 248, 0.52), 0 0 22px rgba(212, 175, 55, 0.32) !important;
}
#rank-math-toc.kp-luxury-toc a:hover {
    border-color: #38bdf8 !important;
    background: rgba(56, 189, 248, 0.14) !important;
    color: #38bdf8 !important;
    transform: translateX(4px) !important;
    box-shadow: 0 0 18px rgba(56, 189, 248, 0.28) !important;
}
.kp-matrix-table tbody tr:hover {
    background: rgba(56, 189, 248, 0.14) !important;
}
@keyframes kpEqBounce1 { 0%, 100% { height: 8px; } 50% { height: 24px; } }
@keyframes kpEqBounce2 { 0%, 100% { height: 22px; } 35% { height: 10px; } 70% { height: 26px; } }
@keyframes kpEqBounce3 { 0%, 100% { height: 14px; } 45% { height: 25px; } 80% { height: 8px; } }
@keyframes kpEqBounce4 { 0%, 100% { height: 25px; } 50% { height: 11px; } }
.kp-eq-bar:nth-child(1) { animation: kpEqBounce1 1.1s infinite ease-in-out; }
.kp-eq-bar:nth-child(2) { animation: kpEqBounce2 0.85s infinite ease-in-out; }
.kp-eq-bar:nth-child(3) { animation: kpEqBounce3 1.25s infinite ease-in-out; }
.kp-eq-bar:nth-child(4) { animation: kpEqBounce4 0.95s infinite ease-in-out; }
.kp-eq-bar:nth-child(5) { animation: kpEqBounce1 1.05s infinite ease-in-out; }
/* === END KEYSTONE SOVEREIGN V10 BLOG MASTERPIECE ENGINE === */