/*
Theme Name:   Philcango Astra Child
Theme URI:    https://philcango.biz
Description:  Philcango International Recruitment Services - Astra Child Theme
Author:       Philcango
Author URI:   https://philcango.biz
Template:     astra
Version:      1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  philcango-astra-child
*/

/* =============================================
   PHILCANGO BRAND DESIGN SYSTEM
   Primary Navy:  #03396c
   Navy Dark:     #022a52
   Gold Accent:   #e8a020
   Light BG:      #f0f6fc
   Body Text:     #1a1a2e
   ============================================= */

/* --- Google Fonts Import --- */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&family=Inter:wght@400;500;600&display=swap');

/* --- Global Reset & Base --- */
*, *::before, *::after { box-sizing: border-box; }

body {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  line-height: 1.7;
  color: #1a1a2e;
  background-color: #ffffff;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  line-height: 1.25;
  color: #03396c;
}

h1 { font-size: clamp(2rem, 5vw, 3rem); }
h2 { font-size: clamp(1.5rem, 3vw, 2.25rem); }
h3 { font-size: clamp(1.15rem, 2vw, 1.5rem); }

p { margin-bottom: 1rem; color: #3a3a5c; }

a { color: #03396c; transition: color 0.2s; }
a:hover { color: #e8a020; }

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

/* --- Header & Navigation --- */
.site-header,
#masthead,
.ast-primary-header-bar,
.ast-above-header,
.ast-masthead-custom-menu-items {
  background-color: #03396c !important;
}

.ast-site-title a,
.site-title a {
  color: #ffffff !important;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: clamp(1.5rem, 3vw, 2.25rem) !important; !important;
  line-height: 1.2;
}
}

.ast-site-title a:hover { color: #e8a020 !important; }

/* Tagline under logo */
.ast-site-header-section .site-description,
.ast-header-custom-item .site-description {
  color: rgba(255,255,255,0.7) !important;
  font-size: 0.75rem;
}

/* Nav links */
.main-navigation a,
.ast-primary-navigation > ul > li > a,
#ast-primary-navigation .menu-item a {
  color: rgba(255,255,255,0.85) !important;
  font-family: 'Inter', sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  transition: color 0.2s;
}

.main-navigation a:hover,
.ast-primary-navigation > ul > li > a:hover,
.ast-primary-navigation > ul > li.current-menu-item > a {
  color: #e8a020 !important;
}

/* Mobile hamburger */
.ast-mobile-menu-trigger span,
.menu-toggle span,
button.ast-mobile-menu-trigger-minimal .mobile-menu-toggle-icon span {
  background-color: #ffffff !important;
}

.ast-mobile-menu-trigger,
.menu-toggle {
  color: #ffffff !important;
}

/* Dropdown menus */
.sub-menu,
.ast-dropdown-active .sub-menu {
  background-color: #022a52 !important;
}
.sub-menu a { color: rgba(255,255,255,0.85) !important; }
.sub-menu a:hover { color: #e8a020 !important; background-color: rgba(255,255,255,0.05) !important; }

/* Sticky header */
.ast-sticky-active .site-header { box-shadow: 0 2px 20px rgba(3,57,108,0.25) !important; }

/* --- Buttons --- */
.ast-btn,
.wp-block-button__link,
.kb-btn,
.button,
input[type="submit"],
button[type="submit"] {
  background-color: #e8a020 !important;
  border-color: #e8a020 !important;
  color: #ffffff !important;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  border-radius: 5px !important;
  padding: 12px 28px !important;
  transition: background-color 0.2s, transform 0.15s !important;
  text-decoration: none !important;
}

.ast-btn:hover,
.wp-block-button__link:hover,
.kb-btn:hover,
button[type="submit"]:hover {
  background-color: #c98a18 !important;
  border-color: #c98a18 !important;
  transform: translateY(-1px);
}

/* Outline / secondary button */
.wp-block-button.is-style-outline .wp-block-button__link {
  background-color: transparent !important;
  border: 2px solid #ffffff !important;
  color: #ffffff !important;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background-color: rgba(255,255,255,0.1) !important;
}

/* --- Footer --- */
.site-footer,
#colophon,
.ast-small-footer,
.ast-site-footer,
.footer-widget-area {
  background-color: #022a52 !important;
  color: rgba(255,255,255,0.75) !important;
}

.site-footer a,
#colophon a,
.footer-widget-area a {
  color: rgba(255,255,255,0.75) !important;
}

.site-footer a:hover,
#colophon a:hover { color: #e8a020 !important; }

.site-footer h2,
.site-footer h3,
.site-footer h4,
.footer-widget-area h2,
.footer-widget-area h3,
.footer-widget-area h4 {
  color: #ffffff !important;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.ast-small-footer-wrap { color: rgba(255,255,255,0.5) !important; font-size: 0.8rem; }

/* --- Hero / Cover Blocks --- */
.wp-block-cover,
.wp-block-cover-image {
  background-color: #03396c !important;
  min-height: 520px;
}

.wp-block-cover .wp-block-cover__inner-container h1,
.wp-block-cover .wp-block-cover__inner-container h2 {
  color: #ffffff !important;
}

/* --- Section Backgrounds --- */
.has-navy-background-color { background-color: #03396c !important; color: #fff !important; }
.has-navy-dark-background-color { background-color: #022a52 !important; color: #fff !important; }
.has-gold-background-color { background-color: #e8a020 !important; color: #fff !important; }
.has-light-background-color { background-color: #f0f6fc !important; }

/* --- Cards & Icon Boxes --- */
.wp-block-group.is-style-card,
.kadence-blocks-card,
.kb-block-card {
  background: #ffffff;
  border-radius: 10px;
  box-shadow: 0 4px 24px rgba(3,57,108,0.08);
  padding: 2rem;
  transition: transform 0.2s, box-shadow 0.2s;
}

.wp-block-group.is-style-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 32px rgba(3,57,108,0.14);
}

/* --- Why Philcango Cards --- */
.philcango-why-card {
  background: #ffffff;
  border: 1px solid #e0eaf4;
  border-radius: 10px;
  padding: 1.5rem;
  text-align: center;
  transition: all 0.2s;
}

.philcango-why-card:hover {
  border-color: #03396c;
  box-shadow: 0 6px 24px rgba(3,57,108,0.12);
  transform: translateY(-3px);
}

.philcango-why-card .why-icon {
  width: 56px; height: 56px;
  background: #f0f6fc;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 1rem;
  font-size: 1.5rem;
  color: #03396c;
}

/* --- Stats Banner --- */
.philcango-stats {
  background: #03396c;
  padding: 3rem 0;
}
.philcango-stats .stat-number {
  font-family: 'Montserrat', sans-serif;
  font-size: 2.5rem;
  font-weight: 700;
  color: #e8a020;
}
.philcango-stats .stat-label {
  color: rgba(255,255,255,0.75);
  font-size: 0.875rem;
  margin-top: 0.25rem;
}

/* --- Process Steps --- */
.philcango-step {
  position: relative;
  padding-left: 3.5rem;
  margin-bottom: 2rem;
}

.philcango-step .step-number {
  position: absolute;
  left: 0; top: 0;
  width: 44px; height: 44px;
  background: #03396c;
  color: #fff;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 1rem;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
}

.philcango-step h3 { color: #03396c; font-size: 1.1rem; margin-bottom: 0.4rem; }
.philcango-step p { color: #3a3a5c; font-size: 0.9rem; margin: 0; }

/* --- Testimonials --- */
.philcango-testimonial {
  background: #f0f6fc;
  border-left: 4px solid #e8a020;
  border-radius: 0 10px 10px 0;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
}

.philcango-testimonial .stars { color: #e8a020; font-size: 1rem; margin-bottom: 0.5rem; }
.philcango-testimonial blockquote { margin: 0; font-style: italic; color: #3a3a5c; }
.philcango-testimonial .author { margin-top: 0.75rem; font-weight: 600; color: #03396c; font-size: 0.875rem; }

/* --- Page Hero Banner (inner pages) --- */
.philcango-page-hero {
  background: linear-gradient(135deg, #03396c 0%, #022a52 100%);
  padding: 5rem 0 4rem;
  text-align: center;
}

.philcango-page-hero h1 {
  color: #ffffff !important;
  margin-bottom: 1rem;
}

.philcango-page-hero p {
  color: rgba(255,255,255,0.8);
  font-size: 1.1rem;
  max-width: 600px;
  margin: 0 auto;
}

/* --- Breadcrumbs --- */
.ast-breadcrumbs-wrapper,
#breadcrumbs { color: rgba(255,255,255,0.6) !important; font-size: 0.8rem; }
.ast-breadcrumbs-wrapper a { color: #e8a020 !important; }

/* --- Forms --- */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
select,
textarea {
  border: 1.5px solid #d0dde8 !important;
  border-radius: 5px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.9rem !important;
  padding: 10px 14px !important;
  transition: border-color 0.2s !important;
  color: #1a1a2e !important;
}

input:focus, select:focus, textarea:focus {
  border-color: #03396c !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(3,57,108,0.1) !important;
}

/* --- WhatsApp Float Button --- */
.philcango-whatsapp-btn {
  position: fixed;
  bottom: 24px;
  right: 24px;
  width: 56px; height: 56px;
  background: #25d366;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 16px rgba(37,211,102,0.4);
  z-index: 9999;
  text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s;
}

.philcango-whatsapp-btn:hover {
  transform: scale(1.1);
  box-shadow: 0 6px 24px rgba(37,211,102,0.5);
}

.philcango-whatsapp-btn svg { width: 28px; height: 28px; fill: #fff; }

/* --- Destination Flags Grid --- */
.philcango-destination {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  text-align: center;
}

.philcango-destination img { width: 100%; height: 200px; object-fit: cover; }
.philcango-destination .dest-label {
  position: absolute; bottom: 0; left: 0; right: 0;
  background: linear-gradient(transparent, rgba(3,57,108,0.85));
  color: #fff;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  padding: 1rem 0.75rem 0.75rem;
}

/* --- Partner Logos --- */
.philcango-partners img {
  filter: grayscale(100%);
  opacity: 0.6;
  transition: all 0.2s;
}
.philcango-partners img:hover { filter: grayscale(0%); opacity: 1; }

/* --- Utility Classes --- */
.text-navy { color: #03396c !important; }
.text-gold { color: #e8a020 !important; }
.text-white { color: #ffffff !important; }
.bg-navy { background-color: #03396c !important; }
.bg-gold { background-color: #e8a020 !important; }
.bg-light { background-color: #f0f6fc !important; }
.section-pad { padding: 5rem 0; }
.section-pad-sm { padding: 3rem 0; }
.rounded-lg { border-radius: 10px; }
.shadow-card { box-shadow: 0 4px 24px rgba(3,57,108,0.08); }

/* --- Responsive --- */
@media (max-width: 768px) {
  h1 { font-size: 1.75rem; }
  h2 { font-size: 1.4rem; }
  .philcango-stats .stat-number { font-size: 2rem; }
  .wp-block-cover { min-height: 420px; }
  .philcango-whatsapp-btn { bottom: 16px; right: 16px; }
}

@media (max-width: 480px) {
  .ast-btn, .wp-block-button__link { padding: 10px 20px !important; font-size: 0.85rem !important; }
}
