/* ISODIN yellow/black visual layer. Additive only; load after main and catalogue CSS. */
:root{
  --isodin-yellow:#FFD400;
  --isodin-black:#151515;
  --isodin-white:#FFFFFF;
  --isodin-light-gray:#F5F5F3;
  --isodin-line:#D7D7D2;
  --isodin-muted:#595956;
  --isodin-success:#16734A;
  --isodin-error:#B42318;
  --isodin-info:#175CD3;
  --ink:var(--isodin-black);
  --paper:var(--isodin-light-gray);
  --white:var(--isodin-white);
  --orange:var(--isodin-yellow);
  --orange-dark:#E3BD00;
  --line:var(--isodin-line);
  --muted:var(--isodin-muted);
  --green:var(--isodin-success);
  --shadow:0 18px 54px rgba(21,21,21,.12)
}

body{background:var(--isodin-white);color:var(--isodin-black)}
::selection{background:var(--isodin-yellow);color:var(--isodin-black)}

/* Keyboard visibility: dark keyline plus yellow halo works on white, gray and black. */
:where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:2px solid var(--isodin-black)!important;
  outline-offset:2px;
  box-shadow:0 0 0 5px var(--isodin-yellow)!important
}
:where(button,input,select,textarea,.button,[class*="button"]):disabled,
:where(button,input,select,textarea,.button,[class*="button"])[aria-disabled="true"]{
  border-color:#C9C9C4!important;background:#E6E6E2!important;color:#666662!important;
  box-shadow:none!important;cursor:not-allowed!important;transform:none!important;opacity:1
}

/* Header and navigation. */
.topline,.site-header,.site-footer{background:var(--isodin-black);color:var(--isodin-white)}
.topline{border-bottom:1px solid #343434}.topline,.topline a{color:#E9E9E6}
.site-header{border-bottom-color:#343434}.site-header .brand,.site-header .phone,.site-header .nav a{color:var(--isodin-white)}
.site-header .brand small,.site-header .phone small{color:#C8C8C4}
.brand__mark,.catalog-trigger,.cart-count{background:var(--isodin-yellow);color:var(--isodin-black)}
.catalog-trigger:hover,.catalog-trigger[aria-expanded="true"]{background:var(--isodin-white);color:var(--isodin-black)}
.woocommerce-product-search,.search-form{background:var(--isodin-white);color:var(--isodin-black);border-color:#6A6A66}
.woocommerce-product-search:focus-within,.search-form:focus-within{border-color:var(--isodin-yellow);box-shadow:0 0 0 3px rgba(255,212,0,.35)}
.woocommerce-product-search button,.search-form button{background:var(--isodin-yellow);color:var(--isodin-black)}
.account-link,.cart-button{border-color:#555;background:transparent;color:var(--isodin-white)}
.account-link:hover,.cart-button:hover,.site-header .nav a:hover,.site-header .nav__sale{color:var(--isodin-yellow);border-color:var(--isodin-yellow)}
.catalog-panel{background:var(--isodin-white);border-top:4px solid var(--isodin-yellow)}
.catalog-panel__list a{color:var(--isodin-black)}
.catalog-panel__list a:hover{background:var(--isodin-yellow);color:var(--isodin-black)}
.catalog-panel__list small{color:var(--isodin-muted)}
.catalog-promo{background:var(--isodin-black);color:var(--isodin-white);border:1px solid #3B3B39}
.catalog-promo a{display:inline-flex;padding:10px 14px;background:var(--isodin-yellow);color:var(--isodin-black)}

/* Buttons: yellow surface always uses black text. */
.button,.wp-element-button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
  background:var(--isodin-black);color:var(--isodin-white);border:1px solid var(--isodin-black)
}
.button--primary,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,
.woocommerce ul.products li.product .buy,.isodin-standard-filters .button,.isodin-row-cart .button,
.wc-block-components-button,.checkout-button,.single_add_to_cart_button{
  background:var(--isodin-yellow)!important;color:var(--isodin-black)!important;border-color:var(--isodin-yellow)!important
}
.button--primary:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,.woocommerce ul.products li.product .buy:hover,
.isodin-standard-filters .button:hover,.isodin-row-cart .button:hover,.wc-block-components-button:hover{
  background:var(--isodin-black)!important;color:var(--isodin-white)!important;border-color:var(--isodin-black)!important
}
.button--ghost,.filter-toggle{background:var(--isodin-white);color:var(--isodin-black);border:1px solid var(--isodin-black)}
.button--ghost:hover,.filter-toggle:hover{background:var(--isodin-light-gray);border-color:var(--isodin-black)}

/* Hero and promotional surfaces. */
.hero,.products-section{background:var(--isodin-light-gray)}
.hero__visual:before{background:var(--isodin-yellow)}
.b2b{background:var(--isodin-black);color:var(--isodin-white);border-top:5px solid var(--isodin-yellow)}
.b2b h2,.b2b p{color:var(--isodin-white)}
.b2b .eyebrow{color:var(--isodin-white)}
.b2b__numbers{background:var(--isodin-black);color:var(--isodin-white)}
.b2b__numbers b{color:var(--isodin-yellow)}
.hero h1 em{color:var(--isodin-black);background:linear-gradient(transparent 62%,var(--isodin-yellow) 62%)}
.hero-slide__dots button.is-active{background:var(--isodin-yellow)}
.hero-slider__controls>button:hover{background:var(--isodin-yellow);color:var(--isodin-black);border-color:var(--isodin-yellow)}

/* Light-surface labels: never small yellow text on white. */
.eyebrow,.benefits article>span,.nav__sale,.section-head>a,
.standard-card>span,.technical-card>span,.article-section__head span,.method-grid small,
.standard-ti-links span,.technical-kicker span,.sku-legend dt,.standard-dimension-table th:first-child,
.standard-dimension-table td:first-child,.isodin-category-browser__header p,.isodin-collection-browser>header p{
  color:var(--isodin-black)
}
.eyebrow:before,.article-section__head span:before{background:var(--isodin-yellow)}
.standard-card>span,.technical-card>span,.method-grid small,.standard-ti-links span{
  width:max-content;padding:4px 7px;background:var(--isodin-yellow);color:var(--isodin-black);border-radius:3px
}

/* Cards and category navigation. */
.category-card,.standard-card,.technical-card,.product-card,.isodin-group-card{border-color:var(--isodin-line)}
.category-card:nth-child(4n+2){background:var(--isodin-black);color:var(--isodin-white)}
.category-card:nth-child(4n+3){background:var(--isodin-light-gray);color:var(--isodin-black);border-top:5px solid var(--isodin-yellow)}
.category-card:nth-child(4n+3) small{color:var(--isodin-muted)}
.category-card:nth-child(4n+4),.standard-facts>div,.single-product-specs span{background:var(--isodin-light-gray)}
.isodin-group-card{border-bottom-color:var(--isodin-yellow)}
.isodin-group-card:hover,.isodin-group-card:focus-visible,.standard-card:hover,.technical-card:hover{border-color:var(--isodin-black)}

/* Catalogue modes, filters and rows. */
.isodin-catalog-modes{border-color:var(--isodin-black)}
.isodin-catalog-modes a{background:var(--isodin-white);color:var(--isodin-black)}
.isodin-catalog-modes a.is-active{background:var(--isodin-black);color:var(--isodin-white);box-shadow:inset 0 -5px var(--isodin-yellow)}
.isodin-standard-filters{background:var(--isodin-light-gray);border-color:var(--isodin-line)}
.isodin-standard-filters select,.isodin-standard-filters input{background:var(--isodin-white);color:var(--isodin-black);border-color:#9A9A95}
.isodin-standard-filters__reset{color:var(--isodin-black);text-decoration-color:var(--isodin-yellow);text-decoration-thickness:3px}
.woocommerce .shop-content ul.products li.isodin-catalog-head{background:var(--isodin-black);color:var(--isodin-white)}
.woocommerce .shop-content ul.products li.product.isodin-catalog-row:nth-child(odd){background:var(--isodin-light-gray)}
.woocommerce .shop-content ul.products li.product.isodin-catalog-row:hover{background:#FFF8CF}
.isodin-catalog-row__standards .isodin-standard-link{background:var(--isodin-yellow);color:var(--isodin-black);padding:4px 7px;border-radius:3px}
.isodin-catalog-row__standards .isodin-standard-link small{color:var(--isodin-black)}
.isodin-catalog-assets-pending{background:#FFF8CF;color:var(--isodin-black);border-left-color:var(--isodin-yellow)}

/* Pagination. */
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{background:var(--isodin-light-gray);color:var(--isodin-black)}
.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover{
  background:var(--isodin-yellow);color:var(--isodin-black)
}

/* Technical and commercial tables remain light and scannable. */
.technical-table-wrap,.woocommerce table.shop_table{border-color:var(--isodin-line);background:var(--isodin-white)}
.technical-table th,.woocommerce table.shop_table thead th{background:var(--isodin-black);color:var(--isodin-white)}
.technical-table td,.woocommerce table.shop_table td{border-color:#E2E2DE;color:var(--isodin-black)}
.technical-table tbody tr:nth-child(even),.woocommerce table.shop_table tbody tr:nth-child(even){background:var(--isodin-light-gray)}
.technical-table tbody tr:hover,.woocommerce table.shop_table tbody tr:hover{background:#FFF8CF}
.torque-distribution>div:after{background:var(--isodin-yellow)}

/* Notes and statuses use label/icon as well as colour. */
.woocommerce-message,.woocommerce-error,.woocommerce-info,.engineering-warning,.article-disclaimer{
  position:relative;padding-left:52px!important;border-top:1px solid var(--isodin-line);border-right:1px solid var(--isodin-line);border-bottom:1px solid var(--isodin-line)
}
.woocommerce-message:before,.woocommerce-error:before,.woocommerce-info:before{
  position:absolute;left:18px;top:50%;transform:translateY(-50%);display:grid;place-items:center;
  width:24px;height:24px;border-radius:50%;color:var(--isodin-white);font-weight:900
}
.woocommerce-message{background:#ECF8F2;color:#104E34;border-left:4px solid var(--isodin-success)}
.woocommerce-message:before{content:"✓";background:var(--isodin-success)}
.woocommerce-error{background:#FFF1F0;color:#7A271A;border-left:4px solid var(--isodin-error)}
.woocommerce-error:before{content:"!";background:var(--isodin-error)}
.woocommerce-info{background:#EFF8FF;color:#1849A9;border-left:4px solid var(--isodin-info)}
.woocommerce-info:before{content:"i";background:var(--isodin-info)}
.engineering-warning,.standard-note,.profile-notes,.single-price-note{background:#FFF8CF;color:var(--isodin-black);border-left-color:var(--isodin-yellow)}
.article-disclaimer{background:var(--isodin-black);color:var(--isodin-white);border-left:4px solid var(--isodin-yellow)}

/* Dark technical surfaces retain white text and yellow as a non-body accent. */
.standard-hero,.standard-detail__hero,.technical-home,.technical-hero,.technical-article__hero{background:var(--isodin-black);color:var(--isodin-white)}
.standard-hero__stats b,.standard-detail__number b,.technical-home__cards span,
.technical-hero__mark b,.technical-article__badge b,.technical-article__hero .technical-kicker span{color:var(--isodin-yellow)}

@media(max-width:760px){
  .site-header{border-bottom:3px solid var(--isodin-yellow)}
  .woocommerce-product-search,.search-form{border-bottom:1px solid var(--isodin-black)}
  .isodin-standard-filters{background:var(--isodin-light-gray)}
  .woocommerce .shop-content ul.products li.product.isodin-catalog-row{border-left-color:var(--isodin-yellow)}
  .isodin-catalog-row__action .button{min-height:46px}
  .technical-table-wrap{border-radius:8px}
}

@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}
