:root{
    --illco-opc-ink:#18232c;
    --illco-opc-muted:#60717d;
    --illco-opc-line:#dbe3e7;
    --illco-opc-blue:#89cff0;
    --illco-opc-dark:#17212a;
    --illco-opc-orange:#f06423;
}
.illco-opc-container{width:min(1420px,calc(100% - 40px));margin-inline:auto}
.illco-opc-eyebrow{display:block;margin-bottom:.55rem;font-size:.76rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--illco-opc-accent,var(--illco-opc-blue))}
.illco-opc-head{max-width:820px;margin-bottom:1.8rem}
.illco-opc-head h2{margin:0;color:inherit;font-size:clamp(1.8rem,3vw,3rem);line-height:1.05;letter-spacing:-.035em}
.illco-opc-head p{margin:.75rem 0 0;color:inherit;opacity:.72;font-size:1rem;line-height:1.6}
.illco-opc-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:44px;padding:.72rem 1.05rem;border-radius:.65rem;background:var(--illco-opc-accent,var(--illco-opc-blue));color:#10212b!important;font-weight:800;text-decoration:none!important;box-shadow:0 9px 22px rgba(10,29,40,.14)}
.illco-opc-button:hover{transform:translateY(-1px);filter:brightness(.97)}
.illco-opc-button--secondary{background:transparent;color:inherit!important;border:1px solid currentColor;box-shadow:none}
.illco-opc-placeholder{display:grid;place-items:center;width:100%;min-height:150px;border:2px dashed #a8bac4;border-radius:.8rem;color:#60717d;background:#f5f8f9;font-weight:700}

/* Banner */
.illco-opc-banner{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(220px,.95fr);min-height:var(--illco-opc-min-height,340px);overflow:hidden;border:1px solid color-mix(in srgb,var(--illco-opc-text) 14%,transparent);border-radius:1.15rem;background:var(--illco-opc-bg);color:var(--illco-opc-text)!important;text-decoration:none!important;box-shadow:0 18px 42px rgba(18,37,49,.12);isolation:isolate}
.illco-opc-banner__copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(1.35rem,3vw,3rem)}
.illco-opc-banner h2{margin:0;font-size:clamp(1.65rem,3.5vw,3.8rem);line-height:.98;letter-spacing:-.05em;color:inherit}
.illco-opc-banner p{max-width:650px;margin:.9rem 0 0;color:inherit;opacity:.76;line-height:1.55}
.illco-opc-banner__prices{display:flex;align-items:baseline;flex-wrap:wrap;gap:.75rem;margin:1.1rem 0}
.illco-opc-banner__prices strong{font-size:clamp(1.45rem,2.4vw,2.25rem);line-height:1}
.illco-opc-banner__prices del{opacity:.58}
.illco-opc-banner__media{position:relative;z-index:1;display:grid;place-items:center;min-width:0;min-height:0;padding:1rem}
.illco-opc-banner__media picture{display:block;width:100%;height:100%;min-height:0}
.illco-opc-banner__media img{display:block;width:100%!important;height:100%!important;max-height:var(--illco-opc-min-height,340px);object-fit:var(--illco-opc-image-fit,contain)!important;object-position:center;background:transparent!important}
.illco-opc-badge{position:absolute;top:1rem;right:1rem;display:inline-flex;align-items:center;justify-content:center;max-width:150px;padding:.55rem .75rem;border-radius:999px;background:var(--illco-opc-accent);color:#10212b;font-size:.8rem;font-weight:900;text-align:center}
.illco-opc-banner--image-left .illco-opc-banner__media{order:-1}
.illco-opc-banner--image-top{grid-template-columns:1fr;grid-template-rows:minmax(160px,.9fr) auto}
.illco-opc-banner--image-top .illco-opc-banner__media{order:-1}
.illco-opc-banner--image-background{grid-template-columns:1fr}
.illco-opc-banner--image-background .illco-opc-banner__media{position:absolute;inset:0;padding:0;z-index:-1}
.illco-opc-banner--image-background .illco-opc-banner__media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--illco-opc-bg) 12%,color-mix(in srgb,var(--illco-opc-bg) 76%,transparent) 55%,transparent)}
.illco-opc-banner--image-background .illco-opc-banner__media img{max-height:none;object-fit:cover!important}
.illco-opc-banner--compact{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(130px,.9fr) auto}
.illco-opc-banner--compact .illco-opc-banner__media{order:-1;padding:.75rem}
.illco-opc-banner--compact .illco-opc-banner__copy{justify-content:flex-start;padding:1rem 1.15rem 1.25rem}
.illco-opc-banner--compact h2{font-size:clamp(1.25rem,2vw,1.8rem);line-height:1.05}
.illco-opc-banner--compact p{font-size:.9rem;margin-top:.55rem}
.illco-opc-banner--compact .illco-opc-banner__prices{margin:.7rem 0}
.illco-opc-banner--compact .illco-opc-banner__prices strong{font-size:1.3rem}
.illco-opc-banner--hero{min-height:max(var(--illco-opc-min-height),440px);background:linear-gradient(135deg,var(--illco-opc-bg),color-mix(in srgb,var(--illco-opc-bg) 85%,#000))}
.illco-opc-banner--split{grid-template-columns:1fr 1fr}

/* USP */
.illco-opc-usp{padding:1rem 0;border-block:1px solid var(--illco-opc-line);background:#fff;color:var(--illco-opc-ink)}
.illco-opc-usp--dark{background:var(--illco-opc-dark);color:#fff;border-color:transparent}
.illco-opc-usp--blue{background:#eaf7fd;color:var(--illco-opc-ink);border-color:#cfe8f4}
.illco-opc-usp ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}
.illco-opc-usp li{min-width:0;border-right:1px solid color-mix(in srgb,currentColor 14%,transparent)}
.illco-opc-usp li:last-child{border-right:0}
.illco-opc-usp li>a,.illco-opc-usp li>div{display:flex;align-items:center;gap:.85rem;padding:.45rem 1rem;color:inherit;text-decoration:none}
.illco-opc-usp__icon{flex:0 0 auto;width:2.15rem;text-align:center;font-size:1.25rem;color:var(--illco-opc-blue)}
.illco-opc-usp strong,.illco-opc-usp small{display:block;min-width:0}
.illco-opc-usp strong{font-size:.88rem;line-height:1.25}
.illco-opc-usp small{margin-top:.12rem;font-size:.73rem;line-height:1.25;opacity:.68}

/* Cards */
.illco-opc-cards{padding:clamp(2.5rem,5vw,5rem) 0;background:#172631;color:#fff}
.illco-opc-cards--light{background:#fff;color:var(--illco-opc-ink)}
.illco-opc-cards--soft{background:#f3f6f7;color:var(--illco-opc-ink)}
.illco-opc-cards__grid{display:grid;grid-template-columns:repeat(var(--illco-opc-columns,3),minmax(0,1fr));gap:1rem}
.illco-opc-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem;align-items:start;min-height:220px;padding:1.35rem;border:1px solid color-mix(in srgb,currentColor 13%,transparent);border-radius:1rem;background:color-mix(in srgb,currentColor 4%,transparent);color:inherit!important;text-decoration:none!important;transition:transform .18s ease,box-shadow .18s ease}
.illco-opc-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(18,37,49,.15)}
.illco-opc-card img{grid-column:1/-1;width:100%!important;height:145px!important;object-fit:contain!important;border-radius:.7rem;background:#fff}
.illco-opc-card__number{display:grid;place-items:center;width:2.7rem;height:2.7rem;border:1px solid color-mix(in srgb,currentColor 22%,transparent);border-radius:50%;font-size:.8rem;font-weight:900;opacity:.8}
.illco-opc-status{display:inline-flex;margin-bottom:.6rem;padding:.3rem .55rem;border-radius:999px;background:var(--illco-opc-blue);color:#10212b;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.illco-opc-card h3{margin:0;font-size:1.25rem;line-height:1.15;color:inherit}
.illco-opc-card p{margin:.65rem 0 0;opacity:.72;line-height:1.5}
.illco-opc-link{display:inline-block;margin-top:.9rem;font-size:.85rem;font-weight:800;color:var(--illco-opc-blue)}

/* Content band */
.illco-opc-band{padding:clamp(2.5rem,5vw,5rem) 0;background:#172631;color:#fff}
.illco-opc-band--light{background:#fff;color:var(--illco-opc-ink)}
.illco-opc-band--blue{background:#eaf7fd;color:var(--illco-opc-ink)}
.illco-opc-band__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:clamp(1.5rem,4vw,4rem);align-items:center}
.illco-opc-band--image-left .illco-opc-band__media{order:-1}
.illco-opc-band h2{margin:0;font-size:clamp(2rem,4vw,4rem);line-height:1;letter-spacing:-.05em;color:inherit}
.illco-opc-band p{max-width:760px;margin:1rem 0;line-height:1.6;opacity:.75}
.illco-opc-band ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem 1rem;margin:1.4rem 0;padding:0;list-style:none}
.illco-opc-band li{display:flex;gap:.6rem;align-items:flex-start;font-weight:700}
.illco-opc-band li>span{color:var(--illco-opc-blue)}
.illco-opc-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.2rem}
.illco-opc-note{display:block;margin-top:1rem;opacity:.62}
.illco-opc-band__media img{display:block;width:100%!important;height:auto!important;max-height:440px;object-fit:contain!important;border-radius:1rem;background:transparent!important}

/* Link grid */
.illco-opc-links{padding:clamp(2.5rem,5vw,5rem) 0;background:#fff;color:var(--illco-opc-ink)}
.illco-opc-links__grid{display:grid;grid-template-columns:repeat(var(--illco-opc-columns,4),minmax(0,1fr));gap:1rem}
.illco-opc-linktile{display:flex;align-items:center;gap:1rem;min-width:0;padding:1rem;border:1px solid var(--illco-opc-line);border-radius:.9rem;background:#fff;color:inherit!important;text-decoration:none!important;box-shadow:0 8px 22px rgba(18,37,49,.06)}
.illco-opc-linktile:hover{border-color:#9ecde2;transform:translateY(-2px)}
.illco-opc-linktile__image{display:grid;place-items:center;flex:0 0 86px;width:86px;height:86px;border-radius:.7rem;background:#f2f6f8;overflow:hidden;color:#76909f;font-weight:900}
.illco-opc-linktile__image img{width:100%!important;height:100%!important;object-fit:contain!important;background:transparent!important}
.illco-opc-linktile strong,.illco-opc-linktile small{display:block;min-width:0}
.illco-opc-linktile strong{font-size:1rem;line-height:1.25}
.illco-opc-linktile small{margin-top:.28rem;color:var(--illco-opc-muted);line-height:1.35}

/* Shell */
.illco-opc-shell{padding:clamp(2.5rem,5vw,5rem) 0;background:#fff;color:var(--illco-opc-ink)}
.illco-opc-shell--soft{background:#f3f6f7}
.illco-opc-shell--dark{background:#172631;color:#fff}
.illco-opc-shell--wide .illco-opc-container{width:min(1600px,calc(100% - 40px))}
.illco-opc-shell--full .illco-opc-container{width:100%;max-width:none}
.illco-opc-shell__content{min-height:90px}
.illco-opc-shell__content:empty{display:none}

@media(max-width:991.98px){
    .illco-opc-banner,.illco-opc-banner--split{grid-template-columns:1fr;grid-template-rows:auto minmax(180px,.9fr)}
    .illco-opc-banner--image-left .illco-opc-banner__media,.illco-opc-banner--image-right .illco-opc-banner__media{order:0}
    .illco-opc-usp ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 0}
    .illco-opc-usp li:nth-child(2){border-right:0}
    .illco-opc-cards__grid,.illco-opc-links__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .illco-opc-band__grid{grid-template-columns:1fr}
    .illco-opc-band--image-left .illco-opc-band__media{order:0}
}
@media(max-width:575.98px){
    .illco-opc-container{width:calc(100% - 24px)}
    .illco-opc-banner{min-height:0;border-radius:.85rem}
    .illco-opc-banner__copy{padding:1.2rem}
    .illco-opc-banner__media{min-height:180px}
    .illco-opc-banner--image-background .illco-opc-banner__media{min-height:100%}
    .illco-opc-usp ul{grid-template-columns:1fr}
    .illco-opc-usp li{border-right:0;border-bottom:1px solid color-mix(in srgb,currentColor 14%,transparent)}
    .illco-opc-usp li:last-child{border-bottom:0}
    .illco-opc-cards__grid,.illco-opc-links__grid{grid-template-columns:1fr}
    .illco-opc-card{min-height:0}
    .illco-opc-band ul{grid-template-columns:1fr}
    .illco-opc-actions{flex-direction:column;align-items:stretch}
    .illco-opc-linktile__image{flex-basis:72px;width:72px;height:72px}
}

/* ============================================================
   Exakte ILLCO-Startseitenportlets 1.1.0
   ============================================================ */
.illco-opc-exact-stage .illco-v3-product-ad__media img,
.illco-opc-exact-stage .illco-v3-product-ad__hero-media img{
    object-fit:var(--illco-campaign-image-fit,contain)!important;
    object-position:center!important;
}
.illco-opc-exact-stage [data-portlet]{min-width:0}
.illco-opc-exact-categories--3 .illco-v3-categories__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.illco-opc-exact-categories .illco-v3-category-card__visual img{width:78%!important;height:78%!important;object-fit:contain!important;background:transparent!important}
.illco-opc-product-section--soft{background:#f3f6f7}
.illco-opc-product-section--dark{background:#172631;color:#fff}
.illco-opc-product-section__content{min-height:1px}
.illco-opc-product-section__content.opc-area:empty{min-height:0}
.illco-opc-product-section [data-area-id="products"]{min-height:140px;border:2px dashed #9cc9dc;border-radius:.85rem;padding:.6rem}
.illco-opc-product-section [data-area-id="products"]:not(:empty){border-color:#79b9d5}
.illco-opc-brandfeature__image{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;opacity:.18;z-index:0}
.illco-v3-brandfeature>*:not(.illco-opc-brandfeature__image){position:relative;z-index:1}
.illco-opc-brandlist__item{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center}
.illco-v3-brandlist__image img{width:100%!important;height:100%!important;object-fit:contain!important;background:transparent!important}
.illco-opc-b2b-image{display:grid;place-items:center;width:100%;height:100%;min-height:290px}
.illco-opc-b2b-image img{display:block;width:100%!important;height:100%!important;max-height:440px;object-fit:contain!important;background:transparent!important}
.illco-v3-account--standalone,.illco-v3-business--standalone{margin:0}
@media(max-width:991.98px){.illco-opc-exact-categories--3 .illco-v3-categories__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575.98px){.illco-opc-exact-categories--3 .illco-v3-categories__grid{grid-template-columns:1fr}}


/* ============================================================
   ILLCO Startseiten-Plugin 2.0.0 – geschützte Layoutregeln
   Inhalte bleiben editierbar; das Raster kann nicht versehentlich
   durch Bildmaße oder lange Texte zerstört werden.
   ============================================================ */
.illco-opc-exact-stage{
    --illco-campaign-image-fit:contain;
    width:100%;
    min-width:0;
    overflow:clip;
}
.illco-opc-exact-stage .illco-v3-container{width:min(1420px,calc(100% - 40px));}
.illco-opc-exact-stage .illco-v3-ad-stage__grid{
    display:grid!important;
    grid-template-columns:minmax(210px,230px) minmax(0,1fr) minmax(270px,300px)!important;
    grid-template-rows:544px!important;
    gap:16px!important;
    align-items:stretch!important;
}
.illco-opc-exact-stage .illco-v3-ad-stage__stack{
    display:grid!important;
    grid-template-rows:minmax(0,1fr) minmax(0,1fr)!important;
    gap:16px!important;
    min-width:0!important;
    min-height:0!important;
}
.illco-opc-exact-stage .illco-v3-ad-card{
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    min-width:0!important;
    min-height:0!important;
    height:100%!important;
    overflow:hidden!important;
}
.illco-opc-exact-stage .illco-v3-product-ad{
    display:grid!important;
    min-width:0!important;
    min-height:0!important;
    height:100%!important;
    overflow:hidden!important;
}
.illco-opc-exact-stage .illco-v3-product-ad--compact{
    grid-template-rows:minmax(104px,46%) minmax(0,1fr)!important;
}
.illco-opc-exact-stage .illco-v3-product-ad__media,
.illco-opc-exact-stage .illco-v3-product-ad__hero-media{
    position:relative!important;
    min-width:0!important;
    min-height:0!important;
    overflow:hidden!important;
}
.illco-opc-exact-stage .illco-v3-product-ad__media img,
.illco-opc-exact-stage .illco-v3-product-ad__hero-media img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:var(--illco-campaign-image-fit,contain)!important;
    object-position:center!important;
    background:transparent!important;
}
.illco-opc-exact-stage .illco-v3-product-ad__content,
.illco-opc-exact-stage .illco-v3-product-ad__hero-copy{
    min-width:0!important;
    min-height:0!important;
    overflow-wrap:anywhere!important;
}
.illco-opc-exact-stage .illco-v3-product-ad--hero{
    grid-template-columns:minmax(0,58%) minmax(240px,42%)!important;
    grid-template-rows:minmax(0,1fr) auto!important;
}
.illco-opc-exact-stage .illco-v3-product-ad__hero-copy{grid-column:1;grid-row:1;padding:clamp(24px,3vw,48px)!important;}
.illco-opc-exact-stage .illco-v3-product-ad__hero-media{grid-column:2;grid-row:1 / span 2;padding:clamp(16px,2vw,28px)!important;}
.illco-opc-exact-stage .illco-v3-ad-card__proof{grid-column:1;grid-row:2;position:static!important;min-width:0!important;}
.illco-opc-exact-stage .illco-v3-product-ad--hero h1,
.illco-opc-exact-stage .illco-v3-product-ad--hero .illco-v3-ad-card__main-heading{
    font-size:clamp(2.2rem,4vw,4.2rem)!important;
    line-height:.98!important;
    overflow-wrap:anywhere!important;
}
.illco-opc-exact-stage .illco-v3-ad-card__button{z-index:4;max-width:calc(100% - 28px);white-space:normal!important;}
.illco-opc-exact-stage .illco-v3-ad-card__overlay{z-index:3;}

.illco-opc-exact-categories{
    --illco-category-image-fit:contain;
    min-width:0;
}
.illco-opc-exact-categories .illco-v3-category-card__visual{overflow:hidden!important;}
.illco-opc-exact-categories .illco-v3-category-card__visual img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    padding:clamp(.55rem,1vw,1rem)!important;
    object-fit:var(--illco-category-image-fit,contain)!important;
    object-position:center!important;
    background:transparent!important;
}

@media(max-width:1180px){
    .illco-opc-exact-stage .illco-v3-ad-stage__grid{
        grid-template-columns:minmax(190px,220px) minmax(0,1fr) minmax(230px,270px)!important;
    }
    .illco-opc-exact-stage .illco-v3-product-ad--hero h1,
    .illco-opc-exact-stage .illco-v3-product-ad--hero .illco-v3-ad-card__main-heading{font-size:clamp(2rem,4vw,3.4rem)!important;}
}
@media(max-width:991.98px){
    .illco-opc-exact-stage .illco-v3-ad-stage__grid{
        grid-template-columns:1fr!important;
        grid-template-rows:auto!important;
    }
    .illco-opc-exact-stage .illco-v3-ad-card--main{min-height:460px!important;order:1;}
    .illco-opc-exact-stage .illco-v3-ad-stage__stack{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:1fr!important;}
    .illco-opc-exact-stage .illco-v3-ad-stage__stack--left{order:2;}
    .illco-opc-exact-stage .illco-v3-ad-stage__stack--right{order:3;}
    .illco-opc-exact-stage .illco-v3-ad-stage__stack .illco-v3-ad-card{min-height:300px!important;}
}
@media(max-width:700px){
    .illco-opc-exact-stage .illco-v3-container{width:calc(100% - 24px);}
    .illco-opc-exact-stage .illco-v3-ad-stage__stack{grid-template-columns:1fr!important;}
    .illco-opc-exact-stage .illco-v3-product-ad--hero{grid-template-columns:1fr!important;grid-template-rows:auto minmax(210px,280px) auto!important;}
    .illco-opc-exact-stage .illco-v3-product-ad__hero-copy{grid-column:1;grid-row:1;padding:24px!important;}
    .illco-opc-exact-stage .illco-v3-product-ad__hero-media{grid-column:1;grid-row:2;padding:16px 24px!important;}
    .illco-opc-exact-stage .illco-v3-ad-card__proof{grid-column:1;grid-row:3;}
    .illco-opc-exact-stage .illco-v3-ad-card--main{min-height:620px!important;}
}


/* ============================================================
   ILLCO Startseiten-Plugin 2.2.0 – zentrale Farbverwaltung
   Die Standardwerte entsprechen exakt dem bisherigen Child-Theme.
   ============================================================ */
.illco-opc-homepage{
    --illco-scope-bg:transparent;
    --illco-scope-text:var(--i3-ink,#18232c);
    --illco-scope-accent:var(--i3-orange,#f06423);
    --illco-scope-muted:var(--i3-muted,#60717d);
    --illco-scope-border:var(--i3-line,#dbe3e7);
    --illco-scope-surface:var(--i3-white,#fff);
    --illco-scope-surface-text:var(--i3-ink,#18232c);
    --illco-scope-button-bg:var(--i3-orange,#f06423);
    --illco-scope-button-text:var(--i3-white,#fff);
    color:var(--i3-ink,#18232c);
}

.illco-color-scope--light{
    --illco-scope-bg:var(--i3-white,#fff);--illco-scope-text:var(--i3-ink,#18232c);
    --illco-scope-accent:var(--i3-orange,#f06423);--illco-scope-muted:var(--i3-muted,#60717d);
    --illco-scope-border:var(--i3-line,#dbe3e7);--illco-scope-surface:var(--i3-white,#fff);
    --illco-scope-surface-text:var(--i3-ink,#18232c);--illco-scope-button-bg:var(--i3-orange,#f06423);--illco-scope-button-text:#fff;
}
.illco-color-scope--soft{
    --illco-scope-bg:var(--i3-soft,#f2f5f7);--illco-scope-text:var(--i3-ink,#18232c);
    --illco-scope-accent:var(--i3-orange,#f06423);--illco-scope-muted:var(--i3-muted,#60717d);
    --illco-scope-border:var(--i3-line,#dbe3e7);--illco-scope-surface:var(--i3-white,#fff);
    --illco-scope-surface-text:var(--i3-ink,#18232c);--illco-scope-button-bg:var(--i3-orange,#f06423);--illco-scope-button-text:#fff;
}
.illco-color-scope--blue{
    --illco-scope-bg:#eaf7fd;--illco-scope-text:var(--i3-ink,#18232c);
    --illco-scope-accent:var(--i3-navy,#24313d);--illco-scope-muted:var(--i3-muted,#60717d);
    --illco-scope-border:#cfe8f4;--illco-scope-surface:#fff;
    --illco-scope-surface-text:var(--i3-ink,#18232c);--illco-scope-button-bg:var(--i3-navy,#24313d);--illco-scope-button-text:#fff;
}
.illco-color-scope--navy{
    --illco-scope-bg:var(--i3-navy,#24313d);--illco-scope-text:#fff;
    --illco-scope-accent:var(--i3-blue,#89cff0);--illco-scope-muted:#cbd6db;
    --illco-scope-border:#435a6b;--illco-scope-surface:#314553;
    --illco-scope-surface-text:#fff;--illco-scope-button-bg:var(--i3-blue,#89cff0);--illco-scope-button-text:#10212b;
}
.illco-color-scope--dark{
    --illco-scope-bg:var(--i3-deep,#17212a);--illco-scope-text:#fff;
    --illco-scope-accent:var(--i3-blue,#89cff0);--illco-scope-muted:#c9d4d9;
    --illco-scope-border:#3c4c58;--illco-scope-surface:#25343f;
    --illco-scope-surface-text:#fff;--illco-scope-button-bg:var(--i3-orange,#f06423);--illco-scope-button-text:#fff;
}
.illco-color-scope--custom{
    --illco-scope-bg:var(--illco-custom-bg);--illco-scope-text:var(--illco-custom-text);
    --illco-scope-accent:var(--illco-custom-accent);--illco-scope-muted:var(--illco-custom-muted);
    --illco-scope-border:var(--illco-custom-border);--illco-scope-surface:var(--illco-custom-surface);
    --illco-scope-surface-text:var(--illco-custom-surface-text);--illco-scope-button-bg:var(--illco-custom-button-bg);--illco-scope-button-text:var(--illco-custom-button-text);
}

.illco-color-scope:not(.illco-color-scope--original){background:var(--illco-scope-bg)!important;color:var(--illco-scope-text)!important;border-color:var(--illco-scope-border)!important}
.illco-color-scope:not(.illco-color-scope--original) :is(h1,h2,h3,h4,strong){color:inherit}
.illco-color-scope:not(.illco-color-scope--original) :is(p,small,.illco-v3-head p,.illco-v3-category-card__copy p,.illco-v3-brandfeature p){color:var(--illco-scope-muted)!important}
.illco-color-scope:not(.illco-color-scope--original) :is(.illco-v3-eyebrow,.illco-opc-eyebrow,.illco-v3-eyebrow--light,.illco-v3-link,.illco-opc-link){color:var(--illco-scope-accent)!important}
.illco-color-scope:not(.illco-color-scope--original) :is(.illco-v3-btn--orange,.illco-opc-button,.illco-v3-service a,.illco-v3-contact-card a){background:var(--illco-scope-button-bg)!important;color:var(--illco-scope-button-text)!important;border-color:var(--illco-scope-button-bg)!important}
.illco-color-scope:not(.illco-color-scope--original) :is(
    .illco-v3-category-card,.illco-v3-choice__card,.illco-v3-why li,.illco-v3-contact-card,
    .illco-v3-account__link,.illco-v3-business__link,.illco-v3-orderpanel article,.illco-v3-orderpanel aside,
    .illco-opc-card,.illco-opc-linktile,.illco-v3-brandlist li a
){background:var(--illco-scope-surface)!important;color:var(--illco-scope-surface-text)!important;border-color:var(--illco-scope-border)!important}
.illco-color-scope:not(.illco-color-scope--original) :is(.illco-v3-quick a,.illco-v3-status,.illco-opc-status){border-color:var(--illco-scope-border)!important}

/* Individuelle Farben der fünf Kampagnenflächen */
.illco-opc-exact-stage .illco-v3-ad-card--campaign{background:var(--illco-card-bg,#fff)!important;color:var(--illco-campaign-ink,#152633)!important}
.illco-opc-exact-stage .illco-v3-product-ad--compact .illco-v3-product-ad__media{background:linear-gradient(145deg,var(--illco-card-surface,#fff),color-mix(in srgb,var(--illco-card-surface,#fff) 88%,var(--illco-campaign-accent,#89cff0)))!important}
.illco-opc-exact-stage .illco-v3-product-ad--compact .illco-v3-product-ad__content{background:var(--illco-card-surface,#fff)!important}
.illco-opc-exact-stage .illco-v3-product-ad--compact p{color:var(--illco-card-muted,#5a6972)!important}
.illco-opc-exact-stage .illco-v3-product-ad__saving{background:var(--illco-card-badge-bg,var(--illco-campaign-ink))!important;color:var(--illco-card-badge-text,#fff)!important}
.illco-opc-exact-stage .illco-v3-ad-card--campaign .illco-v3-ad-card__button{background:var(--illco-card-button-bg,var(--illco-campaign-ink))!important;color:var(--illco-card-button-text,#fff)!important}

.illco-opc-exact-stage .illco-v3-product-ad--hero{background:linear-gradient(135deg,var(--illco-main-bg,#0d1f2b),var(--illco-main-bg-2,#233f50))!important;color:var(--illco-main-text,#fff)!important}
.illco-opc-exact-stage .illco-v3-product-ad--hero :is(h1,.illco-v3-ad-card__main-heading,.illco-v3-product-ad__hero-price>strong){color:var(--illco-main-text,#fff)!important}
.illco-opc-exact-stage .illco-v3-product-ad--hero :is(h1 em,.illco-v3-ad-card__main-heading em,.illco-v3-product-ad__kicker,.illco-v3-product-ad__hero-price b){color:var(--illco-main-accent,#f6d20a)!important}
.illco-opc-exact-stage .illco-v3-product-ad__hero-copy>p{color:var(--illco-main-muted,#d9e4e9)!important}
.illco-opc-exact-stage .illco-v3-product-ad__hero-media{background:linear-gradient(145deg,var(--illco-main-surface,#fff),color-mix(in srgb,var(--illco-main-surface,#fff) 90%,#000))!important}
.illco-opc-exact-stage .illco-v3-product-ad__hero-badge{background:var(--illco-main-badge-bg,#f6d20a)!important;color:var(--illco-main-badge-text,#122532)!important}
.illco-opc-exact-stage .illco-v3-ad-card__button--main{background:var(--illco-main-button-bg,#f6d20a)!important;color:var(--illco-main-button-text,#122532)!important}
.illco-opc-exact-stage .illco-v3-ad-card__proof b{border-color:var(--illco-main-accent,#f6d20a)!important;color:var(--illco-main-accent,#f6d20a)!important}

/* ==========================================================
   ILL&CO 2.4.0 – OPC-Ablage (nur Editor)
   ========================================================== */
.illco-editor-storage {
    border: 2px dashed #d69e2e;
    border-radius: 12px;
    background: #fffaf0;
    padding: 14px;
    color: #5f4312;
}
.illco-editor-storage__head {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 12px;
}
.illco-editor-storage__head > .fas {
    margin-top: 2px;
    font-size: 18px;
}
.illco-editor-storage__head strong,
.illco-editor-storage__head small {
    display: block;
}
.illco-editor-storage__head small {
    margin-top: 3px;
    color: #7a5b22;
}
.illco-editor-storage__area {
    min-height: 90px;
    padding: 10px;
    border-radius: 8px;
    background: rgba(255, 255, 255, .8);
}

/* ==========================================================
   ILL&CO 2.4.0 – EAN-Produktkarussell
   ========================================================== */
.illco-ean-carousel {
    background: var(--illco-bg, var(--illco-custom-bg, #fff));
    color: var(--illco-text, var(--illco-custom-text, #18232c));
}
.illco-ean-carousel__products {
    min-width: 0;
}
.illco-ean-carousel__empty {
    display: grid;
    justify-items: center;
    gap: 6px;
    min-height: 150px;
    align-content: center;
    border: 2px dashed var(--illco-border, #dbe3e7);
    border-radius: 12px;
    color: var(--illco-muted, #60717d);
    text-align: center;
}
.illco-ean-carousel__empty .fas {
    font-size: 26px;
    color: var(--illco-accent, #89cff0);
}
.illco-ean-carousel__editor-report {
    display: grid;
    gap: 7px;
    margin-top: 14px;
    font-size: 12px;
}
.illco-ean-carousel__notice,
.illco-ean-carousel__summary {
    padding: 8px 10px;
    border: 1px solid #d8e2e8;
    border-radius: 8px;
    background: #f7fafc;
    color: #40515d;
    overflow-wrap: anywhere;
}
.illco-ean-carousel__notice--error {
    border-color: #e5a3a3;
    background: #fff4f4;
    color: #8c2020;
}


/* ILLCO 2.5.0 – Portlet-Sichtbarkeit im OPC */
.illco-opc-hidden-preview{position:relative;border:3px dashed #c0392b;border-radius:12px;padding:46px 6px 6px;background:repeating-linear-gradient(-45deg,rgba(192,57,43,.035),rgba(192,57,43,.035) 12px,rgba(255,255,255,.45) 12px,rgba(255,255,255,.45) 24px)}
.illco-opc-hidden-preview__badge{position:absolute;top:7px;left:8px;right:8px;z-index:5;display:flex;align-items:center;flex-wrap:wrap;gap:7px;min-height:32px;padding:6px 10px;border-radius:8px;background:#8f2d23;color:#fff;font-size:12px;line-height:1.3;pointer-events:none}
.illco-opc-hidden-preview__badge strong{color:inherit}.illco-opc-hidden-preview__badge span:last-child{opacity:.88}.illco-visibility-container{display:contents}


/* ============================================================
   ILLCO Startseiten-Plugin 2.5.2 – eigener Bildhintergrund
   Bei Upload oder direkter Bild-URL wird die dekorative
   Standardfläche der Kategoriekarte vollständig deaktiviert.
   ============================================================ */
.illco-opc-exact-categories .illco-v3-category-card--custom-source .illco-v3-category-card__visual,
.illco-opc-exact-categories .illco-v3-category-card__visual--custom-source{
    background:#fff!important;
    background-image:none!important;
}
.illco-opc-exact-categories .illco-v3-category-card--custom-source .illco-v3-category-card__visual::before,
.illco-opc-exact-categories .illco-v3-category-card__visual--custom-source::before{
    content:none!important;
    display:none!important;
    background:none!important;
    border:0!important;
}
