/*
Theme Name: Amateurfunk Modern Child
Description: Modernes, responsives Divi-Child-Theme für eine Amateurfunk-Website.
Author: Codex
Template: Divi
Version: 1.0.1
Text Domain: amateurfunk-modern-child
*/

:root {
	--af-ink: #edf4ef;
	--af-muted: #b2c0b7;
	--af-paper: #0b1210;
	--af-white: #141e19;
	--af-green: #48b783;
	--af-green-dark: #103d2d;
	--af-lime: #c9e36b;
	--af-line: #293a31;
	--af-radius: 18px;
	--af-shadow: 0 16px 44px rgba(20, 49, 35, .10);
}

html { scroll-behavior: smooth; }
body {
	color: var(--af-ink);
	background: var(--af-paper);
	font-family: Inter, "Segoe UI", Arial, sans-serif;
	font-size: 16px;
	line-height: 1.7;
}

/* Divi supplies light backgrounds on several modules; keep the site dark by default. */
#page-container, #et-main-area, #main-content,
#main-content .et_pb_section, #main-content .et_pb_row,
#main-content .et_pb_column, #main-content .et_pb_module:not(.et_pb_fullwidth_header),
#main-content .et_pb_post, #main-content .et_pb_blog_grid .et_pb_post,
#main-content .et_pb_toggle, #main-content .et_pb_accordion .et_pb_toggle,
#main-content .et_pb_pricing_table, #main-content .et_pb_widget_area {
	background-color: var(--af-paper) !important;
}
.et_pb_blurb, .et_pb_blog_grid .et_pb_post, .et_pb_post, .et_pb_team_member,
.et_pb_pricing_table, .et_pb_toggle, .et_pb_accordion .et_pb_toggle {
	background-color: var(--af-white) !important;
}
body, #page-container, #main-content { color: var(--af-ink) !important; }
#main-content .et_pb_text, #main-content .et_pb_text p,
#main-content .et_pb_text li, #main-content .et_pb_blurb_content,
#main-content .et_pb_blurb_content p, #main-content .et_pb_post p,
#main-content .et_pb_post .entry-title, #main-content .et_pb_toggle_content,
#main-content .et_pb_toggle_title { color: var(--af-ink) !important; }
.et_pb_bg_layout_light, .et_pb_bg_layout_light h1, .et_pb_bg_layout_light h2,
.et_pb_bg_layout_light h3, .et_pb_bg_layout_light h4,
.et_pb_bg_layout_light .et_pb_text_inner, .et_pb_bg_layout_light p,
.et_pb_bg_layout_light li { color: var(--af-ink); }

h1, h2, h3, h4, h5, h6 {
	color: var(--af-ink);
	font-family: Inter, "Segoe UI", Arial, sans-serif;
	font-weight: 720;
	letter-spacing: -.035em;
	line-height: 1.14;
}
h1 { font-size: clamp(2.5rem, 5.3vw, 5rem); }
h2 { font-size: clamp(2rem, 3.5vw, 3.35rem); }
h3 { font-size: clamp(1.3rem, 2vw, 1.75rem); }
p, li { color: var(--af-muted); }
a { color: var(--af-green); text-underline-offset: 3px; }
a:hover { color: var(--af-green-dark); }

/* Header */
#main-header, #main-header.et-fixed-header {
	background: rgba(13,22,17,.97);
	box-shadow: 0 1px 0 rgba(210,235,219,.10);
}
#top-menu li a, .et_mobile_menu li a {
	color: var(--af-ink) !important;
	font-size: .93rem;
	font-weight: 650;
}
#top-menu li a:hover, .et_mobile_menu li a:hover { color: var(--af-green) !important; opacity: 1; }
.et_header_style_left #et-top-navigation { padding-top: 26px; }
#et-top-navigation nav > ul > li > a { padding-bottom: 26px; }
.et_mobile_menu {
	border-top: 3px solid var(--af-green);
	background: #111b16;
	box-shadow: var(--af-shadow);
}

/* Sections and type */
.et_pb_section { padding: clamp(56px, 7vw, 104px) 0; }
.et_pb_row { width: min(88%, 1180px); padding: 0; }
.et_pb_text { line-height: 1.75; }
.et_pb_text h1, .et_pb_text h2, .et_pb_text h3 { padding-bottom: .65em; }
.et_pb_text p:last-child { padding-bottom: 0; }

/* Hero and full-width header modules */
.et_pb_fullwidth_header {
	min-height: min(680px, 78vh);
	display: flex;
	align-items: center;
	background-color: var(--af-green-dark);
	background-image: linear-gradient(100deg, rgba(9,35,24,.88), rgba(9,35,24,.20)), var(--af-hero-image, none) !important;
	background-position: center;
	background-size: cover;
}
.et_pb_fullwidth_header .et_pb_fullwidth_header_container { width: min(88%, 1180px); }
.et_pb_fullwidth_header .header-content { max-width: 760px; margin: 0; }
.et_pb_fullwidth_header .header-content h1 { color: #fff; max-width: 760px; }
.et_pb_fullwidth_header .header-content .et_pb_header_content_wrapper,
.et_pb_fullwidth_header .header-content .et_pb_header_content_wrapper p { color: rgba(255,255,255,.86); font-size: clamp(1.05rem, 1.5vw, 1.25rem); }

/* Buttons */
.et_pb_button, .et_pb_button_module_wrapper .et_pb_button,
.et_pb_bg_layout_light .et_pb_button, .et_pb_bg_layout_dark .et_pb_button {
	border: 0 !important;
	border-radius: 999px !important;
	background: var(--af-green) !important;
	box-shadow: 0 8px 18px rgba(23,107,74,.18);
	color: #fff !important;
	font-size: .96rem !important;
	font-weight: 700 !important;
	letter-spacing: 0 !important;
	line-height: 1.2 !important;
	padding: 16px 25px !important;
	transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.et_pb_button:hover {
	background: var(--af-green-dark) !important;
	box-shadow: 0 12px 24px rgba(23,107,74,.25);
	padding: 16px 25px !important;
	transform: translateY(-2px);
}
.et_pb_button:after { font-size: 1.1em !important; line-height: 1 !important; }

/* Cards, images, galleries */
.et_pb_blurb, .et_pb_blog_grid .et_pb_post, .et_pb_post, .et_pb_team_member,
.et_pb_pricing_table, .et_pb_toggle, .et_pb_accordion .et_pb_toggle {
	border: 1px solid var(--af-line);
	border-radius: var(--af-radius);
	background: var(--af-white);
	box-shadow: 0 8px 26px rgba(0,0,0,.20);
	overflow: hidden;
}
.et_pb_blurb { padding: 28px; transition: transform .2s ease, box-shadow .2s ease; }
.et_pb_blurb:hover { transform: translateY(-4px); box-shadow: var(--af-shadow); }
.et_pb_blurb .et_pb_main_blurb_image { margin-bottom: 20px; }
.et_pb_blurb .et-pb-icon { color: var(--af-green); }
.et_pb_image img, .et_pb_gallery_image img, .et_pb_blog_grid .et_pb_image_container img {
	border-radius: 14px;
}
.et_pb_blog_grid .et_pb_post { padding-bottom: 26px; }
.et_pb_blog_grid .et_pb_post .entry-title, .et_pb_blog_grid .et_pb_post .post-content { padding-right: 24px; padding-left: 24px; }
.et_pb_blog_grid .et_pb_post .post-meta { padding: 0 24px; color: var(--af-muted); }
.et_pb_gallery_grid .et_pb_gallery_item { padding: 8px; }

/* Subtle dark feature band. Add the class "af-dark" to a Divi section to use it. */
.af-dark { background: var(--af-green-dark) !important; }
.af-dark h1, .af-dark h2, .af-dark h3, .af-dark h4 { color: #fff; }
.af-dark p, .af-dark li { color: rgba(255,255,255,.78); }
.af-dark .et_pb_blurb { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.15); }
.af-dark .et_pb_blurb h4, .af-dark .et_pb_blurb p { color: #fff; }
.af-accent { background: #15251c !important; }

/* Forms and footer */
input, textarea, select, .et_pb_contact p input, .et_pb_contact p textarea {
	border: 1px solid var(--af-line) !important;
	border-radius: 10px !important;
	background: #111a15 !important;
	color: var(--af-ink) !important;
	padding: 14px 16px !important;
}
input:focus, textarea:focus, select:focus { outline: 2px solid rgba(23,107,74,.22); border-color: var(--af-green) !important; }
#main-footer { background: #10241b; }
#footer-widgets { padding: 56px 0 28px; }
#footer-widgets, #footer-widgets p, #footer-widgets a, #footer-widgets h4 { color: rgba(255,255,255,.78); }
#footer-widgets h4 { color: #fff; }
#footer-bottom { background: #0b1912; }
#footer-info { color: rgba(255,255,255,.65); }

body, #page-container, #main-header, #top-header, #main-content,
#main-content .et_pb_section:not(.af-dark),
#main-content .et_pb_section:not(.af-dark) .et_pb_row,
#main-content .et_pb_section:not(.af-dark) .et_pb_column {
	background-color: var(--af-paper) !important;
}
#main-header, #main-header.et-fixed-header, #top-header {
	background-color: #0d1611 !important;
}
.et_mobile_menu { background-color: #111b16 !important; }

/* Prevent remaining default Divi panels from flashing white in the dark layout. */
.et_pb_post .entry-content, .et_pb_post .entry-title, .et_pb_toggle_content,
.et_pb_toggle_title, .et_pb_accordion .et_pb_toggle_title,
.et_pb_contact_form, .et_pb_contact p, .et_pb_blurb_content,
.et_pb_blog_grid .et_pb_post .post-content,
.et_pb_blog_grid .et_pb_post .entry-title { background-color: transparent; }
.et_pb_contact p input::placeholder, .et_pb_contact p textarea::placeholder,
input::placeholder, textarea::placeholder { color: #8d9b92; opacity: 1; }
.et_pb_divider { border-color: var(--af-line); }

@media (max-width: 980px) {
	.et_pb_section { padding: 60px 0; }
	.et_pb_row { width: 88%; }
	.et_pb_fullwidth_header { min-height: 560px; }
}
@media (max-width: 767px) {
	h1 { font-size: clamp(2.35rem, 11vw, 3.6rem); }
	h2 { font-size: clamp(1.9rem, 8vw, 2.6rem); }
	.et_pb_section { padding: 48px 0; }
	.et_pb_fullwidth_header { min-height: 500px; }
	.et_pb_blurb { padding: 22px; }
	.et_pb_button { display: inline-block; }
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
