/*
Theme Name: AmBizDC Bootstrap Theme
Theme URI: https://ambizdc.com
Author: Amarello Business Digital Consultancy
Author URI: https://ambizdc.com
Description: A modern Bootstrap 5 WordPress theme for AmBizDC digital consultancy. Features professional hero section, services, about, process, testimonials, blog and contact sections.
Version: 1.0.0
Requires at least: 5.8
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ambizdc-bootstrap-theme
Tags: business, bootstrap, consultancy, professional, responsive
*/

:root {
  --ambizdc-primary: #1a3c6e;
  --ambizdc-secondary: #f5a623;
  --ambizdc-accent: #2d7dd2;
  --ambizdc-dark: #0d1b2a;
  --ambizdc-light: #f8f9fc;
  --ambizdc-text: #333333;
  --ambizdc-muted: #6c757d;
  --ambizdc-border: #dee2e6;
  --ambizdc-gradient: linear-gradient(135deg, #1a3c6e 0%, #2d7dd2 100%);
}

body { font-family: 'Open Sans', sans-serif; color: var(--ambizdc-text); line-height: 1.7; }
h1,h2,h3,h4,h5,h6 { font-family: 'Montserrat', sans-serif; font-weight: 700; color: var(--ambizdc-dark); }
a { color: var(--ambizdc-accent); text-decoration: none; transition: all 0.3s ease; }
img { max-width: 100%; height: auto; }

#site-navigation { background: #fff; box-shadow: 0 2px 20px rgba(0,0,0,.08); position: sticky; top: 0; z-index: 1030; }
.navbar-brand .site-title { font-family: 'Montserrat',sans-serif; font-weight: 800; font-size: 1.5rem; color: var(--ambizdc-primary); }
.nav-link { color: var(--ambizdc-dark)!important; font-weight: 600; font-size:.9rem; letter-spacing:.5px; text-transform:uppercase; padding:.75rem 1rem!important; }
.nav-link:hover,.nav-link.active { color: var(--ambizdc-accent)!important; }

.hero-section { background: var(--ambizdc-gradient); color: #fff; padding: 120px 0 100px; min-height: 90vh; display: flex; align-items: center; position: relative; overflow: hidden; }
.hero-section::before { content:''; position:absolute; top:-50%; right:-10%; width:600px; height:600px; background:rgba(255,255,255,.04); border-radius:50%; }
.hero-badge { display:inline-block; background:rgba(245,166,35,.2); color:var(--ambizdc-secondary); border:1px solid rgba(245,166,35,.4); padding:6px 20px; border-radius:50px; font-size:.85rem; font-weight:600; letter-spacing:1px; text-transform:uppercase; margin-bottom:1.5rem; }
.hero-title { font-size:3.5rem; font-weight:800; color:#fff; line-height:1.2; margin-bottom:1.5rem; }
.hero-title span { color:var(--ambizdc-secondary); }
.hero-subtitle { font-size:1.2rem; color:rgba(255,255,255,.85); margin-bottom:2.5rem; max-width:560px; }
.btn-hero-primary { background:var(--ambizdc-secondary); color:var(--ambizdc-dark); padding:15px 40px; border-radius:50px; font-weight:700; font-size:1rem; border:none; display:inline-flex; align-items:center; gap:8px; transition:all .3s ease; box-shadow:0 8px 25px rgba(245,166,35,.4); }
.btn-hero-primary:hover { background:#e8951a; color:var(--ambizdc-dark); transform:translateY(-3px); }
.btn-hero-outline { background:transparent; color:#fff; padding:15px 40px; border-radius:50px; font-weight:600; border:2px solid rgba(255,255,255,.5); display:inline-flex; align-items:center; gap:8px; transition:all .3s; }
.btn-hero-outline:hover { background:rgba(255,255,255,.1); border-color:#fff; color:#fff; }
.hero-stat-number { font-size:2.5rem; font-weight:800; color:var(--ambizdc-secondary); }
.hero-stat-label { font-size:.9rem; color:rgba(255,255,255,.7); text-transform:uppercase; letter-spacing:1px; }

.section-padding { padding: 100px 0; }
.section-title { font-size:2.5rem; font-weight:800; color:var(--ambizdc-dark); margin-bottom:1rem; }
.section-subtitle { font-size:1.1rem; color:var(--ambizdc-muted); max-width:600px; margin:0 auto 3rem; }
.section-badge { display:inline-block; background:rgba(45,125,210,.1); color:var(--ambizdc-accent); padding:5px 18px; border-radius:50px; font-size:.85rem; font-weight:600; letter-spacing:1px; text-transform:uppercase; margin-bottom:1rem; }
.section-divider { width:60px; height:4px; background:var(--ambizdc-gradient); border-radius:2px; margin:1rem auto 1.5rem; }

.services-section { background: var(--ambizdc-light); }
.service-card { background:#fff; border-radius:16px; padding:2.5rem 2rem; height:100%; border:1px solid var(--ambizdc-border); transition:all .4s ease; position:relative; overflow:hidden; }
.service-card::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:var(--ambizdc-gradient); transform:scaleX(0); transition:transform .4s; }
.service-card:hover { transform:translateY(-8px); box-shadow:0 20px 50px rgba(26,60,110,.15); border-color:transparent; }
.service-card:hover::before { transform:scaleX(1); }
.service-icon { width:70px; height:70px; background:var(--ambizdc-gradient); border-radius:16px; display:flex; align-items:center; justify-content:center; margin-bottom:1.5rem; font-size:1.8rem; color:#fff; }
.service-card h3 { font-size:1.3rem; font-weight:700; margin-bottom:1rem; }
.service-card p { color:var(--ambizdc-muted); font-size:.95rem; margin-bottom:1.5rem; }
.service-link { color:var(--ambizdc-accent); font-weight:600; font-size:.9rem; display:inline-flex; align-items:center; gap:6px; text-transform:uppercase; letter-spacing:.5px; }

.stats-section { background:var(--ambizdc-gradient); padding:80px 0; }
.stat-number { font-size:3rem; font-weight:800; color:var(--ambizdc-secondary); display:block; }
.stat-label { font-size:1rem; color:rgba(255,255,255,.85); text-transform:uppercase; letter-spacing:1px; margin-top:.5rem; }

.process-step { text-align:center; padding:2rem 1.5rem; }
.process-step-number { width:70px; height:70px; background:var(--ambizdc-gradient); color:#fff; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.5rem; font-weight:800; margin:0 auto 1.5rem; box-shadow:0 10px 30px rgba(26,60,110,.3); }

.testimonial-card { background:var(--ambizdc-light); border-radius:16px; padding:2rem; height:100%; border:1px solid var(--ambizdc-border); }
.testimonial-quote { font-size:3rem; color:var(--ambizdc-accent); line-height:1; font-family:Georgia,serif; }
.testimonial-avatar { width:50px; height:50px; border-radius:50%; background:var(--ambizdc-gradient); display:flex; align-items:center; justify-content:center; color:#fff; font-weight:700; font-size:1.1rem; }
.testimonial-stars { color:var(--ambizdc-secondary); }

.blog-card { background:#fff; border-radius:16px; overflow:hidden; border:1px solid var(--ambizdc-border); transition:all .3s; height:100%; }
.blog-card:hover { transform:translateY(-5px); box-shadow:0 15px 40px rgba(0,0,0,.1); }
.blog-card-img { width:100%; height:200px; object-fit:cover; background:var(--ambizdc-gradient); }
.blog-card-body { padding:1.5rem; }
.blog-category { display:inline-block; background:rgba(45,125,210,.1); color:var(--ambizdc-accent); padding:3px 12px; border-radius:50px; font-size:.8rem; font-weight:600; text-transform:uppercase; margin-bottom:.75rem; }
.blog-meta { font-size:.85rem; color:var(--ambizdc-muted); margin-top:1rem; padding-top:1rem; border-top:1px solid var(--ambizdc-border); display:flex; align-items:center; justify-content:space-between; }

.contact-info-card { background:var(--ambizdc-gradient); border-radius:20px; padding:3rem 2rem; color:#fff; height:100%; }
.contact-info-card h3 { color:#fff; }
.contact-info-icon { width:42px; height:42px; background:rgba(255,255,255,.15); border-radius:10px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.contact-form-card { background:var(--ambizdc-light); border-radius:20px; padding:3rem 2rem; }
.form-control { border:1.5px solid var(--ambizdc-border); border-radius:10px; padding:12px 18px; font-size:.95rem; transition:all .3s; }
.form-control:focus { border-color:var(--ambizdc-accent); box-shadow:0 0 0 4px rgba(45,125,210,.1); outline:none; }
.btn-submit { background:var(--ambizdc-gradient); color:#fff; padding:14px 40px; border-radius:50px; font-weight:700; border:none; width:100%; font-size:1rem; transition:all .3s; }
.btn-submit:hover { opacity:.9; transform:translateY(-2px); }

.cta-section { background:var(--ambizdc-gradient); padding:100px 0; text-align:center; color:#fff; }
.cta-section h2 { color:#fff; font-size:2.8rem; font-weight:800; }
.btn-cta { background:var(--ambizdc-secondary); color:var(--ambizdc-dark); padding:18px 50px; border-radius:50px; font-weight:700; font-size:1.1rem; border:none; transition:all .3s; box-shadow:0 10px 30px rgba(245,166,35,.4); display:inline-block; }
.btn-cta:hover { background:#e8951a; color:var(--ambizdc-dark); transform:translateY(-3px); }

.site-footer { background:var(--ambizdc-dark); color:rgba(255,255,255,.75); padding-top:80px; }
.footer-heading { color:#fff; font-size:1rem; font-weight:700; text-transform:uppercase; letter-spacing:1.5px; margin-bottom:1.5rem; }
.footer-links { list-style:none; padding:0; margin:0; }
.footer-links li { margin-bottom:.75rem; }
.footer-links a { color:rgba(255,255,255,.6); font-size:.9rem; transition:color .3s; }
.footer-links a:hover { color:var(--ambizdc-secondary); }
.footer-bottom { background:rgba(0,0,0,.2); padding:1.5rem 0; margin-top:3rem; }
.social-btn { width:38px; height:38px; border-radius:8px; background:rgba(255,255,255,.1); display:flex; align-items:center; justify-content:center; color:#fff; transition:all .3s; }
.social-btn:hover { background:var(--ambizdc-secondary); color:var(--ambizdc-dark); }

.alignleft { float:left; margin:0 1.5rem 1rem 0; }
.alignright { float:right; margin:0 0 1rem 1.5rem; }
.aligncenter { display:block; margin:0 auto 1rem; }
.screen-reader-text { clip:rect(1px,1px,1px,1px); height:1px; margin:-1px; overflow:hidden; padding:0; position:absolute; width:1px; }
.entry-content { max-width:800px; margin:0 auto; padding:3rem 0; }
.entry-content blockquote { border-left:4px solid var(--ambizdc-accent); padding:1rem 1.5rem; background:var(--ambizdc-light); border-radius:0 8px 8px 0; margin:1.5rem 0; font-style:italic; }

@media (max-width:991px) { .hero-title { font-size:2.5rem; } .section-padding { padding:70px 0; } }
@media (max-width:767px) { .hero-title { font-size:2rem; } .stat-number { font-size:2.5rem; } .cta-section h2 { font-size:2rem; } }
