/*
Theme Name:   TopoIasiTheme
Theme URI:    https://topografiasi.ro/
Description:  Temă copil Divi pentru topografiasi.ro: accesibilitate (WCAG 2.2 AA), mobil/tabletă, aspect apropiat de cel nativ.
Author:       P.F.A. ing. Radu Farcas
Template:     Divi
Version:      0.1.0
Requires PHP: 8.3
Text Domain:  topoiasi
*/

/*
 * Stilurile temei părinte sunt încărcate de Divi (handle „divi-style-parent”),
 * iar acest fișier este încărcat automat după ele.
 */

/* ---------- Meniu mobil (js/menu-mobil.js) ---------- */

/* Țintă tactilă 48×48; margin negativ ca iconița să rămână pe loc. */
.mobile_menu_bar_toggle {
	display: block;
	min-width: 48px;
	min-height: 48px;
	margin-right: -8px;
	text-align: center;
	cursor: pointer;
}

/* Focus vizibil pe orice fundal (hero închis sau header alb la scroll). */
.mobile_menu_bar_toggle:focus-visible {
	outline: 3px solid #ffffff;
	outline-offset: 0;
	box-shadow: 0 0 0 6px #011638;
	border-radius: 4px;
}

/* Itemuri de minimum 48px înălțime. */
#main-header .et_mobile_menu li a {
	padding-top: 12px;
	padding-bottom: 12px;
}

#main-header .et_mobile_menu li a:focus-visible {
	outline: 3px solid #ffffff;
	outline-offset: -3px;
}

/* Meniul deschis ocupă tot ecranul sub header; se derulează în interior dacă nu încape. */
.topoiasi-menu-open #main-header #mobile_menu {
	position: fixed;
	top: var(--topoiasi-header-h, 80px);
	right: 0;
	bottom: 0;
	left: 0;
	width: auto;
	max-height: none;
	margin: 0;
	padding: 8px 5% calc(24px + env(safe-area-inset-bottom));
	overflow-y: auto;
	overscroll-behavior: contain;
	box-shadow: none;
}

/* Header opac cât timp meniul e deschis, ca să formeze un singur panou. */
.topoiasi-menu-open #main-header {
	background-color: #011638 !important;
}

/* Pagina din spate nu se derulează. */
.topoiasi-menu-open,
.topoiasi-menu-open body {
	overflow: hidden;
}

/* Hamburger → X (glif ETmodules „close”). */
.topoiasi-menu-open .mobile_nav.opened .mobile_menu_bar:before {
	content: "\4d";
}

/* ---------- Homepage: „Cere o ofertă” + „Sună-ne” ca un singur card ---------- */

/*
 * Rândul (.et_pb_row_1) devine cardul: centrat la orice lățime, colțuri și umbră comune.
 * Telefon: cele două părți una sub alta; de la 768px una lângă alta (1/3 + 2/3).
 * Mărimile cresc fluid cu ecranul (clamp), cu textul niciodată sub 16px.
 */
body.home #page-container .et_pb_section_0 .et_pb_row_1.et_pb_row {
	display: flex;
	flex-direction: column;
	width: 90% !important;
	max-width: 90% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
}

body.home #page-container .et_pb_section_0 .et_pb_row_1.et_pb_row > .et_pb_column {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	margin: 0 !important;
	border-radius: 0 !important;
	box-shadow: none;
}

body.home #page-container .et_pb_section_0 .et_pb_row_1 > .phone-glass-box {
	padding: clamp(16px, 2.5vw, 40px) 5% !important;
}

@media (min-width: 768px) {
	body.home #page-container .et_pb_section_0 .et_pb_row_1.et_pb_row {
		flex-direction: row;
	}

	body.home #page-container .et_pb_section_0 .et_pb_row_1 > .green-cta-box {
		flex: 0 0 33.333%;
		width: 33.333% !important;
	}

	body.home #page-container .et_pb_section_0 .et_pb_row_1 > .phone-glass-box {
		flex: 1 1 auto;
		width: auto !important;
	}
}

/* Butonul ocupă tot box-ul verde, deci toată zona e țintă tactilă. */
body.home #page-container .et_pb_section_0 .et_pb_row_1 .et_pb_button_module_wrapper {
	width: 100%;
	margin: 0;
}

body.home #page-container .et_pb_section_0 .et_pb_row_1 .et_pb_button_0 {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding-top: clamp(20px, 1.2rem + 2vw, 42px) !important;
	padding-bottom: clamp(20px, 1.2rem + 2vw, 42px) !important;
	font-size: clamp(17px, 0.9rem + 0.5vw, 22px);
	letter-spacing: 0.18em;
}

body.home #page-container .et_pb_section_0 .et_pb_row_1 .et_pb_text_2 {
	width: 100%;
	margin: 0;
	text-align: center;
	font-size: clamp(16px, 0.9rem + 0.3vw, 20px);
	line-height: 1.5;
}

body.home #page-container .et_pb_section_0 .et_pb_row_1 .et_pb_text_2 p {
	font-size: inherit;
	line-height: inherit;
}

/* Numărul are stil inline (30px); îl facem fluid și îi dăm țintă ≥44px. */
body.home #page-container .et_pb_section_0 .et_pb_row_1 .et_pb_text_2 a[href^="tel:"] {
	display: inline-block;
	min-height: 44px;
	padding: 4px 0;
	font-size: clamp(24px, 1.2rem + 1vw, 30px) !important;
	line-height: 36px;
	vertical-align: middle;
}
