/*
Theme Name: Astra Child - Renuka Steel Works
Template: astra
Version: 2.0
*/

:root{
  --rsw-iron:#15120d;
  --rsw-iron-2:#211c15;
  --rsw-iron-3:#2c2519;
  --rsw-amber:#d19332;
  --rsw-amber-soft:#e6b25c;
  --rsw-copper:#b1502e;
  --rsw-parchment:#f3e9d6;
  --rsw-parchment-dim:#cbbfa8;
  --rsw-paper:#faf6ee;
  --rsw-ink:#241f18;
  --rsw-ink-dim:#5c5346;
  --rsw-line:#e6dcc8;
  --rsw-radius:6px;
  --rsw-shadow:0 12px 32px rgba(21,18,13,0.10);
  --rsw-shadow-lg:0 24px 60px rgba(21,18,13,0.20);
}

*{ box-sizing:border-box; }
body{ background:var(--rsw-paper); color:var(--rsw-ink); font-size:16px; line-height:1.7; }
a{ color:var(--rsw-copper); }
a:hover{ color:var(--rsw-amber); }
img{ max-width:100%; }

h1,h2,h3,h4,.entry-title{ font-family:'Noto Serif Devanagari', Georgia, serif; font-weight:800; color:var(--rsw-iron); letter-spacing:-0.01em; }

/* ---------- Header ---------- */
.site-header, #masthead{ background:var(--rsw-iron); border-bottom:1px solid rgba(230,178,92,0.25); }
.ast-primary-header-bar, .main-header-bar{ background:var(--rsw-iron) !important; border-color:rgba(243,233,214,0.1) !important; min-height:78px !important; }
.site-title, .site-title a{ color:var(--rsw-parchment) !important; font-family:'Noto Serif Devanagari', serif; font-weight:800; font-size:19px !important; }
.site-description{ color:var(--rsw-amber-soft) !important; font-family:'JetBrains Mono', monospace; font-size:10.5px !important; letter-spacing:0.14em; text-transform:uppercase; }
.main-navigation ul li a, .main-header-menu .menu-link{ color:var(--rsw-parchment-dim) !important; font-weight:600; font-size:14.5px; letter-spacing:0.01em; }
.main-navigation ul li a:hover, .main-header-menu .menu-link:hover{ color:var(--rsw-amber-soft) !important; }
.ast-header-break-point .menu-toggle{ background:transparent !important; }
.ast-mobile-menu-buttons-minimal .menu-toggle-close, .ast-mobile-menu-buttons-minimal .menu-toggle-open{ color:var(--rsw-parchment) !important; }

/* ---------- Buttons ---------- */
.rsw-btn, .wp-block-button__link, button.wp-block-search__button, input[type="submit"], .wpcf7-submit{
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  background:linear-gradient(135deg, var(--rsw-amber-soft), var(--rsw-copper)) !important;
  color:var(--rsw-iron) !important; border:none !important; border-radius:var(--rsw-radius) !important;
  padding:15px 26px !important; font-weight:700 !important; font-size:15px !important; text-decoration:none !important;
  box-shadow:0 8px 22px rgba(177,80,46,0.28); transition:transform .18s ease, box-shadow .18s ease;
  cursor:pointer;
}
.rsw-btn:hover, .wp-block-button__link:hover, .wpcf7-submit:hover{ transform:translateY(-2px); color:var(--rsw-iron) !important; box-shadow:0 12px 28px rgba(177,80,46,0.36); }
.rsw-btn-outline{
  background:rgba(243,233,214,0.06) !important; color:var(--rsw-parchment) !important; border:1.5px solid rgba(243,233,214,0.35) !important;
  box-shadow:none;
}
.rsw-btn-outline:hover{ border-color:var(--rsw-amber-soft) !important; background:rgba(243,233,214,0.1) !important; }
.rsw-btn-outline-dark{
  background:transparent !important; color:var(--rsw-iron) !important; border:1.5px solid var(--rsw-ink) !important; box-shadow:none;
}
.rsw-btn-outline-dark:hover{ border-color:var(--rsw-copper) !important; color:var(--rsw-copper) !important; }
.rsw-btn-sm{ padding:11px 18px !important; font-size:13.5px !important; }

/* ---------- Photo Hero (full-bleed) ---------- */
.rsw-hero-photo{
  position:relative; min-height:640px; display:flex; align-items:center;
  background-size:cover; background-position:center; overflow:hidden;
}
.rsw-hero-photo::before{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(90deg, rgba(15,12,9,0.94) 0%, rgba(15,12,9,0.82) 38%, rgba(15,12,9,0.45) 68%, rgba(15,12,9,0.25) 100%),
    linear-gradient(0deg, rgba(15,12,9,0.5), transparent 40%);
}
.rsw-hero-photo .rsw-wrap{ position:relative; z-index:2; padding:80px 24px; }
.rsw-hero-photo h1{ color:#fff; font-size:clamp(34px,5.4vw,58px); line-height:1.12; max-width:760px; text-shadow:0 2px 24px rgba(0,0,0,0.3); }
.rsw-hero-photo p{ color:rgba(243,233,214,0.88); font-size:19px; max-width:580px; margin-top:20px; line-height:1.65; }
.rsw-hero-photo .rsw-eyebrow{ border-color:rgba(230,178,92,0.4); background:rgba(21,18,13,0.4); backdrop-filter:blur(4px); }
.rsw-hero-photo.rsw-hero-compact{ min-height:340px; }
.rsw-hero-photo.rsw-hero-compact .rsw-wrap{ padding:56px 24px; }
.rsw-hero-photo.rsw-hero-compact h1{ font-size:clamp(28px,4.2vw,42px); }

/* legacy solid hero, still used on inner pages */
.rsw-hero{
  background:
    radial-gradient(ellipse 900px 500px at 85% -10%, rgba(209,147,50,0.18), transparent 60%),
    radial-gradient(ellipse 700px 500px at -10% 110%, rgba(177,80,46,0.18), transparent 60%),
    var(--rsw-iron);
  color:var(--rsw-parchment);
  padding:76px 24px 72px;
  border-bottom:1px solid rgba(230,178,92,0.2);
}
.rsw-hero .rsw-wrap{ max-width:1140px; margin:0 auto; }
.rsw-hero h1{ color:var(--rsw-parchment); font-size:clamp(30px,5vw,50px); line-height:1.18; max-width:820px; }
.rsw-hero .rsw-glow{ background:linear-gradient(100deg, var(--rsw-amber-soft), var(--rsw-copper)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.rsw-hero p{ color:var(--rsw-parchment-dim); font-size:18px; max-width:600px; margin-top:16px; }

.rsw-eyebrow{
  display:inline-flex; align-items:center; gap:10px; font-family:'JetBrains Mono',monospace; font-size:12px;
  letter-spacing:0.16em; text-transform:uppercase; color:var(--rsw-amber-soft); border:1px solid rgba(243,233,214,0.2);
  padding:8px 16px; border-radius:100px; margin-bottom:22px; font-weight:600;
}
.rsw-eyebrow .dot{ width:6px; height:6px; border-radius:50%; background:var(--rsw-amber); display:inline-block; box-shadow:0 0 8px var(--rsw-amber); }

/* ---------- Stats / trust bar ---------- */
.rsw-stats{
  display:grid; grid-template-columns:repeat(4,1fr); background:var(--rsw-iron-2); position:relative; z-index:3;
  border-top:1px solid rgba(230,178,92,0.15);
}
.rsw-stats .rsw-stat{ padding:30px 20px; text-align:center; border-right:1px solid rgba(243,233,214,0.08); }
.rsw-stats .rsw-stat:last-child{ border-right:none; }
.rsw-stats .num{ font-family:'Noto Serif Devanagari',serif; font-weight:900; font-size:clamp(24px,3vw,34px); color:var(--rsw-amber-soft); line-height:1; }
.rsw-stats .lbl{ margin-top:8px; font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:0.08em; text-transform:uppercase; color:var(--rsw-parchment-dim); }
@media (max-width:800px){ .rsw-stats{ grid-template-columns:repeat(2,1fr); } .rsw-stats .rsw-stat:nth-child(2){ border-right:none; } }

/* ---------- Sections / cards ---------- */
.rsw-wrap{ max-width:1140px; margin:0 auto; padding:0 24px; }
.rsw-section{ padding:88px 0; }
.rsw-section.rsw-tight{ padding:56px 0; }
.rsw-section.rsw-alt{ background:#f2ebdc; }
.rsw-section.rsw-dark{ background:var(--rsw-iron); color:var(--rsw-parchment-dim); }
.rsw-section.rsw-dark h2, .rsw-section.rsw-dark h3{ color:var(--rsw-parchment); }
.rsw-sec-label{ font-family:'JetBrains Mono',monospace; font-size:12px; letter-spacing:0.18em; text-transform:uppercase; color:var(--rsw-copper); margin-bottom:14px; display:flex; align-items:center; gap:12px; font-weight:600; }
.rsw-sec-label::before{ content:""; width:28px; height:2px; background:var(--rsw-copper); display:inline-block; }
.rsw-section.rsw-dark .rsw-sec-label{ color:var(--rsw-amber-soft); }
.rsw-section.rsw-dark .rsw-sec-label::before{ background:var(--rsw-amber-soft); }
.rsw-sec-title{ font-size:clamp(26px,3.6vw,40px); max-width:700px; line-height:1.22; }
.rsw-sec-desc{ color:var(--rsw-ink-dim); max-width:660px; margin-top:16px; font-size:16.5px; line-height:1.75; }
.rsw-section.rsw-dark .rsw-sec-desc{ color:var(--rsw-parchment-dim); }
.rsw-center{ text-align:center; margin-left:auto; margin-right:auto; }

.rsw-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; margin-top:44px; }
@media (max-width:900px){ .rsw-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:620px){ .rsw-grid{ grid-template-columns:1fr; } }

.rsw-grid-4{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; margin-top:44px; }
@media (max-width:900px){ .rsw-grid-4{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .rsw-grid-4{ grid-template-columns:1fr; } }

.rsw-card{ background:#fff; border:1px solid var(--rsw-line); border-radius:var(--rsw-radius); overflow:hidden; transition:transform .25s ease, box-shadow .25s ease; }
.rsw-card:hover{ transform:translateY(-5px); box-shadow:var(--rsw-shadow-lg); border-color:transparent; }
.rsw-card img{ width:100%; aspect-ratio:4/3; object-fit:cover; display:block; }
.rsw-card .rsw-card-body{ padding:22px 24px; }
.rsw-card h3{ font-size:18.5px; margin-bottom:8px; }
.rsw-card p{ color:var(--rsw-ink-dim); font-size:14px; line-height:1.6; }

.rsw-info-card{ border:1px solid var(--rsw-line); border-radius:var(--rsw-radius); padding:30px; background:#fff; box-shadow:var(--rsw-shadow); }
.rsw-info-row{ display:flex; justify-content:space-between; gap:16px; padding:13px 0; border-bottom:1px solid var(--rsw-line); font-size:14px; }
.rsw-info-row:last-child{ border-bottom:none; }
.rsw-info-row .k{ color:var(--rsw-ink-dim); }
.rsw-info-row .v{ font-family:'JetBrains Mono',monospace; font-size:13px; text-align:right; font-weight:600; }

.rsw-process-row{ display:grid; grid-template-columns:repeat(6,1fr); gap:18px; margin-top:44px; }
@media (max-width:1000px){ .rsw-process-row{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:600px){ .rsw-process-row{ grid-template-columns:1fr; } }
.rsw-p-num{ width:44px; height:44px; border-radius:50%; background:var(--rsw-iron); border:1.5px solid var(--rsw-amber); color:var(--rsw-amber-soft); font-family:'JetBrains Mono',monospace; font-weight:700; display:flex; align-items:center; justify-content:center; margin-bottom:14px; }
.rsw-p-step h4{ font-size:15.5px; margin-bottom:7px; }
.rsw-p-step p{ font-size:13px; color:var(--rsw-ink-dim); line-height:1.6; }

/* ---------- Generations / journey ---------- */
.rsw-gen-row{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:44px; }
@media (max-width:800px){ .rsw-gen-row{ grid-template-columns:1fr; } }
.rsw-gen-card{ background:#fff; border:1px solid var(--rsw-line); border-radius:var(--rsw-radius); padding:28px; text-align:center; box-shadow:var(--rsw-shadow); position:relative; }
.rsw-gen-card .yr{ font-family:'JetBrains Mono',monospace; font-size:12px; letter-spacing:0.1em; color:var(--rsw-copper); font-weight:700; }
.rsw-gen-card h4{ font-size:19px; margin:10px 0 8px; }
.rsw-gen-card p{ color:var(--rsw-ink-dim); font-size:14px; line-height:1.65; }

/* ---------- Team ---------- */
.rsw-team-row{ display:grid; grid-template-columns:repeat(2,1fr); gap:24px; margin-top:44px; max-width:640px; }
@media (max-width:560px){ .rsw-team-row{ grid-template-columns:1fr; } }
.rsw-team-card{ background:#fff; border:1px solid var(--rsw-line); border-radius:var(--rsw-radius); padding:30px 24px; text-align:center; box-shadow:var(--rsw-shadow); }
.rsw-team-avatar{
  width:78px; height:78px; border-radius:50%; margin:0 auto 16px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, var(--rsw-amber-soft), var(--rsw-copper)); color:var(--rsw-iron);
  font-family:'Noto Serif Devanagari',serif; font-weight:800; font-size:24px;
}
.rsw-team-card h4{ font-size:17px; margin-bottom:4px; }
.rsw-team-card .role{ font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:0.1em; text-transform:uppercase; color:var(--rsw-copper); }

/* ---------- Badge row ---------- */
.rsw-badges{ display:flex; flex-wrap:wrap; gap:14px; margin-top:36px; }
.rsw-badge{ display:inline-flex; align-items:center; gap:9px; border:1px solid var(--rsw-line); background:#fff; border-radius:100px; padding:10px 18px; font-size:13.5px; font-weight:600; color:var(--rsw-ink); box-shadow:var(--rsw-shadow); }
.rsw-badge .ic{ color:var(--rsw-copper); font-size:15px; }

.rsw-gallery{ column-count:3; column-gap:16px; margin-top:36px; }
@media (max-width:900px){ .rsw-gallery{ column-count:2; } }
@media (max-width:560px){ .rsw-gallery{ column-count:1; } }
.rsw-gallery img, .rsw-gallery video{ margin-bottom:16px; border-radius:var(--rsw-radius); border:1px solid var(--rsw-line); width:100%; display:block; box-shadow:var(--rsw-shadow); }

.rsw-contact-line{ display:flex; gap:16px; padding:16px 0; border-bottom:1px solid var(--rsw-line); }
.rsw-contact-line .ic{ width:40px; height:40px; border-radius:50%; border:1px solid var(--rsw-copper); display:flex; align-items:center; justify-content:center; flex-shrink:0; color:var(--rsw-copper); font-size:16px; }

/* ---------- CTA banner ---------- */
.rsw-cta-banner{
  position:relative; background-size:cover; background-position:center; padding:90px 24px; text-align:center; overflow:hidden;
}
.rsw-cta-banner::before{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(15,12,9,0.88), rgba(15,12,9,0.82)); }
.rsw-cta-banner .rsw-wrap{ position:relative; z-index:2; }
.rsw-cta-banner h2{ color:#fff; font-size:clamp(26px,4vw,40px); max-width:720px; margin:0 auto; }
.rsw-cta-banner p{ color:var(--rsw-parchment-dim); font-size:17px; margin:16px auto 0; max-width:560px; }
.rsw-cta-banner .rsw-cta-actions{ display:flex; gap:16px; justify-content:center; flex-wrap:wrap; margin-top:32px; }

/* Products archive/single */
.rsw-product-price{ font-family:'JetBrains Mono',monospace; color:var(--rsw-copper); font-size:13px; margin-top:8px; font-weight:600; }

/* ---------- Rich footer ---------- */
.rsw-footer{ background:var(--rsw-iron); color:var(--rsw-parchment-dim); padding:72px 0 0; border-top:3px solid var(--rsw-amber); }
.rsw-footer-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1.1fr; gap:40px; padding-bottom:48px; border-bottom:1px solid rgba(243,233,214,0.1); }
@media (max-width:900px){ .rsw-footer-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .rsw-footer-grid{ grid-template-columns:1fr; } }
.rsw-footer h5{ font-family:'JetBrains Mono',monospace; font-size:12px; letter-spacing:0.14em; text-transform:uppercase; color:var(--rsw-amber-soft); margin-bottom:18px; font-weight:700; }
.rsw-footer .brand{ display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.rsw-footer .brand .stamp{ width:38px; height:38px; border-radius:50%; border:1.5px solid var(--rsw-amber); display:flex; align-items:center; justify-content:center; font-family:'Noto Serif Devanagari',serif; font-weight:900; color:var(--rsw-amber-soft); flex-shrink:0; }
.rsw-footer .brand .name{ font-family:'Noto Serif Devanagari',serif; font-weight:800; color:var(--rsw-parchment); font-size:16px; }
.rsw-footer p{ font-size:14px; line-height:1.75; color:var(--rsw-parchment-dim); }
.rsw-footer ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:11px; }
.rsw-footer ul a{ color:var(--rsw-parchment-dim); font-size:14px; }
.rsw-footer ul a:hover{ color:var(--rsw-amber-soft); }
.rsw-footer-bottom{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; padding:24px 0; font-size:12.5px; color:var(--rsw-ash,#8b8272); }
.rsw-footer-bottom a{ color:var(--rsw-parchment-dim); }

/* Hide Astra's default thin footer bar; rsw-footer replaces it */
.site-footer, footer.site-footer, #colophon{ display:none !important; }

/* WPCF7 form */
.wpcf7-form p{ margin-bottom:16px; }
.wpcf7-form label{ font-size:13.5px; font-weight:600; color:var(--rsw-ink-dim); }
.wpcf7-form input[type=text], .wpcf7-form input[type=tel], .wpcf7-form input[type=email], .wpcf7-form textarea{
  width:100%; padding:13px 15px; border:1px solid var(--rsw-line); border-radius:var(--rsw-radius); font-family:inherit; background:#fdfbf6; margin-top:6px;
}
.wpcf7-form input:focus, .wpcf7-form textarea:focus{ outline:none; border-color:var(--rsw-copper); }

@media (max-width:700px){
  .rsw-hero-photo{ min-height:520px; }
  .rsw-hero-photo .rsw-wrap{ padding:60px 24px; }
}
