/* INFR-TECH / Porcelain & Ink — local-only design study, 2026-09-17.
   The data attribute is deliberately required by every selector.
   No production theme, image, content, or application data is changed. */

/* 01. Color system. Ink, porcelain, restrained teal, and champagne gold. */
html[data-infr-theme="light"] {
  color-scheme: light;
  /* Production writes theme tokens inline; this local scope must outrank them. */
  --theme-bg: #f6f8fa !important;
  --theme-surface: #ffffff !important;
  --theme-accent: #087d79 !important;
  --theme-accent2: #3b668b !important;
  --theme-muted: #617184 !important;
  --theme-text-muted: #617184 !important;
  --theme-text: #23364a !important;
  --theme-text-strong: #122b43 !important;
  --theme-border: #cedde6 !important;
  --theme-grad: linear-gradient(125deg, #096f70 0%, #078780 100%) !important;
  --theme-hero-bg: linear-gradient(105deg, #fcfcfa 4%, #f3f7f8 58%, #e8f0f3 100%) !important;
  --scrollbar-thumb: #a7bcc5;
  --background: #f6f8fa;
  --foreground: #23364a;
  --card: #ffffff;
  --card-foreground: #23364a;
  --popover: #ffffff;
  --popover-foreground: #23364a;
  --primary: #087d79;
  --primary-foreground: #ffffff;
  --secondary: #edf3f5;
  --secondary-foreground: #23364a;
  --muted: #f0f4f6;
  --muted-foreground: #617184;
  --accent: #e9f4f2;
  --accent-foreground: #075f5c;
  --border: #cedde6;
  --input: #cddae2;
  --ring: #087d79;
  --infr-ink: #122b43;
  --infr-gold: #956a24;
  --infr-gold-soft: #f5eddb;
  --infr-line: #c9dbe5;
  --infr-line-hover: #88afb7;
  --infr-inner-highlight: inset 0 1px 0 #ffffffed;
  --infr-card-shadow: var(--infr-inner-highlight), 0 1px 2px #173f5605, 0 9px 26px #173f5609;
  --infr-card-shadow-hover: var(--infr-inner-highlight), 0 4px 9px #173f5609, 0 18px 34px #173f5614;
  --infr-home-photo-overlay: linear-gradient(100deg, #fbfcfbf5 0%, #f8fbfae6 36%, #f0f7f7c2 60%, #e3f0f261 83%, #dceef21a 100%);
  --infr-product-photo-overlay: linear-gradient(90deg, #e8f2f45c 0%, #f4f8f8d6 24%, #f8fbfad9 41%, #f8fbfad9 61%, #edf5f5a6 82%, #dceef047 100%);
  --infr-channel-photo-overlay: linear-gradient(90deg, #e7f1f35c 0%, #f7fafadb 30%, #fbfcfbe6 42%, #f7fafade 62%, #e8f3f380 100%);
  --infr-about-photo-overlay: linear-gradient(100deg, #fafcfbf2 0%, #f9fbfaeb 32%, #f2f7f7bf 60%, #deeff35c 100%);
  background: var(--theme-bg);
  color: var(--theme-text);
  scroll-padding-top: 90px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
html[data-infr-theme="light"] body {
  background: var(--theme-bg);
  color: var(--theme-text);
  font-family: Inter, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  text-rendering: optimizeLegibility;
}
html[data-infr-theme="light"] ::selection { background: #cde8e3; color: #123c40; }
html[data-infr-theme="light"] :is(button, a, input, select, textarea):focus-visible {
  outline: 2px solid #168a90c4;
  outline-offset: 3px;
}
html[data-infr-theme="light"] :is(a, button) { -webkit-tap-highlight-color: #0a817518; }
html[data-infr-theme="light"] :is(h1, h2, h3, h4) { text-wrap: balance; }
html[data-infr-theme="light"] h1,
html[data-infr-theme="light"] h1 * { text-shadow: none !important; }
html[data-infr-theme="light"] :is(p, li) { text-wrap: pretty; }
html[data-infr-theme="light"] .theme-divider { border-color: var(--theme-border); }
html[data-infr-theme="light"] .theme-glow { box-shadow: var(--infr-card-shadow); }

/* 02. A light masthead aligned to the same content rail as the product centre. */
html[data-infr-theme="light"] header {
  background: #fffffffa !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-bottom: 1px solid #cbdde6d9 !important;
  box-shadow: inset 0 1px 0 #fff, 0 3px 18px #1d3c5008 !important;
}
html[data-infr-theme="light"] header > .max-w-7xl,
html[data-infr-theme="light"] .min-h-screen:has(> .infr-home-hero) .container {
  width: 100%;
  max-width: 1600px;
  padding-left: 16px;
  padding-right: 16px;
}
html[data-infr-theme="light"] header a.group:has(> img) {
  width: 230px;
  justify-content: flex-start;
  background: linear-gradient(110deg, #fff, #f4f8fa);
  border: 1px solid #d8e3e9;
  border-radius: 9px;
  padding: 4px 12px;
  box-shadow: inset 0 1px 0 #fff, 0 2px 6px #24485706;
}
html[data-infr-theme="light"] header a.group > img {
  content: url("/images/company-logo.png");
  width: 204px;
  max-width: 100%;
  min-width: 0 !important;
  height: 48px;
  max-height: 48px !important;
  aspect-ratio: 567 / 156;
  object-fit: contain;
  mix-blend-mode: multiply;
}
html[data-infr-theme="light"] header nav a { color: #44566a !important; letter-spacing: .01em !important; }
html[data-infr-theme="light"] header nav a:hover {
  color: #075f5c !important;
  background: #edf5f4 !important;
  border-color: #deece8 !important;
}
html[data-infr-theme="light"] header nav a[aria-current="page"] {
  color: #076763 !important;
  background: #e8f3f0 !important;
  border-color: #cce1dc !important;
  font-weight: 650 !important;
}
html[data-infr-theme="light"] header button[style*="rgba(255, 160, 140"] {
  color: #b43d2e !important;
  background: #fff2ed !important;
  border-color: #f1d8ce !important;
}
html[data-infr-theme="light"] header :is(a[href^="tel:"], button[title]) { color: #53697b !important; }
html[data-infr-theme="light"] header button[title]:hover { background: #edf4f6 !important; color: #096f70 !important; }
html[data-infr-theme="light"] header button[aria-label="Toggle menu"] { color: #17364c !important; }
html[data-infr-theme="light"] header > .overflow-hidden {
  box-shadow: 0 14px 22px #20374a0a;
  max-height: calc(100dvh - 70px);
  overflow-y: auto;
}
html[data-infr-theme="light"] header > .overflow-hidden a:hover { color: #096f70 !important; background: #edf5f4 !important; }

/* 03. Daylight hero: visible architecture, with the veil concentrated behind text. */
html[data-infr-theme="light"] .infr-home-hero {
  background: #f1f5f6;
  min-height: min(880px, 100svh);
  border-bottom: 1px solid var(--infr-line);
  box-shadow: inset 0 -1px 0 #ffffffbf;
  isolation: isolate;
}
html[data-infr-theme="light"] .infr-home-hero > .bg-cover {
  opacity: .86;
  filter: saturate(.68) contrast(1.04);
  background-position: center right;
}
html[data-infr-theme="light"] .infr-home-hero > [style*="background: var(--theme-hero-bg)"] {
  opacity: 1 !important;
  background: var(--infr-home-photo-overlay) !important;
}
html[data-infr-theme="light"] .infr-home-hero > [style*="background-size"] { opacity: .045 !important; }
html[data-infr-theme="light"] .infr-home-hero > .relative { padding-top: 132px; padding-bottom: 70px; }
html[data-infr-theme="light"] .infr-home-hero .max-w-3xl { width: 100%; max-width: none; }
html[data-infr-theme="light"] .infr-home-hero h1 {
  max-width: 1000px;
  color: #122e45;
  font-weight: 780;
  letter-spacing: -.045em;
  font-size: clamp(2.15rem, 4.3vw, 4.2rem);
  line-height: 1.24;
  text-shadow: none;
}
html[data-infr-theme="light"] .infr-home-hero h1 > span:first-child { color: #17374d !important; }
html[data-infr-theme="light"] .infr-home-hero h1 > .bg-clip-text {
  color: #8a6425 !important;
  background-image: none !important;
  background-clip: border-box !important;
  -webkit-background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
  text-shadow: none !important;
}
html[data-infr-theme="light"] .infr-home-hero .flex.flex-col > span:first-child {
  align-self: flex-start;
  color: #826126 !important;
  background: #fbf5e9 !important;
  border-color: #e8dbc0 !important;
  font-size: 11px;
  letter-spacing: .14em;
  padding: 7px 13px;
}
html[data-infr-theme="light"] .infr-home-hero p.text-lg {
  color: #54697b !important;
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.9;
  max-width: 630px;
}
html[data-infr-theme="light"] .infr-home-actions { width: 100%; max-width: 790px; justify-content: flex-start; gap: 18px; margin-top: 8px; }
html[data-infr-theme="light"] .infr-home-actions > a:first-child {
  background: #116f6f !important;
  color: #fff !important;
  box-shadow: inset 0 1px 0 #ffffff33, 0 2px 5px #0c6b7014, 0 12px 22px #0c6b701c !important;
  border: 1px solid #0b6468;
  border-radius: 11px;
  padding: 14px 23px;
}
html[data-infr-theme="light"] .infr-home-actions > a:first-child:hover { transform: translateY(-2px); background: #075f60 !important; }
html[data-infr-theme="light"] .infr-home-quicklinks {
  flex: 0 1 auto;
  justify-content: flex-start;
  gap: 7px;
  margin-left: 10px;
}
html[data-infr-theme="light"] .infr-home-quicklinks a {
  color: #3f6273 !important;
  background: #ffffffd1 !important;
  border: 1px solid #c5d8e2 !important;
  border-radius: 7px;
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 500;
  box-shadow: var(--infr-inner-highlight), 0 2px 4px #24485706;
  transition: background .2s, border-color .2s, color .2s, transform .2s;
}
html[data-infr-theme="light"] .infr-home-quicklinks a:hover {
  color: #076762 !important;
  border-color: #9bc8bf !important;
  background: #f0f8f5 !important;
  transform: translateY(-1px);
}
html[data-infr-theme="light"] .infr-home-contact {
  color: #253f54 !important;
  background: #ffffffcf !important;
  border: 1px solid #b5cbd8 !important;
  box-shadow: var(--infr-inner-highlight), 0 2px 4px #24485705;
  border-radius: 11px;
  padding: 14px 21px;
  margin-left: auto;
}
html[data-infr-theme="light"] .infr-home-contact:hover { background: #fff !important; opacity: 1 !important; border-color: #7c9aab !important; }
html[data-infr-theme="light"] .infr-home-hero .mt-16.grid { margin-top: 44px; gap: 16px; max-width: 790px; }
html[data-infr-theme="light"] .infr-home-hero .mt-16.grid > div {
  background: linear-gradient(135deg, #fffffff2 0%, #f3f8fbe8 100%) !important;
  border: 1px solid #c5d9e2 !important;
  border-radius: 14px;
  box-shadow: var(--infr-inner-highlight), inset 0 -1px 0 #c9dbe326, 0 5px 15px #294a5b08, 0 14px 28px #294a5b08;
  backdrop-filter: none;
}
html[data-infr-theme="light"] .infr-home-hero .mt-16.grid .text-2xl { color: #28615f !important; font-size: 27px; font-variant-numeric: tabular-nums; }
html[data-infr-theme="light"] .infr-home-hero .mt-16.grid .text-sm { color: #617184 !important; font-size: 12px; }
html[data-infr-theme="light"] .infr-home-hero .mt-16.grid .text-center { min-width: 0; }
html[data-infr-theme="light"] .infr-home-hero .mt-16.grid .w-px {
  background: linear-gradient(180deg, transparent 0%, #a7bfcc 22%, #a7bfcc 78%, transparent 100%) !important;
  box-shadow: 1px 0 0 #ffffffbf;
}
html[data-infr-theme="light"] .infr-home-hero .mt-16.grid :is(.text-2xl, .text-sm) {
  white-space: nowrap !important;
  text-wrap: nowrap !important;
}

/* 04. Home sections. Fine separators and real depth, not neon glows. */
html[data-infr-theme="light"] section.py-14.border-y { background: #fff !important; border-color: var(--infr-line) !important; box-shadow: var(--infr-inner-highlight); }
html[data-infr-theme="light"] section.py-14.border-y .h-20 {
  background: #fcfdfd !important;
  border-color: #d6e2e9 !important;
  box-shadow: var(--infr-inner-highlight), 0 2px 6px #1d3c5004;
}
html[data-infr-theme="light"] section.py-14.border-y .h-20:hover { border-color: #b8cdd5 !important; transform: translateY(-2px); }
html[data-infr-theme="light"] section.py-24 { padding-top: 84px; padding-bottom: 84px; }
html[data-infr-theme="light"] section .text-center.mb-14 { margin-bottom: 42px; }
html[data-infr-theme="light"] section .grid.sm\:grid-cols-2.lg\:grid-cols-4 > div,
html[data-infr-theme="light"] section .grid.sm\:grid-cols-2.lg\:grid-cols-3 > div {
  border-color: var(--infr-line) !important;
  box-shadow: var(--infr-card-shadow);
}
html[data-infr-theme="light"] section .grid.sm\:grid-cols-2.lg\:grid-cols-4 > div:hover,
html[data-infr-theme="light"] section .grid.sm\:grid-cols-2.lg\:grid-cols-3 > div:hover {
  box-shadow: var(--infr-card-shadow-hover);
  border-color: var(--infr-line-hover) !important;
}
html[data-infr-theme="light"] section .overflow-hidden.h-40 { height: 188px; border-bottom: 1px solid #cadbe3; box-shadow: inset 0 -1px 0 #ffffff66; }
html[data-infr-theme="light"] section .p-5.flex.flex-col.flex-1 { padding: 23px; }
html[data-infr-theme="light"] section .p-5.flex.flex-col.flex-1 > .text-lg { font-size: 18px; letter-spacing: -.02em; }
html[data-infr-theme="light"] section .p-5.flex.flex-col.flex-1 > .text-sm { line-height: 1.8; }
html[data-infr-theme="light"] section .rounded-3xl.text-center {
  background: linear-gradient(120deg, #eef5f4 0%, #f9f8f2 100%) !important;
  border: 1px solid #d8e6e3 !important;
  box-shadow: 0 12px 40px #1d3c5005;
}
html[data-infr-theme="light"] #hot-deals .shadow-lg { box-shadow: 0 3px 9px #a53d2710; }
html[data-infr-theme="light"] #hot-deals [style*="box-shadow: 0 6px 32px"] { box-shadow: var(--infr-card-shadow) !important; outline-color: #eedcd6 !important; }

/* 05. Product center. Airy banner, orderly filter panel, legible information cards. */
html[data-infr-theme="light"] .infr-products-hero {
  background: linear-gradient(110deg, #edf4f5 0%, #f9faf8 60%, #edf3f5 100%) !important;
  border-bottom: 1px solid var(--infr-line);
  box-shadow: inset 0 -1px 0 #ffffffbf;
  padding-top: 109px !important;
  padding-bottom: 35px !important;
}
html[data-infr-theme="light"] .infr-products-hero > [style*="background-image: url"] { opacity: .8; filter: saturate(.68) contrast(1.04) !important; }
html[data-infr-theme="light"] .infr-products-hero > [style*="background: var(--theme-bg)"] {
  background: var(--infr-product-photo-overlay) !important;
  opacity: 1 !important;
}
html[data-infr-theme="light"] .infr-products-hero .infr-product-badge {
  color: #357271 !important;
  background: #ffffffbf !important;
  border-color: #c9dedd !important;
  font-size: 10px !important;
  letter-spacing: .16em;
  padding: 5px 11px;
}
html[data-infr-theme="light"] .infr-products-hero h1 {
  color: #17374b !important;
  font-size: 34px !important;
  font-weight: 730;
  letter-spacing: -.035em;
  margin-top: 13px;
  margin-bottom: 10px !important;
}
html[data-infr-theme="light"] .infr-products-hero p { color: #607484 !important; font-size: 14px !important; }
html[data-infr-theme="light"] nav[aria-label="Breadcrumb"] a { color: #607487 !important; }
html[data-infr-theme="light"] nav[aria-label="Breadcrumb"] a:hover { color: #086e68 !important; }
html[data-infr-theme="light"] nav[aria-label="Breadcrumb"] li > span { color: #076e67 !important; }
html[data-infr-theme="light"] nav[aria-label="Breadcrumb"] li > svg { color: #8193a1 !important; }
html[data-infr-theme="light"] .infr-products-page .flex.flex-col.gap-4.mb-8.p-4 {
  background: #fff !important;
  border-color: var(--infr-line) !important;
  border-radius: 16px;
  box-shadow: var(--infr-inner-highlight), 0 2px 4px #1a405604, 0 10px 24px #1a405607;
  padding: 22px;
}
html[data-infr-theme="light"] .infr-products-page .flex.flex-wrap.gap-2 > button {
  min-height: 40px;
  box-shadow: none !important;
  font-size: 13px !important;
  letter-spacing: 0;
}
html[data-infr-theme="light"] .infr-products-page .flex.flex-wrap.gap-2 > button:hover { border-color: #9dc5bf !important; }
html[data-infr-theme="light"] .infr-products-page button.self-start {
  background: color-mix(in srgb, var(--theme-accent) 9%, var(--theme-surface)) !important;
  border-color: color-mix(in srgb, var(--theme-accent) 30%, var(--theme-border)) !important;
  box-shadow: var(--infr-inner-highlight), 0 2px 5px #24364708 !important;
}
html[data-infr-theme="light"] .infr-products-page .flex.gap-1.rounded-xl { background: #eaf0f3 !important; border: 1px solid #c7dae4; box-shadow: var(--infr-inner-highlight), 0 2px 4px #24485703; }
html[data-infr-theme="light"] .infr-products-page .flex.gap-1.rounded-xl > button {
  color: #566f80 !important;
  background: transparent !important;
  box-shadow: none !important;
}
html[data-infr-theme="light"] .infr-products-page .flex.gap-1.rounded-xl > button:hover { background: #f8fbfc !important; }
html[data-infr-theme="light"] .infr-products-page .flex.gap-1.rounded-xl > button[style*="linear-gradient"] {
  color: #fff !important;
  background: #116f6f !important;
  box-shadow: 0 3px 8px #0c6b7014 !important;
}
html[data-infr-theme="light"] .infr-products-page .flex.gap-1.rounded-xl > button:first-child {
  color: #a53c32 !important;
  background: #fff1ec !important;
}
html[data-infr-theme="light"] .infr-products-page .flex.gap-1.rounded-xl > button:first-child:hover { background: #fbe5de !important; }
html[data-infr-theme="light"] .infr-products-page .flex.gap-1.rounded-xl > button:first-child[style*="linear-gradient"] {
  color: #fff !important;
  background: #ae3c33 !important;
}
html[data-infr-theme="light"] .infr-products-page a[style*="linear-gradient"][style*="var(--theme-accent)"] {
  color: #fff !important;
  background: #116f6f !important;
  box-shadow: 0 5px 14px #087d7918 !important;
}
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl {
  background: #fff !important;
  border: 1px solid var(--infr-line) !important;
  box-shadow: var(--infr-card-shadow) !important;
  border-radius: 15px;
  transition: box-shadow .22s ease, border-color .22s ease, transform .22s ease;
}
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl:hover {
  border-color: var(--infr-line-hover) !important;
  box-shadow: var(--infr-card-shadow-hover) !important;
  transform: translateY(-3px);
}
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl:focus-within {
  border-color: var(--infr-line-hover) !important;
  box-shadow: var(--infr-inner-highlight), 0 0 0 2px #168a901c, 0 12px 28px #173f560d !important;
}
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl > a { padding: 10px 10px 0; }
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl > a > .relative {
  background: #f8fafb !important;
  border: 1px solid #dfe8ee !important;
  box-shadow: inset 0 1px 0 #ffffffbf;
  border-radius: 10px;
}
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl > a .inset-x-0 { display: none; }
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl > a .absolute.bottom-3 {
  color: #08706a !important;
  background: #edf7f3f2 !important;
  border-color: #c2ddd3 !important;
  backdrop-filter: blur(8px);
  font-size: 11px;
}
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl > a .absolute.top-3.left-3 {
  color: #785927 !important;
  background: #f6eddbf2 !important;
  border: 1px solid #e7d6b6;
  font-size: 11px;
  padding: 5px 8px;
}
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl > .flex { padding: 18px; gap: 13px; }
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl .font-mono {
  color: #6b7f8c !important;
  font-size: 11px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl .text-lg.font-bold {
  color: #16384e !important;
  font-size: 16px;
  line-height: 1.55;
  letter-spacing: -.015em;
}
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl .flex.items-start.text-base { font-size: 13px; line-height: 1.7; }
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl .pt-3\.5 { border-top-color: #e7edef !important; }
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl .pt-3\.5 > div.flex {
  min-width: 0;
  max-width: calc(100% - 82px) !important;
}
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl .pt-3\.5 > div.flex > img {
  max-width: 100% !important;
  height: 26px;
}
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl .pt-3\.5 > div.flex:has(> img) > span { display: none; }
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl .pt-3\.5 > a { flex-shrink: 0; white-space: nowrap; }
html[data-infr-theme="light"] .infr-products-page .relative.rounded-2xl.overflow-hidden h2 { color: #173c50 !important; }
html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-xl {
  border-color: var(--infr-line) !important;
  background: #fff !important;
  box-shadow: var(--infr-card-shadow);
}

/* 06. Product detail. Clean gallery and engineering-sheet clarity. */
html[data-infr-theme="light"] .infr-product-detail > section:first-of-type { background: #f8fafb !important; border-bottom: 1px solid #e4ebee; }
html[data-infr-theme="light"] .infr-product-detail > section:first-of-type > .absolute { opacity: .025 !important; }
html[data-infr-theme="light"] .infr-product-detail h1 { color: #15364d; letter-spacing: -.035em; }
html[data-infr-theme="light"] .infr-product-detail > section:first-of-type img.h-8.w-auto.object-contain {
  background: #19384b;
  border: 1px solid #24485d;
  border-radius: 8px;
  height: 40px;
  max-width: 150px;
  padding: 7px 10px;
  opacity: 1;
}
/* New catalog logos already include a white presentation plate; retain it intact. */
html[data-infr-theme="light"] .infr-product-detail > section:first-of-type img.h-8.w-auto.object-contain[src*="/catalog-260917/"] {
  background: #fff;
  border-color: #d5e1e7;
  padding: 3px 8px;
}
html[data-infr-theme="light"] .infr-product-detail .relative.rounded-2xl.overflow-hidden.group.flex-1 {
  background: #fff !important;
  border: 1px solid var(--infr-line) !important;
  box-shadow: var(--infr-card-shadow);
}
html[data-infr-theme="light"] .infr-product-detail .flex-shrink-0.w-16.h-16 {
  background: #fff !important;
  border-radius: 8px;
  box-shadow: 0 2px 4px #203c4b04;
}
html[data-infr-theme="light"] .infr-product-detail [class*="text-[#8BA8C8]"] { color: #5a7182 !important; }
html[data-infr-theme="light"] .infr-product-detail [class*="text-[#00D4AA]"] { color: #087b73 !important; }
html[data-infr-theme="light"] .infr-product-detail [style*="color: rgb(139, 168, 200)"] { color: #5a7182 !important; }
html[data-infr-theme="light"] .infr-product-detail [style*="color: rgb(74, 107, 138)"] { color: #69808c !important; }
html[data-infr-theme="light"] .infr-product-detail [style*="background: rgb(7, 12, 17)"] { background: #edf3f5 !important; }
html[data-infr-theme="light"] .infr-product-detail .grid.lg\:grid-cols-2.gap-5 > .rounded-2xl {
  background: #fff !important;
  border: 1px solid var(--infr-line) !important;
  border-radius: 12px;
  box-shadow: var(--infr-inner-highlight), 0 3px 12px #203c4b06;
}
html[data-infr-theme="light"] .infr-product-detail .rounded-2xl > .px-5.py-3 {
  background: #eaf3f3 !important;
  border-bottom: 1px solid #c6dedf !important;
  box-shadow: var(--infr-inner-highlight);
  min-height: 47px;
}
html[data-infr-theme="light"] .infr-product-detail .divide-y > .flex { border-color: #e0e9ef !important; }
html[data-infr-theme="light"] .infr-product-detail .divide-y > .flex:nth-child(even) { background: #f9fbfc; }
html[data-infr-theme="light"] .infr-product-detail .divide-y > .flex:hover { background: #f0f7f6 !important; }
html[data-infr-theme="light"] .infr-product-detail .divide-y > .flex > .text-xs { color: #697d8c !important; font-size: 12px; line-height: 1.8; }
html[data-infr-theme="light"] .infr-product-detail .divide-y > .flex > .text-sm { color: #29485c !important; line-height: 1.8; overflow-wrap: anywhere; }
html[data-infr-theme="light"] .infr-product-detail .flex.gap-2.mb-6 > button {
  border-color: #d1e1e5 !important;
  min-height: 43px;
  box-shadow: none;
}
html[data-infr-theme="light"] .infr-product-detail .relative.rounded-3xl.text-center { background: linear-gradient(120deg, #edf5f3, #f8f7f0) !important; }
html[data-infr-theme="light"] .infr-product-detail .group.relative.rounded-2xl.cursor-default {
  --theme-text: #f0f6fa;
  --theme-text-strong: #fff;
  --theme-muted: #c2d1dc;
  background: #183749 !important;
}
html[data-infr-theme="light"] .infr-product-detail .group.relative.rounded-2xl.cursor-default [class*="text-[#00D4AA]"] { color: #93d7c6 !important; }
html[data-infr-theme="light"] .infr-product-detail .group.relative.rounded-2xl.cursor-default [style*="color: rgb(139, 168, 200)"] { color: #c2d1dc !important; }
html[data-infr-theme="light"] .infr-product-detail .rounded-xl.p-4.text-center { background: #f1f6f6 !important; border-color: #deeaeb !important; }

/* 07. Secondary pages: preserve photography, remove isolated legacy dark panels. */
/* These four observed hero structures identify Services, Cases, About, Contact.
   Product detail uses none of them, so gallery/scenario photographs are unaffected. */
html[data-infr-theme="light"] section:is(.relative.py-24.px-6, .pt-28.pb-14, [class*="min-h-[540px]"], :has(> .relative.max-w-6xl.py-24.text-center)):has(h1) {
  background: #f3f7f6 !important;
  border-bottom: 1px solid var(--infr-line) !important;
  box-shadow: inset 0 -1px 0 #ffffffbf;
  isolation: isolate;
}
html[data-infr-theme="light"] section:is(.relative.py-24.px-6, .pt-28.pb-14, [class*="min-h-[540px]"], :has(> .relative.max-w-6xl.py-24.text-center)):has(h1) > .absolute[style*="background-image: url"] {
  opacity: .78 !important;
  filter: saturate(.68) contrast(1.03) !important;
}
html[data-infr-theme="light"] section:is(.relative.py-24.px-6, .pt-28.pb-14, [class*="min-h-[540px]"], :has(> .relative.max-w-6xl.py-24.text-center)):has(h1) > .absolute.inset-0[style*="background:"][style*="var(--theme-bg)"] {
  background: var(--infr-channel-photo-overlay) !important;
  opacity: 1 !important;
}
html[data-infr-theme="light"] section:is(.relative.py-24.px-6, .pt-28.pb-14, [class*="min-h-[540px]"], :has(> .relative.max-w-6xl.py-24.text-center)):has(h1) > .absolute[style*="background-image:"]:not([style*="background-image: url"]) {
  opacity: .055 !important;
}
html[data-infr-theme="light"] section:is(.relative.py-24.px-6, .pt-28.pb-14, [class*="min-h-[540px]"], :has(> .relative.max-w-6xl.py-24.text-center)):has(h1) > .absolute[style*="radial-gradient"] {
  opacity: .08 !important;
}
html[data-infr-theme="light"] section:is(.relative.py-24.px-6, .pt-28.pb-14, [class*="min-h-[540px]"], :has(> .relative.max-w-6xl.py-24.text-center)):has(h1) h1 { color: #17374b !important; }
html[data-infr-theme="light"] section:is(.relative.py-24.px-6, .pt-28.pb-14, [class*="min-h-[540px]"], :has(> .relative.max-w-6xl.py-24.text-center)):has(h1) p[style*="var(--theme-muted)"] { color: #536b7d !important; }
html[data-infr-theme="light"] section[class*="min-h-[540px]"]:has(h1) {
  --infr-channel-photo-overlay: var(--infr-about-photo-overlay);
}
html[data-infr-theme="light"] .grid.grid-cols-2.lg\:grid-cols-4 .text-2xl.font-bold[style*="-webkit-text-fill-color"] {
  background: none !important;
  color: var(--theme-accent) !important;
  -webkit-text-fill-color: var(--theme-accent) !important;
}
html[data-infr-theme="light"] .max-w-5xl.mx-auto.relative.overflow-hidden.rounded-3xl.border {
  background: linear-gradient(120deg, #eaf3f3 0%, #f9f7f0 100%) !important;
  border-color: #d3e2e2 !important;
  box-shadow: var(--infr-card-shadow);
}
html[data-infr-theme="light"] h1 [style*="background: linear-gradient(90deg"] {
  background: linear-gradient(105deg, #0d7772 0%, #0b6765 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
}
html[data-infr-theme="light"] [style*="color: rgb(200, 216, 232)"] { color: #49667b !important; }
html[data-infr-theme="light"] [style*="color: rgb(52, 208, 88)"] { color: #21734c !important; }
html[data-infr-theme="light"] [style*="color: rgb(255, 155, 155)"] { color: #b13b35 !important; }
html[data-infr-theme="light"] .rounded-2xl.p-8.border,
html[data-infr-theme="light"] .rounded-2xl.p-6.border,
html[data-infr-theme="light"] .rounded-2xl.overflow-hidden.border.flex.flex-col,
html[data-infr-theme="light"] .lg\:col-span-3.rounded-2xl.p-8 {
  border-color: var(--infr-line) !important;
  box-shadow: var(--infr-card-shadow);
}

/* 08. Form controls, dialogs, and the small application UI. */
html[data-infr-theme="light"] :is(input:not([type="checkbox"]):not([type="radio"]), textarea, select) {
  background-color: #fcfdfd !important;
  color: #233f52 !important;
  border-color: #cddce4 !important;
  box-shadow: inset 0 1px 2px #173b4d03 !important;
  caret-color: #087d79;
}
html[data-infr-theme="light"] :is(input, textarea)::placeholder { color: #81929e !important; opacity: 1 !important; }
html[data-infr-theme="light"] :is(input, textarea, select):focus { border-color: #438f8a !important; background-color: #fff !important; box-shadow: var(--infr-inner-highlight), 0 0 0 2px #087d7917 !important; }
html[data-infr-theme="light"] select option { background: #fff; color: #233f52; }
html[data-infr-theme="light"] :is(button, a)[style*="background: var(--theme-grad)"] { color: #fff !important; box-shadow: 0 5px 14px #087d7918 !important; }
html[data-infr-theme="light"] :is(button, a)[style*="background: var(--theme-grad)"]:hover { filter: brightness(.96); }
html[data-infr-theme="light"] [role="dialog"],
html[data-infr-theme="light"] [data-slot="dialog-content"] {
  background: #fff !important;
  color: #243e53 !important;
  border: 1px solid #dce6ec !important;
  box-shadow: 0 24px 80px #12324633 !important;
}
html[data-infr-theme="light"] .fixed.rounded-2xl.shadow-2xl.flex.flex-col {
  box-shadow: 0 15px 60px #23445929, 0 2px 10px #2344590a !important;
  border-color: #bdd8d4 !important;
}
html[data-infr-theme="light"] .fixed.bottom-6.right-5 .animate-ping { animation-duration: 3.5s; opacity: .12 !important; }
html[data-infr-theme="light"] .fixed.bottom-6.right-5 > .relative > .animate-ping { display: none; }
html[data-infr-theme="light"] .fixed.bottom-6.right-5 .absolute.inset-1.rounded-full {
  box-shadow: 0 0 0 2px var(--theme-surface), 0 0 0 3px var(--theme-border), 0 8px 22px #20304020 !important;
}
html[data-infr-theme="light"] .fixed.bottom-6.right-5 .shadow-md { color: #fff !important; background: #116f6f !important; }

/* 09. Footer as a quiet, pale slate closing panel. */
html[data-infr-theme="light"] footer { background: #eaf0f3 !important; border-top-color: #c7d9e3 !important; box-shadow: var(--infr-inner-highlight); }
html[data-infr-theme="light"] footer a.group:has(> img.h-9) { background: #183244; padding: 8px 11px; border-radius: 9px; }
html[data-infr-theme="light"] footer h4 { color: #2b495d !important; letter-spacing: .01em; }
html[data-infr-theme="light"] footer :is(a, a span):hover { color: #086c69 !important; }
html[data-infr-theme="light"] footer a:hover svg { color: #087d79 !important; }

/* 10. Small screens are deliberately laid out, not merely shrunk. */
@media (min-width: 640px) {
  html[data-infr-theme="light"] header > .max-w-7xl,
  html[data-infr-theme="light"] .min-h-screen:has(> .infr-home-hero) .container { padding-left: 24px; padding-right: 24px; }
}
@media (min-width: 1024px) {
  html[data-infr-theme="light"] header > .max-w-7xl,
  html[data-infr-theme="light"] .min-h-screen:has(> .infr-home-hero) .container { padding-left: 32px; padding-right: 32px; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  html[data-infr-theme="light"] header a.group:has(> img) { width: 204px; padding-left: 10px; padding-right: 10px; }
  html[data-infr-theme="light"] header nav :is(a, button) { padding-left: 9px; padding-right: 9px; font-size: 13px !important; letter-spacing: 0 !important; }
  html[data-infr-theme="light"] header a[href^="tel:"],
  html[data-infr-theme="light"] header a[href^="tel:"] + span { display: none; }
}
@media (max-width: 1023px) {
  html[data-infr-theme="light"] .infr-home-hero { min-height: 760px; }
  html[data-infr-theme="light"] .infr-home-hero > .relative { padding-top: 115px; padding-bottom: 48px; }
  html[data-infr-theme="light"] .infr-home-hero h1 { font-size: clamp(2.3rem, 5.4vw, 3.8rem); }
  html[data-infr-theme="light"] .infr-home-hero > .bg-cover { background-position: 70% center; opacity: .76; }
}
@media (min-width: 761px) and (max-width: 900px) {
  html[data-infr-theme="light"] .infr-home-quicklinks { order: 3; flex: 1 1 100%; margin-left: 0; }
}
@media (max-width: 760px) {
  html[data-infr-theme="light"] .infr-home-actions { gap: 10px; }
  html[data-infr-theme="light"] .infr-home-actions > a:first-child,
  html[data-infr-theme="light"] .infr-home-contact { padding: 13px 17px; font-size: 14px; }
  html[data-infr-theme="light"] .infr-home-quicklinks { margin-top: 2px; margin-left: 0; flex: 1 1 100%; flex-wrap: wrap; }
  html[data-infr-theme="light"] .infr-home-quicklinks a { font-size: 11px; padding: 8px 9px; }
  html[data-infr-theme="light"] .infr-product-detail .divide-y > .flex > .w-36 { width: 32%; margin-right: 12px; }
  html[data-infr-theme="light"] section.py-24 { padding-top: 56px; padding-bottom: 56px; }
}
@media (max-width: 600px) {
  html[data-infr-theme="light"] header a.group > img { width: 148px; height: auto; max-height: 41px !important; }
  html[data-infr-theme="light"] header a.group:has(> img) { width: 170px; padding: 5px 10px; }
  html[data-infr-theme="light"] .infr-home-hero { min-height: auto; }
  html[data-infr-theme="light"] .infr-home-hero > [style*="background: var(--theme-hero-bg)"] {
    background: linear-gradient(105deg, #f9fcfbf2 0%, #f6faf8d9 56%, #e4f0f38c 100%) !important;
  }
  html[data-infr-theme="light"] .infr-products-hero > [style*="background: var(--theme-bg)"],
  html[data-infr-theme="light"] section:is(.relative.py-24.px-6, .pt-28.pb-14, :has(> .relative.max-w-6xl.py-24.text-center)):has(h1) > .absolute.inset-0[style*="background:"][style*="var(--theme-bg)"] {
    background: linear-gradient(180deg, #f2f8f7b3 0%, #f9fbf9eb 28%, #f6faf8eb 78%, #e1eff2a6 100%) !important;
  }
  html[data-infr-theme="light"] .infr-home-hero > .relative { padding-top: 105px; padding-bottom: 38px; }
  html[data-infr-theme="light"] .infr-home-hero h1 { font-size: clamp(1.94rem, 7vw, 2.65rem); line-height: 1.32; letter-spacing: -.035em; }
  html[data-infr-theme="light"] .infr-home-hero .flex.flex-col.gap-6 { gap: 22px; }
  html[data-infr-theme="light"] .infr-home-hero .mt-16.grid { margin-top: 30px; gap: 10px; }
  html[data-infr-theme="light"] .infr-home-hero .mt-16.grid > div { padding: 17px 8px; gap: 10px; }
  html[data-infr-theme="light"] .infr-home-hero .mt-16.grid .text-2xl { font-size: clamp(17px, 4.6vw, 21px); letter-spacing: -.02em; }
  html[data-infr-theme="light"] .infr-home-hero .mt-16.grid .text-sm { font-size: 10px; }
  html[data-infr-theme="light"] .infr-home-hero .mt-16.grid .h-10 { height: 28px; }
  html[data-infr-theme="light"] .infr-products-hero { padding-top: 94px !important; padding-bottom: 29px !important; }
  html[data-infr-theme="light"] .infr-products-hero h1 { font-size: 28px !important; }
  html[data-infr-theme="light"] .infr-products-hero p { font-size: 12px !important; line-height: 1.9; }
  html[data-infr-theme="light"] .infr-products-page .flex.flex-col.gap-4.mb-8.p-4 { padding: 15px; }
  html[data-infr-theme="light"] .infr-products-page .flex.gap-1.rounded-xl {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: 100%;
    max-width: 420px;
    gap: 4px;
  }
  html[data-infr-theme="light"] .infr-products-page .flex.gap-1.rounded-xl > button {
    min-width: 0;
    justify-content: center;
    gap: 4px;
    padding: 10px 6px;
    font-size: 12px;
    white-space: nowrap;
    text-wrap: nowrap;
  }
  html[data-infr-theme="light"] .infr-products-page .flex.gap-1.rounded-xl > button > svg { flex-shrink: 0; }
  html[data-infr-theme="light"] .infr-products-page .grid.grid-cols-2 { gap: 11px; }
  html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl > .flex { padding: 12px; gap: 10px; }
  html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl .text-lg.font-bold { font-size: 14px; }
  html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl .flex.items-start.text-base { font-size: 11px; }
  html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl .pt-3\.5 > a { font-size: 12px; gap: 3px; }
  html[data-infr-theme="light"] .infr-products-page .group.relative.flex.flex-col.rounded-2xl > a .absolute.top-3.left-3 { top: 8px; left: 8px; font-size: 9px; max-width: calc(100% - 16px); }
  html[data-infr-theme="light"] .infr-products-page .flex.flex-wrap.items-center.gap-3 input { max-width: min(100%, 270px); }
  html[data-infr-theme="light"] .infr-products-page .flex.flex-wrap.items-center.gap-3 > .relative { max-width: 100%; }
  html[data-infr-theme="light"] .infr-product-detail .grid.lg\:grid-cols-2.gap-5 { gap: 14px; }
  html[data-infr-theme="light"] .infr-product-detail .divide-y > .flex { padding: 12px 15px; }
  html[data-infr-theme="light"] .infr-product-detail .divide-y > .flex > .text-sm { font-size: 12px; }
  html[data-infr-theme="light"] .infr-product-detail .relative.rounded-3xl.text-center { padding: 30px 20px; }
  html[data-infr-theme="light"] .fixed.rounded-2xl.shadow-2xl.flex.flex-col { width: calc(100vw - 24px); right: 12px; max-height: min(560px, calc(100dvh - 130px)) !important; }
  html[data-infr-theme="light"] .fixed.bottom-6.right-5 > .relative { width: 62px; height: 62px; }
  html[data-infr-theme="light"] footer .py-14 { padding-top: 44px; padding-bottom: 40px; }
}
@media (max-width: 360px) {
  html[data-infr-theme="light"] .infr-products-page .flex.gap-1.rounded-xl > button { font-size: 11px; }
  html[data-infr-theme="light"] .infr-products-page .flex.gap-1.rounded-xl > button > svg { width: 12px; height: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  html[data-infr-theme="light"] *,
  html[data-infr-theme="light"] *::before,
  html[data-infr-theme="light"] *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
