/*
Theme Name: CoreCompass v2
Theme URI: 
Author: You
Description: Custom WordPress theme with editable front-page sections (Hero, About, Services, Why Choose Us, Contact)
Version: 2.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: corecompass
*/

/* --------------------------------------------------
   WordPress Image Alignment & Styling
   Author: [Your Name]
   -------------------------------------------------- */

/* Make all images responsive */
img {
  max-width: 100%;
  height: auto;
  display: inline-block;
}

/* Classic WP alignment (used by Classic Editor & Gutenberg) */
.alignleft {
  float: left;
  margin: 0 1rem 1rem 0;
  display: inline-block;
}

.alignright {
  float: right;
  margin: 0 0 1rem 1rem;
  display: inline-block;
}

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Gutenberg Image Block alignment */
.wp-block-image {
  margin-bottom: 1rem;
}

.wp-block-image img {
  display: block;
  height: auto;
  max-width: 100%;
}

.wp-block-image.alignleft {
  float: left;
  margin: 0 1rem 1rem 0;
}

.wp-block-image.alignright {
  float: right;
  margin: 0 0 1rem 1rem;
}

.wp-block-image.aligncenter {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

/* Figure and caption styling */
figure {
  margin: 0 0 1rem 0;
}

figure img {
  display: block;
  margin: 0 auto;
}

figcaption {
  font-size: 0.9rem;
  color: #666;
  margin-top: 0.4rem;
  text-align: center;
}

/* Centering image with flex container (custom use) */
.image-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
}

.image-wrap img {
  max-width: 100%;
  height: auto;
}

/* Cropped thumbnails with fixed height */
.crop-thumb {
  width: 100%;
  height: 200px;
  object-fit: cover;
  display: block;
}

/* Inline images within text */
img.inline {
  vertical-align: middle;
}

/* Clearing floated elements */
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

/* Optional: style for large/full images */
img.size-full,
img.size-large {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
  border-radius: 6px;
}

 /* Hero Section */
        .hero-section {
            background: linear-gradient(135deg, #2e4267 0%, #1c63de 100%);
            color: white;
            padding: 100px 20px 80px;
            text-align: center;
        }

        .hero-section h1 {
            font-size: 2.5rem;
            margin-bottom: 30px;
            font-weight: 700;
            letter-spacing: 1px;
color:#fff;
        }

        .hero-section p {
            font-size: 1.2rem;
            max-width: 900px;
            margin: 0 auto;
            line-height: 1.8;
        }

        .hero-subtitle {
            margin-top: 25px;
            font-size: 1.3rem;
            font-weight: 600;
        }

        /* Leadership Section */
        .leadership-section {
            padding: 80px 20px;
          
        }

        

       
        /* Team Grid */
        .team-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
            gap: 35px;
            margin-bottom: 40px;
        }

        /* Team Member Card - Redesigned */
        .team-card {
            background: white;
            border-radius: 8px;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
            overflow: hidden;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            border-left: 5px solid #2e4267;
        }

        .team-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
        }

        .team-card-header {
           background: linear-gradient(135deg, #2e4267 0%, #1c63de 100%);
            color: white;
            padding: 35px 30px;
        }

        .team-card-header h3 {
            font-size: 2rem;
            margin-bottom: 8px;
            font-weight: 700;
color:#fff;
        }

        .team-card-header .role {
            font-size: 1.15rem;
            opacity: 0.95;
            font-weight: 400;
        }

        .team-card-body {
            padding: 35px 30px;
        }

        .expertise-section {
            margin-bottom: 25px;
        }

        .expertise-section h4 {
            font-size: 1.1rem;
            color: #1e3c72;
            margin-bottom: 12px;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }

        .expertise-section p {
            color: #555;
            line-height: 1.7;
            margin-bottom: 10px;
        }

        .expertise-list {
            list-style: none;
            padding-left: 0;
        }

        .expertise-list li {
            padding: 8px 0;
            color: #555;
            position: relative;
            padding-left: 25px;
        }

        .expertise-list li:before {
            content: "▸";
            position: absolute;
            left: 0;
            color: #005fbe;
            font-weight: bold;
        }

/* Extended Team Section */
        .extended-team {
            padding: 80px 20px;
            background-color: #ffffff;
        }

        .coming-soon-card {
            background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
            border-radius: 8px;
            padding: 60px 40px;
            text-align: center;
            border: 2px dashed #005fbe;
        }

        .coming-soon-card h3 {
            font-size: 2.2rem;
            color: #1e3c72;
            margin-bottom: 20px;
            font-weight: 700;
        }

        .coming-soon-card p {
            font-size: 1rem;
          
            line-height: 1.8;
            max-width: 800px;
            margin: 0 auto;
        }

        /* Responsive Design */
        @media (max-width: 768px) {
            .hero-section h1 {
                font-size: 2.2rem;
            }

            .hero-section p {
                font-size: 1.05rem;
            }

            .team-grid {
                grid-template-columns: 1fr;
            }

            .section-title {
                font-size: 2rem;
            }

            .team-card-header h3 {
                font-size: 1.6rem;
            }

            .coming-soon-card {
                padding: 40px 25px;
            }
        }

 /* Hero Section */
        .hero-section {
            background: linear-gradient(135deg, #2e4267 0%, #1c63de 100%);
            color: white;
            padding: 100px 20px 80px;
            text-align: center;
        }

        .hero-section h1 {
            font-size: 2.5rem;
            margin-bottom: 30px;
            font-weight: 700;
            letter-spacing: 1px;
color:#fff;
        }

        .hero-section p {
            font-size: 1.2rem;
            max-width: 900px;
            margin: 0 auto;
            line-height: 1.8;
        }

       
     

       

        .sector-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
        }

        .sector-icon {
            font-size: 3rem;
            color: #2a5298;
            margin-bottom: 20px;
        }

       
       
        /* Client Types Section */
        .client-types-section {
            padding: 80px 20px;
            background-color: #ffffff;
        }

        .types-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 40px;
          
        }

        .type-card {
            background: #f8f9fa;
            padding: 35px;
            border-radius: 8px;
            border-left: 5px solid #2a5298;
        }

        .type-card h3 {
            font-size: 1.4rem;
            color: #1e3c72;
            margin-bottom: 15px;
            font-weight: 700;
        }

        .type-card p {
            color: #555;
            line-height: 1.7;
        }

        /* Partnership Approach Section */
        .partnership-section {
            padding:80px 20px 20px 20px;
            background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
        }
 .partnership-list {
      list-style: none;
      padding: 0;
      margin: 0;
      column-count: 2;
      column-gap: 2rem;
    }
       .partnership-list li {
      position: relative;
      background: #f8f9fa;
      margin-bottom: 1rem;
      padding: 1rem 1.25rem 1rem 2.75rem;
      border-radius: 12px;
      box-shadow: 0 2px 6px rgba(0,0,0,0.05);
      transition: all 0.3s ease;
      break-inside: avoid;
      font-size: 1rem;
    }

    /* Bootstrap icon as bullet */
    .partnership-list li i {
      position: absolute;
      left: 1rem;
      top: 50%;
      transform: translateY(-50%);
      color: #0d6efd;
      font-size: 1.1rem;
      transition: color 0.3s ease;
    }

    /* Hover effects */
    .partnership-list li:hover {
      background: #0d6efd;
      color: #fff;
      transform: translateY(-3px);
      box-shadow: 0 6px 15px rgba(13,110,253,0.25);
    }

 .partnership-list li:hover:before {
   
      color: #fff;
    
    }

       
      

        .partnership-list {
            list-style: none;
            padding: 0;
            margin-top: 40px;
            text-align: left;
        }

        .partnership-list li {
            padding: 15px 0 15px 40px;
            color: #555;
            font-size: 1rem;
            position: relative;
            line-height: 1.6;
        }

        .partnership-list li:before {
            content: "✓";
            position: absolute;
            left: 0;
            color: #2a5298;
            font-weight: bold;
           font-size: 1.2rem;
padding-left: 10px;
        }



        /* Case Studies Coming Soon */
        .case-studies-section {
            padding: 80px 20px;
            background-color: #ffffff;
        }

        .coming-soon-box {
          background: linear-gradient(135deg, #2e4267 0%, #1c63de 100%);
            color: white;
            padding: 60px 40px;
            border-radius: 8px;
            text-align: center;
            max-width: 800px;
            margin: 0 auto;
        }

        .coming-soon-box h3 {
            font-size: 2.2rem;
            margin-bottom: 20px;
            font-weight: 700;
color: white;
        }

        .coming-soon-box p {
            font-size: 1.15rem;
            line-height: 1.8;
            opacity: 0.95;
        }

        /* Responsive Design */
        @media (max-width: 768px) {
            .hero-section h1 {
                font-size: 2.2rem;
            }

            .hero-section p {
                font-size: 1.05rem;
            }

            .section-title {
                font-size: 2rem;
            }

            .sectors-grid,
            .types-grid {
                grid-template-columns: 1fr;
            }

            .partnership-content h2 {
                font-size: 2rem;
            }

            .coming-soon-box {
                padding: 40px 25px;
            }
        }

/* Optional: responsive figure handling */
@media (max-width: 768px) {
  .alignleft,
  .alignright {
    float: none;
    display: block;
    margin: 0 auto 1rem auto;
  }
.header .logo img {
    width: 240px;
}
    .hero h2 {
        font-size: 24px;
    }
.section-title {
padding-bottom: 30px;
  
}
.section-title h2 {
	font-size: 20px;
	}
    .services .services-grid {
        margin-top: 20px;
    }
	section, .section {
		
		    padding: 30px 0;
	}
.hero-section {
    padding: 50px 20px 40px;
 
}
    .hero-section h1 {
        font-size: 24px;
    }
    .section-title {
        font-size: 1.1rem;
    }
	.type-card h3 {
    font-size: 1.2rem;
  
}
.partnership-list {
 
    column-count: 1;
	}
	.partnership-list li {
    padding: 15px 10px 15px 40px;
	}
.coming-soon-box h3 {
    font-size: 1.4rem;
  
}
.coming-soon-box p {
    font-size: 1rem;
    line-height: 1.5;
    opacity: 1;
}
.hero .container {
    text-align: center;
}
.hero {
  min-height: 84vh;
    align-items: end;
}
	    .hero p {
        font-size: 16px;
        line-height: 1.2;
    }
	    .hero span {
        font-size: 15px;
        line-height: 1.2;
    }
}