/*
 * AI API Gateway — Inner marketing pages (Contact Us / About Us)
 *
 * Loaded after home.css and reuses its CSS variables, container,
 * button, section-head, feature-card and reveal-animation classes so
 * these pages read as part of the same site instead of a bolted-on
 * design. Only page-specific layout lives here.
 */

/* ------------------------------------------------------------------ */
/* Shared centered "inner" hero (Contact Us / About Us)                */
/* ------------------------------------------------------------------ */

.aiapih-inner-hero {
	padding: 64px 24px 24px;
	text-align: center;
}

.aiapih-inner-hero-inner {
	max-width: 720px;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.aiapih-inner-hero-inner .aiapih-badge { margin-inline: auto; }

.aiapih-inner-hero-inner h1 {
	font-size: clamp(30px, 4vw, 44px);
	font-weight: 800;
	line-height: 1.18;
	letter-spacing: -.02em;
}

.aiapih-inner-hero-inner .aiapih-lead {
	margin-inline: auto;
	max-width: 560px;
	text-align: center;
}

/* ------------------------------------------------------------------ */
/* Contact Us                                                          */
/* ------------------------------------------------------------------ */

.aiapih-contact-section { padding-top: 40px; }

.aiapih-contact-grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr;
	gap: 28px;
	align-items: start;
}

.aiapih-contact-form-card {
	padding: 34px;
	border-radius: var(--aiapih-radius-lg);
	background: var(--aiapih-surface);
	border: 1px solid var(--aiapih-border);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
}

.aiapih-contact-form-card h2 { font-size: 21px; font-weight: 800; }
.aiapih-contact-form-card > p {
	margin-top: 8px;
	margin-bottom: 26px;
	font-size: 14px;
	line-height: 1.7;
	color: var(--aiapih-text-muted);
}

.aiapih-contact-form {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.aiapih-form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
}

.aiapih-form-field {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.aiapih-form-field label {
	font-size: 13px;
	font-weight: 700;
	color: var(--aiapih-text);
}

.aiapih-form-optional {
	font-weight: 500;
	color: var(--aiapih-text-faint);
}

.aiapih-form-field input,
.aiapih-form-field textarea {
	width: 100%;
	padding: 12px 14px;
	font: inherit;
	font-size: 14.5px;
	color: var(--aiapih-text);
	background: var(--aiapih-surface-solid);
	border: 1px solid var(--aiapih-border);
	border-radius: var(--aiapih-radius-sm);
	outline: none;
	transition: border-color .18s ease, box-shadow .18s ease;
}

.aiapih-form-field input::placeholder,
.aiapih-form-field textarea::placeholder { color: var(--aiapih-text-faint); }

.aiapih-form-field input:focus,
.aiapih-form-field textarea:focus {
	border-color: var(--aiapih-border-strong);
	box-shadow: 0 0 0 3px var(--aiapih-primary-soft);
}

.aiapih-form-field textarea { resize: vertical; min-height: 120px; }

/* Honeypot — kept in the DOM and reachable by assistive tech to avoid
   flagging it as suspicious, but fully out of the way for a real
   visitor filling out the form (see AIAPI_Contact::ajax_submit()). */
.aiapih-hp-field {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.aiapih-form-alert {
	display: none;
	padding: 12px 14px;
	font-size: 13.5px;
	font-weight: 600;
	border-radius: var(--aiapih-radius-sm);
}

.aiapih-form-alert.is-visible { display: block; }

.aiapih-form-error {
	color: var(--aiapih-danger);
	background: rgba(226, 83, 106, .10);
	border: 1px solid rgba(226, 83, 106, .25);
}

.aiapih-form-success {
	color: var(--aiapih-success);
	background: var(--aiapih-success-soft);
	border: 1px solid rgba(31, 169, 126, .25);
}

.aiapih-contact-form.is-loading { opacity: .7; pointer-events: none; }

.aiapih-contact-info {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.aiapih-contact-info-card {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 20px;
	border-radius: var(--aiapih-radius-lg);
	background: var(--aiapih-surface);
	border: 1px solid var(--aiapih-border);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
}

.aiapih-contact-info-icon {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: var(--aiapih-radius-sm);
	color: #fff;
	background: var(--aiapih-gradient);
}

.aiapih-contact-info-body h3 { font-size: 14.5px; font-weight: 700; margin-bottom: 4px; }
.aiapih-contact-info-body p,
.aiapih-contact-info-body a {
	font-size: 13.5px;
	line-height: 1.6;
	color: var(--aiapih-text-muted);
	word-break: break-word;
}
.aiapih-contact-info-body a:hover { color: var(--aiapih-primary); }

.aiapih-telegram-btn { margin-top: 4px; }

/* ------------------------------------------------------------------ */
/* About Us                                                            */
/* ------------------------------------------------------------------ */

.aiapih-about-mission-section { padding-top: 20px; }

.aiapih-about-mission-grid {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 50px;
	align-items: center;
}

.aiapih-about-mission-copy h2 { margin-top: 12px; font-size: clamp(24px, 3vw, 32px); font-weight: 800; line-height: 1.25; }
.aiapih-about-mission-copy p {
	margin-top: 16px;
	font-size: 15px;
	line-height: 1.8;
	color: var(--aiapih-text-muted);
}

.aiapih-about-stats {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.aiapih-about-stat {
	padding: 26px 16px;
	text-align: center;
	border-radius: var(--aiapih-radius-lg);
	background: var(--aiapih-surface);
	border: 1px solid var(--aiapih-border);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
}

.aiapih-about-stat b,
.aiapih-about-stat .aiapih-counter {
	display: block;
	font-size: 26px;
	font-weight: 800;
	background: var(--aiapih-gradient);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.aiapih-about-stat span {
	display: block;
	margin-top: 6px;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--aiapih-text-faint);
}

.aiapih-about-cta-section { padding-top: 20px; }

.aiapih-about-cta {
	max-width: 720px;
	text-align: center;
	padding: 48px 32px;
	border-radius: var(--aiapih-radius-xl);
	background: var(--aiapih-surface);
	border: 1px solid var(--aiapih-border);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
}

.aiapih-about-cta h2 { font-size: clamp(22px, 3vw, 28px); font-weight: 800; }
.aiapih-about-cta p {
	margin-top: 12px;
	margin-inline: auto;
	max-width: 480px;
	font-size: 15px;
	line-height: 1.7;
	color: var(--aiapih-text-muted);
}

.aiapih-about-cta-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
	margin-top: 26px;
}

/* ------------------------------------------------------------------ */
/* Legal pages (Privacy Policy / Terms of Service)                    */
/* ------------------------------------------------------------------ */

.aiapih-legal-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-top: 14px;
	font-size: 13px;
	font-weight: 600;
	color: var(--aiapih-text-faint);
}

.aiapih-legal-meta .aiapih-badge { margin-inline: 0; }

.aiapih-legal-section { padding-top: 24px; }

.aiapih-legal-layout {
	display: grid;
	grid-template-columns: 220px 1fr;
	gap: 40px;
	align-items: start;
}

.aiapih-legal-toc {
	position: sticky;
	top: 24px;
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 18px;
	border-radius: var(--aiapih-radius-lg);
	background: var(--aiapih-surface);
	border: 1px solid var(--aiapih-border);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
}

.aiapih-legal-toc-title {
	margin-bottom: 8px;
	font-size: 11.5px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--aiapih-text-faint);
}

.aiapih-legal-toc a {
	padding: 7px 10px;
	border-radius: var(--aiapih-radius-sm);
	font-size: 13.5px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--aiapih-text-muted);
	transition: background .15s ease, color .15s ease;
}

.aiapih-legal-toc a:hover { color: var(--aiapih-text); background: var(--aiapih-primary-soft); }

.aiapih-legal-toc a.is-current {
	color: var(--aiapih-primary-strong);
	background: var(--aiapih-primary-soft);
}

.aiapih-legal-notice {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	margin-bottom: 36px;
	padding: 16px 18px;
	border-radius: var(--aiapih-radius);
	background: var(--aiapih-primary-soft);
	border: 1px solid var(--aiapih-border-strong);
}

.aiapih-legal-notice svg { flex: none; margin-top: 2px; color: var(--aiapih-primary-strong); }

.aiapih-legal-notice p {
	font-size: 13.5px;
	line-height: 1.7;
	color: var(--aiapih-text-muted);
}

.aiapih-legal-content { max-width: 720px; }

.aiapih-legal-article {
	padding-bottom: 28px;
	margin-bottom: 28px;
	border-bottom: 1px solid var(--aiapih-border);
	scroll-margin-top: 24px;
}

.aiapih-legal-article:last-child {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: none;
}

.aiapih-legal-article h2 {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 19px;
	font-weight: 800;
	letter-spacing: -.01em;
}

.aiapih-legal-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 28px;
	height: 28px;
	border-radius: 9px;
	font-size: 12.5px;
	font-weight: 800;
	color: #fff;
	background: var(--aiapih-gradient);
}

.aiapih-legal-article p {
	margin-top: 12px;
	font-size: 14.5px;
	line-height: 1.85;
	color: var(--aiapih-text-muted);
}

.aiapih-legal-article ul {
	margin-top: 12px;
	padding-inline-start: 20px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.aiapih-legal-article li {
	font-size: 14.5px;
	line-height: 1.75;
	color: var(--aiapih-text-muted);
	list-style: disc;
}

.aiapih-legal-article strong { color: var(--aiapih-text); font-weight: 700; }

/* ------------------------------------------------------------------ */
/* Responsive                                                          */
/* ------------------------------------------------------------------ */

@media (max-width: 980px) {
	.aiapih-contact-grid,
	.aiapih-about-mission-grid { grid-template-columns: 1fr; }
}

@media (max-width: 860px) {
	.aiapih-legal-layout { grid-template-columns: 1fr; }
	.aiapih-legal-toc { position: static; }
}

@media (max-width: 760px) {
	.aiapih-inner-hero { padding: 48px 20px 16px; }
	.aiapih-contact-form-card { padding: 24px; }
	.aiapih-about-cta { padding: 36px 22px; }
}

@media (max-width: 520px) {
	.aiapih-form-row { grid-template-columns: 1fr; }
	.aiapih-about-stats { grid-template-columns: 1fr 1fr; }
}