/*
 * immobiliare.cagliari.it: stili del sito (misurati sul sito Astra 4.13 + Elementor 4.3 dismesso).
 *
 * Breakpoint: Elementor 1024 (tablet) e 767 (mobile) per le sezioni; Astra 921 (menu mobile),
 * 768 e 544 per tipografia e logo. Sotto 768 px Astra riduce html a 85,5% (1rem = 13,68 px):
 * le misure in rem/em qui sotto riproducono lo stesso ridimensionamento.
 *
 * Classi:
 *  ic-sec / ic-con / ic-col / ic-w   sezione, contenitore 1140, colonna, blocco (come section,
 *                                    container, column, widget di Elementor)
 *  ic-h                              titolo con le regole dei widget heading di Elementor
 *  ic-text, ic-card, ic-formcard     testi, card dei servizi, card con il modulo
 */

/* ---------------------------------------------------------------- Icone (font del tema Astra, vedi assets/fonts/astra/LEGGIMI.txt) */
@font-face {
	font-family: "ic-astra-icons";
	src: url(../fonts/astra/astra.woff) format("woff"), url(../fonts/astra/astra.ttf) format("truetype");
	font-weight: normal;
	font-style: normal;
	font-display: fallback;
}

/* ---------------------------------------------------------------- Base (Astra) */
html { font-size: 93.75%; }
@media (max-width: 768px) { html { font-size: 85.5%; } }
body { font-size: 1rem; line-height: 1.85714286; }
h1, h2, h3, h4, h5, h6 { font-weight: 700; color: #000f23; }
h1 { font-size: 5.3333333rem; }
h2 { font-size: 2.3333333rem; }
h3 { font-size: 1.6666667rem; }
h4 { font-size: 1.3333333rem; line-height: 1.2em; }
h5 { font-size: 1.2rem; line-height: 1.2em; }
h6 { font-size: 1rem; line-height: 1.25em; }
@media (max-width: 768px) {
	h1 { font-size: 50px; }
	h2 { font-size: 35px; }
	h3 { font-size: 22px; }
}
@media (max-width: 544px) {
	h1 { font-size: 40px; }
	h2 { font-size: 25px; }
	h3 { font-size: 20px; }
}
.entry-content a:not(.p2w-btn) { text-decoration: underline; }
.p2w-btn, .wp-block-button__link { font-size: 1.0666667rem; }

/* ---------------------------------------------------------------- Header */
.site-header__inner { min-height: 0; gap: 0; padding-top: 15px; padding-bottom: 15px; }
.custom-logo-link { padding-top: 22px; }
.custom-logo-link img { width: 190px; max-width: 190px; }
.main-navigation a { padding: 0 15px; line-height: 3em; }
.site-header__button--desktop {
	margin: 0 15px;
	padding: 10px 20px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
}
.site-header__button--desktop:hover, .site-header__button--desktop:focus { background: #e04700; color: #fff; }
/* Header trasparente: voce attiva e passaggio del mouse verdi (CSS aggiuntivo di Astra). */
.p2w-header-transparent .site-header .main-navigation .menu > li > a:hover,
.p2w-header-transparent .site-header .main-navigation .menu > li:focus-within > a,
.p2w-header-transparent .site-header .main-navigation .current-menu-item > a,
.p2w-header-transparent .site-header .main-navigation .current-menu-ancestor > a { color: #79be56 !important; }

/* Menu mobile (Astra: sotto 921 px). */
@media (max-width: 921px) {
	.menu-toggle {
		width: 45px;
		height: 47.3px;
		padding: 0 11.25px;
		border-radius: 3px;
		background: #fff;
		color: #000;
	}
	.p2w-header-transparent .site-header:not(.is-stuck) .menu-toggle { color: #000; }
	.menu-toggle svg { display: none; }
	/* Glifi del font di icone Astra (menu \e5d2, chiudi \e5cd), stessa resa del sito dismesso. */
	.menu-toggle__open, .p2w-menu-open .menu-toggle__close { display: inline-block; }
	.menu-toggle__open::before, .menu-toggle__close::before {
		display: inline-block;
		font-family: "ic-astra-icons";
		font-size: 22.5px;
		font-style: normal;
		font-weight: 400;
		line-height: 2.05;
		vertical-align: middle;
		-webkit-font-smoothing: antialiased;
	}
	.menu-toggle:focus { outline: 1px dotted currentColor; outline-offset: 0; } /* 1.0.4: come Astra dopo il clic */
	.menu-toggle__open::before { content: "\e5d2"; }
	.menu-toggle__close::before { content: "\e5cd"; }
	.p2w-menu-open .site-header__inner { padding-bottom: 0; }
	.p2w-mobile-menu--dropdown .main-navigation__panel {
		background: #f9f9f9;
		border-top: 1px solid #ddd;
		box-shadow: none;
		max-height: none;
	}
	.main-navigation__panel .menu > li { border-top: 0; }
	.main-navigation__panel .menu a {
		padding: 0 20px 0 25px; /* 1.0.4: testo a 25 px dal bordo come in Astra */
		border-bottom: 1px solid #ddd;
		color: #1d1e1d;
		font-size: 15px;
		line-height: 45px;
	}
	.main-navigation__panel .menu .current-menu-item > a,
	.main-navigation__panel .menu a:hover,
	.main-navigation__panel .menu a:focus { color: #79be56; }
}
/* 1.0.4: tra 769 e 921 px Astra usa il colore dei link dell'header (#000) per le voci del menu aperto
   (sull'header trasparente il bianco su fondo chiaro resta corretto: voci nere, differenza voluta). */
@media (min-width: 769px) and (max-width: 921px) {
	.main-navigation__panel .menu a { color: #000; }
}
@media (max-width: 768px) {
	.custom-logo-link { padding-top: 0; }
	.custom-logo-link img { width: 220px; max-width: 220px; }
	.site-header__inner { padding-top: 1.5rem; padding-bottom: 1.5rem; }
	.menu-toggle { width: 41px; height: 43.1px; padding: 0 10.26px; }
	.menu-toggle__open::before, .menu-toggle__close::before { font-size: 20.52px; }
	.main-navigation__panel .menu a { font-size: 2rem; line-height: 3em; }
}
@media (max-width: 544px) {
	.site-header__inner { padding-top: 1rem; padding-bottom: 1rem; }
}

/* ---------------------------------------------------------------- Footer (small footer Astra) */
.site-footer__inner { gap: 0 40px; padding-top: 2.66666em; padding-bottom: 2.66666em; align-items: center; }
.site-footer__credits, .site-footer__logo { flex: 1 1 0; min-width: 0; }
.site-footer__logo { text-align: right; line-height: 0; }
.site-footer__logo img { width: 50%; max-height: none; height: auto; }
.site-footer__bottom { padding-bottom: 20px; font-size: 13px; }
/* 1.0.3: prima riga del footer su una riga come in Astra ("Soimm Srl Unipersonale" la allunga:
   sborda nello spazio vuoto a sinistra del logo, che e' allineato a destra). Sotto 1058 px va a capo anche in Astra. */
@media (min-width: 1058px) { .site-footer__credits .p2w-nowrap { white-space: nowrap; } }
@media (max-width: 768px) {
	.site-footer__inner { text-align: center; padding-top: 2em; padding-bottom: 2em; }
	.site-footer__logo { margin-top: 1em; text-align: center; }
}
@media (max-width: 767px) {
	.site-footer__inner { flex-direction: column; align-items: stretch; gap: 0; }
	.site-footer__credits { align-self: flex-start; max-width: 100%; } /* come Astra: blocco largo quanto il testo */
}
/* 1.0.6: la riga delle pagine legali, l'ultima della pagina, non deve finire sotto i pulsanti fissi:
   WhatsApp (Joinchat) a sinistra fino a 88 px (74 su mobile), chat SOIMM e "torna su" a destra
   (da 84 px dal bordo). Sopra 1383 px il contenitore parte gia' oltre i pulsanti. */
@media (max-width: 1383px) { .site-footer__legal { padding-left: 76px; } }
@media (max-width: 767px) { .site-footer__legal { padding-left: 64px; padding-right: 72px; } }

/* Torna su (Astra: 2.1em, a destra, glifo \e900 del font Astra ruotato di 180 gradi). */
.p2w-scroll-top { display: block; right: 30px; bottom: 30px; width: 2.1em; height: 2.1em; border-radius: 2px; font-size: 1rem; line-height: 2.1; text-align: center; transform: rotate(180deg); }
.p2w-scroll-top svg { display: none; }
.p2w-scroll-top::before { content: "\e900"; font-family: "ic-astra-icons"; font-weight: 400; text-decoration: inherit; }

/* Riquadro nascosto di Ninja Google Review senza il suo CSS (vedi inc/site.php). */
.ic-no-reviews .njt-review-badge-modal { display: none; }

/* ---------------------------------------------------------------- Struttura delle sezioni (Elementor) */
.ic-sec.p2w-section { padding-top: 0; padding-bottom: 0; }
.ic-sec { position: relative; }
.ic-con { flex-wrap: nowrap; }
.ic-col { display: flex; flex-direction: column; justify-content: flex-start; width: 100%; }
.ic-con--nogap > .ic-col { padding: 0; }
.ic-con--middle > .ic-col { justify-content: center; }
.ic-w { position: relative; width: 100%; }
.ic-col > .ic-w:not(:last-child), .ic-card > .ic-w:not(:last-child) { margin-bottom: 20px; }
.ic-h { margin: 0; padding: 0; line-height: 1; }
h4.ic-h, h5.ic-h { line-height: 1.2em; }
h6.ic-h { line-height: 1.25em; }
.ic-kicker { color: #4f3a33; }
.ic-green { color: #349145; }
.ic-text p { margin: 0 0 1.6em; }
.ic-text--18 { font-size: 18px; }
.ic-text--justify { text-align: justify; font-size: 18px; line-height: 1.6em; }
@media (max-width: 1024px) {
	.ic-con { flex-wrap: wrap; }
}
@media (max-width: 767px) {
	.ic-con > .ic-col { width: 100%; }
}

/* ---------------------------------------------------------------- Hero (Home e Contatti) */
.ic-hero {
	background-color: #fff;
	background-image: var(--ic-bg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
@media (min-width: 1025px) { .ic-hero, .ic-guadagna { background-attachment: fixed; } }
.ic-hero--home { background-position: bottom center; background-repeat: repeat; }
.ic-hero--home .ic-hero__main { width: 65%; padding: 16.25% 6.5% 2.6% 0; }
.ic-hero--home .ic-hero__side { width: 35%; padding: 170px 0 0; justify-content: flex-end; }
.ic-hero--home .ic-hero__main > .ic-w { margin-bottom: 0; }
.ic-hero__kicker { padding: 7px; border-radius: 10px; background: #fff; }
.ic-hero__kicker h1 { font-size: 1.7em; text-transform: uppercase; color: #4f3a33; }
.ic-hero__title { margin-top: 30px; }
.ic-hero__title h2 { font-size: 2.8em; line-height: 1.2em; letter-spacing: .3px; color: #fff; }
.ic-divider { display: flex; padding: 25px 0; }
.ic-divider span { display: block; width: 80%; border-top: 5px solid #79be56; }
.ic-hero__text { padding: 20px; background: rgba(255, 255, 255, .77); color: #000; font-size: 1.3em; line-height: 1.5em; }
.ic-hero__cta { margin-top: 9px; }
.ic-btn--hero {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	padding: 10px 20px;
	font-weight: 600;
	letter-spacing: -.5px;
	text-transform: uppercase;
	box-shadow: 0 0 20px 0 rgba(0, 15, 35, .12);
}
.ic-btn__icon { width: .84375em; height: 1em; flex: 0 0 auto; } /* fa-phone-square-alt: 13,5 px a 16 px */
.ic-hero__badge { margin-bottom: 40px; padding-bottom: 31px; text-align: right; line-height: 0; }
.ic-hero__badge img { width: 200px; max-width: 100%; height: 200px; }

.ic-hero--contatti.p2w-section { padding-top: 30px; }
.ic-hero--contatti .ic-hero__main { width: 60%; padding: 9% 6% 3% 0; }
.ic-hero__kicker-green { color: #349145; text-transform: none; }
.ic-hero__h1 { margin-top: 30px; }
.ic-hero__h1 h1 { font-size: 3.6em; color: #fff; }
/* Colonna senza blocchi: in Elementor padding e margini non si applicavano, conta solo lo sfondo. */
.ic-hero__photo {
	width: 40%;
	padding: 0 !important;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}
.ic-hero__photo { min-height: 1px; }
.ic-shape-arrow svg { height: auto; max-width: none; }

@media (max-width: 1024px) {
	.ic-hero.ic-sec.p2w-section { padding: 125px 50px 0; }
	.ic-hero--home .ic-hero__main, .ic-hero--contatti .ic-hero__main { width: 65%; padding: 0 10px 50px 0; }
	.ic-hero--home .ic-hero__side, .ic-hero__photo { width: 35%; padding: 0; }
}
@media (max-width: 767px) {
	.ic-hero.ic-sec.p2w-section { padding: 150px 25px 0; }
	.ic-hero--home { background-image: var(--ic-bg-m, var(--ic-bg)); background-position: center center; background-repeat: no-repeat; }
	.ic-hero--home .ic-hero__main, .ic-hero--contatti .ic-hero__main { width: 100%; padding: 0; }
	.ic-hero--home .ic-hero__side { width: 100%; margin-top: 50px; }
	.ic-hero__photo { width: 100%; }
	.ic-hero__kicker, .ic-hero__title, .ic-hero__main .ic-w { text-align: center; }
	.ic-hero__kicker h1 { font-size: 1.5em; }
	.ic-hero__title h2 { font-size: 2.3em; }
	.ic-divider { padding: 15px 0; justify-content: center; }
	.ic-hero__text { padding: 5px; text-align: center; line-height: 1.7em; }
	.ic-hero__cta { margin-top: 50px; }
	.ic-hero__badge { text-align: center; }
}

/* ---------------------------------------------------------------- Sezioni di testo */
.ic-sec--50.p2w-section { padding-top: 50px; padding-bottom: 50px; }
.ic-servizi.p2w-section, .ic-intro.p2w-section { padding-top: 125px; padding-bottom: 100px; }
@media (max-width: 1024px) {
	.ic-servizi.p2w-section, .ic-intro.p2w-section { padding: 80px 30px; }
}
@media (max-width: 767px) {
	.ic-servizi.p2w-section, .ic-intro.p2w-section { padding: 50px 20px; }
}

/* Card dei servizi (inner section + colonna Elementor con testimonial) */
.ic-card-row { display: flex; margin-top: 30px; }
.ic-col > .ic-card-row:nth-child(3) { margin-top: 80px; }
.ic-card {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	min-width: 0;
	margin: -20px 20px 40px;
	padding: 30px;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 0 35px 0 rgba(93, 114, 128, .15);
}
.ic-card__title { color: #4f3a33; }
.ic-card__text { margin-bottom: 20px; font-size: 18px; color: #000; text-align: start; }
@media (min-width: 768px) and (max-width: 1024px) {
	.ic-card-row > .ic-card { flex: 0 0 calc(50% - 40px); }
}
@media (max-width: 767px) {
	.ic-card-row { padding-top: 15px; }
	.ic-card { margin: 0 0 30px; }
	.ic-card > .ic-w:not(:last-child) { margin-bottom: 0; }
}

/* ---------------------------------------------------------------- Guadagna con SOIMM (Home) */
.ic-guadagna {
	background-image: var(--ic-bg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.ic-guadagna.p2w-section { padding: 125px 0 0; }
.ic-guadagna__foto { width: 50%; justify-content: flex-end; }
.ic-guadagna__img { text-align: right; line-height: 0; }
.ic-guadagna__img img { width: 500px; filter: brightness(109%) contrast(78%); }
.ic-guadagna__card {
	width: calc(50% - 40px);
	margin-left: 40px;
	padding: 50px !important;
	border-radius: 20px 20px 0 0;
	background: #fff;
}
.ic-guadagna__title { font-size: 26px; text-align: center; color: #b17f49; }
@media (max-width: 1024px) {
	.ic-guadagna.p2w-section { padding: 80px; }
	.ic-guadagna__card { width: 100%; margin-left: 0; border-radius: 20px; }
}
@media (max-width: 767px) {
	.ic-guadagna.p2w-section { padding: 50px 25px 0; }
	.ic-guadagna__con { flex-direction: column-reverse; }
	.ic-guadagna__foto { width: 100%; margin-top: 50px; }
	.ic-guadagna__img { text-align: center; }
	.ic-guadagna__img img { width: 250px; }
	.ic-guadagna__card { padding: 30px !important; border-radius: 40px; }
}

/* Card con il modulo (Home e Contatti) */
.ic-formcard__title { color: #000; }
.ic-formcard__title.ic-green { color: #349145; }
.ic-formcard__intro.ic-h { font-size: 18px; font-weight: 400; line-height: 1.3em; text-transform: none; }
@media (max-width: 767px) {
	.ic-formcard__title { font-size: 18px; line-height: 1.2em; text-align: center; }
}

/* ---------------------------------------------------------------- Contatti: recapiti e modulo */
.ic-recapiti { margin: 30px 0; }
.ic-recapiti__dati { width: 50%; padding: 0 20px !important; }
.ic-recapiti__modulo {
	width: calc(50% - 40px);
	margin: 0 20px;
	padding: 0 !important;
	border-radius: 20px 20px 0 0;
	background: #fff;
}
.ic-formcard__intro-wrap { padding-bottom: 35px; }
@media (max-width: 1024px) {
	.ic-recapiti__modulo { width: 100%; margin: 0; padding: 50px !important; border-radius: 20px; }
}
@media (max-width: 767px) {
	.ic-recapiti__dati { width: 100%; }
	.ic-recapiti__title { font-size: 18px; line-height: 1.2em; text-align: center; }
	.ic-recapiti__modulo { padding: 30px !important; border-radius: 40px; }
	.ic-formcard__intro-wrap { padding-bottom: 0; }
}
.ic-mappa .p2w-embed { height: 340px; }

/* ---------------------------------------------------------------- Modulo (come WPForms "classic" + Astra) */
.ic-formcard__form .p2w-form-wrap { margin-bottom: 26px; }
.p2w-form__grid { display: block; }
.p2w-field { padding: 10px 0; }
.p2w-field--small { max-width: 25%; }
@media (max-width: 767px) { .p2w-field { padding: 10px 1px; } }
.p2w-field__label { margin: 0; font-weight: 700; line-height: inherit; }
.p2w-req { color: #ff0000; font-weight: 400; }
.p2w-form legend.p2w-field__label { width: 100%; }
.p2w-form input[type="text"], .p2w-form input[type="email"], .p2w-form input[type="tel"], .p2w-form input[type="number"] {
	display: block;
	padding: .75em;
	line-height: normal;
	color: #666;
}
.p2w-form .p2w-check { display: block; margin: 0; }
.p2w-form .p2w-check input { display: inline-block; width: 13px; height: 13px; margin: 2px 10px 0 3px; vertical-align: baseline; }
.p2w-form .p2w-check input + span { margin-left: -.263em; } /* annulla lo spazio tra casella e testo */
/* "Altre informazioni" era un campo WPForms con le opzioni in linea (li inline-block, margine 20). */
.p2w-form .p2w-field:has(input[name="p2w_f[altre][]"]) .p2w-check { display: inline-block; margin-right: 20px; }
.p2w-form__actions { margin-top: 0; padding-top: 10px; }
.p2w-form__submit { font-size: 1.0666667rem; }

/* ---------------------------------------------------------------- Pagina 404 (layout Astra "separate container") */
.error404 { background: #f5f5f5; }
.error404 .site-header { background: #fff; }
.ic-404 { width: 100%; max-width: 1240px; margin: 0 auto; padding: 60px 20px; }
.ic-404__box { padding: 5.34em 6.67em; background: #fff; text-align: center; }
.ic-404__title { margin: 0; font-size: 80px; font-weight: 400; line-height: 1.2; color: #4f3a33; }
.ic-404__sub { margin: 1em 0 0; font-size: 1.5rem; font-weight: 700; line-height: 1.85714286; color: #000; }
.ic-404 .search-form { position: relative; display: block; max-width: 370px; margin: 2em auto 0; }
.ic-404 .search-field { width: 100%; padding: 12px 45px 12px 15px; border: 1px solid #ddd; border-radius: 2px; background: transparent; color: #666; line-height: normal; }
.ic-404 .search-submit { position: absolute; top: 0; right: 0; z-index: 2; width: 45px; height: 100%; padding: 0; border: 0; background: transparent; color: transparent; cursor: pointer; }
.ic-404 .search-submit svg { display: none; }
.ic-404 .search-form::after { content: "\e8b6"; position: absolute; top: 50%; right: 15px; font-family: "ic-astra-icons"; font-size: 1.2em; font-weight: 400; color: #000; transform: translate(0, -50%); pointer-events: none; }
@media (max-width: 1200px) { .ic-404__box { padding: 3.34em 2.4em; } }
@media (max-width: 768px) {
	.ic-404 { padding: 1.5em 20px; }
	.ic-404__box { padding: 1.5em 2.14em; }
	.ic-404__title { font-size: 50px; }
}
@media (max-width: 544px) {
	.ic-404 { padding: 1.5em .54em; }
	.ic-404__box { padding: 1.5em 1em; }
	.ic-404__title { font-size: 40px; }
}

/* ---------------------------------------------------------------- Ricerca e archivi (blog di Astra, "separate container")
 * Misure di Astra 4.13: contenitore 1240 con 20 px di margine, riquadri bianchi su fondo #f5f5f5,
 * padding 5.34em 6.67em (3.34em 2.4em fino a 1200, 1.5em 2.14em fino a 768, 1.5em 1em fino a 544).
 * Template: search.php, archive.php, template-parts/content-ic-blog.php e content-ic-none.php. */
.ic-blog-page { background: #f5f5f5; }
.ic-blog { display: flow-root; width: 100%; max-width: 1240px; margin: 0 auto; padding: 0 20px; }
.ic-blog__primary { margin: 4em 0; }
@media (max-width: 768px) {
	.ic-blog { max-width: 100%; }
	.ic-blog__primary { margin: 1.5em 0; }
}
.ic-blog__desc { margin: 0; }
.ic-blog__title { margin: 0 0 4px; font-size: 2.8571429rem; font-weight: 300; line-height: 1.2; color: #4f3a33; text-transform: none; }
.ic-blog__desc--search { padding: 5em 6.67em 3.33333em; background: #eee; }
.ic-blog__desc--archive { padding: 3em; background: #fff; text-align: left; }
.ic-blog__desc--archive .ic-blog__title { font-size: 2.6666667rem; line-height: 1.4em; text-transform: capitalize; }
.ic-blog__post { margin: 0; padding: 5.34em 6.67em; border-bottom: 1px solid #ddd; background: #fff; }
.ic-blog__post:last-of-type { border-bottom: 0; }
.ic-blog__post-title { margin: 0 0 .2em; font-size: 2rem; font-weight: 400; line-height: 1.23em; color: #000f23; }
.ic-blog__post-title a { color: #000; }
.ic-blog__post-title a:hover, .ic-blog__post-title a:focus { color: #4f3a33; }
.ic-blog__meta { margin: 0 0 1em; line-height: 1.45; color: #4f3a33; }
.ic-blog__excerpt p { margin: 0; }
.ic-blog__more { margin: 1.5em 0 .8em; }
.ic-blog__more a { display: inline-block; color: #4f3a33; }
.ic-blog__more a:hover, .ic-blog__more a:focus { color: #666; }
.ic-blog__none { padding: 5.34em 6.67em; background: #fff; }
.ic-blog__none p { margin: 0 0 1.75em; }
.ic-blog__none .page-content > :last-child { margin-bottom: 0; }
.search .ic-blog__none .ic-blog__search { margin-bottom: 3em; }
.ic-blog__search .search-field {
	width: auto;
	margin: 0;
	padding: .75em;
	border: 1px solid #ddd;
	border-radius: 2px;
	background: #fafafa;
	color: #666;
	font: inherit;
	line-height: normal;
	vertical-align: baseline;
	box-shadow: none;
	appearance: none;
}
.ic-blog__search .search-field:focus { background: #fff; color: #111; }
.ic-blog__search .search-submit {
	margin: 0;
	padding: 10px 20px;
	border: 0;
	border-radius: 3px;
	background: #4f3a33;
	color: #fff;
	font-family: inherit;
	font-size: 1.0666667rem;
	font-weight: 700;
	line-height: 1em;
	vertical-align: baseline;
	cursor: pointer;
}
.search .ic-blog__search .search-submit { padding: 10px 15px; border-radius: 2px; line-height: 1.85714; }
.ic-blog__search .search-submit:hover, .ic-blog__search .search-submit:focus { background: #b17f49; }
@media (max-width: 1200px) {
	.ic-blog__desc--search, .ic-blog__post, .ic-blog__none { padding: 3.34em 2.4em; }
}
@media (max-width: 992px) {
	.ic-blog__desc--search { padding: 2.14em; }
}
@media (max-width: 768px) {
	.ic-blog__post, .ic-blog__none { padding: 1.5em 2.14em; }
	.ic-blog__post-title { font-size: 30px; }
}
@media (max-width: 544px) {
	.ic-blog { padding: 0 .54em; }
	.ic-blog__desc--search, .ic-blog__post, .ic-blog__none { padding: 1.5em 1em; }
}

/* ---------------------------------------------------------------- Pagine semplici (es. pagine legali) */
.entry-content:not(.entry-content--full) h2 { font-size: 1.6666667rem; line-height: 1.3; margin-top: 1.5em; }
.entry-content:not(.entry-content--full) h3 { font-size: 1.3333333rem; line-height: 1.3; margin-top: 1.2em; }
.entry-content:not(.entry-content--full) ul { margin-left: 1.5em; }
.entry-header .entry-title { font-size: 2rem; line-height: 1.2; } /* Astra: titolo pagina 30 px */
.entry-content:not(.entry-content--full) table { display: block; overflow-x: auto; }
.entry-content:not(.entry-content--full) td { overflow-wrap: anywhere; }

/* 1.0.7 (19/10/2026): su mobile la riga legale resta sopra etichetta e pulsante fissi della chat SOIMM (arrivano a ~92 px dal fondo), cosi' Privacy, Cookie policy, Note legali e Preferenze cookie restano cliccabili. */
@media (max-width: 767px) { .site-footer__legal { padding-bottom: 104px; } }
