:root {
	--font-primary: 'Montserrat', sans-serif;
	--font-secondary: 'Heebo', sans-serif;
	--font-third: 'Teachers', sans-serif;
	--font-fourth: 'Questrial', sans-serif;

	--primary-color: #e6a31f;
	--dark-gray: #585a5c;

	--transition: 0.3s ease;
	--border-radius: 0;
}

/* ==========================================================================
   BUTTON
========================================================================== */

a.btn_primary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 320px;
	padding: 16px 20px;
	background: var(--primary-color);
	color: #fff;
	font-family: var(--font-primary);
	font-size: 15px;
	font-weight: 500;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	border: 0;
	border-radius: var(--border-radius);
	cursor: pointer;
	transition:
		background-color var(--transition),
		color var(--transition),
		transform var(--transition);
}

a.btn_primary:hover {
	background: var(--primary-color);
	transform: translateY(-2px);
}

a.btn_primary:focus-visible {
	outline: 2px solid var(--primary-color);
	outline-offset: 3px;
}

/* ==========================================================================
   TABLET
========================================================================== */

@media (min-width: 768px) {
	a.btn_primary {
		width: auto;
		max-width: none;

		padding: 18px 36px;
		font-size: 17px;
	}
}

/* ==========================================================================
   DESKTOP
========================================================================== */

@media (min-width: 1024px) {
	a.btn_primary {
		padding: 21px 46px;
		font-size: 18px;
	}
}

/* ==========================
   LAYOUT
========================== */

/* ==========================================================================
   BOX IMMAGINE / TESTI
========================================================================== */

.box-immagine-testi-wrapper {
	display: flex;
	flex-direction: column-reverse;
}

.box-immagine,
.box-item-mix,
.box-testi {
	width: 100%;
}

.box-immagine {
	padding: 30px;
	text-align: right;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	justify-content: flex-start;
	gap: 116px;
}
.box-immagine img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.box-testi {
	display: flex;
	flex-direction: column;
}

.box-testi-card_item {
	width: 100%;
}
.box-testi-card {
	margin-top: 0;
	padding: 30px;
	background: #f8f8f8;
}
.box-testi-card_item .box-logo img {
	width: 80px;
}
.box-logo {
	margin-bottom: 40px;
}
.box-item-mix {
	align-items: center;
}

/* ==========================================================================
   TITOLI
========================================================================== */

.box-titolo {
	position: relative;
	padding-left: clamp(28px, 4vw, 47px);
	padding-bottom: 20px;
}

.box-titolo::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 3px;
	background: var(--primary-color);
}

.box-titolo h2,
.box-item-mix-titolo h2 {
	margin: 0;
	font-family: var(--font-primary);
	font-size: 32px;
	font-weight: 400;
	line-height: 1.2;
}

.box-sottotitolo h3 {
	margin: 30px 0 0;
	padding-left: clamp(28px, 4vw, 47px);
	margin-top: -40px;
	font-family: var(--font-third);
	font-size: clamp(42px, 10vw, 80px);
	font-weight: 700;
	line-height: 0.9;
	letter-spacing: 2px;
	text-transform: uppercase;

	color: transparent;
	-webkit-text-stroke: 0.9px #e6a31f5e;
}
.box-item-mix-titolo {
	text-align: left;
}

.box-item-mix-descrizione {
	text-align: left;
}
.box-descrizione {
	margin-top: 30px;
}

.box-descrizione p,
.box-item-mix-descrizione p {
	font-family: var(--font-fourth);
	font-size: 16px;
	line-height: 1.7;
}
.segatel-box-immagine-testi .box-button {
	text-align: center;
}
.box-item-mix_content-text {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.box-testi-card ul {
    padding: 0;
    margin: 0;
}
/* ==========================================================================
   ELENCO
========================================================================== */

.box-elenco {
	margin-top: 30px;
	padding-inline: 20px;
}

.box-elenco ol {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 0;
}

.box-elenco li {
	padding-bottom: 18px;
	border-bottom: 1px solid #ececec;
	font-family: var(--font-secondary);
	font-size: 18px;
	font-weight: 400;
	line-height: 1.5;
}
.box-elenco a {
	text-decoration: none;
	color: #404040;
	transition: hover 0.3s ease-in-out;
}

.box-elenco a:hover {
	color: #e6a31f;
}
.box-button {
	margin-top: 30px;
	padding-inline: 20px;
}

/* ==========================================================================
   TABLET
========================================================================== */

@media (min-width: 768px) {
	.box-immagine img {
		aspect-ratio: 6 / 3;
	}
	.box-testi-card {
		padding: 50px;
	}

	.box-titolo h2,
	.box-item-mix-titolo h2 {
		font-size: 40px;
	}

	.box-sottotitolo h3 {
		font-size: clamp(42px, 13vw, 80px);
		margin-top: -60px;
	}

	.box-elenco {
		padding-inline: 30px;
	}
  .box-testi-card_item .box-logo img {
    width: 80px;
  }
	.box-button {
		padding-inline: 30px;
	}
	.segatel-box-immagine-testi .box-button {
		text-align: left;
	}
	.box-item-mix-titolo h2 {
		font-size: 48px;
		font-weight: 400;
	}
}

/* ==========================================================================
   DESKTOP
========================================================================== */

@media (min-width: 1024px) {
	.box-immagine-testi-wrapper {
		flex-direction: row;
		align-items: stretch;
	}
	.segatel-box-immagine-testi .box-button {
		text-align: left;
		padding-inline: 96px;
	}
  .box-testi-card_item .box-logo img {
    width: 80px;
  }
	.box-immagine {
		width: 496px;
	}
	.box-testi {
		width: 55%;
	}
	.box-item-mix {
		width: 45%;
		padding: 80px 40px 0 40px;
		display: flex;
		flex-direction: column;
		align-items: flex-end;
	}
	.home .box-immagine img,
	.home .box-immagine {
		width: 496px;
		height: 100%;
		object-fit: cover;
		padding-bottom: 0;
	}
	.home .box-immagine .box-item-mix_content-text {
		display: none;
	}
	.box-immagine img {
		width: 496px;
		object-fit: cover;
		height: 625px;
	}
	.box-testi {
		display: flex;
		flex-direction: column;
		gap: 20px;
		margin-top: -20px;
		position: relative;
		z-index: 2;
	}

	.box-testi-card {
		margin-top: -120px;
		padding: clamp(50px, 5vw, 80px) clamp(40px, 8vw, 225px) clamp(50px, 5vw, 80px) clamp(30px, 5vw, 120px);
		background: #f8f8f8;
	}

	.box-titolo::before {
		width: 3px;
	}

	.box-titolo h2,
	.box-item-mix-titolo h2 {
		font-size: clamp(36px, 3vw, 48px);
		line-height: 1.1;
	}

	/* Se vuoi l'effetto "AZIENDA" dietro al titolo */
	.box-sottotitolo h3 {
		margin-top: -60px;
		font-size: clamp(56px, 6vw, 100px);
		line-height: 0.82;
		letter-spacing: clamp(1px, 0.2vw, 3px);
	}
	.segatel-box-immagine-testi .box-sottotitolo h3 {
		margin-top: -64px;
		font-size: clamp(56px, 6vw, 100px);
		line-height: 0.82;
		letter-spacing: clamp(1px, 0.2vw, 3px);
	}
	.segatel-box-immagine-testi {
		margin-block: 70px;
	}
	.box-descrizione {
		margin-top: 0;
	}
	.box-descrizione p,
	.box-item-mix-descrizione p {
		font-size: clamp(16px, 1.05vw, 18px);
		line-height: 1.7;
	}

	.box-elenco {
		max-width: 600px;
		padding-inline: 80px;
	}

	.box-elenco li {
		font-size: clamp(18px, 1.4vw, 22px);
		line-height: 1.45;
	}
}

@media (min-width: 1440px) {
	.box-testi-card_item {
		width: 618px;
	}
}

/* ==========================================================================
   BANNER
========================================================================== */
.segatel-banner {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: clamp(45px, 3vw, 30px);
	margin-block: clamp(30px, 5vw, 50px);
	padding: clamp(30px, 4vw, 80px) clamp(20px, 4vw, 30px);
	background: #f8f8f8;
	text-align: center;
}

/* ==========================================================================
   LOGO
========================================================================== */

.segatel-banner img {
	display: block;
	width: clamp(120px, 18vw, 220px);
	height: auto;
	margin: 0 auto;
}

/* ==========================================================================
   TITOLO
========================================================================== */

.segatel-banner .banner-titolo h2 {
	margin: 0;
	font-family: var(--font-primary);
	font-size: clamp(1.6rem, 4vw, 2.625rem);
	font-weight: 500;
	line-height: 1.2;
	text-transform: uppercase;
	max-width: 700px;
	margin-inline: auto;
}

/* ==========================================================================
   BOTTONE
========================================================================== */

.segatel-banner .btn_primary {
	margin-top: clamp(10px, 2vw, 20px);
	width: 100%;
	max-width: 320px;
}

@media (min-width: 768px) {
	.segatel-banner .btn_primary {
		width: auto;
		max-width: none;
	}
}

@media (min-width: 1024px) {
	.segatel-banner .banner-titolo h2 {
		font-size: clamp(1.9rem, 4vw, 2.625rem);
		max-width: 700px;
	}
}
/* ==========================================================================
   PRODOTTI
========================================================================== */

.segatel-prodotti {
	padding-block: 70px;
}

.prodotti-content {
	width: 100%;
	max-width: 1440px;
	margin-inline: auto;
}

/* ==========================================================================
   TITOLO
========================================================================== */

.prodotti-content .box-titolo {
	position: relative;
	padding-left: 30px;
}

.prodotti-content .box-titolo::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 3px;
	background: var(--primary-color);
}

.prodotti-content .box-titolo h2 {
	margin: 0;
	padding-right: 0;
}

/* ==========================================================================
   GRIGLIA
========================================================================== */

.box-prodotti {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
	margin-top: 40px;
}

/* ==========================================================================
   CARD
========================================================================== */

.box-prodotto {
	display: flex;
	flex-direction: column;
	justify-content: space-between;

	background: #fff;
	border: 1px solid #ddd;

	color: #222;
	text-decoration: none;

	overflow: hidden;

	transition:
		transform 0.3s ease,
		box-shadow 0.3s ease,
		border-color 0.3s ease;
}

.box-prodotto:hover {
	transform: translateY(-8px);
	border-color: var(--primary-color);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
}

/* ==========================================================================
   IMMAGINE
========================================================================== */

.box-prodotto-img {
	display: flex;
	align-items: center;
	justify-content: center;

	padding: 20px;

	background: #fff;
}

.box-prodotto-img img {
	display: block;
	width: 100%;
	height: 100%;
	max-height: 190px;
	object-fit: contain;
}

/* ==========================================================================
   INFO
========================================================================== */

.box-prodotto-info {
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 18px 26px;
	background: var(--primary-color);
	color: #fff;
	font-family: var(--font-fourth);
	font-weight: 400;
	font-size: 14px;
	line-height: 1.3;
	text-transform: uppercase;
	text-decoration: none;
}

.box-prodotto-info h4 {
	margin: 0;
	font-family: var(--font-primary);
	font-size: 16px;
	font-weight: 600;
	line-height: 1.35;
}

/* ==========================================================================
   BOTTONE
========================================================================== */

.prodotti-btn {
	display: flex;
	justify-content: center;
	margin-top: 40px;
}

/* ==========================================================================
   TABLET
========================================================================== */

@media (min-width: 768px) {
	.segatel-prodotti {
		padding-block: 90px;
	}

	.prodotti-content .box-titolo h2 {
		padding-right: 20%;
	}

	.box-prodotti {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 25px;
	}

	.box-prodotto-img {
		padding: 25px;
		aspect-ratio: 1 / 1;
	}

	.box-prodotto-info {
		padding: 25px 20px;
		height: 88px;
	}

	.box-prodotto-info h4 {
		font-size: 19px;
	}

	.prodotti-btn {
		justify-content: flex-end;
	}
	.box-prodotto-img img {
		max-height: 250px;
	}
}

/* ==========================================================================
   DESKTOP
========================================================================== */

@media (min-width: 1024px) {
	.segatel-prodotti {
		padding-block: 114px;
	}

	.prodotti-content .box-titolo h2 {
		padding-right: 45%;
	}

	.box-prodotti {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 30px;
	}

	.box-prodotto-img {
		padding: 35px;
	}

	.box-prodotto-info h4 {
		font-size: 20px;
	}
}

/* ==========================================================================
   ATTIVITÀ
========================================================================== */

.segatel-attivita {
	padding: 60px 20px;
	background: var(--dark-gray);
	text-align: center;
}

.attivita-content {
	width: 100%;
	max-width: 1200px;
	margin-inline: auto;
}

.attivita-items {
	display: flex;
	flex-direction: column;
	gap: 70px;
	margin-top: 50px;
}

/* ==========================================================================
   TITOLO
========================================================================== */

.attivita-content .box-titolo {
	position: relative;
	margin-bottom: 50px;
	padding: 0;
}

.attivita-content .box-titolo::before {
	content: '';
	position: absolute;
	top: -25px;
	left: 50%;
	transform: translateX(-50%);
	width: 80px;
	height: 3px;
	background: var(--primary-color);
}
.attivita-titolo {
	padding-bottom: 8px;
}
.attivita-titolo h3 {
	margin: 0;
	font-family: var(--font-primary);
	font-size: 18px;
	font-weight: 400;
	color: var(--primary-color);
}

.attivita-content .box-titolo h2 {
	margin: 0;
	color: #fff;
	font-family: var(--font-primary);
}

.attivita-content .box-sottotitolo h3 {
	margin-top: -77px;
	font-size: clamp(42px, 10vw, 80px);
	padding: 0;
}

/* ==========================================================================
   GRID ATTIVITÀ
========================================================================== */

.box-attivita {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 25px;
}

.card-attivita {
	width: 100%;
}

/* ==========================================================================
   CARD
========================================================================== */

.card-attivita a {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 180px;
	gap: 10px;
	color: #fff;
	text-decoration: none;
	font-family: var(--font-primary);
	transition: transform 0.3s ease;
}

.card-attivita a:hover {
	transform: translateY(-8px);
}

/* ==========================================================================
   LOGO
========================================================================== */

.attivita-logo {
	margin-bottom: 13px;
	height: 100px;
}

.attivita-logo img {
	display: block;
	width: 100%;
	max-width: 120px;
	height: auto;
	object-fit: contain;
	margin-inline: auto;
}

/* ==========================================================================
   TABLET
========================================================================== */

@media (min-width: 768px) {
	.segatel-attivita {
		padding-block: 80px;
		padding-inline: 40px;
	}

	.attivita-content .box-titolo {
		margin-bottom: 70px;
	}

	.attivita-content .box-titolo::before {
		top: -45px;
		width: 120px;
	}

	.attivita-content .box-titolo h2 {
		padding-inline: 20%;
	}

	.attivita-content .box-sottotitolo h3 {
		margin-top: -114px;
	}

	.box-attivita {
		gap: 30px;
	}

	.card-attivita {
		flex: 0 0 calc((100% - 30px) / 2);
		max-width: calc((100% - 30px) / 2);
	}

	.card-attivita a {
		min-height: 200px;
	}

	.attivita-logo img {
		max-width: 140px;
	}
}

/* ==========================================================================
   DESKTOP
========================================================================== */

@media (min-width: 1024px) {
	.segatel-attivita {
		padding-block: 94px;
		padding-inline: 70px;
	}

	.attivita-content .box-titolo h2 {
		padding-inline: 27%;
	}

	.attivita-content .box-titolo::before {
		top: -34px;
		width: 149px;
	}

	.attivita-content .box-sottotitolo h3 {
		margin-top: -115px;
	}

	.box-attivita {
		gap: 35px;
	}

	.card-attivita {
		flex: 0 0 calc((100% - 140px) / 5);
		max-width: calc((100% - 140px) / 5);
	}

	.card-attivita a {
		min-height: 220px;
	}

	.attivita-logo img {
		max-width: 150px;
	}
}
/* ==========================================================================
   PAGINA CONTATTI
========================================================================== */
.page-template-page-contatti .segatel-hero {
	height: 550px;
}

.segatel-pagina-contatti {
	position: relative;
	z-index: 10;
	margin-top: -20px;
	padding: 0 20px 40px;
}
.privacypolicy legend.gfield_label.gform-field-label.gfield_label_before_complex {
  display: none;
}
.gform-theme--framework input[type]:where(:not(.gform-text-input-reset,[type=hidden])):where(:not(.gform-theme__disable,.gform-theme__disable *):not(.gform-theme__disable-framework,.gform-theme__disable-framework *)):focus{
  --gf-local-border-color: var(--primary-color)!important;
  --gf-local-color: var(--primary-color)!important;
  --gf-local-outline-color: var(--primary-color)!important;
}
.gform-theme--framework input[type=checkbox]:where(:not(.gform-theme__disable,.gform-theme__disable *):not(.gform-theme__disable-framework,.gform-theme__disable-framework *))::before{
  color: var(--primary-color)!important;
  
}

.privacypolicy input#input_1_10_1 {
  border: 1px solid;
  border-color: #ccc;
  border-radius: 3px;
  background: #ffffff;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1;
}
.segatel-pagina-contatti .pagina-contatti_content {
	display: flex;
	flex-direction: column;
	width: 100%;
	margin-inline: auto;
	padding: 24px;
	background: #f5f5f5;
}

.segatel-pagina-contatti .contatti_content-item {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 150px;
	font-family: var(--font-third);
}
.segatel-pagina-contatti .contatti_content-item::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 2px;
	background: var(--primary-color);
}

.segatel-pagina-contatti .contatti_content-item:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}

.segatel-pagina-contatti .contatti_content-item:last-child::after {
	display: none;
}

.segatel-pagina-contatti .contatti_content-item h5 {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	min-height: 32px;
	margin: 0;
	font-family: var(--font-third);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
}

.segatel-pagina-contatti .contatti_content-item p {
	margin: 10px 0 0;

	font-family: var(--font-third);
	font-size: 18px;
	font-weight: 400;
	line-height: 1.5;

	word-break: break-word;
}

.segatel-pagina-contatti .contatti_content-item a {
	color: inherit;
	text-decoration: none;
	transition: color 0.3s ease;
}

.segatel-pagina-contatti .contatti_content-item a:hover {
	text-decoration: underline;
}

/* ==========================================================================
   TABLET
========================================================================== */

@media (min-width: 768px) {
	.segatel-pagina-contatti {
		margin-top: -40px;
		padding: 0 30px 60px;
	}

	.segatel-pagina-contatti .pagina-contatti_content {
		padding: 32px;
	}
}

/* ==========================================================================
   DESKTOP
========================================================================== */

@media (min-width: 1024px) {
	.segatel-pagina-contatti {
		margin-top: -80px;
		padding: 0 120px 80px;
	}

	.segatel-pagina-contatti .pagina-contatti_content {
		display: flex;
		flex-direction: row;
		align-items: stretch;
		justify-content: space-between;

		max-width: 1083px;
		padding: 50px 60px;
	}

	.segatel-pagina-contatti .contatti_content-item {
		flex: 1;
		min-width: 0;
		min-height: 163px;

		margin-bottom: 0;
		padding: 0 30px;
	}

	.segatel-pagina-contatti .contatti_content-item:first-child {
		padding-left: 0;
	}

	.segatel-pagina-contatti .contatti_content-item:last-child {
		padding-right: 0;
	}

	.segatel-pagina-contatti .contatti_content-item::after {
		top: 0;
		right: 0;
		bottom: 0;
		left: auto;

		width: 2px;
		height: auto;
	}

	.segatel-pagina-contatti .contatti_content-item h5 {
		font-size: 20px;
	}

	.segatel-pagina-contatti .contatti_content-item p {
		margin-top: 12px;
		font-size: 18px;
	}
}

/* ==========================================================================
   CONTATTI
========================================================================== */

.segatel-contatti {
	position: relative;
	width: 100%;
	padding-top: 60px;
	overflow: hidden;
}

.segatel-contatti .contatti-content {
	position: relative;
	z-index: 2;
	width: 100%;
}

/* ==========================================================================
   TITOLO
========================================================================== */

.segatel-contatti .box-titolo {
	margin-bottom: 50px;
	padding-inline: 0;
	text-align: center;
}

.segatel-contatti .box-titolo::before {
	display: none;
}

.segatel-contatti .box-titolo h2 {
	margin: 0;
	padding: 0;
	font-family: var(--font-primary);
	font-size: clamp(26px, 5vw, 48px);
	line-height: 1.2;
}

.segatel-contatti .box-sottotitolo h3 {
	text-align: center;
	margin-top: -100px;
	padding: 0;
}

/* ==========================================================================
   WRAPPER
========================================================================== */

.segatel-contatti .contatti-wrapper {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 30px;
	margin-top: 50px;
	position: relative;
	z-index: 2;
}

/* ==========================================================================
   INFO
========================================================================== */

.segatel-contatti .contatti-info {
	padding: 30px;
	background: var(--dark-gray);
	color: #fff;
}

.contatti-info_intro {
	position: relative;
	margin-bottom: 50px;
	padding-left: 30px;
}

.contatti-info_intro::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 3px;
	background: var(--primary-color);
}

.contatti-info h3 {
	margin: 0 0 25px;
	font-family: var(--font-primary);
	font-size: clamp(35px, 4vw, 40px);
	font-weight: 400;
}

.contatti-indirizzo {
	margin-bottom: 40px;
	font-family: var(--font-third);
	font-size: 18px;
	font-weight: 500;
}

.contatti-indirizzo h5 {
	margin: 0 0 8px;
	font-family: var(--font-third);
	font-size: 20px;
	font-weight: 700;
}

.contatti-info p {
	margin-bottom: 15px;
	font-family: var(--font-primary);
	font-size: 16px;
	line-height: 1.5;
}

.contatti-info a {
	color: inherit;
	text-decoration: none;
}

.contatti-info a:hover {
	text-decoration: underline;
}

.contatti-telefono,
.contatti-email {
	display: flex;
	align-items: center;
	gap: 20px;
	margin-bottom: 20px;
}

.img-tel img,
.img-email img {
	display: block;
	width: 25px;
	height: 25px;
}

/* ==========================================================================
   FORM
========================================================================== */

.segatel-contatti .contatti-form {
	padding: 30px;
	background: #f8f8f8;
}

.contatti-form .gform_wrapper {
	font-family: var(--font-primary) !important;
}

.contatti-form .gform_required_legend {
	display: none !important;
}

.contatti-form .gfield_label {
	font-family: var(--font-primary) !important;
	font-size: 18px !important;
	font-weight: 500 !important;
}

.contatti-form
	.gform_wrapper
	input:not([type='checkbox']):not([type='radio']):not([type='hidden']):not([type='submit']),
.contatti-form .gform_wrapper textarea,
.contatti-form .gform_wrapper select {
	width: 100% !important;
	padding: 0 15px !important;
	height: 42px !important;
	border: 0 !important;
	border-radius: 6px !important;
	font-family: var(--font-primary) !important;
	font-size: 16px !important;
	box-sizing: border-box !important;
}

.contatti-form .gform_wrapper textarea {
	height: 180px !important;
	padding: 15px !important;
	resize: vertical !important;
}

.contatti-form button#gform_submit_button_1 {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 18px 40px !important;
	background: var(--primary-color) !important;
	border: 0 !important;
	color: #fff !important;
	font-family: var(--font-primary) !important;
	font-size: 16px !important;
	text-transform: uppercase !important;
	cursor: pointer !important;
	transition: background-color 0.3s ease !important;
	border-radius: 0;
}

/* ==========================================================================
   BACKGROUND
========================================================================== */

.contatti-background {
	position: relative;
	z-index: 1;

	width: 100vw;
	height: 280px;

	margin-top: 30px;
	margin-left: calc(50% - 50vw);

	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: scroll;
}

/* ==========================================================================
   TABLET
========================================================================== */

@media (min-width: 768px) {
	.segatel-contatti {
		padding-top: 80px;
	}

	.segatel-contatti .contatti-wrapper {
		gap: 0;
		flex-direction: row;
	}

	.segatel-contatti .contatti-info {
		flex: 0 0 40%;
		padding: 35px;
	}

	.segatel-contatti .contatti-form {
		flex: 0 0 60%;
		padding: 35px;
	}

	.contatti-background {
		height: 450px;
	}
}

/* ==========================================================================
   DESKTOP
========================================================================== */

@media (min-width: 1024px) {
	.segatel-contatti {
		padding-top: 100px;
	}

	.segatel-contatti .box-titolo {
		padding-inline: 8%;
	}

	.segatel-contatti .contatti-wrapper {
		margin-top: 60px;
	}

	.segatel-contatti .contatti-info {
		padding: 80px 40px;
	}

	.segatel-contatti .contatti-form {
		padding: 50px;
	}
	.segatel-contatti .box-sottotitolo h3 {
		text-align: center;
		margin-top: -114px;
	}
	.contatti-background {
		height: 632px;
		margin-top: -267px;
		background-attachment: fixed;
	}
}

/* ==========================================================================
   CONTENT DESCRITTIVO
========================================================================== */

.segatel-content-descrittivo {
	padding: 40px 20px;
	background: var(--dark-gray);
	color: #fff;
}

.segatel-content-descrittivo .segatel-content-descrittivo_item {
	width: 100%;
	margin-inline: auto;
}

/* ==========================================================================
   TITOLO
========================================================================== */

.segatel-content-descrittivo .segatel-content-title {
  position: relative;
	max-width: 750px;
	margin: 0 0 20px;
	font-family: var(--font-primary);
	font-size: 30px;
	font-weight: 400;
	line-height: 1.2;
}

.segatel-content-descrittivo .segatel-content-subtitle {
	margin-bottom: 30px;
}

.segatel-content-descrittivo .segatel-content-subtitle h3 {
  margin: 30px 0 0;
  padding-left: clamp(28px, 4vw, 47px);
  margin-top: -40px;
  font-family: var(--font-third);
  font-size: clamp(42px, 10vw, 80px);
  font-weight: 700;
  line-height: 0.9;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: transparent;
  -webkit-text-stroke: 0.9px #e6a31f5e;
}

/* ==========================================================================
   CONTENUTO
========================================================================== */

.segatel-content-descrittivo .segatel-content-descrittivo_item {
	position: relative;
	padding-left: 20px;
}

.segatel-content-descrittivo .segatel-content-descrittivo_item::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 3px;
	background: var(--primary-color);
}

.segatel-content-descrittivo .segatel-content-columns {
	display: grid;
	grid-template-columns: 1fr;
	gap: 30px;
	align-items: start;
}

.segatel-content-descrittivo .segatel-content-column {
	font-size: 16px;
	line-height: 1.7;
}

.segatel-content-descrittivo .segatel-content-column p:first-child {
	margin-top: 0;
}

.segatel-content-descrittivo .segatel-content-column p:last-child {
	margin-bottom: 0;
}

/* ==========================================================================
   TABLET
========================================================================== */

@media (min-width: 768px) {
	.segatel-content-descrittivo {
		padding: 60px 40px;
	}

	.segatel-content-descrittivo .segatel-content-title {
		font-size: 36px;
	}

	.segatel-content-descrittivo .segatel-content-subtitle {
		margin-bottom: 40px;
	}

	.segatel-content-descrittivo .segatel-content-descrittivo_item {
		padding-left: 30px;
	}

	.segatel-content-descrittivo .segatel-content-columns {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 40px;
	}
}

/* ==========================================================================
   DESKTOP
========================================================================== */

@media (min-width: 1024px) {
	.segatel-content-descrittivo {
		padding: 102px 80px;
	}

	.segatel-content-descrittivo .segatel-content-title {
		font-size: 48px;
		line-height: 52px;
	}

	.segatel-content-descrittivo .segatel-content-subtitle h3 {
		margin-top: -97px;
		font-size: clamp(60px, 7vw, 100px);
		letter-spacing: 3px;
	}

	.segatel-content-descrittivo .segatel-content-descrittivo_item {
		padding-left: 40px;
	}

	.segatel-content-descrittivo .segatel-content-columns {
		gap: 60px;
	}

	.segatel-content-descrittivo .segatel-content-column {
		padding-right: 82px;
	}
}

/* ==========================================================================
   GALLERY
========================================================================== */

.segatel-gallery {
	padding: 70px 0px;
}

.gallery-wrapper {
	width: 100%;
	margin-inline: auto;
}

.gallery {
	width: 100%;
}

.gallery .swiper {
	overflow: hidden;
}

.gallery .swiper-wrapper {
	align-items: stretch;
}

.gallery .swiper-slide {
	height: auto;
}

.gallery .swiper-slide img {
	display: block;
	width: 100%;
	height: auto;
}

/* ==========================================================================
   NAVIGAZIONE
========================================================================== */

.gallery-navigation {
	display: none;
}

.swiper-pagination {
	display: block;
	margin-top: 30px;
}

/* ==========================================================================
   TABLET
========================================================================== */

@media (min-width: 768px) {
	.segatel-gallery {
		padding: 90px 0px;
	}
}

/* ==========================================================================
   DESKTOP
========================================================================== */

@media (min-width: 1024px) {
	.segatel-gallery {
		padding: 134px 0px;
	}

	.gallery-wrapper {
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		gap: 40px;
	}

	.gallery {
		flex: 1;
		min-width: 0;
	}

	.gallery-navigation {
		display: flex;
		align-items: center;
		gap: 15px;
		flex-shrink: 0;
	}

	.gallery-navigation .swiper-button-prev,
	.gallery-navigation .swiper-button-next {
		position: relative;
		inset: auto;
		width: 50px;
		height: 50px;
		margin: 0;
		border: 1px solid var(--primary-color);
	}

	.gallery-navigation .swiper-button-prev::after,
	.gallery-navigation .swiper-button-next::after {
		font-size: 18px;
	}

	.swiper-pagination {
		display: none;
	}
}

/* ==========================================================================
   DOWNLOAD
========================================================================== */

.segatel-download {
	padding-inline: 20px;
}

.segatel-download .segatel-download-content {
	position: relative;
	z-index: 2;

	max-width: 1200px;
	margin-inline: auto;
	margin-top: -40px;
	padding: 30px;

	background: #f8f8f8;
}

/* ==========================================================================
   TITOLO
========================================================================== */

.segatel-download .download-titolo h2 {
	margin: 0;
	margin-bottom: 30px;
	font-family: var(--font-primary);
	font-size: clamp(32px, 5vw, 48px);
	font-weight: 400;
	line-height: 1.2;
}

.download-descrizione p {
	margin: 0;
	margin-bottom: 30px;
	font-family: var(--font-fourth);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.7;
}

/* ==========================================================================
   LISTA
========================================================================== */

.segatel-download .download-list {
	display: grid;
	grid-template-columns: 1fr;
	gap: 30px;
}

.segatel-download .download-item {
	width: 100%;
}

.segatel-download .download-item a {
	display: flex;
	align-items: center;
	gap: 20px;

	text-decoration: none;
}

.segatel-download .download-icon img {
	display: block;
	width: 70px;
	height: auto;
}

.segatel-download .download-title {
	font-family: var(--font-third);
	font-size: 15px;
	font-weight: 700;
	color: var(--dark-gray);
}

/* ==========================================================================
   DOCUMENTO SINGOLO
========================================================================== */

.segatel-download .download-list:has(.download-item:only-child) {
	grid-template-columns: 1fr;
}

/* ==========================================================================
   TABLET
========================================================================== */

@media (min-width: 768px) {
	.segatel-download {
		padding-inline: 40px;
	}
	.segatel-download .download-title {
		font-size: 18px;
	}
	.segatel-download .segatel-download-content {
		margin-top: -60px;
		padding: 45px;
	}

	.segatel-download .download-list {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: 35px;
	}
}

/* ==========================================================================
   DESKTOP
========================================================================== */

@media (min-width: 1024px) {
	.segatel-download {
		padding-inline: 120px;
	}

	.segatel-download .segatel-download-content {
		margin-top: -86px;
		padding: 55px;
	}

	.segatel-download .download-titolo h2 {
		font-size: 48px;
		line-height: 52px;
	}

	.segatel-download .download-list {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: 35px;
	}
}

/* ==========================================================================
   MAPPA
========================================================================== */

.segatel-mappa {
	padding-inline: 20px;
}

.segatel-mappa .segatel-mappa-content {
	position: relative;
	z-index: 2;

	max-width: 1200px;
	margin-inline: auto;
	margin-top: -40px;
}

/* ==========================================================================
   MAPPA
========================================================================== */

.segatel-mappa .mappa-google,
.segatel-mappa .mappa-placeholder {
	width: 100%;
	height: 320px;
}

.segatel-mappa .mappa-google iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

.segatel-mappa .mappa-placeholder {
	background: var(--dark-gray);
}

/* ==========================================================================
   INFORMAZIONI
========================================================================== */

.segatel-mappa .informazioni-mappa {
	width: 100%;
	margin-top: 30px;

	font-family: var(--font-third);
	font-size: 16px;
	line-height: 1.6;
}

/* ==========================================================================
   BLOCCO INFERIORE
========================================================================== */

.segatel-mappa .ulteriori-informazioni {
	display: grid;
	grid-template-columns: 1fr;
	gap: 30px;
	margin-top: 40px;
}

.segatel-mappa .indicazioni {
	order: 2;

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;

	font-family: var(--font-third);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.6;
	text-align: left;
}

.segatel-mappa .indicazioni p {
	margin: 0;
}

.segatel-mappa .immagine-luogo {
	order: 1;
}

.segatel-mappa .immagine-luogo img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

/* ==========================================================================
   TABLET
========================================================================== */

@media (min-width: 768px) {
	.segatel-mappa {
		padding-inline: 40px;
	}

	.segatel-mappa .segatel-mappa-content {
		margin-top: -80px;
	}

	.segatel-mappa .mappa-google,
	.segatel-mappa .mappa-placeholder {
		height: 450px;
	}

	.segatel-mappa .informazioni-mappa {
		max-width: 350px;
		margin-top: 40px;

		font-size: 17px;
	}

	.segatel-mappa .ulteriori-informazioni {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: center;
		gap: 40px;
		margin-top: 45px;
	}

	.segatel-mappa .indicazioni {
		order: 1;
		align-items: flex-end;
		text-align: right;
	}

	.segatel-mappa .immagine-luogo {
		order: 2;
	}
}

/* ==========================================================================
   DESKTOP
========================================================================== */

@media (min-width: 1024px) {
	.segatel-mappa .mappa-google,
	.segatel-mappa .mappa-placeholder {
		height: 583px;
	}

	.segatel-mappa .informazioni-mappa {
		width: 50%;
		max-width: 258px;
		font-size: 20px;
	}

	.segatel-mappa .ulteriori-informazioni {
		margin-top: -137px;
	}

	.segatel-mappa .indicazioni {
		font-size: 20px;
	}
}
