/* ================================================================
   SEDBERRY THEME — Section Styles
   ================================================================ */

/* --- Section Variables (applied via body class from functions.php) --- */
.section-pro { --sedberry-accent: #4a6741; --sedberry-bg: #f7f5f2; --sedberry-border: #d6cec4; }
.section-writing { --sedberry-accent: #b87a2e; --sedberry-bg: #fdf8f0; --sedberry-border: #e6d8c6; }
.section-personal { --sedberry-accent: #8e7399; --sedberry-bg: #f5f0f6; --sedberry-border: #d8cedc; }
.section-about { --sedberry-accent: #c0654a; --sedberry-bg: #faf5f2; --sedberry-border: #e0d4ca; }

/* --- Sticky Header --- */
.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(250, 246, 241, 0.96);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid #e0d6ca;
  transition: all 0.3s ease;
}

/* --- Site Branding --- */
.site-branding {
  gap: 0.75rem;
}
.site-branding .wp-block-site-title {
  white-space: nowrap;
}
.site-branding .wp-block-site-tagline {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* --- Navigation Typography Override --- */
.header-nav .wp-block-navigation {
  font-family: 'Nunito', 'Segoe UI', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.header-nav .wp-block-navigation a {
  color: #7a6e63;
  text-decoration: none;
}
.header-nav .wp-block-navigation a:hover {
  color: #4a6741;
}

/* --- Post Cards --- */
.post-card {
  transition: box-shadow 0.25s ease, border-color 0.25s ease;
}
.post-card:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
  border-color: #d0c8bc !important;
}
.section-pro .post-card:hover { border-color: #4a674140 !important; }
.section-writing .post-card:hover { border-color: #b87a2e40 !important; }
.section-personal .post-card:hover { border-color: #8e739940 !important; }

/* --- Section Dividers (SVG backgrounds on separators) --- */
.is-style-divider-tech {
  border: none !important;
  height: 60px !important;
  max-width: 100% !important;
  background: url("data:image/svg+xml,%3Csvg width='240' height='20' viewBox='0 0 240 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='0' y1='10' x2='98' y2='10' stroke='%234a6741' stroke-width='1' stroke-opacity='0.3'/%3E%3Crect x='103' y='5' width='10' height='10' rx='2' stroke='%234a6741' stroke-width='1.2' stroke-opacity='0.5' fill='none'/%3E%3Crect x='118' y='7' width='6' height='6' rx='1' stroke='%234a6741' stroke-width='1' stroke-opacity='0.35' fill='none'/%3E%3Cline x1='130' y1='10' x2='240' y2='10' stroke='%234a6741' stroke-width='1' stroke-opacity='0.3'/%3E%3C/svg%3E") no-repeat center center !important;
}

.is-style-divider-creative {
  border: none !important;
  height: 60px !important;
  max-width: 100% !important;
  background: url("data:image/svg+xml,%3Csvg width='260' height='28' viewBox='0 0 260 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 14 Q30 14 45 10 Q60 6 80 14 Q100 22 120 14 Q130 9 140 14 Q150 19 160 14 Q180 6 200 14 Q220 22 240 14 Q250 10 260 14' stroke='%23b87a2e' stroke-width='1.5' stroke-opacity='0.4' fill='none' stroke-linecap='round'/%3E%3Ccircle cx='140' cy='14' r='2.5' fill='%23b87a2e' fill-opacity='0.25'/%3E%3C/svg%3E") no-repeat center center !important;
}

.is-style-divider-life {
  border: none !important;
  height: 60px !important;
  max-width: 100% !important;
  background: url("data:image/svg+xml,%3Csvg width='220' height='24' viewBox='0 0 220 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='72' cy='12' r='2' fill='%238e7399' fill-opacity='0.2'/%3E%3Ccircle cx='86' cy='12' r='2.5' fill='%238e7399' fill-opacity='0.25'/%3E%3Ccircle cx='101' cy='12' r='3.5' fill='%238e7399' fill-opacity='0.3'/%3E%3Cpath d='M108 12 Q113 6 118 12 Q123 18 128 12' stroke='%238e7399' stroke-width='1.2' stroke-opacity='0.35' fill='none' stroke-linecap='round'/%3E%3Ccircle cx='135' cy='12' r='3.5' fill='%238e7399' fill-opacity='0.3'/%3E%3Ccircle cx='150' cy='12' r='2.5' fill='%238e7399' fill-opacity='0.25'/%3E%3Ccircle cx='164' cy='12' r='2' fill='%238e7399' fill-opacity='0.2'/%3E%3C/svg%3E") no-repeat center center !important;
}

/* --- Rainbow Bar (About page) --- */
.is-style-rainbow-bar {
  border: none !important;
  height: 3px !important;
  max-width: 100% !important;
  background: linear-gradient(90deg, #e45e5e80, #e8913a80, #f0c94080, #5bb86780, #4a90c480, #8b6baa80) !important;
}

/* --- Section-Aware Category Colors on Posts --- */
.section-pro .wp-block-post-terms a { color: #4a6741; }
.section-writing .wp-block-post-terms a { color: #b87a2e; }
.section-personal .wp-block-post-terms a { color: #8e7399; }

/* --- Resume Page Buttons --- */
.resume-download-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 1.375rem;
  background: #4a6741;
  color: white;
  border: none;
  border-radius: 6px;
  font-family: 'Nunito', sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
}
.resume-download-btn:hover { background: #3a5633; }

.resume-print-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 1.375rem;
  background: transparent;
  color: #4a6741;
  border: 1px solid #4a674140;
  border-radius: 6px;
  font-family: 'Nunito', sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
}
.resume-print-btn:hover { border-color: #4a6741; }

/* --- Footer Social Links --- */
.footer-social .wp-block-social-link {
  margin-bottom: 0.25rem;
}

/* --- Responsive --- */
@media (max-width: 768px) {
  .sidebar-area {
    display: none;
  }
  .site-branding {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 2px !important;
  }
  .header-social {
    display: none !important;
  }
  .site-footer .wp-block-columns {
    flex-direction: column;
  }
}

@media (max-width: 480px) {
  .hero-section {
    padding-top: 5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .section-preview {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
}
