/*
Theme Name: FireCore Salient Child
Theme URI: https://firecoresolutions.com/
Description: Custom child theme package for FireCore Solutions built for the Salient theme.
Author: OpenAI for FireCore Solutions LLC
Author URI: https://firecoresolutions.com/
Template: salient
Version: 1.1.0
Text Domain: firecore-salient-child
*/

:root{
  --firecore-navy:#081728;
  --firecore-navy-2:#0B1F3A;
  --firecore-blue:#1E6BFF;
  --firecore-cyan:#36B6FF;
  --firecore-orange:#F97316;
  --firecore-ink:#101828;
  --firecore-text:#344054;
  --firecore-light:#F5F7FA;
  --firecore-white:#FFFFFF;
  --firecore-border:#D9E2EC;
  --firecore-success:#12B76A;
  --firecore-danger:#B42318;
  --firecore-radius-xl:32px;
  --firecore-radius-lg:24px;
  --firecore-radius-md:18px;
  --firecore-shadow:0 18px 50px rgba(11,31,58,.12);
  --firecore-shadow-soft:0 10px 24px rgba(11,31,58,.08);
}

html, body { overflow-x:hidden; }
body{ color:var(--firecore-text); background:#fff; }
a{ color:var(--firecore-blue); }
a:hover{ color:var(--firecore-navy-2); }
.nectar-global-section.before-footer,.container-wrap{ background:#fff; }

.firecore-page{ background:linear-gradient(180deg,#ffffff 0%,#f7f9fc 100%); }
.firecore-section{ max-width:1200px; margin:0 auto; padding:92px 24px; }
.firecore-section.is-tight{ padding-top:56px; padding-bottom:56px; }
.firecore-section.is-hero-pad{ padding-top:108px; padding-bottom:112px; }
.firecore-eyebrow{ display:inline-block; margin-bottom:14px; padding:8px 14px; border-radius:999px; background:rgba(30,107,255,.08); color:var(--firecore-blue); font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.firecore-kicker{ color:rgba(255,255,255,.72); font-weight:700; letter-spacing:.1em; text-transform:uppercase; font-size:12px; }

.firecore-hero{ position:relative; overflow:hidden; background:radial-gradient(circle at top right, rgba(54,182,255,.22), transparent 28%),radial-gradient(circle at 18% 15%, rgba(30,107,255,.18), transparent 22%),linear-gradient(135deg, #081728 0%, #0B1F3A 38%, #123668 100%); color:#fff; }
.firecore-hero:after{ content:""; position:absolute; inset:auto -10% -140px auto; width:480px; height:480px; background:radial-gradient(circle, rgba(249,115,22,.22), transparent 60%); filter:blur(20px); pointer-events:none; }
.firecore-hero-grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:36px; align-items:center; }
.firecore-hero h1,.firecore-page-title{ color:#fff; font-size:clamp(2.5rem,4vw,4.5rem); line-height:1.01; letter-spacing:-.045em; margin:8px 0 18px; }
.firecore-page-title{ color:var(--firecore-ink); }
.firecore-hero p{ color:rgba(255,255,255,.86); font-size:1.06rem; line-height:1.75; max-width:640px; }
.firecore-hero-actions,.firecore-cta-row{ display:flex; flex-wrap:wrap; gap:14px; margin-top:28px; }
.firecore-btn{ display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:0 24px; border-radius:999px; font-weight:700; text-decoration:none !important; transition:transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease; }
.firecore-btn:hover{ transform:translateY(-2px); }
.firecore-btn.is-primary{ background:linear-gradient(135deg,var(--firecore-blue),var(--firecore-cyan)); color:#fff; box-shadow:0 14px 28px rgba(30,107,255,.28); }
.firecore-btn.is-secondary{ border:1px solid rgba(255,255,255,.28); color:#fff; background:rgba(255,255,255,.08); backdrop-filter:blur(10px); }
.firecore-btn.is-light{ background:#fff; color:var(--firecore-navy); }
.firecore-btn.is-outline{ border:1px solid rgba(11,31,58,.14); background:#fff; color:var(--firecore-ink); }

.firecore-hero-card{ position:relative; border-radius:32px; overflow:hidden; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); box-shadow:0 24px 60px rgba(0,0,0,.22); backdrop-filter:blur(12px); }
.firecore-hero-card img,.firecore-media-card img,.firecore-portfolio-image img{ display:block; width:100%; height:auto; }
.firecore-hero-meta{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; padding:18px; background:rgba(8,23,40,.84); }
.firecore-hero-meta div{ border:1px solid rgba(255,255,255,.08); border-radius:18px; padding:14px; }
.firecore-hero-meta strong{ display:block; font-size:1.2rem; color:#fff; }
.firecore-hero-meta span{ font-size:.88rem; color:rgba(255,255,255,.76); }

.firecore-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:-54px; position:relative; z-index:5; }
.firecore-stat{ background:#fff; border:1px solid rgba(217,226,236,.75); border-radius:24px; padding:24px; box-shadow:var(--firecore-shadow-soft); }
.firecore-stat strong{ display:block; color:var(--firecore-ink); font-size:1.7rem; line-height:1; margin-bottom:8px; }

.firecore-grid-4{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.firecore-grid-3{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.firecore-grid-2{ display:grid; grid-template-columns:repeat(2,1fr); gap:28px; }
.firecore-card,.firecore-price-card,.firecore-policy-card,.firecore-portfolio-card{ background:#fff; border:1px solid var(--firecore-border); border-radius:var(--firecore-radius-lg); box-shadow:var(--firecore-shadow-soft); padding:32px; height:100%; }
.firecore-card h3,.firecore-card h4,.firecore-price-card h3,.firecore-policy-card h3,.firecore-portfolio-card h3{ color:var(--firecore-ink); margin-top:0; margin-bottom:12px; letter-spacing:-.02em; }
.firecore-icon{ width:56px; height:56px; display:grid; place-items:center; border-radius:18px; margin-bottom:18px; background:linear-gradient(135deg,rgba(30,107,255,.14),rgba(54,182,255,.12)); color:var(--firecore-blue); font-weight:800; font-size:1.3rem; }
.firecore-section-title{ color:var(--firecore-ink); margin:0 0 16px; font-size:clamp(2rem,3vw,3rem); letter-spacing:-.04em; }
.firecore-section-copy{ max-width:760px; font-size:1.03rem; line-height:1.8; margin:0 0 28px; }
.firecore-muted{ color:#667085; }
.firecore-center{text-align:center;}

.firecore-process{ counter-reset:firecore-step; }
.firecore-process .firecore-card{ position:relative; padding-top:72px; }
.firecore-process .firecore-card:before{ counter-increment:firecore-step; content:"0" counter(firecore-step); position:absolute; left:28px; top:24px; font-size:13px; font-weight:800; letter-spacing:.12em; color:var(--firecore-blue); }
.firecore-service-list,.firecore-check-list,.firecore-link-list{ list-style:none; padding:0; margin:0; }
.firecore-service-list li,.firecore-check-list li,.firecore-link-list li{ position:relative; padding-left:28px; margin-bottom:12px; }
.firecore-service-list li:before,.firecore-check-list li:before,.firecore-link-list li:before{ content:""; width:10px; height:10px; border-radius:999px; background:linear-gradient(135deg,var(--firecore-blue),var(--firecore-cyan)); position:absolute; left:0; top:.6em; }
.firecore-feature-band{ background:linear-gradient(180deg,#eff5ff 0%,#ffffff 100%); border-top:1px solid rgba(217,226,236,.6); border-bottom:1px solid rgba(217,226,236,.6); }

.firecore-media-card{ border-radius:28px; overflow:hidden; border:1px solid rgba(217,226,236,.85); box-shadow:var(--firecore-shadow); background:#fff; }
.firecore-media-card-caption{ padding:22px 24px; }
.firecore-template-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.firecore-template-card{ background:#fff; border:1px solid var(--firecore-border); border-radius:28px; overflow:hidden; box-shadow:var(--firecore-shadow-soft); }
.firecore-template-card-body{ padding:24px; }
.firecore-template-tag{ display:inline-block; margin-bottom:10px; padding:7px 12px; border-radius:999px; background:rgba(30,107,255,.08); color:var(--firecore-blue); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }

.firecore-pricing{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.firecore-price-card{ position:relative; overflow:hidden; border-radius:28px; }
.firecore-price-card.is-featured{ border-color:rgba(30,107,255,.28); box-shadow:0 20px 44px rgba(30,107,255,.16); }
.firecore-price-badge{ display:inline-block; margin-bottom:14px; padding:7px 12px; border-radius:999px; background:rgba(18,183,106,.10); color:var(--firecore-success); font-weight:700; font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
.firecore-price{ color:var(--firecore-ink); font-size:2.4rem; font-weight:800; letter-spacing:-.04em; margin-bottom:8px; }
.firecore-price small{ font-size:1rem; color:#667085; }
.firecore-price-note{ color:#667085; margin:0 0 18px; }

.firecore-portfolio-card{ padding:0; overflow:hidden; }
.firecore-portfolio-card .firecore-portfolio-body{ padding:28px; }
.firecore-portfolio-image{ aspect-ratio: 16/10; overflow:hidden; background:#eef2f6; }
.firecore-portfolio-image img{ height:100%; object-fit:cover; }
.firecore-pill-row{ display:flex; flex-wrap:wrap; gap:8px; margin:14px 0 0; }
.firecore-pill{ display:inline-flex; align-items:center; min-height:32px; padding:0 12px; border-radius:999px; background:#F2F4F7; color:#344054; font-size:12px; font-weight:700; }

.firecore-cta-band{ background:linear-gradient(135deg,#0B1F3A 0%,#163f75 100%); color:#fff; }
.firecore-cta-band .firecore-section-title,.firecore-cta-band .firecore-section-copy{ color:#fff; }
.firecore-cta-band .firecore-section-copy{ opacity:.86; }

.firecore-form-wrap{ background:#fff; border:1px solid var(--firecore-border); border-radius:28px; padding:30px; box-shadow:var(--firecore-shadow-soft); }
.firecore-form{ display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.firecore-form .full{ grid-column:1 / -1; }
.firecore-form label{ display:block; color:var(--firecore-ink); font-weight:700; margin-bottom:8px; }
.firecore-form input,.firecore-form select,.firecore-form textarea{ width:100%; border:1px solid #D0D5DD; border-radius:14px; min-height:52px; padding:0 16px; background:#fff; color:#101828; }
.firecore-form textarea{ min-height:150px; padding:14px 16px; resize:vertical; }
.firecore-form input:focus,.firecore-form select:focus,.firecore-form textarea:focus{ outline:none; border-color:var(--firecore-blue); box-shadow:0 0 0 4px rgba(30,107,255,.12); }

.firecore-policy-shell h2,.firecore-policy-shell h3{ color:var(--firecore-ink); letter-spacing:-.02em; }
.firecore-policy-shell h2{ margin-top:0; }
.firecore-policy-shell h3{ margin-top:28px; }
.firecore-policy-shell p,.firecore-policy-shell li{ line-height:1.8; }
.firecore-policy-shell ul{ margin-left:20px; }
.firecore-legal-meta{ margin-bottom:26px; color:#667085; }

.firecore-footer-note{ font-size:.95rem; color:#667085; }

@media (max-width:1100px){
  .firecore-grid-4{ grid-template-columns:repeat(2,1fr); }
  .firecore-stats{ grid-template-columns:repeat(2,1fr); margin-top:0; }
  .firecore-pricing,.firecore-grid-3,.firecore-template-grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:960px){
  .firecore-hero-grid,.firecore-grid-2{ grid-template-columns:1fr; }
  .firecore-hero-card{ max-width:720px; margin:0 auto; }
  .firecore-section{ padding:76px 20px; }
  .firecore-section.is-hero-pad{ padding-top:88px; padding-bottom:88px; }
}
@media (max-width:767px){
  .firecore-section{ padding:64px 18px; }
  .firecore-section.is-hero-pad{ padding-top:72px; padding-bottom:72px; }
  .firecore-grid-4,.firecore-grid-3,.firecore-pricing,.firecore-template-grid,.firecore-stats,.firecore-form{ grid-template-columns:1fr; }
  .firecore-hero h1,.firecore-page-title{ font-size:clamp(2rem,9vw,3.1rem); }
  .firecore-hero p,.firecore-section-copy{ font-size:1rem; }
  .firecore-btn{ width:100%; }
  .firecore-hero-meta{ grid-template-columns:1fr; }
  .firecore-price-card,.firecore-card,.firecore-form-wrap,.firecore-policy-card{ padding:24px; }
}
