/*
Theme Name: Linari Medical
Theme URI: https://www.linarimedical.com
Description: A custom theme built with Bootstrap
Author: Linari Medical srl
Author URI: https://linarimedical.com/
Version: 3.1
Tags: avdesk, medical device, rehabilitation, hemianopsia, telemedicine

License: Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0)
License URI: http://creativecommons.org/licenses/by-sa/3.0/
*/

/* roboto-300 - latin */
@font-face {
	font-display: swap;
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 300;
	src: url('./fonts/roboto/roboto-v30-latin-300.eot');
	src: url('./fonts/roboto/roboto-v30-latin-300.eot?#iefix') format('embedded-opentype'),
		url('./fonts/roboto/roboto-v30-latin-300.woff2') format('woff2'),
		url('./fonts/roboto/roboto-v30-latin-300.woff') format('woff'),
		url('./fonts/roboto/roboto-v30-latin-300.ttf') format('truetype'),
		url('./fonts/roboto/roboto-v30-latin-300.svg#Roboto') format('svg');
}
/* roboto-300italic - latin */
@font-face {
	font-display: swap;
	font-family: 'Roboto';
	font-style: italic;
	font-weight: 300;
	src: url('./fonts/roboto/roboto-v30-latin-300italic.eot');
	src: url('./fonts/roboto/roboto-v30-latin-300italic.eot?#iefix') format('embedded-opentype'),
		url('./fonts/roboto/roboto-v30-latin-300italic.woff2') format('woff2'),
		url('./fonts/roboto/roboto-v30-latin-300italic.woff') format('woff'),
		url('./fonts/roboto/roboto-v30-latin-300italic.ttf') format('truetype'),
		url('./fonts/roboto/roboto-v30-latin-300italic.svg#Roboto') format('svg');
}

/* roboto-500 - latin */
@font-face {
  font-display: swap;
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url('./fonts/roboto/roboto-v30-latin-500.eot'); 
  src: url('./fonts/roboto/roboto-v30-latin-500.eot?#iefix') format('embedded-opentype'),
       url('./fonts/roboto/roboto-v30-latin-500.woff2') format('woff2'), 
       url('./fonts/roboto/roboto-v30-latin-500.woff') format('woff'), 
       url('./fonts/roboto/roboto-v30-latin-500.ttf') format('truetype'), 
       url('./fonts/roboto/roboto-v30-latin-500.svg#Roboto') format('svg'); 
}

/* roboto-500italic - latin */
@font-face {
  font-display: swap; 
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 500;
  src: url('./fonts/roboto/roboto-v30-latin-500italic.eot');
  src: url('./fonts/roboto/roboto-v30-latin-500italic.eot?#iefix') format('embedded-opentype'), 
       url('./fonts/roboto/roboto-v30-latin-500italic.woff2') format('woff2'), 
       url('./fonts/roboto/roboto-v30-latin-500italic.woff') format('woff'),
       url('./fonts/roboto/roboto-v30-latin-500italic.ttf') format('truetype'), 
       url('./fonts/roboto/roboto-v30-latin-500italic.svg#Roboto') format('svg'); 
}

/* roboto-700 - latin */
@font-face {
	font-display: swap;
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 700;
	src: url('./fonts/roboto/roboto-v30-latin-700.eot');
	src: url('./fonts/roboto/roboto-v30-latin-700.eot?#iefix') format('embedded-opentype'),
		url('./fonts/roboto/roboto-v30-latin-700.woff2') format('woff2'),
		url('./fonts/roboto/roboto-v30-latin-700.woff') format('woff'),
		url('./fonts/roboto/roboto-v30-latin-700.ttf') format('truetype'),
		url('./fonts/roboto/roboto-v30-latin-700.svg#Roboto') format('svg');
}
/* roboto-700italic - latin */
@font-face {
	font-display: swap;
	font-family: 'Roboto';
	font-style: italic;
	font-weight: 700;
	src: url('./fonts/roboto/roboto-v30-latin-700italic.eot');
	src: url('./fonts/roboto/roboto-v30-latin-700italic.eot?#iefix') format('embedded-opentype'),
		url('./fonts/roboto/roboto-v30-latin-700italic.woff2') format('woff2'),
		url('./fonts/roboto/roboto-v30-latin-700italic.woff') format('woff'),
		url('./fonts/roboto/roboto-v30-latin-700italic.ttf') format('truetype'),
		url('./fonts/roboto/roboto-v30-latin-700italic.svg#Roboto') format('svg');
}

/* Material Symbols Rounded - variable font (all axes) */
@font-face {
	/* Use "block" (not "swap") to prevent the FOUT where the literal
	   ligature text (e.g. "person_pin_circle") is briefly rendered with a
	   fallback font before the icon font loads, which would cause layout
	   jumps in navbar/menu items. */
	font-display: block;
	font-family: 'Material Symbols Rounded';
	font-style: normal;
	font-weight: 100 700;
	src: url('./fonts/google-material/MaterialSymbolsRounded.woff2') format('woff2-variations');
}
.material-symbols-rounded {
	font-family: 'Material Symbols Rounded';
	font-weight: normal;
	font-style: normal;
	font-size: 24px;
	line-height: 1;
	letter-spacing: normal;
	text-transform: none;
	display: inline-block;
	white-space: nowrap;
	word-wrap: normal;
	direction: ltr;
	-webkit-font-feature-settings: 'liga';
	-webkit-font-smoothing: antialiased;
	font-variation-settings:
		'FILL' 0,
		'wght' 300,
		'GRAD' 0,
		'opsz' 24;
}

/* Hide the reCAPTCHA badge */
.grecaptcha-badge { visibility: hidden; }

/* Hide wpml.org as a development site message */
.otgs-development-site-front-end { display: none; }

/* Custom */
.extra-small {
	font-size: .70em;	
}

.full-width {
    width: calc(100vw - 8.1px);
    position: relative;
    margin-left: -50vw;
    left: 50%;
}

@media screen and (max-width: 576px) {
	.full-width {
		width: 100vw;
	}
}

/* Scrollbars */

body {
  --sb-track-color: var(--bs-light);
  --sb-thumb-color: var(--bs-primary);
  --sb-size: 14px;
}

*::-webkit-scrollbar {
  width: var(--sb-size)
}

*::-webkit-scrollbar-track {
  background: var(--sb-track-color);
}

*::-webkit-scrollbar-thumb {
  background: var(--sb-thumb-color);
  
}

@supports not selector(::-webkit-scrollbar) {
  * {
    scrollbar-color: var(--sb-thumb-color)
                     var(--sb-track-color);
  }
}

/* Blockquotes */

blockquote {
    position: relative;
	font-size: 1.40625rem;		
	color: var(--bs-primary) !important;
	margin: 3rem 0 !important;
   --bs-text-opacity: 1;
    color: rgba(0,0,0,0.5) !important;
    border-left: 5px solid var(--bs-primary);
	padding-left: 1rem;
}

blockquote p {
	color: var(--bs-primary) !important;
}

/* Group with `is-fill-column` extra class: fills the parent column height
   and pushes its last direct child to the bottom of the column, so the
   last block (e.g. a citation) aligns with the last block of the
   adjacent column regardless of the amount of preceding content.
   Also targets the last child of an eventual single wrapper sub-group.
   Kept here rather than in `theme.json`: this classic theme cannot use
   `styles.css` (top-level) and the selector starts with `.wp-block-column >`,
   which the `styles.blocks.*.css` pre-processor cannot prepend to the
   target block selector. */
.wp-block-column > .wp-block-group.is-fill-column {
    height: 100%;
    display: flex;
    flex-direction: column;
}
.wp-block-column > .wp-block-group.is-fill-column > *:last-child,
.wp-block-column > .wp-block-group.is-fill-column > .wp-block-group:last-child > *:last-child {
    margin-top: auto;
}

/* Note: the border-radius override for `.wp-block-image.is-style-rounded img`
   is defined in `theme.json` under `styles.blocks.core/image.css`. */

/* WP Buttons — Bootstrap-like hover shading for buttons that use a preset
   palette color via .has-<slug>-background-color. WP core emits those
   classes with !important, so theme.json elements.button:hover cannot win
   on its own. shade 15% on hover/focus, 20% on active (Bootstrap defaults). */
.wp-block-button__link.has-primary-background-color:hover,
.wp-block-button__link.has-primary-background-color:focus,
.wp-element-button.has-primary-background-color:hover,
.wp-element-button.has-primary-background-color:focus {
	background-color: color-mix(in srgb, var(--wp--preset--color--primary) 85%, #000) !important;
}
.wp-block-button__link.has-primary-background-color:active,
.wp-element-button.has-primary-background-color:active {
	background-color: color-mix(in srgb, var(--wp--preset--color--primary) 80%, #000) !important;
}

.wp-block-button__link.has-secondary-background-color:hover,
.wp-block-button__link.has-secondary-background-color:focus,
.wp-element-button.has-secondary-background-color:hover,
.wp-element-button.has-secondary-background-color:focus {
	background-color: color-mix(in srgb, var(--wp--preset--color--secondary) 85%, #000) !important;
}
.wp-block-button__link.has-secondary-background-color:active,
.wp-element-button.has-secondary-background-color:active {
	background-color: color-mix(in srgb, var(--wp--preset--color--secondary) 80%, #000) !important;
}

.wp-block-button__link.has-orange-background-color:hover,
.wp-block-button__link.has-orange-background-color:focus,
.wp-element-button.has-orange-background-color:hover,
.wp-element-button.has-orange-background-color:focus {
	background-color: color-mix(in srgb, var(--wp--preset--color--orange) 85%, #000) !important;
}
.wp-block-button__link.has-orange-background-color:active,
.wp-element-button.has-orange-background-color:active {
	background-color: color-mix(in srgb, var(--wp--preset--color--orange) 80%, #000) !important;
}

.wp-block-button__link:hover,
.wp-block-button__link:focus,
.wp-block-button__link:active,
.wp-element-button:hover,
.wp-element-button:focus,
.wp-element-button:active {
	text-decoration: none !important;
}

/* Figures — Gutenberg image blocks alignment.
   WP core (wp-includes/blocks/image/style.css) ships alignright/alignleft
   float rules using the descendant selector `.wp-block-image .alignright`,
   but modern Gutenberg emits BOTH classes on the same <figure>
   (`<figure class="wp-block-image alignright ...">`), so those rules never
   match. Additionally, this theme opts into the "separate block assets"
   loading mode, so `wp-block-image-css` isn't always enqueued. We provide
   the float behavior explicitly here. */

figure.wp-block-image {
	max-width: 100%;
	height: auto;
}

	figure.wp-block-image figcaption {
		/* padding: 1rem 0; */
		font-size: .875em;
	}

figure.wp-block-image.alignright {
	float: right;
	margin-top: 0;
	margin-inline-start: 3rem;
	margin-inline-end: 0;
	margin-bottom: 2rem;
}

figure.wp-block-image.alignleft {
	float: left;
	margin-top: 0;
	margin-inline-start: 0;
	margin-inline-end: 3rem;
	margin-bottom: 2rem;
}

figure.wp-block-image.aligncenter {
	margin-inline-start: auto;
	margin-inline-end: auto;
	margin-bottom: 2rem;
}

/* Below the "md" Bootstrap breakpoint (< 768px), disable float and center the
   image so it doesn't compete with narrow text columns on mobile. */
@media (max-width: 767.98px) {
	figure.wp-block-image.alignright,
	figure.wp-block-image.alignleft {
		float: none;
		margin-inline-start: auto;
		margin-inline-end: auto;
		margin-bottom: 1.5rem;
	}
}

/* Align .alignleft / .alignright children of a constrained WP layout group
   to the content-column edge (contentSize) instead of the section edge.
   Without this override, floated aligned elements escape the visible content
   column on wide viewports (e.g. > 2000px) because WP does not constrain
   .alignleft/.alignright with the layout's max-width. The margin equals half
   the outer gutter, clamped to 0 on narrow viewports. */

.wp-block-group.is-layout-constrained > .alignright {
	margin-inline-end: max(0px, calc((100% - var(--wp--style--global--content-size)) / 2));
}

.wp-block-group.is-layout-constrained > .alignleft {
	margin-inline-start: max(0px, calc((100% - var(--wp--style--global--content-size)) / 2));
}

/* Header and navbar */

body.admin-bar header#header,
body.admin-bar div.offcanvas {
	margin-top: 32px;
}

header#header { }

	header#header nav#header-navbar {
		height: 82px !important;
		display: flex;
		align-items: center;
		height: 100%;
		z-index: 999;
	}

	header#header nav#header-navbar li > a {
		display: inline-flex;
		align-items: center;
	}

	@media screen and (min-width: 1400px) {
		header#header nav#header-navbar li.centers-and-specialists > a::before {
			content: "person_pin_circle";
			font-family: 'Material Symbols Rounded';
			font-weight: normal;
			font-style: normal;
			font-size: 36px;
			line-height: 1;
			letter-spacing: normal;
			text-transform: none;
			margin-right: 3px;
			/* Reserve a fixed 36x36 box and clip the ligature text so that,
			while the icon font is still loading, the fallback-rendered
			"person_pin_circle" string cannot expand and push the label
			"Centri e specialisti" onto a second line (avoids CLS). */
			display: inline-block;
			flex: 0 0 auto;
			width: 36px;
			height: 36px;
			overflow: hidden;
			text-align: center;
			white-space: nowrap;
			word-wrap: normal;
			direction: ltr;
			-webkit-font-feature-settings: 'liga';
			-webkit-font-smoothing: antialiased;
			font-variation-settings: 'FILL' 0, 'wght' 200, 'GRAD' 0, 'opsz' 24;
		}
	}

body main {
	margin-top: 82px;
}

/* Fixed-top header height exposed as a CSS custom property so templates can
   compute values like calc(100vh - var(--header-height)). Kept in sync with
   the responsive header/main sizes defined below. */
:root {
	--header-height: 82px;
}

body.admin-bar header {
	margin-top: 32px !important;
}

	body.promo-message main {
		margin-top: 135px !important;
	}

@media screen and (min-width: 447px) and (max-width: 767px) {
	:root {
		--header-height: 110px;
	}

	header#header nav#header-navbar {
		height: 110px !important;
	}

	body main {
		margin-top: 110px !important;
	}
}


@media screen and (min-width: 768px) and (max-width: 991px) {
	:root {
		--header-height: 92px;
	}

	header#header nav#header-navbar {
		height: 92px !important;
	}

	body main {
		margin-top: 92px;
	}
}

@media screen and (min-width: 992px) {
	:root {
		--header-height: 110px;
	}

	header#header nav#header-navbar {
		height: 110px !important;
	}

	body main {
		margin-top: 110px;
	}
}

/* Custom Buttons */

.btn-bullet {
	text-indent: 28px;
	background-image:url('./img/icons/icon-bullet.svg');	
	background-repeat: no-repeat;
    background-position-x: 10px;
	background-position-y: center;
}


/* Custom Lists */
ul {
	list-style-image: url(./img/tick-aqua-22x22-w3.svg);
}

	ul.blu {
		list-style-image: url(./img/tick-blu-22x22-w3.svg);
	}

	ul.purple {
		list-style-image: url(./img/tick-purple-22x22-w3.svg);
	}

	ul.orange {
		list-style-image: url(./img/tick-orange-22x22-w3.svg);
	}

li.text-bullet {
	text-indent: 28px;
	background-image:url('./img/icons/icon-bullet.svg');	
	background-repeat: no-repeat;
    background-position-x: 0;
	background-position-y: center;
	margin-bottom: 10px;
	margin-right: 20px;
}

/* Common styles */

section.hero {
	min-height: 350px;
	height: 350px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;			
	background-color: transparent;
}

@media screen and (max-width: 576px) {
	section.hero {
		min-height: 300px;
		height: 300px;
	}
}


/* Drop caps (first letter uppercase) */

body div.drop-caps > p:first-of-type::first-letter {
	-webkit-initial-letter: 3;
	initial-letter: 3;
	margin-right: .75em;
	font-weight: lighter;
}

/* Home page */

body.home div#main-content { }
	body.home section#section-hero {
		background: rgba(255, 255, 255, 1);
		background: radial-gradient(circle,rgba(255, 255, 255, 1) 0%, rgba(89, 188, 175, 0.3) 100%);
	}

	@media screen and (max-width: 767px) {
		body.home section#section-hero div#section-hero-avdesk {
			margin-top: 35px;
			margin-bottom: 35px;
		}
	}

	@media screen and (min-width: 768px) and (max-width: 1023px) {
		body.home section#section-hero {
			margin-bottom: 180px;
		}

		body.home section#section-hero div#section-hero-avdesk {
			margin-top: 40px;
			margin-bottom: -180px;
		}

			body.home section#section-hero a#section-hero-avdesk-cta {
				margin-top: -20px !important;
			}
	}

	/*
	@media screen and (min-width: 1024px) {
		body.home section#section-hero {
			margin-bottom: 240px;
		}

		body.home section#section-hero div#section-hero-avdesk {
			margin-top: 40px;
			margin-bottom: -240px;
		}

			body.home section#section-hero a#section-hero-avdesk-cta {
				margin-top: -20px !important;
			}
	}
	*/

	body.home section#section-avdesk-lift {
		position: relative;
		background: #FFFFFF;
		background: radial-gradient(circle at calc(50% + 50px) 50%,rgba(255, 255, 255, 1) 0%, rgba(var(--bs-orange-rgb), 0.1) 100%);
	}

	@media screen and (min-width: 1400px) {
		body.home section#section-avdesk-lift:before {
			content: "";
			position: absolute;
			inset: 0;
			background-image: url(/wp-content/uploads/2025/08/Lesione-legamento-crociato.png);
			background-repeat: no-repeat;
			background-position-x: right;
			background-position-y: center;
			z-index: 1;
		}
	}


	body.home section#section-awards div.awards-image {
		height: 160px;
		width: auto;
		padding-left: 30px;
		padding-right: 30px;
		display: flex;
		align-items: center;
		justify-content: center;
	}

/* Company page */

body.page-template-template-company {}

	body.page-template-template-company section#our-numbers {
		background-image:url('./img/pages/company/bg-linari-medical-in-numbers.jpg');	
		background-repeat: no-repeat;
		background-position: center;
		background-size: inherit;
	}

/* AvDesk page */

body.page-template-template-avdesk {}

	@media screen and (max-width: 576px) {
		body.page-template-template-avdesk ol.breadcrumb { 
			filter: brightness(0) invert(1); 
		}
	}

	body.page-template-template-avdesk section#international-patent {
		box-shadow: inset 0 0 0 2000px rgb(0 0 0 / 50%);
		background-image:url('./img/pages/company/bg-linari-medical-in-numbers.jpg');	
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
	}

	body.page-template-template-avdesk section.hero {
		min-height: 70vh;	
		height: 70vh;
		background: rgb(36,36,36);
		background: -moz-radial-gradient(circle, rgba(36,36,36,1) 0%, rgba(26,26,26,1) 60%, rgba(0,0,0,1) 100%);
		background: -webkit-radial-gradient(circle, rgba(36,36,36,1) 0%, rgba(26,26,26,1) 60%, rgba(0,0,0,1) 100%);
		background: radial-gradient(circle, rgba(36,36,36,1) 0%, rgba(26,26,26,1) 60%, rgba(0,0,0,1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#242424",endColorstr="#000000",GradientType=1);
	}

	body.page-template-template-avdesk section.hero div.container {
		background-position: center right;
		background-repeat: no-repeat;
		background-size: contain;
		background-color: transparent;
	}

	@media screen and (max-width: 576px) {
		body.page-template-template-avdesk section.hero {
			min-height: 80vh;
			height: 80vh;
		}
		
		body.page-template-template-avdesk section.hero div.container {
			background-image:url('/wp-content/uploads/2023/01/Background-AvDesk-mobile.png');
			background-position: 50% 40%;
			background-size: 115%;			
		}
	}

	body.page-template-template-avdesk section#avdesk-publications {
		background-image:url('./img/pages/avdesk/background-publications.jpg');
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		background-color: #2e2f31;
	}

/* AvDesk Lift page */

body.page-template-template-avdesklift { }

	@media screen and (max-width: 576px) {
		body.page-template-template-avdesklift ol.breadcrumb { 
			filter: brightness(0) invert(1); 
		}

		body.page-template-template-avdesklift img#logo-avdesk-lift { 
			filter: brightness(0) invert(1); 
		}
	}

	@media screen and (max-width: 1024px) {
		body.page-template-template-avdesklift section.hero {
			min-height: 70vh;	
			height: 70vh;
			background-image:url('/wp-content/uploads/2025/08/Background-AvDesk-Lift.jpg');
			background-position: calc(50% - 390px);
			background-size: cover;			
		}
	}

	@media screen and (min-width: 1024px) {
		body.page-template-template-avdesklift section.hero {
			min-height: 70vh;	
			height: 70vh;
			background-image:url('/wp-content/uploads/2025/08/Background-AvDesk-Lift.jpg');
			background-position: right;
			background-size: cover;			
		}
	}

	body.page-template-template-avdesklift section#dimensions {
		background: #FFFFFF;
		background: radial-gradient(circle,rgba(255, 255, 255, 1) 0%, rgba(170, 170, 170, 1) 100%);
	}

	body.page-template-template-avdesklift section#download-brochure {
		position: relative;
		background: #FFFFFF;
		background: radial-gradient(circle at calc(50% + 50px) 50%,rgba(255, 255, 255, 1) 0%, rgba(var(--bs-orange-rgb), 0.1) 100%);
	}

	body.page-template-template-avdesklift section#international-patent {
		box-shadow: inset 0 0 0 2000px rgb(0 0 0 / 50%);
		background-image:url('./img/pages/company/bg-linari-medical-in-numbers.jpg');	
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
	}

	@media screen and (min-width: 1400px) {
		body.page-template-template-avdesklift section#download-brochure:before {
			content: "";
			position: absolute;
			inset: 0;
			background-image: url(/wp-content/uploads/2025/08/Lesione-legamento-crociato.png);
			background-repeat: no-repeat;
			background-position: right center;
			transform: scaleX(-1);
			z-index: 1;
		}
	}

	body.page-template-template-avdesklift section#avdesk-publications div.read-more {
		height: 400px;
		position: absolute;
		width: 100%;
		bottom: 0;
		background: rgba(255, 255, 255, 1);
		background: -webkit-linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
		background: -moz-linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
		background: linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(
		  startColorstr="#FFFFFF",
		  endColorstr="#FFFFFF",
		  GradientType=0
		);
	}


/* Centers and Specialists page */

body.page-template-template-centers-and-specialists  {}

	body.page-template-template-centers-and-specialists div#map {
		display: block;
		width: 100%;
		height: calc(100vh - 180px);
	}

	body.page-template-template-centers-and-specialists div#map-location-field {
		text-align: center;
		width: 100%;
	}

	body.page-template-template-centers-and-specialists div#map-results {
		max-height: calc(100vh - 280px);
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=95)";
		filter: alpha(opacity=95);
		-moz-opacity: 0.95;
		-khtml-opacity: 0.95;
		opacity: 0.95;
	}

	@media screen and (max-width: 576px) {
		body.page-template-template-centers-and-specialists div#map-location-field {
			margin-left: auto;
			margin-right: auto;
		}
	}

	body.page-template-template-centers-and-specialists input#map-autocomplete {
		-moz-appearance: none;
		-webkit-appearance: none;
		width: 90%;
		max-width: 645px;
		min-width: 380px;
		height: 58px;
		background-color: #ffffff;
		-webkit-border-radius: 29px;
		-moz-border-radius: 29px;
		border-radius: 29px;
		border: none;
		padding-left: 65px;
		padding-right: 65px;
		color: #333333;
		font-size: 18px;
		font-weight: 400;
		font-family: 'Roboto', sans-serif;
		background-image: url('./img/icons/icon-search.svg');
		background-repeat: no-repeat;
		background-size: 28px auto;
		background-position: 23px center;
	}
	
	@media screen and (max-width: 576px) {
		body.page-template-template-centers-and-specialists input#map-autocomplete {
			min-width: 340px;
			padding-left: 50px;
			padding-right: 0px;
			height: 40px;
			background-position: 15px center;
			background-size: 23px auto;
		}
	}

/* Cisco page */

body.page-template-template-cisco section#cisco-desk-mini-highlights {
	background: rgb(76,6,109);
	background: -moz-linear-gradient(0deg, rgba(76,6,109,1) 0%, rgba(0,0,0,1) 100%);
	background: -webkit-linear-gradient(0deg, rgba(76,6,109,1) 0%, rgba(0,0,0,1) 100%);
	background: linear-gradient(0deg, rgba(76,6,109,1) 0%, rgba(0,0,0,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#4c066d",endColorstr="#000000",GradientType=1);		
}

	body.page-template-template-cisco section#cisco-desk-mini-highlights div.highlight {
	}


/* Section video */

section#video-container {
	height: 100vh;	
	overflow: hidden;
}


@media screen and (max-width: 576px) {
	section#video-container {
		height: 100vh;	
	}
}
	
	section#video-container video {
		object-fit: cover;
		height: 100vh;		
	}

	@media screen and (max-width: 576px) {
		section#video-container video {
			height: 100vh;	
		}
	}

		section#video-container div#video-callout {
			position: relative;
			top: calc(-100%/2);
		}
  
		@media screen and (max-width: 576px) {
			section#video-container div#video-callout {
				position: relative;
				top: calc(-100%/2);
			}
		}
	
	div#main-hero {
		width: 100%; 
		height: 600px;
		max-height: 600px; 
		z-index: 100;
		padding-top: 200px;
		clear: both; 
	}
	
/* Single Center page */

body.single-centers section.hero {
	background-image:url('./img/pages/center/bg-center.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;		
	box-shadow: inset 0 0 0 2000px rgb(255 255 255 / 30%);
	/* margin-bottom: 150px; */
}

/* Single Specialist page */

	body.single-specialists section.hero {
		background-image:url('./img/pages/specialist/bg-specialist.jpg');
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;		
		box-shadow: inset 0 0 0 2000px rgb(255 255 255 / 30%);
		/* margin-bottom: 150px; */
	}

	body.single-centers div.content,
	body.single-specialists div.content {
		margin-top: 180px;
	}
	
/* Contact Us page */

body.page-template-template-contact-us section.hero {
	min-height: 400px;
	height: 400px;
}

body.page-template-template-contact-us section.hero {
	min-height: 400px;
	height: 400px;
}

/* Publications page */

body.page-template-template-download-publications { }

	body.page-template-template-download-publications div.read-more {
		height: 400px;
		position: absolute;
		width: 100%;
		bottom: 0;
		background: rgba(255, 255, 255, 1);
		background: -webkit-linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
		background: -moz-linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
		background: linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(
		  startColorstr="#FFFFFF",
		  endColorstr="#FFFFFF",
		  GradientType=0
		);
	}

/* Book Telemedicine & AI */

body.page-template-template-book-telemedicine-and-ai {}

	body.page-template-template-book-telemedicine-and-ai div#flipbook-wrapper {
		position: relative;
		width: 100%;   /* same width of flipbook */
		height: auto;  /* same height of flipbook */
		margin: 0 auto;
	}

	body.page-template-template-book-telemedicine-and-ai button.flip-arrow {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		z-index: 10;
		border: none;
		border-radius: 50%;
		width: 150px;
		height: 150px;
		cursor: pointer;
		display: flex;
		align-items: center;
		justify-content: center;

		/* Arrow image */
		background-image: url('/wp-content/themes/linarimedical/img/arrow-right-primary-296x296.png');
		background-size: 100%;
		background-repeat: no-repeat;
		background-position: center;
		color: transparent; 
		background-color: white;
		opacity: 1;
	}

	/* Position buttons */
	body.page-template-template-book-telemedicine-and-ai button.flip-arrow.left {
		left: -75px;

		/* flip the arrow horizontally */
		transform: translateY(-50%) scaleX(-1);
	}

	body.page-template-template-book-telemedicine-and-ai button.flip-arrow.right {
		right: -75px;

		/* keep original direction */
		transform: translateY(-50%);
	}

	body.page-template-template-book-telemedicine-and-ai button.flip-arrow:hover {
		opacity: 0.5;
	}


	@media screen and (max-width: 576px) {
		body.page-template-template-book-telemedicine-and-ai button.flip-arrow {
			width: 50px;
			height: 50px;
		}

		body.page-template-template-book-telemedicine-and-ai button.flip-arrow.left {
			left: -15px;
		}

		body.page-template-template-book-telemedicine-and-ai button.flip-arrow.right {
			right: -15px;
		}
	}

	body.page-template-template-book-telemedicine-and-ai section#expert-interviews div.expert-picture  {
		position: relative;
	}

		body.page-template-template-book-telemedicine-and-ai section#expert-interviews div.expert-picture a {
			position: absolute;
			top: 10px;
			right: 10px;
			height: 30px;
			width: 30px;
			display: block;
			background-image:url('/wp-content/themes/linarimedical/img/icons/icon-social-linkedin-color.svg');
			background-position: center right;
			background-repeat: no-repeat;
			background-color: white;
			border-radius: 5px;
			text-indent: -9999px;
			white-space: nowrap;
		}

/* Single Event */

body.single-events section.hero {
	min-height: initial;
	height: initial;
}

/* Footer */

footer {
	/* margin-bottom: 44px; */
}

	footer section#footer-bottom {
		z-index: 1020;
	}
	
	body.page-template-template-free-demo footer {
		margin-bottom: 0;
	}

/* Yoast FAQ block — accordion styling.
   The block is rendered as <details>/<summary> by the render_block filter in
   functions.php. Content stays in the initial HTML so it's fully indexable
   by Google (FAQ rich results) and by LLM crawlers that don't execute JS.
   Progressive numbering is done with CSS counters: it renumbers automatically
   when questions are added/removed/reordered and stays out of the JSON-LD
   Question.name (Yoast reads it from the block attributes, not the DOM). */

.schema-faq {
	counter-reset: faq-counter;
}

.schema-faq details.schema-faq-section {
	margin-bottom: 0.75rem;
	border-bottom: 1px solid #e5e5e5;
	padding-bottom: 0.75rem;
	counter-increment: faq-counter;
}

	.schema-faq details.schema-faq-section > summary.schema-faq-question {
		cursor: pointer;
		list-style: none;
		font-weight: 500;
		padding: 0.5rem 1.5rem 0.5rem 2.75rem;
		position: relative;
	}

		/* Progressive number rendered before the question text. */
		.schema-faq details.schema-faq-section > summary.schema-faq-question::before {
			content: counter(faq-counter, decimal) ".";
			position: absolute;
			left: 0;
			top: 50%;
			transform: translateY(-50%);
			font-weight: 300;
			color: #999;
			font-variant-numeric: tabular-nums;
			min-width: 2.25rem;
		}

		/* Hide native disclosure marker (Safari/Chromium). */
		.schema-faq details.schema-faq-section > summary::-webkit-details-marker { display: none; }

		.schema-faq details.schema-faq-section > summary::after {
			content: "\002B"; /* plus sign */
			position: absolute;
			right: 0;
			top: 50%;
			transform: translateY(-50%);
			transition: transform .2s ease;
			font-weight: 300;
			font-size: 1.25rem;
			line-height: 1;
		}

		.schema-faq details.schema-faq-section[open] > summary::after {
			content: "\2212"; /* minus sign */
		}

	.schema-faq details.schema-faq-section > .schema-faq-answer {
		margin: 0.5rem 0 0.25rem 2.75rem;
	}

/* Team / Advisors Query Loop cards: make each post <li> a flex column so
   Bootstrap utility classes like `mt-auto` on any child (e.g. the LinkedIn
   button wrapper) push naturally to the bottom, aligning buttons across
   cards of different content heights without any custom markup. */
.wp-block-post.type-team {
	display: flex;
	flex-direction: column;
	height: 100%;
}
