/*
Theme Name: No Stress Relax Astra Child
Theme URI: https://nostressrelax.com
Description: Astra child theme for NoStressRelax.com using the approved navy / logo-green / ivory brand system.
Author: No Stress Relax
Template: astra
Version: 1.0.0
Text Domain: nostressrelax-astra-child
*/

:root{
  --nsr-navy:#1F3A5F;
  --nsr-green:#587C23;
  --nsr-ivory:#F5F0E6;
  --nsr-white:#FAFAF8;
  --nsr-charcoal:#333333;
  --nsr-gold:#C5A35A;
  --nsr-muted:#6C756F;
  --nsr-border:#E3E0D6;
  --nsr-radius:16px;
  --nsr-shadow:0 10px 30px rgba(31,58,95,.08);
}

body{
  background:var(--nsr-white);
  color:var(--nsr-charcoal);
  line-height:1.6;
}

h1,h2,h3,h4,h5,h6,
.entry-title,.woocommerce-loop-product__title{
  color:var(--nsr-navy);
}

a{color:var(--nsr-green)}
a:hover{color:var(--nsr-navy)}

.ast-primary-header-bar,
.site-header{
  background:#fff;
}

.main-header-menu > .menu-item > .menu-link{
  color:var(--nsr-navy);
  font-weight:700;
}
.main-header-menu > .menu-item:hover > .menu-link,
.main-header-menu > .current-menu-item > .menu-link{
  color:var(--nsr-green);
}

.nsr-topbar{
  background:var(--nsr-green);
  color:#fff;
  font-size:14px;
  padding:7px 0;
}
.nsr-topbar .nsr-wrap{
  display:flex;
  justify-content:space-between;
  gap:20px;
}

.nsr-wrap{
  width:min(1180px,92%);
  margin-inline:auto;
}

.nsr-category-nav{
  background:var(--nsr-navy);
  color:#fff;
}
.nsr-category-nav .nsr-wrap{
  display:flex;
  gap:20px;
  overflow-x:auto;
  white-space:nowrap;
  padding:11px 0;
}
.nsr-category-nav a{
  color:#fff;
  font-size:14px;
  font-weight:700;
}
.nsr-category-nav a:hover{color:#dfe8d2}

.nsr-btn,
.wp-block-button__link,
button,
input[type="submit"],
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
  border-radius:8px!important;
  font-weight:700!important;
}
.nsr-btn{
  display:inline-block;
  padding:13px 20px;
  text-decoration:none;
}
.nsr-btn--primary,
.wp-block-button__link,
.woocommerce a.button.alt,
.woocommerce button.button.alt{
  background:var(--nsr-green)!important;
  color:#fff!important;
}
.nsr-btn--secondary{
  color:var(--nsr-navy)!important;
  border:1px solid var(--nsr-navy);
  background:#fff;
}
.nsr-btn--secondary:hover{background:var(--nsr-navy);color:#fff!important}

.nsr-home-hero{
  background:linear-gradient(105deg,var(--nsr-ivory),#fff);
  padding:56px 0 34px;
}
.nsr-hero-grid{
  display:grid;
  grid-template-columns:.9fr 1.2fr;
  gap:34px;
  align-items:center;
}
.nsr-kicker{
  color:var(--nsr-green);
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  font-size:13px;
}
.nsr-home-hero h1{
  font-size:clamp(42px,6vw,68px);
  line-height:1.02;
  margin:8px 0 18px;
}
.nsr-home-hero h1 span{color:var(--nsr-green)}
.nsr-home-hero p{font-size:18px;max-width:560px}
.nsr-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.nsr-hero-art img{
  display:block;
  width:100%;
  border-radius:22px;
  box-shadow:var(--nsr-shadow);
}

.nsr-promise-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-top:-18px;
  position:relative;
  z-index:2;
}
.nsr-promise-item{
  background:#fff;
  border:1px solid var(--nsr-border);
  border-radius:14px;
  padding:16px;
  text-align:center;
  box-shadow:0 5px 20px rgba(31,58,95,.05);
}
.nsr-promise-item strong{color:var(--nsr-green);display:block}

.nsr-section{padding:58px 0}
.nsr-section--ivory{background:var(--nsr-ivory)}
.nsr-section-title{
  text-align:center;
  color:var(--nsr-navy);
  font-size:clamp(28px,4vw,38px);
  margin:0 0 10px;
}
.nsr-section-intro{
  max-width:760px;
  margin:0 auto 30px;
  text-align:center;
  color:var(--nsr-muted);
}

.nsr-category-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.nsr-category-card{
  background:#fff;
  border:1px solid var(--nsr-border);
  border-radius:var(--nsr-radius);
  padding:22px;
  box-shadow:var(--nsr-shadow);
  transition:.2s ease;
}
.nsr-category-card:hover{
  transform:translateY(-3px);
  border-color:#c8d3b5;
}
.nsr-category-icon{
  width:44px;height:44px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--nsr-green);
  color:#fff;font-weight:800;
}
.nsr-category-card h3{margin:14px 0 8px}
.nsr-category-card p{font-size:14px;color:var(--nsr-muted);min-height:65px}
.nsr-category-card a{font-weight:800}

.nsr-needs-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.nsr-need-card{
  background:#fff;
  border:1px solid var(--nsr-border);
  border-radius:14px;
  padding:20px;
  text-align:center;
  color:var(--nsr-navy);
  font-weight:800;
}

.nsr-featured-products{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.nsr-product-placeholder{
  border:1px solid var(--nsr-border);
  background:#fff;
  border-radius:14px;
  padding:14px;
}
.nsr-product-placeholder .nsr-product-image{
  height:180px;
  border-radius:10px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#eef2e8,#edf0f5);
  color:var(--nsr-muted);
}
.nsr-product-placeholder small{color:var(--nsr-green);font-weight:800}
.nsr-product-placeholder h3{font-size:18px;margin-bottom:8px}

.nsr-relax-center{
  background:linear-gradient(90deg,#eef0e8,var(--ivory,#F5F0E6));
  border:1px solid var(--nsr-border);
  border-radius:18px;
  padding:28px;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:20px;
}

.site-footer,
.ast-footer-overlay{
  background:var(--nsr-navy)!important;
  color:#fff;
}
.site-footer a{color:#e8eedf}
.site-footer a:hover{color:#fff}

.woocommerce ul.products li.product{
  border:1px solid var(--nsr-border);
  border-radius:14px;
  padding:12px!important;
  background:#fff;
  box-shadow:0 5px 18px rgba(31,58,95,.05);
}
.woocommerce ul.products li.product .price{color:var(--nsr-green)!important;font-weight:800}
.woocommerce div.product p.price,
.woocommerce div.product span.price{color:var(--nsr-green)!important}

.nsr-tax-badge{
  display:inline-block;
  font-size:12px;
  padding:5px 9px;
  border-radius:999px;
  background:#eff3e8;
  color:var(--nsr-green);
  margin:0 6px 6px 0;
}

@media(max-width:980px){
  .nsr-hero-grid,.nsr-category-grid,.nsr-needs-grid,.nsr-featured-products,.nsr-promise-strip{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .nsr-topbar .nsr-wrap{flex-direction:column;gap:2px;text-align:center}
  .nsr-hero-grid,.nsr-category-grid,.nsr-needs-grid,.nsr-featured-products,.nsr-promise-strip{grid-template-columns:1fr}
  .nsr-home-hero{padding-top:38px}
  .nsr-relax-center{grid-template-columns:1fr}
}
