/*!
Theme Name: foure-consultants
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: foure-consultants
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.

*/
/* ===== Reset ===== */
*,
*::before,
*::after { box-sizing: border-box;
  margin:0; padding:0; }

/* ===== Base ===== */
html { font-size:20px; -webkit-text-size-adjust:100%; overflow-x:hidden; }
body { font-family:"Lexend Deca", sans-serif; line-height:1.7; color:#000000; background-color:#fff; overflow-x:hidden; }

/* ===== Elements ===== */
img { max-width:100%; height:auto; display:block; }
a { color:inherit; text-decoration: none; }
ul, ol { padding-left:18px; margin-bottom:30px; }
button,
input,
textarea,
select { font:inherit; }

/* ===== Layout ===== */
.container { width:100%; max-width:1240px; margin:0 auto; padding:0 15px; }
.page-common .page { width:100%; max-width:1200px; margin:60px auto; padding:0 15px; }
.w100 { width:100%; }

/* ===== Basic Typography ===== */
h1 { font-size:2.75rem; line-height:1.2; margin-bottom:10px; font-weight:600; }
h2 { font-size:2rem; line-height:1.2; margin-bottom:10px; font-weight:600; }
h3 { font-size:1.5rem; line-height:1.2; margin-bottom:10px; font-weight:600; }
h4 { font-size:1.3rem; line-height:1.2; margin-bottom:10px; font-weight:600; }
h5 { font-size:1.2rem; line-height:1.2; margin-bottom:10px; font-weight:600; }
h6 { font-size:1rem; line-height:1.2; margin-bottom:10px; font-weight:400; }
p { margin-bottom:12px; font-size:20px; line-height:1.5; }
.title-size-140 { font-size:140px; line-height:1.1; font-weight:800; }
.title-size-120 { font-size:120px; line-height:1.1; }
.title-size-80 { font-size:80px; line-height:1.1; }
.des-size-24 { font-size:24px; line-height:1.3; }
h1.entry-title { font-size:2rem; }
.weight-normal { font-weight:400; }

/* ===== Utility ===== */
.primary-color { color:#EB1716; }
.extra-bold { font-weight:800; }
.text-center { text-align:center; }
.max-800 { max-width:800px; margin:0 auto; }
.max-600 { max-width:600px; margin:0 auto; }
.ptb-80 { padding:80px 0; }
.p-t-20 { padding-top:20px; }
.p-t-32 { padding-top:32px; }
.p-b-32 { padding-bottom:32px; }
.p-t-60 { padding-top:60px; }
.p-t-70 { padding-top:70px; }
.m-t-0 { margin-top:0 !important; }
.p-b-0 { padding-bottom:0 !important; }
.m-t-100 { margin-top:100px; }
.m-t-50 { margin-top:50px; }
.mb-40 { margin-bottom:40px; }
.mb-60 { margin-bottom:60px; }
.mt-60 { margin-top:60px; }
.sec-space { padding:100px 0;}
.grid-2 { display:grid; grid-template-columns: repeat(2, 1fr); }
.grid-3 { display:grid; grid-template-columns: repeat(3, 1fr); }
.grid-4 { display:grid; grid-template-columns: repeat(4, 1fr); }
.flexbox { display:flex; } 
.flexbox.col-2 > div { width:100%; } 
.gap-10 { gap:10px; }
.gap-30 { gap:30px; }
.gap-40 { gap:40px; }
.gap-60 { gap:60px; }
.margin-auto { margin:auto; }

/* ===== Common Css ===== */
.gra-bg { background: linear-gradient(to bottom, rgba(200, 227, 255, 0.95) 0%, rgba(200, 227, 255, 0.6) 40%, rgba(200, 227, 255, 0.05) 85%, rgba(200, 227, 255, 0) 100%);}

/* ===== Button ==== */
.theme-btn { background:#EB1716; color:#fff; padding:14px 24px; border-radius:12px; text-align:center; }
.view-more { font-weight:500; }
.cta-btn { display:inline-block; padding:12px 28px; background:#fff; color:#d60000; border-radius:12px; text-decoration:none; transition:0.3s ease; }
.cta-btn:hover { background:#f5f5f5; transform: translateY(-2px); }

/* ===== HEADER ===== */
#primary-menu { margin-bottom:0; }
.entry-header { margin-bottom:30px; }
.site-header { background:#fff; border-bottom:1px solid #eee; }
.header-inner { max-width:1920px; margin:0 auto; padding:10px 15px; display:flex; align-items:center; justify-content:space-between; }
.site-branding img { max-width:50px; }
.custom-logo-link + .site-text { display:none; }
.desktop-menu ul { display:flex; gap:5px; align-items:center; }
.desktop-menu li { list-style:none; }
.desktop-menu a { text-decoration:none; color:#000; font-size:14px; padding:3px 14px; border-radius:4px;
background-color:transparent; transition:background-color 0.25s ease, color 0.25s ease, transform 0.2s ease; transition-delay:0.05s; display:inline-block; }
.menu-toggle { display:none; font-size:26px; background:none; border:none; cursor:pointer; }
.menu-wrapper { display:none; }

/* ==== GSAP Animation CSS */
.animate-up,
.animate-left,
.animate-right,
.animate-scale { opacity: 0; will-change: transform, opacity; }
.animate-up { transform: translateY(50px); }
.animate-left { transform: translateX(-60px); }
.animate-right { transform: translateX(60px); }
.animate-scale { transform: scale(0.8); }

/* ===== Homepage ===== */
.small-title { background:#EB171633; padding:10px 20px; border-radius:12px; display: inline-block; }

/* Counter Section */
.stats-section { padding:0 0 120px; text-align:center; }
.stats-wrapper { display:flex; justify-content:center; align-items:center; gap:40px; }
.stat-item { min-width:150px; }
.stat-item h2 { font-size:60px; color:#e60000; }
.divider { width:2px; height:50px; background:#ccc; }

/* Single Post */
.relatedpost-card img { border-radius:12px; }
.post-thumbnail img { border-radius:40px; }
.nav-links{ display:flex; justify-content:space-between; gap:20px; max-width:840px; align-items:center; margin:40px auto 0; padding:0 20px; }
.pagination { text-align:center; padding:60px 20px 0; }

/* Privacy Policy Page */
.page-id-97 .entry-title { text-align:center; }
.pp-content{ max-width:700px; margin:auto; }
.pp-content p,
.pp-content ul,
.pp-content ol { font-size:16px; line-height:1.3; }

/* Portfolio Section */
.entry-content a { text-decoration:underline; }
.career-single .entry-content p { font-size:18px; }
.entry-content a:hover { color:#EB1716; } 
article.case-study,
article.news,
article.career { max-width:840px; margin:0 auto; padding:50px 24px; }
article.case-study .post-thumbnail,
article.news .post-thumbnail { margin-bottom:40px; }
.case-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:25px; }
.case-card{ position:relative; border-radius:30px; overflow:hidden; cursor:pointer;
  transition:all 0.4s ease; border:4px solid rgba(255,255,255,0); box-shadow:0 5px 10px rgba(0,0,0,0.2); }
.case-card .image { position:relative; overflow:hidden; }
.case-card .image img { width: 100%; height:570px; object-fit:cover; transition:transform 0.6s ease; }
.case-card.news-card .image img { height:400px; }
.case-card::after { content: ""; position:absolute; inset:0; z-index:1; }
.case-card .content { position:absolute; left:0; right:0; z-index:2; top:0; padding:20px; background: linear-gradient( to bottom, rgba(200, 227, 255, 0.95) 0%, rgba(200, 227, 255, 0.6) 40%,
    rgba(200, 227, 255, 0.05) 85%, rgba(200, 227, 255, 0) 100% );
  backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); }
.tag { display:inline-block; background:#000; color: #fff; font-size:12px; padding:6px 12px; border-radius:6px; margin-bottom:10px; text-transform:uppercase; }
.case-card:hover .image img { transform:scale(1.2); }
.case-card:hover { border:4px solid #ff3b3b; box-shadow:0 10px 25px rgba(0,0,0,0.3); }
.mobile-cta { display:none; }
.cta-section { position:relative; width:100%; max-width:1200px; margin:80px auto; border-radius:20px; overflow:hidden; background-image: url('/wp-content/uploads/2026/04/road-parallex.webp'); background-size:cover; background-position:center; background-attachment:fixed; }
.cta-section::before { content: ""; position:absolute; inset: 0; background:rgba(220, 0, 0, 0.85); z-index:1; }
.cta-content { position:relative; z-index:2; height:100%; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:20px; color:#fff; }

/* ====== Contact Page ===== */
.cdivider { width:141px; height:10px; background:#e53935; margin:25px 0; }
.info-item { display:flex; gap:20px; }
.icon-class { position:relative; top:5px; min-width:18px; }
.col-2 iframe { width:100%; }

/* ===== Careers Page ===== */
/* Card Style */
.benefit-card { background:#f4f4f4; padding:20px; border-radius:10px; position:relative; min-height:120px; display:flex; align-items:flex-start; }
.benefit-card::before { content:""; position:absolute; top:-2px; left:10px; right:10px; height:6px; border-top:2px solid #EB1716; border-radius:10px 10px 0 0; }

/* ======== Footer ======== */
.site-footer { background:#0f0f0f; color:#ccc; padding:100px 0 0; }
.footer-inner { display:flex; justify-content:space-between; gap:40px; }
.footer-col { min-width:250px; }
.footer-menu-list { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(2, 1fr); gap:10px 40px; }
.footer-menu-list li { list-style:none; }
.footer-menu-list a { color:#ccc; text-decoration:none; transition:0.3s; }
.footer-menu-list a:hover { color:#fff; }
.footer-title { margin-bottom:15px; color:#ccc; }
.social-icons { display:flex; gap:10px; }
.icon { width:36px; height:36px; background:#fff; color:#000; border-radius:50%; display:flex; align-items:center;
  justify-content:center; text-decoration:none; font-size:14px; transition:0.3s; }
.icon:hover { background:#ddd; }
.footer-bottom { border-top:1px solid #444; text-align:center; padding:20px 0 15px; color:#aaa; margin-top:80px; }

/* Responsive */
@media (max-width:1600px) {
.title-size-140,
.title-size-120 { font-size:90px; }
}
@media (max-width:1280px) {
.title-size-140,
.title-size-120 { font-size:70px; }
}
@media (max-width:992px) {
 .stats-section { padding:0 0 20px; }
}
@media(min-width:1080px){
.site-header { position:fixed; top:0; left:0; width:100%; z-index:9999; transform:translateY(-100%); transition:transform 0.35s ease, box-shadow 0.3s ease;
  will-change:transform; }
.site-header.is-visible { transform: translateY(0); }
.site-header.is-visible.scrolled { box-shadow: 0 8px 20px rgba(0,0,0,0.08);}
body { padding-top:80px; }
   .main-navigation ul li a:hover { background-color:#e60023; color:#fff; }
   .main-navigation ul li.current-menu-item > a,
   .main-navigation ul li.current_page_item > a,
   .main-navigation ul li.current-menu-ancestor > a,
   .main-navigation ul li.active > a { background-color:#e60023; color:#fff; }
}
@media (max-width:1080px) {
.main-navigation ul li a:hover { color:#e60023; }
.main-navigation ul li.current-menu-item > a,
.main-navigation ul li.current_page_item > a,
.main-navigation ul li.current-menu-ancestor > a,
.main-navigation ul li.active > a { color:#e60023; }
.site-branding img { max-width:46px; }
.desktop-menu { display:none; }
.menu-toggle { display:block; }
.menu-wrapper { display:block; position:fixed; top:0; right: -100%; width:85%; max-width:320px;height:100%; background:#fff; padding:20px; transition:right 0.5s ease; z-index:999; overflow-y:auto; }
.menu-wrapper.active { right:0; }
.menu-close { font-size:22px; border:none; background:none; float:right; cursor:pointer; }
.menu-wrapper ul { margin-top:50px; padding:0; list-style-type:none; }
.menu-wrapper li { margin-bottom:20px; }
.menu-wrapper a { font-size:18px; color:#000; text-decoration:none; }
body.menu-open::before { content: ""; position:fixed; inset:0; background:rgba(0,0,0,0.6); z-index:998;}
.case-grid{ grid-template-columns:repeat(2, 1fr);}
.grid-3,
.grid-4 { grid-template-columns: repeat(2, 1fr); }

}
@media (max-width: 768px) {
.stats-wrapper { flex-direction:column; }
.divider { width:50px; height:1px; }
.case-card .content { height:100%; backdrop-filter: blur(0px); -webkit-backdrop-filter: blur(0); border-radius:12px; }
.mobile-cta { display:block; position:absolute; bottom:0; left:0; right:0; background:#ff1e1e; color:#fff; text-align:center; padding:20px 16px; font-weight:600; z-index:5; transition: all 0.3s ease; }
.cta-section { max-width:94%; }
h1 { font-size:2rem; }
h2 { font-size:1.5rem; }
h3 { font-size:1.2rem; }
h4 { font-size:1.1rem; }
h5 { font-size:1rem; }
h6 { font-size:0.8rem; }
p { font-size:18px; }
.title-size-120 { font-size:45px; }
.title-size-80 { font-size:40px; }
.des-size-24 { font-size:20px; }
h1.entry-title { font-size:1.5rem; }
.m-t-100 { margin-top:60px; }
.sec-space {padding:50px 0; }
.theme-btn,
.cta-btn,
.mobile-cta { font-size:16px; }
.footer-inner {flex-direction:column; }
.site-footer { padding:50px 0 0; }
.footer-menu-list a { font-size:16px; }
.footer-bottom {margin-top:40px; }
.flexbox { flex-direction:column; } 
}
@media (max-width:640px) {
.case-grid,
.grid-2,
.grid-3,
.grid-4 { grid-template-columns:repeat(1, 1fr);}
}

@media (max-width:480px) {
.footer-menu-list { grid-template-columns:repeat(1, 1fr); }
}
@media (max-width:360px) {
.title-size-140,
.title-size-120 { font-size:50px; }
}

