/* Azzurri Business Network landing. */

.perth-azzurri.page-template-page-business-network #content {
	padding: 0;
}

.perth-azzurri .pa-abn-hero {
	position: relative;
	overflow: hidden;
	padding: 56px 0 72px;
	background:
		radial-gradient(circle at 88% 0%, rgba(198, 161, 53, 0.18), transparent 32%),
		linear-gradient(155deg, var(--pa-navy-mid) 0%, var(--pa-navy) 48%, var(--pa-navy-deep) 100%);
	color: var(--pa-white);
}

.perth-azzurri .pa-abn-hero__inner {
	max-width: 820px;
}

.perth-azzurri .pa-abn-hero h1 {
	margin: 0 0 16px;
	color: var(--pa-white);
	font-size: clamp(2.8rem, 7vw, 5.6rem);
}

.perth-azzurri .pa-abn-hero__italic {
	margin: 0 0 28px;
	max-width: 28ch;
	color: var(--pa-gold);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(1.25rem, 2.4vw, 1.7rem);
	font-style: italic;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	line-height: 1.35;
}

.perth-azzurri .pa-abn-intro {
	padding: 72px 0;
	background: var(--pa-cream);
}

.perth-azzurri .pa-abn-intro__inner {
	max-width: 680px;
	margin-inline: auto;
	text-align: center;
}

.perth-azzurri .pa-abn-intro h2 {
	margin-bottom: 16px;
}

.perth-azzurri .pa-abn-intro p {
	margin: 0;
	color: var(--pa-muted);
	font-size: 1.08rem;
	line-height: 1.7;
}

.perth-azzurri .pa-abn-inc {
	padding: 72px 0;
	background: var(--pa-white);
}

.perth-azzurri .pa-abn-inc__grid {
	display: grid;
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.perth-azzurri .pa-abn-inc__grid li {
	padding: 22px 22px 20px;
	background: var(--pa-paper);
	border-top: 3px solid var(--pa-green);
}

.perth-azzurri .pa-abn-inc__grid li:nth-child(3n + 2) { border-top-color: var(--pa-navy); }
.perth-azzurri .pa-abn-inc__grid li:nth-child(3n) { border-top-color: var(--pa-gold); }

.perth-azzurri .pa-abn-inc__grid span {
	display: block;
	margin-bottom: 8px;
	font-family: var(--pa-display);
	font-size: 1.3rem;
	font-weight: 800;
	color: var(--pa-navy);
	opacity: 0.2;
}

.perth-azzurri .pa-abn-inc__grid h3 {
	margin: 0 0 8px;
	font-size: 1.35rem;
}

.perth-azzurri .pa-abn-inc__grid p {
	margin: 0;
	color: var(--pa-muted);
	font-size: 0.96rem;
}

.perth-azzurri .pa-abn-founding {
	padding: 64px 0;
	background: linear-gradient(135deg, var(--pa-navy-deep), var(--pa-navy-mid));
	color: var(--pa-white);
	text-align: center;
}

.perth-azzurri .pa-abn-founding__inner {
	max-width: 720px;
}

.perth-azzurri .pa-abn-founding h2 {
	color: var(--pa-white);
	margin-bottom: 12px;
}

.perth-azzurri .pa-abn-founding__meta {
	margin: 0 0 14px;
	color: var(--pa-gold);
	font-family: var(--pa-display);
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.perth-azzurri .pa-abn-founding p {
	margin: 0 0 24px;
	color: rgba(255, 255, 255, 0.78);
}

.perth-azzurri .pa-abn-form {
	padding: 72px 0;
	background: var(--pa-paper);
	scroll-margin-top: 96px;
}

.perth-azzurri .pa-eyebrow--gold {
	color: var(--pa-gold);
}

.perth-azzurri .pa-join__done {
	margin-bottom: 22px;
	padding: 18px 20px;
	background: #edf7f1;
	border-left: 4px solid var(--pa-green);
}

.perth-azzurri .pa-join__done p {
	margin: 0;
}

.perth-azzurri .pa-abn-join {
	max-width: 820px;
	padding: 24px;
	background: var(--pa-white);
}

.perth-azzurri .pa-abn-join .pa-join__grid {
	display: grid;
	gap: 14px;
	margin-bottom: 22px;
}

.perth-azzurri .pa-abn-join label {
	display: grid;
	gap: 6px;
	font-size: 0.88rem;
	font-weight: 600;
	color: var(--pa-navy);
}

.perth-azzurri .pa-abn-join input,
.perth-azzurri .pa-abn-join select,
.perth-azzurri .pa-abn-join textarea {
	width: 100%;
	min-height: 48px;
	padding: 10px 12px;
	border: 1px solid #d5dbe3;
	border-radius: 2px;
	background: var(--pa-white);
	font: inherit;
	color: var(--pa-ink);
}

.perth-azzurri .pa-abn-join textarea {
	min-height: 140px;
	resize: vertical;
}

.perth-azzurri .pa-abn-join input:focus,
.perth-azzurri .pa-abn-join select:focus,
.perth-azzurri .pa-abn-join textarea:focus {
	outline: 2px solid var(--pa-green);
	outline-offset: 1px;
}

.perth-azzurri .pa-honeypot {
	position: absolute;
	left: -9999px;
}

.perth-azzurri .pa-join__done--error {
	background: #fdecea;
	border-left-color: var(--pa-red);
}

.perth-azzurri .pa-abn-dir {
	padding: 72px 0 88px;
	background: var(--pa-white);
}

.perth-azzurri .pa-abn-dir__empty {
	margin: 0;
	padding: 28px;
	background: var(--pa-cream);
	color: var(--pa-muted);
}

.perth-azzurri .pa-abn-dir__grid {
	display: grid;
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.perth-azzurri .pa-abn-card {
	display: block;
	height: 100%;
	padding: 22px;
	background: var(--pa-paper);
	color: inherit;
	text-decoration: none;
}

.perth-azzurri a.pa-abn-card:hover {
	box-shadow: 0 12px 28px rgba(7, 20, 40, 0.08);
}

.perth-azzurri .pa-abn-card__logo {
	display: grid;
	place-items: center;
	width: 64px;
	height: 64px;
	margin-bottom: 16px;
	background: var(--pa-navy);
	color: var(--pa-white);
	font-family: var(--pa-display);
	font-size: 1.3rem;
	font-weight: 700;
}

.perth-azzurri .pa-abn-card__logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	background: var(--pa-white);
}

.perth-azzurri .pa-abn-card h3 {
	margin: 0 0 6px;
	font-size: 1.35rem;
}

.perth-azzurri .pa-abn-card p {
	margin: 0 0 12px;
	color: var(--pa-muted);
	font-size: 0.92rem;
}

.perth-azzurri .pa-abn-card__link {
	font-family: var(--pa-display);
	font-size: 0.88rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--pa-green);
}

@media (min-width: 900px) {
	.perth-azzurri .pa-abn-hero {
		padding: 80px 0 96px;
	}

	.perth-azzurri .pa-abn-inc__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.perth-azzurri .pa-abn-join .pa-join__grid {
		grid-template-columns: 1fr 1fr;
	}

	.perth-azzurri .pa-abn-join .pa-join__full {
		grid-column: 1 / -1;
	}

	.perth-azzurri .pa-abn-dir__grid {
		grid-template-columns: repeat(3, 1fr);
	}
}
