/*
Theme Name: AngelArmsTheme
Theme URI:
Author:
Author URI:
Description: Custom theme for the Angel Arms website.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: angelarms
*/

/* ==========================================================================
   All site styles live in this file.
   Do not use the "Additional CSS" field in the WordPress Customizer —
   add any new styles only to this file.
   ========================================================================== */

:root {
	--aafp-font: 'Source Sans Pro', sans-serif;
	--aafp-orange: #f9ae01;
	--aafp-orange-dark: #e09c00;
	--aafp-red: #fc4727;
	--aafp-cream: #ffe7b1;
	--aafp-text: #070713;
	--aafp-text-light: #6e6e6e;
	--aafp-border: #9ca3af;
}

/* ---------- Base reset and site font ---------- */

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

body {
	margin: 0;
	font-family: var(--aafp-font);
	font-size: 16px;
	line-height: 1.5;
	color: var(--aafp-text);
}

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

ul {
	margin: 0;
	padding: 0;
}

/* ---------- TOP MENU: top row (contacts + social) ---------- */

.aafp-top-bar {
	background: #ffffff;
	border-bottom: 1px dashed var(--aafp-border);
}

.aafp-top-bar__inner {
	max-width: 1320px;
	margin: 0 auto;
	padding: 24px 36px 16px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
}

.aafp-top-bar__contacts {
	display: flex;
	align-items: center;
	gap: 24px;
}

.aafp-contact-item {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #000000;
	text-decoration: none;
	font-size: 14px;
	font-weight: 400;
}

.aafp-contact-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--aafp-orange);
	color: #ffffff;
	flex-shrink: 0;
}

.aafp-contact-icon svg {
	width: 16px;
	height: 16px;
}

.aafp-top-bar__social {
	display: flex;
	align-items: center;
	gap: 16px;
}

.aafp-social-icon {
	display: inline-flex;
	color: #000000;
}

.aafp-social-icon svg {
	width: 20px;
	height: 20px;
}

.aafp-social-icon:hover {
	color: var(--aafp-orange);
}

/* ---------- TOP MENU: logo + navigation row ----------
   In the real reference, .aafp-nav-wrap is a plain block in normal
   document flow (cream background, same color as the HERO section
   below it), containing a white menu card rounded ONLY on the
   bottom corners. There is no position:absolute/overlap — the
   "overlap" look comes purely from the rounded bottom corners of
   the card sitting on the same cream background as header+HERO.
   ------------------------------------------------------------- */

.aafp-nav-wrap {
	background: var(--aafp-cream);
}

.aafp-nav-row {
	max-width: 1320px;
	margin: 0 auto;
	background: #ffffff;
	border-radius: 0 0 50px 50px;
}

.aafp-nav-row__inner {
	padding: 24px 36px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
}

.aafp-logo {
	display: flex;
	align-items: center;
	text-decoration: none;
}

.aafp-logo__image {
	max-width: 130px;
	height: auto;
	display: block;
}

.aafp-logo__text {
	font-size: 24px;
	font-weight: 700;
	color: var(--aafp-text);
}

.aafp-main-nav {
	flex: 1;
}

.aafp-main-menu {
	list-style: none;
	display: flex;
	align-items: center;
	gap: 24px;
	margin: 0;
	padding: 0;
}

.aafp-main-menu a {
	color: var(--aafp-text);
	text-decoration: none;
	font-size: 16px;
	font-weight: 500;
}

.aafp-main-menu li.current-menu-item > a,
.aafp-main-menu a:hover {
	color: var(--aafp-red);
}

.aafp-main-menu li.menu-item-has-children > a::after {
	content: "";
	display: inline-block;
	margin-left: 5px;
	width: 6px;
	height: 6px;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: rotate(45deg);
}

.aafp-main-menu ul.sub-menu {
	list-style: none;
	margin: 0;
	padding: 10px 0;
	background: #ffffff;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
}

.aafp-nav-row__actions {
	display: flex;
	align-items: center;
	gap: 14px;
}

.aafp-enroll-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: var(--aafp-orange);
	color: #ffffff;
	text-decoration: none;
	font-weight: 400;
	font-size: 16px;
	padding: 14px 32px;
	border-radius: 16px;
	transition: background-color 0.2s ease;
}

.aafp-enroll-btn:hover {
	background: var(--aafp-orange-dark);
}
