/*
 Theme Name:   Astra Child
 Template:     astra
 Version:      1.1.0
 Description:  Optimiertes Child-Theme für Arnold Invest GmbH
*/

/* ==========================================================================
   0. LOKALE FONTS – DSGVO-konform, keine Verbindung zu Google
   ========================================================================== */

@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('fonts/inter-400.ttf') format('truetype');
}

@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('fonts/inter-500.ttf') format('truetype');
}

@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('fonts/inter-600.ttf') format('truetype');
}

@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('fonts/inter-700.ttf') format('truetype');
}

body, button, input, select, textarea,
.ast-button, .ast-custom-button {
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* ==========================================================================
   1. TYPOGRAFIE – Kräftigere, professionellere Überschriften
   ========================================================================== */

h1, .entry-content :where(h1) {
	font-weight: 700;
	letter-spacing: -0.02em;
}

h2, .entry-content :where(h2) {
	font-weight: 600;
	letter-spacing: -0.01em;
}

h3, .entry-content :where(h3) {
	font-weight: 600;
}

h4, h5, h6,
.entry-content :where(h4, h5, h6) {
	font-weight: 500;
}

.site-title, .site-title a {
	font-weight: 700;
	letter-spacing: -0.01em;
}

/* ==========================================================================
   2. HEADER – Sichtbarer, professioneller Header
   ========================================================================== */

.ast-primary-header-bar {
	background-color: rgba(255, 255, 255, 0.97) !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.ast-primary-header-bar,
.ast-header-break-point .ast-primary-header-bar {
	border-bottom: 2px solid var(--ast-global-color-0) !important;
}

/* Logo – prominenter und professioneller */
header .custom-logo-link img {
	max-width: 160px;
	width: 160px;
	transition: transform 0.2s ease, filter 0.2s ease;
	filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
}

header .custom-logo-link:hover img {
	transform: scale(1.05);
	filter: drop-shadow(0 2px 6px rgba(4, 107, 210, 0.25));
}

/* Firmenname neben Logo */
.site-title {
	font-size: 1.4rem !important;
}

.site-title a {
	color: var(--ast-global-color-2) !important;
	font-weight: 700 !important;
	transition: color 0.2s ease;
}

.site-title a:hover {
	color: var(--ast-global-color-0) !important;
}

/* Logo-Bereich Abstand */
.ast-logo-title-inline .site-logo-img {
	padding-right: 1.2em;
}

/* Mobile: Logo etwas kleiner */
@media (max-width: 921px) {
	header .custom-logo-link img {
		max-width: 120px;
		width: 120px;
	}

	.site-title {
		font-size: 1.1rem !important;
	}
}

/* ==========================================================================
   3. NAVIGATION – Professionelle Menüleiste
   ========================================================================== */

/* Basis-Styling */
.ast-builder-menu-1 .menu-item > .menu-link {
	font-weight: 500;
	font-size: 0.9rem;
	padding: 0 16px;
	position: relative;
	transition: color 0.2s ease;
	letter-spacing: 0.01em;
}

/* Hover: Farbe + animierter Unterstrich */
.ast-builder-menu-1 .menu-item > .menu-link::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 16px;
	right: 16px;
	height: 3px;
	background-color: var(--ast-global-color-0);
	transform: scaleX(0);
	transition: transform 0.25s ease;
	border-radius: 3px 3px 0 0;
}

.ast-builder-menu-1 .menu-item:hover > .menu-link {
	color: var(--ast-global-color-0) !important;
}

.ast-builder-menu-1 .menu-item:hover > .menu-link::after {
	transform: scaleX(1);
}

/* Aktive Seite: Dauerhafter Unterstrich */
.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link {
	color: var(--ast-global-color-0) !important;
	font-weight: 600;
}

.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link::after {
	transform: scaleX(1);
}

/* Mobile Navigation */
@media (max-width: 921px) {
	.ast-builder-menu-mobile .main-navigation .menu-item > .menu-link {
		padding: 12px 20px;
		font-size: 1rem;
		font-weight: 500;
		border-bottom: 1px solid #f1f5f9;
	}

	.ast-builder-menu-mobile .main-navigation .menu-item.current-menu-item > .menu-link {
		color: var(--ast-global-color-0) !important;
		font-weight: 600;
		background-color: #f0f7ff !important;
		border-left: 3px solid var(--ast-global-color-0);
	}

	.ast-builder-menu-mobile .main-navigation .menu-item:last-child > .menu-link {
		border-bottom: none;
	}
}

/* ==========================================================================
   4. BODY & CONTENT – Bessere Lesbarkeit
   ========================================================================== */

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

.entry-content p {
	line-height: 1.8;
	margin-bottom: 1.2em;
}

.entry-content li {
	line-height: 1.7;
	margin-bottom: 0.4em;
}

/* ==========================================================================
   5. BUTTONS – Moderneres Button-Design
   ========================================================================== */

.wp-block-button .wp-block-button__link,
.ast-button,
input[type="submit"],
button:not(.menu-toggle):not(.ast-mobile-menu-trigger-fill) {
	border-radius: 6px;
	font-weight: 600;
	letter-spacing: 0.01em;
	transition: all 0.25s ease;
}

.wp-block-button .wp-block-button__link:hover,
.ast-button:hover,
input[type="submit"]:hover {
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(4, 107, 210, 0.3);
}

/* ==========================================================================
   6. LINKS – Professionellerer Stil
   ========================================================================== */

.entry-content a:not(.wp-block-button__link):not(.ast-button) {
	transition: color 0.2s ease;
}

/* ==========================================================================
   7. FOOTER – Aufgeräumter Footer
   ========================================================================== */

.site-below-footer-wrap[data-section="section-below-footer-builder"] {
	background-color: var(--ast-global-color-2) !important;
	border-top: 3px solid var(--ast-global-color-0) !important;
}

.ast-footer-copyright.site-footer-focus-item,
.site-below-footer-wrap a,
.site-below-footer-wrap p {
	color: #cbd5e1 !important;
	font-size: 0.875rem !important;
}

.site-below-footer-wrap a:hover {
	color: #ffffff !important;
}

/* ==========================================================================
   8. BILDER – Professionelle Bilddarstellung
   ========================================================================== */

.entry-content img {
	border-radius: 8px;
}

.wp-block-image figcaption {
	font-size: 0.85rem;
	color: var(--ast-global-color-3);
	font-style: italic;
}

/* ==========================================================================
   9. SCROLL-TO-TOP – Modernerer Button
   ========================================================================== */

#ast-scroll-top {
	border-radius: 50% !important;
	width: 2.8em !important;
	height: 2.8em !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
	transition: all 0.3s ease;
}

#ast-scroll-top:hover {
	transform: translateY(-3px);
	box-shadow: 0 4px 16px rgba(4, 107, 210, 0.4);
}

/* ==========================================================================
   10. RESPONSIVE – Mobil-Optimierungen
   ========================================================================== */

@media (max-width: 921px) {
	h1, .entry-content :where(h1) {
		font-weight: 700;
		font-size: 1.75rem;
	}

	h2, .entry-content :where(h2) {
		font-weight: 600;
		font-size: 1.5rem;
	}

	h3, .entry-content :where(h3) {
		font-weight: 600;
	}

	.entry-content p {
		line-height: 1.7;
	}
}

/* ==========================================================================
   11. GUTENBERG-BLÖCKE – Bessere Block-Styles
   ========================================================================== */

.wp-block-group.has-background {
	border-radius: 8px;
}

.wp-block-separator:not(.is-style-dots) {
	border-color: var(--ast-global-color-6);
	opacity: 0.5;
}

/* Blockquote-Stil */
blockquote,
.wp-block-quote {
	border-left-color: var(--ast-global-color-0) !important;
	border-left-width: 4px !important;
	font-style: italic;
	padding: 1em 1.5em;
	background: #f8fafc;
	border-radius: 0 8px 8px 0;
}

/* ==========================================================================
   12. FORMULARE – Professionellere Eingabefelder
   ========================================================================== */

input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="number"],
input[type="search"],
textarea,
select {
	border: 1px solid #e2e8f0;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="tel"]:focus,
textarea:focus,
select:focus {
	border-color: var(--ast-global-color-0) !important;
	box-shadow: 0 0 0 3px rgba(4, 107, 210, 0.1) !important;
}

/* ==========================================================================
   13. SELECTION – KI-Branding bei Textauswahl
   ========================================================================== */

::selection {
	background-color: var(--ast-global-color-0);
	color: #ffffff;
}

/* ==========================================================================
   14. PRINT – Druckoptimierung
   ========================================================================== */

@media print {
	.ast-primary-header-bar,
	#ast-scroll-top,
	.site-below-footer-wrap {
		box-shadow: none !important;
	}
}
