/*
Theme Name: Astra Child - Goldsworthy Digital
Template: astra
Version: 1.0
*/
:root {
  --gd-dark: #0A0F1C;
  --gd-navy: #111827;
  --gd-gold: #D4AF37;
  --gd-gold-light: #E5C158;
  --gd-gold-dark: #B8960C;
  --gd-gold-shine: #F0D878;
  --gd-blue: #3B82F6;
  --gd-white: #FFFFFF;
  --gd-gray: #94A3B8;
  --gd-light: #F1F5F9;
}
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:"Inter",-apple-system,sans-serif; color:var(--gd-dark); overflow-x:hidden; }
img { max-width:100%; height:auto; }
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap");

.gd-nav { position:fixed; top:0; left:0; right:0; z-index:1000; background:rgba(10,15,28,0.95); backdrop-filter:blur(20px); padding:0 40px; border-bottom:1px solid rgba(212,175,55,0.15); }
.gd-nav-inner { max-width:1400px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; height:70px; }
.gd-nav-logo { display:flex; align-items:center; gap:10px; text-decoration:none; }
.gd-brand { font-family:"Space Grotesk",sans-serif; font-size:1.3rem; font-weight:700; background:linear-gradient(135deg,var(--gd-gold),var(--gd-gold-shine)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.gd-nav-links { display:flex; gap:6px; }
.gd-nav-link { color:rgba(255,255,255,0.7); text-decoration:none; padding:8px 16px; font-size:0.9rem; font-weight:500; border-radius:8px; transition:all 0.3s; }
.gd-nav-link:hover { color:#fff; background:rgba(212,175,55,0.15); }
.gd-nav-cta { background:linear-gradient(135deg,var(--gd-gold),var(--gd-gold-dark)) !important; color:var(--gd-dark) !important; font-weight:600 !important; }
.gd-mobile-toggle { display:none; background:none; border:2px solid var(--gd-gold); color:var(--gd-gold); font-size:1.5rem; padding:6px 10px; border-radius:8px; cursor:pointer; }
@media (max-width:920px) {
  .gd-nav-links { display:none !important; }
  .gd-mobile-toggle { display:block !important; }
  .gd-nav { padding:0 20px; }
}
.gd-mobile-menu { display:none; position:fixed; top:0; left:0; right:0; bottom:0; background:rgba(10,15,28,0.98); z-index:9999; flex-direction:column; align-items:center; justify-content:center; gap:24px; }
.gd-mobile-menu a { color:#fff; text-decoration:none; font-size:1.3rem; font-weight:500; padding:12px 32px; border-radius:12px; transition:all 0.3s; }
.gd-mobile-menu a:hover { background:rgba(212,175,55,0.2); }
.gd-mobile-cta { background:var(--gd-gold) !important; color:var(--gd-dark) !important; }
.gd-mobile-close { position:absolute; top:20px; right:24px; background:none; border:none; color:#fff; font-size:2rem; cursor:pointer; }

.gd-hero { min-height:100vh; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#0A0F1C 0%,#111827 50%,#1E293B 100%); padding:120px 24px 80px; text-align:center; position:relative; overflow:hidden; }
.gd-hero::before { content:""; position:absolute; top:-30%; right:-15%; width:600px; height:600px; background:radial-gradient(circle,rgba(212,175,55,0.12) 0%,transparent 70%); border-radius:50%; }
.gd-hero::after { content:""; position:absolute; bottom:-20%; left:-10%; width:500px; height:500px; background:radial-gradient(circle,rgba(59,130,246,0.08) 0%,transparent 70%); border-radius:50%; }
.gd-hero-content { position:relative; z-index:2; max-width:800px; }
.gd-hero-badge { display:inline-block; padding:8px 20px; border-radius:50px; background:rgba(212,175,55,0.12); border:1px solid rgba(212,175,55,0.25); color:var(--gd-gold); font-size:0.85rem; font-weight:600; letter-spacing:2px; text-transform:uppercase; margin-bottom:24px; }
.gd-hero h1 { font-family:"Space Grotesk",sans-serif; font-size:clamp(2.5rem,6vw,4.2rem); color:#fff; line-height:1.1; margin-bottom:24px; font-weight:700; }
.gd-hero h1 em { font-style:normal; background:linear-gradient(135deg,var(--gd-gold),var(--gd-gold-shine)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.gd-hero-sub { font-size:1.15rem; color:rgba(255,255,255,0.6); line-height:1.8; max-width:600px; margin:0 auto 40px; }
.gd-hero-btns { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }

.gd-btn { display:inline-flex; align-items:center; padding:14px 32px; border-radius:50px; font-weight:600; font-size:0.95rem; text-decoration:none; transition:all 0.3s; cursor:pointer; }
.gd-btn-primary { background:linear-gradient(135deg,var(--gd-gold),var(--gd-gold-dark)); color:var(--gd-dark); box-shadow:0 4px 15px rgba(212,175,55,0.3); }
.gd-btn-primary:hover { transform:translateY(-2px); box-shadow:0 6px 20px rgba(212,175,55,0.4); }
.gd-btn-ghost { border:2px solid rgba(255,255,255,0.2); color:#fff; background:transparent; }
.gd-btn-ghost:hover { border-color:var(--gd-gold); color:var(--gd-gold); }
.gd-btn-dark { background:var(--gd-dark); color:#fff; }

.gd-section { max-width:1200px; margin:0 auto; padding:80px 24px; }
.gd-section-full { width:100%; }
.gd-section-dark { background:var(--gd-navy); color:#fff; }
.gd-section-light { background:var(--gd-light); }
.gd-section-header { text-align:center; max-width:700px; margin:0 auto 50px; }
.gd-section-label { display:inline-block; padding:6px 16px; border-radius:50px; background:rgba(212,175,55,0.1); color:var(--gd-gold); font-size:0.8rem; font-weight:600; letter-spacing:2px; text-transform:uppercase; margin-bottom:16px; }
.gd-section-header h2 { font-family:"Space Grotesk",sans-serif; font-size:clamp(1.8rem,4vw,2.8rem); color:var(--gd-dark); line-height:1.2; margin-bottom:16px; }
.gd-section-dark .gd-section-header h2 { color:#fff; }
.gd-section-header p { color:var(--gd-gray); font-size:1.05rem; line-height:1.8; }
.gd-gold-line { width:60px; height:3px; margin:20px auto 0; background:linear-gradient(90deg,var(--gd-gold),var(--gd-gold-light)); border-radius:2px; }

.gd-story { max-width:800px; margin:0 auto; }
.gd-story p { font-size:1.05rem; color:var(--gd-gray); line-height:1.9; margin-bottom:20px; }
.gd-story-stats { display:flex; gap:40px; margin-top:40px; flex-wrap:wrap; justify-content:center; }
.gd-stat { text-align:center; }
.gd-stat h3 { font-family:"Space Grotesk",sans-serif; font-size:1.8rem; color:var(--gd-gold); margin-bottom:4px; }
.gd-stat p { font-size:0.85rem; color:var(--gd-gray); text-transform:uppercase; letter-spacing:1px; }

.gd-services { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:24px; }
.gd-service-card { background:var(--gd-white); border-radius:16px; overflow:hidden; border:1px solid rgba(10,15,28,0.06); transition:all 0.3s; padding:36px 28px; text-align:center; }
.gd-service-card:hover { transform:translateY(-5px); box-shadow:0 10px 30px rgba(212,175,55,0.15); }
.gd-service-icon { font-size:2.5rem; margin-bottom:20px; }
.gd-service-card h3 { font-family:"Space Grotesk",sans-serif; font-size:1.15rem; color:var(--gd-dark); margin-bottom:12px; }
.gd-service-card p { font-size:0.9rem; color:var(--gd-gray); line-height:1.7; }

.gd-features { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
@media (max-width:768px) { .gd-features { grid-template-columns:1fr; } }
.gd-feature { text-align:center; padding:40px 24px; border-radius:16px; background:var(--gd-white); border:1px solid rgba(10,15,28,0.06); transition:all 0.3s; }
.gd-feature:hover { transform:translateY(-5px); box-shadow:0 10px 30px rgba(212,175,55,0.15); }
.gd-feature-icon { width:60px; height:60px; margin:0 auto 20px; border-radius:16px; background:rgba(212,175,55,0.1); display:flex; align-items:center; justify-content:center; }
.gd-feature-icon svg { width:28px; height:28px; color:var(--gd-gold); }
.gd-feature h4 { font-family:"Space Grotesk",sans-serif; font-size:1.2rem; color:var(--gd-dark); margin-bottom:12px; }
.gd-feature p { font-size:0.9rem; color:var(--gd-gray); line-height:1.7; }

.gd-faq { max-width:800px; margin:0 auto; }
.gd-faq-item { border-bottom:1px solid rgba(10,15,28,0.08); padding:20px 0; }
.gd-faq-q { display:flex; justify-content:space-between; align-items:center; }
.gd-faq-q h4 { font-size:1.05rem; color:var(--gd-dark); font-weight:500; }
.gd-faq-q span { color:var(--gd-gold); font-size:1.5rem; }
.gd-faq-a { padding-top:12px; color:var(--gd-gray); line-height:1.8; font-size:0.95rem; }

.gd-cta-banner { text-align:center; padding:60px 40px; border-radius:20px; background:linear-gradient(135deg,var(--gd-gold),var(--gd-gold-dark)); position:relative; overflow:hidden; }
.gd-cta-banner h2 { font-family:"Space Grotesk",sans-serif; font-size:clamp(1.5rem,3vw,2.2rem); color:var(--gd-dark); margin-bottom:16px; }
.gd-cta-banner p { color:rgba(10,15,28,0.8); margin-bottom:30px; }
.gd-cta-banner .gd-btn-primary { background:var(--gd-dark) !important; color:#fff !important; }

.gd-footer { background:var(--gd-dark); color:rgba(255,255,255,0.7); padding:60px 24px 30px; }
.gd-footer-inner { max-width:1200px; margin:0 auto; display:grid; grid-template-columns:2fr 1fr 1fr; gap:40px; }
@media (max-width:768px) { .gd-footer-inner { grid-template-columns:1fr; text-align:center; } }
.gd-footer-brand .gd-brand { display:block; margin-bottom:16px; font-size:1.5rem; }
.gd-footer-brand p { font-size:0.9rem; line-height:1.7; }
.gd-footer h5 { color:#fff; font-size:1rem; margin-bottom:16px; }
.gd-footer-links { display:flex; flex-direction:column; gap:8px; }
.gd-footer-links a { color:rgba(255,255,255,0.6); text-decoration:none; font-size:0.9rem; }
.gd-footer-links a:hover { color:var(--gd-gold); }
.gd-footer-bottom { max-width:1200px; margin:40px auto 0; padding-top:20px; border-top:1px solid rgba(255,255,255,0.1); text-align:center; }

.wpforms-submit { background:linear-gradient(135deg,var(--gd-gold),var(--gd-gold-dark)) !important; color:var(--gd-dark) !important; border:none !important; padding:16px 40px !important; border-radius:50px !important; font-size:1.05rem !important; font-weight:600 !important; cursor:pointer !important; }
.wpforms-submit:hover { transform:translateY(-2px) !important; }
.wpforms-field-radio ul { list-style:none !important; padding:0 !important; display:flex !important; flex-wrap:wrap !important; gap:12px !important; }
.wpforms-field-radio li { display:inline-flex !important; align-items:center !important; gap:6px !important; }
.wpforms-field-radio input[type="radio"] { accent-color:var(--gd-gold) !important; }

#ast-desktop-header,#ast-mobile-header,.ast-primary-header-bar,.site-footer,.ast-small-footer,.ast-footer-overlay,#colophon,footer.site-footer,.site-below-footer-wrap,.site-primary-footer-wrap,.ast-breadcrumbs-wrapper,.woocommerce-breadcrumb,.ast-breadcrumbs,.entry-header,.page-header { display:none !important; }
