/*
Theme Name: NetPractice
Theme URI: http://netpractice.local/
Author: SmileBots
Author URI: http://netpractice.local/
Description: Custom WordPress theme recreated from a Next.js project while maintaining brand identity.
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: websitenext-brand
*/

/* ===============================
   Local Font Faces
   =============================== */

/* ---------- Museo Sans Display ---------- */

@font-face {
  font-family: 'Museo Sans Display';
  src: url('assets/fonts/MuseoSansDisplay-Hairline.woff2') format('woff2'),
       url('assets/fonts/MuseoSansDisplay-Hairline.woff') format('woff'),
       url('assets/fonts/MuseoSansDisplay-Hairline.ttf') format('truetype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Museo Sans Display';
  src: url('assets/fonts/MuseoSansDisplay-ExtraLight.woff2') format('woff2'),
       url('assets/fonts/MuseoSansDisplay-ExtraLight.woff') format('woff'),
       url('assets/fonts/MuseoSansDisplay-ExtraLight.ttf') format('truetype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Museo Sans Display';
  src: url('assets/fonts/MuseoSansDisplay-Light.woff2') format('woff2'),
       url('assets/fonts/MuseoSansDisplay-Light.woff') format('woff'),
       url('assets/fonts/MuseoSansDisplay-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Museo Sans Display';
  src: url('assets/fonts/MuseoSansDisplay-Black.woff2') format('woff2'),
       url('assets/fonts/MuseoSansDisplay-Black.woff') format('woff'),
       url('assets/fonts/MuseoSansDisplay-Black.ttf') format('truetype');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

/* ---------- Gilroy ---------- */

@font-face {
  font-family: 'Gilroy';
  src: url('assets/fonts/Gilroy-Thin.ttf') format('truetype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Gilroy';
  src: url('assets/fonts/Gilroy-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Gilroy';
  src: url('assets/fonts/Gilroy-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

/* ===============================
   Global Typography (STRICT)
   =============================== */

html,
body {
  font-family: 'Museo Sans Display', 'Gilroy', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Tailwind compatibility */
:root {
  --tw-font-sans: 'Museo Sans Display', 'Gilroy', sans-serif;
}

/* ===============================
   Existing Styles (UNCHANGED)
   =============================== */

html {
  scroll-behavior: smooth;
}

.faq-icon-0,
.faq-icon-1,
.faq-icon-2,
.faq-icon-3,
.faq-icon-4,
.faq-icon-5 {
  transition: transform 0.3s ease;
}

.rotate-45 {
  transform: rotate(45deg);
}

.prose {
  color: #374151;
}

.prose h2 {
  margin-top: 2em;
  margin-bottom: 1em;
}

.prose h3 {
  margin-top: 1.5em;
  margin-bottom: 0.75em;
}

.prose p {
  margin-bottom: 1.25em;
}

.prose ul,
.prose ol {
  margin: 1.25em 0;
  padding-left: 1.625em;
}

.prose li {
  margin-bottom: 0.5em;
}

.prose blockquote {
  font-style: italic;
  border-left: 4px solid #d1d5db;
  padding-left: 1.5rem;
  margin: 2rem 0;
  background: #f9fafb;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.sticky {
  position: sticky;
}

::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
  background: #ea580c;
  border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
  background: #c2410c;
}

img {
  max-width: 100%;
  height: auto;
}

a {
  transition: color 0.2s ease;
}

button {
  transition: all 0.3s ease;
}

/* =========================================
   EXACT NEXT.JS FONT WEIGHT PARITY
   Museo → Headings
   Gilroy → Body
   ========================================= */

/* ---------- BODY TEXT ---------- */
html,
body,
span,
li,
ul,
ol,
a,
nav,
label,
input,
textarea {
  font-family: 'Inter', system-ui, sans-serif;
  font-weight: 400;
}

p {
  font-family: 'Inter', system-ui, sans-serif;
  font-weight: 400;
  font-style: normal;          
  font-size: 22.19px;
  line-height: 35.51px;
  letter-spacing: 0;
  text-align: left;
}


/* Slight emphasis (Next.js default) */
strong,
b {
  font-family: 'Gilroy', system-ui, sans-serif;
  font-weight: 600;
}

/* ---------- HEADINGS ---------- */
h1 {
  font-family: 'Museo Sans Display', 'Gilroy', sans-serif;
  font-weight: 900;
  letter-spacing: -0.02em;
}

h2 {
  font-family: 'Museo Sans Display', 'Gilroy', sans-serif;
  font-weight: 800;
  letter-spacing: -0.015em;
}

h3 {
  font-family: 'Museo Sans Display', 'Gilroy', sans-serif;
  font-weight: 700;
  letter-spacing: -0.01em;
}

h4,
h5,
h6 {
  font-family: 'Museo Sans Display', 'Gilroy', sans-serif;
  font-weight: 600;
}

span {
  font-family: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
}


/* ---------- BUTTONS & CTA ---------- */
button,
.btn,
a.button {
  font-family: 'Museo Sans Display', 'Gilroy', sans-serif;
  font-weight: 700;
  letter-spacing: -0.01em;
}

/* ---------- NAVIGATION ---------- */
nav a,
header a {
  font-family: 'Gilroy', system-ui, sans-serif;
  font-weight: 600;
}

/* ---------- BLOG CONTENT ---------- */
.prose {
  font-family: 'Gilroy', system-ui, sans-serif;
  font-weight: 400;
}

.prose p {
  font-weight: 400;
}

.prose strong {
  font-weight: 600;
}

.prose h1 {
  font-weight: 900;
}

.prose h2 {
  font-weight: 800;
}

.prose h3 {
  font-weight: 700;
}

.prose h4 {
  font-weight: 600;
}

/* =========================================
   AI Coach Section – Decorative Dual Line
   ========================================= */

.ai-coach-divider {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  height: 200px;
  pointer-events: none;
}

/* Layer 1 – Base (THIN, full height) */
.ai-coach-divider::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 1px; 
  height: 100%;
  border-radius: 10px;
  background: linear-gradient(
    to bottom,
    #CEC1F1,
    #080A10
  );
}

/* Layer 2 – Highlight (THICK, upper half) */
.ai-coach-divider::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 4px; 
  height: 60%;
  border-radius: 10px;
  background: linear-gradient(
    to bottom,
    #FF5100,
    #148AFF
  );
}

/* Hide on mobile */
@media (max-width: 1023px) {
  .ai-coach-divider {
    display: none;
  }
}

/* Ensure proper video aspect ratio */
#videoContainer {
  background-color: #000;
}
  
#playButton .rounded-full {
  background-color: rgba(255, 81, 0, 0.5); /* FF5100 @ 40% */
  transition: background-color 0.3s ease, transform 0.3s ease;
}

#playButton:hover .rounded-full {
  background-color: rgba(255, 81, 0, 0.7); /* FF5100 @ 60% */
  transform: scale(1.05);
}

/* ===============================
   STICKY SIDEBAR FIX - ADD AT END OF style.css
   =============================== */

/* Force sidebar to stick from the very top */
@media (min-width: 1024px) {
  aside.lg\:col-span-4 > div.lg\:sticky {
    position: sticky !important;
    top: 0 !important;
    max-height: 100vh !important;
    overflow-y: auto !important;
  }
  
  /* Custom scrollbar for sidebar (if content overflows) */
  aside.lg\:col-span-4 > div.lg\:sticky::-webkit-scrollbar {
    width: 6px;
  }
  
  aside.lg\:col-span-4 > div.lg\:sticky::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
  }
  
  aside.lg\:col-span-4 > div.lg\:sticky::-webkit-scrollbar-thumb {
    background: #ea580c;
    border-radius: 3px;
  }
  
  aside.lg\:col-span-4 > div.lg\:sticky::-webkit-scrollbar-thumb:hover {
    background: #c2410c;
  }
}

