/* SleepMinder SEO Pages - Matches sleepminder.app design */
/* Fonts: Roboto body, Montserrat headings */
/* Colors: #6C3FC5 primary purple, #1e2936 dark, #f6f7fa light bg */

*{margin:0;padding:0;box-sizing:border-box}

body{
  font-family:'Roboto','Helvetica Neue',Helvetica,Arial,sans-serif;
  color:#1e2936;font-weight:400;line-height:1.7;background:#fff;
}

h1,h2,h3,h4{
  font-family:'Montserrat',sans-serif;
  color:#1e2936;font-weight:700;line-height:1.3;
}

h1{font-size:clamp(1.8rem,4vw,2.4rem);margin-bottom:16px}
h2{font-size:clamp(1.3rem,3vw,1.7rem);margin:32px 0 12px;padding-bottom:8px;border-bottom:2px solid #f0f1f5}
h3{font-size:1.15rem;margin:24px 0 8px;color:#6C3FC5}

a{color:#6C3FC5;text-decoration:none}
a:hover{color:#5630a3;text-decoration:underline}

/* HEADER */
.header{
  background:rgba(255,255,255,0.97);backdrop-filter:blur(20px);
  border-bottom:1px solid #eee;padding:12px 0;
  position:sticky;top:0;z-index:100;
}
.header-inner{
  max-width:960px;margin:0 auto;padding:0 20px;
  display:flex;align-items:center;justify-content:space-between;
}
.header-logo{
  display:flex;align-items:center;gap:10px;
  font-family:'Montserrat',sans-serif;
  font-size:1.2rem;font-weight:700;color:#1e2936;text-decoration:none;
}
.header-logo:hover{color:#1e2936;text-decoration:none}
.header-logo img{width:40px;height:40px;border-radius:10px}
.header-nav a{
  margin-left:24px;color:#333;font-size:0.9rem;font-weight:500;
  text-decoration:none;transition:color .2s;
}
.header-nav a:hover{color:#6C3FC5;text-decoration:none}

/* CONTAINER */
.container{max-width:960px;margin:0 auto;padding:40px 20px 60px}

/* BREADCRUMB */
.breadcrumb{font-size:0.85rem;color:#999;margin-bottom:24px}
.breadcrumb a{color:#999;text-decoration:none}
.breadcrumb a:hover{color:#6C3FC5}

/* INTRO */
.intro{font-size:1.05rem;color:#333;margin-bottom:28px;line-height:1.8}

/* HIGHLIGHT BOX */
.highlight-box{
  background:linear-gradient(135deg,#f5f0ff,#ede5ff);
  border-left:4px solid #6C3FC5;
  padding:20px 24px;border-radius:0 12px 12px 0;margin:24px 0;
}
.highlight-box strong{color:#6C3FC5}

/* DATA TABLE */
.data-table{
  width:100%;border-collapse:collapse;margin:20px 0;
  border-radius:12px;overflow:hidden;
  box-shadow:0 2px 8px rgba(0,0,0,0.06);
}
.data-table th{
  background:linear-gradient(180deg,#1e2936,#161f2a);
  color:#fff;padding:12px 16px;text-align:left;font-weight:600;
  font-family:'Montserrat',sans-serif;font-size:0.9rem;
}
.data-table td{padding:10px 16px;border-bottom:1px solid #f0f1f5}
.data-table tr:nth-child(even){background:#f9fafb}
.data-table tr:hover{background:#f5f0ff}

/* COMPARE TABLE */
.compare-table th:nth-child(2){background:#6C3FC5}
.compare-table th:nth-child(3){background:#5630a3}

/* TIPS LIST */
.tips-list{list-style:none;padding:0;margin:16px 0}
.tips-list li{
  padding:12px 0 12px 32px;position:relative;
  border-bottom:1px solid #f0f1f5;font-size:0.95rem;color:#333;
}
.tips-list li::before{
  content:"\2713";position:absolute;left:0;
  color:#6C3FC5;font-weight:700;font-size:1.1rem;
}

/* CTA BOX */
.cta-box{
  background:linear-gradient(135deg,#6C3FC5,#5630a3);
  color:#fff;border-radius:16px;padding:32px;
  text-align:center;margin:40px 0;
}
.cta-box h3{color:#fff;font-size:1.4rem;margin-bottom:8px;border:none;padding:0}
.cta-box p{color:rgba(255,255,255,0.9);margin-bottom:16px}
.cta-btn{
  display:inline-block;background:#fff;color:#6C3FC5;
  padding:12px 28px;border-radius:30px;font-weight:700;
  font-size:1rem;text-decoration:none;margin:4px 8px;
  font-family:'Montserrat',sans-serif;
  transition:transform 0.2s,box-shadow 0.2s;
}
.cta-btn:hover{
  transform:scale(1.05);text-decoration:none;
  box-shadow:0 4px 16px rgba(0,0,0,0.2);color:#6C3FC5;
}

/* RELATED LINKS */
.related-links{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  gap:12px;margin:20px 0;
}
.related-link{
  background:#f6f7fa;border:1px solid #eee;
  border-radius:10px;padding:14px 18px;
  transition:border-color 0.2s,background 0.2s;
  text-decoration:none;
}
.related-link:hover{
  border-color:#6C3FC5;background:#f5f0ff;text-decoration:none;
}
.related-link .title{
  font-weight:600;color:#1e2936;display:block;
  font-family:'Montserrat',sans-serif;font-size:0.9rem;
}
.related-link .desc{
  font-size:0.8rem;color:#666;margin-top:4px;display:block;
}

/* FAQ */
.faq-item{margin:16px 0}
.faq-item summary{
  font-weight:600;color:#1e2936;cursor:pointer;padding:12px 0;
  font-family:'Montserrat',sans-serif;
}
.faq-item summary:hover{color:#6C3FC5}
.faq-item p{padding:8px 0 16px;color:#333}

/* PROGRESS BAR */
.progress-bar{
  background:#f0f1f5;border-radius:10px;height:24px;
  margin:8px 0;overflow:hidden;position:relative;
}
.progress-fill{
  background:linear-gradient(90deg,#6C3FC5,#5630a3);
  height:100%;border-radius:10px;display:flex;
  align-items:center;padding:0 10px;color:#fff;
  font-size:0.8rem;font-weight:600;
}

/* TAG */
.tag{
  display:inline-block;background:#f5f0ff;color:#6C3FC5;
  padding:4px 12px;border-radius:20px;font-size:0.8rem;
  font-weight:600;margin:2px 4px;
}

/* CALCULATOR STYLES */
.calculator-widget{
  background:#f6f7fa;border:2px solid #e0d8f0;border-radius:16px;
  padding:24px;margin:24px 0;
}
.calculator-widget label{
  display:block;font-weight:600;margin:12px 0 4px;
  font-family:'Montserrat',sans-serif;font-size:0.9rem;color:#1e2936;
}
.calculator-widget input,
.calculator-widget select{
  width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;
  font-size:1rem;font-family:'Roboto',sans-serif;margin-bottom:4px;
}
.calculator-widget input:focus,
.calculator-widget select:focus{
  outline:none;border-color:#6C3FC5;box-shadow:0 0 0 3px rgba(108,63,197,0.15);
}
.calc-btn{
  display:inline-block;background:#6C3FC5;color:#fff;
  padding:12px 28px;border-radius:8px;font-weight:700;
  font-size:1rem;border:none;cursor:pointer;margin-top:12px;
  font-family:'Montserrat',sans-serif;transition:background 0.2s;
}
.calc-btn:hover{background:#5630a3}
.calc-result{
  margin-top:16px;padding:16px;background:#fff;
  border-radius:8px;border:1px solid #e0d8f0;
  font-size:1rem;line-height:1.7;
}
.calc-result strong{color:#6C3FC5}
.calc-result .result-value{
  font-size:1.5rem;font-weight:700;color:#6C3FC5;
  font-family:'Montserrat',sans-serif;
}

/* FOOTER */
footer{
  background:#1e2936;color:#9ca3af;
  padding:40px 20px;text-align:center;font-size:0.85rem;
}
footer a{color:#9ca3af;text-decoration:none}
footer a:hover{color:#fff}
footer .footer-nav{margin-bottom:16px}
footer .footer-nav a{margin:0 12px;color:#d1d5db}
footer .footer-nav a:hover{color:#6C3FC5}
footer .disclaimer{font-size:0.75rem;color:#6b7280;margin-top:12px;max-width:600px;margin-left:auto;margin-right:auto}

/* RESPONSIVE */
@media(max-width:768px){
  .container{padding:24px 16px 40px}
  .header-nav{display:none}
  .related-links{grid-template-columns:1fr}
  .data-table{font-size:0.85rem}
  .data-table th,.data-table td{padding:8px 10px}
}

/* CTA Inline & Banner Styles */
.cta-inline{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#f5f0ff;border-left:3px solid #6C3FC5;border-radius:8px;margin:24px 0}
.cta-inline img{flex-shrink:0;border-radius:8px}
.cta-inline p{margin:0;font-size:15px;color:#444}
.cta-inline a{color:#6C3FC5;font-weight:600;text-decoration:none}
.cta-inline a:hover{text-decoration:underline}
.cta-banner{margin:32px 0;padding:24px;background:linear-gradient(135deg,#f6f7fa 0%,#eef1f5 100%);border-radius:16px;border:1px solid rgba(0,0,0,0.06)}
.cta-banner-inner{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.cta-banner-icon{border-radius:12px;flex-shrink:0}
.cta-banner-text{flex:1;min-width:200px}
.cta-banner-text strong{display:block;font-size:17px;color:#1e2936;margin-bottom:4px}
.cta-banner-text span{font-size:14px;color:#666}
.cta-banner-buttons{display:flex;gap:8px}
.cta-btn-sm{display:inline-block;padding:8px 20px;background:#6C3FC5;color:#fff;font-size:14px;font-weight:600;border-radius:8px;text-decoration:none;transition:background 0.2s}
.cta-btn-sm:hover{background:#5630a3}
@media(max-width:600px){.cta-banner-inner{flex-direction:column;text-align:center}.cta-banner-buttons{justify-content:center}.cta-inline{flex-direction:column;text-align:center}}
