/*
Theme Name: Fatima Consultancy Live V37
Theme URI: https://example.com/
Author: Fatima Consultancy
Description: A fully editable block theme for consultancy websites. Edit every page, the header, footer, navigation, templates, colors, fonts and spacing in the WordPress Site Editor, exactly like any standard block theme.
Version: 3.7.0
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: fatima-consultancy
Tags: full-site-editing, block-patterns, custom-colors, custom-logo, editor-style, wide-blocks, translation-ready, blog, portfolio
*/

/* Minimal supplemental styles. Colors, fonts and spacing live in theme.json
   and are editable under Appearance > Editor > Styles. */

html { scroll-behavior: smooth; scroll-padding-top: 92px; }
body { -webkit-font-smoothing: antialiased; }
.wp-site-blocks { overflow-x: clip; }
.wp-site-blocks > * + * { margin-block-start: 0; }

/* Header */
.fc-header { border-bottom: 1px solid var(--wp--preset--color--line); position: relative; z-index: 20; }

/* Eyebrow label with leading rule */
.is-style-eyebrow {
	display: flex; align-items: center; gap: 10px;
	font-size: 0.65rem; font-weight: 700; letter-spacing: 0.17em; text-transform: uppercase;
	color: var(--wp--preset--color--muted);
}
.is-style-eyebrow::before { content: ""; width: 23px; height: 1px; background: currentColor; opacity: 0.6; }

/* Cards */
.fc-card { transition: transform 0.3s ease, background 0.3s ease; }
.fc-card:hover { transform: translateY(-4px); }
.fc-card-dark:hover { background: rgba(255, 255, 255, 0.05); }

/* Pills */
.fc-pill { border: 1px solid #cbd3c9; border-radius: 30px; padding: 0.55rem 0.85rem; font-size: 0.65rem; color: #566963; margin: 0; }

/* Buttons */
.wp-block-button__link { transition: transform 0.25s ease, background 0.25s ease; }
.wp-block-button__link:hover { transform: translateY(-2px); }
.is-style-outline > .wp-block-button__link { background: transparent; color: var(--wp--preset--color--ink); border: 1px solid currentColor; }

/* Images fill their frames in cover-like cards */
.fc-fill img { width: 100%; height: 100%; object-fit: cover; }
.wp-block-image img { height: auto; }

/* Stats strip */
.fc-stats strong { font-family: var(--wp--preset--font-family--manrope); letter-spacing: -0.05em; }

/* Footer */
.fc-footer a { text-decoration: none; }
.fc-footer .wp-block-navigation a { color: #d5dfdb; }

/* Accessibility */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible {
	outline: 3px solid #648679; outline-offset: 3px;
}
::selection { background: var(--wp--preset--color--lime); color: var(--wp--preset--color--ink); }

@media (max-width: 781px) {
	.fc-header { padding-inline: 20px; }
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}

/* Editable service pages, portfolios, team profiles and insight articles. */
.fc-icon { width: 2.8rem; height: 2.8rem; border: 1px solid currentColor; border-radius: 50%; display: inline-grid; place-items: center; color: var(--wp--preset--color--lime); font-size: 1.2rem; }
.fc-image-card { overflow: hidden; background: var(--wp--preset--color--stone); }
.fc-image-card img { display: block; width: 100%; height: 100%; min-height: 240px; object-fit: cover; transition: transform .55s ease; }
.fc-image-card:hover img { transform: scale(1.035); }
.fc-portfolio-card { position: relative; overflow: hidden; background: var(--wp--preset--color--sea); color: #fff; }
.fc-portfolio-card .wp-block-image { margin: 0; }
.fc-portfolio-card .wp-block-image img { display: block; width: 100%; height: 100%; object-fit: cover; aspect-ratio: 4 / 3; }
.fc-portfolio-card .wp-block-group { position: absolute; inset: auto 0 0; padding: 1.25rem; background: linear-gradient(transparent,rgba(13,32,42,.88)); }
.fc-team-card { border: 1px solid var(--wp--preset--color--line); padding: .75rem; }
.fc-team-card .wp-block-image { overflow: hidden; background: var(--wp--preset--color--sage); margin-bottom: 1rem; }
.fc-team-card .wp-block-image img { display: block; width: 100%; aspect-ratio: 4 / 4.7; object-fit: cover; }
.fc-video-card { position: relative; overflow: hidden; background: var(--wp--preset--color--sea); min-height: 290px; }
.fc-video-card .wp-block-image img { width: 100%; height: 100%; min-height: 290px; object-fit: cover; opacity: .82; }
.fc-video-card .wp-block-button { position: absolute; left: 1.25rem; bottom: 1.25rem; }
.fc-video-card .wp-block-button__link { background: var(--wp--preset--color--lime); color: var(--wp--preset--color--ink); }
.fc-chart { display: grid; gap: .85rem; padding: 1.5rem; background: var(--wp--preset--color--stone); }
.fc-chart-row { display: grid; grid-template-columns: 6.5rem 1fr; gap: .8rem; align-items: center; font-size: .75rem; }
.fc-chart-track { height: .65rem; background: #d8ded5; overflow: hidden; }
.fc-chart-track span { display: block; height: 100%; background: var(--wp--preset--color--sea); }
.fc-chart-row:nth-child(2) .fc-chart-track span { background: #66877d; }
.fc-chart-row:nth-child(3) .fc-chart-track span { background: #b6ca83; }
.fc-checklist { list-style: none; padding-left: 0; }
.fc-checklist li { border-bottom: 1px solid var(--wp--preset--color--line); padding: .8rem 0 .8rem 1.8rem; position: relative; }
.fc-checklist li::before { content: "✓"; position: absolute; left: 0; color: #456f5f; font-weight: 700; }
.fc-cv-form { background: #fff; border: 1px solid var(--wp--preset--color--line); padding: clamp(1.25rem, 4vw, 2rem); }
.fc-cv-form label { display: block; font-size: .8rem; font-weight: 600; margin: 0 0 .35rem; }
.fc-cv-form input, .fc-cv-form textarea, .fc-cv-form select { box-sizing: border-box; width: 100%; border: 1px solid #d4dcd3; background: #fff; padding: .75rem; font: inherit; margin-bottom: 1rem; }
.fc-cv-form input[type=file] { padding: .55rem; }
.fc-reveal { opacity: 1; transform: translateY(0); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.75,.2,1); }
.fc-motion-ready .fc-reveal { opacity: 0; transform: translateY(18px); }
.fc-motion-ready .fc-reveal.is-visible { opacity: 1; transform: none; }
.fc-motion-ready .fc-reveal { transition-delay: var(--fc-delay, 0ms); }
.fc-eyebrow { font-size: .65rem; font-weight: 700; letter-spacing: .17em; text-transform: uppercase; color: var(--wp--preset--color--muted); }
.fc-section-rule { border-top: 1px solid var(--wp--preset--color--line); }
.fc-video-note { font-size: .7rem; color: var(--wp--preset--color--muted); }
.fc-article-content { max-width: 760px; margin-inline: auto; }
.fc-article-content h2 { margin-top: 2.5rem; }
.fc-contact-placeholder { border: 1px dashed #9caa9e; padding: 1rem; background: #f2f3ec; }

@media (max-width: 781px) {
	.fc-chart-row { grid-template-columns: 5rem 1fr; }
	.fc-video-card, .fc-video-card .wp-block-image img { min-height: 230px; }
	.fc-header .wp-block-buttons { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.fc-reveal { opacity: 1; transform: none; transition: none; }
	.fc-image-card img { transition: none; }
}

.fc-digital-mark-icon { width: 3.25rem; margin: 0 0 1.1rem; }
.fc-digital-mark-icon img { display:block; width:100%; height:auto; }


/* Premium homepage art direction, client wordmarks and editable testimonials. */
.fc-home-hero { padding-top: clamp(3rem, 7vw, 6rem) !important; padding-bottom: clamp(3rem, 7vw, 6rem) !important; }
.fc-home-photo { margin: 0; overflow: hidden; border-radius: 3px; background: #e8e6df; box-shadow: 0 22px 60px rgba(13,32,42,.12); }
.fc-home-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.fc-home-hero-photo img { aspect-ratio: .98 / 1; min-height: 390px; }
.fc-home-approach-photo img { aspect-ratio: .92 / 1; min-height: 360px; }
.fc-client-strip { border-top: 1px solid var(--wp--preset--color--line); border-bottom: 1px solid var(--wp--preset--color--line); background: #fbfaf7; }
.fc-client-strip .is-style-eyebrow { justify-content: center; margin-bottom: 1.5rem; }
.fc-client-mark { font-family: var(--wp--preset--font-family--manrope); font-size: clamp(.82rem,1.5vw,1.05rem); font-weight: 700; letter-spacing: -.035em; color: #51615d; margin: 0; line-height: 1.25; }
.fc-testimonials { background: #f2f1eb; }
.fc-testimonial-grid { margin-top: 2rem; gap: 1rem; }
.fc-testimonial-card { background: #fff; border: 1px solid #e3e3dc; padding: 1.4rem; min-height: 190px; box-shadow: 0 12px 35px rgba(13,32,42,.045); }
.fc-quote-mark { color: #9aaa8b; font-family: Georgia,serif; font-size: 2.8rem; line-height: .7; margin: .15rem 0 .65rem; }
.fc-quote-placeholder { color: #68746f; font-size: .86rem; min-height: 3.6rem; }
.fc-quote-name { border-top: 1px solid #e8e8e1; padding-top: .8rem; margin: .8rem 0 0; font-size: .75rem; font-weight: 700; letter-spacing: .04em; }
@media (max-width: 781px) { .fc-home-hero-photo img,.fc-home-approach-photo img { aspect-ratio: 1.12 / 1; min-height: 280px; } .fc-client-marks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.2rem; } .fc-client-marks .wp-block-column { flex-basis:auto !important; } .fc-testimonial-grid { display:grid; grid-template-columns:1fr 1fr; } .fc-testimonial-grid .wp-block-column { flex-basis:auto !important; } }
@media (max-width: 480px) { .fc-testimonial-grid { grid-template-columns:1fr; } }

/* Brand asset strip and tap-to-call styling. */
.fc-client-marks { gap: clamp(.8rem,2.2vw,1.5rem); }
.fc-client-marks .wp-block-column { min-width: 0; }
.fc-client-logo { height: 76px; margin: 0; display:flex; align-items:center; justify-content:center; }
.fc-client-logo img { display:block; width:100%; max-width: 165px; max-height: 70px; object-fit:contain; }
.fc-client-mcd img { max-width:78px; }
.fc-client-dhcc img { max-width:175px; }
.fc-client-neom img { max-width:64px; max-height:58px; }
.fc-client-far img { max-width:140px; max-height:72px; }
.fc-client-logo-lockup { display:flex; flex-direction:column; align-items:center; gap:0; }
.fc-client-caption { margin:0; font-size:.68rem; font-weight:700; letter-spacing:.1em; color:#42534e; }
.fc-client-fd { font-family:var(--wp--preset--font-family--manrope); font-size:1rem; letter-spacing:.08em; font-weight:800; line-height:1.1; color:#283b43; margin:0; }
.fc-client-fd span { display:block; margin-top:.25rem; font-size:.55rem; letter-spacing:.19em; font-weight:700; }
.fc-phone-button .wp-block-button__link { font-size:.72rem; padding:.72rem .9rem; white-space:nowrap; }
.fc-footer a[href^="tel:"] { display:inline-block; margin-top:.45rem; font-weight:700; }
.fc-quote-placeholder { color:#68746f; }
@media(max-width:1000px) { .fc-phone-button { display:none; } }
@media(max-width:781px) { .fc-client-logo { height:70px; } .fc-client-mcd img { max-width:66px; } .fc-client-dhcc img { max-width:140px; } .fc-client-far img { max-width:125px; } }
