/* ===== DESIGN SYSTEM ===== */
:root{
  --header-h:76px;
  --text-taupe:#806748;
  --text-hover:#3C2415;
  --shadow-xs:0 1px 2px rgba(60,36,21,0.02);
  --shadow-sm:0 2px 4px rgba(60,36,21,0.03);
  --shadow-md:0 8px 16px rgba(60,36,21,0.04);
  --shadow-lg:0 16px 32px rgba(60,36,21,0.06);
  --shadow-xl:0 24px 48px rgba(60,36,21,0.08);
  --shadow-2xl:0 32px 64px rgba(60,36,21,0.12);
  --shadow-warm:0 20px 40px rgba(212,165,116,0.15);
}

*{margin:0;padding:0;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}

@supports (scroll-behavior: smooth) {
  html {
    scroll-behavior: smooth;
  }
}

@supports (text-wrap: balance) {
  /* /learning-center/california-vs-delaware-vs-nevada */
  .page-id-18854 .article-content .cta-next-step__title,
  .page-id-18854 .hero-title{ text-wrap: balance; }          /* nicer wraps for large type */
}

body{
  font-family:'Inter',-apple-system,system-ui,sans-serif;
  color:var(--espresso);
  background:var(--pure-white);
  line-height:1.6;
  font-weight:400;
  position:relative;
  overflow-x:hidden;
  letter-spacing: normal;
  text-rendering: auto;
}

/* Subtle page-top glow - disabled on mobile */
body::before{
  content:'';position:fixed;top:0;left:0;right:0;height:100vh;
  background:linear-gradient(180deg,rgba(251,247,240,0.5) 0%,transparent 40%);
  pointer-events:none;z-index:-1;
}
@media (max-width:768px){
  body::before{display:none;}
}

a{text-decoration:none;color:inherit;}

.skip-nav{position:absolute;left:0;top:-40px;background:var(--espresso);color:#fff;padding:.5rem 1rem;z-index:10001;}
.skip-nav:focus{top:0;}

/* No-JS fallback: show dropdown items inline */
.no-js .nav-center{display:flex;}
.no-js .hamburger,.no-js #mobilePanel{display:none;}
.no-js .dropdown .dropdown-menu{
  position:static;opacity:1;visibility:visible;transform:none;
  display:inline-flex;flex-direction:row;gap:1rem;
  box-shadow:none;border:none;padding:0;margin-left:1rem;
  background:transparent;min-width:auto;
}
.no-js .dropdown .dropdown-menu .dropdown-item{
  padding:0;border-radius:0;font-size:.93rem;font-weight:600;
  color:var(--text-taupe);letter-spacing:.02em;
}
.no-js .dropdown .caret{display:none;}

.dropdown{position:relative;}
.dropdown-toggle{display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;}
.caret{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--text-taupe);transform:translateY(1px);transition:transform .3s ease;}
.dropdown.open .caret{transform:translateY(1px) rotate(180deg);}
.dropdown-menu{
  position:absolute;top:calc(100% + 1rem);left:50%;min-width:260px;background:var(--pure-white);
  border:1px solid rgba(212,165,116,0.15);border-radius:12px;box-shadow:0 24px 60px rgba(60,36,21,0.12);
  padding:.5rem;opacity:0;visibility:hidden;transform:translateX(-50%) translateY(-10px);
  transition:all .3s cubic-bezier(0.23,1,0.32,1);z-index:1001;
}
.dropdown.open .dropdown-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);}
.dropdown-item{display:block;padding:.85rem 1.25rem;border-radius:8px;font-weight:600;color:var(--espresso);font-size:.93rem;transition:all .2s ease;}
.dropdown-item:hover{background:linear-gradient(135deg,var(--sand) 0%,var(--cream) 100%);color:var(--warm-beige-dark);transform:translateX(2px);}


/* ===== HERO SECTION (PERFECTED) ===== */
.guide-hero{
  position:relative;
  display:flex;
  align-items:center;
  background:linear-gradient(135deg,#1a0f08 0%,#3c2415 40%,#2a1810 100%);
  padding:3rem 1.5rem;
}

.hero-bg{position:absolute;inset:0;z-index:0;opacity:0.5;}

/* Only show animated backgrounds on desktop */
@media (min-width:769px){
  .hero-bg::before{
    content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;
    background:radial-gradient(circle at 30% 50%,rgba(212,165,116,0.08) 0%,transparent 40%);
    animation:drift 30s ease-in-out infinite;
  }
  .hero-bg::after{
    content:'';position:absolute;bottom:-50%;right:-50%;width:200%;height:200%;
    background:radial-gradient(circle at 70% 50%,rgba(212,165,116,0.06) 0%,transparent 40%);
    animation:drift 35s ease-in-out infinite reverse;
  }
}

@keyframes drift{
  0%,100%{transform:translate(0,0) rotate(0deg);}
  33%{transform:translate(30px,-30px) rotate(120deg);}
  66%{transform:translate(-20px,20px) rotate(240deg);}
}

.hero-grain{
  position:absolute;
  inset:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100' height='100' filter='url(%23n)' opacity='0.02'/%3E%3C/svg%3E");
  opacity:.6;
  mix-blend-mode:overlay;
  pointer-events:none;
}

.hero-content{
  position:relative;
  z-index:1;
  max-width:1400px;
  margin:0 auto;
  width:100%;
  padding:clamp(2rem,4vh,4rem) 0;
}

.hero-inner{
  display:grid;
  grid-template-columns:minmax(320px,1.05fr) 0.95fr;
  gap:clamp(1.5rem,2.5vw,3rem);
  align-items:center;
}

/* PERFECT ALIGNMENT: Equal height columns, CTAs at bottom */
@media (min-width:1200px){
  .hero-inner{align-items:end;}
  .hero-text{
    display:flex;
    flex-direction:column;
    position:relative;
    padding-top:calc(48px + 1.75rem + 8px);
  }
  .hero-badge{
    position:absolute;
    top:0;
    left:0;
  }
  .hero-cta-group{margin-top:auto;}
}

.hero-text{animation:heroSlideIn 1s cubic-bezier(0.23,1,0.32,1);}
@keyframes heroSlideIn{from{opacity:0;transform:translateX(-40px);}to{opacity:1;transform:translateX(0);}}

.hero-badge{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.75rem 1.5rem;
  background:rgba(212,165,116,0.1);
  border:1px solid rgba(212,165,116,0.2);
  border-radius:50px;
  margin-bottom:1rem;
  width:fit-content;
  max-width:100%;
}

/* Desktop animations */
@media (min-width:769px){
  .hero-badge{animation:badgePulse 2s ease-in-out infinite;}
  @keyframes badgePulse{0%,100%{box-shadow:0 0 0 0 rgba(212,165,116,0);}50%{box-shadow:0 0 20px 5px rgba(212,165,116,0.1);}}
}

.hero-badge-dot{width:8px;height:8px;background:var(--warm-beige);border-radius:50%;animation:pulse 2s ease-in-out infinite;}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:.5;}}
.hero-badge-text{font-size:.85rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--warm-beige);}

.hero-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(3.6rem,9vw,7rem);line-height:.9;letter-spacing:.02em;margin-bottom:1.25rem;color:#fff;text-shadow:0 10px 30px rgba(0,0,0,0.3);}
.hero-title-accent{
  background:linear-gradient(135deg,var(--warm-beige) 0%,var(--warm-beige-dark) 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.hero-subtitle{
  font-size:1.25rem;
  line-height:1.6;
  color:rgba(229,216,199,0.9);
  margin-bottom:2rem;
  font-weight:400; /*** fixed to match the mockup, originally at 300 */
  letter-spacing:.02em;
}

.hero-cta-group{display:flex;gap:1.25rem;flex-wrap:wrap;align-items:flex-end;}

/* AA-compliant gradient for white text */
.hero-cta-primary{
  display:inline-flex;align-items:center;gap:.75rem;padding:1.1rem 2.2rem;
  background:linear-gradient(135deg,var(--warm-beige-darker) 0%,var(--rich-brown) 100%);color:#fff;border-radius:50px;
  font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:.95rem;
  box-shadow:0 20px 40px rgba(150,99,46,0.3), inset 0 2px 0 rgba(255,255,255,0.2);
  transition:all .3s cubic-bezier(0.23,1,0.32,1);position:relative;overflow:hidden;
}
.hero-cta-primary::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,0.1));opacity:0;transition:opacity .3s ease;}
.hero-cta-primary:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 25px 50px rgba(150,99,46,0.4), inset 0 2px 0 rgba(255,255,255,0.3);}
.hero-cta-primary:hover::before{opacity:1;}
.hero-cta-secondary{
  display:inline-flex;align-items:center;gap:.5rem;padding:1.1rem 2rem;background:transparent;color:var(--warm-beige);
  border:2px solid rgba(212,165,116,0.3);border-radius:50px;font-weight:700;font-size:.95rem;transition:all .3s cubic-bezier(0.23,1,0.32,1);
}
.hero-cta-secondary:hover{background:rgba(212,165,116,0.1);border-color:var(--warm-beige);transform:translateY(-2px);}

.hero-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;animation:heroFadeIn 1s cubic-bezier(0.23,1,0.32,1) .3s both;}
@keyframes heroFadeIn{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}

.stat-card{
  position:relative;padding:1.75rem;background:rgba(255,255,255,0.03);
  backdrop-filter:blur(20px);border:1px solid rgba(212,165,116,0.1);
  border-radius:20px;transition:all .4s cubic-bezier(0.23,1,0.32,1);overflow:hidden;
}

/* Desktop animations only */
@media (min-width:769px){
  .stat-card::before{
    content:'';position:absolute;top:0;left:0;right:0;height:2px;
    background:linear-gradient(90deg,transparent,var(--warm-beige),transparent);
    transform:translateX(-100%);animation:shimmer 3s ease-in-out infinite;
  }
  @keyframes shimmer{0%{transform:translateX(-100%);}100%{transform:translateX(100%);}}
  .stat-card:hover{
    background:rgba(255,255,255,0.06);
    transform:translateY(-6px) scale(1.01);
    box-shadow:0 30px 60px rgba(0,0,0,0.3);
    border-color:rgba(212,165,116,0.2);
  }
}

.stat-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(212,165,116,0.2) 0%,rgba(212,165,116,0.1) 100%);border-radius:12px;margin-bottom:.9rem;}
.stat-icon svg{width:24px;height:24px;stroke:var(--warm-beige);stroke-width:2;fill:none;}
.stat-number{font-size:2.2rem;font-weight:900;color:#fff;line-height:1;margin-bottom:.35rem;font-family:'Bebas Neue',sans-serif;letter-spacing:.02em;}
.stat-number, .final-cta-stat-number { font-variant-numeric: tabular-nums; }
.stat-label{font-size:.9rem;font-weight:600;color:rgba(212,165,116,0.85);letter-spacing:.05em;}

.hero-cta-primary svg path,.hero-cta-secondary svg path,.stat-icon svg path,.final-cta-section svg path,.faq-question .faq-icon svg path, .back-to-top svg path {stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;}

/* Mobile-specific hero adjustments */
@media (max-width:1200px){
  .hero-inner{grid-template-columns:1fr;text-align:center;align-items:center;}
  .hero-text{max-width:840px;margin:0 auto;}
  .hero-cta-group{justify-content:center;margin-top:2rem;}
  .hero-stats{max-width:620px;margin:0 auto;}
}

@media (max-width:768px){
  .guide-hero{
    align-items:flex-start;
    padding:1rem 1rem; /* tightened to remove dark bands */
    min-height:auto;
  }
  .hero-content{padding:0;}
  .hero-inner{gap:.75rem;} /* slightly tighter */
  .hero-badge{margin-bottom:1rem;padding:.6rem 1rem;font-size:0.8rem;}
  .hero-badge-text{font-size:.75rem;}
  .hero-grain{opacity:.3;}
  .hero-title{font-size:clamp(2.5rem,7vw,3.5rem);margin-bottom:1rem;}
  .hero-subtitle{font-size:1rem;margin-bottom:1.5rem;line-height:1.5;}
  .hero-cta-group{
    flex-direction:column;align-items:stretch;gap:.75rem;margin-bottom:0; /* no extra bottom gap */
  }
  .hero-text > :first-child{margin-top:0 !important;}
  .hero-text > :last-child{margin-bottom:0 !important;}
  .hero-cta-primary,.hero-cta-secondary{width:100%;justify-content:center;padding:1rem 1.5rem;}
  .hero-stats{grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:0;}
  .stat-card{padding:1.25rem;backdrop-filter:none;background:rgba(255,255,255,0.05);}
  .stat-number{font-size:1.8rem;}
  .stat-label{font-size:.85rem;}
}

@supports (margin:-1px){
  @media (max-width:768px){
    .guide-hero{margin-bottom:-1px;} /* optional seam polish */
  }
}

@media (max-width:480px){
  .hero-stats{
    grid-template-columns:1fr;
    gap:.75rem;
  }
}

/* Disable problematic effects on touch devices */
@media (pointer:coarse), (max-width:1024px){
  .hero-bg{display:none;}
  .hero-bg::before,.hero-bg::after{display:none;}
  .hero-cta-primary,.hero-badge,.stat-card{box-shadow:none;animation:none;}
  .stat-card::before{display:none;}
  .stat-card:hover{transform:none;box-shadow:none;}
}

/* Enhanced Progress Bar with fallbacks */
.progress-bar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: rgba(212, 165, 116, 0.15);
  z-index: 999;
  pointer-events: none;
}
.progress-fill {
  height: 100%;
  width: 0;
  background: linear-gradient(90deg, var(--warm-beige), var(--warm-beige-dark));
  transition: width .15s ease;
  box-shadow: 0 0 10px rgba(212, 165, 116, 0.4),
  0 2px 4px rgba(212, 165, 116, 0.2);
  will-change: width;
}
/* Fallback for older browsers */
@supports not (color: var(--any)) {
  .progress-fill {
    background: linear-gradient(90deg, #D4A574, #9B7A4F);
  }
}
/* Safari smooth scroll fallback */
@supports not (scroll-behavior: smooth) {
  html {
    scroll-behavior: auto;
  }
  .toc-nav {
    scroll-behavior: auto;
  }
}

/* ===== MAIN CONTENT LAYOUT WITH MOBILE FIXES ===== */
.guide-layout{
  position:relative;
  background:#fff;
  padding:4rem 2rem;
/* overflow-x:hidden; <- This was breaking sticky positioning */
}

.guide-container{
  max-width:1400px;
  margin:0 auto;
  display:grid;
  grid-template-columns:340px minmax(0, 1fr);
  gap:4rem;
  align-items:start;
}

/* Ensure grid children can actually shrink on narrow viewports */
.guide-container > * { min-width: 0; }

/* --- FIXED TOC WITH MOBILE-SAFE SCROLLING --- */
.toc-wrapper{
  position:sticky;
  top:calc(var(--header-h) + 2rem);
  height:calc(100vh - var(--header-h) - 4rem);
  min-height:0;
}

.toc{
  display:flex;
  flex-direction:column;
  height:100%;
  background:linear-gradient(135deg,#fff 0%,rgba(251,247,240,0.5) 100%);
  border-radius:24px;
  padding:2rem;
  border:1px solid rgba(212,165,116,0.08);
  box-shadow:var(--shadow-xl);
  position:relative;
  overflow:hidden;
  min-width:0; /* allow shrink */
}

.toc::before{
  content:'';
  position:absolute;
  top:-50%;
  right:-50%;
  width:100%;
  height:100%;
  background:radial-gradient(circle,rgba(212,165,116,0.05) 0%,transparent 70%);
  pointer-events:none;
}

.toc-header{
  position:relative;
  z-index:1;
  margin-bottom:1.5rem;
  flex-shrink:0;
}

.toc-title{
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--warm-beige-dark);
  margin-bottom:.4rem;
}

.toc-subtitle{
  font-size:1.6rem;
  font-weight:900;
  color:var(--espresso);
  letter-spacing:-0.02em;
  line-height:1.1;
}

.toc-nav-wrapper{
  position:relative;
  flex:1;
  min-height:0;
  overflow:hidden;
  min-width:0; /* allow shrink */
}

/* Top fade */
.toc-nav-wrapper::before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:20px;
  background:linear-gradient(to bottom, rgba(255,255,255,1) 0%, transparent 100%);
  z-index:2;
  pointer-events:none;
  opacity:0;
  transition:opacity 0.3s ease;
}

/* Bottom fade */
.toc-nav-wrapper::after{
  content:'';
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:20px;
  background:linear-gradient(to top, rgba(255,255,255,1) 0%, transparent 100%);
  z-index:2;
  pointer-events:none;
  opacity:0;
  transition:opacity 0.3s ease;
}

.toc-nav-wrapper.scrolled-down::before{opacity:1;}
.toc-nav-wrapper.scrolled-up::after{opacity:1;}

.toc-nav{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  gap:.35rem;
  height:100%;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  padding-right:20px;
  margin-right:-20px;
  scroll-behavior:smooth;
  scrollbar-width:none;
  -ms-overflow-style:none;
  min-width:0; /* allow shrink */
}

.toc-nav::-webkit-scrollbar{display:none;}

/* MOBILE FIX: Show thin scrollbar instead of clipping page */
@media (max-width:1100px){
  .toc-nav{
    padding-right:0 !important;
    margin-right:0 !important;
    scrollbar-width:thin; /* Firefox */
  }
  .toc-nav::-webkit-scrollbar{
    display:initial; /* Show scrollbar */
    width:6px;
    height:6px;
  }
  .toc-nav::-webkit-scrollbar-track{
    background:rgba(212,165,116,0.05);
    border-radius:3px;
  }
  .toc-nav::-webkit-scrollbar-thumb{
    background:rgba(212,165,116,0.3);
    border-radius:3px;
  }
  .toc-nav::-webkit-scrollbar-thumb:hover{
    background:rgba(212,165,116,0.5);
  }
}

.toc-link{
  display:flex;
  align-items:center;
  gap:.8rem;
  padding:.75rem 1rem;
  border-radius:12px;
  font-weight:600;
  font-size:.9rem;
  color:var(--gray-600);
  transition:all .2s ease;
  position:relative;
  overflow:hidden;
  cursor:pointer;
  white-space:nowrap;
  flex-shrink:0;
}

.toc-link::before{
  content:'';
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:3px;
  background:var(--warm-beige);
  transform:scaleY(0);
  transition:transform .3s cubic-bezier(0.23,1,0.32,1);
}

.toc-link:hover{
  background:rgba(212,165,116,0.05);
  color:var(--espresso);
  transform:translateX(3px);
}

.toc-link.active{
  background:linear-gradient(135deg,rgba(212,165,116,0.1) 0%,rgba(212,165,116,0.05) 100%);
  color:var(--espresso);
  font-weight:700;
  box-shadow:0 3px 10px rgba(212,165,116,0.1);
}

.toc-link.active::before{transform:scaleY(1);}

.toc-link:focus-visible {
  outline: 2px solid var(--warm-beige);
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(212,165,116,0.25);
}

.toc-number{
  display:flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:26px;
  background:rgba(60,36,21,0.05);
  border-radius:7px;
  font-weight:800;
  font-size:.8rem;
  color:var(--gray-500);
  transition:all .3s ease;
  flex-shrink:0;
}

.toc-link:hover .toc-number,.toc-link.active .toc-number{
  background:var(--warm-beige);
  color:#fff;
}

/* ARTICLE CONTENT WITH PROPER OVERFLOW HANDLING */
.article-wrapper{
  background:#fff;
  border-radius:24px;
  overflow:visible;
  box-shadow:var(--shadow-xl);
  border:1px solid rgba(212,165,116,0.06);
  position:relative;
  min-width:0; /* allow shrink */
}

.article-content{
  padding:4rem;
  overflow-wrap:break-word;
  word-wrap:break-word;
  hyphens:auto;
  min-width:0; /* allow shrink */
}

.article-content p,
.article-content ul,
.article-content ol,
.article-content h2,
.article-content h3,
.article-content h4{
  max-width:100%;
  overflow-wrap:break-word;
  word-break:normal;
}

/* FIX FOR PRE BLOCKS CAUSING HORIZONTAL OVERFLOW */
pre{
  max-width:100%;
  white-space:pre-wrap;
  word-break:break-word;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  background:rgba(60,36,21,0.02);
  padding:1rem;
  border-radius:8px;
}

/* ENSURE MEDIA ELEMENTS DON'T OVERFLOW */
img, svg, video{
  max-width:100%;
  height:auto;
}

.anchor-offset{scroll-margin-top:calc(var(--header-h) + 3rem);}
.section-intro{position:relative;padding-bottom:3rem;margin-bottom:3rem;border-bottom:1px solid rgba(212,165,116,0.1);}
.section-intro::after{content:'';position:absolute;bottom:-1px;left:0;width:100px;height:1px;background:linear-gradient(90deg,var(--warm-beige),transparent);}
.article-content h2{font-family:'Bebas Neue',sans-serif;font-size:3rem;letter-spacing:.02em;color:var(--espresso);margin:4rem 0 2rem;position:relative;padding-bottom:1.5rem;}
.article-content h2::after{content:'';position:absolute;bottom:0;left:0;width:80px;height:4px;background:linear-gradient(90deg,var(--warm-beige),var(--warm-beige-dark));border-radius:2px;}
.article-content h2:first-child{margin-top:0;}
.article-content h3{font-size:1.5rem;font-weight:800;color:var(--espresso);margin:2.5rem 0 1.25rem;letter-spacing:-0.01em;}
.article-content p{margin:1.25rem 0;color:var(--gray-700);line-height:1.85;font-size:1.08rem;}
.article-content ul,.article-content ol{margin:1.5rem 0 2rem 2rem;color:var(--gray-700);line-height:1.9;}
.article-content li{margin:.75rem 0;font-size:1.08rem;}
.article-content strong{color:var(--espresso);font-weight:700;}
.premium-card{background:linear-gradient(135deg,rgba(251,247,240,0.5) 0%,#fff 100%);border-radius:20px;padding:2.5rem;margin:2.5rem 0;border:1px solid rgba(212,165,116,0.08);box-shadow:var(--shadow-lg);position:relative;overflow:hidden;}
.premium-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--warm-beige),var(--warm-beige-dark));}
.premium-card-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--warm-beige) 0%,var(--warm-beige-dark) 100%);border-radius:14px;margin-bottom:1.5rem;box-shadow:0 8px 20px rgba(212,165,116,0.2);}
.premium-card-icon svg{width:28px;height:28px;stroke:#fff;stroke-width:2;fill:none;}
.premium-card h4{font-size:1.35rem;font-weight:800;color:var(--espresso);margin-bottom:1rem;}
.attorney-line-highlight{
  display:inline-block;
  background:linear-gradient(135deg,rgba(212,165,116,0.1) 0%,rgba(212,165,116,0.05) 100%);
  padding:1rem 1.5rem;
  border-radius:12px;
  border-left:3px solid var(--warm-beige);
  margin:1rem 0;
  font-weight:600;
  color:var(--espresso);
}
.highlight-box{background:linear-gradient(135deg,var(--sand) 0%,rgba(245,230,211,0.3) 100%);border-radius:16px;padding:2rem;margin:2rem 0;border-left:4px solid var(--warm-beige);position:relative;}
.highlight-box--warning{background:linear-gradient(135deg,rgba(220,38,38,0.05) 0%,rgba(220,38,38,0.02) 100%);border-left-color:var(--danger-red);}
.highlight-box--note{background:linear-gradient(135deg,rgba(139,115,85,0.08) 0%,rgba(139,115,85,0.03) 100%);border-left-color:var(--warm-taupe);}
.highlight-box-title{display:flex;align-items:center;gap:.75rem;font-weight:800;font-size:1.1rem;color:var(--espresso);margin-bottom:.75rem;}
.highlight-box p{margin:.5rem 0;font-size:1.05rem;}

/* Tables */
.table-container{margin:2.5rem 0;border-radius:20px;overflow-x:auto;box-shadow:var(--shadow-lg);border:1px solid rgba(212,165,116,0.08);-webkit-overflow-scrolling:touch;}
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
table{width:100%;min-width:720px;border-collapse:collapse;background:#fff;}
thead{background:linear-gradient(135deg,var(--espresso) 0%,#2a1810 100%);}
th{padding:1.5rem 2rem;text-align:left;font-size:.85rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--warm-beige);}
td{padding:1.5rem 2rem;border-bottom:1px solid rgba(212,165,116,0.06);color:var(--gray-700);font-size:1.05rem;}
tbody th {font-weight: 400; text-align: left; color: var(--gray-700); text-transform: none;}
tbody tr{transition:all .2s ease;}
tbody tr:hover{background:linear-gradient(135deg,rgba(251,247,240,0.5) 0%,transparent 100%);}
tbody tr:nth-child(even){background:rgba(251,247,240,0.2);}

.cta-inline{margin:2rem 0;padding:1.5rem;background:linear-gradient(135deg,rgba(212,165,116,0.05) 0%,transparent 100%);border-radius:12px;border:1px solid rgba(212,165,116,0.1);text-align:center;}
.cta-inline a{color:var(--warm-beige-dark);font-weight:800;font-size:1.1rem;border-bottom:2px solid transparent;transition:all .2s ease;}
.cta-inline a:hover{color:var(--warm-beige-darker);border-bottom-color:var(--warm-beige);}

.faq-section{
  margin-top:4rem;
  padding-top:4rem;
  padding-bottom:0;
  padding-left: 0;
  padding-right: 0;
  border-top:1px solid rgba(212,165,116,0.1);
}
.faq-grid{display:grid;gap:1rem;margin-top:2rem;}
.faq-item{background:#fff;border-radius:16px;border:1px solid rgba(212,165,116,0.08);overflow:hidden;transition:all .3s cubic-bezier(0.23,1,0.32,1);padding: 0}
.faq-item:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);}
.faq-question{width:100%;text-align:left;padding:1.75rem 2rem;background:none;border:none;font-size:1.15rem;font-weight:700;color:var(--espresso);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;transition:all .2s ease;}
.faq-question:hover{background:linear-gradient(135deg,rgba(251,247,240,0.5) 0%,transparent 100%);color: initial;}
.faq-icon{flex-shrink:0;width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,rgba(212,165,116,0.1) 0%,rgba(212,165,116,0.05) 100%);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:400;color:var(--warm-beige-dark);transition:all .3s ease;}
.faq-item.open .faq-icon{background:linear-gradient(135deg,var(--warm-beige) 0%,var(--warm-beige-dark) 100%);color:#fff;transform:rotate(180deg);}
.faq-answer{max-height:0;overflow:clip;transition:max-height .3s ease;}
.faq-item.open .faq-answer{max-height:800px;padding-top: 0;}
.faq-answer-content{padding:0 2rem 2rem;color:var(--gray-700);line-height:1.85;font-size:1.05rem;}

/* Final CTA - High Contrast Production Design */
.final-cta-section {
  position: relative;
  margin-top: 5rem;
  padding: 5rem 2rem;
  background: linear-gradient(135deg, #1a0f08 0%, #3c2415 40%, #2a1810 100%);
  overflow: hidden;
}
/* Fallback for no gradient support */
@supports not (background: linear-gradient(#000, #fff)) {
  .final-cta-section {
    background: #3C2415;
  }
}
.final-cta-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 200%;
  height: 100%;
  background: radial-gradient(ellipse at center top, rgba(212, 165, 116, 0.08) 0%, transparent 50%);
  pointer-events: none;
}
.final-cta-wrapper {
  position: relative;
  z-index: 1;
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}
.final-cta-badge {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .75rem 1.5rem;
  background: rgba(212, 165, 116, 0.1);
  border: 1px solid rgba(212, 165, 116, 0.2);
  border-radius: 50px;
  margin-bottom: 2rem;
}
.final-cta-badge-dot {
  width: 8px;
  height: 8px;
  background: #D4A574; /* Fallback color */
  background: var(--warm-beige);
  border-radius: 50%;
  animation: pulse 2s ease-in-out infinite;
}
.final-cta-badge-text {
  font-size: .85rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #D4A574; /* Fallback */
  color: var(--warm-beige);
}
.final-cta-section .final-cta-title {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(2.5rem, 6vw, 4.5rem);
  color: #ffffff;
  margin-bottom: 1.25rem;
  letter-spacing: .02em;
  line-height: 1.1;
  text-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}
.final-cta-section .final-cta-subtitle {
  font-size: 1.25rem;
  color: #E5D8C7; /* High contrast light beige */
  color: rgba(229, 216, 199, 0.95);
  margin-bottom: 3rem;
  line-height: 1.6;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
  font-weight: 400;
}
.final-cta-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  margin-bottom: 3rem;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}
.final-cta-stat {
  text-align: center;
  padding: 1.5rem;
  background: rgba(255, 255, 255, 0.03);
  border-radius: 16px;
  border: 1px solid rgba(212, 165, 116, 0.1);
}
.final-cta-stat-number {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 2.5rem;
  color: #D4A574;
  color: var(--warm-beige);
  margin-bottom: .5rem;
  letter-spacing: .02em;
  text-shadow: 0 2px 10px rgba(212, 165, 116, 0.3);
}
.final-cta-stat-label {
  font-size: .95rem;
  color: #E5D8C7;
  color: rgba(229, 216, 199, 0.8);
  font-weight: 600;
  letter-spacing: .05em;
}
.final-cta-buttons {
  display: flex;
  gap: 1.25rem;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 2rem;
}
.final-cta-primary {
  display: inline-flex;
  align-items: center;
  gap: .75rem;
  padding: 1.2rem 2.5rem;
  background: linear-gradient(135deg, #96632E 0%, #5C4033 100%);
  background: linear-gradient(135deg, var(--warm-beige-darker) 0%, var(--rich-brown) 100%);
  color: #ffffff;
  border-radius: 50px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: 1rem;
  box-shadow: 0 20px 40px rgba(212, 165, 116, 0.25),
  inset 0 2px 0 rgba(255, 255, 255, 0.2);
  transition: all .3s cubic-bezier(0.23, 1, 0.32, 1);
  position: relative;
  overflow: hidden;
  min-height: 44px; /* Touch target minimum */
}
.final-cta-primary::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, transparent, rgba(255, 255, 255, 0.15));
  opacity: 0;
  transition: opacity .3s ease;
}
.final-cta-primary:hover {
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 25px 50px rgba(212, 165, 116, 0.35),
  inset 0 2px 0 rgba(255, 255, 255, 0.3);
}
.final-cta-primary:hover::before {
  opacity: 1;
}
.final-cta-secondary {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: 1.2rem 2rem;
  background: transparent;
  color: #ffffff;
  border: 2px solid rgba(212, 165, 116, 0.4);
  border-radius: 50px;
  font-weight: 700;
  font-size: 1rem;
  transition: all .3s cubic-bezier(0.23, 1, 0.32, 1);
  min-height: 44px; /* Touch target minimum */
}
.final-cta-secondary:hover {
  background: rgba(212, 165, 116, 0.15);
  border-color: #D4A574;
  border-color: var(--warm-beige);
  transform: translateY(-2px);
}
.final-cta-section .final-cta-footer {
  font-size: 1rem;
  color: rgba(229, 216, 199, 0.9);
  font-weight: 500;
}
/* Mobile Optimization */
@media (max-width: 768px) {
  .final-cta-section {
    padding: 3rem 1.5rem;
  }
  .final-cta-title {
    font-size: 2.25rem;
  }
  .final-cta-subtitle {
    font-size: 1.05rem;
    margin-bottom: 2rem;
  }
  .final-cta-stats {
    grid-template-columns: 1fr;
    gap: 1rem;
    max-width: 280px;
  }
  .final-cta-stat {
    padding: 1.25rem;
  }
  .final-cta-stat-number {
    font-size: 2rem;
  }
  .final-cta-buttons {
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
  }
  .final-cta-primary,
  .final-cta-secondary {
    width: 100%;
    justify-content: center;
    padding: 1.1rem 1.5rem;
  }
}
@media (max-width: 480px) {
  .final-cta-section {
    padding: 2.5rem 1rem;
  }
  .final-cta-title {
    font-size: 2rem;
  }
  .final-cta-badge {
    padding: .6rem 1.25rem;
  }
  .final-cta-badge-text {
    font-size: .75rem;
  }
}
/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
  .final-cta-badge-dot,
  .final-cta-primary,
  .final-cta-secondary {
    animation: none;
    transition: none;
  }
}

.back-to-top{
  position:fixed;bottom:2rem;right:2rem;width:64px;height:64px;border-radius:999px;background:linear-gradient(135deg,#fff 0%,var(--cream) 100%);
  border:1px solid rgba(212,165,116,0.1);box-shadow:var(--shadow-xl);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(20px);
  transition:all .3s cubic-bezier(0.23,1,0.32,1);
  color: var(--warm-beige-dark);
}
.back-to-top.show{opacity:1;visibility:visible;transform:translateY(0);}
.back-to-top:hover{transform:translateY(-6px) scale(1.1);box-shadow:var(--shadow-2xl);background:linear-gradient(135deg,var(--warm-beige) 0%,var(--warm-beige-dark) 100%);color: #fff;}
.back-to-top svg{width:28px;height:28px;fill:none;}
.back-to-top svg path {
  stroke-width: 2.5;
}

/* Utilities */
.visually-hidden{position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;}
[hidden]{display:none !important;}
#main{scroll-margin-top:calc(var(--header-h) + 8px);}
:focus-visible{outline:2px solid var(--warm-beige);outline-offset:2px;}

@media (prefers-reduced-motion:reduce){
  *{animation:none !important;transition:none !important;scroll-behavior:auto !important;}
  .progress-fill { transition: none; }
  .back-to-top   { transition: none; }
}

a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent;}
.dropdown-menu{will-change:transform,opacity;}

/* Print */
@media print{
  nav,.toc-wrapper,.back-to-top,.progress-bar,.mobile-panel{display:none !important;}
  .article-wrapper,.article-content{box-shadow:none !important;border:0 !important;}
  a[href]:after{content:" (" attr(href) ")";font-weight:400;font-size:.9em;}
}

/* Table radius consistency */
.table-container{border-radius:16px;}
@media (max-width:640px){.table-container{border-radius:12px;}}

/* ===== RESPONSIVE WITH MOBILE SAFETY ===== */
@supports (padding-top: env(safe-area-inset-top)){body{padding-top:0;}}

/* iPhone/Notch: add safe-area padding horizontally to avoid edge clipping */
@supports (padding: max(0px)) {
  body {
    padding-left: max(0px, env(safe-area-inset-left));
    padding-right: max(0px, env(safe-area-inset-right));
  }
}

@media (max-width:1400px){
  .guide-container{
    grid-template-columns:300px minmax(0, 1fr);
  }
}

@media (max-width:1300px){
  .guide-container{
    grid-template-columns:280px minmax(0, 1fr);
  }
  .article-content{padding:3.5rem;}
}

@media (max-width:1100px){
  .guide-container{grid-template-columns:minmax(0, 1fr);} /* FIX: allow shrinking on mobile */
  .toc-wrapper{position:static;margin-bottom:3rem;height:auto;}
  .toc{max-height:none;}
  .toc-nav{max-height:400px;}
}

@media (max-width:768px){
  .article-content{
    padding:2rem 1.5rem;
  }
  .article-content h2{font-size:2.25rem;}
  .article-content h3{font-size:1.35rem;}
  .article-content p,
  .article-content li{font-size:1rem;}
}

@media (max-width:640px){
  .guide-layout{padding:3rem 1rem;}
  .toc{padding:1.5rem;}
  .article-content{padding:2rem 1.5rem;}
  .premium-card{padding:2rem 1.5rem;}
  .highlight-box{padding:1.5rem;}
  .faq-question{padding:1.5rem;}
  .faq-answer-content{padding:0 1.5rem 1.5rem;}
  .mobile-close{right:.5rem;}
  .back-to-top{width:56px;height:56px;right:1rem;bottom:1rem;}
  .back-to-top svg{width:24px;height:24px;}
  .table-container{margin-left:0;margin-right:0;border-radius:12px;}
}

/* --- iOS/touch seam hardening --- */
@media (pointer: coarse), (max-width: 1024px) {
  .hero-grain { display: none !important; }
  .guide-hero { overflow: visible !important; }
  body::before { display: none !important; }
  .stat-card { backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
}

/* Disable navbar blur on touch devices */
@media (pointer: coarse) {
  nav.global-nav{
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    background: linear-gradient(180deg, rgba(251,247,240,0.98) 0%, rgba(251,247,240,0.92) 100%) !important;
  }
}


/* === HOTFIX: style the "Your Next Step" CTA (id=next-step, class=cta-next-step) === */
.article-content .cta-next-step{
  position: relative;
  background: linear-gradient(135deg,#1a0f08 0%,#3c2415 40%,#2a1810 100%);
  color: #fff;
  padding: clamp(3rem,6vw,6rem) clamp(1rem,3vw,2rem);
  border-radius: 20px;
  overflow: hidden;
  isolation: isolate;
}

/* /learning-center/california-vs-delaware-vs-nevada */
.page-id-18854 .article-content .cta-next-step {
    contain: paint;
    isolation: isolate;
    transform: translateZ(0);
    margin: clamp(2.75rem, 6vw, 4.25rem) 0;
}

.article-content .cta-next-step__wrap{max-width:1200px;margin:0 auto;}

/* /learning-center/california-vs-delaware-vs-nevada */
.page-id-18854 .article-content .cta-next-step__wrap{
    max-width: 1100px;
    margin-inline: auto;
    padding-inline: clamp(1rem, 2vw, 2rem);
}

.article-content .cta-next-step__eyebrow{
  display:block;
  font: 800 .85rem/1 Inter,system-ui,sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  color: rgba(255,255,255,.95);
  margin-bottom: clamp(1rem,2.5vw,2rem);
}
.article-content .cta-next-step__title{
  font-family:'Bebas Neue',sans-serif;
  letter-spacing:.02em;
  font-size: clamp(2.75rem,7vw,5.25rem);
  line-height:.95;
  color:#fff !important;
  margin:0 0 .75rem;
  padding-bottom:0 !important;
}
.article-content .cta-next-step__title::after{
  content:none !important;
}
.article-content .cta-next-step__accent{
  width:120px;height:4px;border-radius:2px;
  background:linear-gradient(90deg,var(--warm-beige),var(--warm-beige-dark));
  display:inline-block;margin:.5rem 0 1.5rem;
}
.article-content .cta-next-step__copy{
  max-width:900px;
  font-size:clamp(1rem,1.05vw,1.15rem);
  line-height:1.85;
  color: rgba(229,216,199,.95);
}
.article-content .cta-next-step__actions{
  display:flex;gap:1.1rem;margin-top:2rem;flex-wrap:wrap;
}
@media (max-width:768px){
  .article-content .cta-next-step__actions{flex-direction:column;align-items:stretch;}
}
.article-content .cta-next-step .final-cta-primary,
.article-content .cta-next-step .final-cta-secondary{min-height:44px;}
.article-content .cta-next-step .final-cta-primary{
  display:inline-flex;align-items:center;justify-content:center;gap:.75rem;
  padding:1.1rem 2.2rem;
  background:linear-gradient(135deg,var(--warm-beige-darker) 0%,var(--rich-brown) 100%);
  color:#fff;border-radius:50px;
  font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:.95rem;
  box-shadow:0 20px 40px rgba(150,99,46,.30), inset 0 2px 0 rgba(255,255,255,.2);
  transition:all .3s cubic-bezier(0.23,1,0.32,1);
  position:relative;overflow:hidden;
}
.article-content .cta-next-step .final-cta-primary::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(135deg,transparent,rgba(255,255,255,.12));
  opacity:0;transition:opacity .3s ease;
}
.article-content .cta-next-step .final-cta-primary:hover{
  transform:translateY(-3px) scale(1.02);
  box-shadow:0 25px 50px rgba(150,99,46,.40), inset 0 2px 0 rgba(255,255,255,.3);
}
.article-content .cta-next-step .final-cta-primary:hover::before{opacity:1;}
.article-content .cta-next-step .final-cta-secondary{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  padding:1.1rem 2rem;background:transparent;color:var(--warm-beige);
  border:2px solid rgba(212,165,116,.35);border-radius:50px;
  font-weight:700;font-size:.95rem;transition:all .3s cubic-bezier(0.23,1,0.32,1);
}
.article-content .cta-next-step .final-cta-secondary:hover{
  background:rgba(212,165,116,.12);border-color:var(--warm-beige);transform:translateY(-2px);
}
.article-content .cta-next-step svg path{
  stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;
}
.article-content .cta-next-step,
.article-content .cta-next-step *{
  hyphens:manual !important; -webkit-hyphens:manual !important;
  overflow-wrap:normal !important; word-break:normal !important;
}

/* START /learning-center/california-vs-delaware-vs-nevada */
.page-id-18854 .article-content .cta-next-step strong {
  color: #fff;
  font-weight: 800;
}
.page-id-18854 .attorney-line-highlight{
  font-style: italic;
  color: var(--gray-700);
  font-weight: normal;
}
@media (max-width: 768px) {

    .page-id-18854 .article-content .cta-next-step {
        padding: 1.75rem 1.25rem;
        border-radius: 18px;
    }

    .page-id-18854 .article-content .cta-next-step__title {
        font-size: 2.2rem;
    }

    .page-id-18854 .article-content .cta-next-step__wrap {
        padding-inline: 0;
    }

    .page-id-18854 .article-content .cta-next-step__actions > a {
        width: 100%;
        text-align: center;
    }
}
/* END /learning-center/california-vs-delaware-vs-nevada */