/*
Theme Name: Amana Al Khaleej Contracting
Theme URI: https://amanakc.com/
Author: rahi
Author URI: https://amanakc.com/
Description: Custom heavy equipment rental theme for Amana Al Khaleej Contracting. Includes a one-click page builder for Home, Equipment, service pages, About, Contact and a blog, plus full Customizer control over colours, fonts, hero, business details and social links.
Version: 1.0.0
Requires at least: 5.6
Tested up to: 6.6
Requires PHP: 7.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: amana-heavy-equipment
Tags: business, custom-colors, custom-logo, custom-menu, featured-images, full-width-template, blog, translation-ready
*/

/* ---------------------------------------------------------
   1. Tokens
--------------------------------------------------------- */
:root {
	--aak-primary: #e85d3a;
	--aak-primary-dark: #c74526;
	--aak-steel: #171a1d;
	--aak-steel-soft: #23282d;
	--aak-topbar: #101315;
	--aak-header: #171a1d;
	--aak-footer: #101315;
	--aak-body: #3f464d;
	--aak-heading: #14181b;
	--aak-line: #e3e6e8;
	--aak-surface: #f6f7f8;
	--aak-font-heading: "Bebas Neue", Impact, "Arial Narrow", sans-serif;
	--aak-font-body: "Barlow", "Helvetica Neue", Arial, sans-serif;
	--aak-body-size: 16px;
	--aak-radius: 4px;
	--aak-max: 1200px;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	background: #fff;
	color: var(--aak-body);
	font-family: var(--aak-font-body);
	font-size: var(--aak-body-size);
	line-height: 1.7;
}

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

a {
	color: var(--aak-primary);
	text-decoration: none;
}

a:hover,
a:focus {
	color: var(--aak-primary-dark);
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--aak-font-heading);
	color: var(--aak-heading);
	line-height: 1.05;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	margin: 0 0 0.5em;
	font-weight: 400;
}

h1 { font-size: clamp(2.4rem, 6vw, 4.5rem); }
h2 { font-size: clamp(1.9rem, 4vw, 3rem); }
h3 { font-size: clamp(1.4rem, 2.6vw, 1.9rem); }
h4 { font-size: 1.3rem; }

p { margin: 0 0 1.1em; }

.aak-wrap {
	max-width: var(--aak-max);
	margin: 0 auto;
	padding: 0 20px;
}

.aak-label {
	display: inline-block;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--aak-primary);
	margin-bottom: 14px;
}

.aak-screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	white-space: nowrap;
}

.aak-skip-link:focus {
	position: fixed;
	top: 10px;
	left: 10px;
	z-index: 9999;
	background: #fff;
	padding: 10px 16px;
	width: auto;
	height: auto;
	clip: auto;
}

/* ---------------------------------------------------------
   2. Buttons
--------------------------------------------------------- */
.aak-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 26px;
	font-family: var(--aak-font-body);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	border: 2px solid var(--aak-primary);
	background: var(--aak-primary);
	color: #fff;
	border-radius: var(--aak-radius);
	cursor: pointer;
	transition: background .18s ease, color .18s ease, border-color .18s ease;
}

.aak-btn:hover,
.aak-btn:focus {
	background: var(--aak-primary-dark);
	border-color: var(--aak-primary-dark);
	color: #fff;
}

.aak-btn-ghost {
	background: transparent;
	color: #fff;
	border-color: rgba(255, 255, 255, .45);
}

.aak-btn-ghost:hover,
.aak-btn-ghost:focus {
	background: #fff;
	border-color: #fff;
	color: var(--aak-steel);
}

.aak-btn-dark {
	background: var(--aak-steel);
	border-color: var(--aak-steel);
	color: #fff;
}

.aak-btn-dark:hover {
	background: #000;
	border-color: #000;
}

/* ---------------------------------------------------------
   3. Header
--------------------------------------------------------- */
.aak-topbar {
	background: var(--aak-topbar);
	color: rgba(255, 255, 255, .72);
	font-size: 0.8rem;
}

.aak-topbar a { color: rgba(255, 255, 255, .72); }
.aak-topbar a:hover { color: #fff; }

.aak-topbar-inner {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	align-items: center;
	justify-content: space-between;
	padding: 9px 20px;
	max-width: var(--aak-max);
	margin: 0 auto;
}

.aak-topbar-group {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	align-items: center;
}

.aak-social a {
	display: inline-block;
	margin-left: 12px;
}

.aak-header {
	background: var(--aak-header);
	border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.aak-header.is-sticky {
	position: sticky;
	top: 0;
	z-index: 500;
}

.aak-header-inner {
	max-width: var(--aak-max);
	margin: 0 auto;
	padding: 0 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	min-height: var(--aak-header-height, 86px);
}

.aak-brand {
	display: flex;
	align-items: center;
	gap: 12px;
	color: #fff;
}

.aak-brand img {
	max-height: 54px;
	width: auto;
}

.aak-brand-mark {
	width: 46px;
	height: 46px;
	flex: none;
	display: grid;
	place-items: center;
	background: var(--aak-primary);
	color: #fff;
	font-family: var(--aak-font-heading);
	font-size: 1.6rem;
	border-radius: var(--aak-radius);
}

.aak-brand-name {
	font-family: var(--aak-font-heading);
	font-size: 1.45rem;
	line-height: 1;
	text-transform: uppercase;
	color: #fff;
	letter-spacing: 0.04em;
}

.aak-brand-tagline {
	display: block;
	font-family: var(--aak-font-body);
	font-size: 0.66rem;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .55);
	margin-top: 4px;
}

.aak-nav ul {
	display: flex;
	align-items: center;
	gap: 26px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.aak-nav a {
	color: rgba(255, 255, 255, .82);
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.aak-nav a:hover,
.aak-nav .current-menu-item > a,
.aak-nav .current_page_item > a {
	color: var(--aak-primary);
}

.aak-nav li { position: relative; }

.aak-nav .sub-menu {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 230px;
	background: var(--aak-steel-soft);
	padding: 10px 0;
	flex-direction: column;
	gap: 0;
	z-index: 600;
	box-shadow: 0 18px 40px rgba(0, 0, 0, .35);
}

.aak-nav li:hover > .sub-menu,
.aak-nav li:focus-within > .sub-menu {
	display: flex;
}

.aak-nav .sub-menu a {
	display: block;
	padding: 9px 20px;
	letter-spacing: 0.06em;
}

.aak-header-actions {
	display: flex;
	align-items: center;
	gap: 16px;
}

.aak-header-phone {
	color: #fff;
	font-family: var(--aak-font-heading);
	font-size: 1.35rem;
	letter-spacing: 0.04em;
	white-space: nowrap;
}

.aak-header-phone span {
	display: block;
	font-family: var(--aak-font-body);
	font-size: 0.62rem;
	letter-spacing: 0.22em;
	color: rgba(255, 255, 255, .5);
	text-transform: uppercase;
}

.aak-burger {
	display: none;
	background: transparent;
	border: 1px solid rgba(255, 255, 255, .3);
	border-radius: var(--aak-radius);
	padding: 10px 12px;
	cursor: pointer;
}

.aak-burger span {
	display: block;
	width: 22px;
	height: 2px;
	background: #fff;
	margin: 4px 0;
}

@media (max-width: 960px) {
	.aak-burger { display: block; }
	.aak-nav,
	.aak-header-phone { display: none; }
	.aak-header.is-open .aak-nav {
		display: block;
		position: absolute;
		left: 0;
		right: 0;
		background: var(--aak-steel-soft);
		padding: 16px 20px 22px;
		box-shadow: 0 22px 40px rgba(0, 0, 0, .35);
	}
	.aak-header { position: relative; }
	.aak-header.is-open .aak-nav ul {
		flex-direction: column;
		align-items: flex-start;
		gap: 14px;
	}
	.aak-header.is-open .aak-nav .sub-menu {
		display: flex;
		position: static;
		box-shadow: none;
		background: transparent;
		padding: 8px 0 0 14px;
	}
}

/* ---------------------------------------------------------
   4. Hero + inner hero
--------------------------------------------------------- */
.aak-hero {
	position: relative;
	background: var(--aak-steel);
	color: #fff;
	overflow: hidden;
}

.aak-hero-bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.aak-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(16, 19, 21, .92) 0%, rgba(16, 19, 21, .72) 60%, rgba(16, 19, 21, .55) 100%);
}

.aak-hero-inner {
	position: relative;
	z-index: 2;
	max-width: var(--aak-max);
	margin: 0 auto;
	padding: 20px;
	min-height: var(--aak-hero-height, 640px);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.aak-hero h1 {
	color: #fff;
	max-width: 900px;
	margin-bottom: 20px;
}

.aak-hero p {
	max-width: 620px;
	color: rgba(255, 255, 255, .78);
	font-size: 1.05rem;
}

.aak-hero-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 14px;
}

.aak-page-hero {
	background: var(--aak-steel);
	color: #fff;
	position: relative;
	overflow: hidden;
}

.aak-page-hero .aak-hero-bg { opacity: .35; }

.aak-page-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(16, 19, 21, .7);
}

.aak-page-hero-inner {
	position: relative;
	z-index: 2;
	max-width: var(--aak-max);
	margin: 0 auto;
	padding: 78px 20px;
}

.aak-page-hero h1 { color: #fff; margin-bottom: 12px; }
.aak-page-hero p { color: rgba(255, 255, 255, .75); max-width: 640px; margin: 0; }

.aak-breadcrumb {
	margin-top: 18px;
	font-size: 0.78rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .55);
}

.aak-breadcrumb a { color: rgba(255, 255, 255, .8); }

/* ---------------------------------------------------------
   5. Sections + grids
--------------------------------------------------------- */
.aak-section { padding: 84px 0; }
.aak-section-tight { padding: 56px 0; }
.aak-section-alt { background: var(--aak-surface); }
.aak-section-dark { background: var(--aak-steel); color: rgba(255, 255, 255, .78); }
.aak-section-dark h2,
.aak-section-dark h3 { color: #fff; }

.aak-section-head { max-width: 720px; margin-bottom: 44px; }
.aak-section-head p { margin-bottom: 0; }
.aak-center { text-align: center; margin-left: auto; margin-right: auto; }

.aak-grid { display: grid; gap: 26px; }
.aak-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.aak-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.aak-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

@media (max-width: 960px) {
	.aak-grid-3, .aak-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
	.aak-grid-2, .aak-grid-3, .aak-grid-4 { grid-template-columns: minmax(0, 1fr); }
	.aak-section { padding: 58px 0; }
}

.aak-split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 46px;
	align-items: center;
}

@media (max-width: 900px) {
	.aak-split { grid-template-columns: minmax(0, 1fr); }
}

/* Stats */
.aak-stats {
	background: var(--aak-primary);
	color: #fff;
}

.aak-stats .aak-grid { gap: 20px; }

.aak-stat {
	padding: 26px 10px;
	text-align: center;
}

.aak-stat strong {
	display: block;
	font-family: var(--aak-font-heading);
	font-size: 2.9rem;
	line-height: 1;
}

.aak-stat span {
	display: block;
	margin-top: 8px;
	font-size: 0.74rem;
	font-weight: 600;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .85);
}

/* Cards */
.aak-card {
	background: #fff;
	border: 1px solid var(--aak-line);
	border-radius: var(--aak-radius);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: transform .2s ease, box-shadow .2s ease;
}

.aak-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 38px rgba(20, 24, 27, .12);
}

.aak-card-media {
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: var(--aak-surface);
}

.aak-card-media img { width: 100%; height: 100%; object-fit: cover; }

.aak-card-body { padding: 24px; display: flex; flex-direction: column; flex: 1; }
.aak-card-body h3 { margin-bottom: 10px; }
.aak-card-body p { flex: 1; }

.aak-card-link {
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.aak-feature {
	padding: 30px 26px;
	background: #fff;
	border: 1px solid var(--aak-line);
	border-top: 3px solid var(--aak-primary);
	border-radius: var(--aak-radius);
}

.aak-feature h3 { font-size: 1.3rem; }
.aak-feature p { margin-bottom: 0; }

/* Lists */
.aak-check { list-style: none; margin: 0 0 26px; padding: 0; }

.aak-check li {
	position: relative;
	padding-left: 30px;
	margin-bottom: 12px;
}

.aak-check li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 9px;
	width: 9px;
	height: 9px;
	background: var(--aak-primary);
	transform: rotate(45deg);
}

.aak-linklist { list-style: none; margin: 0; padding: 0; }

.aak-linklist li { border-bottom: 1px solid var(--aak-line); }
.aak-linklist li:last-child { border-bottom: 0; }

.aak-linklist a {
	display: block;
	padding: 12px 0;
	color: var(--aak-heading);
	font-weight: 600;
}

.aak-linklist a:hover { color: var(--aak-primary); }

/* Testimonials */
.aak-quote {
	background: #fff;
	border: 1px solid var(--aak-line);
	border-radius: var(--aak-radius);
	padding: 30px 26px;
}

.aak-quote p { font-style: italic; }

.aak-quote cite {
	display: block;
	font-style: normal;
	font-weight: 700;
	color: var(--aak-heading);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-size: 0.8rem;
}

/* Accordion */
.aak-accordion { border: 1px solid var(--aak-line); border-radius: var(--aak-radius); overflow: hidden; }
.aak-accordion-item + .aak-accordion-item { border-top: 1px solid var(--aak-line); }

.aak-accordion-trigger {
	width: 100%;
	text-align: left;
	background: #fff;
	border: 0;
	padding: 18px 52px 18px 20px;
	font-family: var(--aak-font-body);
	font-size: 1rem;
	font-weight: 700;
	color: var(--aak-heading);
	cursor: pointer;
	position: relative;
}

.aak-accordion-trigger::after {
	content: "+";
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.4rem;
	color: var(--aak-primary);
	line-height: 1;
}

.aak-accordion-item.is-open .aak-accordion-trigger::after { content: "\2013"; }

.aak-accordion-panel { display: none; padding: 0 20px 20px; }
.aak-accordion-item.is-open .aak-accordion-panel { display: block; }

/* Contact / forms */
.aak-form-card {
	background: #fff;
	border: 1px solid var(--aak-line);
	border-radius: var(--aak-radius);
	padding: 30px;
}

.aak-field { margin-bottom: 16px; }

.aak-field label {
	display: block;
	font-size: 0.74rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--aak-heading);
	margin-bottom: 6px;
}

.aak-field input,
.aak-field select,
.aak-field textarea {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--aak-line);
	border-radius: var(--aak-radius);
	font-family: inherit;
	font-size: 0.95rem;
	color: var(--aak-heading);
	background: #fff;
}

.aak-field input:focus,
.aak-field select:focus,
.aak-field textarea:focus {
	outline: 2px solid var(--aak-primary);
	outline-offset: 1px;
}

.aak-notice {
	padding: 14px 16px;
	border-radius: var(--aak-radius);
	margin-bottom: 18px;
	font-weight: 600;
}

.aak-notice-ok { background: #e7f6ec; color: #1c6b38; }
.aak-notice-err { background: #fdeaea; color: #9c2323; }

.aak-info-box {
	background: var(--aak-steel);
	color: rgba(255, 255, 255, .8);
	border-radius: var(--aak-radius);
	padding: 28px 26px;
}

.aak-info-box h3, .aak-info-box h4 { color: #fff; }
.aak-info-box a { color: #fff; }

.aak-hours { width: 100%; border-collapse: collapse; font-size: 0.92rem; }
.aak-hours th, .aak-hours td { text-align: left; padding: 8px 0; border-bottom: 1px solid var(--aak-line); }
.aak-hours tr:last-child th, .aak-hours tr:last-child td { border-bottom: 0; }
.aak-hours td { text-align: right; font-weight: 600; color: var(--aak-heading); }

.aak-map iframe { width: 100%; height: 360px; border: 0; display: block; border-radius: var(--aak-radius); }

.aak-map-placeholder {
	background: var(--aak-surface);
	border: 1px dashed var(--aak-line);
	border-radius: var(--aak-radius);
	padding: 60px 20px;
	text-align: center;
}

/* CTA band */
.aak-cta {
	background: var(--aak-primary);
	color: #fff;
}

.aak-cta-inner {
	max-width: var(--aak-max);
	margin: 0 auto;
	padding: 56px 20px;
	display: flex;
	flex-wrap: wrap;
	gap: 26px;
	align-items: center;
	justify-content: space-between;
}

.aak-cta h2 { color: #fff; margin-bottom: 8px; }
.aak-cta p { margin: 0; color: rgba(255, 255, 255, .88); max-width: 620px; }

.aak-cta .aak-btn {
	background: #fff;
	border-color: #fff;
	color: var(--aak-primary);
}

.aak-cta .aak-btn:hover { background: var(--aak-steel); border-color: var(--aak-steel); color: #fff; }

/* ---------------------------------------------------------
   6. Content, blog, sidebar
--------------------------------------------------------- */
.aak-layout { display: grid; gap: 46px; grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr); }
.aak-layout-full { grid-template-columns: minmax(0, 1fr); }

@media (max-width: 960px) {
	.aak-layout { grid-template-columns: minmax(0, 1fr); }
}

.aak-entry img { border-radius: var(--aak-radius); }
.aak-entry ul, .aak-entry ol { padding-left: 20px; }
.aak-entry blockquote {
	margin: 0 0 1.2em;
	padding: 4px 0 4px 22px;
	border-left: 3px solid var(--aak-primary);
	font-style: italic;
}

.aak-meta {
	font-size: 0.78rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #7c848b;
	margin-bottom: 14px;
}

.aak-post-card { margin-bottom: 40px; padding-bottom: 40px; border-bottom: 1px solid var(--aak-line); }
.aak-post-card:last-child { border-bottom: 0; }
.aak-post-card h2 { font-size: clamp(1.6rem, 3vw, 2.2rem); }
.aak-post-card img { margin-bottom: 18px; border-radius: var(--aak-radius); }

.aak-pagination { display: flex; gap: 10px; flex-wrap: wrap; }
.aak-pagination .page-numbers {
	display: inline-block;
	padding: 9px 15px;
	border: 1px solid var(--aak-line);
	border-radius: var(--aak-radius);
	color: var(--aak-heading);
	font-weight: 600;
}
.aak-pagination .page-numbers.current,
.aak-pagination .page-numbers:hover { background: var(--aak-primary); border-color: var(--aak-primary); color: #fff; }

.aak-sidebar .widget {
	background: #fff;
	border: 1px solid var(--aak-line);
	border-radius: var(--aak-radius);
	padding: 24px;
	margin-bottom: 26px;
}

.aak-sidebar .widget-title { font-size: 1.2rem; }
.aak-sidebar ul { list-style: none; margin: 0; padding: 0; }
.aak-sidebar li { padding: 8px 0; border-bottom: 1px solid var(--aak-line); }
.aak-sidebar li:last-child { border-bottom: 0; }

/* ---------------------------------------------------------
   7. Footer
--------------------------------------------------------- */
.aak-footer {
	background: var(--aak-footer);
	color: rgba(255, 255, 255, .62);
	padding: 70px 0 0;
}

.aak-footer h4 {
	color: #fff;
	font-size: 1.15rem;
	letter-spacing: 0.1em;
	margin-bottom: 18px;
}

.aak-footer a { color: rgba(255, 255, 255, .62); }
.aak-footer a:hover { color: var(--aak-primary); }
.aak-footer ul { list-style: none; margin: 0; padding: 0; }
.aak-footer li { padding: 6px 0; }

.aak-footer-bottom {
	margin-top: 56px;
	border-top: 1px solid rgba(255, 255, 255, .1);
	padding: 22px 0;
	font-size: 0.82rem;
	display: flex;
	flex-wrap: wrap;
	gap: 10px 20px;
	justify-content: space-between;
}

/* Floating WhatsApp */
.aak-float {
	position: fixed;
	right: 18px;
	bottom: 18px;
	z-index: 900;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 13px 18px;
	background: #25d366;
	color: #fff;
	border-radius: 999px;
	font-weight: 700;
	font-size: 0.85rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	box-shadow: 0 12px 30px rgba(0, 0, 0, .25);
}

.aak-float:hover { background: #1da851; color: #fff; }

/* 404 */
.aak-404 { text-align: center; padding: 110px 0; }
.aak-404 .aak-code { font-family: var(--aak-font-heading); font-size: 7rem; color: var(--aak-primary); line-height: 1; }

/* WordPress core alignment classes */
.alignleft { float: left; margin: 0 1.5em 1em 0; }
.alignright { float: right; margin: 0 0 1em 1.5em; }
.aligncenter { margin-left: auto; margin-right: auto; }
.wp-caption-text { font-size: 0.85rem; color: #7c848b; }
.sticky, .gallery-caption, .bypostauthor { display: block; }
