/*
 * Casa Vacanze Torre delle Stelle (Villa Il Gabbiano): stili del sito.
 *
 * Misure prese dal sito Astra 4.13 + Elementor del 17/10/2026
 * (snapshot/measures e snapshot/design-tokens.json nella cartella delle consegne).
 * Breakpoint: Elementor 1024 / 767 per i contenuti; Astra 1200 / 921 / 768 / 544 per testo e
 * contenitori (il tablet di Astra su questo sito e' 768: testo 13.68px), 770 per il menu.
 * Classi del contenuto: prefisso tds- (pagine Home 232 e Contatti 235).
 * Stessa struttura del tema gemello tema-casavacanzecagliari (prefisso cvc-).
 */

/* ---------- Tipografia (Astra) ---------- */
:root {
	--p2w-h1: 80px;
	--p2w-h2: 35px;
	--p2w-h3: 25px;
	--p2w-h4: 20px;
	--p2w-h5: 18px;
	--p2w-h6: 15px;
	--tds-primary: #0170b9;
	--tds-accent: #61a9d8;
}
/* Astra: h1 80/50/40, h2 35/35/25, h3 25/22/20; testo 15px, 13.68px fino a 768 px.
   html:root batte la variabile stampata inline dal tema (che passa a 13.68 solo sotto 544). */
@media (max-width: 768px) { :root { --p2w-h1: 50px; --p2w-h2: 35px; --p2w-h3: 22px; } html:root { --p2w-fs-body: 13.68px; } }
@media (max-width: 544px) { :root { --p2w-h1: 40px; --p2w-h2: 25px; --p2w-h3: 20px; } }
p { margin-bottom: 1.64em; }

/* ---------- Header ---------- */
.site-header__inner { flex-wrap: wrap; row-gap: 0; }
.site-header .site-header__button--desktop { margin-right: 15px; }
.site-header .p2w-btn { font-size: 16px; font-weight: 700; padding: 10px 20px; line-height: 1; }
.site-header .site-header__button--desktop:hover,
.site-header .site-header__button--desktop:focus { background: #e04700; color: #fff; }
.main-navigation a { font-weight: 400; }

/* Desktop: il bottone del menu mobile resta nascosto (nel tema base .main-navigation a{display:block}
   ha piu' specificita' della regola che lo nasconde: correzione da riportare nel base) */
@media (min-width: 771px) { .main-navigation .site-header__button--mobile { display: none; } }

/* Logo (misurato sul vecchio sito): 330 sopra 770 px, 220 tra 545 e 770 (header alto 90),
   fino a 544 di nuovo 330 ridotto allo spazio libero accanto al pulsante del menu (290 a 390 px) */
@media (min-width: 545px) and (max-width: 770px) {
	.custom-logo-link img { width: 220px; }
	.site-header__inner { padding-top: 20.5px; padding-bottom: 20.5px; }
}
@media (max-width: 544px) { .custom-logo-link img { width: 330px; } }

/* Tra 771 e 1117 px il menu e il bottone vanno a capo sotto il logo, allineati a destra (come Astra) */
@media (min-width: 771px) and (max-width: 1117px) {
	.site-branding { flex: 0 0 100%; }
	.main-navigation a { line-height: 36px; }
	.site-header.is-stuck .site-branding { display: none; }
}

/* Header fisso (desktop): fondo bianco, ombra, logo ridotto a 272 px (impostazione Astra) */
@media (min-width: 771px) {
	.site-header.is-stuck .site-header__inner { min-height: 66px; padding-top: 5.5px; padding-bottom: 5.5px; }
	.site-header.is-stuck .custom-logo-link img { width: 272px; }
}

/* Mobile (<= 770): logo e pulsante del menu sulla stessa riga, menu a schermo intero centrato */
@media (max-width: 770px) {
	.site-header__inner { flex-wrap: nowrap; }
	.site-branding { flex: 0 1 auto; min-width: 0; }
	.menu-toggle { width: 47px; height: 49px; }
	.menu-toggle svg { width: 23.256px; height: 23.256px; } /* icona Astra a 1.7rem */
	.menu-toggle__open svg { transform: translateY(1.15px); } /* stessa linea di base del glifo del font Astra */
	.p2w-mobile-menu--fullscreen.p2w-menu-open .main-navigation__panel { display: flex; flex-direction: column; justify-content: center; padding: 0; }
	.p2w-mobile-menu--fullscreen.p2w-menu-open .main-navigation a,
	.p2w-mobile-menu--fullscreen.p2w-menu-open .main-navigation__panel .menu a { font-size: 30px; line-height: 3em; padding: 0 20px; }
	/* Menu aperto: la X di Astra sta in un quadrato di 40 px nell'angolo in alto a destra */
	.p2w-mobile-menu--fullscreen.p2w-menu-open .menu-toggle { top: var(--p2w-adminbar); right: 0; width: 40px; height: 40px; }
	.p2w-mobile-menu--fullscreen.p2w-menu-open .menu-toggle__close svg { width: 27.5px; height: 27.5px; }
	/* "Contatti e Prenotazioni" nel menu mobile e' una voce come le altre (Astra) */
	.main-navigation__panel .site-header__button--mobile {
		display: block;
		margin: 0;
		padding: 0 20px;
		background: transparent;
		color: var(--p2w-header-link);
		font-weight: 400;
		line-height: 3em;
		border-radius: 0;
		border-bottom: 1px solid #eaeaea;
	}
	.main-navigation__panel .site-header__button--mobile:hover,
	.main-navigation__panel .site-header__button--mobile:focus { background: transparent; color: var(--p2w-header-link); }
}
@media (max-width: 544px) {
	.p2w-mobile-menu--fullscreen.p2w-menu-open .main-navigation a,
	.p2w-mobile-menu--fullscreen.p2w-menu-open .main-navigation__panel .menu a { font-size: 17.328px; }
}

/* "Torna su" come Astra: 42 px con la freccia a 20 px; 38.3 / 18.24 px fino a 768 */
.p2w-scroll-top svg { width: 20px; height: 20px; }
@media (max-width: 768px) {
	.p2w-scroll-top { width: 38.3px; height: 38.3px; }
	.p2w-scroll-top svg { width: 18.24px; height: 18.24px; }
}

/* ---------- Bottoni ---------- */
.tds-btn {
	padding: 10px 20px;
	font-size: 16px;
	font-weight: 700; /* 600 in Elementor, ma il vecchio sito dichiarava Montserrat solo 400/700: si vedeva 700 */
	line-height: 1;
	letter-spacing: -.5px;
	text-transform: uppercase;
	box-shadow: 0 0 20px rgba(0, 15, 35, .12);
}
@media (max-width: 768px) { .tds-btn, .p2w-form__submit { font-size: 14.592px; } } /* 1.0667rem di Astra con testo 13.68 */

/* ---------- Hero (Home e Contatti) ---------- */
.tds-hero { background-size: cover; background-position: center center; background-repeat: no-repeat; background-color: #fff; }
.tds-hero .p2w-container { align-items: center; }
.tds-hero__main { width: 65%; }
.tds-hero__kicker {
	margin: 0;
	padding: 5px 5px 5px 10px;
	background: rgba(255, 255, 255, .79);
	color: var(--tds-primary);
	font-size: 2em;
	line-height: 1;
	text-transform: uppercase;
}
.tds-hero__title { margin: 30px 0 0; color: #fff; font-size: 3.6em; line-height: 1.2; letter-spacing: .3px; }
.tds-hero__divider { --p2w-divider-w: 80%; --p2w-divider-h: 5px; margin: 25px 0; border-top-color: var(--tds-accent); }
.tds-hero__cta { margin: 0; padding-top: 10px; } /* padding: i widget Elementor non fanno collassare i margini */

.tds-hero--home { padding: 50px 0 100px; background-image: var(--tds-bg); }
.tds-hero--home .tds-hero__inner { padding: 25% 10% 4% 0; }

.tds-hero--contatti { padding: 30px 0 126px; background-position: bottom center; --p2w-overlay-color: #c6c8cb; --p2w-overlay-opacity: .17; }
.tds-hero--contatti .tds-hero__main { width: 60%; }
.tds-hero--contatti .tds-hero__inner { padding: 15% 10% 5% 0; }
.tds-hero__kicker5 { margin: 0 0 50px; color: var(--tds-primary); font-size: 1.2em; line-height: 1.2; } /* 20 tra i widget + 30 del titolo */
.tds-hero--contatti .tds-hero__title { margin-top: 0; line-height: 1; letter-spacing: 0; }
/* Divisore a freccia: altezza proporzionale alla larghezza (come Elementor, senza altezza fissata) */
.tds-shape svg { height: auto; aspect-ratio: 70 / 1; }

@media (max-width: 1024px) {
	.tds-hero--home, .tds-hero--contatti { padding: 125px 50px 0; }
	.tds-hero--home .tds-hero__inner, .tds-hero--contatti .tds-hero__inner { padding: 0 10px 50px 0; }
	.tds-hero--contatti .tds-hero__main { width: 65%; }
}
@media (max-width: 767px) {
	.tds-hero--home { padding: 150px 25px 50px; background-image: var(--tds-bg-mobile, var(--tds-bg)); }
	.tds-hero--contatti { padding: 150px 25px 0; }
	.tds-hero__main, .tds-hero--contatti .tds-hero__main { width: 100%; }
	.tds-hero--home .tds-hero__inner, .tds-hero--contatti .tds-hero__inner { padding: 0; text-align: center; }
	.tds-hero__kicker { font-size: 1.5em; }
	.tds-hero--home .tds-hero__title { font-size: 2.3em; }
	.tds-hero--contatti .tds-hero__title { font-size: 2.6em; }
	.tds-hero__divider { --p2w-divider-w: 100%; margin: 15px 0; }
	.tds-hero__cta { padding-top: 50px; }
}

/* ---------- Home: card bianche ---------- */
.tds-details { padding: 20px 0 50px; }
.tds-card { display: flex; flex-direction: column; margin: 0 20px 40px; }
.tds-card + .tds-card { margin-top: 60px; }
.tds-card > * { flex: 0 0 auto; min-width: 0; }
/* Card di testo: widget con fondo bianco al 77% e padding 20 */
.tds-card__text { padding: 20px; background: rgba(255, 255, 255, .77); color: #000; font-size: 1.32em; }
.tds-card__text p { margin: 0 0 1.6em; }
.tds-card__text a, .tds-card__body a { text-decoration: underline; } /* Astra: link del contenuto sottolineati */
/* Card con titolo, testo (ex widget testimonial), galleria (desktop/tablet) e carosello (mobile) */
.tds-card__title { margin: 0 0 20px; color: var(--tds-primary); font-size: 35px; line-height: 1; }
.tds-card__body { margin-bottom: 20px; color: #000; font-size: 18px; }
.tds-card__body > div { margin-bottom: 20px; } /* come .elementor-testimonial-content: collassa con il margine dell'ultimo paragrafo */
.tds-card__body p { margin: 0 0 1.6em; }
/* Testi che nel vecchio sito erano separati da <br><br> (una riga vuota): paragrafi distanziati di una riga */
.tds-card__body .tds-br > p { margin: 0; }
.tds-card__body .tds-br > p + p { margin-top: 1lh; }
.tds-card > :last-child { margin-bottom: 0; }
/* Nel vecchio sito l'ultima card aveva un widget nascosto dopo la galleria: +20 px in fondo su desktop */
@media (min-width: 1025px) { .tds-card--extra { padding-bottom: 50px; } }

.tds-gallery { --p2w-cols: 6; --p2w-cols-t: 4; --p2w-cols-m: 2; --p2w-ratio: 1; --p2w-gallery-gap: 30px; }
.tds-gallery a { border-radius: 8px; overflow: hidden; }
.tds-gallery img { height: auto; border-radius: 8px; }
.tds-carousel { --p2w-pv: 1; --p2w-pv-t: 1; --p2w-pv-m: 1; --p2w-carousel-gap: 0px; }
.tds-carousel .p2w-carousel__nav { width: 44px; height: 44px; background: transparent; color: rgba(238, 238, 238, .9); }
.tds-carousel .p2w-carousel__slide a { display: block; }
/* Foto all'altezza naturale: il carosello e' alto quanto la foto piu' alta (come Swiper di Elementor) */

@media (max-width: 1024px) {
	.tds-details { padding: 100px 30px 80px; }
	.tds-gallery { --p2w-gallery-gap: 20px; }
}
@media (max-width: 767px) {
	.tds-details { padding: 55px 20px 50px; }
	.tds-card { margin: 0 0 30px; }
	.tds-card + .tds-card { margin-top: 85px; } /* 30 + 40 + 15 come le sezioni interne Elementor */
	.tds-card__text { padding: 5px; text-align: center; line-height: 1.7; }
	.tds-card__title { margin-bottom: 0; font-size: 25px; }
	.tds-card__body { margin-bottom: 0; }
}

/* ---------- Mappa (Home e Contatti) ---------- */
.tds-map .p2w-embed { height: 387px; }
@media (min-width: 768px) and (max-width: 1024px) {
	.tds-map { padding: 80px; background: rgba(0, 15, 35, .65); }
}

/* ---------- Contatti ---------- */
.tds-h3 { margin: 0 0 20px; color: var(--tds-primary); font-size: 25px; line-height: 1; }
@media (max-width: 768px) { .tds-h3 { font-size: 22px; } } /* h3 di Astra sul tablet; sotto 767 vale la regola di Elementor (18px) */
.tds-kicker { margin: 0 0 20px; color: var(--tds-primary); font-size: 1.2em; line-height: 1.2; text-align: center; }
.tds-intro { padding: 50px 0; }
.tds-intro__title { margin: 0 0 20px; font-size: 35px; line-height: 1; text-align: center; }
.tds-intro__text { font-size: 18px; line-height: 1.6; text-align: justify; }
.tds-intro__text p { margin: 0 0 1.6em; }
.tds-form-section { margin: 30px 0; }
.tds-form-card { margin: 0 20px; padding-bottom: 26px; background: #fff; border-radius: 20px 20px 0 0; }
.tds-form-card .p2w-form-wrap { margin-bottom: 0; }
.tds-recapiti { padding: 125px 0 100px; }
.tds-recapiti .tds-recapiti__col1 { align-self: center; padding: 0 20px 0 0; } /* colonna Elementor centrata in verticale */
.tds-recapiti .tds-recapiti__col2 { align-self: center; padding: 51px 20px 0; } /* il vecchio testo iniziava con un paragrafo vuoto */
.tds-text p { margin: 0 0 1.6em; }
.tds-text a { text-decoration: underline; }

@media (max-width: 1024px) {
	.tds-intro { padding: 80px 30px; }
	.tds-form-card { margin: 0; padding: 50px 50px 76px; border-radius: 20px; }
	.tds-recapiti { padding: 80px 30px; }
}
@media (max-width: 767px) {
	.tds-intro { padding: 50px 20px; }
	.tds-intro__title { font-size: 25px; }
	.tds-form-card { padding: 30px 30px 56px; border-radius: 40px; }
	.tds-h3 { font-size: 18px; line-height: 1.2; text-align: center; }
	.tds-recapiti { padding: 50px 20px; }
	.tds-recapiti .tds-recapiti__col1 { padding-right: 20px; }
	.tds-recapiti .tds-recapiti__col2 { padding: 47px 20px 0; }
}

/* Modulo contatti con l'aspetto del vecchio WPForms */
.p2w-form__grid { gap: 0 20px; }
.p2w-field { padding: 10px 0; }
.p2w-field__label { display: block; margin-bottom: 0; font-weight: 700; }
.p2w-req { color: #ff0000; font-weight: 400; }
.p2w-form input[type="text"], .p2w-form input[type="email"], .p2w-form input[type="tel"],
.p2w-form input[type="number"], .p2w-form input[type="date"], .p2w-form select, .p2w-form textarea {
	padding: .75em;
	line-height: 1; /* come WPForms/Astra: il campo prende l'altezza naturale del font (43.5 px a 15 px) */
}
.p2w-form select { line-height: normal; }
.p2w-form textarea { display: block; height: 220px; line-height: var(--p2w-lh-body); }
.p2w-field--quarter input { width: 25%; }
.p2w-field--checkboxes .p2w-field__group { display: flex; flex-wrap: wrap; column-gap: 20px; }
.p2w-field--checkboxes .p2w-field__group legend { flex: 0 0 100%; width: 100%; }
.p2w-form .p2w-check { gap: 0; margin: 0; }
.p2w-form .p2w-check input { width: 13px; height: 13px; margin: 7px 10px 0 3px; }
.p2w-form__actions { margin-top: 10px; }
/* Contatore "0 di 2 caratteri max." (WPForms) sotto "Numero persone", aggiornato da site.js */
.p2w-field--number .p2w-field__help { margin: 5px 0 0; font-size: .85em; line-height: 1.857; color: #000; }
/* Consenso: casella e testo in linea, il testo va a capo sotto la casella (come WPForms) */
.p2w-form .p2w-field--privacy .p2w-check { display: block; }
.p2w-form .p2w-field--privacy .p2w-check input { display: inline-block; margin: 2px 10px 0 3px; vertical-align: baseline; }
@media (max-width: 600px) { .p2w-field--quarter input { width: 100%; } }

/* ---------- Footer (Astra small footer layout 2) ---------- */
.site-footer__inner { padding-top: 40px; padding-bottom: 40px; gap: 1em 0; align-items: center; }
.site-footer__credits { flex: 0 0 50%; max-width: 50%; padding-right: 20px; }
.site-footer__logo { position: relative; flex: 0 0 50%; max-width: 50%; padding-left: 20px; text-align: right; }
.site-footer__logo img { width: 50%; max-width: 100%; max-height: none; height: auto; vertical-align: top; }
/* Link legali e "Preferenze cookie" sotto il gabbiano (filtro p2w_legal_links_in_footer_right in site.php):
   su desktop e tablet fuori dal flusso, cosi' il logo resta centrato e il footer alto come quello di Astra */
.site-footer__logo .site-footer__legal { position: absolute; top: 100%; right: 0; left: 20px; margin-top: 10px; font-size: 13px; line-height: 1.857; }
.site-footer__bottom { padding-bottom: 20px; font-size: 13px; }
@media (max-width: 768px) {
	.site-footer__inner { padding-top: 2em; padding-bottom: 2em; }
	.site-footer__credits, .site-footer__logo { text-align: center; }
	.site-footer__logo .site-footer__legal { left: 0; }
}
/* Mobile: come Astra la colonna del testo e' larga quanto la riga piu' lunga (+20 px per lato),
   allineata a sinistra e col testo centrato; logo e link legali sotto, centrati nella stessa colonna */
@media (max-width: 767px) {
	.site-footer__inner { display: grid; grid-template-columns: minmax(0, max-content); justify-content: start; padding-left: 0; padding-right: 0; }
	.site-footer__credits, .site-footer__logo { max-width: none; padding: 0 20px; }
	.site-footer__logo img { width: 150px; }
	.site-footer__logo .site-footer__legal { position: static; contain: inline-size; }
}
/* 1.0.5: spazio in fondo al footer sotto i 1024 px (come italofancello.it): il pulsante WhatsApp di Joinchat
   (fisso in basso a sinistra, 60x60 a 14-28 px dal bordo) e il "torna su" a fine pagina coprivano i link legali
   e "Preferenze cookie" (da 320 a 767 px). Desktop invariato (footer 368 px come Astra). */
@media (max-width: 1023px) { .site-footer { padding-bottom: 92px; } }

/* Footer subito dopo il contenuto anche nelle pagine corte (Astra non lo spinge in fondo alla finestra) */
.site { display: block; min-height: 0; }

/* ---------- Pagine standard, ricerca, archivi e 404: riquadri bianchi su fondo grigio (Astra "separate container") ---------- */
body:not(.p2w-template-template-larghezza-piena):not(.p2w-template-template-vuoto) { background: #f5f5f5; }
body:not(.p2w-template-template-larghezza-piena) .site-header,
body:not(.p2w-template-template-larghezza-piena) .site-footer { background-color: #fff; }
/* Contenitore: 1200 px centrato, 20 px dai bordi sotto 1240, 7 px sotto 544; margine 4em (1.5em fino a 768) */
.site-main.p2w-wrap--content, .tds-archive { width: calc(100% - 40px); max-width: 1200px; margin: 4em auto; }
/* Riquadri: 5.34em 6.67em, 3.34em 2.4em (<= 1200), 1.5em 2.14em (<= 768), 1.5em 1em (<= 544) */
.site-main.p2w-wrap--content, .tds-archive__item, .tds-archive .no-results { padding: 5.34em 6.67em; background: #fff; }
.tds-archive__header { padding: 3em; background: #fff; }
.tds-archive__header--search { padding: 5em 6.67em 3.34em; background: #eee; }
.tds-archive__header .page-title { margin: 0 0 4px; color: var(--p2w-link); font-size: 2.6667em; font-weight: 400; line-height: 1.4; text-transform: capitalize; } /* 300 in Astra, ma Montserrat era caricato solo 400/700: si vedeva 400 */
.tds-archive__header--search .page-title { font-size: 2.857em; line-height: 1.2; text-transform: none; }
.tds-archive__item:not(:last-child) { border-bottom: 1px solid #ddd; }
.tds-archive__thumb { margin: 0 0 1.5em; }
.tds-archive__thumb img { display: block; width: 100%; height: auto; }
.tds-archive__item .entry-title { margin: 0 0 6px; color: var(--p2w-heading); font-size: 30px; font-weight: 400; line-height: 1.23; }
.tds-archive__item .entry-title a { color: #000; text-decoration: none; }
.tds-archive__item .entry-meta { margin: 0 0 1em; color: var(--p2w-link); font-size: 1em; line-height: 1.45; }
.tds-archive__excerpt p { margin: 0; }
.tds-archive__item .read-more { margin: 1.5em 0 .8em; }
.tds-archive__item .read-more a { text-decoration: none; }
@media (max-width: 1200px) {
	.site-main.p2w-wrap--content, .tds-archive__item, .tds-archive .no-results, .tds-archive__header--search { padding: 3.34em 2.4em; }
}
@media (max-width: 921px) { .tds-archive__header--search { padding: 2.14em; } }
@media (max-width: 768px) {
	.site-main.p2w-wrap--content, .tds-archive { margin: 1.5em auto; }
	.site-main.p2w-wrap--content, .tds-archive__item, .tds-archive .no-results { padding: 1.5em 2.14em; }
}
@media (max-width: 544px) {
	.site-main.p2w-wrap--content, .tds-archive { width: calc(100% - 14px); }
	.site-main.p2w-wrap--content, .tds-archive__item, .tds-archive .no-results, .tds-archive__header--search { padding: 1.5em 1em; }
}

/* Modulo di ricerca (markup di Astra): campo e bottone "Cerca" affiancati */
.search-form { display: block; max-width: none; margin: 0; }
.search-form .search-field { display: inline-block; width: auto; padding: .75em; line-height: 1; vertical-align: baseline; }
.search-form .search-submit {
	display: inline-block;
	padding: 10px 20px;
	border: 0;
	border-radius: var(--p2w-btn-radius);
	background: var(--p2w-primary);
	color: var(--p2w-button-text);
	font-family: inherit;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	vertical-align: baseline;
	cursor: pointer;
}
.search-form .search-submit:hover, .search-form .search-submit:focus { background: var(--p2w-primary-hover); }
.search .no-results .search-form { margin-bottom: 3em; }
.search .no-results .search-submit { padding: 10px 15px; line-height: 1.857; }
@media (max-width: 768px) { .search-form .search-submit { font-size: 14.592px; } }
.p2w-wrap--content .entry-title, .p2w-wrap--content .page-title { color: var(--p2w-link); font-weight: 400; }
.p2w-wrap--content .entry-title { font-size: 30px; }
.p2w-wrap--content .entry-content a { text-decoration: underline; }
.search .page-header .page-title { font-size: 42.857px; font-weight: 300; line-height: 1.2; }
.tds-404 { text-align: center; }
.tds-404 .page-header { margin-bottom: 1.5em; }
.tds-404 .page-title { margin: 0; font-size: 80px; line-height: 1.2; }
.tds-404 .page-sub-title { margin: 0; font-size: 1.5em; font-weight: 700; line-height: 1.857; }
/* Ricerca del 404 (widget di Astra): campo largo 370 px con l'icona a destra, bottone invisibile sopra l'icona */
.tds-404-search { margin-top: 1.5em; }
.tds-404-search .widget_search { max-width: 370px; margin: 0 auto; padding-top: .5em; }
.tds-404-search .search-form { position: relative; }
.tds-404-search .search-form label { display: block; }
.tds-404-search .search-field { display: block; width: 100%; height: 45px; padding: 12px 45px 12px 15px; background: transparent; }
.tds-404-search .search-submit,
.tds-404-search .search-submit:hover,
.tds-404-search .search-submit:focus { position: absolute; top: 0; right: 0; z-index: 2; width: 45px; height: 42px; padding: 0; background: transparent; color: transparent; }
.tds-404-search .search-form::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 18px;
	height: 18px;
	transform: translateY(-50%);
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15.5 14h-.79l-.28-.27A6.47 6.47 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z'/%3E%3C/svg%3E") center / 18px 18px no-repeat;
	pointer-events: none;
}
@media (max-width: 768px) {
	.tds-404 .page-title { font-size: 50px; }
	.tds-404-search .search-field { height: 42px; }
	.tds-404-search .search-submit { height: 41px; }
}
@media (max-width: 544px) {
	.tds-404 .page-title { font-size: 40px; }
}
