/* -----------------------------------------------------------------------------
      Google search box
----------------------------------------------------------------------------- */

.navigation0 .search0 {
	border-bottom: 1px solid black;
	padding-bottom: .625rem;
}

body.dark0 .search0 {
	border-color: white;
}

/* SEARCH LAYOUT */
.search0 {
	display: flex;
	align-items: center;
	width: 100%;
	gap: 8px; /* meglio di margin-left sulla icon */
}

/* Google CSE form */
.search0 form.gsc-search-box {
	margin: 0;
	flex: 1 1 auto;
	min-width: 0;
	width: auto !important;
}

/* Ensure Google internal table doesn't break layout */
.search0 table.gsc-search-box {
	width: 100% !important;
}

/* Calendar icon */
.search0 .icon_calendar0 {
	flex-shrink: 0;
  position: initial;
}

/* INPUT FIX */
.search0 .gsib_a {
	background-position: right 0 center;
	padding: 0;
}

.search0 .gsib_b {
	padding: 0;
	display: none;
}

.search0 .gsib_a .gsc-input {
	padding-right: 1.5rem !important;
	width: 100% !important;
}

.search0 .gsib_a .gsc-input,
.search0 .gsib_a .gsc-input::placeholder {
	font-size: 1.375rem;
	line-height: 1.56rem;
	background: none !important;
	color: black;
}

.search0 .gsib_a .gsc-input::placeholder {
	color: #444746 !important;
}

.search0 .gsc-input-box {
	border: 0;
	background: transparent;
	border-radius: 0;
}

/* -----------------------------------------------------------------------------
   FIX CASE: SOLO ICON (NO GCS FORM)
----------------------------------------------------------------------------- */

.search0:not(:has(form)) {
	justify-content: flex-end; /* icon si posiziona bene */
}

.search0:not(:has(form)) .icon_calendar0 {
	margin-left: 0;
}

/* -----------------------------------------------------------------------------
      Google search results
----------------------------------------------------------------------------- */

.main0 .gsc-control-cse {
	background-color: transparent;
	border: 0;
	font-family: inherit;
	padding: 0;
}

.main0 .gsc-control-cse * {
	font-family: standard_ct_lightlight, Helvetica, sans-serif;
	font-size: 1.125rem;
	line-height: 1.375rem;
	color: black !important;
}

.main0 .gsc-control-cse b {
	font-family: standard_ctmedium, Helvetica, sans-serif;
}

.main0 .gsc-control-cse .gsc-wrapper {
	max-width: none;
}

/* Refinements */
.main0 .gsc-control-cse .gsc-refinementsArea {
	border-bottom: 3px solid black;
	margin: 0;
	padding: 0;
}

.main0 .gsc-control-cse .gsc-refinementHeader {
	margin: 0;
	margin-right: 1.35rem;
}

.main0 .gsc-control-cse .gsc-refinementHeader.gsc-refinementhActive {
	border-bottom: 0;
}

.main0 .gsc-control-cse .gsc-refinementHeader.gsc-refinementhActive span {
	font-family: standard_ctmedium, Helvetica, sans-serif;
}

.main0 .gsc-control-cse .gsc-result-info {
	padding: 0;
}

/* Results */
.main0 .gsc-control-cse .gsc-results .gs-title {
	font-size: 1.375rem;
	line-height: 1.56rem;
}

.main0 .gsc-control-cse .gsc-results .gsc-url-top * {
	font-size: 1rem;
	line-height: 1.25rem;
}

.main0 .gsc-control-cse .gsc-results .gsc-webResult.gsc-result {
	padding: .625rem 0 1.35rem 0;
}

.main0 .gsc-control-cse .gsc-results .gsc-webResult.gsc-result:not(:first-child) {
	border-top: 1px solid black;
}

.main0 .gsc-control-cse .gsc-results .gsc-webResult-divider {
	display: none;
}

/* Pager */
.main0 .gsc-control-cse .gsc-results .gsc-cursor-box {
	border: none;
	border-radius: 0;
	background-color: transparent;
	margin: .625rem 0 1.35rem 0;
	padding-top: .625rem;
	text-align: left;
	border-top: 1px solid black;
}

.main0 .gsc-control-cse .gsc-results .gsc-cursor-box * {
	font-size: 1rem;
	line-height: 1.25rem;
}

.main0 .gsc-control-cse .gsc-results .gsc-cursor-chevron {
	fill: black;
}

.main0 .gsc-control-cse .gsc-results .gsc-cursor-page {
	padding: .1875rem .625rem;
}

.main0 .gsc-control-cse .gsc-results .gsc-cursor-page:hover {
	text-decoration: none;
}

.main0 .gsc-control-cse .gsc-results .gsc-cursor-page.gsc-cursor-current-page {
	border-bottom: 3px solid black !important;
	font-weight: normal;
}

/* Branding */
.main0 .gsc-control-cse .gcsc-find-more-on-google-root,
.main0 .gsc-control-cse .gcsc-more-maybe-branding-root,
.main0 .gsc-control-cse .gcsc-branding {
	display: none;
}

/* Mobile fix */
@media screen and (max-width: 79.9375em) {
	.search0 form.gsc-search-box {
		width: 100% !important;
		max-width: none;
	}
}