/*
Theme Name: Trueno Group Block
Theme URI: https://trgr.ru/
Description: Contrast tech full-site editing child theme for Trueno Group.
Author: Trueno Group
Template: spectra-one
Version: 2.9.2
Text Domain: trgr-block
*/

@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 100 700;
  font-display: swap;
  src: url("../../mu-plugins/wp-trgr/fonts/ibm-plex-sans-cyrillic.woff2") format("woff2-variations");
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 100 700;
  font-display: swap;
  src: url("../../mu-plugins/wp-trgr/fonts/ibm-plex-sans-latin.woff2") format("woff2-variations");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* Semantic foundation: shared by the public site and Site Editor. */
:root {
 --trgr-ink: var(--wp--preset--color--ink,#0f172a);
 --trgr-text: var(--wp--preset--color--text,#24364b);
 --trgr-muted-text: var(--wp--preset--color--muted-text,#52647a);
 --trgr-brand: var(--wp--preset--color--brand,#2563eb);
 --trgr-brand-dark: var(--wp--preset--color--brand-dark,#1d4ed8);
 --trgr-accent: var(--wp--preset--color--accent,#06b6d4);
 --trgr-surface: var(--wp--preset--color--surface,#f4f7fa);
 --trgr-border: var(--wp--preset--color--border,#d6e0eb);
 --trgr-white: var(--wp--preset--color--white,#fff);
 --trgr-header-surface: var(--wp--preset--color--header-surface,#0b1425);
 --trgr-raised: var(--wp--preset--color--raised-surface,#1c2b43);
 --trgr-on-dark: var(--wp--preset--color--on-dark,#e7edf7);
 --trgr-header-height: var(--wp--custom--layout--header-height,112px);
 --trgr-radius-control: var(--wp--custom--radius--control,6px);
 --trgr-radius-panel: var(--wp--custom--radius--panel,16px);
 --trgr-duration: var(--wp--custom--motion--duration,180ms);
 --trgr-header-layer: 30;
}
* { box-sizing: border-box; }
html { scroll-padding-top: calc(var(--trgr-header-height) + 24px); }
body.wp-trgr-site { margin:0; background:var(--trgr-white); color:var(--trgr-text); font-family:"IBM Plex Sans",Arial,sans-serif; font-size:16px; line-height:1.6; }
:where(.wp-trgr-site,.editor-styles-wrapper) :where(h1,h2,h3,h4) { color:var(--trgr-ink); font-family:inherit; font-weight:650; line-height:1.08; letter-spacing:-.035em; text-wrap:balance; }
:where(.wp-trgr-site,.editor-styles-wrapper) h1 { font-size:clamp(2.125rem,4.45vw,4rem); }
:where(.wp-trgr-site,.editor-styles-wrapper) h2 { font-size:clamp(1.75rem,3.2vw,2.75rem); }
:where(.wp-trgr-site,.editor-styles-wrapper) h3 { font-size:1.25rem; }
:where(.wp-trgr-site,.editor-styles-wrapper) :where(p,li,dd) { overflow-wrap:anywhere; }
:where(.wp-trgr-site,.editor-styles-wrapper) a { color:var(--trgr-brand); text-underline-offset:.25em; }
:is(body.wp-trgr-site,.editor-styles-wrapper) :is(a,button,input,textarea,select,summary):focus-visible { outline:3px solid var(--trgr-brand); outline-offset:4px; }
:is(body.wp-trgr-site,.editor-styles-wrapper) :is(.trgr-header-shell,.trgr-footer,.trgr-section--metrics) :focus-visible { outline-color:var(--trgr-accent); }
:where(.wp-trgr-site,.editor-styles-wrapper) :is(.wp-element-button,.wp-block-button__link,.trgr-catalog-search button,.trgr-catalog-nav button,.trgr-rfq [type=submit]) {
 min-height:52px; padding:.85rem 1.5rem; border:0; border-radius:var(--trgr-radius-control); background:var(--trgr-brand); color:var(--trgr-white); font:inherit; font-weight:600; text-decoration:none; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; gap:.6rem; box-shadow:none; transition:background var(--trgr-duration),transform var(--trgr-duration);
}
:where(.wp-trgr-site,.editor-styles-wrapper) :is(.wp-element-button,.wp-block-button__link,.trgr-catalog-search button,.trgr-catalog-nav button,.trgr-rfq [type=submit]):hover { background:var(--trgr-brand-dark); color:var(--trgr-white); }
:where(.wp-trgr-site,.editor-styles-wrapper) :is(.wp-element-button,.wp-block-button__link,.trgr-catalog-search button,.trgr-catalog-nav button,.trgr-rfq [type=submit]):active { transform:translateY(1px); }
.wp-block-buttons { gap:1rem; }
:where(.wp-trgr-site,.editor-styles-wrapper) .wp-block-button__link::after { content:'↗'; font-size:1.2em; line-height:1; margin-left:0; transition:transform var(--trgr-duration); }
:where(.wp-trgr-site,.editor-styles-wrapper) .wp-block-button__link:hover::after { transform:translate(2px,-2px); }
:where(.wp-trgr-site,.editor-styles-wrapper) .trgr-text-link { display:inline-flex; align-items:center; gap:.75rem; min-height:44px; color:var(--trgr-ink); font-weight:600; text-decoration:none; }
:where(.wp-trgr-site,.editor-styles-wrapper) .trgr-text-link::after { content:'↗'; color:var(--trgr-brand); flex-shrink:0; }
:where(.wp-trgr-site,.editor-styles-wrapper) .trgr-text-link:hover { text-decoration:underline; text-underline-offset:.25em; color:var(--trgr-brand); }
.trgr-rfq form.submitting [type=submit] { opacity:.65; cursor:progress; }
.trgr-rfq form.submitting .wpcf7-spinner { visibility:visible; }
:where(.trgr-section,.trgr-header-shell,.trgr-footer) > .alignwide { width:calc(100% - 3rem); max-width:1240px; margin-inline:auto !important; }

/* Compact navigation: secondary information above, decisions below. */
body.wp-trgr-site > .wp-site-blocks > header.wp-block-template-part { position:sticky; top:0; z-index:var(--trgr-header-layer); }
body.admin-bar.wp-trgr-site > .wp-site-blocks > header.wp-block-template-part { top:32px; }
.trgr-header-shell { background:var(--trgr-header-surface); color:var(--trgr-on-dark); padding:8px 0; }
.trgr-header-container { position:relative; }
.trgr-header-top { min-height:28px; margin:0; gap:2rem; }
.trgr-header-top .wp-block-navigation { color:var(--trgr-on-dark); }
.trgr-header-navigation .wp-block-navigation__container { gap:1.5rem; }
.trgr-header-navigation a,.trgr-header-contacts a { color:var(--trgr-on-dark); font-size:.875rem; line-height:1.4; text-decoration:none; }
.trgr-header-navigation a:hover,.trgr-header-contacts a:hover { color:var(--trgr-white); text-decoration:underline; }
.trgr-header-navigation .current-menu-item > a { color:var(--trgr-white); font-weight:650; }
.trgr-header-navigation .wp-block-navigation-submenu__toggle { font:inherit; font-size:.875rem; color:inherit; min-height:28px; }
.trgr-header-navigation .wp-block-navigation__submenu-container { min-width:290px !important; padding:.5rem; border:1px solid var(--trgr-border); box-shadow:0 12px 24px #0b14251a; }
.trgr-header-navigation .wp-block-navigation__submenu-container a { color:var(--trgr-ink); padding:.65rem .75rem; line-height:1.5; }
.trgr-header-navigation .wp-block-navigation__submenu-container a:hover { color:var(--trgr-brand); background:var(--trgr-surface); }
.trgr-context-link { margin-block:.75rem 0; }
.trgr-article-next-step .trgr-article-links { margin-block:1.5rem 0; padding-top:1.25rem; border-top:1px solid var(--trgr-border); }
.trgr-article-next-step .trgr-article-links h2 { margin:0 0 .75rem; font-size:1.125rem; line-height:1.3; }
.trgr-article-next-step .trgr-article-links .trgr-context-link { margin-block:.5rem 0; }
.wp-block-group.trgr-article-next-step.is-layout-flow { margin-block:2rem; padding:clamp(1.25rem,3vw,2rem); background:var(--trgr-surface); border:1px solid var(--trgr-border); border-radius:var(--trgr-radius-control); }
.trgr-article-next-step h2 { margin-top:0; }
.trgr-article-next-step .wp-block-buttons { margin-top:1.5rem; }
.trgr-header-contacts { margin:0; display:flex; gap:1.5rem; }
.trgr-header { min-height:68px; gap:1.25rem; margin:0; position:static; }
.trgr-header .wp-block-site-logo { flex-shrink:0; }
.trgr-header .wp-block-site-logo img { width:150px; height:auto; padding:0; background:none; border-radius:0; }
.trgr-header-cta { margin:0; flex-shrink:0; }
.trgr-header .trgr-header-cta .wp-block-button__link { white-space:nowrap; height:44px; min-height:44px; padding:0 1.125rem; }
.trgr-header .trgr-catalog-search { flex:1; margin:0; min-width:0; }
.trgr-catalog-search--compact label { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.trgr-catalog-search--compact .trgr-search-row { position:relative; gap:0; }
.trgr-catalog-search--compact input[type=search] { background:var(--trgr-raised); color:var(--trgr-white); border-color:transparent; padding-right:3.5rem; height:44px; min-height:44px; }
.trgr-catalog-search--compact input::placeholder { color:#b8c6db; opacity:1; }
.trgr-header .trgr-catalog-search--compact button { position:absolute; right:0; top:0; min-width:44px; min-height:44px; padding:0; background:transparent; }
.trgr-header .trgr-catalog-search--compact button:hover { background:#2d4160; }
.trgr-header-navigation .trgr-mobile-contact { display:none; }
.trgr-catalog-menu { margin:0; flex-shrink:0; }
.trgr-catalog-menu > summary { height:44px; min-height:44px; min-width:124px; padding:0 1rem; border-radius:var(--trgr-radius-control); color:var(--trgr-white); background:var(--trgr-raised); list-style:none; font-weight:600; cursor:pointer; display:flex; align-items:center; gap:.65rem; }
.trgr-catalog-menu > summary::-webkit-details-marker { display:none; }
.trgr-catalog-menu[open] > summary,.trgr-catalog-menu > summary:hover { background:#2d4160; }
.trgr-catalog-menu:not([open]) .trgr-megamenu { display:none; }
.trgr-megamenu { position:absolute; top:100%; left:0; right:0; max-height:calc(100dvh - var(--trgr-header-height) - 16px); overflow-y:auto; padding:1.5rem 2rem 2rem; background:var(--trgr-white); color:var(--trgr-ink); border:1px solid var(--trgr-border); border-top:3px solid var(--trgr-brand); box-shadow:0 16px 24px #0b14251a; display:grid; grid-template-columns:1.15fr 1.1fr .75fr; gap:1rem 2rem; }
.trgr-menu-all { grid-column:1/-1; font-size:1.25rem; border-bottom:1px solid var(--trgr-border); padding-bottom:1rem; }
.trgr-menu-group summary { font-size:1rem; font-weight:650; min-height:44px; list-style:none; pointer-events:none; }
.trgr-menu-group summary::-webkit-details-marker { display:none; }
.trgr-menu-group ul { display:grid; grid-template-columns:1fr 1fr; gap:0 1rem; padding:0; margin:0; list-style:none; }
.trgr-menu-type-groups { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.trgr-menu-type-groups ul { grid-template-columns:1fr; }
.trgr-menu-group a { min-height:36px; padding:.35rem 0; display:block; color:var(--trgr-text); font-size:1rem; line-height:1.4; text-decoration:none; }
.trgr-menu-group a:hover { color:var(--trgr-brand); text-decoration:underline; }
.trgr-menu-label { margin:.5rem 0; color:var(--trgr-muted-text); font-size:.875rem; line-height:1.4; }
.trgr-menu-help { padding:1.25rem; background:var(--trgr-surface); border-left:2px solid var(--trgr-accent); }
.trgr-menu-help h2 { font-size:1.75rem; margin:.75rem 0; }
.trgr-menu-help > p:not(.trgr-menu-label) { font-size:1rem; }
.trgr-menu-help .trgr-text-link { display:flex; font-size:.875rem; }
.trgr-menu-help .wp-element-button { margin-top:1rem; padding:.7rem 1rem; min-height:44px; }

/* Hero: the object and the promise lead together. */
.trgr-section { padding-block:clamp(3rem,4.5vw,4rem); }
.trgr-section--muted { background:var(--trgr-surface); }
.trgr-hero--home { background:var(--trgr-surface); padding-block:3rem; }
.trgr-hero-layout { align-items:center; gap:2rem; margin-block:0; }
.trgr-hero-layout > .wp-block-column:first-child { flex-basis:48%; }
.trgr-hero-layout > .wp-block-column:last-child { flex-basis:52%; }
.trgr-hero-layout h1 { margin:0 0 1.25rem; font-size:clamp(2.125rem,4.45vw,4rem); line-height:1.02; letter-spacing:-.045em; font-weight:700; }
.trgr-home-title-line { display:block; }
.trgr-lead { max-width:60ch; font-size:1.25rem; line-height:1.5; }
.trgr-hero-layout .trgr-lead { max-width:43ch; margin-bottom:1.5rem; font-size:1.125rem; }
.trgr-hero-actions { gap:1.5rem; margin-top:1.5rem; }
.trgr-hero-actions .wp-block-buttons,.trgr-hero-actions p { margin:0; }
.trgr-hero-actions > p a { font-weight:600; text-decoration:none; display:inline-flex; align-items:center; min-height:48px; gap:.65rem; }
.trgr-hero-actions > p a::after { content:'→'; font-size:1.25rem; }
.trgr-hero-product { margin:0; background:var(--trgr-surface); }
.trgr-section.trgr-hero--home { position:relative; isolation:isolate; box-sizing:border-box; aspect-ratio:16 / 9; min-height:0; display:flex; align-items:flex-start; padding-block:clamp(3rem,10vw,10rem); overflow:hidden; background:var(--trgr-header-surface); }
.trgr-hero--home::after { content:''; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(90deg,rgba(11,20,37,.94) 0%,rgba(11,20,37,.82) 38%,rgba(11,20,37,.15) 76%); }
.trgr-hero--home > .alignwide { position:relative; z-index:2; }
.trgr-hero-copy { max-width:620px; }
.trgr-hero--home h1,.trgr-hero--home .trgr-hero-actions > p a { color:var(--trgr-white); }
.trgr-hero--home .trgr-lead { color:var(--trgr-on-dark); }
.trgr-hero--home .trgr-hero-actions > p a::after { color:var(--trgr-accent); }
.trgr-hero--home > .trgr-hero-video { position:absolute; inset:0; margin:0; width:100%; max-width:none; height:100%; }
.trgr-hero--home :focus-visible { outline-color:var(--trgr-accent); }
.trgr-hero--home .trgr-hero-video video { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:contain; pointer-events:none; }
@media(max-width:781px) {
 .trgr-section.trgr-hero--home { aspect-ratio:auto; min-height:520px; padding-block:3rem; }
 .trgr-hero--home .trgr-hero-video video { object-fit:cover; object-position:65% center; }
 .trgr-hero--home .trgr-hero-actions { flex-wrap:wrap; row-gap:1rem; }
 .trgr-hero--home::after { background:linear-gradient(90deg,rgba(11,20,37,.9),rgba(11,20,37,.65) 65%,rgba(11,20,37,.45)); }
}
.trgr-hero-visual { display:block; position:relative; height:260px; overflow:hidden; }
.trgr-hero-visual img { width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }
.trgr-hero-product figcaption { padding-top:.75rem; font-size:.875rem; display:flex; justify-content:space-between; gap:1rem; align-items:center; }
.trgr-hero-product figcaption > span { color:var(--trgr-muted-text); max-width:12ch; line-height:1.3; }
.trgr-hero-product figcaption a { font-size:.875rem; }
.trgr-media--rack { position:relative; overflow:hidden; }
.trgr-media--rack img { position:absolute; width:145%; height:auto; max-width:none; left:50%; top:50%; transform:translate(-50%,-50%); }

/* Section roles: navigation, editorial argument, process, proof and request. */
.trgr-section > .alignwide > h2 { margin:0 0 1.25rem; }
.trgr-section--intro { padding-block:3rem; background:var(--trgr-surface); }
.trgr-section--intro h1 { margin:0 0 1.5rem; max-width:22ch; }
.trgr-section--intro .trgr-lead { max-width:65ch; margin:0; }
.trgr-section--directions > .alignwide,.trgr-section--budget > .alignwide,.trgr-section--faq > .alignwide { display:grid; grid-template-columns:.9fr 1.1fr; gap:1.5rem 4rem; align-items:start; }
.trgr-section--directions > .alignwide > h2,.trgr-section--budget > .alignwide > h2,.trgr-section--faq > .alignwide > h2 { grid-column:1; grid-row:1; }
.trgr-section--directions > .alignwide > .trgr-lead,.trgr-section--budget > .alignwide > .trgr-lead { grid-column:1; grid-row:2; }
.trgr-section--directions > .alignwide > p:not(.trgr-lead) { grid-column:1; grid-row:3; }
.trgr-category-index { display:grid; grid-template-columns:1fr 1fr; gap:1rem 2rem; }
.trgr-section--directions .trgr-category-index { grid-column:2; grid-row:1/span 3; grid-template-columns:1fr; margin:0; }
.trgr-category-index p { margin:0; }
.trgr-category-index a { min-height:56px; padding:.6rem 0; display:flex; align-items:center; justify-content:space-between; gap:1rem; color:var(--trgr-ink); font-size:1.25rem; font-weight:550; text-decoration:none; }
.trgr-category-index a::after { content:'↗'; color:var(--trgr-brand); font-size:1.5rem; flex-shrink:0; }
.trgr-category-index a:hover { color:var(--trgr-brand); }
.trgr-section--budget .trgr-budget-layout { grid-column:2; grid-row:1/span 3; display:grid; grid-template-columns:1fr; gap:2rem; margin:0; }
.trgr-budget-layout h3 { margin-top:0; }
.trgr-budget-layout p { max-width:60ch; margin-bottom:0; }
.trgr-section--budget .trgr-budget-layout > .wp-block-column { margin:0; padding-left:1.5rem; border-left:4px solid var(--trgr-accent); }
.trgr-process-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:3rem; padding-left:1.5rem; margin-top:3rem; }
.trgr-process-list li { padding-left:.5rem; }
.trgr-process-list li::marker { color:var(--trgr-brand); font-weight:650; }
.trgr-process-list strong { display:block; color:var(--trgr-ink); font-size:1.25rem; margin-bottom:1rem; }
.trgr-section--metrics { background:var(--trgr-header-surface); color:var(--trgr-on-dark); }
:where(.wp-trgr-site,.editor-styles-wrapper) .trgr-section--metrics h2 { color:var(--trgr-white); }
.trgr-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:3rem; margin-top:3rem; }
.trgr-stat p { margin:0; color:var(--trgr-on-dark); }
.trgr-stat strong { display:block; color:#67e8f9; font-weight:650; font-size:4rem; line-height:1; letter-spacing:-.05em; font-variant-numeric:tabular-nums; margin-bottom:1rem; }
.trgr-logo-wall { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1.5rem 2rem; align-items:center; margin-block:3rem; }
.trgr-logo-tile { display:flex; align-items:center; justify-content:center; min-height:88px; padding:1rem; background:var(--trgr-white); }
.trgr-logo-tile figure { margin:0; }
.trgr-logo-tile img { width:100%; max-width:150px; max-height:56px; object-fit:contain; }
.trgr-faq { display:grid; grid-template-columns:1fr 1fr; gap:2rem; }
.trgr-section--faq .trgr-faq { grid-column:2; grid-template-columns:1fr; grid-row:1/span 2; margin:0; }
.trgr-faq h3 { margin:0 0 .7rem; }
.trgr-faq p { margin:0; }
.trgr-section--request { background:var(--trgr-brand); color:var(--trgr-white); }
:where(.wp-trgr-site,.editor-styles-wrapper) .trgr-section--request :is(h2,.trgr-lead) { color:var(--trgr-white); }
.trgr-section--request > .alignwide { display:grid; grid-template-columns:.7fr 1.3fr; gap:1rem 3rem; align-items:start; }
.trgr-section--request > .alignwide > h2 { grid-column:1; grid-row:1; font-size:clamp(2rem,3.2vw,2.75rem); }
.trgr-section--request > .alignwide > .trgr-lead { grid-column:1; grid-row:2; }
.trgr-section--request > .alignwide > #contact-form { grid-column:2; grid-row:1/span 3; margin:0; padding:2rem; background:var(--trgr-white); border-radius:var(--trgr-radius-panel); color:var(--trgr-text); }

/* Home v9: objects, navigation and evidence share the space. */
.trgr-section--directions-v9 { padding-bottom:2rem; }
.trgr-directions-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 2rem; margin-top:1.75rem; }
.trgr-direction { display:grid; grid-template-columns:1.15fr .85fr; grid-template-rows:1fr auto; gap:1rem; padding:1.25rem 0; }
.trgr-direction-copy h3 { font-size:clamp(1.5rem,2.2vw,2rem); margin:0 0 .75rem; }
.trgr-direction-copy p { max-width:30ch; margin:0; color:var(--trgr-muted-text); }
.trgr-direction-image { margin:0; min-height:136px; position:relative; }
.trgr-direction-image > a { display:block; height:100%; min-height:136px; }
.trgr-direction-image img { width:100%; height:136px; object-fit:contain; }
.trgr-direction-image.trgr-media--rack img { height:auto; }
.trgr-direction-links { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:0 1.25rem; }
.trgr-direction-links p { margin:0; }
.trgr-direction-links a { font-size:1rem; }
.trgr-section--showcase > .alignwide > h2 { max-width:24ch; }
.trgr-section-tail { margin:1.5rem 0 0; text-align:right; }
.trgr-section--supply { background:var(--trgr-surface); }
.trgr-supply-steps { gap:2rem; margin:1.75rem 0 0; }
.trgr-supply-steps h3 { margin:0 0 .75rem; }
.trgr-supply-steps p { margin:0; max-width:45ch; }
.trgr-supply-steps > .wp-block-column + .wp-block-column { padding-left:1rem; }
.trgr-section--proof > .alignwide { display:grid; grid-template-columns:1fr 1fr; gap:1rem 3rem; }
.trgr-section--proof h2,.trgr-section--proof .trgr-lead { grid-column:1; margin:0; }
.trgr-section--proof .trgr-lead { font-size:1rem; }
.trgr-section--proof .trgr-stats { grid-column:1; gap:1rem; margin-top:1.5rem; }
.trgr-section--proof > .alignwide > .trgr-context-link { grid-column:1; }
.trgr-section--proof > .alignwide > .trgr-context-link a { color:var(--trgr-white); }
.trgr-section--proof > .alignwide > .trgr-context-link a::after { color:var(--trgr-accent); }
.trgr-section--proof .trgr-stat strong { font-size:3.5rem; }
.trgr-proof-vendors { grid-column:2; grid-row:1/span 3; padding-left:2rem; }
.trgr-proof-label { margin:0; color:var(--trgr-on-dark); }
.trgr-proof-vendors .trgr-logo-wall { grid-template-columns:repeat(3,1fr); margin:1rem 0; gap:1px; }
.trgr-proof-vendors .trgr-logo-tile { min-height:64px; padding:.75rem; }
.trgr-proof-vendors .trgr-logo-tile img { max-height:36px; }
.trgr-proof-vendors .trgr-text-link { color:var(--trgr-white); font-size:.875rem; }
.trgr-proof-vendors .trgr-text-link::after { color:var(--trgr-accent); }
.trgr-section--faq .trgr-faq { gap:0; }
.trgr-section--faq .trgr-faq > .wp-block-group { padding:.75rem 0; }
.trgr-section--faq .trgr-faq > .wp-block-group:first-child { padding-top:0; border:0; }
.trgr-section--faq .trgr-faq h3 { font-size:1.125rem; }

/* Catalogue: the grid is a functional interface, with distinct data roles. */
.trgr-catalog-main { padding-block:1.5rem 3rem; }
.trgr-catalog-main h1 { font-size:clamp(2rem,3.6vw,3.25rem); margin:.75rem 0; }
.trgr-catalog-search { margin-block:1.5rem; }
.trgr-catalog-search label { display:block; font-weight:550; margin-bottom:.5rem; }
.trgr-search-row { display:flex; gap:.75rem; }
.trgr-search-row input { flex:1; min-width:0; }
:where(.wp-trgr-site,.editor-styles-wrapper) :where(input:not([type=checkbox]):not([type=radio]):not([type=submit]),select,textarea) { width:100%; min-height:48px; padding:.75rem .9rem; background:var(--trgr-white); color:var(--trgr-ink); border:1px solid var(--trgr-border); border-radius:var(--trgr-radius-control); font:inherit; }
.trgr-catalog-main > .alignwide > .trgr-lead { font-size:1.125rem; margin:.75rem 0 1.5rem; }
.trgr-catalog-main .woocommerce-breadcrumb { margin-bottom:.75rem; }
.trgr-catalog-nav { display:grid; grid-template-columns:minmax(0,1fr); gap:.75rem 1rem; align-items:start; margin-block:1.25rem 0; padding:1rem 0; border-block:1px solid var(--trgr-border); }
.trgr-catalog-nav label { font-weight:550; font-size:.875rem; }
.trgr-catalog-nav :is(input,select) { display:block; margin-top:.4rem; height:48px; font-size:1rem; }
.trgr-filter-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.trgr-filter-panel > summary { display:none; }
.trgr-filter-panel,.trgr-filter-actions-slot { min-width:0; }
.trgr-filter-actions { display:flex; align-items:center; gap:.75rem 1rem; }
body.wp-trgr-site .trgr-filter-actions button { flex:none; height:48px; min-height:48px; padding:0 1.5rem; white-space:nowrap; }
.trgr-filter-message { margin:0; max-width:38rem; color:var(--trgr-ink); font-size:.875rem; }
.trgr-filter-message:empty { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.trgr-filter-applied-label { font-size:.875rem; font-weight:600; color:var(--trgr-ink); }
.trgr-filter-status { grid-column:1/-1; display:flex; align-items:center; flex-wrap:wrap; gap:.25rem 1rem; }
.trgr-filter-reset { min-height:32px; display:inline-flex; align-items:center; font-size:.875rem; color:var(--trgr-muted-text); }
.trgr-filter-chip { display:inline-flex; align-items:center; gap:.75rem; padding:.1rem .5rem; min-height:32px; background:var(--trgr-surface); color:var(--trgr-ink); font-size:.875rem; text-decoration:none; }
.trgr-filter-chip span { font-size:1.25rem; }
.trgr-catalog-toolbar { margin-block:1rem; color:var(--trgr-muted-text); font-size:.875rem; }
.trgr-catalog-toolbar p { margin:0; }
.trgr-product-grid,.trgr-showcase { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.5rem; }
.trgr-product-card { display:flex; flex-direction:column; min-width:0; background:var(--trgr-white); border:0; border-radius:0; overflow:hidden; }
.trgr-product-card:hover .trgr-product-image { background:#eaf0f7; }
.trgr-product-image { display:block; position:relative; padding:.75rem; background:var(--trgr-surface); aspect-ratio:3/2; }
.trgr-product-visual { display:block; position:absolute; inset:.75rem; overflow:hidden; }
.trgr-product-visual img { width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }
.trgr-product-visual.trgr-media--rack img { width:145%; height:auto; }
.trgr-product-card-body { display:flex; flex-direction:column; flex:1; padding:1rem 0; gap:.6rem; }
.trgr-product-card-body > * { margin:0; }
body.wp-trgr-site .trgr-product-card-title { font-size:1.125rem; line-height:1.3; letter-spacing:-.015em; font-weight:650; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.trgr-product-card-title a { color:var(--trgr-ink); text-decoration:none; }
.trgr-product-card-title a:hover { color:var(--trgr-brand); }
.trgr-product-card-excerpt { font-size:1rem; line-height:1.5; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.trgr-product-vendor { color:var(--trgr-muted-text); font-size:.875rem; font-weight:500; }
.trgr-product-card-price { margin-top:auto; padding-top:.5rem; }
.trgr-price { display:inline-block; color:var(--trgr-ink); font-size:1.25rem; font-weight:650; font-variant-numeric:tabular-nums; line-height:1.35; }
.trgr-price--quote { font-size:1rem; font-weight:550; }
.trgr-product-card-button { align-self:start; font-size:.875rem; }
.trgr-catalog-pagination { margin-block:3rem; }
.trgr-catalog-pagination ul { display:flex; flex-wrap:wrap; justify-content:center; gap:.5rem; list-style:none; padding:0; }
.trgr-catalog-pagination :is(a,span) { min-width:44px; min-height:44px; padding:.5rem .8rem; display:inline-flex; align-items:center; justify-content:center; border-radius:var(--trgr-radius-control); }
.trgr-catalog-pagination .current { background:var(--trgr-ink); color:var(--trgr-white); }
.trgr-catalog-cta,.trgr-empty-results { margin-top:3rem; padding:2rem; background:var(--trgr-surface); border-radius:var(--trgr-radius-panel); gap:2rem; }

/* Product detail: price and RFQ belong to the decision area. */
.trgr-product-main { padding-block:2rem 5rem; }
.trgr-product-layout { gap:3rem; align-items:start; margin-top:2rem; }
.trgr-product-layout > .wp-block-column { margin-block:0; }
.trgr-product-main h1 { font-size:clamp(1.75rem,3.15vw,2.75rem); margin:0 0 1.25rem; }
.trgr-product-main .trgr-product-decision { padding:1.25rem; border-left:3px solid var(--trgr-brand); background:var(--trgr-surface); display:flex; flex-wrap:wrap; justify-content:space-between; gap:1rem; align-items:center; }
.trgr-product-decision .wp-block-buttons { margin:0; }
.trgr-product-price { margin:0; }
.trgr-product-price .trgr-price { font-size:1.75rem; }
.trgr-product-price .trgr-price--quote { font-size:1.25rem; }
.trgr-product-main .woocommerce-product-gallery .wp-post-image { height:320px !important; object-fit:contain; }
.trgr-gallery-rack > a { display:block; position:relative; height:320px; overflow:hidden; }
.trgr-product-main .trgr-gallery-rack .wp-post-image { position:absolute; width:145%; max-width:none; height:auto !important; left:50%; top:50%; transform:translate(-50%,-50%); }
.trgr-product-main .woocommerce-product-gallery__trigger { width:auto !important; min-width:44px; height:44px !important; padding:.6rem; border-radius:var(--trgr-radius-control) !important; font:inherit !important; }
.trgr-product-main .woocommerce-product-gallery__trigger::before,.trgr-product-main .woocommerce-product-gallery__trigger::after { display:none; }
.trgr-product-facts { margin-block:1.25rem; }
.trgr-product-facts > div { display:grid; grid-template-columns:1fr 1fr; gap:1rem; padding-block:.5rem; }
.trgr-product-facts dt { color:var(--trgr-ink); font-weight:600; }
.trgr-product-facts dd { margin:0; }
.trgr-product-main .wp-block-post-excerpt { max-width:65ch; margin-top:1.25rem; }
.trgr-product-details { margin-block:3rem; max-width:900px; }
.trgr-product-details :is(table,img) { max-width:100%; }
.trgr-product-details table { width:100%; border-collapse:collapse; }
.trgr-product-details td { padding:.65rem; overflow-wrap:anywhere; }
.trgr-product-request { margin-block:3rem; padding:2rem; background:var(--trgr-surface); border-radius:var(--trgr-radius-panel); }
.trgr-product-request > p { max-width:65ch; }
.trgr-product-pills { display:flex; flex-wrap:wrap; gap:1rem; margin-top:2rem; font-size:.875rem; }
.trgr-related-grid { margin-top:2rem; }

/* Forms and content pages. */
.trgr-rfq .wpcf7-form { display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; }
.trgr-rfq .trgr-field-wide,.trgr-rfq .wpcf7-response-output { grid-column:1/-1; }
.trgr-rfq .wpcf7-form p { margin:0; }
.trgr-rfq label { color:var(--trgr-ink); font-weight:550; }
.trgr-rfq .wpcf7-form-control-wrap { display:block; margin-top:.5rem; }
.trgr-rfq textarea { min-height:150px; resize:vertical; }
.trgr-rfq input[type=checkbox] { width:20px; height:20px; margin-right:.65rem; vertical-align:middle; accent-color:var(--trgr-brand); }
.trgr-rfq .wpcf7-list-item { margin:0; }
.trgr-rfq .wpcf7-acceptance label { font-size:.875rem; font-weight:400; }
.trgr-rfq .wpcf7-not-valid-tip { font-size:1rem; color:#b91c1c; }
.trgr-rfq .wpcf7-response-output { color:var(--trgr-ink); border-radius:var(--trgr-radius-control); }
.trgr-rfq [type=submit]:disabled { opacity:.65; cursor:not-allowed; }
/* Contacts have their own layout; the general RFQ section cannot style its grid. */
.trgr-contacts-page { padding-block:3rem; }
.trgr-contact-layout { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); grid-template-rows:auto 1fr; gap:2rem 3rem; align-items:start; }
.trgr-contact-layout > * { min-width:0; margin:0; }
.trgr-contact-intro { grid-column:1; grid-row:1; }
.trgr-contacts-page .trgr-contact-intro h1 { font-size:clamp(2rem,3.35vw,3rem); margin:0 0 1.25rem; }
.trgr-contact-intro .trgr-lead { max-width:40ch; font-size:1.125rem; margin:0; }
.wp-block-group.trgr-contacts-page .wp-block-group.trgr-contact-form-panel { grid-column:2; grid-row:1/span 2; padding:1.5rem; background:var(--trgr-surface); border-radius:var(--trgr-radius-panel); }
.trgr-contact-form-panel h2 { font-size:1.75rem; margin:0 0 .75rem; scroll-margin-top:0; }
.trgr-contact-form-hint { margin:0 0 1.5rem; max-width:55ch; color:var(--trgr-muted-text); font-size:1rem; }
.trgr-contact-form-panel .trgr-rfq textarea { min-height:136px; height:136px; }
.trgr-contact-form-panel .wpcf7-form { gap:1rem; }
.trgr-contact-form-panel .wpcf7-form p { min-width:0; }
.trgr-contact-form-panel .wpcf7-response-output { margin:.5rem 0 0; padding:.75rem; }
.trgr-contact-direct { grid-column:1; grid-row:2; align-self:start; }
.trgr-contact-direct h2 { font-size:1.25rem; margin:0 0 1rem; }
.trgr-contact-direct p { margin:0 0 .5rem; }
.trgr-contact-direct a { text-decoration:none; display:inline-flex; align-items:center; min-height:44px; }
.trgr-contact-direct a:hover { text-decoration:underline; }
.trgr-contact-phone a { font-size:1.625rem; font-weight:600; color:var(--trgr-ink); letter-spacing:-.025em; }
.trgr-contact-email a { font-size:1.375rem; font-weight:550; }
.trgr-contact-secondary a { color:var(--trgr-text); }
.trgr-contact-note { color:var(--trgr-muted-text); font-size:.875rem; max-width:34ch; }
.trgr-contacts-office { padding-block:2.5rem 3rem; border-top:1px solid var(--trgr-border); }
.trgr-office-layout { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:3rem; align-items:start; }
.trgr-office-info h2 { font-size:2rem; margin:0 0 1.25rem; }
.trgr-office-info p { margin:0 0 1rem; max-width:36ch; }
.trgr-contact-map__frame { min-width:0; min-height:300px; background:var(--trgr-surface); border-radius:var(--trgr-radius-panel); }
.trgr-contact-map__frame iframe { display:block; width:100%; height:300px; border:0; }
.trgr-map-placeholder { min-height:300px; padding:2rem; display:flex; flex-direction:column; align-items:start; justify-content:center; }
.trgr-map-placeholder h3 { margin:0 0 .75rem; font-size:1.25rem; }
.trgr-map-placeholder p { max-width:45ch; margin:0 0 1.25rem; }
.trgr-map-placeholder .wp-element-button { min-height:44px; padding:.65rem 1rem; }
.trgr-contact-map__frame:not(.is-consented) iframe,.trgr-contact-map__frame:not(.is-consented) .cmplz-blocked-content-container { display:none !important; }
.trgr-contact-map__frame.is-consented .trgr-map-placeholder { display:none; }
.trgr-contact-map__frame.is-consented .cmplz-blocked-content-container { width:100%; min-height:300px; }
.trgr-news-card { padding-bottom:2rem; }
.trgr-news-card .wp-block-post-title { font-size:1.5rem; }
.trgr-news-card .wp-block-post-title a { color:var(--trgr-ink); text-decoration:none; }
.trgr-news-card .wp-block-post-featured-image:empty { display:none; }
:is(body.wp-trgr-site,.editor-styles-wrapper) .wp-block-group.trgr-news-card { padding:24px; border:1px solid var(--trgr-border); height:100%; }
.trgr-news-card > * { margin-block:0 16px; }
.trgr-news-card > :last-child { margin-bottom:0; }
.trgr-news-card .wp-block-post-featured-image { margin:0 0 24px; }
.trgr-news-card .wp-block-post-date { color:var(--trgr-muted-text); }
.trgr-article { --wp--style--global--content-size:1040px; width:calc(100% - 3rem); max-width:1040px; margin-inline:auto; padding-block:3rem; }
.trgr-article > .wp-block-post-content { width:100%; max-width:1040px; }
.trgr-article .wp-block-post-content > :is(p,ul,ol,div,figure,h2,h3,h4,blockquote) { max-width:1040px; }
.trgr-partner-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-block:2rem; }
:is(body.wp-trgr-site,.editor-styles-wrapper) .wp-block-group.trgr-partner-card { display:flex; flex-direction:column; gap:16px; padding:24px; border:1px solid var(--trgr-border); background:var(--trgr-white); min-width:0; }
.trgr-partner-card > * { margin:0; }
.trgr-partner-card h3 { font-size:1.5rem; }
:is(body.wp-trgr-site,.editor-styles-wrapper) .wp-block-group.trgr-partner-logo { display:flex; align-items:center; justify-content:center; min-height:120px; padding:16px; }
.trgr-partner-logo figure { margin:0; width:100%; }
.trgr-partner-logo a { display:flex; justify-content:center; align-items:center; min-height:88px; }
.trgr-partner-logo img { display:block; width:auto; height:auto; max-width:100%; max-height:88px; object-fit:contain; }
.trgr-partner-card > .wp-block-buttons { margin-top:auto; padding-top:8px; }
.trgr-partner-card .wp-block-button__link { font-size:.875rem; padding:.75rem 1rem; }
.trgr-catalog-disclaimer { margin-block:2rem; padding-top:1.5rem; border-top:1px solid var(--trgr-border); color:var(--trgr-muted-text); font-size:.875rem; line-height:1.6; }
.trgr-catalog-disclaimer p { margin:0; max-width:none; }
.trgr-nord-actions { padding-top:0; }
.trgr-nord-actions-inner { display:flex; align-items:center; flex-wrap:wrap; gap:24px; }
.trgr-nord-actions-inner > * { margin:0; }
.trgr-nord-features { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.trgr-nord-feature { padding-block:16px; border-top:1px solid var(--trgr-border); }
.trgr-nord-feature h3 { margin:0 0 12px; }
.trgr-nord-feature p { margin:0; }
.trgr-nord-screens { display:grid; gap:32px; }
.trgr-nord-screens figure { margin:0; }
.trgr-nord-screens img { display:block; width:100%; height:auto; border:1px solid var(--trgr-border); }
.trgr-nord-technologies { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.trgr-nord-documents li { margin-block:16px; }
.trgr-header .wp-block-site-logo,.trgr-footer .wp-block-site-logo { padding:16px; }
.trgr-header .wp-block-site-logo a,.trgr-footer .wp-block-site-logo a { display:block; line-height:0; }
.trgr-header { min-height:90px; }
:root { --trgr-header-height:148px; }
.trgr-partner-details { display:grid; grid-template-columns:1fr 1fr; gap:1rem 3rem; }
.trgr-partner-details details { padding:1rem 0; }
.trgr-partner-details summary { font-weight:600; cursor:pointer; min-height:44px; }
.wp-block-post-content > :is(p,ul,ol) { max-width:75ch; }
.wp-block-post-content :is(img,iframe,video) { max-width:100%; }
.wp-block-post-content pre { overflow-x:auto; }
.trgr-solution-links { display:flex; flex-wrap:wrap; gap:1rem 2rem; }

/* Designed close, with consent settings in the document flow. */
.trgr-footer { padding-block:4rem 1.5rem; background:var(--trgr-header-surface); color:var(--trgr-on-dark); }
.trgr-footer-main { gap:6rem; align-items:start; margin-bottom:3rem; }
.trgr-footer .wp-block-site-logo img { padding:0; background:none; border-radius:0; }
.trgr-footer-main p { max-width:45ch; }
.trgr-footer a { color:var(--trgr-on-dark); text-decoration:none; }
.trgr-footer a:hover { color:var(--trgr-white); text-decoration:underline; }
.trgr-footer-phone { font-size:2rem; line-height:1.2; font-weight:600; letter-spacing:-.025em; }
.trgr-footer-email { font-size:1.25rem; }
.trgr-footer-navigation { margin-block:2rem; }
.trgr-footer-navigation .wp-block-navigation__container { gap:.5rem 1.5rem; }
.trgr-footer-navigation a { display:inline-flex; min-height:44px; align-items:center; }
.trgr-footer-bottom { font-size:.875rem; gap:1rem; margin:0; }
.trgr-footer-bottom p { margin:0; }
.trgr-footer .trgr-cookie-settings { position:static !important; display:inline-flex !important; transform:none !important; min-height:44px; padding:.5rem 0; background:none !important; color:var(--trgr-on-dark) !important; border:0 !important; box-shadow:none !important; font:inherit; cursor:pointer; text-decoration:underline; }
body.wp-trgr-site #cmplz-manage-consent { display:none; }

/* Motion never gates content visibility. */
.trgr-enter { animation:trgr-section-enter 550ms ease-out both; }
@keyframes trgr-section-enter { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:translateY(0); } }

/* Tablet and mobile each have a deliberate navigation composition. */
@media(max-width:1023px) {
 :root { --trgr-header-height:148px; }
 .trgr-header-shell { padding-block:12px; }
 .trgr-header-container { display:grid; grid-template-columns:124px minmax(0,1fr) 44px; grid-template-rows:68px 44px; gap:12px 10px; align-items:center; }
 .trgr-header-shell .trgr-header-top,.trgr-header-shell .trgr-header { display:contents; }
 .trgr-header-contacts { display:none; }
 .trgr-header .wp-block-site-logo { grid-column:1; grid-row:1; }
 .trgr-header .wp-block-site-logo,.trgr-footer .wp-block-site-logo { padding:12px; }
 .trgr-header .wp-block-site-logo img { width:100px; max-height:44px; object-fit:contain; }
 .trgr-partner-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .trgr-header-navigation { grid-column:3; grid-row:1; justify-self:end; margin:0; }
 .trgr-header-cta { grid-column:2; grid-row:1; justify-self:end; }
 .trgr-header .trgr-header-cta .wp-block-button__link { min-height:44px; padding:.6rem .75rem; font-size:.875rem; gap:.75rem; }
 .trgr-catalog-menu { grid-column:1; grid-row:2; }
 .trgr-catalog-menu > summary { padding:0 .75rem; min-width:0; width:100%; min-height:44px; font-size:.875rem; }
 .trgr-header .trgr-catalog-search { grid-column:2/span 2; grid-row:2; margin:0; width:100%; }
 .trgr-header .trgr-catalog-search--compact input[type=search] { height:44px; min-height:44px; }
 .trgr-header .trgr-catalog-search--compact button { min-height:44px; min-width:44px; }
 .trgr-header-navigation .wp-block-navigation__responsive-container-open { display:flex; width:44px; height:44px; align-items:center; justify-content:center; color:var(--trgr-white); }
 .trgr-header-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none; }
 .trgr-header-shell .trgr-header-navigation.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open { background:var(--trgr-header-surface); color:var(--trgr-white); padding:2rem; }
 .trgr-header-shell .trgr-header-navigation .is-menu-open .wp-block-navigation__responsive-container-content { align-items:stretch; }
 .trgr-header-shell .trgr-header-navigation .is-menu-open .wp-block-navigation__container { align-items:start; gap:1rem; width:100%; }
 .trgr-header-navigation .is-menu-open a { color:var(--trgr-white); font-size:1.25rem; min-height:44px; }
 .trgr-header-navigation .is-menu-open .wp-block-navigation-submenu__toggle { font-size:1.25rem; min-height:44px; }
 .trgr-header-navigation .is-menu-open .wp-block-navigation-submenu > button { width:100%; display:flex; justify-content:space-between; text-align:left; }
 .trgr-header-navigation .is-menu-open .wp-block-navigation-submenu > button::after { content:'+'; }
 .trgr-header-navigation .is-menu-open .wp-block-navigation-submenu > button[aria-expanded=true]::after { content:'−'; }
 .trgr-header-navigation .is-menu-open .wp-block-navigation-submenu { align-items:stretch; width:100%; }
 .trgr-header-navigation .is-menu-open .wp-block-navigation__submenu-container { min-width:0 !important; box-shadow:none; padding:.25rem 0 .5rem 1rem !important; gap:.25rem; }
 .trgr-header-shell .trgr-header-navigation .is-menu-open .wp-block-navigation__responsive-container-content .has-child { align-items:stretch; }
 .trgr-header-shell .trgr-header-navigation .is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container { align-items:flex-start; width:100%; }
 .trgr-header-shell .trgr-header-navigation .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { align-items:flex-start; width:100%; }
 .trgr-header-navigation .is-menu-open .wp-block-navigation-submenu > button[aria-expanded=false] ~ .wp-block-navigation__submenu-container { display:none; }
 .trgr-header-navigation .is-menu-open .wp-block-navigation-submenu > button[aria-expanded=true] ~ .wp-block-navigation__submenu-container { display:flex; }
 .trgr-header-shell .trgr-header-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container a { font-size:1rem; padding:.5rem 0; }
 .trgr-header-navigation .is-menu-open .trgr-mobile-contact { display:block; }
 .trgr-header-navigation .wp-block-navigation__responsive-container-close { color:var(--trgr-white); width:44px; height:44px; }
 .trgr-megamenu { grid-template-columns:1fr; padding:1.25rem; gap:1rem; }
 .trgr-menu-all { grid-column:auto; }
 .trgr-menu-type-groups { grid-template-columns:1fr 1fr; }
 .trgr-menu-help { padding:1rem; }
 .trgr-menu-group a { min-height:44px; }
 .trgr-menu-group summary { pointer-events:auto; cursor:pointer; display:flex; justify-content:space-between; align-items:center; }
 .trgr-menu-group summary::after { content:'⌄'; }
 .trgr-menu-group ul { grid-template-columns:1fr 1fr; }
 .trgr-product-grid,.trgr-showcase { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .trgr-catalog-nav { gap:.75rem; }
 .trgr-section--directions > .alignwide,.trgr-section--budget > .alignwide,.trgr-section--faq > .alignwide { gap:1.5rem 2rem; }
}
@media(max-width:781px) {
 .trgr-hero--home { padding-block:2rem; }
 .trgr-hero-layout { gap:1.5rem; }
 .trgr-hero-layout h1 { font-size:clamp(2.125rem,4.45vw,4rem); }
 .trgr-hero-visual { height:180px; }
 .trgr-hero-product figcaption { margin:0; }
 .trgr-product-grid,.trgr-showcase { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .trgr-logo-wall { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .trgr-section--directions > .alignwide,.trgr-section--budget > .alignwide,.trgr-section--faq > .alignwide,.trgr-section--request > .alignwide { display:block; }
 .trgr-section--directions .trgr-category-index,.trgr-section--budget .trgr-budget-layout,.trgr-section--faq .trgr-faq,.trgr-section--request > .alignwide > #contact-form { margin-top:2rem; }
 .trgr-process-list { grid-template-columns:1fr; gap:2rem; }
 .trgr-catalog-nav { grid-template-columns:minmax(0,1fr) auto; }
 .trgr-filter-search { grid-column:1/-1; }
 .trgr-filter-panel { grid-column:1; grid-row:2; }
 .trgr-filter-actions-slot { grid-column:2; grid-row:2; }
 .trgr-filter-actions { flex-direction:column; align-items:stretch; gap:.5rem; }
 body.wp-trgr-site .trgr-filter-actions button { padding-inline:1rem; font-size:.875rem; }
 .trgr-filter-message { max-width:13rem; }
 .trgr-catalog-nav:has(.trgr-filter-panel[open]) > .trgr-filter-panel { grid-column:1/-1; }
 .trgr-catalog-nav:has(.trgr-filter-panel[open]) > .trgr-filter-actions-slot { grid-column:1/-1; grid-row:3; }
 .trgr-catalog-nav:has(.trgr-filter-panel[open]) .trgr-filter-message { max-width:none; order:-1; }
 body.wp-trgr-site:not(:has(.cmplz-cookiebanner.cmplz-show)) .trgr-catalog-nav.is-filter-floating .trgr-filter-actions-slot { min-height:var(--trgr-filter-actions-height,48px); }
 body.wp-trgr-site:not(:has(.cmplz-cookiebanner.cmplz-show)) .trgr-catalog-nav.is-filter-floating .trgr-filter-actions { position:fixed; inset:auto 0 0; z-index:25; padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom)); background:var(--trgr-white); border-top:1px solid var(--trgr-border); }
 html:has(.trgr-catalog-nav.is-filter-floating):not(:has(.cmplz-cookiebanner.cmplz-show)) { scroll-padding-bottom:calc(var(--trgr-filter-actions-height,120px) + 24px); }
 .trgr-filter-panel > summary { display:flex; align-items:center; gap:.75rem; cursor:pointer; min-height:48px; font-weight:600; list-style:none; }
 .trgr-filter-panel > summary::after { content:'⌄'; }
 .trgr-filter-panel > summary span { font-size:.875rem; color:var(--trgr-brand); }
 .trgr-filter-panel .trgr-filter-fields { grid-template-columns:1fr; margin-block:.75rem; }
 .trgr-catalog-main > .alignwide > .trgr-lead { font-size:1rem; margin:.5rem 0 1rem; }
 .trgr-directions-grid { gap:0 1.25rem; }
 .trgr-direction { grid-template-columns:1fr; }
 .trgr-direction-image { min-height:100px; }
 .trgr-direction-image > a { min-height:100px; }
 .trgr-direction-image img { height:100px; }
 .trgr-section--proof > .alignwide { grid-template-columns:1fr; }
 .trgr-proof-vendors { grid-column:1; grid-row:auto; padding:1.5rem 0 0; border-left:0; }
 .trgr-supply-steps > .wp-block-column + .wp-block-column { border-left:0; padding-left:0; }
 .trgr-contact-layout,.trgr-office-layout { display:flex; flex-direction:column; gap:2rem; }
 .trgr-contact-layout > *,.trgr-office-layout > * { width:100%; }
 .trgr-contacts-page { padding-block:2rem; }
 .trgr-contact-direct { margin-top:.5rem; }
 .trgr-footer-main { gap:2rem; }
 .trgr-partner-details { grid-template-columns:1fr; }
}
@media(max-width:599px) {
 .trgr-partner-grid,.trgr-nord-features,.trgr-nord-technologies { grid-template-columns:minmax(0,1fr); }
 .trgr-partner-card { padding:24px; }
 .trgr-article { width:calc(100% - 2rem); padding-block:2rem; }
 :where(.trgr-section,.trgr-header-shell,.trgr-footer) > .alignwide { width:calc(100% - 2rem); }
 body.admin-bar.wp-trgr-site > .wp-site-blocks > header.wp-block-template-part { top:0; }
 .trgr-section { padding-block:2rem; }
 .trgr-section--intro { padding-block:2rem; }
 .trgr-hero-layout h1 { font-size:2.125rem; }
 .trgr-hero-layout .trgr-lead { font-size:1.125rem; }
 .trgr-hero-actions { gap:.5rem 1.25rem; }
 .trgr-hero-visual { height:140px; }
 .trgr-hero-product figcaption > span { display:none; }
 .trgr-hero-product figcaption { text-align:left; padding-top:.5rem; }
 .trgr-menu-group ul,.trgr-menu-type-groups { grid-template-columns:1fr; }
 .trgr-stats { gap:1rem; margin-top:2rem; }
 .trgr-stat strong { font-size:2.5rem; }
 .trgr-stat p { font-size:.875rem; }
 .trgr-logo-wall { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
 .trgr-logo-tile { min-height:72px; padding:.75rem; }
 .trgr-product-grid,.trgr-showcase,.trgr-category-index,.trgr-faq,.trgr-rfq .wpcf7-form { grid-template-columns:1fr; }
 .trgr-directions-grid { grid-template-columns:1fr; margin-top:1.25rem; }
 .trgr-direction { grid-template-columns:1.15fr .85fr; padding-block:1.25rem; }
 .trgr-direction-copy h3 { font-size:1.5rem; }
 .trgr-direction-copy p { font-size:1rem; }
 .trgr-supply-steps { gap:1.25rem; }
 .trgr-catalog-main { padding-top:1rem; }
 .trgr-product-card { display:grid; grid-template-columns:112px minmax(0,1fr); align-items:start; }
 .trgr-product-image { padding:.5rem; aspect-ratio:1; }
 .trgr-product-card-body { padding:1rem; gap:.65rem; }
 .trgr-product-card-title { overflow-wrap:anywhere; }
 .trgr-product-layout { gap:1.25rem; }
 .trgr-product-main .woocommerce-product-gallery .wp-post-image { height:160px !important; }
 .trgr-product-main .trgr-gallery-rack > a { height:180px; }
 .trgr-product-main .trgr-gallery-rack .wp-post-image { height:auto !important; }
 .trgr-product-facts > div { grid-template-columns:1fr; gap:.25rem; }
 .trgr-product-request,.trgr-section--request > .alignwide > #contact-form { padding:1.25rem; }
 .wp-block-group.trgr-contacts-page .wp-block-group.trgr-contact-form-panel { padding:1.25rem; }
 .trgr-contacts-page { padding-top:1.5rem; }
 .trgr-map-placeholder { padding:1.25rem; min-height:260px; }
 .trgr-contact-map__frame,.trgr-contact-map__frame iframe { min-height:260px; height:auto; }
 .trgr-contact-map__frame iframe { height:260px; }
 .trgr-catalog-nav { padding: .75rem 0; margin-top:1rem; }
 .trgr-catalog-cta,.trgr-empty-results { padding:1.25rem; }
 .trgr-footer-phone { font-size:1.5rem; }
 .trgr-footer-bottom { display:block; }
 .trgr-footer-bottom > * { margin-top:1rem; }
}
@media(prefers-reduced-motion:reduce) {
 *,*::before,*::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}

/* v15: compact, factual product cards. Catalogue and home cards retain their layout. */
.trgr-product-main { padding-block: 1.5rem 4rem; }
.trgr-product-main h1 { max-width: 1150px; margin-block: 1rem .5rem; font-size: clamp(1.65rem, 2.7vw, 2.65rem); line-height: 1.18; overflow-wrap: anywhere; }
.trgr-product-identity { color: var(--wp--preset--color--muted, #526174); font-size: .9rem; margin-block: .5rem 1.5rem; }
.trgr-product-main .trgr-product-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; margin-top: 1.5rem; align-items: start; }
.trgr-product-layout > .wp-block-column { min-width: 0; }
.trgr-product-main .woocommerce-product-gallery { width: 100% !important; float: none; margin: 0; opacity: 1 !important; background: #fff; border: 1px solid #e3e9f0; border-radius: 6px; }
.trgr-product-main .woocommerce-product-gallery__wrapper { margin: 0; }
.trgr-product-main .woocommerce-product-gallery__image a { display: flex; align-items: center; justify-content: center; height: 330px; padding: 1rem; box-sizing: border-box; }
.trgr-product-main .woocommerce-product-gallery .wp-post-image { display: block; width: auto !important; height: auto !important; max-width: 100% !important; max-height: 290px; object-fit: contain; margin: auto; }
.trgr-product-main .woocommerce-product-gallery .trgr-gallery-rack img { position: static; transform: none; left: auto; top: auto; }
.trgr-product-main .woocommerce-product-gallery .trgr-gallery-rack a { height: 330px; }
.trgr-product-main .woocommerce-product-gallery .flex-control-thumbs { display: flex; gap: .5rem; margin: .75rem !important; }
.trgr-product-main .woocommerce-product-gallery .flex-control-thumbs li { max-width: 64px; }
.trgr-product-main .trgr-product-decision { display: block; padding: 0 0 1.5rem; background: #fff; border: 0; border-bottom: 1px solid #dce4ee; margin: 0; }
.trgr-product-main .trgr-product-price { font-size: 1.6rem; font-weight: 600; line-height: 1.3; }
.trgr-product-main .trgr-product-decision p { margin-block: .8rem 1.1rem; font-size: .95rem; line-height: 1.6; color: #526174; }
.trgr-product-main .trgr-product-decision .wp-block-button__link { min-height: 48px; }
.trgr-product-key-facts { list-style: none; padding: 0; margin: 1.2rem 0 0; font-size: .9rem; }
.trgr-product-key-facts li { padding: .6rem 0; border-bottom: 1px solid #edf0f4; overflow-wrap: anywhere; line-height: 1.5; }
.trgr-product-key-facts li span { color: #526174; }
.trgr-product-key-facts li span::after { content: ':'; }
.trgr-product-key-facts strong { font-weight: 500; }
.trgr-product-section-nav { display: flex; gap: .5rem 1.5rem; flex-wrap: wrap; padding: 1rem 0; margin-block: 2rem; border-block: 1px solid #dce4ee; }
.trgr-product-section-nav a { padding-block: .4rem; font-weight: 500; text-underline-offset: 5px; }
.trgr-product-main .trgr-product-details { max-width: 100%; margin-block: 2.25rem; }
.trgr-product-details, .trgr-product-request { scroll-margin-top: calc(var(--trgr-header-height, 124px) + 24px); }
.trgr-product-details h2, .trgr-product-request h2, .trgr-product-related h2 { font-size: clamp(1.4rem, 2vw, 1.9rem); line-height: 1.3; }
.trgr-product-main .trgr-specifications { list-style: none; padding: 0; margin: 1rem 0 0; border-top: 1px solid #e3e9f0; }
.trgr-specifications .trgr-spec-row { display: grid; grid-template-columns: minmax(0, 45fr) minmax(0, 55fr); gap: .5rem 2rem; margin: 0; padding: 1rem; border-bottom: 1px solid #e3e9f0; font-size: .95rem; line-height: 1.6; }
.trgr-specifications .trgr-spec-row:nth-child(odd) { background: #f7f9fb; }
.trgr-specifications .trgr-spec-label { color: #526174; font-weight: 500; }
.trgr-specifications .trgr-spec-value, .trgr-specifications .trgr-spec-label { min-width: 0; overflow-wrap: anywhere; }
.trgr-specifications .trgr-spec-row--statement .trgr-spec-value { grid-column: 1 / -1; }
.trgr-product-description { max-width: 960px; overflow-wrap: anywhere; }
.trgr-product-description img { max-width: 100%; height: auto; }
.trgr-product-description table { display: block; max-width: 100%; overflow-x: auto; }
.trgr-product-main #product-request.trgr-product-request { background: #f7f9fb; border: 1px solid #e3e9f0; border-radius: 6px; padding: clamp(1.25rem, 3vw, 2rem); margin-block: 2.5rem; }
.trgr-product-request > h2 { margin: 0 0 .75rem; }
.trgr-product-request > p { max-width: 760px; margin: 0 0 1.5rem; color: #526174; }
.trgr-product-request .trgr-rfq form { margin: 0; gap: 1.25rem 1.5rem; }
.trgr-product-request .trgr-rfq textarea { height: 150px; min-height: 150px; resize: vertical; }
.trgr-product-request .trgr-rfq :is(.trgr-field, .trgr-field-wide, p) { min-width: 0; }
.trgr-product-request .trgr-rfq label { display: block; margin: 0; font-size: .9rem; }
.trgr-product-request .trgr-rfq textarea { display: block; }
.trgr-product-request .trgr-rfq .wpcf7-form-control-wrap[data-name="privacy-consent"] { margin-top: 0; }
.trgr-product-request .trgr-rfq .wpcf7-acceptance label { display: grid; grid-template-columns: 20px minmax(0, 1fr); align-items: start; gap: .75rem; font-size: .875rem; line-height: 1.6; }
.trgr-product-request .trgr-rfq input[type="checkbox"] { margin: .2rem 0 0; }
.trgr-product-request .trgr-rfq .wpcf7-list-item-label { min-width: 0; overflow-wrap: anywhere; }
.trgr-product-request .trgr-rfq .wpcf7-response-output { margin: 0; padding: .75rem 1rem; }
.trgr-product-related { margin-top: 3rem; }
.trgr-product-mobile-quote[hidden] { display: none !important; }
.trgr-product-mobile-quote { position: fixed; inset: auto 0 0; padding: .65rem 1rem calc(.65rem + env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid #dce4ee; z-index: 30; }
.trgr-product-mobile-quote a { display: block; width: 100%; text-align: center; min-height: 44px; box-sizing: border-box; }
@media (min-width: 1024px) {
 .trgr-product-main .trgr-product-layout { grid-template-columns: minmax(0, 58fr) minmax(0, 42fr); gap: 2.5rem; }
 .trgr-product-main .woocommerce-product-gallery__image a, .trgr-product-main .woocommerce-product-gallery .trgr-gallery-rack a { height: 390px; }
 .trgr-product-main .woocommerce-product-gallery .wp-post-image { max-height: 350px; }
 .trgr-product-mobile-quote { display: none; }
}
@media (max-width: 1023px) {
 body.single-product { padding-bottom: calc(76px + env(safe-area-inset-bottom)); }
 .trgr-product-main .woocommerce-product-gallery__image a, .trgr-product-main .woocommerce-product-gallery .trgr-gallery-rack a { height: 220px; }
 .trgr-product-main .woocommerce-product-gallery .wp-post-image { max-height: 190px; }
 .trgr-product-main .trgr-product-layout { gap: 1rem; }
 .trgr-product-main .trgr-product-decision .wp-block-buttons, .trgr-product-main .trgr-product-decision .wp-block-button { width: 100%; }
 .trgr-product-main .trgr-product-decision .wp-block-button__link { display: block; text-align: center; }
}
@media (max-width: 600px) {
 .trgr-product-main { padding-block: 1rem 2rem; }
 .trgr-product-main .woocommerce-breadcrumb { font-size: .75rem; }
 .trgr-product-identity { margin-bottom: 1rem; }
 .trgr-product-request .trgr-rfq form { grid-template-columns: minmax(0, 1fr); }
 .trgr-specifications .trgr-spec-row { grid-template-columns: minmax(0, 1fr); gap: .25rem; padding: .85rem .75rem; font-size: .9rem; }
}
.trgr-product-main .wp-block-woocommerce-product-image-gallery { width: 100%; max-width: none; }
/* These three supplied rack photos include a large white canvas. Crop the canvas,
   retaining the equipment's aspect ratio; software logos use the contain rule. */
.trgr-product-main .trgr-gallery-rack { position: relative; overflow: hidden; }
.trgr-product-main .woocommerce-product-gallery .trgr-gallery-rack img.wp-post-image { position: absolute; width: 125% !important; max-width: none !important; max-height: none; height: auto !important; left: 50%; top: 50%; transform: translate(-50%, -50%); }
