/* z-index
1: top arrow, back arrow
2: opacifiers, notifications
3: menu 1, menu 2, video div
100: captcha, wait_div
9999: cookies
*/
/* ga = grid area */

/*=============================================================================*/
/* VARIABLES */
/*=============================================================================*/
:root
{
    --color_grey_051: rgb(51, 51, 51);    /* GREY - DARK */
	--color_grey_100: rgb(100, 100, 100);
	--color_grey_128: rgb(128, 128, 128);
	--color_grey_189: rgb(189, 189, 189);
	--color_grey_200: rgb(200, 200, 200); /* GREY - LIGHT - MENU BORDER */
	--color_grey_215: rgb(215, 215, 215); /* GREY - LIGHT - CURRENT MENU ENTRY */
	--color_grey_235: rgb(235, 235, 235); /* GREY - LIGHT - MENU BACKGROUND */
	--color_grey_249: rgb(249, 249, 249); /* GREY - NEARLY WHITE */

	--color_orange_light: rgb(240, 234, 222);
	
    --color_blue_pure:rgb(0, 0, 255);
	--color_blue_cobalt: rgb(52, 52, 217);
	--color_blue_buy:rgb(0, 153, 204);
	--color_blue_turquoise:rgb(40, 201, 255);
	--color_lightbluesky: rgb(135, 206, 250);
	--color_blue_pale: rgb(202, 225, 255);

    --color_blue_very_dark: rgb(0, 22, 45);
	--color_blue_purple_dark: rgb(4, 4, 109);
	--color_blue_purple_dark_2: rgb(22, 22, 155);
	--color_grey_dark_slate: rgb(47, 79, 79);
	--color_blue_grey_dark: rgb(38, 86, 130);
	--color_slate_light: rgb(82, 139, 139);
	--color_blue_h1:rgb(59, 89, 152);          /* GREY - BLUE */
	--color_blue_light_4: rgb(98, 129, 138);   /* BLUE - LIGHT 3 */
    --color_blue_light_3: rgb(167, 186, 192);  /* BLUE - LIGHT 3 */
    --color_blue_light_2: rgb(187, 207, 232);  /* BLUE - LIGHT 2 */
    --color_blue_light_1: rgb(206, 227, 225);  /* BLUE - LIGHT 1 */
	--color_blue_light_0: rgb(224, 238, 238);	
    --color_blue_light_5: rgb(176, 196, 222);

	--color_orange_pale: rgb(255, 152, 113);
	--color_orange_1: rgb(255, 90, 0);
	--color_orange_2: rgb(206, 72, 0);
	--color_orange_3: rgb(255, 182, 72);
	--color_orange_4: rgb(183, 50, 0);	
	--color_brown_red:rgb(153, 51, 0);
	
	--color_red_pure:rgb(255, 0, 0);
	--color_deep_pink: rgb(255, 20, 147);
	--color_dark_red: rgb(139, 0, 0);
	--color_purple: rgb(138, 8, 104);
    --color_pink_grey_light: rgb(139, 95, 101);

	--color_green_dark: rgb(24, 102, 31);
    --color_green_milky: rgb(0, 102, 102);
	--color_green_bottle: rgb(87, 129, 93);
	--color_green_english: rgb(26, 186, 40);
	--color_green_very_pale: rgb(245, 251, 239);
	--color_green_nearly_white: rgb(240, 255, 242);
	--color_green_fluo: rgb(204, 255, 102);
	--color_green_fluo_light: rgb(227, 255, 169);
	
	--color_yellow_khaki_grey: rgb(236, 236, 227);
	--color_yellow_khaki: rgb(204, 204, 51);
	--color_orange_white: rgb(204, 153, 0);
	--color_gold: gold;
	    
    --menu_2_icon_width: 18px;
    --menu_2_icon_height: 18px;
    
    --menu_2_icon_alone_width: 26px;
	--menu_2_icon_alone_height: 26px;
	
	--menu_1_icon_close_width: 32px;
	--menu_1_icon_close_height: 32px;
	
	--menu_1_icon_open_width: 32px;
	--menu_1_icon_open_height: 32px;
	
	--menu_2_icon_close_width: 32px;
	--menu_2_icon_close_height: 32px;

	--captcha_refresh_icon_width: 32px;
	--captcha_refresh_icon_height: 32px;
	
	--contact_svg_icon_height: 32px;
    --contact_svg_icon_width: 32px;
    
	--nav_arrow_svg_icon_height: 32px;
    --nav_arrow_svg_icon_width: 32px;
    
    --quotinv_icon_height: 40px;
    --quotinv_icon_width: 40px;

    --quotinv_icon_2_height: 30px;
    --quotinv_icon_2_width: 30px;
    
    --quotinv_dl_svg_icon_height: 30px;
    --quotinv_dl_svg_icon_width: 30px;
    
	--trial_download_svg_icon_height: 50px;
	--trial_download_svg_icon_width: 50px;
	
	--video_close_svg_icon_height: 50px;
	--video_close_svg_icon_width: 50px;
	
	--demos_svg_icon_clock_height: 18px;
	--demos_svg_icon_clock_width: 18px;

	--demos_svg_icon_play_height: 18px;
	--demos_svg_icon_play_width: 18px;
	
	--demos_svg_icon_movie_height: 30px;
	--demos_svg_icon_movie_width: 30px;
	
	--logged_in_user_svg_icon_height: 18px;
	--logged_in_user_svg_icon_width: 18px;
	
	--user_account_trial_svg_icon_clock_height: 30px;
	--user_account_trial_svg_icon_clock_width: 30px;
	
	--wait_dlg_icon_close_width: 32px;
	--wait_dlg_icon_close_height: 32px;
	
	--external_link_icon_width: 32px;
	--external_link_icon_height: 32px;
	--external_link_icon_small_width: 18px;
	--external_link_icon_small_height: 18px;
}

/*=============================================================================*/
/* CSS RESET */
/*=============================================================================*/
*
{
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-family: Arial, Helvetica, sans-serif;
	font-family: "Helvetica Neue",Arial,sans-serif;
}

*, *::before, *::after
{
    box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6, strong, a, ol, li
{
	all: unset;
}

img, svg
{
	border: 0;
	max-width: 100%;
	height: auto;
 	display: block;
}

/*=============================================================================*/
/* OPACIFIERS */
/*=============================================================================*/
.opacifier_for_menu_1,
.opacifier_for_menu_2,
.opacifier_for_captcha,
.opacifier_for_wait_div,
.opacifier_for_video
{
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    background-color: black;
    display: none;
    z-index: 2;    
    
    /* IE 8 */
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=45)";

    /* IE 5-7 */
    filter: alpha(opacity=45);

    /* Netscape */
    -moz-opacity: 0.45;

    /* Safari 1.x */
    -khtml-opacity: 0.45;

   /* "Good" browsers */
   opacity: 0.45;
}

.opacifier_for_menu_1.display_block,
.opacifier_for_menu_2.display_block,
.opacifier_for_captcha.display_block,
.opacifier_for_wait_div.display_block,
.opacifier_for_video.display_block
{
    display: block;
}

/*=============================================================================*/
/* MAIN LAYOUT (HEADER, MENU1, MAIN CONTENT) (GRID) */
/*=============================================================================*/
.grid_header_menu_content
{
    display: grid;
    height: 100vh;
    
    grid-template-areas:
    "header header"
    "menu content";
    
    /* This sets the width of the first column to equal the width of the widest item in that column, 
    and the width of the second column to get the remaining width of the grid. */
    grid-template-columns: auto 1fr;
    
    grid-template-rows: auto 1fr;
}

.header
{
    /*background-color: darkcyan;*/
    grid-area: header;
    overflow: auto;
}

.menu_1
{
    /*background-color: yellowgreen;*/
    overflow: auto;
    
	/* MOBILE SCREEN */
    position: fixed;
    z-index: 3;
    top: 2em;
    bottom: 2em;
    right: 2em;    
    /*visibility: hidden;*/
    display: none;
    /* MOBILE SCREEN - END */
}

.menu_1.display_block
{
	display: block;
}

.main_content
{
    grid-area: content;
    overflow: auto;
    /*background-color: var(--color_grey_128);*/ 
}

/*=============================================================================*/
/* MAIN CONTENT */
/*=============================================================================*/
.main_content_useful_space
{
    /*background-color: darkorange;*/ 
    max-width: 768px; /* Cf. media query */     
    margin-top: 1em;
    margin-bottom: 1em;
    padding: 1em;
}

.h1_text
{
  color: var(--color_blue_h1);
  font-weight: bold;
  font-size: 1.5rem;
  /*margin-top: 1em;*/
  /*margin-bottom: 1em;*/
}

.div_h1_subtitle
{
	color: var(--color_blue_h1);
	font-weight: bold;
	/*font-size: 0.9rem;*/
}

.main_content_text
{
	margin-top: 1em;
	/*margin-bottom: 1em;*/
	font-size: 1.13rem;
	line-height: 2rem;
	/*text-align: justify;*/
}

/*=============================================================================*/
/* CAPTCHA */
/*=============================================================================*/
.captcha_div
{
	background-color: white;
	border: solid 3px var(--color_green_bottle);
	  
	/*visibility: hidden;*/
	display: none;
	z-index: 100;
	
	/* For both vertical and horizontal centering: */
	position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    /*---------------------------------------------*/
}

.captcha_div.display_block
{
	display: block;
}

.captcha_title_div
{
	background-color: var(--color_green_bottle);
	color: white;
	padding: 5px;
	font-weight: bold;
	font-style: italic;
	text-align: center;
}

.captcha_body_div
{
	padding: 5px;
}

.captcha_question_div
{
	text-align: center;
	/*background-color: palevioletred;*/
}

/*------------*/
.captcha_body_grid
{
	display: grid;
	
	grid-template-areas:
    "captcha_img_ga captcha_refresh_ga captcha_input_ga";

    grid-template-columns: auto auto auto;
    
	align-items: center;

	/*background-color: sandybrown;*/
}

/*------------*/
.captcha_img_ga
{
	grid-area: captcha_img_ga;
	
	/*background-color: palegreen;*/
}

.captcha_img
{    
	margin: auto;
	/*background-color: lightpink;*/
}

.captcha_img.generated_captcha
{
	/* So that the image doesn't grow too small. */
	min-width: 200px;
    max-width: 200px;
    
    border: solid 1px var(--color_green_bottle);
}

.captcha_msg_wait_div
{
	text-align: center;
	display: none;
	/*background-color: lightseagreen;*/
	margin-top: 2em;
}

.captcha_msg_wait_div.display_block
{
	display: block;
}

/*------------*/
.captcha_refresh_ga
{
	grid-area: captcha_refresh_ga;
	display: none;
	margin-left: 1em;
	margin-right: 1em;
	/*background-color: palegoldenrod;*/
}

.captcha_refresh_ga.display_block
{
	display: block;
}

.captcha_svg_icon_refresh
{
    height: var(--captcha_refresh_icon_height);
    width: var(--captcha_refresh_icon_width);
    
    /* So that the SVG doesn't grow too small. */
    min-width: var(--captcha_refresh_icon_width);
    max-width: var(--captcha_refresh_icon_width);
    
    cursor: pointer;    
	fill: var(--color_grey_051);
	display: block; /* SVG is inline by default. */
	/*background-color: palegreen;*/
}

/*------------*/
.captcha_input_ga
{
	grid-area: captcha_input_ga;
	display: none;
	/*background-color: paleturquoise;*/
}

.captcha_input_ga.display_block
{
	display: block;
}

.captcha_input_ga_div_flex
{
	display: flex;
	align-items: center;
}

.captcha_input
{
	width: 2em;
	margin-left: auto;
}

.captcha_error_message_span
{
	visibility: hidden;
	color: var(--color_red_pure);
	font-weight: bold;
	font-style: italic;
	padding-right: 0.2em;
}

.captcha_error_message_span.display_inline_block
{
	display: inline-block;	
}

/*------------*/
.captcha_btns_grid
{
	display: grid;
	
	grid-template-areas:
    "captcha_btn_ok_ga captcha_btn_cancel_ga";

    grid-template-columns: auto auto;
    
	align-items: center;
	justify-content: end;

	/*background-color: darkseagreen;*/	
}

.captcha_btn_ok_ga
{
	grid-area: captcha_btn_ok_ga;
	display: none;
	margin-right: 1em;
}

.captcha_btn_ok_ga.display_block
{
	display: block;
}

.captcha_btn_cancel_ga
{
	grid-area: captcha_btn_cancel_ga;
}

/*=============================================================================*/
/* COMMON STYLES (cs_) */
/*=============================================================================*/
.cs_input_type_text_styles
{
	padding: 3px;
	border: 1px solid var(--color_blue_light_3);
	font: 1rem arial,helvetica,sans-serif; /* 14px */
	line-height: 1.28rem; /* 18px */	
}

.cs_button_styles_unique
{
	background-color: white;
  
	padding: 6px;
	border: 1px solid var(--color_grey_dark_slate);
	cursor: pointer;
	  
	color: var(--color_grey_dark_slate);
	font-weight: bold;
	/*font-size: 0.8em;*/
}

.cs_button_styles_unique:hover
{
	background-color: var(--color_blue_light_1);	
}

.cs_highlighted_button_like_link
{  
	padding: 0.4em 1em 0.4em 1em; /* TOP RIGHT BOTTOM LEFT */
	border: 1px solid var(--color_grey_dark_slate);
	background-color: var(--color_green_fluo);
	background-image: linear-gradient(to bottom, var(--color_green_fluo_light), var(--color_green_fluo));
	color: black;
	font-weight: bold;
	text-decoration: none;
  
	cursor: pointer;

	white-space: normal; /* So that it does text wrap. */
}

.cs_highlighted_button_like_link:hover
{
	text-decoration: underline;
	color: var(--color_red_pure);
}

.cs_error
{
	border: solid 1px var(--color_red_pure);
}

.cs_absence_of_error
{
	border: 1px solid var(--color_blue_light_3);
}

.cs_select_styles,
.cs_textarea_styles
{
	padding: 3px;
	border: 1px solid var(--color_blue_light_3);
	font: 1rem arial,helvetica,sans-serif; /* 14 px */
	line-height: 1.28rem; /* 18 px */  
}

.cs_strong_hilighter
{
	color: var(--color_green_bottle);
	font-weight: bold;
}

.cs_text
{
	line-height: 2rem;
	/*background-color: cornflowerblue;*/
}

.cs_input_like_anchor
{
	background-color: transparent;
	border: none;
	color: var(--color_blue_cobalt);
	cursor: pointer;
}

.cs_input_like_anchor:hover
{
	text-decoration: underline;
	color: var(--color_red_pure);
}

.cs_hidden_span
{
	visibility: hidden;
}

.cs_text_paragraph_div
{
	font-size: 1.13rem;
	line-height: 2rem;
	margin-bottom: 1em;
}

/*=============================================================================*/
/* MESSAGE */
/*=============================================================================*/
.message_lines_div_flex
{
	display: flex;
	flex-direction: column;
	border: solid 3px var(--color_green_bottle);
	margin-top: 1em;
}

.message_lines_title_div
{
	background-color: var(--color_green_bottle);
	color: white;
	padding: 5px;
	padding-right: 8px;
	font-weight: bold;
	font-style: italic;	
}

.message_lines_text_div
{
	padding: 5px;
	color: var(--color_green_dark);
}

/*=============================================================================*/
/* CONTACT */
/*=============================================================================*/
.contact_message
{
	font-size: 1.3rem;
	color: var(--color_grey_051);
	font-style: italic;	
}

.contact_phone_email_grid
{
    display: grid;

    grid-template-areas:
    "icon_phone phone"
    "icon_email email";
    
    /* This sets the width of the first column to equal the width of the widest item in that column, 
    and the width of the second column to get the remaining width of the grid. */
    grid-template-columns: auto 1fr;
    
    grid-template-rows: auto 1fr;
    
    align-items: center;
    
    /*background-color: pink;*/
}

.contact_icon_phone,
.contact_icon_email,
.contact_phone,
.contact_email
{
	padding: 0.5em;	
}

.contact_icon_phone
{
    grid-area: icon_phone;
    /*background-color: palegreen;*/
}

.contact_icon_email
{
    grid-area: icon_email;
    /*background-color: paleturquoise;*/
}

.contact_svg_icon
{
    height: var(--contact_svg_icon_height);
    width: var(--contact_svg_icon_width);
    min-width: var(--contact_svg_icon_width);
    fill: var(--color_grey_051);
	display: block; /* SVG is inline by default. */
}

.contact_phone
{
    grid-area: phone;
	font-size: 2rem;
	color: var(--color_grey_051);
    /*background-color: palevioletred;*/
}

.contact_email
{
    grid-area: email;
	font-size: 2rem;
	color: var(--color_grey_051);
 	/*background-color: palegoldenrod;*/	
}

.contact_email_link:link
{
	text-decoration: none;
}

.contact_email_link:visited,
.contact_email_link:active
{
	color: var(--color_blue_purple_dark);
}

.contact_email_link:hover
{
	text-decoration: underline;
	color: var(--color_red_pure);
}

.contact_infos_iode
{
	display: grid;
	grid-template-areas:
    "siret_nro"         "bank_name"
    "naf_code"          "bank_account"
    "training_org_nro"  "bank_iban"
    "intracom_vat_nb"   "bank_bic"    ;
    grid-template-columns: 1fr;
    
	background-color: var(--color_blue_light_0);
	border-top: solid 1px var(--color_grey_051);
	border-bottom: solid 1px var(--color_grey_051);
}

.contact_infos_iode_siret_nro { grid-area: "siret_nro"; }
.contact_infos_iode_naf_code { grid-area: "naf_code"; }
.contact_infos_iode_training_org_nro { grid-area: "training_org_nro"; }
.contact_infos_iode_intracom_vat_nb { grid-area: "intracom_vat_nb"; }
.contact_infos_iode_bank_name { grid-area: "bank_name"; }
.contact_infos_iode_bank_account { grid-area: "bank_account"; }
.contact_infos_iode_bank_iban { grid-area: "bank_iban"; }
.contact_infos_iode_bank_bic { grid-area: "bank_bic"; }

.contact_infos_iode_styles
{
	font-style: italic;
}

/*=============================================================================*/
/* VISITOR FORM */
/*=============================================================================*/
.visitor_form_grid
{
    display: grid;

	/* MOBILE SCREEN */
    grid-template-areas:
    "company_name_title"       "company_name_value"
    "person_title_title"       "person_title_value"
    "person_first_name_title"  "person_first_name_value"
    "person_last_name_title"   "person_last_name_value"
    "person_function_title"    "person_function_value"
    "addr_line1_title"         "addr_line1_value"
    "addr_line2_title"         "addr_line2_value"
    "postal_or_zip_code_title" "postal_or_zip_code_value"
    "city_title"               "city_value"
    "country_title"            "country_value"
    "state_province_title"     "state_province_value"
    "email_addr_title"         "email_addr_value"
    "phone_nb_title"           "phone_nb_value"
    "pwd_title"                "pwd_value"
    "intention_title"          "intention_value"
    "submit_btn"               "submit_btn";
    
    grid-gap: 0.5em;
    /* MOBILE SCREEN - END */
    
    align-items: center;
   	
    padding: 0.5em;
    background-color: var(--color_orange_light);
	border: 1px solid var(--color_blue_light_3);
}

.visitor_form_input
{
	width: 100%;
}

.visitor_form_company_name_title { grid-area: "company_name_title"; }
.visitor_form_person_title_title { grid-area: "person_title_title"; }
.visitor_form_person_first_name_title { grid-area: "person_first_name_title"; }
.visitor_form_person_last_name_title { grid-area: "person_last_name_title"; }
.visitor_form_person_function_title { grid-area: "person_function_title"; }
.visitor_form_addr_line1_title { grid-area: "addr_line1_title"; }
.visitor_form_addr_line2_title { grid-area: "addr_line2_title"; }
.visitor_form_postal_or_zip_code_title { grid-area: "postal_or_zip_code_title"; }
.visitor_form_city_title { grid-area: "city_title"; }
.visitor_form_country_title { grid-area: "country_title"; }
.visitor_form_state_province_title { grid-area: "state_province_title"; }
.visitor_form_email_addr_title { grid-area: "email_addr_title"; }
.visitor_form_phone_nb_title { grid-area: "phone_nb_title"; }
.visitor_form_pwd_title { grid-area: "pwd_title"; }
.visitor_form_intention_title { grid-area: "intention_title"; }

.visitor_form_company_name_title, 
.visitor_form_person_title_title, 
.visitor_form_person_first_name_title, 
.visitor_form_person_last_name_title, 
.visitor_form_person_function_title, 
.visitor_form_addr_line1_title, 
.visitor_form_addr_line2_title, 
.visitor_form_postal_or_zip_code_title, 
.visitor_form_city_title, 
.visitor_form_country_title, 
.visitor_form_state_province_title, 
.visitor_form_email_addr_title, 
.visitor_form_phone_nb_title, 
.visitor_form_pwd_title, 
.visitor_form_intention_title 
{ margin-top: 0.5em; margin-bottom: -0.5em; }

.visitor_form_submit_btn
{
	grid-area: "submit_btn";
	justify-self: end;
}

.visitor_form_company_name_value { grid-area: "company_name_value"; }
.visitor_form_person_title_value { grid-area: "person_title_value"; }
.visitor_form_person_first_name_value { grid-area: "person_first_name_value"; }
.visitor_form_person_last_name_value { grid-area: "person_last_name_value"; }
.visitor_form_person_function_value { grid-area: "person_function_value"; }
.visitor_form_addr_line1_value { grid-area: "addr_line1_value"; }
.visitor_form_addr_line2_value { grid-area: "addr_line2_value"; }
.visitor_form_postal_or_zip_code_value { grid-area: "postal_or_zip_code_value"; }
.visitor_form_city_value { grid-area: "city_value"; }
.visitor_form_country_value { grid-area: "country_value"; }
.visitor_form_state_province_value { grid-area: "state_province_value"; }
.visitor_form_email_addr_value { grid-area: "email_addr_value"; }
.visitor_form_phone_nb_value { grid-area: "phone_nb_value"; }
.visitor_form_pwd_value { grid-area: "pwd_value"; }
.visitor_form_intention_value { grid-area: "intention_value"; }

.visitor_form_intention_textarea
{
	height: 10em;
	width: 100%;
}

/*=============================================================================*/
/* WAIT DIV */
/*=============================================================================*/
.wait_div
{
  	background-color: white;
	border: solid 0.2em var(--color_green_bottle);
	  
	visibility: hidden;
	z-index: 100;
	
	/* For both vertical and horizontal centering: */
	position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    /*---------------------------------------------*/
}

.wait_header_div_flex
{
	display: flex;	
	align-items: center;
	background-color: var(--color_green_bottle);
	color: white;
	padding: 0.3em;
}

.wait_header_message_div
{
 	font-weight: bold;
	font-style: italic;
	/*text-align: center;*/
	/*background-color:orange;*/
}

.wait_header_cross_div
{
	font-size: 1.5rem;
	cursor: pointer;
	margin-right: 0.05em;
	margin-top: -0.1em;
	margin-left: auto;
	/*background-color:orange;*/
}

.wait_svg_icon_close
{
	height: var(--wait_dlg_icon_close_width);
	width: var(--wait_dlg_icon_close_width);
	min-width: var(--wait_dlg_icon_close_width);
	cursor: pointer;    
	fill: var(--color_green_bottle);
	display: block; /* SVG is inline by default. */
	margin-left: auto;
}

.wait_body_div
{
	padding: 1em;
	text-align: center;
}

.wait_animated_gif
{
	margin: auto;
	margin-bottom: 0.5em;
	width: 16px;
    height: 16px;
}

/*=============================================================================*/
/* HEADER */
/* include-header.jsp */
/*=============================================================================*/
.header_container_whole_width
{
    background-color: var(--color_grey_051);
    width: 100%;	
}

.header_container_margins
{
	width: 95%;
    margin: 0 auto;
    padding-top: 0.5em;
    padding-left: 0.5em;
    padding-right: 0.5em;
    /*border: solid 2px blue;*/
}

.header_container_flex
{
	display: flex;
	align-items: center;
	/*border: solid 3px palegreen;*/
}

.header_svg_iodesoft_logo
{
    width: 140px;
    height: 50px;
    margin-right: 1em;
}

.header_jingle_title
{
	font-size: 1.4rem;
	font-weight: bold;
	color: white;
	/*background-color: cadetblue;*/
}

.header_jingle_subtitle
{
	color: white;
	display: none;
	/*background-color: skyblue;*/
}

.header_phone_number
{
	color: white;
	font-size: 0.85rem;	
	/*background-color: hotpink;*/
}

.header_phone_number_simplified
{
	color: white;
	font-size: 0.85rem;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	/*background-color: hotpink;*/
}

/*=============================================================================*/
/* HEADER - Menu 2 - 5 SVG pictograms */
/*=============================================================================*/
.header_container_flex_for_menu_2_svgs
{
    /*background-color: aquamarine;*/
    display: flex;
 	margin-left: auto;
 	cursor: pointer;
    
    /* MOBILE SCREEN */
    margin-right: 1em;
    /* MOBILE SCREEN - END */
}

.header_svg_menu_2_icon
{
	width: var(--menu_2_icon_width);
	min-width: var(--menu_2_icon_width);
	height: var(--menu_2_icon_height);
	margin-right: 0.4em;
	fill: white;
}

.header_svg_menu_2_icon_last
{
	margin-right: 0em;
}

/*=============================================================================*/
/* MENU 1 */
/* include-vertical-menu-1.jsp */
/*=============================================================================*/
.menu_1_container_main_entries
{
	background-color: var(--color_grey_235);
  	
	border-top:   solid 1px var(--color_grey_200);
	border-right: solid 1px var(--color_grey_200);
	border-left:  solid 1px var(--color_grey_200);
}

.menu_1_container_other_entries
{
	background-color: var(--color_blue_light_1);
  	
	border-top:   solid 1px var(--color_grey_200);
	border-right: solid 1px var(--color_grey_200);
	border-left:  solid 1px var(--color_grey_200);
}

.menu_1_div_icon_close
{
	position: sticky;
	top: 0px;
	background-color: var(--color_grey_235);
	padding: 5px;
}

.menu_1_svg_icon_close
{
    height: var(--menu_1_icon_close_height);
    width: var(--menu_1_icon_close_width);
    min-width: var(--menu_1_icon_close_width);
    cursor: pointer;    
	fill: var(--color_grey_051);
	display: block; /* SVG is inline by default. */
	margin-left: auto;
}

.menu_1_svg_icon_open
{
    height: var(--menu_1_icon_open_height);
    width: var(--menu_1_icon_open_width);
    min-width: var(--menu_1_icon_open_width);
    cursor: pointer;
	fill: white;		
	/* background-color: hotpink; */	
}

.menu_1_non_clickable_menu_entry
{
	display: block;
  	padding: 0.4em 1em 0.4em 1em; /* TOP RIGHT BOTTOM LEFT */
  	border-bottom: solid 1px var(--color_grey_200);
	font-style: italic;
	font-weight: bold;
}

.menu_1_non_clickable_menu_main_entry
{
	background-color: var(--color_grey_235);	
	color: var(--color_grey_128);
}

.menu_1_non_clickable_menu_other_entry
{
	/* background-color: rgb(206, 169, 123); */ 
	background-color: var(--color_blue_light_1);
	color: var(--color_blue_grey_dark);
}

.menu_1_vertical_menu_component
{
	direction: ltr;
	display: block;
	padding: 0.4em 1em 0.4em 1em; /* TOP RIGHT BOTTOM LEFT */
	border-bottom: solid 1px var(--color_grey_200);
 	cursor: pointer;
}

.menu_1_vertical_menu_component_last
{
	border-bottom: revert;
}

.menu_1_current_entry_in_menu
{
  font-weight: bold;
  background-color: var(--color_grey_215);
  background-color: var(--color_gold);
  color: var(--color_blue_pure);
  text-decoration: none;
}

.menu_1_normal_link_menu_main_entry:link, 
.menu_1_normal_link_menu_main_entry:visited, 
.menu_1_normal_link_menu_main_entry:active,
.menu_2_normal_link_menu_main_entry:link, 
.menu_2_normal_link_menu_main_entry:visited, 
.menu_2_normal_link_menu_main_entry:active
{
  font-weight: bold;
  background-color: var(--color_grey_235);
  color: var(--color_grey_051);
  text-decoration: none;
}

.menu_1_normal_link_menu_main_entry:hover,
.menu_2_normal_link_menu_main_entry:hover
{
  text-decoration: underline;
  color: var(--color_red_pure);
  background-color: white;
}

.menu_1_normal_link_other_entry:link, 
.menu_1_normal_link_other_entry:visited, 
.menu_1_normal_link_other_entry:active
{
  font-weight: bold;
  background-color: var(--color_blue_light_1);
  color: var(--color_grey_051);
  text-decoration: none;
}

.menu_1_normal_link_other_entry:hover
{
  text-decoration: underline;
  color: var(--color_red_pure);
  background-color: var(--color_grey_235);
}

.menu_1_entry_indented
{
	text-indent: 1em;	
}

.menu_1_div_all_rights_reserved
{
	font-size: 0.9rem;
	font-style: italic;
	text-align: right;
  
	display: block;
	padding: 1.4em 1em 1.4em 1em; /* TOP RIGHT BOTTOM LEFT */
	background-color: var(--color_blue_light_2);
	direction: ltr;
}

/*=============================================================================*/
/* MENU 2 */
/*=============================================================================*/
.menu_2
{
    /* background-color: yellow; */
    overflow: auto;
    
    position: fixed;
    z-index: 3;
    top: 2em;
    bottom: 2em;
    right: 2em;    
    display: none;
}

.menu_2.display_block
{
	display: block;
}

.menu_2_entries
{		
	border-top: solid 1px var(--color_grey_200);
	border-right: solid 1px var(--color_grey_200);
	border-left: solid 1px var(--color_grey_200);
}

.menu_2_entry_flex
{
	display: flex; 
	align-items: center; 
	
	background-color: var(--color_grey_235);
	color: var(--color_grey_051);
	font-weight: bold;  
	padding: 0.4em 1em 0.4em 1em; /* TOP RIGHT BOTTOM LEFT */
	border-bottom: solid 1px var(--color_grey_200);
	
	width: 100%; /* So that the SVG doesn't disappear. Cf. menu_2_svg_icon_alone */
	
	position: relative; /* Cf. cs_block_link */
}

.menu_2_current_entry_in_menu
{
	background-color: var(--color_grey_215);
	background-color: var(--color_gold);
	color: var(--color_blue_pure);
}

/*=============================================================================*/
/* COMMON STYLES */
/*=============================================================================*/
.cs_block_link
{  
	/* Cf. menu_2_entry_flex */
    position:absolute; /* The element is positioned relative to its first positioned (not static) ancestor element. */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
}

.cs_normal_link:link
{
	text-decoration: none;
	color: var(--color_blue_cobalt);
	cursor: pointer;
}

.cs_normal_link:visited,
.cs_normal_link:active
{
	color: var(--color_blue_purple_dark);
}

.cs_normal_link:hover
{
	text-decoration: underline;
	color: var(--color_red_pure);
}

.menu_2_div_icon_close
{
	position: sticky;
	top: 0px;
	background-color: var(--color_grey_235);
	padding: 5px;
}

.menu_2_svg_icon_close
{
    height: var(--menu_2_icon_close_height);
    width: var(--menu_2_icon_close_width);
    min-width: var(--menu_2_icon_close_width);
    cursor: pointer;    
	fill: var(--color_grey_051);

	display: block; /* SVG is inline by default. */
	margin-left: auto;
	/*background-color: white;*/
}

.menu_2_svg_icon_alone
{
	height: var(--menu_2_icon_alone_height);
	width: var(--menu_2_icon_alone_width);
	min-width: var(--menu_2_icon_alone_width);
	fill: var(--color_grey_100);
}

.menu_2_entry_text
{
	padding-left: 1em; 
	padding-right: 1em;
}

.menu_2_div_nb_articles
{
	font-size: 0.8rem;
}

/*=============================================================================*/
/* WELCOME PAGE */
/*=============================================================================*/
.welcome_page_div_img
{
	margin: 2em;		
}

/*
.welcome_page_photo_div
{
	margin-top: 1em;
}
*/

/*=============================================================================*/
/* Fixed top arrow ; Fixed back arrow */
/*=============================================================================*/
.top_arrow_fixed_sticky,
.back_arrow_fixed_sticky
{
	position: sticky;
	top: 1em;	
	z-index: 1;
	max-width: calc(768px + 1em);
}

.top_arrow_fixed_sticky.display_none,
.back_arrow_fixed_sticky.display_none
{
	display: none;
}

.top_arrow_fixed_float_right,
.back_arrow_fixed_float_right
{
	float: right; 
	position: relative;  /* Cf. cs_block_link */
	margin-right: 0.5em;
}

.top_arrow_fixed_float_right
{
	background-color: var(--color_blue_light_3) /* crimson */;	
}

.back_arrow_fixed_float_right
{
	/*background-color: green;*/
	background-color: var(--color_green_fluo);
	border: solid 1px var(--color_blue_light_3);
}

.top_arrow_fixed_svg_icon,
.back_arrow_fixed_svg_icon
{
	height: var(--nav_arrow_svg_icon_height);
	width: var(--nav_arrow_svg_icon_width);
	min-width: var(--nav_arrow_svg_icon_width);
	fill: white;
	min-width: var(--nav_arrow_svg_icon_width);
	/*background-color: crimson;*/
}

.top_arrow_fixed_svg_icon
{
	fill: white;
}

.back_arrow_fixed_svg_icon
{
	fill: var(--color_blue_light_3) ;
}

/*=============================================================================*/
/* COOKIES CONSENT */
/*=============================================================================*/
.cookies_div
{
    position: fixed;
	bottom: 0;
    right: 0;
    z-index: 9999;
    margin-right: 2em;
    margin-bottom: 1em;
    background-color: var(--color_green_milky);
    color: white;
    font-weight: bold;
    border: solid 3px var(--color_red_pure);
    width: 20em;
    padding: 1em;
}

.cookies_div_for_button
{
	text-align: right;
}

/*=============================================================================*/
/* NOTIFICATIONS                                                               */
/*=============================================================================*/
.notification_add_to_quotation,
.notification_add_to_cart,
.notification_volume_discount
{
	background-color: var(--color_green_nearly_white);
	border: 1px solid var(--color_green_english);
    color: var(--color_green_dark);
  	
	padding-top: 5px;
 	padding-bottom: 5px;
 	padding-right: 10px;
	padding-left: 10px;
	margin-left: 2em;
 	position: absolute;
 	display: none;
 	z-index: 2;
}

.notification_an_error_occurred,
.notification_your_session_expired,
.notification_quotinv_too_heavy
{
	background-color: var(--color_yellow_khaki);
  	border: 1px solid var(--color_orange_white);
  	
	padding-top: 5px;
  	padding-bottom: 5px;
	padding-right: 10px;
	padding-left: 10px;
  	margin-left: 2em;
	position: absolute;
 	display: none;
	z-index: 2; 
}

/*=============================================================================*/
/* LEGAL PAGES */
/*=============================================================================*/
.legal_clause_title
{
  	font-weight: bold;
	color: var(--color_blue_h1);
	margin-top: 1.5em;
	margin-bottom: 0.2em;
	font-size: 1.13rem;
}

.legal_clause_subtitle
{
	color: var(--color_blue_h1);
	font-style: italic;
	font-size: 1.13rem;
}

.legal_clause_text
{
	font-size: 1.13rem;
	line-height: 2rem;
	text-align: justify;	
}

/*=============================================================================*/
/* FAQ PAGE                                                                    */
/*=============================================================================*/
.faq_ol
{
	counter-reset: item;
	display: table;
	margin-bottom: 1em;
	margin-top: 1em;
}

.faq_ol_summary
{
	padding-bottom: 5em;
}

.faq_li,
.faq_li_2
{
	display: table-row;
}

.faq_li::before,
.faq_li_2::before
{
	content: counters(item, ".") " ";
	counter-increment: item;
  
	font-weight: bold;

	width: 2em;
}

.faq_li_2::before
{
	display: table-cell;
}

.faq_a_group_title:link
{
	text-decoration: none;
	font-weight: bold;
	color: var(--color_blue_cobalt);
	cursor: pointer;
}

.faq_a_group_title:visited,
.faq_a_group_title:active
{
	color: var(--color_blue_purple_dark_2);
}

.faq_a_group_title:hover
{
	text-decoration: underline;
	font-weight: bold;
	color: var(--color_red_pure);
}

.faq_a_summary:link
{
	text-decoration: none;
	color: var(--color_blue_cobalt);
	cursor: pointer;
}

.faq_a_summary:visited,
.faq_a_summary:active
{
	color: var(--color_blue_purple_dark_2);
}

.faq_a_summary:hover
{
	text-decoration: underline;
	color: var(--color_red_pure);
}

.faq_group_title
{
	font-weight: bold;
}

.faq_a:link
{
	text-decoration: none;
	font-weight: bold;
	color: var(--color_blue_cobalt);
	cursor: pointer;
}

.faq_a:visited,
.faq_a:active
{
	color: var(--color_blue_purple_dark_2);
}

.faq_a:hover
{
	text-decoration: underline;
	color: var(--color_red_pure);
}

.faq_question
{
	font-weight: bold; 	
}

.faq_div_text
{
 	font-size: 1.13rem;
	line-height: 2rem;
	margin-bottom: 1em;
}

/*=============================================================================*/
/* NEWS PAGE */
/*=============================================================================*/
.news_page_group_master
{
	background-color: var(--color_blue_pale);
	padding: 5px;
	font-weight: bold;
	line-height: 1rem;
}

.news_page_group_date
{
	font-size: 0.7em;
	line-height: 1rem;
	/*background-color: crimson;*/
}

.news_page_group_title
{
 	font-weight: bold;
 	line-height: 1rem;
}

.news_page_group_contents
{
	margin-left: 1em;
	margin-top: 1em;
}

.news_page_what_how_when
{
	color: var(--color_orange_2);
	font-style: italic;
	font-weight: bold;
}

/*=============================================================================*/
/* TRIAL PAGE */
/*=============================================================================*/
.trial_div_flex
{
	display: flex;
	flex-direction: column;
	row-gap: 1em;
	border-top: solid 1px var(--color_blue_h1);
	border-bottom: solid 1px var(--color_blue_h1);
	padding: 0.5em;
}

.trial_download_svg_icon
{
    height: var(--trial_download_svg_icon_height);
    width: var(--trial_download_svg_icon_width);
    min-width: var(--trial_download_svg_icon_width);
    fill: var(--color_blue_h1);
	/*background-color: gold;*/
}

.trial_zip_file_name
{
	color: var(--color_blue_h1);
	font-size: 1.5rem;
}

.trial_dwl_svg_zip_div_flex
{
	display: flex; 
	align-items: center;
	column-gap: 1em;
}

.trial_brief_descr
{
	color: var(--color_blue_h1);	
}

.trial_contact_message
{
	font-size: 1.3em;
	font-style: italic;
	color: var(--color_grey_051);
	border-top: 1px solid var(--color_grey_051);
}

.trial_phone_div_flex
{
	display: flex;
	align-items: center;
	border-bottom: 1px solid var(--color_grey_051);
}

.trial_phone_svg_div_area
{
	padding: 0.5em;
}

.trial_phone_number_div_area
{
	padding: 0.5em;
	font-size: 2rem; 
	color: var(--color_grey_051);
}

/*=============================================================================*/
/* DEMO PAGES */
/*=============================================================================*/
.demo_view_video_btn_and_duration_div_flex
{
	display: flex;
	flex-direction: row;
	align-items: center;
	margin-top: 2em;	
}

.demo_button_view_video
{
	color: white;
	font-weight: bold;
	font-size: 0.9em;

	cursor: pointer;
  
	padding-top: 6px;
	padding-bottom: 6px;
	padding-left: 10px;
	padding-right: 10px;
  
	border: 1px solid white;
  
	margin-right: 1em;
  
	background-color: var(--color_orange_1);
	background-image: linear-gradient(to bottom, var(--color_orange_1), var(--color_orange_2));
}

.demo_video_duration_svg
{
	margin-right: 1em;
	/*background-color: aquamarine;*/
}

.demo_video_duration_text
{
	color: var(--color_blue_h1);
	font-size: 0.9em;
	/*background-color: gold;*/ 
}

.demo_img_div
{
	margin-top: 2em;
	margin-bottom: 1em;	
}

.demo_img
{
	border: solid 1px black;
}

/*=============================================================================*/
/* VIDEO */
/*=============================================================================*/
.video_div_container_fixed
{
	visibility: hidden;
	
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw; 
	height: 100vh;

	z-index: 3;

	/*background-color: var(--color_blue_buy);*/
}

.video_div_container_relative
{
	height:100vh;
	position: relative; /* Cf. video_div_video_itself, video_div_close_button */
}		
		
.video_div_video_itself
{
	position: absolute; /* Cf. video_div_container_relative */
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.video_div_close_button 
{
	position: absolute; /* Cf. video_div_container_relative */
	top: 0;
	right: 0;
	z-index: 1;
	
	font-size: 3rem;
	cursor: pointer;
	color: white;
	padding-right: 0.2em;
	/*background-color: orange;*/
}

.video_svg_icon_close
{
    height: var(--video_close_svg_icon_height);
    width: var(--video_close_svg_icon_width);
    min-width: var(--video_close_svg_icon_width);
    cursor: pointer;    
	fill: var(--color_red_pure);
	display: block; /* SVG is inline by default. */
	margin-left: auto;
	padding-top: 0.5em;
	/* background-color: var(--color_grey_235); */
}

.video_itself
{
	width: 100%;
	height: auto;
	max-height: 100%;
}

/*=============================================================================*/
/* DEMOS PAGE IN ENGLISH */
/*=============================================================================*/
.demos_en_one_demo_div
{
	padding: 0.8em;
	background-color: var(--color_blue_light_3); /* var(--color_blue_buy); */
	border: solid 1px var(--color_grey_051);
	font-weight: bold;
	font-size: 1.1rem;
	color: var(--color_grey_dark_slate); /* white; */
	line-height: 1.5em;
	text-align: center;
	display: inline-block;
	
	position: relative; /* Cf. cs_block_link */	
}

.demos_en_one_demo_img_div
{
	margin-bottom: 1em;
	border: solid 1px var(--color_grey_051);
}

.demos_en_one_demo_svg_icon_movie
{
    height: var(--demos_svg_icon_movie_height);
    width: var(--demos_svg_icon_movie_width);
    min-width: var(--demos_svg_icon_movie_width);
	fill: var(--color_grey_dark_slate); /* white; */
	cursor: pointer;
	/*background-color: coral;*/	
}

.demos_en_div_title
{
	color: var(--color_blue_h1);
	font-weight: bold;
	margin-top: 3em;
}

/*=============================================================================*/
/* DEMOS PAGE */
/*=============================================================================*/
.demos_top_elements_grid
{
	display: grid;
	grid-template-areas:
    "recommended_demo_0" 
    "recommended_demo_1" 
    "recommended_demo_2";
    row-gap: 1em;
	/*background-color: crimson;*/	
}

.demos_top_element_0 { grid-area: "recommended_demo_0"; }
.demos_top_element_1 { grid-area: "recommended_demo_1"; }
.demos_top_element_2 { grid-area: "recommended_demo_2"; }

.demos_top_element
{
	padding: 0.8em;
	background-color: var(--color_blue_buy);
	border: solid 1px var(--color_grey_051);
	font-weight: bold;
	font-size: 1.1rem;
	color: white;
	line-height: 1.5em;
	text-align: center;
	
	position: relative; /* Cf. cs_block_link */	
}

.demos_svg_icon_movie
{
    height: var(--demos_svg_icon_movie_height);
    width: var(--demos_svg_icon_movie_width);
    min-width: var(--demos_svg_icon_movie_width);
	fill: white;
	cursor: pointer;
	/*background-color: coral;*/	
}

.demos_span_level_off
{
	color: var(--color_orange_3);
	font-weight: bold;  
}

.demos_span_level_on
{
	color: var(--color_orange_2);
	font-weight: bold;
}

/* toc = Table Of Contents */
.demos_toc_grid
{
	display: grid;
	grid-template-columns: 1fr;
	
	border-top: 1px solid var(--color_slate_light);
	border-bottom: 1px solid var(--color_slate_light);
	background-color: var(--color_blue_light_0);
	padding-left: 0.5em;
	
	margin-top: 1em;
}

.demos_legend_div
{
	margin-top: 1em;	
}

.demos_legend_title
{
	padding-left: 0.5em;
}

.demos_legend_grid
{
	display: grid;
	grid-template-columns: 1fr 1fr;
	
	border-top: 1px solid var(--color_slate_light);
	border-bottom: 1px solid var(--color_slate_light);
}

.demos_level_bullet_last,
.demos_duration_bullet
{
	margin-right: 0.5em;	
}

.demos_level_title,
.demos_duration_title
{
	margin-right: 0.5em;
	font-style: italic;	
}

.demos_legend_item
{
	padding-left: 0.5em;
	/*border: solid 1px black;*/
}

.demos_group_title
{
	color: var(--color_blue_h1);
	font-weight: bold;
	font-size: 1.2rem;
	margin-top: 1.5em;
}

.demos_one_video_flex
{
	display: flex;
	flex-direction: column;
	
	border-bottom: 1px solid var(--color_slate_light);
	padding-left: 0.5em;
}

.demos_one_video_flex_first
{
	border-top: 1px solid var(--color_slate_light);
}

.demos_video_duration_span
{
	color: var(--color_blue_h1);
}

.demos_svg_icon_clock_span
{
	margin-right: 0.5em;	
}

.demos_svg_icon_clock
{
    height: var(--demos_svg_icon_clock_height);
    width: var(--demos_svg_icon_clock_width);
    min-width: var(--demos_svg_icon_clock_width);
	fill: var(--color_grey_100);
}

.demos_direct_video_div
{
	position: relative; /* Cf. cs_block_link */
	/*background-color: coral;*/
}

.demos_direct_video_span
{
	color: var(--color_blue_cobalt);
	font-style: italic; 
	font-size: 0.9rem;
	/*background-color: pink;*/ 
}

.demos_svg_icon_play
{
    height: var(--demos_svg_icon_play_height);
    width: var(--demos_svg_icon_play_width);
    min-width: var(--demos_svg_icon_play_width);
	fill: var(--color_blue_cobalt);
	cursor: pointer;
	/*background-color: coral;*/	
}

.cs_to_align_svg_with_text
{
	vertical-align: middle;
	display: inline-block;
}

.demos_one_video_grid
{
	display: grid; 
	grid-template-columns: min-content min-content min-content;
	white-space: nowrap;
	align-items: center;
}

.demos_one_video_entry_component
{
	margin-right: 2em;
	/*background-color: palegreen;*/ 
}

.demos_youtube_channel_div_flex
{
	display: flex;
	align-items: center;
}

.demos_youtube_channel_link_div
{
	margin-left: 1em;	
}

/*=============================================================================*/
/* PRODUCT PAGE */
/*=============================================================================*/
.product_page_reference
{
	color: var(--color_blue_h1);
 	font-weight: bold;
	margin-top: 0.5em;
	font-size: 0.8rem;
	/*background-color: pink;*/
}

.product_page_image
{
	margin-top: 2em;
	/*border: solid 1px black;*/
	/*margin-bottom: 1em;*/
}

/*-----------------------------------------------------------------------------*/
/* Product price */
/*-----------------------------------------------------------------------------*/
.product_page_section_title
{
	font-size: 1.143em;
	line-height: 2rem;
 	font-weight: bold;
	margin-bottom: 0.5em;
	margin-top: 2em;
}

.product_page_price_and_add_to_quotinv_flex
{
	display: flex;
	flex-direction: column;
}

.product_page_price_table
{
	border-collapse: collapse;
	display: inline-block;
}

.product_page_price_td
{
	padding: 3px 0.5em 3px 1em; /* TOP RIGHT BOTTOM LEFT */
	background-color: var(--color_grey_235);
	border-bottom: 1px solid var(--color_grey_051);	
}

.product_page_price_td_first
{
	border-top: 1px solid var(--color_grey_051);
}

.product_page_input_type_text_quantity
{
	text-align: right;
}

.product_page_pvdt_ref_td
{
	font-style: italic;
	font-size: 0.8rem;
}

.product_page_span_price
{
	color: var(--color_blue_buy);
	font-size: 1.143em;
	font-weight: bold;
}

.product_page_price_td_discount
{
	color: var(--color_deep_pink);
	font-weight: bold;		
}

.product_page_div_discount_old_price
{
	text-decoration: line-through;
}

.product_page_div_no_price_consult_us
{
	font-style: italic;
}

/*-----------------------------------------------------------------------------*/
/* View/add to quotation/cart */
/*-----------------------------------------------------------------------------*/
.product_page_quotation_cart_grid
{
	display: grid;
	grid-template-areas:	
		"quotation   add_to_quotation"
		"cart        add_to_cart";
	align-items: center;
	margin-right: auto;
	/*margin-left: auto;*/
	
	row-gap: 1em;
	
	margin-top: 1em;
	/*background-color: cornflowerblue;*/
}

.product_page_div_for_svg_and_block_link
{
	position: relative;	/* Cf. cs_block_link */	
}

.product_page_your_quotation_for_grid
{ 
	grid-area: "quotation"; 
}

.product_page_svg_icon_quotation
{
	height: var(--quotinv_icon_height);
	width: var(--quotinv_icon_width);
	min-width: var(--quotinv_icon_width);
	fill: var(--color_grey_100);
}

.product_page_button_add_to_quotation
{
	font-weight: bold;
	font-size: 0.9rem;	
	cursor: pointer;
  	
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	padding-right: 1em;
	padding-left: 1em;

	border: 1px solid white;
	 
 	color: white;
 	
	background-color: var(--color_blue_buy);
 	background-image: linear-gradient(to bottom, var(--color_blue_turquoise), var(--color_blue_buy));
}

.product_page_add_to_quotation_for_grid
{ 
	grid-area: "add_to_quotation"; 
}

.product_page_your_cart_for_grid
{ 
	grid-area: "cart"; 
}

.product_page_your_quotation_for_grid,
.product_page_your_cart_for_grid
{
	margin-left: auto;
	margin-right: 1em;
}

.product_page_svg_icon_cart
{
	height: var(--quotinv_icon_height);
	width: var(--quotinv_icon_width);
	min-width: var(--quotinv_icon_width);
	fill: var(--color_grey_100);
}

.product_page_button_add_to_cart
{
	font-weight: bold;
	font-size: 0.9rem;
	cursor: pointer;
  	
	padding-top: 0.5em;
 	padding-bottom: 0.5em;
  	padding-right: 1em;
	padding-left: 1em;
	border: 1px solid white;
	
	border: 1px solid white;
  
  	color: white;
	
	background-color: var(--color_orange_1);
	background-image: linear-gradient(to bottom, var(--color_orange_1), var(--color_orange_2));
}

.product_page_add_to_cart_for_grid
{ 
	grid-area: "add_to_cart";
}

/*-----------------------------------------------------------------------------*/
/* PVDTs */
/*-----------------------------------------------------------------------------*/
.product_page_pvdts_table
{
  	border-collapse: collapse;
	display: inline-block;
	vertical-align: top;
}

.product_page_pvdts_tr
{
	vertical-align: middle;
	background-color: rgb(235, 235, 235);     /* GREY - LIGHT 2 - MENU BACKGROUND */
	border-top: 1px solid var(--color_grey_051);
	border-bottom: 1px solid var(--color_grey_051);
}

.product_page_pvdts_td_header
{
	padding: 3px 0.5em 3px 1em; /* TOP RIGHT BOTTOM LEFT */
	text-align: right;
}

.product_page_pvdts_td_header_reference
{
	padding: 3px 0.5em 3px 1em; /* TOP RIGHT BOTTOM LEFT */
	text-align: center;
}

.product_page_pvdts_td
{
  padding: 3px 0.5em 3px 1em; /* TOP RIGHT BOTTOM LEFT */
  text-align: right;
}

.product_page_pvdts_span_reference /* VU*/
{
	font-style: italic;
	font-size: 0.8em;
}

.product_page_pvdts_td_reference /* VU*/
{
  padding: 3px 0.5em 3px 1em; /* TOP RIGHT BOTTOM LEFT */
  text-align: left;
}

/*-----------------------------------------------------------------------------*/
/* Product specifications */
/*-----------------------------------------------------------------------------*/
.product_page_price_specification_title /* VU*/
{
	background-color: var(--color_grey_235);
	border: 1px solid var(--color_grey_051);
	padding: 0.5em;
}

.product_page_price_specification_value /* VU*/
{
	border-left: 1px solid var(--color_grey_051);
	border-right: 1px solid var(--color_grey_051);
	padding: 0.5em;
}

.product_page_price_specification_value_last /* VU*/
{
	border-bottom: 1px solid var(--color_grey_051);
}

.product_page_component_title
{
	margin-left: 1em;
}

/*-----------------------------------------------------------------------------*/
/* Product components */
/*-----------------------------------------------------------------------------*/
.product_page_components_images_grid
{
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(53px, 1fr));
	column-gap: 1em;
		
	margin-top: 1em;
	justify-items: center;
	align-items: center;
}

.product_page_components_link_div
{
	padding-bottom: 0.5em;
	/*background-color: coral;*/
}

/*=============================================================================*/
/* PRICES, QUOTATIONS AND ORDERS */
/*=============================================================================*/
.buy_page_main_content
{
	margin-top: 1em;
}

.buy_page_product_category_title
{
	background-color: var(--color_grey_235);
  
	border-top: solid 1px var(--color_grey_189);
	border-bottom: solid 1px var(--color_grey_189);

 	padding: 5px;
  
	margin-top: 1em;
  
	color: var(--color_grey_dark_slate);
	font-weight: bold;
	font-size: 1.143rem;
}

.buy_page_product
{
	border: solid 1px var(--color_grey_189);
	padding: 1em;
	margin-top: 1em;	
}

.buy_page_product_div_for_block_link
{
	position: relative; /* Cf. cs_block_link */	
}

.buy_page_product_flex
{
	display: flex;
	flex-direction: row;
	align-items: center; 
}

.buy_page_product_small_img
{
	height: 53px;
}

.buy_page_product_title_and_price
{
	margin-left: 2em;
}

.buy_page_product_title
{
	color: var(--color_blue_cobalt);
	font-weight: bold;
	font-size: 1.3rem;
}

.buy_page_product_price
{
	font-size: 1.1rem; 
 	font-weight: bold;
}

.buy_page_product_price_discount_flex
{
	display: flex;
	flex-direction: column;	
}

.buy_page_product_price_discount_text,
.buy_page_product_discount_price,
.buy_page_product_discount_price_currency
{
	color: var(--color_deep_pink);
	font-weight: bold;	
}

.buy_page_product_normal_price,
.buy_page_product_normal_price_currency
{
	text-decoration: line-through;
}

.buy_page_product_pvdts
{
	font-style: italic;	
}

.buy_page_product_audience
{
	margin-top: 1em;
	font-style: italic;
	color: var(--color_grey_100);
	font-weight: bold;
}

.buy_page_product_summary
{
	margin-top: 1em;
}

.buy_page_product_get_to_know_more
{
	font-variant: small-caps;
	font-style: italic;
	font-weight: bold;
	color: var(--color_blue_cobalt);
}

.buy_page_product_quotation_cart_grid
{
	display: grid;
	grid-template-areas:
	    "quotation   add_to_quotation"	
	    "cart        add_to_cart";
	grid-template-columns: 1fr auto; 
	row-gap: 1em;
	margin-top: 1em;
	/*background-color: crimson;*/
}

.buy_page_product_div_for_svg_and_block_link
{
	position: relative;	/* Cf. cs_block_link */	
}

.buy_page_product_your_quotation_for_grid
{ 
	grid-area: "quotation"; 
}

.buy_page_product_add_to_quotation_for_grid
{ 
	grid-area: "add_to_quotation"; 
}

.buy_page_product_your_cart_for_grid
{ 
	grid-area: "cart"; 
}

.buy_page_product_add_to_cart_for_grid
{ 
	grid-area: "add_to_cart";
}

.buy_page_product_your_quotation_for_grid,
.buy_page_product_your_cart_for_grid
{
	margin-left: auto;
	margin-right: 1em;
}

.buy_page_product_svg_icon_quotation,
.buy_page_product_svg_icon_cart
{
	height: var(--quotinv_icon_height);
	width: var(--quotinv_icon_width);
	min-width: var(--quotinv_icon_width);
	fill: var(--color_grey_100);
}

.buy_page_product_button_add_to_quotation
{
	font-weight: bold;
	font-size: 0.9rem;	
	cursor: pointer;
  	
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	padding-right: 1em;
	padding-left: 1em;

	border: 1px solid white;
	 
 	color: white;
 	
	background-color: var(--color_blue_buy);
 	background-image: linear-gradient(to bottom, var(--color_blue_turquoise), var(--color_blue_buy));
}

.buy_page_product_button_add_to_cart
{
	font-weight: bold;
	font-size: 0.9rem;
	cursor: pointer;
  	
	padding-top: 0.5em;
 	padding-bottom: 0.5em;
  	padding-right: 1em;
	padding-left: 1em;
	border: 1px solid white;
	
	border: 1px solid white;
  
  	color: white;
	
	background-color: var(--color_orange_1);
	background-image: linear-gradient(to bottom, var(--color_orange_1), var(--color_orange_2));
}

.buy_page_top_of_the_page_span
{
	margin-left: 2em;	
}

.buy_page_top_of_the_page_a:link,
.buy_page_top_of_the_page_a:visited,
.buy_page_top_of_the_page_a:active
{
  text-decoration: none;
  color: var(--color_grey_dark_slate);
  font-weight: bold;
  font-size: 1.143em;
}

.buy_page_top_of_the_page_a:hover
{
  text-decoration: underline;
  color: red;
}

/*-----------------------------------------------------------------------------*/
/* Buy page - Top elements */
/*-----------------------------------------------------------------------------*/
.buy_page_top_elements_grid
{
	display: grid;
	grid-template-areas:
    "recommended_product_0" 
    "recommended_product_1" 
    "recommended_product_2";
    row-gap: 1em;
	/*background-color: crimson;*/	
}

.buy_page_top_element_0 { grid-area: "recommended_product_0"; }
.buy_page_top_element_1 { grid-area: "recommended_product_1"; }
.buy_page_top_element_2 { grid-area: "recommended_product_2"; }

.buy_page_top_element
{
	padding: 0.8em;
	background-color: var(--color_blue_buy);
	border: solid 1px var(--color_grey_051);
	font-weight: bold;
	color: white;
	line-height: 1.5em;	
	
	display: flex;
	flex-direction: column;
  	align-items: center;
  	justify-content: center;
    	
	position: relative; /* Cf. cs_block_link */	
}

.buy_page_top_element_title,
.buy_page_top_element_title_case_discount
{
	text-align: center;
	vertical-align: middle;
	font-size: 1.1rem;
	/*background-color: palegreen;*/
}

.buy_page_top_element_title
{	
	margin-bottom: 1em;
}

.buy_page_top_element_discount_text,
.buy_page_top_element_discount_price,
.buy_page_top_element_discount_price_currency
{
	color: var(--color_orange_pale);
	font-weight: bold;	
}

.buy_page_top_element_normal_price,
.buy_page_top_element_normal_price_currency
{
	text-decoration: line-through;
	font-size: 0.9rem;
	font-weight: normal;
}

/*=============================================================================*/
/* YOUR ACCOUNT */
/*=============================================================================*/
.your_account_msg_for_logging_in
{
	font-style: italic;
}

.your_account_log_in_grid
{
	display: inline-grid;
	
	margin-top: 1em;
	padding: 0.5em;
    background-color: var(--color_orange_light);
	border: 1px solid var(--color_blue_light_3);
}

.your_account_log_in_btn
{
	margin-top: 1em;
	justify-self: end;
	/*background-color: coral;*/
}

.your_account_log_in_pwd_lost
{
	justify-self: end;	
	/*background-color: lightseagreen;*/
}

/*=============================================================================*/
/* HEADER - Breadcrumbs */
/*=============================================================================*/
.breadcrumbs_div
{
	background-color: var(--color_blue_buy);	
	color: var(--color_grey_249);
	margin-left: auto;
	padding-top: 0.2em;
	padding-bottom: 0.2em;	
	padding-left: 0.5em;
    padding-right: 0.5em;
	font-style: italic;
	text-align: right;
}

.breadcrumbs_div_margins
{
	width: 95%;
    margin: 0 auto;
    /*white-space: nowrap;*/
}

.breadcrumbs_hilighted_entry
{
	color: white;
	font-weight: bold;
}

.logged_in_user_div
{
	background-color: var(--color_blue_light_5);
	color: var(--color_blue_very_dark);
	padding-top: 0.1em;
	padding-left: 0.5em;
    padding-right: 0.5em;
	text-align: right;
	font-size: 0.1rem;
}

.logged_in_user_div_margins
{
	width: 95%;
    margin: 0 auto;	
}

.logged_in_user_div_flex
{
	display: flex;
	justify-content: flex-end;
	align-items: center;	
}

.logged_in_user_email_div
{
	cursor: help;
	white-space: nowrap;
}

.logged_in_user_svg_icon
{
	height: var(--logged_in_user_svg_icon_height);
	width: var(--logged_in_user_svg_icon_width);
	min-width: var(--logged_in_user_svg_icon_width);
	fill: var(--color_blue_very_dark);
	
	margin-right: 0.3em;
	cursor: help;
	/*background-color: crimson;*/
}

/*=============================================================================*/
/* USER ACCOUNT */
/*=============================================================================*/
.user_account_title
{
	font-weight: bold;
	color: var(--color_blue_h1);
	margin-top: 4em;
}

.user_account_quotinv_grid
{
	display: grid;
	border: solid 1px var(--color_blue_light_3);
	padding: 1em;
	margin-top: 0.5em;
}

.user_account_quotinv_grid_case_pro_forma
{
	background-color: var(--color_grey_249);
}

.user_account_quotinv_title_flex
{
	display: flex;
	flex-direction: column;
	font-weight: bold;
	color: var(--color_grey_dark_slate);
}

.user_account_quotinv_buttons
{
	display: flex;
	column-gap: 1em;
	margin-top: 1em;
}

.user_account_license_grid
{
	display: grid;
	border: solid 1px var(--color_blue_light_3);
	padding: 1em;
	margin-top: 0.5em;
}

.user_account_license_title_flex
{
	display: flex;
	flex-direction: column;
	font-weight: bold;
	color: var(--color_grey_dark_slate);
}

.user_account_license_buttons
{
	display: flex;
	column-gap: 1em;
	margin-top: 1em;
}

.user_account_license_being_prepared
{
	color: var(--color_orange_4);
	font-weight: bold;
	font-style: italic;
	font-size: 0.9rem;
}

.user_account_trial_download_img_and_link
{
	display: inline-flex;
	align-items: center;
	position: relative; /* Cf. cs_block_link */	
	/*background-color: palegreen;*/
}

.user_account_trial_download_svg_icon
{
    height: var(--trial_download_svg_icon_height);
    width: var(--trial_download_svg_icon_width);
    min-width: var(--trial_download_svg_icon_width);
    fill: var(--color_blue_pure);
}

.user_account_trial_wait_for_approval_div_flex
{
	background-color: var(--color_lightbluesky);
	display: flex;
	flex-direction: row;
}

.user_account_trial_wait_for_approval_clock
{
	align-self: center;
	margin-left: 1em;
	margin-right: 1em;
}

.user_account_trial_wait_for_approval_text
{
	margin-top: 1em;
	margin-bottom: 1em;
	margin-right: 1em;
}

.user_account_trial_svg_icon_clock
{
    height: var(--user_account_trial_svg_icon_clock_height);
    width: var(--user_account_trial_svg_icon_clock_width);
    min-width: var(--user_account_trial_svg_icon_clock_width);
	fill: var(--color_orange_4);
}

.user_account_profile_div_grid
{
	display: grid;
	grid-template-columns: 1fr;
	
	padding: 0.5em;
    background-color: var(--color_orange_light);
	border: 1px solid var(--color_blue_light_3);
}

.user_account_profile_title
{
	margin-right: 1em;
	margin-top: 0.5em;
}

.user_account_profile_button
{
	margin-top: 1em;	
}

/*=============================================================================*/
/* QUOTINV INSTRUCTIONS */
/*=============================================================================*/
.quotinv_no_quotinv,
.quotinv_countries_list_not_built_properly,
.unsubscribe_message
{
	background-color: var(--color_lightbluesky);
	display: inline-block;
	padding: 1em;
}

.quotinv_instructions_title
{
	color: var(--color_grey_051);
	font-weight: bold;
	font-size: 1.3rem;

	margin-top: 3em;
}

.quotinv_instructions_step_title
{  
	border: solid 1px var(--color_grey_051);
	background-color: var(--color_grey_215);
	padding: 0.5em;
	font-style: italic;
	color: var(--color_grey_051);
	margin-top: 3em;
}

.quotinv_instructions_step_nro
{
	margin-right: 1em;
}

.quotinv_instructions_step_description
{
	margin-top: 0.5em;
	padding: 0.5em;
	border: solid 1px black;
	background-color: var(--color_grey_235);	
}

.quotinv_instructions_button_add_to_quotinv
{
	font-weight: bold;
	font-size: 0.9rem;	
	cursor: pointer;
  	
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	padding-right: 1em;
	padding-left: 1em;

	border: 1px solid white;
	 
 	color: white;
 	
	background-color: var(--color_blue_buy);
 	background-image: linear-gradient(to bottom, var(--color_blue_turquoise), var(--color_blue_buy));
}

.quotinv_svg_icon_quotation
{
	width: var(--quotinv_icon_2_width);
	min-width: var(--quotinv_icon_2_width);
	height: var(--quotinv_icon_2_height);
	fill: var(--color_grey_100);
	display: inline-block;
}

.quotinv_instructions_img
{
	border: solid 1px black;
}

.quotinv_instructions_img_div
{
	margin-top: 1em;	
}

/*=============================================================================*/
/* QUOTINV */
/*=============================================================================*/
.quotinv_instructions_div
{
	font-style: italic;
	font-weight: bold;
	color: var(--color_grey_051);
}

.quotinv_instructions_div_2
{
	font-style: italic;
	font-weight: bold;
	color: var(--color_grey_051);
	margin-top: 2em;
}
	
.quotinv_title
{
	color: var(--color_blue_h1);
	font-weight: bold;
	margin-top: 2em;
}

.quotinv_date_div
{
	color: var(--color_blue_h1);
	font-style: italic;
}

.quotinv_date_div_2
{
	color: var(--color_blue_h1);
	font-style: italic;
	margin-bottom: 1em;	
}

.quotinv_validity_duration_div
{
	color: var(--color_blue_h1);
	font-style: italic;
	margin-bottom: 1em;	
}

.quotinv_class_display_none
{
	display: none;
}

.quotinv_no_article_div
{
	margin-bottom: 1em;	
}

.quotinv_dl_grid
{
	display: grid;
	grid-template-columns: auto 1fr;
	margin-top: -1px;
}

.quotinv_dl_elem_title,
.quotinv_total_title
{
	border-right: solid 1px var(--color_blue_light_3);
	border-left: solid 1px var(--color_blue_light_3);
	border-bottom: solid 1px var(--color_blue_light_3);
	padding-left: 0.5em;
	padding-right: 0.5em;
	color: var(--color_blue_light_4);
	font-style: italic;
	font-weight: bold;
}

.quotinv_dl_elem_title_first,
.quotinv_dl_elem_value_first,
.quotinv_total_title_first
{
	border-top: solid 1px var(--color_blue_light_3);
}

.quotinv_dl_elem_value,
.quotinv_total_value
{
	border-right: solid 1px var(--color_blue_light_3);
	border-bottom: solid 1px var(--color_blue_light_3);
	padding-left: 0.5em;
	padding-right: 0.5em;
	/*background-color: darkseagreen;*/
}

.quotinv_total_value_first
{
	border-top: solid 1px var(--color_blue_light_3);
}

.quotinv_dl_elem_title_shipping_costs,
.quotinv_dl_elem_value_shipping_costs
{
	background-color: var(--color_yellow_khaki_grey);
	margin-top: 1em;
	border-top: solid 1px var(--color_blue_light_3);
}

.quotinv_dl_svg_icon
{
	width: var(--quotinv_dl_svg_icon_width);
	min-width: var(--quotinv_dl_svg_icon_width);
	height: var(--quotinv_dl_svg_icon_height);
	fill: var(--color_blue_light_4);
	margin-left: 1em;
}

.quotinv_dl_number_div
{
	border-bottom: solid 1px var(--color_blue_light_3);
    border-left: solid 1px var(--color_blue_light_3);
    background-color: var(--color_blue_light_0);

	color: var(--color_blue_light_4);
	font-size: 0.8rem;
	font-style: italic;
	font-weight: bold;
	padding-left: 0.5em;
}

.quotinv_dl_buttons_div
{
	display: flex;
	align-items: center;
	justify-content: end;
	padding-left: 0.3em;
	padding-right: 0.3em;
	
	border-bottom: solid 1px var(--color_blue_light_3);
	border-right: solid 1px var(--color_blue_light_3);
	
	background-color: var(--color_blue_light_0);
}

.quotinv_select_style_license_choice,
.quotinv_select_styles_solid_or_download_choice
{
	margin-top: 5px;
	color: var(--color_brown_red);
}

.quotinv_div_for_svg_and_block_link
{
	position: relative;	/* Cf. cs_block_link */	
}

.quotinv_totals_grid
{
	display: grid;
	grid-template-columns: min-content min-content;
	white-space: nowrap;

	margin-top: 2em;
	justify-content: end;
}

.quotinv_value_type_number
{
	text-align: right;	
}

.quotinv_addresses_div_grid
{
	display: grid;
	grid-template-columns: 1fr;
	grid-row-gap: 1em;
	
	margin-top: 2em;	
}

.quotinv_buttons_div_flex
{
	margin-top: 2em;
	display: flex;
	flex-direction: column;
}

.quotinv_buttons_div_2_flex
{
	display: flex;
	flex-direction: row;
	margin-left: auto;
}

.quotinv_button_span
{
	margin-left: 1em;	
}

.quotinv_addresses_btn_span
{
	margin-left: auto;
	margin-top: 1em;
}

.quotinv_address_organization_div,
.quotinv_address_delivery_div
{
	border: solid 1px var(--color_blue_light_3);	
}

.quotinv_address_organization_title_div,
.quotinv_address_delivery_title_div
{
	border-bottom: solid 1px var(--color_blue_light_3);	
	background-color: var(--color_blue_light_0);
	padding: 0.5em;
}

.quotinv_address_organization_itself_div,
.quotinv_address_delivery_itself_div
{
	padding: 0.5em;
}

.quotinv_shipping_costs_title_span
{
	color: var(--color_orange_4);
}

/*=============================================================================*/
/* QUOTINV ADDRESSES */
/*=============================================================================*/
.quot_addr_org_title_div
{
	color: var(--color_blue_grey_dark);
	font-weight: bold;
	margin-top: 2em;
}

.quot_addr_delv_title_div
{
	color: var(--color_blue_grey_dark);
	font-weight: bold;
}

.quot_addr_delv_div
{
	margin-top: 1em;
}

.quot_addr_org_fields_grid,
.quot_addr_delv_fields_grid
{
	display: inline-grid;
	grid-template-columns: 1fr; /* MOBILE SCREEN */
	align-items: center;
	
	padding: 0.5em;
	background-color: var(--color_orange_light);
	border: 1px solid var(--color_blue_light_3);
}

.quot_addr_delv_checkbox_div
{
	margin-bottom: 0.5em;
}

.quot_addr_pwd_div
{
	margin-top: 1em; 	
}

.quot_addr_pwd_div_2
{
	display: inline-grid;
	grid-template-columns: 1fr;
	
	padding: 0.5em;
	background-color: var(--color_orange_light);
	border: 1px solid var(--color_blue_light_3);	
}

.quot_addr_field_title
{ 
	margin-top: 0.5em; 
	margin-bottom: -0.5em; 
}

.quot_addr_instructions_pwd_div
{
	font-style: italic;
	font-weight: bold;
	color: var(--color_grey_051);
	margin-top: 0.5em;
	margin-bottom: 2em;	
}

/*=============================================================================*/
/* QUOTINV SUMMARY */
/*=============================================================================*/
.quot_summary_span_contains_nb_articles
{
	font-size: 0.7em;
	font-style: italic;
	display: block;
}

.quot_summary_buttons_div
{
	margin-top: 1em;
}

/*=============================================================================*/
/* QUOTINV END */
/*=============================================================================*/
.quotinv_end_title_div
{
	color: var(--color_blue_grey_dark);
	font-weight: bold;
}

.quotinv_end_send_purchase_order_div
{
	border: solid 1px var(--color_blue_light_3);
	padding: 1em;
	margin-top: 2em;
}

.quotinv_end_generate_cart_div
{
	margin-top: 2em;	
}

/*=============================================================================*/
/* QUOTINV PAYMENT */
/*=============================================================================*/
.quot_payment_means_of_payment_div
{
	border: solid 1px var(--color_blue_light_3);
	padding: 1em;
	margin-top: 1em;
}

.quot_payment_means_of_payment_title_div
{
	color: var(--color_blue_grey_dark);
	font-weight: bold;
}

.quot_payment_intro_sentence_div
{
	font-style: italic;	
}

.quot_payment_means_of_payment_text_elem
{
	margin-left: 2em;	
}

.quot_payment_fr_metro_due_date
{
	color: var(--color_dark_red);
	font-style: italic;
	margin-top: 1em;
}

.quot_payment_button_div
{
	margin-top: 1em;
}

/*=============================================================================*/
/* OUR CUSTOMERS */
/*=============================================================================*/
.svg_external_link
{
    height: var(--external_link_icon_height);
    width: var(--external_link_icon_width);
    min-width: var(--external_link_icon_width);
    cursor: pointer;    
	fill: var(--color_grey_051);
	display: inline-block; /* SVG is inline by default. */
	vertical-align: middle;

	/*background-color: chocolate;*/	
}

.our_customers_one_customer_div
{
	/* MOBILE SCREEN */
	border: solid 1px var(--color_blue_light_3);
	margin-bottom: 0.5em;
	padding-left: 0.5em;
	padding-right: 0.5em;
	display: grid;
	align-content: center;
	/* END MOBILE SCREEN */
}

.our_customers_svg_and_link_div
{
	position: relative;
	align-self: center;
}

.our_customers_styles_1
{
	margin-right: 1em;
	color: var(--color_pink_grey_light);
	font-weight: bold;
	/*background-color: gold;*/
}

.our_customers_styles_2
{
	margin-right: 1em;
	color: var(--color_grey_dark_slate);
	/*background-color: pink;*/
}

.our_customers_styles_3
{
	margin-right: 1em;
	font-size: 1.1em;
	color: var(--color_grey_051);
	/*background-color: palegreen;*/
}

/*=============================================================================*/
/* UNSUBSCRIPTION */
/*=============================================================================*/
.unsubscription_email_div
{
	font-size: 2rem;
	color: var(--color_purple);
	margin-top: 1em;
	margin-bottom: 1em;
}

/*=============================================================================*/
/* ERROR PAGE */
/*=============================================================================*/
.error_message
{
	text-align: center;
	font-size: 2rem;
	margin: 1em;	
}

.error_footer_container_whole_width
{
    background-color: var(--color_blue_buy);
    width: 100%;
}

.error_footer_container_margins
{
	width: 95%;
    margin: 0 auto;
	padding: 0.5em;
    /*border: solid 2px blue;*/
}

.error_footer_date_and_rights_reserved
{
	color: white;
	font-size: 0.9em;
}

/*=============================================================================*/
/* DOC PAGE */
/*=============================================================================*/
.doc_message_no_doc
{
	text-align: center;
	font-size: 2rem;
	margin: 1em;	
}

.doc_message_no_web_browser_embedded_pdf_viewer
{
	text-align: center;
	font-size: 1.3rem;
	margin: 1em;	
}

/*=============================================================================*/
/* MEDIA QUERIES */
/*=============================================================================*/
@media (min-width: 768px)
{
			.menu_1
			{
				position: revert;
				z-index: revert;
			    top: revert;
			    right: revert;

			    grid-area: menu;
			    display: block;
			    
		        /* So that the scrollbar is on the left. */
			    direction: rtl;
			    text-align: left;
			}
			
			.opacifier_for_menu_1
			{
				position: revert;
			    width: revert;
			    height: revert;
			    top: revert;
			}

			.menu_1_div_icon_close
			{
				display: none;
			}

			.header_jingle_subtitle
			{
			    display: block;
			}
			
			.menu_1_div_icon_open
			{
				display: none;
			}

			.header_container_flex_for_menu_2_svgs
			{
			    margin-right: 0em;
			    margin-bottom: 0.2em;
		    }

			.visitor_form_grid
			{
			    grid-template-areas:
			    "company_name_title       company_name_value"
			    "person_title_title       person_title_value"
			    "person_first_name_title  person_first_name_value"
			    "person_last_name_title   person_last_name_value"
			    "person_function_title    person_function_value"
			    "addr_line1_title         addr_line1_value"
			    "addr_line2_title         addr_line2_value"
			    "postal_or_zip_code_title postal_or_zip_code_value"
			    "city_title               city_value"
			    "country_title            country_value"
			    "state_province_title     state_province_value"
			    "email_addr_title         email_addr_value"
			    "phone_nb_title           phone_nb_value"
			    "pwd_title                pwd_value"
			    "intention_title          intention_value"
			    "submit_btn               submit_btn";

			    /* This sets the width of the first column to equal the width of the widest item in that column, 
			    and the width of the second column to get the remaining width of the grid. */
			    grid-template-columns: auto 1fr;
			    
			    grid-gap: 0.9em;
		    }
		    
		    .contact_infos_iode
			{
				grid-template-areas:
			    "siret_nro         bank_name"
			    "naf_code          bank_account"
			    "training_org_nro  bank_iban"
			    "intracom_vat_nb   bank_bic";
			    
			    grid-template-columns: 1fr 1fr;
			}
			
			.visitor_form_company_name_title, 
			.visitor_form_person_title_title, 
			.visitor_form_person_first_name_title, 
			.visitor_form_person_last_name_title, 
			.visitor_form_person_function_title, 
			.visitor_form_addr_line1_title, 
			.visitor_form_addr_line2_title, 
			.visitor_form_postal_or_zip_code_title, 
			.visitor_form_city_title, 
			.visitor_form_country_title, 
			.visitor_form_state_province_title, 
			.visitor_form_email_addr_title, 
			.visitor_form_phone_nb_title, 
			.visitor_form_pwd_title, 
			.visitor_form_intention_title 
			{ 
				margin-top: revert; 
				margin-bottom: revert; 
			}
			
			.buy_page_top_elements_grid
			{
				grid-template-areas:
			    "recommended_product_0   recommended_product_1   recommended_product_2";
			    column-gap: 1em;
			}
			
			.product_page_quotation_cart_grid
			{
				grid-template-columns: 1fr auto;
				margin-right: auto;
				margin-left: auto;
				margin-top: revert;
				margin-left: 1em;
			}
			
			.product_page_price_and_add_to_quotinv_flex
			{
				flex-direction: row;
				align-items: center;
			}
			
			.product_page_price_specification
			{
				display: grid;
				grid-template-columns: 0.5fr 1fr;
			}
			
			.product_page_price_specification_title
			{
				border: revert;
				border-top: 1px solid var(--color_grey_051);
				border-left: 1px solid var(--color_grey_051);
				border-right: 1px solid var(--color_grey_051);
			}
			
			.product_page_price_specification_value
			{
				border: revert;
				border-top: 1px solid var(--color_grey_051);
				border-right: 1px solid var(--color_grey_051);
			}
			
			.product_page_price_specification_value_last
			{
				border: revert;
				border-top: 1px solid var(--color_grey_051);
				border-right: 1px solid var(--color_grey_051);
				border-bottom: 1px solid var(--color_grey_051);
			}
			
			.product_page_price_specification_title_last
			{
				border-bottom: 1px solid var(--color_grey_051);
			}
			
			.faq_li::before
			{
				display: table-cell;
			}
			
			.faq_li_2::before
			{	
				width: 3em;
			}
			
			.trial_div_flex
			{
				flex-direction: row;
				row-gap: revert;
				align-items: center;
				justify-content: space-between;
			}
			
			/*============================*/
			/* DEMOS PAGE */
			/*============================*/
			.demos_top_elements_grid
			{
				grid-template-areas:
			    "recommended_demo_0   recommended_demo_1   recommended_demo_2";
			    column-gap: 1em;
			}
			
			.demos_toc_grid
			{
				grid-template-columns: 1fr 1fr;
				line-height: 1.5rem;	
			}
			
			.demos_legend_grid
			{
				grid-template-columns: min-content min-content;
				white-space: nowrap;
			}
			
			.demos_one_video_left
			{
				margin-right: 1em;
			}
			
			.demos_group_title
			{
				font-size: revert;
			}

			.demos_one_video_flex
			{
				flex-direction: row;
				align-items: center;
				
				border-bottom: revert; 
			}
			
			.demos_one_video_flex_first
			{
				border-top: revert;
			}
			
			.buy_page_price_discount_flex
			{
				flex-direction: row;	
			}
			
			.buy_page_usual_price,
			.buy_page_discount_price
			{
				margin-left: 1em;	
			}
						
			/*=============================================================================*/
			/* YOUR ACCOUNT */
			/*=============================================================================*/
			.your_account_log_in_grid
			{
				grid-template-columns: auto 1fr;
				grid-gap: 1em;
			}
			
			.your_account_log_in_btn
			{
				justify-self: start;
			}
			
			.your_account_log_in_pwd_lost
			{
				justify-self: start;	
			}
			
			.your_account_log_in_pwd_lost
			{
				margin-top: 1em;
			}
			
			/*=============================================================================*/
			/* BREADCRUMBS */
			/*=============================================================================*/			
			.logged_in_user_div
			{
				background-color: transparent;
				align-self: center;
				color: var(--color_blue_light_1);
			}
			
			.logged_in_user_svg_icon
			{
				fill: var(--color_blue_light_1);
			}
						
			.breadcrumbs_div_margins
			{
				white-space: nowrap;
			}
    			
			.breadcrumbs_and_logged_in_user_div
			{
				background-color: var(--color_blue_buy); /* DESKTOP SPECIFIC */
			}
			
			.breadcrumbs_and_logged_in_user_div_margins
			{
				width: 95%; /* DESKTOP SPECIFIC */
			    margin: 0 auto;	/* DESKTOP SPECIFIC */
			}
			
			.breadcrumbs_and_logged_in_user_div_flex
			{
				display: flex; /* DESKTOP SPECIFIC */
				flex-direction: row-reverse; /* DESKTOP SPECIFIC */
			}
			
			/*=============================================================================*/
			/* USER ACCOUNT */
			/*=============================================================================*/
			.user_account_quotinv_title_flex
			{
				flex-direction: row;
			}
			
			.user_account_profile_div_grid
			{
				display: inline-grid;
				grid-template-columns: auto 1fr;
			}
			
			/*=============================================================================*/
			/* QUOTINV */
			/*=============================================================================*/
			.quotinv_buttons_div_flex
			{
				flex-direction: row;
			}
			
			.quotinv_buttons_div_2_flex
			{
				margin-left: 0;
			}
			
			.quotinv_addresses_btn_span
			{
				margin-top: 0;
			}
			
			.quotinv_addresses_div_grid
			{
				grid-template-columns: 1fr 1fr;
				grid-column-gap: 1em;
				grid-row-gap: 0;
			}
			
			/*=============================================================================*/
			/* QUOTINV ADDRESSES */
			/*=============================================================================*/
			.quot_addr_org_fields_grid,
			.quot_addr_delv_fields_grid,
			.quot_addr_pwd_div_2
			{
				grid-template-columns: auto 1fr;
				grid-column-gap: 1em;
			}
						
			.quot_addr_field_title
			{ 
				margin-top: 0;
			}
			
			/*=============================================================================*/
			/* OUR CUSTOMERS */
			/*=============================================================================*/
			.our_customers_one_customer_div
			{
				border: none;
				border-top: solid 1px var(--color_blue_light_3);
				margin-bottom: none;
				padding-left: none;
				padding-right: none;
				padding-top: 0.5em;
				display: flex;
				flex-direction: row;				
			}
			
			.svg_external_link
			{
			    height: var(--external_link_icon_small_height);
			    width: var(--external_link_icon_small_width);
			    min-width: var(--external_link_icon_small_width);
			}
}