/* Geteiltes Produkt-Layout-CSS (auf-gc, Referenzseiten-/Bundeswehr-Version), externalisiert 2026-08-06. Quelle: auf-bundeswehr-content.php */
.auf-bc{
	--auf-navy:#0b1830;
	--auf-ink:#5b6472;
	--auf-gold:#f0b800;
	background:transparent;
}
.auf-bc__inner{
	max-width:1220px;
	margin:0 auto;
	padding:14px 22px 4px;
}
.auf-bc__list{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:4px 6px;
	margin:0;
	padding:0;
	list-style:none;
	font-size:13px;
	line-height:1.4;
}
.auf-bc__item{
	display:inline-flex;
	align-items:center;
	gap:4px 6px;
	margin:0;
	padding:0;
}
.auf-bc__link{
	color:var(--auf-ink);
	text-decoration:none;
	transition:color .15s ease;
}
.auf-bc__link:hover,
.auf-bc__link:focus{
	color:var(--auf-gold);
	text-decoration:none;
}
.auf-bc__current{
	color:var(--auf-navy);
	font-weight:600;
}
.auf-bc__sep{
	width:15px;
	height:15px;
	flex:0 0 auto;
	fill:none;
	stroke:currentColor;
	stroke-width:2;
	stroke-linecap:round;
	stroke-linejoin:round;
	color:#c2c8d1;
}
@media (max-width:600px){
	.auf-bc__inner{ padding:10px 16px 2px; }
	.auf-bc__list{ font-size:12px; }
}

/* ---- 2-Spalten-Produktlayout ---- */
.auf-prod{ --auf-navy:#0b1830; --auf-ink:#4b5563; --auf-gold:#f0b800; --auf-line:#e6e9ef; }
.auf-prod__inner{
	max-width:1220px;
	margin:0 auto;
	padding:8px 22px 40px;
	display:grid;
	grid-template-columns:minmax(0,42fr) minmax(0,58fr);
	gap:32px;
	align-items:start;
}
/* Linke Spalte */
.auf-prod__media{ position:static; }
.auf-prod__stage{
	margin:0;
	border:1px solid var(--auf-line);
	border-radius:16px;
	background:#f8fafc;
	overflow:hidden;
	position:relative;
	aspect-ratio:1/1;
	display:flex;
	align-items:center;
	justify-content:center;
}
.auf-prod__zoom{
	width:100%;
	height:100%;
	padding:0;
	border:0;
	background:transparent;
	color:inherit;
	display:block;
	cursor:zoom-in;
	appearance:none;
}
.auf-prod__zoom:hover,
.auf-prod__zoom:focus,
.auf-prod__zoom:active{
	background:transparent !important;
	color:inherit !important;
	border-color:transparent !important;
	box-shadow:none !important;
	outline:none;
}
.auf-prod__img{
	width:100%;
	height:100%;
	object-fit:contain;
	display:block;
	opacity:1;
	transform:scale(1);
	transition:opacity .22s ease, transform .22s ease;
}
.auf-prod__img.is-fading{
	opacity:.16;
	transform:scale(.992);
}
.auf-prod__arrow{
	position:absolute;
	top:50%;
	z-index:2;
	width:42px;
	height:42px;
	padding:0;
	border:1px solid rgba(11,24,48,.12);
	border-radius:999px;
	background:rgba(255,255,255,.88);
	color:var(--auf-navy);
	box-shadow:0 10px 24px rgba(11,24,48,.16);
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	transform:translateY(-50%);
	transition:background .16s ease, border-color .16s ease, color .16s ease, transform .16s ease;
	appearance:none;
	line-height:1;
}
.auf-prod__arrow:hover,
.auf-prod__arrow:focus,
.auf-prod__arrow:active,
.auf-prod__thumb:hover,
.auf-prod__thumb:focus,
.auf-prod__thumb:active,
.auf-prod-lightbox__close:hover,
.auf-prod-lightbox__close:focus,
.auf-prod-lightbox__close:active{
	text-decoration:none !important;
	box-shadow:none;
}
.auf-prod__arrow span{
	width:12px;
	height:12px;
	border-top:2px solid currentColor;
	border-right:2px solid currentColor;
	font-size:0;
	line-height:0;
	display:block;
	transform-origin:center;
}
.auf-prod__arrow--prev span{ transform:translateX(2px) rotate(-135deg); }
.auf-prod__arrow--next span{ transform:translateX(-2px) rotate(45deg); }
.auf-prod__arrow--prev{ left:14px; }
.auf-prod__arrow--next{ right:14px; }
.auf-prod__arrow:hover,
.auf-prod__arrow:focus-visible{
	background:#fff;
	border-color:var(--auf-gold);
	color:var(--auf-gold);
	transform:translateY(-50%) scale(1.04);
}
.auf-prod__arrow:active{
	background:#fff !important;
	border-color:var(--auf-gold) !important;
	color:var(--auf-gold) !important;
}
.auf-prod__arrow:focus-visible{ outline:3px solid rgba(200,145,42,.24); outline-offset:2px; }
.auf-prod__badge,
.auf-prod__count{
	position:absolute;
	z-index:2;
	border:1px solid rgba(11,24,48,.1);
	border-radius:999px;
	background:rgba(255,255,255,.9);
	color:var(--auf-navy);
	box-shadow:0 8px 22px rgba(11,24,48,.12);
	font-size:12px;
	font-weight:700;
	line-height:1;
}
.auf-prod__badge{
	top:14px;
	left:14px;
	padding:8px 11px;
	color:#fff;
	background:rgba(11,24,48,.86);
	border-color:rgba(255,255,255,.16);
}
.auf-prod__count{
	right:14px;
	bottom:14px;
	padding:7px 10px;
}
.auf-prod__zoomHint{
	position:absolute;
	left:14px;
	bottom:14px;
	z-index:2;
	padding:7px 10px;
	border:1px solid rgba(11,24,48,.08);
	border-radius:999px;
	background:rgba(255,255,255,.84);
	color:#667085;
	box-shadow:0 8px 22px rgba(11,24,48,.1);
	font-size:12px;
	font-weight:700;
	line-height:1;
	pointer-events:none;
}
.auf-prod__thumbRail{
	margin-top:14px;
	overflow:visible;
	padding:0;
}
.auf-prod__thumbs{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:9px;
}
.auf-prod__thumb{
	width:100%;
	height:auto;
	aspect-ratio:1/1;
	flex:0 0 auto;
	padding:0;
	border:1px solid var(--auf-line);
	border-radius:10px;
	background:#fff;
	color:inherit;
	overflow:hidden;
	cursor:pointer;
	transition:border-color .15s ease, box-shadow .15s ease;
	appearance:none;
}
.auf-prod__thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.auf-prod__thumb:hover,
.auf-prod__thumb:focus,
.auf-prod__thumb:active{
	background:#fff !important;
	border-color:var(--auf-gold) !important;
	color:inherit !important;
}
.auf-prod__thumb.is-active{
	background:#fff !important;
	border-color:var(--auf-gold) !important;
	box-shadow:0 0 0 1px var(--auf-gold) !important;
}
.auf-prod__trust{
	margin-top:18px;
	padding:26px 28px;
	border:1px solid rgba(230,233,239,.92);
	border-radius:16px;
	background:#fff;
	box-shadow:0 14px 34px rgba(11,24,48,.06);
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:26px 34px;
}
.auf-prod__trustItem{
	display:grid;
	grid-template-columns:42px minmax(0,1fr);
	align-items:center;
	gap:12px;
	min-width:0;
}
.auf-prod__trustIcon{
	width:42px;
	height:42px;
	border-radius:999px;
	background:linear-gradient(180deg,#fff7df 0%,#fff 100%);
	border:1px solid rgba(200,145,42,.28);
	box-shadow:0 8px 18px rgba(200,145,42,.14);
	color:var(--auf-navy);
	display:flex;
	align-items:center;
	justify-content:center;
	flex:0 0 42px;
}
.auf-prod__trustIcon svg{
	width:23px;
	height:23px;
	display:block;
	fill:none;
	stroke:currentColor;
	stroke-width:1.8;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.auf-prod__trustItem strong{
	display:block;
	color:var(--auf-navy);
	font-size:14px;
	line-height:1.25;
	font-weight:800;
}
.auf-prod__trustItem small{
	display:block;
	margin-top:4px;
	color:#667085;
	font-size:12.5px;
	line-height:1.25;
	font-weight:600;
}
.auf-prod__trustRating{
	grid-column:1 / -1;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:12px;
	white-space:nowrap;
	text-align:center;
}
.auf-prod__stars{
	color:#f6a800;
	font-size:18px;
	line-height:1;
	letter-spacing:1px;
	white-space:nowrap;
	text-shadow:0 1px 0 rgba(99,64,0,.16);
}
.auf-prod__ratingText{
	display:flex;
	align-items:baseline;
	gap:10px;
	min-width:0;
}
.auf-prod__ratingText strong,
.auf-prod__ratingText small{
	display:inline;
	margin:0;
	white-space:nowrap;
}
/* Rechte Spalte */
.auf-prod__title{
	margin:0 0 12px;
	color:var(--auf-navy);
	font-size:clamp(26px,3.2vw,38px);
	line-height:1.15;
	font-weight:800;
	letter-spacing:-.01em;
}
.auf-prod__lead{
	margin:0 0 22px;
	color:var(--auf-ink);
	font-size:16px;
	line-height:1.6;
	max-width:56ch;
}
.auf-prod__main--guided .auf-prod__title{
	font-size:clamp(32px,3.8vw,44px);
	letter-spacing:-.02em;
	margin-bottom:8px;
}
.auf-prod__main--guided .auf-prod__lead{
	margin:0 0 14px;
	color:#5b6472;
	font-size:18px;
	line-height:1.35;
	font-weight:700;
}
.auf-prod__main--guided .auf-prod__lead strong{
	color:#f5a800;
	font-weight:900;
}
.auf-prod__quickTrust{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:10px 18px;
	margin:0 0 18px;
	color:#273244;
	font-size:12.5px;
	font-weight:800;
}
.auf-prod__quickTrust span{
	display:inline-flex;
	align-items:center;
	gap:7px;
	white-space:nowrap;
}
.auf-prod__quickTrust span::before{
	content:"";
	width:16px;
	height:16px;
	border-radius:999px;
	background:#ffc107;
	box-shadow:inset 0 0 0 4px #fff5cf, 0 3px 9px rgba(245,168,0,.18);
	flex:0 0 16px;
}
.auf-prod__commerceInfo{
	display:grid;
	grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
	align-items:center;
	gap:10px;
	margin:-4px 0 14px;
}
.auf-prod__topRating,
.auf-prod__delivery{
	min-height:50px;
	border:1px solid #e7ebf1;
	border-radius:10px;
	background:#fff;
	box-shadow:0 8px 22px rgba(15,35,66,.05);
}
.auf-prod__topRating{
	display:flex;
	align-items:center;
	gap:8px;
	padding:0 13px;
	color:#283446;
	font-size:12.5px;
	font-weight:800;
	white-space:nowrap;
}
.auf-prod__topStars{
	color:#f6a800;
	font-size:15px;
	line-height:1;
	letter-spacing:1px;
	text-shadow:0 1px 0 rgba(99,64,0,.14);
}
.auf-prod__topRating strong{
	color:var(--auf-navy);
	font-size:13px;
	font-weight:900;
}
.auf-prod__topRating span:last-child{
	color:#667085;
	font-weight:700;
}
.auf-prod__delivery{
	display:grid;
	grid-template-columns:38px minmax(0,1fr);
	align-items:center;
	gap:10px;
	padding:7px 13px;
	background:linear-gradient(100deg,#f7fff9 0%,#fff 68%);
	border-color:#dcefe2;
}
.auf-prod__deliveryIcon{
	width:34px;
	height:34px;
	border-radius:999px;
	background:#eaf8ef;
	color:#16743a;
	display:flex;
	align-items:center;
	justify-content:center;
}
.auf-prod__deliveryIcon svg{
	width:21px;
	height:21px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.8;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.auf-prod__delivery strong,
.auf-prod__delivery small{
	display:block;
	line-height:1.25;
}
.auf-prod__delivery strong{
	color:#173725;
	font-size:12.8px;
	font-weight:900;
}
.auf-prod__delivery small{
	margin-top:3px;
	color:#667085;
	font-size:12px;
	font-weight:700;
}
.auf-prod__madeNote{
	margin:0 0 14px;
	padding:16px 18px;
	border:1px solid rgba(245,168,0,.22);
	border-radius:12px;
	background:linear-gradient(100deg,#fff9e8 0%,#fff 100%);
	color:#273244;
	box-shadow:0 10px 26px rgba(245,168,0,.08);
}
.auf-prod__madeNote strong{
	display:inline-flex;
	align-items:center;
	gap:8px;
	font-size:13px;
	font-weight:900;
}
.auf-prod__madeNote strong::before{
	content:"!";
	width:17px;
	height:17px;
	border-radius:999px;
	background:#ffc107;
	color:#1b2535;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	font-size:12px;
	font-weight:900;
}
.auf-prod__madeNote span{
	margin-left:6px;
	color:#5b6472;
	font-size:12.5px;
	font-weight:700;
}
.auf-prod__madeNote small{
	display:block;
	margin:8px 0 0 26px;
	color:#667085;
	font-size:12px;
	line-height:1.4;
	font-weight:600;
}
.auf-quote-config{
	display:flex;
	flex-direction:column;
	gap:14px;
	position:relative;
	background:linear-gradient(180deg,#f8fafd 0%,#f2f5fa 100%);
	border:1px solid #e1e7f0;
	border-radius:14px;
	padding:20px 20px 22px;
	box-shadow:0 12px 30px rgba(15,35,66,.07);
	overflow:hidden;
}
.auf-quote-config::before{
	content:"";
	position:absolute;
	top:0; left:0; right:0;
	height:3px;
	background:linear-gradient(90deg,#f7c600,#ffdf66 45%,#f5a800);
}
.auf-qhead{
	display:flex;
	flex-direction:column;
	gap:2px;
	padding-bottom:12px;
	margin-bottom:2px;
	border-bottom:1px solid #e5eaf2;
}
.auf-qhead strong{
	color:#172033;
	font-size:16px;
	font-weight:900;
	line-height:1.25;
}
.auf-qhead span{
	color:#66738a;
	font-size:12.5px;
	font-weight:700;
}
.auf-qrow{
	display:grid;
	grid-template-columns:24px minmax(132px,.62fr) minmax(0,1fr);
	gap:14px;
	align-items:center;
}
.auf-qstep{
	width:22px;
	height:22px;
	border-radius:999px;
	background:#ffc107;
	color:#172033;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:12px;
	font-weight:900;
	box-shadow:0 5px 13px rgba(245,168,0,.25);
}
.auf-qlabel{
	color:#202b3d;
	font-size:13px;
	font-weight:900;
	line-height:1.25;
}
.auf-qlabel small{
	color:#7b8494;
	font-weight:700;
}
.auf-qcontrol{
	min-width:0;
}
.auf-qselect,
.auf-qchoices button,
.auf-qqty button,
.auf-qqty input,
.auf-qsize input{
	min-height:48px;
	border:1px solid #e4e8ef;
	border-radius:8px;
	background:#fff;
	color:#273244;
	box-shadow:0 6px 18px rgba(15,35,66,.04);
	font-size:13px;
	font-weight:800;
	text-align:center;
}
.auf-qselect{
	width:100%;
	text-align:left;
	padding:0 42px 0 16px;
	position:relative;
}
.auf-qselect select,
.auf-qselect__button{
	width:100%;
	min-height:48px;
	border:0;
	background:transparent;
	color:#1d2838;
	font:inherit;
	font-weight:800;
	appearance:none;
	outline:0;
	cursor:pointer;
}
.auf-qselect--shape{
	padding:0;
	z-index:12;
}
.auf-qselect__button{
	display:flex;
	align-items:center;
	gap:10px;
	padding:0 42px 0 14px;
	text-align:left;
	box-shadow:none !important;
}
.auf-prod .auf-qselect--shape .auf-qselect__button,
.auf-prod .auf-qselect--shape .auf-qselect__menu button{
	background:transparent !important;
	border-color:transparent !important;
	color:#1d2838 !important;
	box-shadow:none !important;
	text-decoration:none !important;
}
.auf-prod .auf-qselect--shape .auf-qselect__button:hover,
.auf-prod .auf-qselect--shape .auf-qselect__button:focus,
.auf-prod .auf-qselect--shape .auf-qselect__button:active,
.auf-prod .auf-qselect--shape .auf-qselect__menu button:focus,
.auf-prod .auf-qselect--shape .auf-qselect__menu button:active{
	background:transparent !important;
	border-color:transparent !important;
	color:#1d2838 !important;
	box-shadow:none !important;
	outline:0 !important;
}
.auf-prod .auf-qselect--shape:hover,
.auf-prod .auf-qselect--shape:focus-within{
	border-color:#ffc107 !important;
	background:#fff9e8 !important;
	box-shadow:0 0 0 1px rgba(255,193,7,.42), 0 8px 20px rgba(245,168,0,.12) !important;
}
.auf-qselect__menu{
	position:absolute;
	top:calc(100% + 7px);
	left:0;
	right:0;
	display:none;
	padding:6px;
	border:1px solid #e4e8ef;
	border-radius:10px;
	background:#fff;
	box-shadow:0 16px 34px rgba(15,35,66,.16);
	z-index:20;
}
.auf-qselect--shape.is-open .auf-qselect__menu{
	display:block;
}
.auf-qselect__menu button{
	width:100%;
	min-height:42px;
	display:flex;
	align-items:center;
	gap:10px;
	padding:0 10px;
	border:0;
	border-radius:8px;
	background:transparent;
	color:#1d2838;
	font-size:13px;
	font-weight:800;
	text-align:left;
	cursor:pointer;
}
.auf-qselect__menu button:hover,
.auf-qselect__menu button.is-active{
	background:#fff6dc !important;
	color:#111827 !important;
	box-shadow:none !important;
}
.auf-qselect::after{
	content:"";
	position:absolute;
	right:17px;
	top:50%;
	width:7px;
	height:7px;
	border-right:2px solid currentColor;
	border-bottom:2px solid currentColor;
	transform:translateY(-65%) rotate(45deg);
	opacity:.7;
}
.auf-qchoices{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:8px;
}
.auf-qchoices--shape{
	grid-template-columns:repeat(4,minmax(0,1fr));
}
.auf-qchoices--exec{
	grid-template-columns:repeat(auto-fit,minmax(92px,1fr));
}
.auf-qrow[hidden]{ display:none !important; }
.auf-qchoices button{
	padding:0 10px;
	cursor:pointer;
	transition:border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.auf-qchoices--shape button{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:7px;
	padding:0 8px;
}
.auf-shapeIcon{
	width:18px;
	height:18px;
	flex:0 0 18px;
	position:relative;
	display:inline-block;
	color:#1f2a3d;
}
.auf-shapeIcon--rect{
	border:2px solid currentColor;
	border-radius:4px;
}
.auf-shapeIcon--round{
	border:2px solid currentColor;
	border-radius:999px;
}
.auf-shapeIcon--crest{
	width:20px;
	height:20px;
	flex-basis:20px;
	background:center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231f2a3d' stroke-width='2.2' stroke-linejoin='round' stroke-linecap='round'%3E%3Cpath d='M12 3 19 6v5.4c0 4.5-2.8 7.8-7 9.6-4.2-1.8-7-5.1-7-9.6V6l7-3Z'/%3E%3Cpath d='M12 3v18' opacity='.22'/%3E%3C/svg%3E");
}
.auf-shapeIcon--free::before{
	content:"";
	position:absolute;
	inset:1px;
	border:2px solid currentColor;
	border-radius:52% 38% 48% 42%;
	transform:rotate(-10deg);
}
/* Elementor-Kit-Akzent (Magenta) auf den Options-Buttons neutralisieren:
   geklickte Buttons landen sonst im :focus/:active-Zustand des Kits. */
.auf-qchoices button,
.auf-qchoices button:hover,
.auf-qchoices button:focus,
.auf-qchoices button:focus-visible,
.auf-qchoices button:active{
	color:#1f2a3d !important;
}
.auf-qchoices button:focus,
.auf-qchoices button:focus-visible,
.auf-qchoices button:active{
	background:#fff !important;
	outline:none !important;
}
.auf-qchoices button:hover,
.auf-qchoices button.is-active,
.auf-qchoices button.is-active:hover,
.auf-qchoices button.is-active:focus,
.auf-qchoices button.is-active:focus-visible,
.auf-qchoices button.is-active:active,
.auf-qselect.is-active{
	border-color:#ffc107 !important;
	background:#fff9e8 !important;
	color:#1f2a3d !important;
	box-shadow:0 0 0 1px rgba(255,193,7,.42), 0 8px 20px rgba(245,168,0,.12);
}
.auf-qchecks{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:8px;
}
.auf-qchoices--optional button{
	position:relative;
}
.auf-qchoices--optional button.is-active,
.auf-qchoices--optional button.is-active:hover,
.auf-qchoices--optional button.is-active:focus,
.auf-qchoices--optional button.is-active:active{
	border-color:#e4e8ef !important;
	box-shadow:0 0 0 2px #1f2a3d inset, 0 8px 20px rgba(15,35,66,.18) !important;
}
.auf-qchoices--optional button::before{
	content:"";
	position:absolute;
	top:5px;
	right:5px;
	width:17px;
	height:17px;
	border-radius:50%;
	background:#1f2a3d center / 11px 11px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E");
	opacity:0;
	transform:scale(.4);
	transition:opacity .15s ease, transform .15s ease;
}
.auf-qchoices--optional button.is-active::before{
	opacity:1;
	transform:scale(1);
}
.auf-qchecks .auf-metal{
	min-height:48px;
	border:1px solid #e4e8ef;
	border-radius:8px;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	padding:0 10px;
	font-size:13px;
	font-weight:900;
	cursor:pointer;
	box-shadow:0 6px 18px rgba(15,35,66,.04);
	transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.auf-qchecks .auf-metal input{
	position:absolute;
	opacity:0;
	pointer-events:none;
}
.auf-qchecks .auf-metal span::before{
	content:"";
	width:14px;
	height:14px;
	border:2px solid currentColor;
	border-radius:4px;
	display:inline-block;
	margin-right:7px;
	vertical-align:-2px;
	background:rgba(255,255,255,.5);
}
.auf-qchecks .auf-metal:has(input:checked) span::before{
	background:currentColor;
	box-shadow:inset 0 0 0 3px rgba(255,255,255,.85);
}
.auf-qchecks .auf-metal--gold{
	border-color:#e1b13a;
	background:linear-gradient(180deg,#fff6cf 0%,#f7d36a 100%);
	color:#5b3b00;
}
.auf-qchecks .auf-metal--silver{
	border-color:#c8d0dc;
	background:linear-gradient(180deg,#ffffff 0%,#dfe5ed 100%);
	color:#344054;
}
.auf-qchecks .auf-metal--bronze{
	border-color:#bf7a37;
	background:linear-gradient(180deg,#ffe0bd 0%,#c47a35 100%);
	color:#4b2508;
}
.auf-qchecks .auf-metal:hover,
.auf-qchecks .auf-metal:has(input:focus),
.auf-qchecks .auf-metal:has(input:checked){
	transform:translateY(-1px);
	box-shadow:0 0 0 1px rgba(255,193,7,.28), 0 8px 20px rgba(15,35,66,.12);
}
/* Aufpreis-Badges pro Option */
.auf-qchoices button[data-add]{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:2px;
	line-height:1.1;
}
.auf-qchoices button[data-add]::after{
	content:attr(data-add);
	font-size:10px;
	font-weight:600 !important;
	color:#9aa4b2 !important;
	letter-spacing:.2px;
	white-space:nowrap;
}
.auf-qchoices button.is-active[data-add]::after{
	color:#7c8797 !important;
}
/* Metall: kein Häkchen-Kästchen – stattdessen wird die ganze Box markiert */
.auf-qchecks .auf-metal{
	position:relative;
}
.auf-qchecks .auf-metal span::before{
	display:none !important;
}
.auf-qchecks .auf-metal span[data-add]::after{
	content:attr(data-add);
	margin-left:6px;
	font-size:10px;
	font-weight:600;
	color:currentColor;
	opacity:.55;
}
.auf-qchecks .auf-metal:has(input:checked){
	box-shadow:0 0 0 2px #1f2a3d inset, 0 8px 20px rgba(15,35,66,.18);
}
.auf-qchecks .auf-metal::after{
	content:"";
	position:absolute;
	top:5px;
	right:5px;
	width:17px;
	height:17px;
	border-radius:50%;
	background:#1f2a3d center / 11px 11px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E");
	opacity:0;
	transform:scale(.4);
	transition:opacity .15s ease, transform .15s ease;
}
.auf-qchecks .auf-metal:has(input:checked)::after{
	opacity:1;
	transform:scale(1);
}
.auf-qsize{
	display:grid;
	grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr);
	align-items:center;
	gap:12px;
}
.auf-qsizeSep{
	text-align:center;
	color:#1d2838;
	font-weight:900;
}
.auf-qsizeField{
	position:relative;
	display:block;
	min-width:0;
}
.auf-qsizeField > span{
	position:absolute;
	top:6px;
	left:12px;
	color:#7b8494;
	font-size:10px;
	font-weight:800;
	line-height:1;
	pointer-events:none;
}
.auf-qsizeField small{
	position:absolute;
	right:12px;
	top:50%;
	transform:translateY(-50%);
	color:#7b8494;
	font-size:11px;
	font-weight:800;
	pointer-events:none;
}
.auf-qsizeField input{
	width:100%;
	padding:16px 34px 5px 12px;
}
.auf-qsizeField--diameter{
	display:none;
	grid-column:1 / -1;
}
.auf-quote-config.is-round-shape .auf-qsize{
	grid-template-columns:minmax(0,1fr);
}
.auf-quote-config.is-round-shape .auf-qsizeField--width,
.auf-quote-config.is-round-shape .auf-qsizeField--height,
.auf-quote-config.is-round-shape .auf-qsizeSep{
	display:none;
}
.auf-quote-config.is-round-shape .auf-qsizeField--diameter{
	display:block;
}
.auf-qqty{
	position:relative;
	display:block;
}
.auf-qqty select{
	width:auto;
	min-width:96px;
	max-width:100%;
	margin:0;
	display:inline-block;
	min-height:48px;
	border:1px solid #e4e8ef;
	border-radius:8px;
	background:#fff;
	color:#1d2838;
	box-shadow:0 6px 18px rgba(15,35,66,.04);
	font-size:13px;
	font-weight:900;
	text-align:left;
	text-align-last:left;
	padding:0 14px;
	appearance:auto;
	cursor:pointer;
}
.auf-qupload{
	min-height:92px;
	border:1px dashed #d9dee8;
	border-radius:10px;
	background:#fff;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:6px;
	padding:16px;
	text-align:center;
	cursor:pointer;
	box-shadow:0 6px 18px rgba(15,35,66,.04);
}
.auf-qupload input{
	position:absolute;
	opacity:0;
	pointer-events:none;
}
.auf-qupload span{
	color:#202b3d;
	font-size:13px;
	font-weight:900;
}
.auf-qupload small{
	color:#667085;
	font-size:11.5px;
	font-weight:700;
}
.auf-qupload{
	position:relative;
	overflow:hidden;
	transition:border-color .18s ease,background-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.auf-qupload__icon{
	width:34px;
	height:34px;
	border-radius:999px;
	background:#fff7dd;
	display:flex;
	align-items:center;
	justify-content:center;
	transition:transform .18s ease,background-color .18s ease;
}
.auf-qupload__icon svg{
	width:18px;
	height:18px;
	fill:none;
	stroke:#b58900;
	stroke-width:2;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.auf-qupload:hover{
	border-color:#f0c53d;
	background:#fffdf4;
}
.auf-qupload:hover .auf-qupload__icon{ transform:translateY(-2px); }
.auf-qupload.is-drag{
	border-color:#f5a800;
	border-style:solid;
	background:#fff8e2;
	transform:scale(1.015);
	box-shadow:0 10px 26px rgba(245,168,0,.18);
}
.auf-qupload.is-drag .auf-qupload__icon{
	background:#ffe9a8;
	transform:translateY(-3px) scale(1.08);
}
.auf-qupload.is-error{
	border-color:#e05252;
	background:#fff6f6;
}
.auf-qupload.is-error span{ color:#b23030; }
.auf-qupload.is-shake{ animation:aufQShake .45s ease; }
@keyframes aufQShake{
	0%,100%{ transform:translateX(0); }
	20%{ transform:translateX(-6px); }
	40%{ transform:translateX(5px); }
	60%{ transform:translateX(-4px); }
	80%{ transform:translateX(3px); }
}
.auf-qupload__bar{
	position:absolute;
	left:0; right:0; bottom:0;
	height:3px;
	background:rgba(245,168,0,.14);
	opacity:0;
	transition:opacity .15s ease;
}
.auf-qupload__bar i{
	position:absolute;
	inset:0;
	transform:scaleX(0);
	transform-origin:left center;
	background:linear-gradient(90deg,#f7c600,#f5a800);
}
.auf-qupload.is-loading .auf-qupload__bar{ opacity:1; }
.auf-qupload.is-loading .auf-qupload__bar i{ animation:aufQFill .9s cubic-bezier(.25,.6,.35,1) forwards; }
@keyframes aufQFill{
	from{ transform:scaleX(0); }
	to{ transform:scaleX(1); }
}
.auf-qupload.is-loading .auf-qupload__icon{ animation:aufQPulse .7s ease infinite alternate; }
@keyframes aufQPulse{
	from{ transform:translateY(-1px) scale(1); }
	to{ transform:translateY(-3px) scale(1.1); }
}
.auf-qfile[hidden]{ display:none; }
.auf-qupload[hidden]{ display:none; }
.auf-qfile{
	display:flex;
	align-items:center;
	gap:12px;
	min-height:64px;
	padding:10px 12px;
	border:1px solid #cfe6d4;
	border-radius:10px;
	background:#f4fbf6;
	box-shadow:0 6px 18px rgba(15,35,66,.05);
	opacity:0;
	transform:translateY(6px);
	transition:opacity .25s ease,transform .25s ease;
}
.auf-qfile.is-in{
	opacity:1;
	transform:translateY(0);
}
.auf-qfile__thumbWrap{
	width:46px;
	height:46px;
	flex:0 0 46px;
	border-radius:8px;
	background:#fff;
	border:1px solid #e2e8f0;
	display:flex;
	align-items:center;
	justify-content:center;
	overflow:hidden;
}
.auf-qfile__thumb{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}
.auf-qfile__typeIcon svg{
	width:22px;
	height:22px;
	fill:none;
	stroke:#8a94a6;
	stroke-width:1.8;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.auf-qfile__meta{
	min-width:0;
	flex:1;
	display:flex;
	flex-direction:column;
	gap:2px;
	text-align:left;
}
.auf-qfile__meta strong{
	color:#1d3b28;
	font-size:12.5px;
	font-weight:900;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}
.auf-qfile__meta small{
	color:#5c7a66;
	font-size:11px;
	font-weight:700;
}
.auf-qfile__check{
	width:26px;
	height:26px;
	flex:0 0 26px;
	border-radius:999px;
	background:#2f9e57;
	display:flex;
	align-items:center;
	justify-content:center;
	animation:aufQPop .35s cubic-bezier(.3,1.6,.5,1) both;
	animation-delay:.1s;
}
.auf-qfile__check svg{
	width:14px;
	height:14px;
	fill:none;
	stroke:#fff;
	stroke-width:3;
	stroke-linecap:round;
	stroke-linejoin:round;
}
@keyframes aufQPop{
	from{ transform:scale(.3); opacity:0; }
	to{ transform:scale(1); opacity:1; }
}
.auf-qfile__remove{
	width:28px;
	height:28px;
	flex:0 0 28px;
	border:none;
	border-radius:999px;
	background:transparent;
	color:#7b8494;
	font-size:19px;
	font-weight:800;
	line-height:1;
	cursor:pointer;
	display:flex;
	align-items:center;
	justify-content:center;
	transition:background-color .15s ease,color .15s ease;
}
.auf-qfile__remove:hover{
	background:#fdeaea;
	color:#c23a3a;
}
.auf-qnotice[hidden]{ display:none; }
.auf-qnotice{
	display:flex;
	align-items:flex-start;
	gap:11px;
	margin:2px 0 4px;
	padding:13px 15px;
	border:1px solid #f2c2c2;
	border-left:4px solid #d83a3a;
	border-radius:11px;
	background:linear-gradient(100deg,#fdeaea 0%,#fff7f7 78%);
	box-shadow:0 8px 22px rgba(216,58,58,.10);
}
.auf-qnotice.is-in{
	animation:aufQNoticeIn .34s cubic-bezier(.25,.9,.35,1);
}
@keyframes aufQNoticeIn{
	from{ opacity:0; transform:translateY(-6px); }
	to{ opacity:1; transform:translateY(0); }
}
.auf-qnotice__icon{
	flex:0 0 30px;
	width:30px;
	height:30px;
	border-radius:999px;
	background:#f8cccc;
	display:flex;
	align-items:center;
	justify-content:center;
	margin-top:1px;
}
.auf-qnotice__icon svg{
	width:17px;
	height:17px;
	fill:none;
	stroke:#b52626;
	stroke-width:2;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.auf-qnotice__text{
	display:flex;
	flex-direction:column;
	gap:2px;
	min-width:0;
}
.auf-qnotice__text strong{
	color:#a11f1f;
	font-size:13px;
	font-weight:900;
	line-height:1.25;
}
.auf-qnotice__text span{
	color:#9a4242;
	font-size:12px;
	font-weight:600;
	line-height:1.45;
}
@media (max-width:900px){
	.auf-qnotice{ display:none!important; }
}
.auf-qrow.is-oversize .auf-qsizeField input{
	border-color:#e58080;
	background:#fff6f6;
	box-shadow:0 0 0 3px rgba(216,58,58,.14);
}
.auf-qprice{
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);
	gap:10px;
	margin:2px 0 4px;
	padding:12px;
	border:1px solid rgba(22,116,58,.18);
	border-radius:12px;
	background:linear-gradient(100deg,#f7fff9 0%,#fff 72%);
	box-shadow:0 10px 26px rgba(15,35,66,.06);
}
.auf-qprice--request{
	grid-template-columns:1fr;
}
.auf-qprice--request > .auf-qprice__requestBox{
	display:flex;
	flex-direction:row;
	align-items:center;
	text-align:left;
	gap:14px;
	min-height:66px;
	padding:14px 16px;
	border-radius:10px;
	background:#fff;
	border:1px solid rgba(22,116,58,.22);
}
.auf-qprice__reqIcon{
	flex:0 0 auto;
	display:flex;
	align-items:center;
	justify-content:center;
	width:42px;
	height:42px;
	border-radius:50%;
	background:#eafaf0;
	color:#16743a;
}
.auf-qprice__reqIcon svg{
	width:22px;
	height:22px;
	fill:none;
	stroke:currentColor;
	stroke-width:2;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.auf-qprice__reqText{ display:flex; flex-direction:column; }
.auf-qprice__reqText strong{
	margin:0;
	color:var(--auf-navy);
	font-size:clamp(18px,2.2vw,23px);
	font-weight:950;
	line-height:1.1;
}
.auf-qprice__reqText small{
	margin-top:4px;
	color:#667085;
	font-size:12px;
	font-weight:700;
	line-height:1.3;
}
.auf-qprice > div{
	min-height:66px;
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:10px 12px;
	border-radius:9px;
	background:#fff;
	border:1px solid #e7ebf1;
}
.auf-qprice > div.is-tick{
	animation:aufQPriceTick .55s ease;
}
.auf-qprice > div.is-tick strong{
	animation:aufQPricePop .45s cubic-bezier(.3,1.5,.5,1);
}
@keyframes aufQPriceTick{
	0%{ background:#fff; border-color:#e7ebf1; }
	25%{ background:#fff6d8; border-color:#f0c53d; box-shadow:0 6px 18px rgba(245,168,0,.22); }
	100%{ background:#fff; border-color:#e7ebf1; }
}
@keyframes aufQPricePop{
	0%{ transform:scale(1); }
	35%{ transform:scale(1.07); }
	100%{ transform:scale(1); }
}
.auf-qprice span{
	color:#667085;
	font-size:12px;
	font-weight:800;
	line-height:1.2;
}
.auf-qprice strong{
	margin-top:3px;
	color:var(--auf-navy);
	font-size:clamp(22px,2.6vw,30px);
	font-weight:950;
	line-height:1.05;
}
.auf-qprice__totalBox strong{
	font-size:clamp(16px,1.9vw,21px);
}
.auf-qprice small{
	margin-top:5px;
	color:#667085;
	font-size:11.5px;
	font-weight:700;
	line-height:1.25;
}
.auf-qprice__old{
	margin-top:2px !important;
	color:#98a2b3 !important;
	-webkit-text-fill-color:#98a2b3 !important;
	opacity:1 !important;
	visibility:visible !important;
	font-size:13px !important;
	font-weight:800 !important;
	text-decoration:line-through;
	text-decoration-thickness:2px;
}
.auf-qprice__old[hidden]{ display:none; }
.auf-qprice__save{
	align-self:flex-start;
	margin-top:6px;
	display:inline-flex !important;
	align-items:center;
	padding:3px 10px;
	border-radius:999px;
	background:#e7f6ec;
	color:#1c7a3f !important;
	-webkit-text-fill-color:#1c7a3f !important;
	opacity:1 !important;
	visibility:visible !important;
	font-size:11.5px !important;
	font-weight:900 !important;
	line-height:1;
	white-space:nowrap;
}
.auf-qprice__save[hidden]{ display:none !important; }
.auf-qprice__totalBox.is-saving,
.auf-qprice__unitBox.is-saving{
	border-color:#bfe6cd;
	background:linear-gradient(100deg,#f1fbf5 0%,#fff 78%);
	box-shadow:0 8px 22px rgba(28,122,63,.14);
}
.auf-qprice__totalBox.is-saving strong,
.auf-qprice__unitBox.is-saving strong{ color:#1c7a3f !important; -webkit-text-fill-color:#1c7a3f !important; }
.auf-qactions{
	display:grid;
	gap:12px;
	margin-top:2px;
}
.auf-qcta{
	position:relative;
	min-height:58px;
	border-radius:9px;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	text-align:center;
	text-decoration:none !important;
	font-size:17px;
	font-weight:900;
	line-height:1.15;
}
.auf-qcta small{
	margin-top:5px;
	font-size:12px;
	font-weight:700;
}
.auf-qcta--primary{
	background:linear-gradient(180deg,#ffcf22 0%,#ffb400 100%);
	border:1px solid rgba(202,141,0,.36);
	color:#172033 !important;
	box-shadow:0 12px 24px rgba(245,168,0,.22);
}
.auf-qcta--primary > span{
	position:absolute;
	right:22px;
	font-size:20px;
}
.auf-qcta--secondary{
	background:#fff;
	border:1px solid #cfd6e3;
	color:#172033 !important;
}
.auf-qcta--secondary.is-disabled{
	background:#f4f5f7;
	border-color:#e2e5eb;
	color:#a6adba !important;
	cursor:not-allowed;
	box-shadow:none;
	opacity:.85;
}
.auf-qcta--secondary.is-disabled:hover{
	transform:none;
	box-shadow:none;
}
.auf-qcta--secondary.is-disabled .auf-qcta__icon{
	background:#eceef2;
	border-color:#dfe3ea;
	color:#a6adba;
}
.auf-qcta--secondary.is-disabled small{
	color:#b0b6c2 !important;
}
.auf-qcta__label{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:9px;
}
.auf-qcta__icon{
	width:25px;
	height:25px;
	flex:0 0 25px;
	border-radius:999px;
	background:#fff9e8;
	border:1px solid rgba(245,168,0,.34);
	color:#172033;
	display:flex;
	align-items:center;
	justify-content:center;
}
.auf-qcta__icon svg{
	width:18px;
	height:18px;
	fill:none;
	stroke:currentColor;
	stroke-width:2;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.auf-qpayments{
	margin-top:10px;
	padding:10px 12px 12px;
	border:1px solid #e7ebf1;
	border-radius:10px;
	background:#fff;
	box-shadow:0 8px 22px rgba(15,35,66,.045);
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:8px;
	text-align:center;
}
.auf-qpayments span{
	color:#667085;
	font-size:12px;
	font-weight:800;
	line-height:1.2;
}
.auf-qpayments img{
	display:block;
	width:min(100%,360px);
	height:auto;
	max-height:48px;
	object-fit:contain;
}
.auf-qpayments .auf-qklarna-logo{
	display:block;
	height:26px;
	width:auto;
	margin-top:2px;
	border-radius:4px;
}
.auf-prod__calc .kv-product-config,
.auf-prod__main .kv-product-config{
	margin:0 !important;
	padding:0 !important;
	border:0 !important;
	border-radius:0 !important;
	background:transparent !important;
	box-shadow:none !important;
}
.auf-prod__main .kv-product-config .kv-product-card{
	background:transparent !important;
	border:0 !important;
	box-shadow:none !important;
	padding:0 !important;
}
.auf-prod__main .kv-product-config li.tm-extra-product-options-field.tc-row{
	background:transparent !important;
	border:0 !important;
	box-shadow:none !important;
	border-radius:0 !important;
	padding:0 !important;
	margin:0 0 16px !important;
	display:grid !important;
	grid-template-columns:minmax(145px,.68fr) minmax(0,1fr) !important;
	gap:18px !important;
	align-items:center !important;
}
.auf-prod__main .kv-product-config .kv-label-section{
	position:relative !important;
	padding-left:34px !important;
	min-height:44px !important;
	display:flex !important;
	align-items:center !important;
}
.auf-prod__main .kv-product-config .kv-label-section::before{
	content:attr(data-kv-step);
	position:absolute;
	left:0;
	top:50%;
	width:22px;
	height:22px;
	border-radius:999px;
	background:#ffc107;
	color:#182234;
	display:flex;
	align-items:center;
	justify-content:center;
	transform:translateY(-50%);
	font-size:12px;
	font-weight:900;
	box-shadow:0 4px 11px rgba(245,168,0,.24);
}
.auf-prod__main .kv-product-config .kv-label-section > .tc-section-inner-wrap{
	justify-content:flex-start !important;
	align-items:center !important;
}
.auf-prod__main .kv-product-config .kv-label-section .tc-epo-label,
.auf-prod__main .kv-product-config .kv-label-section .tm-epo-element-label,
.auf-prod__main .kv-product-config .kv-label-section .tm-description,
.auf-prod__main .kv-product-config .kv-label-section .tm-element-description{
	color:#202b3d !important;
	font-size:13px !important;
	font-weight:900 !important;
	line-height:1.25 !important;
}
.auf-prod__main .kv-product-config .kv-control-section{
	min-width:0 !important;
}
.auf-prod__main .kv-product-config input[type="text"],
.auf-prod__main .kv-product-config input[type="number"],
.auf-prod__main .kv-product-config select{
	min-height:48px !important;
	border:1px solid #e4e8ef !important;
	border-radius:8px !important;
	background:#fff !important;
	box-shadow:0 6px 18px rgba(15,35,66,.04) !important;
	color:#1d2838 !important;
	font-weight:800 !important;
	text-align:center !important;
}
.auf-prod__main .kv-product-config .tmcp-field-wrap > label,
.auf-prod__main .kv-product-config .tmcp-field-wrap .tm-epo-field-label{
	min-height:48px !important;
	border:1px solid #e4e8ef !important;
	border-radius:8px !important;
	background:#fff !important;
	box-shadow:0 6px 18px rgba(15,35,66,.04) !important;
	color:#273244 !important;
	display:flex !important;
	align-items:center !important;
	justify-content:center !important;
	font-size:13px !important;
	font-weight:800 !important;
	text-align:center !important;
	transition:border-color .16s ease, box-shadow .16s ease, background .16s ease !important;
}
.auf-prod__main .kv-product-config .tmcp-field-wrap.tc-active > label,
.auf-prod__main .kv-product-config .tmcp-field-wrap.tc-active .tm-epo-field-label,
.auf-prod__main .kv-product-config .tmcp-field-wrap input:checked + label{
	border-color:#ffc107 !important;
	background:#fff9e8 !important;
	box-shadow:0 0 0 1px rgba(255,193,7,.42), 0 8px 20px rgba(245,168,0,.12) !important;
	color:#1d2838 !important;
}
.auf-prod__main .kv-product-config .cpf-upload-container,
.auf-prod__main .kv-product-config .tmcp-field-wrap.cpf-upload-container,
.auf-prod__main .kv-product-config .tmcp-field-wrap:has(input[type="file"]){
	border:1px dashed #d9dee8 !important;
	border-radius:10px !important;
	background:#fff !important;
	padding:18px !important;
	min-height:92px !important;
	display:flex !important;
	align-items:center !important;
	justify-content:center !important;
	text-align:center !important;
}
.auf-prod__main .kv-product-config .kv-buybar-request{
	width:100% !important;
	min-height:58px !important;
	border-radius:9px !important;
	background:linear-gradient(180deg,#ffcf22 0%,#ffb400 100%) !important;
	border:1px solid rgba(202,141,0,.36) !important;
	color:#172033 !important;
	font-size:17px !important;
	font-weight:900 !important;
	box-shadow:0 12px 24px rgba(245,168,0,.22) !important;
}
.auf-prod__main .kv-product-config .kv-buybar-cart-btn,
.auf-prod__main .kv-product-config .single_add_to_cart_button{
	border-radius:9px !important;
	background:#fff !important;
	border:1px solid #cfd6e3 !important;
	color:#172033 !important;
	font-weight:900 !important;
}
.auf-prod__calc:empty{ display:none; }
.auf-prod-lightbox{
	position:fixed;
	inset:0;
	z-index:999999;
	background:rgba(5,10,20,.86);
	display:flex;
	align-items:center;
	justify-content:center;
	padding:28px;
}
.auf-prod-lightbox__img{
	display:block;
	max-width:min(1080px,96vw);
	max-height:92vh;
	width:auto;
	height:auto;
	object-fit:contain;
	border-radius:14px;
	background:#fff;
	box-shadow:0 24px 80px rgba(0,0,0,.34);
}
.auf-prod-lightbox__close{
	position:absolute;
	top:18px;
	right:18px;
	width:44px;
	height:44px;
	padding:0;
	border:1px solid rgba(255,255,255,.2);
	border-radius:999px;
	background:rgba(255,255,255,.92);
	color:var(--auf-navy);
	font-size:30px;
	line-height:38px;
	cursor:pointer;
	appearance:none;
}
.auf-prod-lightbox__close:hover,
.auf-prod-lightbox__close:focus-visible{
	background:#fff;
	color:var(--auf-gold);
	outline:3px solid rgba(255,255,255,.28);
	outline-offset:2px;
}
.auf-prod-lightbox__close:active{
	background:#fff !important;
	color:var(--auf-gold) !important;
}

@media (max-width:900px){
	.auf-prod__inner{ grid-template-columns:1fr; gap:24px; }
	.auf-prod__media{ position:static; }
	.auf-prod__main--guided .auf-prod__title{
		font-size:clamp(28px,7vw,38px);
	}
	.auf-prod__main .kv-product-config li.tm-extra-product-options-field.tc-row{
		grid-template-columns:1fr !important;
		gap:8px !important;
		margin-bottom:18px !important;
	}
	.auf-prod__main .kv-product-config .kv-label-section{
		min-height:auto !important;
	}
	.auf-prod__main .kv-product-config .kv-label-section::before{
		top:0;
		transform:none;
	}
	.auf-prod__main .kv-product-config .kv-label-section > .tc-section-inner-wrap{
		min-height:24px !important;
	}
	.auf-qrow{
		grid-template-columns:24px minmax(0,1fr);
		gap:8px 12px;
		align-items:start;
	}
	.auf-qcontrol{
		grid-column:2;
	}
	.auf-quote-config{
		padding:16px 14px 18px;
		border-radius:12px;
	}
}
@media (max-width:600px){
	.auf-prod__arrow{
		width:38px;
		height:38px;
	}
	.auf-prod__arrow--prev{ left:10px; }
	.auf-prod__arrow--next{ right:10px; }
	.auf-prod__thumb{
		width:100%;
		height:auto;
		flex-basis:auto;
	}
	.auf-prod__badge{ top:10px; left:10px; }
	.auf-prod__count{ right:10px; bottom:10px; }
	.auf-prod__zoomHint{
		left:10px;
		bottom:10px;
		max-width:calc(100% - 92px);
		white-space:nowrap;
		overflow:hidden;
		text-overflow:ellipsis;
	}
	.auf-prod__trust{
		grid-template-columns:repeat(2,minmax(0,1fr));
		padding:20px;
		gap:20px 14px;
	}
	.auf-prod__trustItem{
		grid-template-columns:36px minmax(0,1fr);
		gap:10px;
	}
	.auf-prod__trustIcon{
		width:36px;
		height:36px;
		flex-basis:36px;
	}
	.auf-prod__trustIcon svg{
		width:20px;
		height:20px;
	}
	.auf-prod__trustItem strong{
		font-size:12.5px;
	}
	.auf-prod__trustItem small{
		font-size:11.5px;
	}
	.auf-prod__trustRating{
		justify-content:center;
		flex-wrap:wrap;
		gap:8px 10px;
	}
	.auf-prod__ratingText{
		justify-content:center;
	}
	.auf-prod__quickTrust{
		gap:8px 10px;
		font-size:11.5px;
	}
	.auf-prod__quickTrust span::before{
		width:14px;
		height:14px;
		flex-basis:14px;
	}
	.auf-prod__commerceInfo{
		grid-template-columns:1fr;
		gap:8px;
		margin-bottom:12px;
	}
	.auf-prod__topRating{
		justify-content:center;
		flex-wrap:wrap;
		min-height:46px;
		padding:8px 10px;
	}
	.auf-prod__delivery{
		min-height:50px;
		padding:8px 11px;
	}
	.auf-prod__madeNote{
		padding:14px;
	}
	.auf-prod__madeNote span{
		display:block;
		margin:6px 0 0 26px;
	}
	.auf-prod__main .kv-product-config input[type="text"],
	.auf-prod__main .kv-product-config input[type="number"],
	.auf-prod__main .kv-product-config select,
	.auf-prod__main .kv-product-config .tmcp-field-wrap > label,
	.auf-prod__main .kv-product-config .tmcp-field-wrap .tm-epo-field-label{
		min-height:46px !important;
		font-size:12.5px !important;
	}
	.auf-qrow{
		gap:7px 10px;
	}
	.auf-qchoices{
		grid-template-columns:1fr;
		gap:7px;
	}
	.auf-qchecks{
		grid-template-columns:repeat(3,minmax(0,1fr));
		gap:7px;
	}
	.auf-qchecks .auf-metal{
		min-height:44px;
		padding:0 8px;
		font-size:12px;
	}
	.auf-qchoices--shape{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
	.auf-qchoices--shape button{
		justify-content:flex-start;
		padding:0 10px;
	}
	.auf-qsize{
		grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr);
		gap:8px;
	}
	.auf-qselect,
	.auf-qchoices button,
	.auf-qqty button,
	.auf-qqty input,
	.auf-qqty select,
	.auf-qsize input{
		min-height:44px;
		font-size:12.5px;
	}
	.auf-qprice{
		grid-template-columns:1fr;
		padding:10px;
	}
	.auf-qprice > div{
		min-height:58px;
		padding:9px 10px;
	}
	.auf-qpayments{
		padding:9px 10px 10px;
	}
	.auf-qpayments img{
		max-height:38px;
	}
	.auf-qcta{
		font-size:15px;
		min-height:56px;
		padding:0 38px 0 18px;
	}
	.auf-prod-lightbox{ padding:16px; }
	.auf-prod-lightbox__close{ top:12px; right:12px; }
}

/* ---- Baustein 3: "So funktioniert's" – 4 Schritte ---- */
.auf-steps{ --snavy:#0b1830; --sgold:#f0b800; --sink:#6b7480; --sline:#e6e9ef; }
.auf-steps__inner{ max-width:1220px; margin:0 auto; padding:4px 22px 48px; }
.auf-steps__card{
	border:1px solid var(--sline);
	border-radius:20px;
	background:#fff;
	padding:34px 30px 38px;
	box-shadow:0 1px 3px rgba(11,24,48,.04);
}
.auf-steps__title{
	text-align:center;
	font-size:22px;
	font-weight:800;
	color:var(--snavy);
	margin:0 0 30px;
	line-height:1.3;
}
.auf-steps__grid{ display:flex; align-items:flex-start; justify-content:center; gap:6px; }
.auf-steps__item{
	flex:1 1 0; min-width:0;
	display:flex; flex-direction:column; align-items:center;
	text-align:center; padding:0 8px;
}
.auf-steps__num{
	width:34px; height:34px; flex:0 0 34px;
	border-radius:999px;
	background:var(--sgold); color:#1a2438;
	font-weight:800; font-size:15px; line-height:1;
	display:flex; align-items:center; justify-content:center;
	box-shadow:0 2px 7px rgba(240,184,0,.45);
}
.auf-steps__body{ display:flex; flex-direction:column; align-items:center; }
.auf-steps__name{ margin:16px 0 8px; font-size:15px; font-weight:800; color:var(--snavy); line-height:1.3; }
.auf-steps__desc{ font-size:13px; font-weight:500; color:var(--sink); line-height:1.5; max-width:190px; }
.auf-steps__connector{
	flex:0 0 34px; align-self:center; margin-top:8px;
	width:34px; height:34px; border-radius:999px; background:#f1f3f7;
	display:flex; align-items:center; justify-content:center;
}
.auf-steps__connector svg{ width:16px; height:16px; fill:none; stroke:#9aa3b1; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
@media (max-width:760px){
	.auf-steps__inner{ padding:4px 16px 40px; }
	.auf-steps__card{ padding:24px 18px 26px; }
	.auf-steps__title{ font-size:19px; margin:0 0 18px; }
	.auf-steps__grid{ flex-direction:column; align-items:stretch; gap:2px; }
	.auf-steps__item{ flex-direction:row; align-items:flex-start; text-align:left; gap:14px; padding:12px 2px; }
	.auf-steps__num{ margin-top:2px; }
	.auf-steps__body{ align-items:flex-start; }
	.auf-steps__name{ margin:0 0 4px; }
	.auf-steps__desc{ max-width:none; }
	.auf-steps__connector{ transform:rotate(90deg); margin:0 auto; width:26px; height:26px; flex-basis:26px; }
	.auf-steps__connector svg{ width:14px; height:14px; }
}

/* ---- Baustein 4: Produktinfo-Tabs ---- */
.auf-info{ --inavy:#0b1830; --igold:#f0b800; --iink:#6b7480; --iline:#e6e9ef; }
.auf-info__inner{ max-width:1220px; margin:0 auto; padding:4px 22px 52px; }
.auf-info__card{
	border:1px solid var(--iline);
	border-radius:20px;
	background:#fff;
	box-shadow:0 1px 3px rgba(11,24,48,.04);
	overflow:hidden;
}
.auf-info__tabs{
	display:flex; gap:6px;
	padding:6px 22px 0;
	border-bottom:1px solid var(--iline);
	overflow-x:auto;
	scrollbar-width:none;
}
.auf-info__tabs::-webkit-scrollbar{ display:none; }
.auf-info__tab{
	flex:0 0 auto;
	background:none; border:0; cursor:pointer;
	padding:16px 10px 15px;
	font-size:15px; font-weight:700; color:var(--iink);
	border-bottom:3px solid transparent;
	white-space:nowrap;
	transition:color .15s ease, border-color .15s ease;
}
.auf-info__tab,
.auf-info__tab:hover,
.auf-info__tab:focus,
.auf-info__tab:focus-visible,
.auf-info__tab:active,
.auf-info__tab.is-active{
	background:none !important; background-color:transparent !important;
	box-shadow:none !important; outline:none !important;
}
.auf-info__tab:hover{ color:var(--inavy) !important; }
.auf-info__tab.is-active{ color:var(--inavy) !important; border-bottom-color:var(--igold); }
/* --- Elementor-Kit-Hover (Magenta/Accent) auf dieser Seite global neutralisieren --- */
.auf-bc a:hover, .auf-bc a:focus,
.auf-steps a:hover, .auf-steps a:focus,
.auf-prod a:hover, .auf-prod a:focus,
.auf-info a:hover, .auf-info a:focus,
.auf-price a:hover, .auf-price a:focus,
.auf-info button:hover, .auf-info button:focus{
	color:var(--inavy) !important;
	-webkit-text-fill-color:var(--inavy) !important;
}
/* Buttons/CTAs behalten ihre eigene Textfarbe (weiss) beim Hover */
.auf-qcta:hover, .auf-qcta:hover *,
.auf-info__refer:hover{ -webkit-text-fill-color:currentColor !important; }
.auf-price__cta:hover{ color:#fff !important; -webkit-text-fill-color:#fff !important; }
.auf-info__panels{ padding:30px 30px 34px; }
.auf-info__panel{ display:none; }
.auf-info__panel.is-active{ display:block; animation:aufInfoFade .25s ease; }
@keyframes aufInfoFade{ from{ opacity:0; transform:translateY(4px); } to{ opacity:1; transform:none; } }
.auf-info__split{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:40px; align-items:start; }
.auf-info__h{ font-size:21px; font-weight:800; color:var(--inavy); margin:0 0 12px; line-height:1.3; }
.auf-info__lead{ font-size:14px; font-weight:500; color:var(--iink); line-height:1.6; margin:0 0 18px; }
.auf-info__checks{ list-style:none; margin:0 0 22px; padding:0; display:flex; flex-direction:column; gap:11px; }
.auf-info__checks li{ display:flex; align-items:center; gap:11px; font-size:14px; font-weight:600; color:#2b3543; }
.auf-info__check{
	flex:0 0 22px; width:22px; height:22px; border-radius:999px;
	background:var(--igold); display:flex; align-items:center; justify-content:center;
}
.auf-info__check svg{ width:12px; height:12px; fill:none; stroke:#1a2438; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
.auf-info__btn{
	display:inline-block; text-decoration:none;
	padding:12px 22px; border-radius:10px;
	border:1px solid #d3d8e0; background:#fff;
	font-size:14px; font-weight:700; color:var(--inavy);
	transition:border-color .15s ease, background .15s ease;
}
.auf-info__btn:hover{ border-color:var(--igold); background:#fffdf5; }
/* Formen-Grid */
.auf-info__shapes{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.auf-info__shape{
	display:flex; flex-direction:column; align-items:center; text-align:center;
	padding:16px 8px 14px; border:1px solid var(--iline); border-radius:14px;
	background:#fafbfc; transition:box-shadow .15s ease, transform .15s ease;
}
.auf-info__shape:hover{ box-shadow:0 6px 16px rgba(11,24,48,.08); transform:translateY(-2px); }
.auf-info__shapeIcon svg{ width:42px; height:42px; fill:#eef1f6; stroke:var(--inavy); stroke-width:1.6; stroke-linejoin:round; }
.auf-info__shapeName{ margin-top:9px; font-size:13px; font-weight:800; color:var(--inavy); }
.auf-info__shapeSub{ margin-top:3px; font-size:11.5px; font-weight:500; color:var(--iink); line-height:1.4; }
.auf-info__shapes--wide{ grid-template-columns:repeat(4,minmax(0,1fr)); }
/* Beispiel-Bilder-Galerie */
.auf-info__gallery{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.auf-info__gimg{ margin:0; border-radius:14px; overflow:hidden; border:1px solid var(--iline);
	background:#fafbfc; box-shadow:0 4px 12px rgba(11,24,48,.06); transition:box-shadow .18s ease, transform .18s ease; }
.auf-info__gimg:hover{ box-shadow:0 10px 22px rgba(11,24,48,.14); transform:translateY(-2px); }
.auf-info__gbtn{ display:block; width:100%; padding:0; border:0; background:none; cursor:zoom-in; }
.auf-info__gimg img{ display:block; width:100%; aspect-ratio:1/1; object-fit:cover; }
@media (max-width:600px){ .auf-info__gallery{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; } }
/* Beliebt fuer */
.auf-info__uses{ margin-top:20px; }
.auf-info__usesLabel{ display:block; font-size:12px; font-weight:700; color:var(--iink); margin-bottom:10px; }
.auf-info__usesRow{ display:flex; flex-wrap:wrap; gap:16px; }
.auf-info__use{ flex:1 1 0; min-width:70px; display:flex; flex-direction:column; align-items:center; text-align:center; gap:6px; }
.auf-info__useIcon svg{ width:26px; height:26px; fill:none; stroke:var(--inavy); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.auf-info__use small{ font-size:11.5px; font-weight:600; color:var(--iink); line-height:1.3; }
/* Fakten (Preise) */
.auf-info__facts{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-bottom:18px; }
.auf-info__fact{ padding:16px 18px; border:1px solid var(--iline); border-radius:14px; background:#fafbfc; }
.auf-info__fact strong{ display:block; font-size:15px; font-weight:800; color:var(--inavy); margin-bottom:4px; }
.auf-info__fact span{ font-size:13px; font-weight:500; color:var(--iink); line-height:1.5; }
.auf-info__hint{ font-size:13.5px; font-weight:500; color:var(--iink); line-height:1.6; }
.auf-info__hint a{ color:var(--inavy); font-weight:700; }
/* Spec-Tabelle */
.auf-info__spec{ width:100%; border-collapse:collapse; font-size:14px; }
.auf-info__spec th, .auf-info__spec td{ text-align:left; padding:13px 14px; border-bottom:1px solid var(--iline); vertical-align:top; }
.auf-info__spec th{ width:190px; font-weight:800; color:var(--inavy); }
.auf-info__spec td{ font-weight:500; color:#3a4452; }
.auf-info__spec tr:last-child th, .auf-info__spec tr:last-child td{ border-bottom:0; }
/* FAQ */
.auf-info__faq{ display:flex; flex-direction:column; gap:10px; }
.auf-info__q{ border:1px solid var(--iline); border-radius:12px; background:#fafbfc; overflow:hidden; }
.auf-info__q summary{
	list-style:none; cursor:pointer;
	display:flex; align-items:center; justify-content:space-between; gap:12px;
	padding:15px 18px; font-size:14.5px; font-weight:700; color:var(--inavy);
}
.auf-info__q summary::-webkit-details-marker{ display:none; }
.auf-info__qMark svg{ width:18px; height:18px; fill:none; stroke:var(--iink); stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; transition:transform .2s ease; }
.auf-info__q[open] .auf-info__qMark svg{ transform:rotate(180deg); }
.auf-info__qBody{ padding:0 18px 16px; font-size:13.5px; font-weight:500; color:var(--iink); line-height:1.6; }
@media (max-width:760px){
	.auf-info__inner{ padding:4px 16px 44px; }
	.auf-info__tabs{ padding:6px 14px 0; }
	.auf-info__tab{ font-size:14px; padding:14px 8px 13px; }
	.auf-info__panels{ padding:24px 18px 28px; }
	.auf-info__split{ grid-template-columns:1fr; gap:28px; }
	.auf-info__shapes, .auf-info__shapes--wide{ grid-template-columns:repeat(2,minmax(0,1fr)); }
	.auf-info__facts{ grid-template-columns:1fr; }
	.auf-info__spec th{ width:130px; }
	.auf-info__usesRow{ gap:10px; }
}

/* ---- Baustein 5: Preisuebersicht ---- */
.auf-price{ --pnavy:#0b1830; --pgold:#f0b800; --pink:#6b7480; --pline:#e6e9ef; }
.auf-price__inner{ max-width:1220px; margin:0 auto; padding:4px 22px 56px; }
.auf-price__card{
	border:1px solid var(--pline);
	border-radius:20px;
	background:#fff;
	box-shadow:0 1px 3px rgba(11,24,48,.04);
	padding:30px 30px 26px;
}
.auf-price__title{ font-size:21px; font-weight:800; color:var(--pnavy); margin:0 0 6px; line-height:1.3; }
.auf-price__sub{ font-size:13px; font-weight:500; color:var(--pink); margin:0 0 22px; }
.auf-price__scroll{ padding-top:20px; }
/* Grid statt Tabelle -> weiche, durchgehend gerundete Empfehlungsspalte */
.auf-price__grid{
	position:relative;
	display:grid;
	grid-template-columns:minmax(0,1.4fr) repeat(6,minmax(0,1fr));
	align-items:stretch;
	row-gap:0; column-gap:0;
}
/* Hintergrund-Layer */
.auf-price__hband{
	grid-column:1 / -1; grid-row:1;
	background:#f6f7fa; border-radius:12px; z-index:0;
}
.auf-price__hl{
	background:#fffdf4;
	border:1.5px solid #f2cf6a;
	border-radius:16px;
	box-shadow:0 10px 26px rgba(240,184,0,.16);
	margin:-9px 0;              /* leicht ueber die Kopfzeile hinausragen */
	z-index:0;
	position:relative;
}
.auf-price__badge{
	position:absolute; top:-13px; left:50%; transform:translateX(-50%);
	display:inline-flex; align-items:center; gap:5px; white-space:nowrap;
	background:var(--pgold); color:#1a2438;
	padding:5px 12px; border-radius:999px;
	font-size:11px; font-weight:800; line-height:1;
	box-shadow:0 4px 10px rgba(240,184,0,.4);
	z-index:2;
}
.auf-price__badge svg{ width:12px; height:12px; fill:#1a2438; stroke:none; }
/* Zellen (transparent, liegen ueber den Hintergrund-Layern) */
.auf-price__hc, .auf-price__c, .auf-price__rh{
	position:relative; z-index:1;
	display:flex; align-items:center;
	padding:17px 16px;
}
.auf-price__hc{ justify-content:center; text-align:center; font-size:13px; font-weight:700; color:var(--pink); padding-top:15px; padding-bottom:15px; }
.auf-price__hc--label{ justify-content:flex-start; }
.auf-price__hc.is-featured{ color:var(--pnavy); font-weight:800; padding-top:22px; flex-direction:column; gap:3px; }
.auf-price__best{ font-size:9.5px; font-weight:800; letter-spacing:.2px; text-transform:uppercase; color:#b98900; }
.auf-price__rh{ justify-content:flex-start; font-size:14px; font-weight:600; color:#3a4452; white-space:nowrap; }
.auf-price__c{ justify-content:center; text-align:center; font-size:14px; font-weight:500; color:#3a4452; }
.auf-price__c.is-request{ color:#9aa3b1; font-style:italic; }
.auf-price__c.is-featured strong{ color:var(--pnavy); font-weight:800; font-size:15px; }
/* feine Zeilentrenner (nicht in der Gold-Spalte, nicht in der letzten Zeile) */
.auf-price__rh:not(.is-lastrow), .auf-price__c:not(.is-lastrow):not(.is-featured){
	box-shadow:inset 0 -1px 0 #f0f2f6;
}
.auf-price__dot{
	display:inline-block; width:13px; height:13px; margin-right:9px; flex:0 0 13px;
	border:1.5px solid #d7dde5; border-radius:50%;
}
.auf-price__foot{
	display:flex; align-items:center; justify-content:space-between; gap:20px;
	flex-wrap:wrap; margin-top:20px;
	border-top:1px solid var(--pline); padding-top:18px;
}
.auf-price__note{ display:flex; align-items:flex-start; gap:10px; margin:0; flex:1 1 340px; font-size:12.5px; font-weight:500; color:var(--pink); line-height:1.55; }
.auf-price__noteIcon{ flex:0 0 20px; margin-top:1px; }
.auf-price__noteIcon svg{ width:20px; height:20px; fill:none; stroke:var(--pgold); stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.auf-price__cta{
	flex:0 0 auto; display:inline-flex; align-items:center; gap:8px;
	background:var(--pnavy); color:#fff !important; text-decoration:none;
	padding:13px 22px; border-radius:10px; font-size:14px; font-weight:800;
	transition:background .15s ease;
}
.auf-price__cta:hover{ background:#17233b; }
@media (max-width:760px){
	.auf-price__inner{ padding:4px 16px 46px; }
	.auf-price__card{ padding:24px 12px 20px; }
	.auf-price__title{ font-size:18px; }
	.auf-price__foot{ flex-direction:column; align-items:stretch; }
	.auf-price__cta{ justify-content:center; }
	.auf-price__scroll{
		overflow-x:auto;
		overflow-y:visible;
		margin:0 -12px;
		padding:20px 12px 12px;
		scrollbar-width:thin;
		scrollbar-color:#c7ccd5 #f2f4f7;
		overscroll-behavior-inline:contain;
		-webkit-overflow-scrolling:touch;
	}
	.auf-price__scroll::-webkit-scrollbar{ height:6px; }
	.auf-price__scroll::-webkit-scrollbar-track{ background:#f2f4f7; border-radius:999px; }
	.auf-price__scroll::-webkit-scrollbar-thumb{ background:#c7ccd5; border-radius:999px; }
	.auf-price__grid{
		min-width:700px;
		grid-template-columns:100px repeat(6,100px);
	}
	.auf-price__hc, .auf-price__c, .auf-price__rh{ padding:14px 10px; font-size:13px; }
	.auf-price__c.is-featured strong{ font-size:14px; }
	.auf-price__rh{ font-size:13px; }
	.auf-price__dot{ display:none; }
	.auf-price__badge{ font-size:10px; padding:4px 9px; }
}
@media (max-width:420px){
	.auf-price__hc, .auf-price__c, .auf-price__rh{ padding:13px 9px; }
}

/* ---- Baustein 6: Kundenstimmen ---- */
.auf-rev{ --rnavy:#0b1830; --rgold:#f0b800; --rink:#6b7480; --rline:#e6e9ef; }
.auf-rev__inner{ max-width:1220px; margin:0 auto; padding:4px 22px 56px; }
/* Dunkler Hero-Banner */
.auf-rev__hero{
	display:flex; align-items:center; justify-content:space-between; gap:28px; flex-wrap:wrap;
	background:linear-gradient(135deg,#0d1b33 0%,#132844 60%,#0b1830 100%);
	border-radius:20px;
	padding:30px 34px;
	color:#fff;
	box-shadow:0 14px 40px rgba(11,24,48,.22);
}
.auf-rev__eyebrow{
	display:inline-block; font-size:12px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase;
	color:var(--rgold); margin-bottom:8px;
}
.auf-rev__heroTitle{ font-size:24px; font-weight:800; color:#fff; margin:0 0 6px; line-height:1.25; max-width:560px; }
.auf-rev__heroLead{ font-size:14px; font-weight:500; color:#c5cede; margin:0; }
.auf-rev__score{
	flex:0 0 auto; text-align:center;
	background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.12);
	border-radius:16px; padding:16px 26px; min-width:180px;
}
.auf-rev__scoreNum{ display:block; font-size:32px; font-weight:900; color:#fff; line-height:1; }
.auf-rev__scoreNum span{ font-size:16px; font-weight:700; color:#aab4c6; }
.auf-rev__scoreMeta{ display:block; margin-top:7px; font-size:11.5px; font-weight:600; color:#aab4c6; }
/* Sterne */
.auf-rev__stars{ display:inline-flex; gap:2px; margin:7px 0 0; }
.auf-rev__star{ width:17px; height:17px; fill:#dfe3ea; }
.auf-rev__star.is-on{ fill:var(--rgold); }
.auf-rev__score .auf-rev__star{ fill:rgba(255,255,255,.22); }
.auf-rev__score .auf-rev__star.is-on{ fill:var(--rgold); }
/* Kartenraster */
.auf-rev__grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:22px; }
.auf-rev__card{
	border:1px solid var(--rline); border-radius:16px; background:#fff;
	padding:20px 20px 18px; display:flex; flex-direction:column;
	box-shadow:0 1px 3px rgba(11,24,48,.04);
	transition:box-shadow .15s ease, transform .15s ease;
}
.auf-rev__card:hover{ box-shadow:0 10px 26px rgba(11,24,48,.09); transform:translateY(-2px); }
.auf-rev__cardTop{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
.auf-rev__card .auf-rev__stars{ margin:0; }
.auf-rev__verified{
	display:inline-flex; align-items:center; gap:4px;
	font-size:11px; font-weight:800; color:#1c7a3f;
}
.auf-rev__verified svg{ width:13px; height:13px; fill:none; stroke:#2f9e57; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
.auf-rev__text{ font-size:14px; font-weight:500; color:#2b3543; line-height:1.6; margin:13px 0 16px; flex:1 1 auto; }
.auf-rev__author{ display:flex; align-items:center; gap:11px; }
.auf-rev__avatar{
	flex:0 0 38px; width:38px; height:38px; border-radius:999px;
	background:var(--rnavy); color:#fff; font-weight:800; font-size:15px;
	display:flex; align-items:center; justify-content:center;
}
.auf-rev__authorMeta{ display:flex; flex-direction:column; line-height:1.3; }
.auf-rev__authorMeta strong{ font-size:13.5px; font-weight:800; color:var(--rnavy); }
.auf-rev__authorMeta small{ font-size:12px; font-weight:500; color:var(--rink); }
.auf-rev__disclaimer{ margin:16px 0 0; text-align:center; font-size:11.5px; font-weight:500; color:#9aa3b1; }
@media (max-width:900px){
	.auf-rev__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px){
	.auf-rev__inner{ padding:4px 16px 46px; }
	.auf-rev__hero{ padding:24px 20px; flex-direction:column; align-items:flex-start; }
	.auf-rev__heroTitle{ font-size:20px; }
	.auf-rev__score{ align-self:stretch; }
	.auf-rev__grid{ grid-template-columns:1fr; }
}

/* ---- Feinschliff: Eyebrow-Labels + Sektions-Rhythmus (#9) ---- */
.auf-eyebrow{
	display:inline-block; margin-bottom:8px;
	font-size:12px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase;
	color:#c79a12;
}
.auf-eyebrow--center{ display:block; text-align:center; }
/* dezent abwechselnde Baender fuer ruhigen Lesefluss */
.auf-steps, .auf-price{ background:#f7f8fb; }
.auf-steps .auf-steps__inner{ padding-top:34px; }
.auf-price .auf-price__inner{ padding-top:34px; }

/* ---- Upload-Hinweis (#7) ---- */
.auf-qhint{
	display:flex; align-items:flex-start; gap:8px; margin-top:10px;
	font-size:12px; font-weight:600; color:#77808f; line-height:1.45;
}
.auf-qhint svg{ width:15px; height:15px; flex:0 0 15px; margin-top:1px; fill:none; stroke:#f0b800; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }

/* ---- Sticky-CTA-Leiste (#2) ---- */
.auf-sticky{
	position:fixed; left:0; right:0; bottom:0; z-index:9999;
	background:#0b1830; color:#fff;
	transform:translateY(110%); transition:transform .28s ease;
	box-shadow:0 -8px 24px rgba(11,24,48,.22);
	padding-bottom:env(safe-area-inset-bottom);
}
.auf-sticky.is-visible{ transform:translateY(0); }
.auf-sticky__inner{
	max-width:1220px; margin:0 auto; padding:11px 22px;
	display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.auf-sticky__info{ display:flex; flex-direction:column; line-height:1.3; min-width:0; }
.auf-sticky__info strong{ font-size:14px; font-weight:800; color:#fff; }
.auf-sticky__info span{ font-size:12.5px; font-weight:600; color:#aab4c6; }
.auf-sticky__actions{ display:flex; align-items:center; gap:10px; flex:0 0 auto; }
.auf-sticky__btn{
	display:inline-flex; align-items:center; gap:6px; white-space:nowrap;
	padding:11px 18px; border-radius:10px; font-size:14px; font-weight:800; text-decoration:none;
	transition:background .15s ease, border-color .15s ease;
}
.auf-sticky__btn--ghost{ color:#fff !important; border:1px solid rgba(255,255,255,.28); }
.auf-sticky__btn--ghost:hover{ border-color:rgba(255,255,255,.6); }
.auf-sticky__btn--primary{
	color:#1a2438 !important;
	background:linear-gradient(90deg,#f7c600,#f5a800);
}
.auf-sticky__btn--primary:hover{ background:linear-gradient(90deg,#ffd21a,#ffb61f); }
@media (max-width:600px){
	.auf-sticky__inner{ padding:9px 14px; gap:10px; }
	.auf-sticky__info strong{ font-size:13px; }
	.auf-sticky__info span{ font-size:11.5px; }
	.auf-sticky__btn{ padding:10px 13px; font-size:13px; }
	.auf-sticky__btn--ghost{ display:none; } /* auf Mobil nur der Haupt-CTA */
}
