/* Main CSS File */
:root {
  --mainFontColor: #212121;
  --mainDesignColor1: #d0023c; /*rot*/
  --mainDesignColor1a: #fff;
  --mainDesignColor2: #00437A; /*blau*/
  --mainDesignColor3: #79541D; /*braun*/
  --mainDesignColor2a: #fff;
  --ia_background_light_grey: #efefef;
  --mainSchriftSize: 17px;
  --mainDetails: #565656; /*dunkelgrau*/
  --rounded: 15px;
  --rounded_frontend: 0px;
  --ia_default_padding: 1em 1em 1em 1em;
  --ia_default_paddingField: 10px 10px;
  --iaDefaultBorderField: 1px solid #ccc;
  --iaDefaultFontSize: 17px;
  --ia_default_paddingButton: 5px 15px 5px 15px;
  --mainEffectDuration: 0.5s;
  --iaDefaultShadow: 0px 12px 6px -6px rgba(0,0,0,0.12);
  
  
    --ia-primary: #0a0a0a;
    --ia-primary-hover: #1a1a1a;
    --ia-accent: #ff4d4d;
    --ia-bg: #ffffff;
    --ia-text: #2d3748;
    --ia-text-light: #718096;
    --ia-border: #e2e8f0;
    --ia-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    --ia-shadow-hover: 0 4px 16px rgba(0, 0, 0, 0.12);
    --ia-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	
	/* FRONTEND */
	--ia_fe_button_bg_color: #FFD900;
	--ia_fe_border: 0px;
	--ia_fe_border_radius: 0px;
	--ia_fe_font_size: 17px;
	--ia_fe_default_padding_button: 5px 15px 5px 15px;
	--ia_fe_default_padding_field: 10px 10px;
	--ia_fe_default_padding: 1em 1em 1em 1em;
	
	
}
.ia_fe_input {
    width: 100%;
    padding: var(--ia_fe_default_padding_field)!important;
    border: var(--iaDefaultBorderField);
    border-radius: var(--ia_fe_border);
    box-sizing: border-box;
    background-color: #fff;
}
.ia_fe_checkbox {
  width: 15px!important;
  height: 15px!important;
  cursor: pointer!important;
  border-radius: var(--ia_fe_border)!important;
  background-color: #fff!important;
  border: var(--iaDefaultBorderField)!important;

}
.ia_client_color3 {
	color: var(--mainDesignColor3);
}

/* Overwrite Divi Standards */
/* MENU ELEMENTS SAME SIZE */
#top-menu li {
    font-size: 17px !important;
}
/* END */


/*    ####################################################     */

/* ia Standards */
.ia_inline {
	display:inline-block;
}
.ia_none {
	display:none;
}
.ia_default_padding {
	padding: var(--ia_default_padding);
}
.ia_white {
	color:white;
}
.ia_space_xs { height: 0.5em; }
.ia_space_s  { height: 1em;   }
.ia_space_m  { height: 2em;   }
.ia_space_l  { height: 4em;   }
.ia_space_x  { height: 8em;   }
.ia_space_xl { height: 16em;   }

.ia_rounded {
	border-radius: var(--rounded);
}
.ia_default_paddingField {
	padding: var(--ia_default_paddingField);
}
.ia_default_border_field {
	border-width: var(--iaDefaultBorderField);
}
.ia_button {
	background-color: white;
	margin-left: 1em;
	border:none;
	padding: 0.3em 0.7em 0.3em 0.7em;
	font-size: 17px;
	
}
.ia_button:hover {
	opacity: 0.7;
	cursor:pointer;
}
.ia_button:active {
	background-color:#f6f6f6;
}

.ia_input {
    width: 100%;
    padding: var(--ia_default_paddingField)!important;
    border: var(--iaDefaultBorderField);
    border-radius: var(--rounded);
    box-sizing: border-box;
    background-color: #fff;
}

.ia_input_small {
	font-size:60%;
}

.ia_checkbox {
  width: 15px;
  height: 15px;
  cursor: pointer;
}

.ia_underline {
	text-decoration:underline;
}
.ia_strong {
	font-weight:bold;
}
.ia_p {
	padding-bottom: 0px;
}

.ia_center {
	text-align:center;
}

.ia_default_div {
	border-radius: var(--rounded);
	padding: var(--ia_default_padding)!important;
}

.ia_background_light_grey {
	background-color:var(--ia_background_light_grey);
}
/* Responsive design for screens smaller than 980px */
@media (max-width: 980px) {

}
.iaGrid2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  align-items: stretch;
}

.iaGrid2Box {
  padding: 1em;
  text-align: left;       
  width: 100%;             
  min-height: 2em;
  background: #f9f9f9;
  border: 0px solid #eee;
  box-sizing: border-box;
  border-radius: var(--rounded);

}

.iaGrid3 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 40px;
  justify-items: center;
  align-items: center;
}

.iaGrid3Box {
  border-radius: 8px;
  cursor: pointer;
  padding: 0.1em;
  text-align: center;
  width: 7em;
  height: 4em;
}

@media (min-width: 320px) and (max-width: 980px) {
  .iaGrid3 {
    grid-template-columns: 1fr 1fr;
    gap: 130px 20px;
  }
}

@media (max-width: 319px) {
  .iaGrid3 {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}



.iaFadeIn {
    -webkit-animation: fadein 1s; /* Safari, Chrome and Opera > 12.1 */
       -moz-animation: fadein 1s; /* Firefox < 16 */
        -ms-animation: fadein 1s; /* Internet Explorer */
         -o-animation: fadein 1s; /* Opera < 12.1 */
            animation: fadein 1s;
}

@keyframes fadein {
    from { opacity: 0; transform: rotateX(0deg) rotateY(15deg); transform: translate(0px, 2px);}
    to   { opacity: 1; transform: rotateX(0deg) rotateY(0deg); transform: translate(0px, 0px); }
}

/* Firefox < 16 */
@-moz-keyframes fadein {
    from { opacity: 0; transform: rotateX(0deg) rotateY(15deg); }
    to   { opacity: 1; transform: rotateX(0deg) rotateY(0deg); }
}

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
    from { opacity: 0; transform: rotateX(0deg) rotateY(15deg); }
    to   { opacity: 1; transform: rotateX(0deg) rotateY(0deg); }
}

/* Internet Explorer */
@-ms-keyframes fadein {
    from { opacity: 0; transform: rotateX(0deg) rotateY(15deg); }
    to   { opacity: 1; transform: rotateX(0deg) rotateY(0deg); }
}

/* Opera < 12.1 */
@-o-keyframes fadein {
    from { opacity: 0; transform: rotateX(0deg) rotateY(15deg); }
    to   { opacity: 1; transform: rotateX(0deg) rotateY(0deg); }
}

.iaBlink {
    animation: blink 2s linear infinite;
}

@keyframes blink {
    0%   { opacity: 0.5; }
    50%  { opacity: 1; }
    100% { opacity: 0.5; }
}

.ia_main_frame {
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
		min-height:93vh;
		
}
.ia_inner_frame {
	padding: 2em;
}

.ia_app_icon_tile {

}

.ia_app_icon_tile:hover {
	transform:scale(1.05);
}

.ia_app_box {
	width:100%;
	min-height: 30vh;
}


.ia_open_app {
  transform:scale(1.05);
  opacity: 1;
  animation: ia_open_app_fade 1s ease-in-out forwards;
}
@keyframes ia_open_app_fade {
  0% {
    transform:scale(1.05);
    opacity: 1;
  }
  100% {
    transform: scale(1.25);
    opacity: 0.5;
  }

}


.ia_glass {
	background: rgba( 255, 255, 255, 0.55 );
	box-shadow: 0 8px 32px 0 rgba( 0, 0, 0, 0.37 );
	backdrop-filter: blur( 8px );
	-webkit-backdrop-filter: blur( 8px );
	border-radius: 20px;
	border: 1px solid rgba( 255, 255, 255, 0.18 );
}




.ia_form {
    max-width: 720px;
    margin: 0 auto;
}

.ia_form_row {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 12px;
}

.ia_form_group {
    display: flex;
    flex-direction: column;
}

.ia_form_group_full {
    flex: 1 1 100%;
}

.ia_form_group_half {
    flex: 1 1 calc(50% - 8px);
}

.ia_form_group_wide {
    flex: 1 1 calc(70% - 8px);
}

.ia_form_group_small {
    flex: 1 1 calc(30% - 8px);
}

.ia_label {
    font-size: 14px;
    margin-bottom: 4px;
}


.ia_select {
    width: 100%;
    padding: var(--ia_default_paddingField);
    border: var(--iaDefaultBorderField);
    border-radius: var(--rounded);
    box-sizing: border-box;
    background-color: #fff;
}
.ia_textarea {
	border-radius: var(--rounded);
	width: 100%;
	padding: var(--ia_default_paddingField);
}

.ia_input_file {
    padding: 6px 0;
}

.ia_input_error {
    border-color: #c0392b;
    background-color: #fdecea;
}

.ia_help_text {
    font-size: 12px;
    color: #777;
}

.ia_error_message {
    font-size: 12px;
    color: #c0392b;
    margin-top: 4px;
}

.ia_checkbox_label {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 6px;
    font-size: 14px;
}

.ia_checkbox {
    margin-top: 3px;
}

.ia_form_row_submit {
    justify-content: flex-end;
}

.ia_btn {
    display: inline-block;
    padding: 10px 20px;
    border-radius: 4px;
    border: none;
    font-size: 14px;
    cursor: pointer;
    text-transform: uppercase;
}
.ia_btn:hover {
    opacity:.6;
}

.ia_btn_primary {
    background-color: var(--mainDesignColor1);
    color: #fff;
	border-radius: var(--rounded);
}

.ia_btn_primary:disabled {
    background-color: #aaa;
    cursor: not-allowed;
}

.ia_fe_btn_primary {
	border-radius: var(--ia_fe_border_radius)!important;
}

.ia_alert {
    border-radius: 4px;
    padding: 10px 14px;
    margin-bottom: 16px;
    font-size: 14px;
}

.ia_alert_success {
    background-color: var(--mainDesignColor1);
    color: white;
	border-radius: var(--rounded);
	padding: var(--ia_fe_default_padding);
}

.ia_alert_error {
    background-color: #fdecea;
    border: 1px solid #e74c3c;
    color: #c0392b;
}

.ia_alert_error ul {
    margin: 0;
    padding-left: 20px;
}

/* Mobile */
@media (max-width: 768px) {
    .ia_form_group_half,
    .ia_form_group_wide,
    .ia_form_group_small,
    .ia_form_group_full {
        flex: 1 1 100%;
    }
}


/* ========================================================= */
/* IA COUNTING PRODUCTS GRID */
/* ========================================================= */

.ia_grid {
	display: grid;
	gap: 24px;
	width: 100%;
}

.ia_grid_3 {
	grid-template-columns: repeat(3, 1fr);
}

.ia_grid_item {
	background: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: var(--rounded_frontend);
	padding: 16px;
	display: flex;
	flex-direction: column;
	justify-content: center;   /* vertikal */
	align-items: center;       /* horizontal */
	text-align: center;
	transition: box-shadow 0.2s ease;
}

.ia_grid_item:hover {
	/*box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);*/
}
.ia_product_img_wrap {
	width: 75%;
	margin: 0 auto 5px auto;
}

.ia_product_img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
	
}

.ia_product_title {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.3;
	color: #222222;
	word-break: break-word;
}

/* ========================================================= */
/* RESPONSIVE */
/* ========================================================= */

@media (max-width: 1024px) {
	.ia_grid_3 {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.ia_grid_3 {
		grid-template-columns: 1fr;
	}
}

/* / GRID */

/* ========================================================= */
/* CONTACT FORM FRONTEND */
/* ========================================================= */
.ia_fe_contact_form_wrap {
	width: 100%;
	max-width: 760px;
}

.ia_fe_contact_form {
	width: 100%;
}

.ia_fe_contact_form_row {
	margin-bottom: 14px;
}

.ia_fe_contact_form_row_2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

@media (max-width: 640px) {
	.ia_fe_contact_form_row_2 {
		grid-template-columns: 1fr;
	}
}

.ia_fe_contact_form_field {
	width: 100%;
}

.ia_fe_contact_form_label {
	display: block;
	text-align: left;
	margin-bottom: 6px;
	font-weight: 600;
}

.ia_fe_contact_form_input,
.ia_fe_contact_form_textarea,
.ia_fe_contact_form_select,
.ia_fe_contact_form_file {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	border-radius:var(--ia_fe_border-radius);
	padding: var(--ia_fe_default_padding_field)!important;
}

.ia_fe_contact_form_textarea {
	resize: vertical;
	min-height: 140px;
}

.ia_fe_contact_form_checkbox {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	text-align: left;
}

.ia_fe_contact_form_checkbox input[type="checkbox"] {
	margin-top: 3px;
}

.ia_fe_contact_form_submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background-color:var(--ia_fe_button_bg_color);
	border: var(--ia_fe_button_bg_color);
	border-radius: var(--ia_fe_border_radius);
	font-size: var(--ia_fe_font_size);
	padding: var(--ia_fe_default_padding_button);
}

.ia_fe_contact_form_error {
	border: 1px solid #e5e5e5;
	padding: 12px;
	margin-bottom: 14px;
}

.ia_fe_contact_form_error_list {
	margin: 0;
	padding-left: 18px;
}

.ia_fe_contact_form_success {
	border: 0px solid #e5e5e5;
	padding: var(--ia_fe_default_padding);
	margin-bottom: 14px;
	background-color: #FFD900;
	
}

.ia_fe_contact_form_honeypot {
	display: none;
}

/* / CONTACT FORM FRONTEND */
/* CHARTS */
/*
.ia_chart_wrapper_dayli {
    width: 100%;
    height: auto;
}
.ia_chart_wrapper_dayli canvas {
    width: 100% !important;
    height: 100% !important;
}
.ia_chart_wrapper_weekly {
    width: 100%;
    height: 160px;
}
.ia_chart_wrapper_weekly canvas {
    width: 100% !important;
    height: 100% !important;
}
.ia_chart_wrapper_market {
    width: 100%;
    max-width: 600px;
    height: 260px;
    margin: 0 auto;
}
.ia_chart_wrapper_market canvas {
    width: 100% !important;
    height: 100% !important;
}

.ia_chart_wrapper_salutation {
    width: 100%;
    max-width: 450px;
    height: 260px;
    margin: 20px auto 0;
}
.ia_chart_wrapper_salutation canvas {
    width: 100% !important;
    height: 100% !important;
}
.ia_chart_wrapper_country {
    width: 100%;
    max-width: 450px;
    height: 260px;
    margin: 20px auto 0;
}
.ia_chart_wrapper_country canvas {
    width: 100% !important;
    height: 100% !important;
}
.ia_chart_wrapper_product {
    width: 100%;
    max-width: 450px;
    height: 260px;
    margin: 20px auto 0;
}
.ia_chart_wrapper_product canvas {
    width: 100% !important;
    height: 100% !important;
}
.ia_chart_wrapper_awareness {
    width: 100%;
    max-width: 450px;
    height: 260px;
    margin: 20px auto 0;
}
.ia_chart_wrapper_awareness canvas {
    width: 100% !important;
    height: 100% !important;
}

.ia_chart_wrapper_validation_status {
    width: 100%;
    max-width: 450px;
    margin: 20px auto 0;
}
.ia_chart_wrapper_validation_status canvas {
    width: 100% !important;
    height: auto !important;
}
*/

.ia_chart_wrap{
  position: relative;
  height: 320px; /* überall gleich */
}

.ia_chart_wrap canvas{
  width: 100% !important;
  height: 100% !important;
}





/* LOGIN FORM */

.ia_login_form {
    width: 30em;
    margin: 0 !important;
    text-align: left;
}
.ia_login_form .ia_form_group {
    margin: 0 0 15px 0 !important;
    text-align: left;
}

@media all and (max-width: 980px) {
	.ia_login_form {
		width: 100%;
		margin: 0 !important;
		text-align: left;
	}
}

/* TABLES */
.widefat.striped tbody tr:nth-child(odd):hover {
	background-color: #EFEFEF;
}
.widefat.striped tbody tr:nth-child(odd) {
    background: #f9f9f9;
}

.widefat.striped tbody tr:nth-child(even) {
    background: #fff;
}
.widefat.striped tbody tr:nth-child(even):hover {
	background-color: #EFEFEF;
}

td {
	padding: 2px 2px 5px 9px!important;
}
th {
	padding: 2px 2px 10px 9px!important;
}
table {
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 12px;
    overflow: hidden;
}

/* obere Ecken */
table thead tr:first-child th:first-child {
    border-top-left-radius: var(--rounded);
}

table thead tr:first-child th:last-child {
    border-top-right-radius: var(--rounded);
}

/* untere Ecken */
table tbody tr:last-child td:first-child {
    border-bottom-left-radius: var(--rounded);
}

table tbody tr:last-child td:last-child {
    border-bottom-right-radius: var(--rounded);
}
/* TABLES */


.ia_login_center_wrap{
  min-height:70vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px 12px;
}

.ia_login_center{
  width:100%;
  max-width:520px;
}


















/* AF COUNTER */

/* ========================================================= */
/* IA Possible Participations Today */
/* ========================================================= */
.ia_possible_participations{
	border-radius: 14px;
	padding: 26px 18px;
	text-align: center;
	max-width: 720px;
	margin: 0 auto;
}

.ia_possible_participations_top,
.ia_possible_participations_bottom{
	font-weight: 800;
	color: #114a8b;
	letter-spacing: .2px;
}

.ia_possible_participations_top{
	font-size: 34px;
	line-height: 1.1;
	margin-bottom: 18px;
}

.ia_possible_participations_bottom{
	font-size: 34px;
	line-height: 1.1;
	margin-top: 18px;
}

.ia_possible_participations_pill{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 360px;
	padding: 22px 44px;
	border-radius: 999px;
	background: linear-gradient(135deg, #c70000 0%, #ff2a2a 100%);
	border: 6px solid #ffffff;
	box-shadow: 0 10px 18px rgba(0,0,0,.12);
}

.ia_possible_participations_number{
	font-size: 120px;
	line-height: 1;
	font-weight: 900;
	color: #FFD900;
	text-shadow: 0 3px 0 rgba(0,0,0,.18);
}

/* Responsive */
@media (max-width: 560px){
	.ia_possible_participations_top,
	.ia_possible_participations_bottom{
		font-size: 24px;
	}
	.ia_possible_participations_pill{
		min-width: 260px;
		padding: 18px 30px;
	}
	.ia_possible_participations_number{
		font-size: 86px;
	}
}









/* AF FORM */
/* ========================================================= */
/* IFRAME FORM */
/* ========================================================= */
.ia_form_frame {
	
}

.ia_min_height {
	min-height:100vh;
}
.ia_iframe_form{
	width:100%;
	max-width:820px;
	margin:0 auto;
}

.ia_iframe_grid{
	display:grid;
	gap:16px;
	margin:0 0 16px 0;
}

.ia_iframe_grid_2{ grid-template-columns:1fr 1fr; }
.ia_iframe_grid_1{ grid-template-columns:1fr; }

.ia_iframe_field{
	display:flex;
	flex-direction:column;
	gap:8px;
}

.ia_iframe_label{
	font-weight:600;
	font-size:14px;
}

.ia_iframe_label_small{
	font-size:13px;
	opacity:.9;
}

.ia_iframe_input{
	width:100%;
	padding: var(--ia_default_paddingField)!important;
	border:1px solid #cfcfcf;
	border-radius:0px;
	font-size:16px;
	box-sizing:border-box;
	background:#fff;
}

.ia_iframe_input_file{
	padding:10px 12px;
}

.ia_iframe_select{
	appearance:auto;
}

.ia_iframe_help{
	margin-top:6px;
	font-size:13px;
}

.ia_iframe_help a{
	text-decoration:underline;
}

.ia_iframe_section_title{
	font-weight:700;
	font-size:16px;
	margin:18px 0 10px 0;
}

/* Product grid */
.ia_iframe_product_grid{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:18px;
	margin:0 0 16px 0;
}

.ia_iframe_product_card{
	display:grid;
	grid-template-columns: auto 120px;
	gap:12px;
	align-items:center;
	justify-content:start;
}
.ia_iframe_product_left{
	max-width: 250px;
}
.ia_iframe_product_right{
	display:flex;
	justify-content:flex-start;
}

.ia_iframe_product_title{
	font-weight:700;
	font-size:16px;
	margin:0 0 8px 0;
	color: #084286;
}

.ia_iframe_product_select_wrap{
	position: relative;
	width: 140px;
	max-width: 100%;
}

.ia_iframe_qty_select{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	height: 48px;
	padding: 10px 52px 10px 14px; /* Platz rechts für Pfeil */
	border: 0;
	border-radius: 0;
	background: #ffffff;
	color: #8a8a8a;
	font-size: 20px;
	line-height: 1;
	box-sizing: border-box;
	outline: none;
	cursor: pointer;
}

/* wenn gewählt -> dunkler */
.ia_iframe_qty_select:not([value=""]){
	color:#222;
}

/* rechter Bereich + Pfeil */
.ia_iframe_qty_arrow{
	position:absolute;
	top:0;
	right:0;
	width:52px;
	height:48px;
	background:#ffffff;
	pointer-events:none;
}

.ia_iframe_qty_arrow:before{
	content:'';
	position:absolute;
	top:50%;
	left:50%;
	width:14px;
	height:14px;
	border-right:4px solid #0b3a7e; /* dunkelblau */
	border-bottom:4px solid #0b3a7e;
	transform: translate(-50%, -60%) rotate(45deg);
}



.ia_iframe_product_img{
	max-width:120px;
	width:100%;
	height:auto;
	display:block;
}

.ia_iframe_checks{
	display:flex;
	flex-direction:column;
	gap:10px;
	margin:18px 0 16px 0;
}

.ia_iframe_check{
	display:flex;
	gap:10px;
	align-items:flex-start;
	font-size:14px;
	line-height:1.35;
}

.ia_iframe_check input{ margin-top:3px; }

.ia_iframe_submit_wrap{ margin-top:10px; }

.ia_iframe_submit{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:12px 18px;
	border-radius:0px;
	border:0;
	cursor:pointer;
	font-weight:700;
	font-size:16px;
	background-color: #084286;
	color:white;
	min-width: 30vw;
}

.ia_iframe_notice{
	border-radius:0px;
	padding:12px 14px;
	margin:0 0 14px 0;
}

.ia_iframe_notice_success{
	border:1px solid #b7e4c7;
	background:#114A8B;
	color:white;
	text-align:center;
}

.ia_iframe_notice_error{
	border:1px solid #ffc9c9;
	background:#114A8B;
	color:white;
}

.ia_iframe_notice_error ul{
	margin:0;
	padding-left:18px;
}

/* Responsive */
@media (max-width: 900px){
	.ia_iframe_product_grid{
		grid-template-columns:repeat(2, 1fr);
	}
}

@media (max-width: 720px){
	.ia_iframe_grid_2{
		grid-template-columns:1fr;
	}
	.ia_iframe_product_grid{
		grid-template-columns:1fr;
	}
	.ia_iframe_product_card{
		grid-template-columns: 1fr 140px;
	}
}

/* WAVE ANIMATION */
.ia_glass_focus_wave{
	position: relative;
	overflow: hidden;
	transition: transform .35s ease, box-shadow .35s ease;
	transform-origin: center;
}

/* Glanz-Welle */
.ia_glass_focus_wave::after{
	content:'';
	position:absolute;
	top:-40%;
	left:-60%;
	width:60%;
	height:180%;
	background:linear-gradient(
		115deg,
		transparent 0%,
		rgba(255,255,255,0.15) 40%,
		rgba(255,255,255,0.35) 50%,
		rgba(255,255,255,0.15) 60%,
		transparent 100%
	);
	transform:translateX(0) skewX(-20deg);
	opacity:0;
	pointer-events:none;
}

/* Fokus innerhalb → Wave + Transform */
.ia_glass_focus_wave:focus-within{
	transform: scale(1.04) rotate(-0.5deg);
}

.ia_glass_focus_wave:focus-within::after{
	animation: ia_glass_wave .9s ease forwards;
}

@keyframes ia_glass_wave{
	0%{
		transform:translateX(0) skewX(-0.5deg);
		opacity:0;
	}
	20%{
		opacity:1;
	}
	100%{
		transform:translateX(280%) skewX(-0.5deg);
		opacity:0;
	}
}
/* / WAVE ANIMATION */



