/* Manrope (SIL Open Font License 1.1, assets/fonts/Manrope-OFL.txt), găzduit local: fără cereri către Google. */
@font-face { font-family: "Manrope"; src: url("../assets/fonts/Manrope-Variable.woff") format("woff"), url("../assets/fonts/Manrope-Variable.ttf") format("truetype"); font-weight: 200 800; font-style: normal; font-display: swap; }
    :root {
      --ink: #0f1524;
      --muted: #5b6674;
      --line: #cbd3dd;
      --paper: #e9edf3;
      --white: #fffdf8;
      --accent: #4c60a1;
      --accent-soft: #dce4ee;
      --brass: #4c60a1;
      --brass-light: #7083c2;
      --compare-yellow: #313e95;
      --compare-yellow-strong: #27337f;
      --compare-yellow-soft: #e2e4f4;
      --teal: #303e6b;
      --teal-soft: #dde4ee;
      --danger: #a9483d;
      --shadow: 0 14px 40px rgba(15,21,36,.09);
    }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      color: var(--ink);
      background: var(--paper);
      font-family: Manrope, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 16px;
      line-height: 1.5;
    }
    button, input, select { font: inherit; }
    button { cursor: pointer; }
    .topbar {
      background: #0b101d;
      color: #c8d0e8;
      padding: .55rem 1rem;
      text-align: center;
      font-size: .86rem;
      letter-spacing: .01em;
    }
    header {
      background: rgba(15,21,36,.97);
      border-bottom: 1px solid rgba(112,131,194,.38);
      position: sticky;
      top: 0;
      z-index: 20;
      backdrop-filter: blur(12px);
    }
    .nav {
      max-width: 1240px;
      min-height: 88px;
      margin: auto;
      padding: 0 1.25rem;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 1rem;
    }
    .brand { display: flex; align-items: center; color: inherit; text-decoration: none; flex: 0 1 420px; min-width: 260px; }
    .brand-logo {
      display: block;
      width: min(420px, 36vw);
      aspect-ratio: 4.2 / 1;
      background: url('../assets/brand/termoscor-logo-variants.png') center top / 148% 296% no-repeat;
      filter: drop-shadow(0 5px 14px rgba(0,0,0,.18));
    }
    .mark {
      width: 42px; height: 42px; border: 3px solid var(--ink); border-radius: 10px;
      display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; background: var(--white);
    }
    .mark span { border-right: 2px solid var(--accent); border-bottom: 2px solid var(--accent); }
    .mark span:nth-child(2n) { border-right: 0; }
    .mark span:nth-child(n+3) { border-bottom: 0; }
    .brand small { display: block; color: var(--muted); font-weight: 600; font-size: .72rem; }
    .navlinks { display: flex; gap: .35rem; align-items: center; }
    .navlinks button, .navlinks a, .lang {
      border: 0; background: transparent; color: #e9edf3; padding: .65rem .8rem;
      border-radius: 8px; font-weight: 650; text-decoration: none;
    }
    .navlinks button:hover, .navlinks button.active, .navlinks a:hover { background: rgba(76,96,161,.19); color: #e6c58e; }
    .lang { border: 1px solid rgba(112,131,194,.48); }
    .navlinks::-webkit-scrollbar { height: 4px; }
    .navlinks::-webkit-scrollbar-thumb { background: rgba(112,131,194,.5); border-radius: 999px; }
    main { max-width: 1240px; margin: 0 auto; padding: 1.5rem 1.25rem 5rem; transition: max-width .2s ease; }
    main.compare-mode { max-width: 1600px; padding-top: .9rem; }
    main.compare-mode .intro { display: none; }
    .intro {
      display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: end;
      padding: 1.25rem 0 1.5rem;
    }
    h1 { font-size: clamp(2rem, 4vw, 3.35rem); line-height: 1.05; letter-spacing: -.045em; margin: 0 0 .85rem; max-width: 760px; }
    .intro p { color: var(--muted); margin: 0; max-width: 760px; font-size: 1.05rem; }
    .trust { display: flex; align-items: center; gap: .55rem; color: var(--teal); font-weight: 750; white-space: nowrap; }
    .trust i { width: 10px; height: 10px; border-radius: 50%; background: var(--teal); display: inline-block; }
    .workspace { display: grid; grid-template-columns: 265px minmax(0, 1fr); gap: 1.25rem; align-items: start; }
    .filters, .panel { background: var(--white); border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); }
    .filters { padding: 1.15rem; position: sticky; top: 160px; }
    .filters h2 { font-size: 1rem; margin: 0 0 1rem; }
    .field { margin-bottom: 1rem; }
    label { display: block; font-size: .86rem; font-weight: 750; margin-bottom: .4rem; }
    select, input[type="search"] { width: 100%; border: 1px solid #cbd2dc; border-radius: 9px; padding: .72rem .75rem; background: var(--white); color: var(--ink); }
    select:focus, input:focus { outline: 3px solid rgba(49,62,149,.2); border-color: var(--accent); }
    .check { display: flex; align-items: flex-start; gap: .55rem; color: var(--muted); font-size: .88rem; }
    .check input { margin-top: .22rem; accent-color: var(--teal); }
    .reset { width: 100%; border: 1px solid var(--line); background: var(--paper); color: var(--ink); padding: .65rem; border-radius: 9px; font-weight: 700; }
    .panel { overflow: hidden; }
    .searchrow { padding: 1rem; border-bottom: 1px solid var(--line); display: flex; gap: .75rem; align-items: center; }
    .searchrow input { flex: 1; }
    .count { font-size: .86rem; color: var(--muted); white-space: nowrap; }
    .notice { margin: 1rem; padding: .85rem 1rem; background: var(--accent-soft); border-left: 4px solid var(--accent); border-radius: 8px; color: #192152; font-size: .88rem; }
    .cards { padding: 0 1rem 1rem; display: grid; gap: .85rem; }
    .system-card { border: 1px solid var(--line); border-radius: 13px; padding: 1.05rem; transition: .18s ease; background: var(--white); }
    .system-card:hover { transform: translateY(-2px); box-shadow: 0 10px 26px rgba(17,29,61,.08); border-color: #bdc7d3; }
    .manufacturing-country { display: inline-flex; align-items: center; gap: .38rem; margin-top: .45rem; padding: .28rem .55rem; border: 1px solid #d8dee5; border-radius: 999px; background: #f7f8fa; color: #283456; font-size: .78rem; font-weight: 800; }
    .manufacturing-country.pending { color: #687585; background: #fafafa; }
    .cardtop { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; }
    .eyebrow { text-transform: uppercase; letter-spacing: .08em; color: var(--muted); font-size: .72rem; font-weight: 800; }
    h3 { margin: .18rem 0 .15rem; font-size: 1.22rem; }
    .maker { color: var(--muted); font-size: .9rem; }
    .badge { display: inline-flex; align-items: center; border-radius: 999px; padding: .33rem .6rem; font-size: .75rem; font-weight: 800; white-space: nowrap; }
    .badge.demo { background: #eef0f3; color: #525e6e; }
    .badge.verified { background: var(--teal-soft); color: var(--teal); }
    .badge-stack { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .4rem; }
    .badge.cost-economy { background: #e9eaf3; color: #232a57; }
    .badge.cost-mid { background: #fff1d9; color: #875514; }
    .badge.cost-premium { background: #e8ecf8; color: #29438c; }
    .badge.cost-unclassified { background: #eef0f3; color: #525e6e; }
    .specs { display: grid; grid-template-columns: repeat(4, 1fr); gap: .6rem; margin: 1rem 0; }
    .spec { background: var(--paper); padding: .7rem; border-radius: 9px; }
    .spec b { display: block; font-size: 1rem; }
    .spec span { color: var(--muted); font-size: .76rem; }
    .actions { display: flex; gap: .6rem; align-items: center; }
    .primary, .secondary { border-radius: 9px; padding: .66rem .85rem; font-weight: 750; }
    .primary { background: var(--ink); color: var(--white); border: 1px solid var(--ink); }
    .primary:hover { background: #1d2f5f; }
    a.primary { display: inline-block; text-decoration: none; }
    a.secondary { display: inline-block; text-decoration: none; }
    .secondary { background: var(--white); color: var(--ink); border: 1px solid var(--line); }
    .secondary.selected { background: var(--teal-soft); color: var(--teal); border-color: #abb0d1; }
    .secondary.compare-action { background: var(--compare-yellow); color: #fff; border-color: #27337f; box-shadow: 0 3px 10px rgba(29,38,98,.2); font-weight: 850; }
    .secondary.compare-action:hover { background: var(--compare-yellow-strong); border-color: #1f296d; transform: translateY(-1px); }
    .secondary.compare-action.selected { background: var(--compare-yellow-soft); color: #192152; border-color: #48539b; box-shadow: inset 0 0 0 1px rgba(49,62,149,.2); }
    .source-meta { margin-top: .8rem; color: var(--muted); font-size: .78rem; }
    .configuration { margin: 0 0 1rem; padding: .9rem; background: var(--accent-soft); border: 1px solid #b9bee1; border-radius: 10px; }
    .configuration-head { display: flex; justify-content: space-between; align-items: flex-start; gap: .7rem; margin-bottom: .7rem; }
    .configuration-head strong { color: #181e44; font-size: .92rem; }
    .configuration-head span { color: #475a72; font-size: .72rem; text-align: right; }
    .glass-builder { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .55rem; }
    .glass-field { min-width: 0; }
    .glass-field label { margin-bottom: .28rem; color: #282e59; font-size: .7rem; }
    .glass-field select { width: 100%; min-width: 0; background: var(--white); font-size: .78rem; padding: .58rem .5rem; }
    .glass-result { margin-top: .75rem; padding-top: .7rem; border-top: 1px solid #b6bbdd; }
    .glass-name { font-size: .82rem; font-weight: 800; color: #181e44; line-height: 1.35; }
    .glass-metrics { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .5rem; }
    .glass-metrics span { background: rgba(255,255,255,.78); border: 1px solid #b6bbdd; border-radius: 999px; padding: .24rem .45rem; font-size: .68rem; color: #2b3054; }
    .glass-source { margin-top: .45rem; color: #475a72; font-size: .67rem; }
    .breadcrumb { display: flex; gap: .45rem; align-items: center; color: var(--muted); font-size: .86rem; margin-bottom: .8rem; }
    .breadcrumb a { color: var(--teal); font-weight: 750; text-decoration: none; }
    .family-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .45rem; margin: .9rem 0 1rem; }
    .family-list a { display: flex; align-items: center; min-height: 36px; background: var(--paper); border: 1px solid var(--line); border-radius: 9px; padding: .42rem .62rem; color: var(--muted); font-size: .78rem; line-height: 1.25; text-decoration: none; transition: border-color .15s ease, background .15s ease, color .15s ease; }
    .family-list a:last-child:nth-child(odd) { grid-column: 1 / -1; }
    .family-list a:hover, .family-list a:focus-visible { border-color: var(--accent); background: var(--accent-soft); color: #192152; outline: none; }
    .manufacturer-card .specs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cards.brand-index { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .brand-index .manufacturer-card { display: flex; flex-direction: column; min-height: 235px; }
    .brand-wordmark { display: flex; align-items: center; justify-content: center; min-height: 86px; margin-bottom: .9rem; padding: .8rem; border: 1px solid var(--line); border-radius: 11px; background: var(--paper); color: var(--ink); font-size: clamp(1.25rem, 2.4vw, 1.8rem); font-weight: 900; letter-spacing: -.035em; text-decoration: none; text-align: center; }
    .brand-wordmark:hover { border-color: var(--accent); background: var(--accent-soft); color: #192152; }
    .brand-index .family-list { display: flex; flex-direction: column; flex-wrap: nowrap; gap: .45rem; margin-top: .9rem; overflow: visible; padding: .12rem 0 .42rem; }
    .brand-index .family-list a { flex: 0 0 auto; width: 100%; white-space: nowrap; }
    .brand-index .family-list a:last-child:nth-child(odd) { grid-column: auto; }
    .brand-index .manufacturer-card { --brand-accent: var(--teal); --brand-hover-text: #fff; }
    .brand-index .manufacturer-card .family-list a:hover,
    .brand-index .manufacturer-card .family-list a:focus-visible { border-color: var(--brand-accent); background: var(--brand-accent); color: var(--brand-hover-text); box-shadow: 0 5px 14px color-mix(in srgb, var(--brand-accent) 24%, transparent); }
    .comparator-page { display: none; padding: 1.35rem; }
    .comparator-page h2 { margin: 0 0 .35rem; font-size: clamp(1.55rem, 2.5vw, 2.2rem); letter-spacing: -.025em; }
    .comparator-page > p { margin: 0 0 1.25rem; color: var(--muted); }
    .legend-shortcut { margin: 0 0 1rem; }
    .class-thresholds { display: grid; gap: .32rem; margin-top: .7rem; }
    .class-thresholds span { display: grid; grid-template-columns: 48px 1fr; gap: .55rem; padding: .48rem .55rem; border: 1px solid var(--line); border-radius: 8px; background: var(--paper); color: var(--muted); font-size: .76rem; line-height: 1.35; }
    .class-thresholds b { color: var(--ink); }
    .class-thresholds i { font-style: normal; }
    .glass-calculator { display: none; padding: 1.35rem; }
    .glass-calculator h2 { margin: 0 0 .35rem; font-size: clamp(1.55rem, 2.5vw, 2.2rem); letter-spacing: -.025em; }
    .glass-calculator > p { margin: 0 0 1.25rem; color: var(--muted); }
    .glass-simple-layout { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(300px, .85fr); gap: 1rem; align-items: start; }
    .glass-simple-panel, .glass-simple-result { border: 1px solid var(--line); border-radius: 13px; background: var(--white); overflow: hidden; }
    .glass-simple-panel { padding: 1.1rem; }
    .glass-simple-step + .glass-simple-step { margin-top: 1.2rem; padding-top: 1.2rem; border-top: 1px solid var(--line); }
    .glass-simple-step h3 { display: flex; align-items: center; gap: .55rem; margin: 0 0 .75rem; font-size: 1rem; }
    .glass-step-number { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 50%; background: var(--ink); color: white; font-size: .75rem; }
    .glass-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; }
    .glass-simple-choice { min-height: 82px; padding: .8rem .85rem; border: 1px solid var(--line); border-radius: 10px; background: var(--paper); color: var(--ink); text-align: left; }
    .glass-simple-choice strong, .glass-simple-choice span { display: block; }
    .glass-simple-choice strong { font-size: .9rem; }
    .glass-simple-choice span { margin-top: .28rem; color: var(--muted); font-size: .78rem; line-height: 1.35; }
    .glass-simple-choice:hover { border-color: #48539b; background: var(--compare-yellow-soft); }
    .glass-simple-choice[aria-pressed="true"] { border-color: #313e95; background: var(--compare-yellow-soft); box-shadow: inset 0 0 0 1px #313e95; }
    .glass-simple-choice[aria-pressed="true"] strong::before { content: '✓ '; color: var(--teal); }
    .glass-simple-recommendation { display: flex; justify-content: space-between; gap: .75rem; margin-top: .75rem; padding: .7rem .8rem; border-radius: 9px; background: var(--teal-soft); color: #181f52; font-size: .82rem; }
    .glass-result-head { padding: 1rem; background: linear-gradient(135deg, #27337f, #313e95); color: #fff; }
    .glass-result-head span, .glass-result-head strong { display: block; }
    .glass-result-head span { font-size: .75rem; }
    .glass-result-head strong { margin-top: .3rem; font-size: 1.05rem; }
    .glass-result-body { padding: 1rem; }
    .glass-package-visual { display: flex; align-items: stretch; justify-content: center; min-height: 92px; padding: .85rem; border-radius: 10px; background: var(--paper); }
    .glass-package-pane { position: relative; width: 11px; min-height: 64px; border-radius: 2px; background: #a8b8e3; box-shadow: inset 3px 0 #e5ecff; }
    .glass-package-pane.coated::after { content: ''; position: absolute; inset: 0 0 0 auto; width: 2px; background: var(--compare-yellow-strong); }
    .glass-package-gap { display: grid; min-width: 74px; place-items: center; color: var(--muted); font-size: .72rem; line-height: 1.35; text-align: center; }
    .glass-generated { margin-top: .85rem; padding-bottom: .85rem; border-bottom: 1px solid var(--line); }
    .glass-generated span, .glass-generated strong { display: block; }
    .glass-generated span { color: var(--muted); font-size: .75rem; }
    .glass-generated strong { margin-top: .28rem; font-size: .92rem; }
    .glass-result-facts { display: grid; gap: .55rem; margin-top: .85rem; }
    .glass-result-fact { display: flex; justify-content: space-between; gap: 1rem; font-size: .82rem; }
    .glass-result-fact span { color: var(--muted); }
    .glass-result-fact strong { text-align: right; }
    .glass-advanced-toggle { width: 100%; min-height: 44px; margin-top: 1rem; border: 1px solid var(--line); border-radius: 9px; background: var(--white); color: var(--muted); font-weight: 700; }
    .glass-advanced-details { margin-top: .65rem; padding: .8rem; border-radius: 9px; background: var(--paper); }
    .glass-advanced-details[hidden] { display: none; }
    .glass-tech-heading { margin-bottom: .65rem; }
    .glass-tech-heading strong, .glass-tech-heading span { display: block; }
    .glass-tech-heading strong { color: var(--ink); font-size: .9rem; }
    .glass-tech-heading span { margin-top: .2rem; color: var(--muted); font-size: .75rem; line-height: 1.4; }
    .glass-tech-grid { display: grid; gap: .5rem; }
    .glass-tech-item { padding: .7rem; border: 1px solid var(--line); border-radius: 9px; background: var(--white); }
    .glass-tech-item-head { display: flex; justify-content: space-between; align-items: baseline; gap: .75rem; }
    .glass-tech-item-head strong { color: var(--ink); font-size: .82rem; }
    .glass-tech-value { flex: 0 0 auto; color: var(--teal); font-size: .92rem; font-weight: 900; text-align: right; }
    .glass-tech-item p { margin: .28rem 0 0; color: var(--muted); font-size: .75rem; line-height: 1.45; }
    .glass-tech-note { margin-top: .6rem; padding: .65rem .7rem; border-radius: 8px; background: var(--accent-soft); color: #2b3054; font-size: .72rem; line-height: 1.45; }
    .glass-component-catalog { margin-top: 1.2rem; padding-top: 1.2rem; border-top: 1px solid var(--line); }
    .glass-component-catalog h3 { margin: 0 0 .35rem; font-size: 1rem; }
    .glass-component-catalog > p { margin: 0 0 .75rem; color: var(--muted); font-size: .82rem; line-height: 1.45; }
    .glass-component-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; }
    .glass-component-card { padding: .7rem .75rem; border: 1px solid var(--line); border-radius: 9px; background: var(--paper); }
    .glass-component-card strong, .glass-component-card span { display: block; }
    .glass-component-card strong { font-size: .82rem; }
    .glass-component-card span { margin-top: .2rem; color: var(--muted); font-size: .72rem; line-height: 1.35; }
    .glass-validation-note { margin-top: .8rem; padding: .7rem .8rem; border: 1px solid #d3a51d; border-radius: 9px; background: #fff8d8; color: #5e4a12; font-size: .78rem; line-height: 1.45; }
    .window-configurator { margin-top: 1.25rem; padding: 1.15rem; border: 1px solid var(--line); border-radius: 14px; background: linear-gradient(180deg, #fff 0%, #f6f8fa 100%); }
    .window-configurator-head { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; margin-bottom: 1rem; }
    .window-configurator-head h3 { margin: 0; font-size: 1.2rem; }
    .window-configurator-head p { max-width: 700px; margin: .3rem 0 0; color: var(--muted); font-size: .88rem; line-height: 1.5; }
    .prototype-badge { flex: 0 0 auto; padding: .35rem .55rem; border-radius: 999px; background: #fff3c4; color: #735400; font-size: .72rem; font-weight: 850; }
    .window-project-toolbar { display: flex; gap: .75rem; align-items: stretch; margin-bottom: 1rem; }
    .window-project-list { display: flex; flex: 1 1 auto; gap: .55rem; min-width: 0; overflow-x: auto; padding: .1rem .1rem .35rem; }
    .window-project-card { position: relative; flex: 0 0 175px; min-height: 72px; border: 1px solid var(--line); border-radius: 10px; background: #fff; color: var(--ink); overflow: hidden; }
    .window-project-card.is-active { border-color: #27337f; background: var(--compare-yellow-soft); box-shadow: inset 0 0 0 1px #27337f; }
    .window-project-select { width: 100%; height: 100%; padding: .7rem 2rem .65rem .75rem; border: 0; background: transparent; color: inherit; text-align: left; cursor: pointer; }
    .window-project-card strong, .window-project-card span { display: block; }
    .window-project-card strong { font-size: .84rem; }
    .window-project-card span { margin-top: .2rem; color: var(--muted); font-size: .7rem; line-height: 1.35; }
    .window-remove-button { position: absolute; top: .35rem; right: .35rem; display: grid; width: 25px; height: 25px; place-items: center; padding: 0; border: 0; border-radius: 50%; background: #edf0f3; color: #525f71; font-size: 1rem; cursor: pointer; }
    .window-remove-button:hover { background: #fee7e3; color: #9b2c1e; }
    .window-add-button { flex: 0 0 auto; min-height: 72px; padding: .75rem 1rem; border: 1px solid #27337f; border-radius: 10px; background: #27337f; color: #fff; font-weight: 850; cursor: pointer; }
    .window-result-breakdown { display: grid; gap: .28rem; margin-top: .65rem; padding-top: .55rem; border-top: 1px solid rgba(17,29,61,.12); }
    .window-result-breakdown span { display: flex; justify-content: space-between; gap: .6rem; font-size: .68rem; }
    .window-result-breakdown b { color: inherit; }
    .window-configurator-grid { display: grid; grid-template-columns: minmax(250px, .72fr) minmax(340px, 1.28fr); gap: 1rem; align-items: stretch; }
    .window-controls, .window-stage { padding: 1rem; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
    .window-control-group + .window-control-group { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--line); }
    .window-control-group h4 { margin: 0 0 .65rem; font-size: .9rem; }
    .window-dimensions { display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; }
    .window-dimensions label, .window-opening-control label { display: block; color: var(--muted); font-size: .78rem; font-weight: 750; }
    .window-dimensions input, .window-opening-control select { width: 100%; min-height: 44px; margin-top: .3rem; padding: .62rem .7rem; border: 1px solid #b9c2ce; border-radius: 9px; background: #fff; color: var(--ink); font: inherit; }
    .window-dimensions label { position: relative; }
    .window-dimensions label small { position: absolute; right: .65rem; bottom: .78rem; color: var(--muted); font-size: .72rem; pointer-events: none; }
    .window-dimensions input { padding-right: 2.4rem; }
    .window-dimensions input:focus, .window-opening-control select:focus { outline: 3px solid rgba(49,62,149,.18); border-color: #313e95; }
    .window-pane-count { display: grid; grid-template-columns: repeat(4, 1fr); gap: .45rem; }
    .window-pane-count button { min-height: 42px; border: 1px solid var(--line); border-radius: 9px; background: var(--paper); color: var(--ink); font-weight: 850; }
    .window-pane-count button[aria-pressed="true"] { border-color: #27337f; background: var(--compare-yellow-soft); color: #192152; box-shadow: inset 0 0 0 1px #27337f; }
    .active-pane-copy { margin: 0 0 .55rem; color: var(--muted); font-size: .78rem; }
    .window-stage { position: relative; display: grid; min-height: 470px; place-items: center; overflow: hidden; background: radial-gradient(circle at 50% 15%, #fff 0%, #eef0f6 72%); }
    .window-stage-toggle { display: none; }
    .window-preview-wrap { position: relative; display: grid; width: 100%; min-height: 390px; place-items: center; padding: 2.2rem 2.4rem 2.6rem 3.2rem; }
    .window-preview { display: grid; grid-template-columns: repeat(var(--pane-count), minmax(0, 1fr)); gap: 8px; max-width: 100%; max-height: 390px; padding: 10px; border: 8px solid #f7f7f8; outline: 2px solid #748191; background: #818d9c; box-shadow: 0 18px 30px rgba(17,29,61,.16), inset 0 0 0 1px #cfd4db; transition: width .2s ease, aspect-ratio .2s ease; }
    .window-sash { position: relative; min-width: 0; overflow: hidden; border: 7px solid #f8f8f9; outline: 1px solid #6e7b8d; background: linear-gradient(145deg, rgba(212,222,248,.9), rgba(161,177,222,.72)); color: #18264b; cursor: pointer; }
    .window-sash::after { content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(255,255,255,.42), transparent 42%); pointer-events: none; }
    .window-sash[aria-pressed="true"] { outline: 4px solid #313e95; outline-offset: -3px; }
    .window-sash svg { position: absolute; z-index: 1; inset: 5%; width: 90%; height: 90%; stroke: #1f296d; stroke-width: 2.2; fill: none; vector-effect: non-scaling-stroke; opacity: .9; }
    .window-sash-number { position: absolute; z-index: 2; top: .4rem; left: .45rem; display: grid; width: 25px; height: 25px; place-items: center; border-radius: 50%; background: rgba(17,29,61,.82); color: #fff; font-size: .72rem; font-weight: 900; }
    .window-sash-type { position: absolute; z-index: 2; right: .35rem; bottom: .35rem; left: .35rem; padding: .28rem .35rem; border-radius: 6px; background: rgba(255,255,255,.82); color: #293452; font-size: .66rem; font-weight: 800; text-align: center; backdrop-filter: blur(4px); }
    .window-dimension-label { position: absolute; color: #405064; font-size: .76rem; font-weight: 850; }
    .window-dimension-label.width { top: .65rem; left: 50%; transform: translateX(-50%); }
    .window-dimension-label.height { top: 50%; left: .45rem; transform: translateY(-50%) rotate(-90deg); }
    .window-builder-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .55rem; margin-top: .8rem; }
    .window-builder-stat { padding: .7rem; border: 1px solid var(--line); border-radius: 9px; background: #fff; }
    .window-builder-stat span, .window-builder-stat strong { display: block; }
    .window-builder-stat span { color: var(--muted); font-size: .7rem; }
    .window-builder-stat strong { margin-top: .22rem; font-size: .9rem; }
    .window-calculation-status { margin-top: .7rem; padding: .75rem .85rem; border-left: 4px solid #d79a16; border-radius: 8px; background: #fff7dd; color: #634800; font-size: .8rem; line-height: 1.45; }
    .quote-entry { display: grid; grid-template-columns: 1fr auto; gap: 1rem; align-items: center; margin: 1rem 0; padding: 1rem 1.1rem; border: 1px solid #28337d; border-radius: 13px; background: linear-gradient(135deg,#e9ebf7,#fff); }
    .quote-entry strong, .quote-entry span { display: block; }
    .quote-entry strong { color: #13193f; font-size: 1rem; }
    .quote-entry span { margin-top: .25rem; color: #435265; font-size: .8rem; line-height: 1.45; }
    .quote-entry button, .quote-primary { min-height: 48px; padding: .7rem 1rem; border: 1px solid #232d71; border-radius: 9px; background: #27337f; color: #fff; font: inherit; font-weight: 900; cursor: pointer; }
    .quote-entry.is-final { margin-top: 1.1rem; }
    .quote-entry button:disabled { border-color: #aab2bc; background: #dfe3e8; color: #697585; cursor: not-allowed; }
    .quote-modal { position: fixed; z-index: 120; inset: 0; display: grid; place-items: center; padding: 1rem; }
    .quote-modal[hidden] { display: none; }
    .quote-backdrop { position: absolute; inset: 0; background: rgba(8,15,34,.72); backdrop-filter: blur(4px); }
    .quote-panel { position: relative; display: flex; flex-direction: column; width: min(760px,100%); max-height: min(880px,94dvh); overflow: hidden; border-radius: 16px; background: #fff; box-shadow: 0 24px 70px rgba(5,11,29,.3); }
    .quote-head { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; padding: 1rem 1.1rem; border-bottom: 1px solid var(--line); background: #f5f6fa; }
    .quote-head h2 { margin: .15rem 0 0; font-size: 1.25rem; }
    .quote-kicker { color: #27337f; font-size: .7rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
    .quote-close { width: 36px; height: 36px; padding: 0; border: 1px solid var(--line); border-radius: 50%; background: #fff; color: var(--muted); font-size: 1.25rem; cursor: pointer; }
    .quote-progress { display: grid; grid-template-columns: repeat(3,1fr); gap: .35rem; padding: .8rem 1.1rem 0; }
    .quote-progress[hidden], .quote-foot[hidden] { display: none; }
    .quote-progress span { padding: .45rem; border-radius: 7px; background: #edf0f3; color: #707d8e; font-size: .7rem; font-weight: 850; text-align: center; }
    .quote-progress span.is-active { background: #dee1f3; color: #192152; }
    .quote-body { overflow-y: auto; padding: 1rem 1.1rem; }
    .quote-step[hidden] { display: none; }
    .quote-step h3 { margin: 0 0 .35rem; font-size: 1.05rem; }
    .quote-step > p { margin: 0 0 .85rem; color: var(--muted); font-size: .82rem; line-height: 1.45; }
    .quote-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .55rem; margin-bottom: .85rem; }
    .quote-summary div { padding: .7rem; border: 1px solid var(--line); border-radius: 9px; background: var(--paper); }
    .quote-summary span, .quote-summary strong { display: block; }
    .quote-summary span { color: var(--muted); font-size: .68rem; }
    .quote-summary strong { margin-top: .18rem; font-size: .82rem; }
    .offer-count-options, .factory-match-list { display: grid; gap: .5rem; }
    .offer-choice, .factory-match { display: flex; gap: .7rem; align-items: flex-start; padding: .75rem; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
    .offer-choice:has(input:checked), .factory-match:has(input:checked) { border-color: #27337f; background: #eeeff8; }
    .offer-choice input, .factory-match input { margin-top: .2rem; accent-color: #27337f; }
    .offer-choice strong, .offer-choice span, .factory-match strong, .factory-match span { display: block; }
    .offer-choice span, .factory-match span { margin-top: .15rem; color: var(--muted); font-size: .72rem; line-height: 1.35; }
    .quote-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; }
    .quote-field.full { grid-column: 1/-1; }
    .quote-field label { display: block; margin-bottom: .3rem; color: #405064; font-size: .74rem; font-weight: 850; }
    .quote-field input, .quote-field select, .quote-field textarea { width: 100%; min-height: 44px; padding: .65rem .7rem; border: 1px solid #b9c2ce; border-radius: 8px; background: #fff; color: var(--ink); font: inherit; }
    .quote-field textarea { min-height: 86px; resize: vertical; }
    .quote-consent { display: flex; gap: .6rem; align-items: flex-start; margin-top: .8rem; padding: .75rem; border-radius: 9px; background: #f4f5f7; color: #405064; font-size: .75rem; line-height: 1.45; }
    .quote-consent input { margin-top: .2rem; accent-color: #27337f; }
    .quote-foot { display: flex; justify-content: space-between; gap: .7rem; padding: .85rem 1.1rem; border-top: 1px solid var(--line); background: #fff; }
    .quote-secondary { min-height: 46px; padding: .65rem .9rem; border: 1px solid var(--line); border-radius: 9px; background: #fff; color: var(--ink); font-weight: 850; cursor: pointer; }
    .quote-demo-note { margin-top: .75rem; padding: .65rem .75rem; border-left: 4px solid #d79a16; border-radius: 7px; background: #fff7dd; color: #634800; font-size: .72rem; line-height: 1.4; }
    .quote-success { padding: 1.2rem; text-align: center; }
    .quote-success-mark { display: grid; width: 58px; height: 58px; margin: 0 auto .8rem; place-items: center; border-radius: 50%; background: #dee1f3; color: #232d71; font-size: 1.6rem; font-weight: 900; }
    .lead-demo-board { margin-top: 1rem; padding: 1rem; border: 1px solid var(--line); border-radius: 12px; background: #f7f8fa; }
    .lead-demo-board h3 { margin: 0 0 .35rem; }
    .lead-pipeline { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .55rem; margin-top: .8rem; }
    .lead-pipeline div { padding: .7rem; border-radius: 9px; background: #fff; border: 1px solid var(--line); }
    .lead-pipeline span, .lead-pipeline strong { display:block; }
    .lead-pipeline span { color: var(--muted); font-size:.68rem; }
    .lead-pipeline strong { margin-top:.2rem; font-size:.9rem; }
    .empty-compare { padding: 2rem; border: 1px dashed #b9c2ce; border-radius: 12px; background: var(--paper); text-align: center; color: var(--muted); }
    .workspace.detail-mode { grid-template-columns: 1fr; }
    .workspace.detail-mode > .filters { display: none; }
    .workspace.detail-mode .searchrow { display: none; }
    .workspace.section-mode { grid-template-columns: 1fr; }
    .workspace.section-mode > .filters { display: none; }
    .profile-detail { padding: 1.2rem; }
    .profile-detail-head { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; padding-bottom: 1rem; border-bottom: 1px solid var(--line); }
    .profile-detail-head h2 { margin: .2rem 0 .25rem; font-size: 1.7rem; }
    .profile-detail-head p { margin: 0; color: var(--muted); }
    .profile-detail-hero { position: relative; isolation: isolate; min-height: 360px; align-items: flex-end; overflow: hidden; padding: 2rem; border: 0; border-radius: 14px; background-size: cover; background-position: var(--hero-position, center); box-shadow: 0 16px 35px rgba(17,29,61,.16); color: #fff; }
    .profile-detail-hero::before { content: ''; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(10,18,39,.88) 0%, rgba(10,18,39,.62) 43%, rgba(10,18,39,.12) 76%, rgba(10,18,39,.06) 100%); }
    .profile-detail-hero > div:first-child { max-width: 640px; }
    .profile-detail-hero .eyebrow { color: rgba(255,255,255,.82); }
    .profile-detail-hero h2 { color: #fff; font-size: clamp(2rem, 5vw, 3.25rem); letter-spacing: -.04em; line-height: 1.02; text-shadow: 0 2px 18px rgba(0,0,0,.28); }
    .profile-detail-hero p { max-width: 580px; color: rgba(255,255,255,.9); font-size: 1rem; line-height: 1.55; }
    .profile-detail-hero .badge { box-shadow: 0 5px 18px rgba(0,0,0,.18); }
    .profile-hero-credit { position: absolute; top: .8rem; right: .8rem; padding: .35rem .55rem; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; background: rgba(8,15,34,.48); color: rgba(255,255,255,.85); font-size: .68rem; backdrop-filter: blur(5px); }
    .detail-section { margin-top: 1.15rem; }
    .detail-section h3 { margin: 0 0 .7rem; font-size: 1rem; }
    .technical-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .6rem; }
    .technical-item { padding: .8rem; background: var(--paper); border: 1px solid var(--line); border-radius: 10px; }
    .technical-item b, .technical-item span { display: block; }
    .technical-item b { font-size: .95rem; }
    .technical-item span { margin-top: .2rem; color: var(--muted); font-size: .75rem; }
    .catalog-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
    .catalog-figure { margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
    .catalog-figure a { display: block; background: #fff; }
    .catalog-figure img { display: block; width: 100%; height: 390px; object-fit: contain; padding: .7rem; }
    .catalog-figure figcaption { padding: .7rem .85rem; border-top: 1px solid var(--line); color: var(--muted); font-size: .78rem; line-height: 1.45; }
    .render-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
    .render-figure { margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
    .render-figure a { display: block; background: #edf0f5; }
    .render-figure img { display: block; width: 100%; height: 330px; object-fit: cover; }
    .render-figure figcaption { padding: .7rem .85rem; border-top: 1px solid var(--line); color: var(--muted); font-size: .78rem; line-height: 1.45; }
    .catalog-placeholder { padding: 1rem; border: 1px dashed #b9c2ce; border-radius: 12px; background: var(--paper); color: var(--muted); font-size: .86rem; }
    .technical-note { margin: .7rem 0 0; color: var(--muted); font-size: .8rem; line-height: 1.55; }
    .detail-source { padding: .85rem 1rem; background: var(--teal-soft); border: 1px solid #b9bdda; border-radius: 10px; color: var(--teal); font-size: .82rem; }
    .factories { display: none; padding: 1rem; }
    .factory-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .85rem; }
    .factory { border: 1px solid var(--line); border-radius: 13px; padding: 1rem; background: var(--white); }
    .factory p { color: var(--muted); font-size: .9rem; }
    .status { display: flex; gap: .5rem; align-items: center; color: var(--danger); font-size: .82rem; font-weight: 750; }
    .factory .links { margin-top: 1rem; padding-top: .8rem; border-top: 1px solid var(--line); font-size: .86rem; color: var(--muted); }
    .factory-card { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 1.1rem; align-items: center; }
    .factory-card-logo { width: 100%; height: 100px; object-fit: contain; padding: .7rem; border: 1px solid var(--line); border-radius: 12px; background: white; }
    .factory-wordmark { display: grid; width: 100%; height: 100px; place-items: center; padding: .7rem; border: 1px solid var(--line); border-radius: 12px; background: #17213d; color: #fff; font-size: 1.15rem; font-weight: 950; letter-spacing: .08em; text-align: center; }
    .factory-cover-wordmark { display: inline-grid; min-width: min(310px,80vw); min-height: 78px; place-items: center; padding: .75rem 1.2rem; border-radius: 10px; background: rgba(255,255,255,.96); color: #17213d; font-size: 1.35rem; font-weight: 950; letter-spacing: .08em; }
    .factory-card h3 { font-size: 1.45rem; margin-top: .35rem; }
    .factory-detail { padding: 0; overflow: hidden; }
    .factory-cover { position: relative; min-height: 330px; display: grid; align-items: end; background: var(--ink); overflow: hidden; }
    .factory-cover > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 34%; opacity: .5; }
    .factory-cover::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(17,29,61,.96) 0%, rgba(17,29,61,.72) 52%, rgba(17,29,61,.18) 100%); }
    .factory-cover-copy { position: relative; z-index: 1; max-width: 720px; padding: 2rem; color: white; }
    .factory-cover-logo { width: min(270px, 70vw); height: 78px; object-fit: contain; object-position: left center; padding: .55rem .8rem; border-radius: 10px; background: rgba(255,255,255,.96); }
    .factory-cover h2 { margin: 1rem 0 .45rem; font-size: clamp(2rem, 5vw, 3.3rem); letter-spacing: -.04em; line-height: 1.02; }
    .factory-cover p { margin: 0; max-width: 650px; color: #e2e7ee; font-size: 1.02rem; }
    .factory-content { padding: 1.4rem; }
    .factory-statuses { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1rem 0; }
    .factory-status-card { padding: .85rem 1rem; border-radius: 10px; font-size: .84rem; font-weight: 800; }
    .factory-status-card.consent { color: var(--teal); background: var(--teal-soft); border: 1px solid #b9bdda; }
    .factory-status-card.unconfirmed { color: #7b382f; background: #fff0ee; border: 1px solid #e8b8b2; }
    .factory-statuses, .lead-demo-board { display: none; }
    .factory-columns { display: grid; grid-template-columns: 1.15fr .85fr; gap: 1rem; }
    .factory-section { margin-top: 1rem; padding: 1.1rem; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
    .factory-section h3 { margin: 0 0 .7rem; }
    .factory-section p { margin: .4rem 0; color: var(--muted); }
    .factory-pills { display: flex; flex-wrap: wrap; gap: .45rem; }
    .factory-pills span { padding: .4rem .62rem; border-radius: 999px; background: var(--paper); border: 1px solid var(--line); font-size: .8rem; font-weight: 750; }
    .factory-facts { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .55rem; }
    .factory-fact { padding: .75rem; border-radius: 9px; background: var(--paper); }
    .factory-fact b, .factory-fact span { display: block; }
    .factory-fact span { margin-top: .18rem; color: var(--muted); font-size: .75rem; }
    .factory-links { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: .9rem; }
    .method { display: none; padding: 1.25rem; }
    .method h2 { margin-top: 0; }
    .rules { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
    .rule { padding: 1rem; background: var(--paper); border-radius: 12px; }
    .rule b { display: block; margin-bottom: .35rem; }
    .rule span { color: var(--muted); font-size: .88rem; }
    .legend { display: none; padding: 1.25rem; }
    .legend h2 { margin: 0 0 .35rem; }
    .legend > p { margin: 0 0 1.2rem; color: var(--muted); }
    .legend-group { margin-top: 1.25rem; }
    .legend-group h3 { margin: 0 0 .7rem; color: var(--ink); font-size: 1.05rem; }
    .legend-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
    .legend-item { padding: 1rem; border: 1px solid var(--line); border-radius: 12px; background: var(--white); }
    .legend-term { display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin-bottom: .45rem; }
    .legend-term b { color: var(--ink); font-size: .96rem; }
    .legend-direction { flex: 0 0 auto; padding: .24rem .46rem; border-radius: 999px; background: var(--paper); color: var(--muted); font-size: .7rem; font-weight: 850; }
    .legend-direction.lower { background: #e9eaf3; color: #172c64; }
    .legend-direction.higher { background: #eef1fb; color: #314680; }
    .legend-item p { margin: 0; color: var(--muted); font-size: .88rem; line-height: 1.5; }
    .comparebar { background: linear-gradient(90deg, #263076 0%, var(--compare-yellow) 55%, #424e9f 100%); color: #fff; border-top: 1px solid #1f296d; border-bottom: 1px solid #1f296d; box-shadow: 0 8px 24px rgba(23,30,80,.18); }
    .comparebar-inner { max-width: 1480px; margin: 0 auto; padding: .7rem 1.25rem; display: grid; grid-template-columns: 145px minmax(0, 1fr) auto; align-items: center; gap: .8rem; }
    .compare-head { display: flex; flex-direction: column; gap: .05rem; }
    .compare-head strong { font-size: 1.05rem; }
    .compare-head span { color: rgba(255,255,255,.82); font-size: .78rem; }
    .compare-slots-scroll { min-width: 0; overflow-x: auto; scrollbar-width: thin; }
    .selected-list { display: grid; grid-template-columns: repeat(4, minmax(155px, 1fr)); min-width: 680px; gap: .5rem; }
    .selected-item, .selected-placeholder { min-height: 54px; border-radius: 9px; font-size: .82rem; }
    .selected-item { display: flex; justify-content: space-between; gap: .6rem; align-items: center; padding: .5rem .62rem; background: rgba(255,255,255,.9); color: var(--ink); border: 1px solid rgba(255,255,255,.55); }
    .selected-placeholder { display: grid; place-items: center; padding: .38rem; background: rgba(255,255,255,.18); border: 1px dashed rgba(255,255,255,.55); color: #fff; }
    .quick-add { width: 100%; border: 0; background: rgba(255,255,255,.9); color: var(--ink); padding: .45rem .5rem; font-size: .78rem; }
    .quick-add:focus { outline: 2px solid var(--accent); border-color: transparent; }
    .quick-add option, .quick-add optgroup { color: var(--ink); background: white; }
    .selected-item .selection-copy { min-width: 0; }
    .selected-item .selection-copy span, .selected-item .selection-copy small { display: block; }
    .selected-item .selection-copy span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 750; }
    .selected-item .selection-copy small { margin-top: .12rem; color: var(--muted); font-size: .7rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .selected-item button { padding: 0; width: 24px; height: 24px; flex: 0 0 24px; border-radius: 50%; background: rgba(17,29,61,.12); color: #101525; font-size: 1rem; line-height: 1; }
    .comparebar-inner > button { border: 1px solid var(--ink); background: var(--ink); color: white; font-weight: 850; border-radius: 9px; padding: .78rem 1rem; white-space: nowrap; box-shadow: 0 3px 9px rgba(17,29,61,.2); }
    .comparebar-inner > button:hover { background: #1d2f5f; }
    .comparebar-inner > button.active { box-shadow: 0 0 0 3px rgba(255,255,255,.35); }
    .secondary:disabled { cursor: not-allowed; opacity: .52; }
    .tablewrap { width: 100%; max-width: 100%; overflow-x: auto; padding: 0; border: 1px solid var(--line); border-radius: 13px; -webkit-overflow-scrolling: touch; touch-action: pan-x pan-y pinch-zoom; }
    .comparison-table { width: 100%; border-collapse: separate; border-spacing: 0; table-layout: fixed; min-width: calc(230px + var(--compare-columns, 2) * 220px); }
    .comparison-table th, .comparison-table td { padding: .78rem .85rem; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
    .comparison-table tr > *:last-child { border-right: 0; }
    .comparison-table tbody tr:last-child > * { border-bottom: 0; }
    .comparison-table thead th { background: #fff; color: var(--ink); vertical-align: top; }
    .comparison-table thead th:first-child, .comparison-table tbody th { width: 230px; background: #f7f8fa; color: #405064; font-size: .82rem; font-weight: 800; }
    .comparison-table thead th:first-child { position: sticky; left: 0; z-index: 3; }
    .comparison-table tbody tr:not(.group-row) > th { position: sticky; left: 0; z-index: 2; }
    .comparison-table .product-column { position: relative; padding: 1rem; }
    .comparison-table .product-maker { color: var(--teal); font-size: .72rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
    .comparison-table .product-name { margin: .18rem 2rem .55rem 0; font-size: 1.05rem; line-height: 1.2; }
    .comparison-table .product-actions { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; }
    .comparison-table .product-actions a { color: var(--teal); font-size: .76rem; font-weight: 800; text-decoration: none; }
    .comparison-table .product-glass { margin-top: .8rem; padding-top: .7rem; border-top: 1px solid var(--line); }
    .comparison-table .product-glass label { display: block; margin-bottom: .3rem; color: var(--muted); font-size: .72rem; }
    .glass-picker-trigger { width: 100%; min-height: 62px; display: flex; flex-direction: column; align-items: flex-start; gap: .22rem; padding: .62rem; border: 1px solid #5962a0; border-radius: 9px; background: var(--accent-soft); color: #181e44; text-align: left; }
    .glass-picker-trigger span { width: 100%; overflow: hidden; color: #405064; font-size: .7rem; font-weight: 700; line-height: 1.28; text-overflow: ellipsis; }
    .glass-picker-trigger strong { font-size: .78rem; font-weight: 900; }
    .glass-picker-trigger:hover { border-color: #27337f; background: #d8dbef; }
    .comparison-table .product-glass.needs-glazing label { color: var(--danger); font-weight: 900; }
    .comparison-table .product-glass.needs-glazing .glass-picker-trigger { background: #fff0ee; border: 2px solid var(--danger); color: #8b2f26; }
    .comparison-table .product-glass.is-pending label { color: #735600; font-weight: 900; }
    .comparison-table .product-glass.is-pending .glass-picker-trigger { background: #fff8d8; border: 2px solid #d3a51d; color: #4f3512; box-shadow: 0 0 0 3px rgba(245,200,66,.2); }
    body.glass-picker-open { overflow: hidden; }
    .glass-picker[hidden] { display: none; }
    .glass-picker { position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; padding: 1rem; }
    .glass-picker-backdrop { position: absolute; inset: 0; background: rgba(7,14,32,.72); backdrop-filter: blur(3px); }
    .glass-picker-panel { position: relative; width: min(820px, 100%); max-height: min(92vh, 900px); display: grid; grid-template-rows: auto minmax(0,1fr) auto; overflow: hidden; border: 1px solid #cbd3dd; border-radius: 16px; background: #f7f8fa; box-shadow: 0 28px 80px rgba(7,14,32,.35); }
    .glass-picker-head { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; padding: 1rem 1.15rem; border-bottom: 1px solid var(--line); background: #fff; }
    .glass-picker-kicker { display: block; margin-bottom: .15rem; color: var(--teal); font-size: .7rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
    .glass-picker-head h2 { margin: 0; color: var(--ink); font-size: 1.22rem; line-height: 1.2; }
    .glass-picker-close { width: 40px; height: 40px; flex: 0 0 40px; padding: 0; border: 1px solid var(--line); border-radius: 50%; background: #f2f4f6; color: var(--ink); font-size: 1.45rem; line-height: 1; }
    .glass-picker-body { overflow-y: auto; padding: 1rem 1.15rem 1.3rem; -webkit-overflow-scrolling: touch; }
    .glass-picker-intro { margin: 0 0 .9rem; color: #526174; font-size: .86rem; line-height: 1.45; }
    .glass-guide-step { margin-top: .85rem; padding: .85rem; border: 1px solid #dce1e8; border-radius: 12px; background: #fff; }
    .glass-guide-step:first-of-type { margin-top: 0; }
    .glass-guide-step h3 { display: flex; align-items: center; gap: .55rem; margin: 0 0 .65rem; color: var(--ink); font-size: .88rem; }
    .glass-guide-number { width: 26px; height: 26px; display: grid; flex: 0 0 26px; place-items: center; border-radius: 50%; background: #263076; color: #fff; font-size: .72rem; }
    .glass-guide-options { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .5rem; }
    .glass-guide-option { min-height: 54px; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: .13rem; padding: .6rem .7rem; border: 1px solid #cbd3dd; border-radius: 9px; background: #fff; color: var(--ink); text-align: left; }
    .glass-guide-option strong { font-size: .82rem; line-height: 1.2; }
    .glass-guide-option small { color: var(--muted); font-size: .68rem; line-height: 1.25; }
    .glass-guide-option:hover { border-color: #505a98; background: #eeeff7; }
    .glass-guide-option.is-selected { border: 2px solid #263076; background: #e3e5f4; color: #192152; box-shadow: 0 0 0 3px rgba(38,48,118,.11); }
    .glass-guide-option:disabled { display: none; }
    .glass-picker-mode { width: 100%; margin-top: 1rem; padding: .72rem; border: 1px solid #b9c2ce; border-radius: 9px; background: transparent; color: var(--teal); font-size: .8rem; font-weight: 850; }
    .glass-full-search { width: 100%; margin-bottom: .75rem; padding: .75rem .8rem; border: 1px solid #b9c2ce; border-radius: 9px; background: #fff; font-size: .9rem; }
    .glass-full-list { display: grid; gap: .5rem; }
    .glass-full-option { width: 100%; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .65rem; align-items: center; padding: .72rem; border: 1px solid #d1d8e1; border-radius: 9px; background: #fff; color: var(--ink); text-align: left; }
    .glass-full-option span { font-size: .78rem; line-height: 1.35; }
    .glass-full-option small { color: var(--muted); font-size: .68rem; white-space: nowrap; }
    .glass-full-option.is-selected { border: 2px solid #263076; background: #e3e5f4; }
    .glass-picker-foot { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .9rem; align-items: center; padding: .85rem 1.15rem calc(.85rem + env(safe-area-inset-bottom)); border-top: 1px solid var(--line); background: #fff; }
    .glass-picker-summary { min-width: 0; }
    .glass-picker-summary span, .glass-picker-summary strong { display: block; }
    .glass-picker-summary span { color: var(--muted); font-size: .68rem; font-weight: 750; }
    .glass-picker-summary strong { margin-top: .16rem; overflow: hidden; color: var(--ink); font-size: .78rem; line-height: 1.3; text-overflow: ellipsis; }
    .glass-picker-confirm { min-height: 46px; padding: .72rem 1rem; border: 1px solid #1f296d; border-radius: 9px; background: #263076; color: #fff; font-size: .82rem; font-weight: 900; }
    .comparison-table .bulk-glass-row th { background: #f7f8fa; color: #405064; vertical-align: middle; }
    .comparison-table .bulk-glass-row td { padding: .72rem .85rem; background: #f7f8fa; }
    .comparison-table .bulk-glass-row.has-pending td { background: #fff3c8; }
    .comparison-table .bulk-apply-glass { width: 100%; min-height: 50px; padding: .72rem 1rem; border: 1px solid #27337f; border-radius: 9px; background: var(--compare-yellow); color: #fff; font-size: .88rem; font-weight: 900; box-shadow: 0 3px 9px rgba(23,30,80,.2); }
    .comparison-table .bulk-apply-glass:hover:not(:disabled) { background: var(--compare-yellow-strong); }
    .comparison-table .bulk-apply-glass:disabled { border-color: var(--line); background: #edf0f3; color: #8691a0; cursor: default; box-shadow: none; }
    .comparison-table .bulk-glass-row:not(.has-pending) { display: none; }
    .comparison-tools { display: flex; flex-wrap: wrap; gap: .55rem; margin: .85rem 0; }
    .comparison-tools button { min-height: 42px; padding: .62rem .85rem; border: 1px solid #9facbc; border-radius: 9px; background: #fff; color: var(--ink); font-size: .82rem; font-weight: 850; }
    .comparison-tools button[aria-pressed="true"] { border-color: #27337f; background: var(--compare-yellow-soft); color: #192152; }
    .comparison-alert { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin: .75rem 0; padding: .85rem 1rem; border: 1px solid #e0a126; border-radius: 11px; background: #fff6dc; color: #5d4300; }
    .comparison-alert strong, .comparison-alert span { display: block; }
    .comparison-alert span { margin-top: .18rem; font-size: .82rem; line-height: 1.4; }
    .comparison-alert button { flex: 0 0 auto; min-height: 42px; padding: .65rem .9rem; border: 1px solid #1f296d; border-radius: 9px; background: #27337f; color: #fff; font-weight: 900; }
    .comparison-table .compare-row-hidden,
    .comparison-table .technical-detail-row.is-collapsed { display: none; }
    .choose-glazing { color: var(--danger); font-weight: 900; }
    .comparison-table .remove-product { position: absolute; top: .7rem; right: .7rem; width: 27px; height: 27px; border: 1px solid var(--line); border-radius: 50%; background: var(--paper); color: var(--muted); font-size: 1rem; line-height: 1; }
    .comparison-table .group-row th { padding: .62rem .85rem; background: var(--ink); color: white; font-size: .82rem; letter-spacing: .04em; text-transform: uppercase; }
    .comparison-table td { color: #26314e; font-size: .88rem; }
    .comparison-table td small { display: block; margin-top: .2rem; color: var(--muted); }
    .comparison-table .muted-value { color: #939daa; }
    .comparison-table .thermal-highlight th,
    .comparison-table .thermal-highlight td { background: #e8eaf6; border-bottom-color: #b6bbdd; }
    .comparison-table .thermal-highlight th { color: #192152; font-size: .92rem; }
    .thermal-value { display: block; color: #0d2566; font-size: 1.32rem; font-weight: 900; line-height: 1.15; }
    .thermal-hint { display: block; margin-top: .35rem; color: #272d59; font-size: .74rem; font-weight: 750; }
    .comparison-table .final-result-row th { background: #17254d; color: #fff; font-size: .98rem; }
    .comparison-table .final-result-row th small { display: block; margin-top: .35rem; color: #cbd5e2; font-size: .72rem; font-weight: 700; line-height: 1.35; }
    .comparison-table .final-result-row td { padding: 1rem; background: #f3f5f8; vertical-align: middle; }
    .average-result { min-height: 210px; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding: .95rem .7rem; border: 2px solid #cbd2dc; border-radius: 12px; background: #fff; text-align: center; }
    .average-result strong { color: var(--ink); font-size: clamp(1.75rem, 3vw, 2.5rem); line-height: 1; letter-spacing: -.04em; }
    .average-result span { margin-top: .25rem; color: var(--muted); font-size: .78rem; font-weight: 800; }
    .average-result em { margin-top: .5rem; font-size: .72rem; font-style: normal; font-weight: 850; }
    .simple-verdict { margin-top: .45rem; color: #26314e; font-size: .78rem; font-weight: 900; }
    .quick-facts.is-collapsed, .window-result-breakdown.is-collapsed { display: none; }
    .comparator-page:not(.show-technical) .quick-facts,
    .comparator-page:not(.show-technical) .window-result-breakdown { display: none; }
    .class-inline { display: inline-flex; align-items: center; gap: .38rem; }
    .class-help { display: inline-grid; width: 22px; height: 22px; place-items: center; padding: 0; border: 1px solid #9ca6b4; border-radius: 50%; background: #fff; color: #405064; font-size: .72rem; font-weight: 900; cursor: help; }
    .average-result.best { border-color: #313e95; background: #e8eaf6; box-shadow: 0 0 0 3px rgba(49,62,149,.13); }
    .average-result.best strong, .average-result.best em { color: #192152; }
    .average-result.close { border-color: #e4bd34; background: #fff8d8; }
    .average-result.close strong, .average-result.close em { color: #735600; }
    .average-result.medium { border-color: #e58b2a; background: #fff0df; }
    .average-result.medium strong, .average-result.medium em { color: #9a4d08; }
    .average-result.far { border-color: #c95649; background: #fff0ee; }
    .average-result.far strong, .average-result.far em { color: #8b2f26; }
    .average-result.missing { border-style: dashed; border-color: #aeb7c2; background: #f3f4f6; }
    .average-result.missing strong { color: #657181; font-size: 1rem; letter-spacing: 0; }
    .quick-glass { width: 100%; margin-top: .65rem; padding-top: .55rem; border-top: 1px solid rgba(17,29,61,.12); color: #344760; font-size: .7rem; font-weight: 750; line-height: 1.35; }
    .quick-facts { width: 100%; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .3rem; margin-top: .55rem; }
    .quick-fact { padding: .35rem .25rem; border-radius: 6px; background: rgba(255,255,255,.76); color: #526174; font-size: .66rem; line-height: 1.2; }
    .quick-fact b { display: block; margin-top: .1rem; color: var(--ink); font-size: .76rem; }
    .compare-empty-actions { display: flex; justify-content: center; gap: .6rem; margin-top: 1rem; }
    .mobile-comparison { display: none; }
    .mobile-profile-list { display: grid; gap: .7rem; }
    .mobile-profile-card { position: relative; padding: .9rem; border: 1px solid var(--line); border-radius: 12px; background: #fff; box-shadow: 0 3px 12px rgba(17,29,61,.06); }
    .mobile-profile-card .product-name { margin: .18rem 2rem .55rem 0; font-size: 1rem; }
    .mobile-profile-card .product-maker { color: var(--teal); font-size: .7rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
    .mobile-profile-card .product-actions { display: none; }
    .mobile-profile-card .product-glass { margin-top: .7rem; padding-top: .65rem; border-top: 1px solid var(--line); }
    .mobile-profile-card .product-glass label { display: block; margin-bottom: .3rem; color: var(--muted); font-size: .75rem; }
    .mobile-profile-card .remove-product { position: absolute; top: .65rem; right: .65rem; width: 30px; height: 30px; padding: 0; border: 1px solid var(--line); border-radius: 50%; background: #f2f4f6; color: var(--muted); font-size: 1rem; }
    .mobile-profile-card .needs-glazing label { color: var(--danger); font-weight: 900; }
    .mobile-profile-card .needs-glazing .glass-picker-trigger { background: #fff0ee; border: 2px solid var(--danger); color: #8b2f26; }
    .mobile-profile-card .is-pending label { color: #735600; font-weight: 900; }
    .mobile-profile-card .is-pending .glass-picker-trigger { background: #fff8d8; border: 2px solid #d3a51d; color: #4f3512; }
    .mobile-bulk-update { margin: .75rem 0; }
    .mobile-bulk-update .bulk-apply-glass { width: 100%; min-height: 52px; padding: .75rem; border: 1px solid #27337f; border-radius: 10px; background: var(--compare-yellow); color: #fff; font-size: .88rem; font-weight: 900; }
    .mobile-bulk-update .bulk-apply-glass:disabled { border-color: var(--line); background: #edf0f3; color: #8691a0; }
    .mobile-section { margin-top: .65rem; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
    .mobile-section > summary { display: flex; justify-content: space-between; align-items: center; min-height: 52px; padding: .75rem .85rem; color: var(--ink); font-size: .9rem; font-weight: 900; cursor: pointer; list-style: none; }
    .mobile-section > summary::-webkit-details-marker { display: none; }
    .mobile-section > summary::after { content: '+'; color: var(--teal); font-size: 1.25rem; font-weight: 500; }
    .mobile-section[open] > summary { border-bottom: 1px solid var(--line); background: #eef0f7; color: #192152; }
    .mobile-section[open] > summary::after { content: '−'; }
    .mobile-section-body { padding: .65rem; background: #f7f8fa; }
    .mobile-metric { margin-top: .6rem; padding: .7rem; border: 1px solid #dce1e8; border-radius: 10px; background: #fff; }
    .mobile-metric:first-child { margin-top: 0; }
    .mobile-metric h3 { margin: 0 0 .55rem; color: #405064; font-size: .78rem; line-height: 1.35; }
    .mobile-metric h3 small { display: block; margin-top: .2rem; color: var(--muted); font-size: .68rem; }
    .mobile-value-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .45rem; }
    .mobile-value { min-width: 0; padding: .58rem; border-radius: 8px; background: #f3f5f8; color: #26314e; font-size: .78rem; line-height: 1.35; overflow-wrap: anywhere; }
    .mobile-value-system { display: block; margin-bottom: .35rem; padding-bottom: .28rem; border-bottom: 1px solid #dce1e8; color: var(--teal); font-size: .65rem; font-weight: 900; line-height: 1.25; text-transform: uppercase; }
    .mobile-value small { display: block; margin-top: .2rem; color: var(--muted); }
    .mobile-value .thermal-value { font-size: 1.05rem; }
    .mobile-value .average-result { min-height: 0; padding: .65rem .4rem; }
    .mobile-value .average-result strong { font-size: 1.65rem; }
    .mobile-value .average-result .quick-glass,
    .mobile-value .average-result .quick-facts { display: none; }
    @media (max-width: 850px) {
      header { position: static; }
      .nav { flex-wrap: wrap; padding-top: .65rem; padding-bottom: .65rem; }
      .brand { flex-basis: 100%; justify-content: center; min-width: 0; }
      .brand-logo { width: min(430px, 92vw); }
      .navlinks { width: 100%; overflow-x: auto; padding-bottom: .15rem; }
      .navlinks button { flex: 0 0 auto; white-space: nowrap; }
      .navlinks a { flex: 0 0 auto; white-space: nowrap; }
      .comparebar-inner { grid-template-columns: 120px minmax(0, 1fr) auto; padding-left: 1rem; padding-right: 1rem; }
      .comparison-table thead th:first-child,
      .comparison-table tbody tr:not(.group-row) > th { position: static; left: auto; }
      .intro { grid-template-columns: 1fr; gap: .8rem; }
      .workspace { grid-template-columns: 1fr; }
      .filters { position: static; display: grid; grid-template-columns: repeat(2, 1fr); gap: .7rem; }
      .filters h2, .filters .reset { grid-column: 1 / -1; }
      .field { margin: 0; }
      .specs { grid-template-columns: repeat(2, 1fr); }
      .glass-builder { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .rules, .factory-grid, .legend-grid { grid-template-columns: 1fr; }
      .glass-simple-layout { grid-template-columns: 1fr; }
      .window-configurator-grid { grid-template-columns: 1fr; }
      .window-project-toolbar { align-items: stretch; flex-direction: column; }
      .window-project-list { width: 100%; }
      .window-add-button { min-height: 48px; }
      .factory-card, .factory-columns { grid-template-columns: 1fr; }
      .cards.brand-index { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .technical-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }
    @media (max-width: 720px) {
      .comparator-page > p { display: none; }
      .comparator-page > h2 { margin-bottom: .55rem; }
      .window-stage { order: -1; display: block; min-height: 0; padding: .3rem; border-radius: 10px; }
      .window-stage-toggle { display: none; }
      .window-preview-wrap { min-height: 190px; height: 190px; padding: 1.45rem .6rem 1.65rem 2rem; }
      .window-sash-type { display: none; }
      .quote-entry { grid-template-columns: 1fr; padding: .85rem; }
      .quote-entry button { width: 100%; }
      .quote-summary { grid-template-columns: 1fr 1fr; }
      .quote-fields { grid-template-columns: 1fr; }
      .quote-field.full { grid-column: auto; }
      .lead-pipeline { grid-template-columns: 1fr 1fr; }
      .tablewrap.has-mobile-comparison { overflow: visible; border: 0; border-radius: 0; }
      .tablewrap.has-mobile-comparison > .comparison-table { display: none; }
      .mobile-comparison { display: block; }
    }
    @media (max-width: 560px) {
      .topbar { font-size: .76rem; }
      .nav { min-height: 64px; gap: .45rem; padding-left: .8rem; padding-right: .8rem; }
      .brand-logo { width: min(345px, 96vw); }
      .brand strong { font-size: .94rem; }
      .brand small { display: none; }
      .mark { width: 36px; height: 36px; }
      main { padding: 1rem .8rem 5.5rem; }
      .filters { grid-template-columns: 1fr; }
      .filters h2, .filters .reset { grid-column: auto; }
      .searchrow { flex-direction: column; align-items: stretch; }
      .count { text-align: right; }
      .cardtop { flex-direction: column; }
      .actions { flex-wrap: wrap; }
      .profile-detail-head { flex-direction: column; }
      .profile-detail-hero { min-height: 430px; justify-content: flex-end; padding: 1.25rem; background-position: 62% center; }
      .profile-detail-hero::before { background: linear-gradient(0deg, rgba(10,18,39,.94) 0%, rgba(10,18,39,.68) 48%, rgba(10,18,39,.08) 82%); }
      .profile-detail-hero .badge-stack { justify-content: flex-start; }
      .profile-hero-credit { top: .65rem; right: .65rem; font-size: .62rem; }
      .technical-grid { grid-template-columns: 1fr; }
      .catalog-gallery { grid-template-columns: 1fr; }
      .catalog-figure img { height: auto; max-height: 520px; }
      .render-gallery { grid-template-columns: 1fr; }
      .render-figure img { height: auto; max-height: 520px; }
      .cards.brand-index { grid-template-columns: 1fr; }
      .family-list { grid-template-columns: 1fr; }
      .family-list a:last-child:nth-child(odd) { grid-column: auto; }
      .glass-builder { grid-template-columns: 1fr; }
      .glass-choice-grid { grid-template-columns: 1fr; }
      .comparator-page > h2 { font-size: 1.45rem; }
      .legend-shortcut { width: 100%; min-height: 44px; }
      .window-configurator { margin-top: .8rem; padding: .7rem; border-radius: 12px; }
      .window-configurator-head { display: grid; grid-template-columns: 1fr auto; gap: .35rem .6rem; margin-bottom: .7rem; }
      .window-configurator-head h3 { font-size: 1.05rem; }
      .window-configurator-head p { display: none; }
      .prototype-badge { align-self: center; padding: .3rem .45rem; font-size: .62rem; }
      .window-project-toolbar { gap: .5rem; margin-bottom: .7rem; }
      .window-project-list { gap: .4rem; padding-bottom: .15rem; }
      .window-project-card { flex-basis: 145px; min-height: 62px; }
      .window-project-select { padding: .55rem 1.8rem .5rem .6rem; }
      .window-project-card strong { font-size: .78rem; }
      .window-project-card span { font-size: .62rem; }
      .window-add-button { min-height: 44px; padding: .6rem; }
      .window-controls { padding: .75rem; }
      .window-control-group + .window-control-group { margin-top: .7rem; padding-top: .7rem; }
      .window-control-group h4 { margin-bottom: .5rem; font-size: .82rem; }
      .window-dimensions { grid-template-columns: 1fr 1fr; }
      .window-dimensions input, .window-opening-control select { min-height: 42px; }
      .window-pane-count button { min-height: 40px; }
      .window-stage { padding: .2rem; }
      .window-preview-wrap { min-height: 180px; height: 180px; padding: 1.35rem .45rem 1.55rem 1.85rem; }
      .window-preview { gap: 4px; padding: 6px; border-width: 6px; }
      .window-sash { border-width: 5px; }
      .window-builder-summary { grid-template-columns: 1fr 1fr; }
      .window-builder-stat { padding: .55rem; }
      .window-builder-stat strong { font-size: .82rem; }
      .window-calculation-status { margin-top: .55rem; padding: .62rem .7rem; font-size: .7rem; }
      .mobile-profile-card { padding: .75rem; }
      .mobile-section { margin-top: .5rem; }
      .mobile-section > summary { min-height: 48px; padding: .65rem .7rem; font-size: .84rem; }
      .mobile-section-body { padding: .5rem; }
      .mobile-metric { padding: .6rem; }
      .mobile-value-grid { gap: .35rem; }
      .mobile-value { padding: .5rem; font-size: .72rem; }
      .quote-modal { padding: 0; place-items: stretch; }
      .quote-panel { width: 100%; height: 100dvh; max-height: none; border-radius: 0; }
      .comparebar-inner { grid-template-columns: 1fr auto; gap: .55rem; padding: .6rem .8rem; }
      .comparebar { position: fixed; right: .8rem; bottom: calc(.8rem + env(safe-area-inset-bottom)); z-index: 70; width: auto; border: 0; border-radius: 999px; box-shadow: 0 10px 28px rgba(19,24,57,.3); }
      .comparebar-inner { display: block; padding: .35rem; }
      .compare-head, .compare-slots-scroll { display: none; }
      .comparebar-inner > button { min-height: 46px; padding: .62rem .9rem; border-radius: 999px; }
      body[data-active-view="compare"] .comparebar,
      body[data-active-view="glass"] .comparebar,
      body[data-active-view="factories"] .comparebar,
      body[data-active-view="legend"] .comparebar,
      body[data-active-view="method"] .comparebar { display: none !important; }
      .quote-entry.is-final { position: fixed; z-index: 65; right: .65rem; bottom: calc(.65rem + env(safe-area-inset-bottom)); left: .65rem; grid-template-columns: 1fr auto; margin: 0; padding: .65rem; box-shadow: 0 12px 30px rgba(23,37,77,.24); }
      .quote-entry.is-final strong { font-size: .82rem; }
      .quote-entry.is-final span { display: none; }
      .quote-entry.is-final button { min-height: 44px; padding: .58rem .72rem; font-size: .78rem; }
      main.compare-mode { padding-bottom: 9rem; }
      .selected-list { grid-template-columns: repeat(4, 150px); min-width: max-content; }
      .comparison-table { min-width: calc(180px + var(--compare-columns, 2) * 205px); }
      .comparison-table thead th:first-child, .comparison-table tbody th { width: 180px; }
      .comparison-table .product-column { padding: .75rem; }
      .glass-picker-trigger { min-height: 72px; padding: .62rem; }
      .glass-picker { padding: 0; place-items: stretch; }
      .glass-picker-panel { width: 100%; height: 100dvh; max-height: none; border: 0; border-radius: 0; }
      .glass-picker-head { padding: .85rem .9rem; padding-top: calc(.85rem + env(safe-area-inset-top)); }
      .glass-picker-head h2 { font-size: 1.05rem; }
      .glass-picker-body { padding: .8rem .8rem 1.1rem; }
      .glass-guide-step { margin-top: .65rem; padding: .72rem; }
      .glass-guide-options { grid-template-columns: 1fr 1fr; gap: .42rem; }
      .glass-guide-option { min-height: 58px; padding: .55rem; }
      .glass-guide-option strong { font-size: .78rem; }
      .glass-picker-foot { grid-template-columns: 1fr; gap: .6rem; padding: .7rem .8rem calc(.7rem + env(safe-area-inset-bottom)); }
      .glass-picker-confirm { width: 100%; }
      .comparison-alert { align-items: stretch; flex-direction: column; }
      .comparison-alert button { width: 100%; }
      .factory-cover { min-height: 390px; }
      .factory-cover-copy, .factory-content { padding: 1.1rem; }
      .factory-facts { grid-template-columns: 1fr; }
    }
    /* Termoscor 2026 visual system */
    :root { --ink:#0f1524; --paper:#e9edf3; --white:#FFFFFF; --accent:#4c60a1; --accent-soft:#dae2ed; --brass:#4c60a1; --brass-light:#7083c2; --teal:#2f3d6d; --teal-soft:#dae2ed; --muted:#3d4652; --line:#cbd3dd; --shadow:none; }
    *, *::before, *::after { box-shadow:none !important; text-shadow:none !important; }
    body { background:#e9edf3; color:#0f1524; font-family:Manrope,sans-serif; font-weight:400; }
    .topbar, .comparebar { display:none !important; }
    header { height:80px; background:#FFF; border-bottom:1px solid #cbd3dd; backdrop-filter:none; }
    .nav { max-width:none; height:80px; min-height:80px; margin:0; padding:0 80px; display:grid; grid-template-columns:minmax(190px,1fr) auto minmax(190px,1fr); gap:28px; }
    .brand { min-width:0; width:auto; height:60px; gap:0; }
    .brand-complete-logo { display:block; width:clamp(190px,18vw,245px); height:auto; object-fit:contain; }
    .navlinks { justify-self:center; gap:22px; height:100%; }
    .navlinks button, .navlinks a, .lang { position:relative; display:flex; align-items:center; height:100%; padding:0; border:0; border-radius:0; color:#3d4652; background:transparent !important; font-size:14px; font-weight:600; white-space:nowrap; }
    .navlinks button:hover, .navlinks button.active, .navlinks a:hover { color:#2f3d6d; }
    .navlinks button.active::after { content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:#4c60a1; }
    .navlinks .lang { height:44px; align-self:center; padding:0 8px; }
    .header-compare { justify-self:end; min-height:46px; padding:0 18px; border:1px solid #0f1524; border-radius:999px; background:#FFF; color:#0f1524; font-size:13px; font-weight:600; white-space:nowrap; }
    .header-compare:hover, .header-compare.active { background:#0f1524; color:#e9edf3; }
    .selected-list[hidden] { display:none !important; }
    .menu-toggle { display:none; }
    main, main.compare-mode { max-width:none; padding:48px 80px 96px; }
    main.compare-mode .intro { display:none; }
    h1 { max-width:920px; font-size:52px; font-weight:600; line-height:1.06; letter-spacing:-.02em; }
    h2 { font-weight:600; }
    .intro { padding:16px 0 40px; }
    .intro p { color:#3d4652; font-size:17px; }
    .filters, .panel, .card, .brand-card, .factory-card, .glass-simple-panel, .glass-simple-result { background:#FFF; border:1px solid #cbd3dd; border-radius:4px; }
    .filters, .panel { box-shadow:none; }
    .panel { overflow:hidden; }
    button, .primary, .secondary, .reset { border-radius:2px; }
    .primary, button.primary { min-height:50px; background:#0f1524; color:#e9edf3; }
    .secondary { min-height:48px; background:#FFF; color:#0f1524; border:1px solid #0f1524; }
    select, input[type="search"], input[type="number"], input[type="text"], input[type="email"], input[type="tel"], textarea { border:1px solid #cbd3dd; border-radius:2px; background:#FFF; }
    select:focus, input:focus, textarea:focus { outline:2px solid rgba(76,96,161,.28); border-color:#4c60a1; }
    .notice { background:#dae2ed; border-left:2px solid #4c60a1; border-radius:2px; color:#3d4652; }
    .secondary.compare-action, .comparison-table .bulk-apply-glass { background:#0f1524; border-color:#0f1524; color:#e9edf3; }
    .secondary.compare-action.selected, .glass-simple-choice[aria-pressed="true"], .window-project-card.is-active, .window-pane-count button[aria-pressed="true"], .glass-guide-option.is-selected { background:#dae2ed; border-color:#4c60a1; color:#0f1524; }
    .glass-result-head { background:#0f1524; }
    .window-stage { background:#FFF; }
    .window-sash { background:#dce1ee; }
    .window-sash::after { display:none; }
    .profile-detail-hero::before { background:rgba(15,21,36,.72); }
    .factory-cover::after { background:rgba(15,21,36,.72); }
    .quote-entry { background:#FFF; border-color:#cbd3dd; }
    #compareView > h2, #compareView > p, #compareView > .legend-shortcut { display:none; }
    #compareView { display:flex; flex-direction:column; gap:0; }
    #comparisonPage { order:1; overflow:visible; }
    #compareView .window-configurator { order:3; display:block; margin:0 0 40px; padding:24px; border:1px solid #cbd3dd; border-radius:4px; background:#FFF; }
    .comparison-shell { display:flex; flex-direction:column; gap:40px; }
    .compare-hero { padding:8px 0 0; }
    .eyebrow { display:block; margin-bottom:14px; color:#2f3d6d; font-size:11px; font-weight:600; letter-spacing:.26em; text-transform:uppercase; }
    .compare-hero h1 { margin:0 0 18px; }
    .compare-context { margin:0 0 12px; color:#3d4652; font-size:17px; }
    .compare-links { display:flex; flex-wrap:wrap; gap:22px; }
    .text-link { padding:0; border:0; background:none; color:#0f1524; font-size:14px; font-weight:600; text-decoration:underline; text-decoration-color:#4c60a1; text-underline-offset:5px; }
    .text-link:hover { color:#2f3d6d; }
    .compare-summary { display:grid; grid-template-columns:1fr auto; align-items:center; gap:28px; padding:30px 34px; background:#0f1524; color:#FFF; border-radius:4px; }
    .compare-summary .eyebrow { color:#7083c2; margin-bottom:10px; }
    .compare-summary p { max-width:980px; margin:0; color:#FFF; font-size:28px; font-weight:500; line-height:1.35; }
    .compare-summary button { min-width:170px; min-height:54px; border:1px solid #7083c2; background:#7083c2; color:#0f1524; font-weight:700; }
    .compare-summary button:hover { background:#e9edf3; }
    .system-card-grid { display:grid; gap:16px; align-items:stretch; }
    .system-summary-card, .add-system-card { position:relative; min-width:0; padding:24px; background:#FFF; border:1px solid #cbd3dd; border-radius:4px; }
    .system-summary-card.is-best { border:2px solid #4c60a1; padding:23px; }
    .better-label { display:inline-block; margin:-2px 0 18px; padding:6px 9px; background:#dae2ed; color:#2f3d6d; font-size:10px; font-weight:700; letter-spacing:.13em; }
    .system-maker { margin-bottom:6px; color:#596472; font-size:12px; font-weight:600; letter-spacing:.18em; text-transform:uppercase; }
    .system-summary-card h2 { margin:0 34px 9px 0; font-size:25px; line-height:1.15; }
    .remove-system { position:absolute; top:18px; right:18px; width:44px; height:44px; border:0; background:transparent; color:#596472; font-size:22px; }
    .system-meta { min-height:42px; margin:0 0 22px; color:#596472; font-size:12px; line-height:1.6; }
    .summary-metric { padding:14px 0; border-top:1px solid #dfe5ec; }
    .summary-metric span { display:block; margin-bottom:3px; color:#596472; font-size:12px; }
    .summary-metric strong { display:inline; color:#0f1524; font-size:16px; font-weight:700; }
    .summary-metric small { margin-left:7px; color:#596472; font-size:13px; }
    .system-card-link { display:inline-block; margin-top:16px; color:#0f1524; font-size:13px; font-weight:600; text-decoration-color:#4c60a1; text-underline-offset:4px; }
    .advanced-glass { display:block; margin-top:14px; padding:0; border:0; background:none; color:#596472; font-size:12px; text-decoration:underline; }
    .add-system-card { min-height:250px; display:grid; place-items:center; border:1px dashed #a3adb9; background:transparent; }
    .add-system-card select { width:min(100%,250px); min-height:50px; }
    .comparison-section { padding-top:4px; }
    .section-head { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:18px; }
    .section-head h2 { margin:0; font-size:29px; letter-spacing:-.01em; }
    .section-note { margin:8px 0 0; color:#596472; font-size:13px; }
    .difference-list { border:1px solid #cbd3dd; border-radius:4px; background:#FFF; }
    .difference-row { display:grid; align-items:center; border-bottom:1px solid #dfe5ec; }
    .difference-row:last-child { border-bottom:0; }
    .difference-label, .difference-value { min-width:0; padding:16px 18px; }
    .difference-label { color:#596472; font-size:13px; font-weight:600; }
    .difference-value { color:#3d4652; font-size:14px; }
    .difference-value b { color:#0f1524; }
    .difference-value small { display:block; margin-bottom:2px; color:#596472; font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
    .difference-values-mobile { display:contents; }
    .identical-divider { padding:22px 18px 10px; border-bottom:1px solid #dfe5ec; color:#2f3d6d; font-size:11px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
    .difference-toggle { width:100%; min-height:52px; margin-top:14px; border:1px solid #0f1524; background:#FFF; color:#0f1524; font-weight:600; }
    .info-pair { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
    .info-card { padding:28px; background:#FFF; border:1px solid #cbd3dd; border-radius:4px; }
    .info-card h2 { margin:0 0 12px; font-size:24px; }
    .info-card p { margin:0 0 16px; color:#3d4652; font-size:15px; line-height:1.65; }
    #offerSection.quote-panel { display:grid; grid-template-columns:1fr auto; gap:30px; align-items:center; padding:34px; border:1px solid #cbd3dd; background:#FFF; border-radius:4px; }
    #offerSection.quote-panel h2 { margin:0 0 10px; font-size:29px; }
    #offerSection.quote-panel p { max-width:760px; margin:0 0 8px; color:#3d4652; }
    #offerSection.quote-panel small { color:#596472; }
    #offerSection.quote-panel button { min-width:190px; min-height:54px; border:1px solid #0f1524; background:#0f1524; color:#e9edf3; font-weight:700; }
    .technical-panel { border:1px solid #cbd3dd; background:#FFF; border-radius:4px; }
    .technical-panel summary { min-height:56px; padding:17px 20px; cursor:pointer; font-weight:600; }
    .technical-content { padding:0 20px 20px; }
    .mobile-system-summary, .mobile-offer-bar { display:none; }
    @media (max-width:1180px) {
      .nav { padding:0 32px; grid-template-columns:190px 1fr auto; gap:18px; }
      .navlinks { gap:13px; }
      .navlinks button, .navlinks a { font-size:12px; }
      main, main.compare-mode { padding-left:32px; padding-right:32px; }
    }
    @media (max-width:820px) {
      body { padding-bottom:84px; }
      header { height:60px; }
      .nav { height:60px; min-height:60px; padding:0 20px; display:grid; grid-template-columns:1fr 44px; }
      .brand { width:auto; height:48px; gap:0; }
      .brand-complete-logo { width:150px; }
      .menu-toggle { display:flex; grid-column:2; grid-row:1; width:44px; height:44px; padding:10px; border:0; background:transparent; flex-direction:column; justify-content:center; gap:5px; }
      .menu-toggle span { width:23px; height:1px; background:#0f1524; }
      .navlinks { display:none; position:fixed; top:60px; left:0; right:0; height:auto; padding:12px 20px 20px; background:#FFF; border-bottom:1px solid #cbd3dd; flex-direction:column; align-items:stretch; gap:0; }
      .navlinks.is-open { display:flex; }
      .navlinks button, .navlinks a, .navlinks .lang { min-height:48px; height:48px; width:100%; }
      .navlinks button.active::after { right:auto; width:36px; }
      .header-compare { position:fixed; right:76px; top:8px; min-height:44px; max-width:145px; padding:0 12px; font-size:11px; overflow:hidden; }
      .header-compare > span:first-child { display:none; }
      main, main.compare-mode { padding:28px 20px 112px; }
      h1 { font-size:30px; line-height:1.12; }
      .intro { display:block; padding:0 0 24px; }
      .trust { margin-top:16px; white-space:normal; }
      .workspace { grid-template-columns:1fr; }
      .filters { position:static; }
      .comparison-shell { gap:24px; }
      .compare-hero { padding-top:0; }
      .compare-context { font-size:15px; }
      .compare-summary { grid-template-columns:1fr; padding:24px 22px; }
      .compare-summary p { font-size:19px; }
      .compare-summary button { width:100%; }
      .system-card-grid { display:none; }
      .mobile-system-summary { display:block; border:1px solid #cbd3dd; background:#FFF; border-radius:4px; }
      .mobile-system-heads, .mobile-system-row { display:grid; gap:0; }
      .mobile-system-head { padding:16px 12px; border-right:1px solid #dfe5ec; }
      .mobile-system-head:last-child { border-right:0; }
      .mobile-system-head small { display:block; color:#596472; font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
      .mobile-system-head strong { display:block; margin-top:4px; font-size:14px; line-height:1.25; }
      .mobile-system-label { padding:14px 14px 6px; border-top:1px solid #dfe5ec; color:#596472; font-size:12px; font-weight:600; }
      .mobile-system-values { display:grid; }
      .mobile-system-value { padding:3px 12px 15px; color:#0f1524; font-size:14px; }
      .mobile-system-value small { display:block; color:#596472; font-size:11px; }
      .mobile-shared-value { padding:2px 14px 15px; color:#0f1524; font-size:14px; }
      .mobile-shared-value small { color:#596472; }
      .section-head { display:block; }
      .section-head h2 { font-size:25px; }
      .difference-row { grid-template-columns:1fr !important; }
      .difference-label { padding:14px 14px 5px; }
      .difference-values-mobile { display:grid; }
      .difference-values-mobile { grid-template-columns:repeat(var(--comparison-count),minmax(0,1fr)); }
      .mobile-add-system { padding:14px; border-top:1px solid #dfe5ec; }
      .mobile-add-system select { min-height:48px; }
      .difference-value { padding:6px 14px 14px; }
      .info-pair, #offerSection.quote-panel { grid-template-columns:1fr; }
      .info-card, #offerSection.quote-panel { padding:22px; }
      #offerSection.quote-panel h2 { font-size:24px; }
      #offerSection.quote-panel button { width:100%; }
      #compareView .window-configurator { margin:0 0 24px; padding:16px; }
      .window-configurator-grid { grid-template-columns:1fr; }
      .window-preview-wrap { transform:scale(.82); transform-origin:top center; margin-bottom:-44px; }
      .mobile-offer-bar { position:fixed; z-index:25; left:0; right:0; bottom:0; min-height:76px; display:grid; grid-template-columns:1fr auto; align-items:center; gap:12px; padding:10px 14px calc(10px + env(safe-area-inset-bottom)); background:#FFF; border-top:1px solid #cbd3dd; }
      .mobile-offer-bar strong { display:block; font-size:13px; }
      .mobile-offer-bar small { display:block; color:#596472; font-size:10px; }
      .mobile-offer-bar button { min-height:48px; padding:0 18px; border:0; background:#0f1524; color:#e9edf3; font-weight:700; }
    }

    /* Restore the established desktop catalogue identity while keeping the
       compact 2026 navigation and the mobile comparison flow. */
    .manufacturer-card .manufacturer-logo {
      display:flex;
      align-items:center;
      justify-content:center;
      overflow:hidden;
      box-sizing:border-box;
      height:112px;
      min-height:112px;
      margin-bottom:14px;
      padding:12px 18px;
      border:1px solid color-mix(in srgb, var(--brand-accent) 52%, #cbd3dd);
      border-radius:11px;
      background:#FFF;
      color:var(--brand-accent);
      font-size:inherit;
      font-weight:400;
      letter-spacing:normal;
      white-space:normal;
    }
    .manufacturer-card .manufacturer-logo:hover,
    .manufacturer-card .manufacturer-logo:focus-visible {
      border-color:var(--brand-accent);
      background:#FFF;
      color:var(--brand-accent);
      outline:2px solid color-mix(in srgb, var(--brand-accent) 24%, transparent);
      outline-offset:2px;
    }
    .manufacturer-logo-image {
      display:block;
      width:auto;
      max-width:235px;
      max-height:72px;
      object-fit:contain;
      filter:grayscale(1);
      opacity:.66;
      transition:filter .18s ease, opacity .18s ease, transform .18s ease;
    }
    .manufacturer-logo:hover .manufacturer-logo-image,
    .manufacturer-logo:focus-visible .manufacturer-logo-image { filter:grayscale(.35); opacity:.86; }
    .manufacturer-logo-fallback { color:#657180 !important; font-size:28px; font-weight:700; }
    .manufacturer-logo--salamander .manufacturer-logo-image { width:235px; filter:brightness(0); opacity:.55; }
    .manufacturer-logo--salamander:hover .manufacturer-logo-image,
    .manufacturer-logo--salamander:focus-visible .manufacturer-logo-image { filter:brightness(0); opacity:.72; }
    .manufacturer-logo--rehau .manufacturer-logo-image { width:255px; max-width:52%; }
    .manufacturer-logo--veka .manufacturer-logo-image { max-height:82px; }
    .manufacturer-logo--gealan .manufacturer-logo-image { width:175px; }
    .manufacturer-logo--aluplast .manufacturer-logo-image { width:185px; }
    .manufacturer-logo--deceuninck .manufacturer-logo-image { width:220px; }
    .manufacturer-logo--koemmerling .manufacturer-logo-image { width:225px; }
    .manufacturer-logo--kbe .manufacturer-logo-image { width:175px; }
    .manufacturer-logo--trocal .manufacturer-logo-image { width:220px; max-height:66px; }

    @media (min-width:821px) {
      header { height:auto; }
      body[data-active-view="systems"] .comparebar { display:block !important; }
      body:not([data-active-view="systems"]) .comparebar { display:none !important; }
      .comparebar {
        position:static;
        width:100%;
        border:0;
        border-radius:0;
        background:#1d263c;
        color:#FFF;
      }
      .comparebar-inner {
        max-width:1455px;
        min-height:98px;
        padding:16px 24px;
        grid-template-columns:205px minmax(0,1fr) 232px;
        gap:16px;
      }
      .compare-head strong { font-size:17px; font-weight:700; line-height:1.2; }
      .compare-head span { max-width:180px; margin-top:3px; color:#FFF; font-size:12px; line-height:1.25; }
      .compare-slots-scroll { overflow:visible; }
      .selected-list { grid-template-columns:repeat(4,minmax(155px,1fr)); min-width:0; gap:8px; }
      .selected-item, .selected-placeholder { min-height:64px; border-radius:9px; }
      .selected-placeholder { padding:7px; border:1px dashed rgba(255,255,255,.68); background:rgba(255,255,255,.08); }
      .quick-add { min-height:38px; border:0; border-radius:4px; background:#f2f2f2; color:#0f1524; }
      .comparebar-inner > button {
        min-height:50px;
        padding:10px 16px;
        border:0;
        border-radius:8px;
        background:#0f1524;
        color:#FFF;
        font-size:16px;
        font-weight:700;
      }
      .comparebar-inner > button:disabled { background:#b2b9c3; color:#263350; cursor:not-allowed; }
      .comparebar-inner > button.active { background:#0f1524; color:#FFF; }
    }

    @media (max-width:820px) {
      .comparebar { display:none !important; }
      .manufacturer-card .manufacturer-logo { height:92px; min-height:92px; }
      .manufacturer-logo-image { max-width:205px; max-height:62px; }
      .manufacturer-logo--veka .manufacturer-logo-image { max-height:68px; }
      .manufacturer-logo--trocal .manufacturer-logo-image { width:195px; max-height:58px; }
    }

    .site-footer {
      max-width:1240px;
      margin:36px auto 0;
      padding:24px 20px 30px;
      border-top:1px solid var(--line);
      color:var(--muted);
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:20px 32px;
      font-size:14px;
    }
    .site-footer-intro,
    .site-footer-contact { display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; }
    .site-footer-intro strong { color:var(--ink); font-size:16px; }
    .site-footer-contact > span { color:var(--ink); font-weight:800; }
    .site-footer-contact a { color:#2f3455; font-weight:700; text-decoration:none; }
    .site-footer-contact a:hover { text-decoration:underline; text-underline-offset:3px; }
    .site-footer-contact a:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }

    @media (max-width:820px) {
      .site-footer { margin-top:24px; padding-bottom:108px; flex-direction:column; }
      .site-footer-intro,
      .site-footer-contact { align-items:flex-start; flex-direction:column; }
    }

    /* Two-way glazing comparator */
    .glass-simple-layout { display:block; }
    .glass-compare-intro { max-width:820px; margin-bottom:24px; }
    .glass-compare-intro h2 { margin:0 0 10px; font-size:clamp(27px,3.4vw,42px); line-height:1.12; }
    .glass-compare-intro p { margin:0; color:#596472; line-height:1.65; }
    .glass-compare-selections { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
    .glass-compare-card { min-width:0; padding:22px; border:1px solid #cbd3dd; border-radius:4px; background:#FFF; }
    .glass-compare-card-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:18px; }
    .glass-compare-card-head span { color:#2f3d6d; font-size:11px; font-weight:700; letter-spacing:.18em; }
    .glass-compare-card-head strong { color:#0f1524; font-size:24px; }
    .glass-compare-card label { display:block; margin-bottom:7px; color:#596472; font-size:12px; font-weight:600; }
    .glass-compare-card select { width:100%; min-height:50px; padding:0 12px; border:1px solid #a3adb9; border-radius:3px; background:#FFF; color:#0f1524; font-weight:700; }
    .glass-compare-configuration { display:grid; gap:5px; margin-top:18px; padding-top:16px; border-top:1px solid #dfe5ec; }
    .glass-compare-configuration b { font-size:18px; }
    .glass-compare-configuration span { color:#3d4652; font-size:13px; line-height:1.4; }
    .glass-compare-configuration small { margin-top:4px; color:#667281; font-size:11px; }
    .glass-compare-table { margin-top:16px; overflow:hidden; border:1px solid #cbd3dd; border-radius:4px; background:#FFF; }
    .glass-compare-row { display:grid; grid-template-columns:minmax(240px,1.15fr) repeat(2,minmax(150px,1fr)); border-bottom:1px solid #dfe5ec; }
    .glass-compare-row:last-child { border-bottom:0; }
    .glass-compare-row > div { min-width:0; padding:16px 18px; border-right:1px solid #dfe5ec; }
    .glass-compare-row > div:last-child { border-right:0; }
    .glass-compare-table-head { background:#0f1524; color:#FFF; font-size:13px; font-weight:700; }
    .glass-compare-label strong, .glass-compare-label span { display:block; }
    .glass-compare-label strong { color:#0f1524; font-size:15px; }
    .glass-compare-label span { margin-top:4px; color:#596472; font-size:11px; line-height:1.4; }
    .glass-compare-value { display:flex; flex-direction:column; justify-content:center; color:#0f1524; font-size:18px; font-weight:700; }
    .glass-compare-value.is-best { background:#eaebf3; color:#192152; }
    .glass-compare-value small { margin-top:4px; color:#425976; font-size:10px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
    .glass-saving { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr); gap:20px; margin-top:24px; padding:28px; border-radius:4px; background:#0f1524; color:#FFF; }
    .glass-saving .eyebrow { color:#7083c2; }
    .glass-saving h3 { margin:0 0 10px; color:#FFF; font-size:26px; }
    .glass-saving p { max-width:740px; margin:0; color:#d8dbde; line-height:1.6; }
    .glass-saving-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:20px; }
    .glass-saving-fields label { color:#d8dbde; font-size:11px; font-weight:600; }
    .glass-saving-fields label > span { display:flex; align-items:center; gap:6px; }
    .glass-saving-fields input { width:100%; min-height:44px; margin-top:6px; padding:0 10px; border:1px solid #6a7787; border-radius:3px; background:#FFF; color:#0f1524; font:inherit; }
    .glass-saving-result { display:flex; flex-direction:column; justify-content:center; padding:22px; border:1px solid #7083c2; border-radius:4px; background:#161d2d; }
    .glass-saving-result span { color:#d8dbde; font-size:12px; }
    .glass-saving-result strong { margin-top:7px; color:#FFF; font-size:34px; line-height:1; }
    .glass-saving-result b { margin-top:8px; color:#7083c2; font-size:20px; }
    .glass-saving-result small { margin-top:12px; color:#d8dbde; line-height:1.45; }
    .glass-saving-result.same strong { margin-top:0; font-size:22px; line-height:1.25; }
    .glass-saving-method { grid-column:1/-1; padding-top:18px; border-top:1px solid #3b424b; color:#bcc3cb; font-size:11px; line-height:1.55; }
    .glass-saving-method a { color:#96a4d2; }
    #glassView .glass-component-catalog { margin-top:30px; }
    .factory-authorized-badge,
    .factory-card .status.authorized { display:inline-flex; align-items:center; width:max-content; max-width:100%; margin:0 0 18px; padding:8px 11px; border:1px solid #5f7490; border-radius:3px; background:#eaebf3; color:#192152; font-size:12px; font-weight:800; }
    .factory-card .status.authorized { margin:4px 0 14px; }

    @media (max-width:820px) {
      body[data-active-view="systems"] .filters { display:none !important; }
      body[data-active-view="systems"] header { height:auto; }
      .quote-modal .quote-head { height:auto; }
      .brand { width:108px; max-width:108px; height:44px; }
      .brand-complete-logo { width:108px; max-width:108px; max-height:38px; object-fit:contain; }
      .header-compare { display:none; }
      body[data-active-view="systems"] .comparebar { display:block !important; position:static; width:100%; border:0; border-radius:0; background:#1d263c; color:#FFF; }
      body:not([data-active-view="systems"]) .comparebar { display:none !important; }
      .comparebar-inner { min-height:0; padding:14px 20px; display:grid; grid-template-columns:1fr; gap:10px; }
      .compare-head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
      .compare-head strong { color:#FFF; font-size:15px; }
      .compare-head span { margin:0; color:#dcdfe3; font-size:10px; text-align:right; }
      .compare-slots-scroll { display:block; overflow:visible; }
      .selected-list { min-width:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
      .selected-item, .selected-placeholder { min-height:58px; border-radius:5px; }
      .selected-placeholder { padding:6px; border:1px dashed rgba(255,255,255,.62); background:rgba(255,255,255,.08); }
      .quick-add { width:100%; min-height:40px; border:0; border-radius:3px; background:#FFF; color:#0f1524; font-size:11px; }
      .comparebar-inner > button { width:100%; min-height:48px; border:0; border-radius:4px; background:#0f1524; color:#FFF; font-size:14px; font-weight:700; }
      .comparebar-inner > button:disabled { background:#aab2bc; color:#263350; }
      .system-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:8px; }
      .mobile-system-summary { display:none !important; }
      .system-summary-card { padding:14px 10px; overflow:hidden; }
      .system-summary-card.is-best { padding:13px 9px; }
      .better-label { margin:0 28px 12px 0; padding:5px 6px; font-size:8px; letter-spacing:.06em; }
      .remove-system { top:5px; right:4px; width:34px; height:34px; }
      .system-maker { font-size:9px; letter-spacing:.08em; overflow-wrap:anywhere; }
      .system-summary-card h2 { margin-right:22px; font-size:17px; overflow-wrap:anywhere; }
      .system-meta { min-height:0; margin-bottom:14px; font-size:10px; line-height:1.4; }
      .summary-metric { padding:10px 0; }
      .summary-metric span { font-size:10px; }
      .summary-metric strong { display:block; font-size:13px; line-height:1.25; }
      .summary-metric small { display:block; margin:3px 0 0; font-size:10px; }
      .system-card-link, .advanced-glass { font-size:10px; line-height:1.35; }
      .glass-compare-selections { gap:8px; }
      .glass-compare-card { padding:14px 10px; }
      .glass-compare-card-head { display:block; margin-bottom:12px; }
      .glass-compare-card-head span { font-size:9px; }
      .glass-compare-card-head strong { display:block; margin-top:3px; font-size:20px; }
      .glass-compare-card label { font-size:10px; }
      .glass-compare-card select { min-height:46px; padding:0 7px; font-size:12px; }
      .glass-compare-configuration { margin-top:12px; padding-top:12px; }
      .glass-compare-configuration b { font-size:15px; }
      .glass-compare-configuration span { font-size:10px; overflow-wrap:anywhere; }
      .glass-compare-configuration small { font-size:9px; }
      .glass-compare-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .glass-compare-row > div { padding:12px 10px; }
      .glass-compare-label { grid-column:1/-1; border-right:0 !important; border-bottom:1px solid #dfe5ec; }
      .glass-compare-table-head { grid-template-columns:minmax(92px,.8fr) repeat(2,minmax(0,1fr)); }
      .glass-compare-table-head > div { grid-column:auto; border-bottom:0; font-size:11px; }
      .glass-compare-value { font-size:15px; }
      .glass-saving { grid-template-columns:1fr; padding:22px 16px; }
      .glass-saving-fields { grid-template-columns:1fr; }
      .glass-saving-result strong { font-size:30px; }
      .glass-saving-method { grid-column:auto; }
      .glass-component-grid { grid-template-columns:1fr; }
    }
    /* Proba „pe înțeles”: căldura pierdută pe an și mesajul că Termoscor nu vinde */
    .intent-strip { background:#dae2ed; color:#0f1524; border-bottom:1px solid #cbd3dd; padding:10px 80px; font-size:14px; line-height:1.45; text-align:center; }
    .intent-strip strong { font-weight:700; }
    .plain-summary p { font-size:24px; }
    .loss-bars { margin-top:22px; display:grid; gap:12px; }
    .loss-caption { color:#7083c2; font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
    .loss-row { display:grid; grid-template-columns:minmax(150px,220px) 1fr auto; align-items:center; gap:16px; }
    .loss-name strong { display:block; color:#FFF; font-size:15px; }
    .loss-name small, .loss-value small { display:block; color:#b8bec7; font-size:12px; }
    .loss-track { height:14px; background:rgba(255,255,255,.08); border-radius:7px; overflow:hidden; }
    .loss-track span { display:block; height:100%; background:#8691a0; border-radius:7px; }
    .loss-row.is-best .loss-track span { background:#7083c2; }
    .loss-value { text-align:right; min-width:110px; }
    .loss-value strong { color:#FFF; font-size:15px; }
    .difference-split { margin-top:18px !important; font-size:16px !important; color:#c8d0e8 !important; }
    .plain-assumption { display:block; margin-top:14px; color:#b8bec7; font-size:12px; }
    .footer-note { display:block; color:#596472; font-size:12px; margin-top:4px; }
    @media (max-width:820px) {
      .intent-strip { padding:10px 16px; font-size:13px; text-align:left; }
      .plain-summary p { font-size:19px; }
      .loss-row { grid-template-columns:1fr auto; }
      .loss-track { grid-column:1 / -1; grid-row:2; }
    }
    .glass-guide-advanced { margin:14px 0 6px; border:1px solid #cbd3dd; border-radius:4px; background:#FFF; }
    .glass-guide-advanced > summary { cursor:pointer; padding:14px 16px; font-weight:600; color:#3d4652; }
    .glass-guide-advanced[open] > summary { border-bottom:1px solid #dfe5ec; }
    .glass-guide-advanced .glass-guide-step { margin:12px 16px; }
    .glass-picker-summary small { display:block; margin-top:3px; color:#596472; font-size:11px; line-height:1.35; }
    .difference-label small { display:block; margin-top:4px; color:#596472; font-size:12px; font-weight:400; line-height:1.4; }
    .plain-profile-summary ul { margin:0; padding-left:20px; display:grid; gap:6px; font-size:16px; line-height:1.45; }
    .summary-metric.coefficient span { font-weight:700; color:#0f1524; font-size:13px; }
    .summary-metric.coefficient strong { display:block; font-size:18px; }
    .summary-metric.coefficient small { display:block; margin:2px 0 0; }
    .glass-picker-summary .picker-coefficients { display:block; margin-top:3px; font-style:normal; font-weight:700; font-size:13px; color:#2f3d6d; }
    .coefficient-guide { margin-top:18px; padding:22px 24px; background:#FFF; border:1px solid #cbd3dd; border-radius:4px; }
    .coefficient-guide h3 { margin:0 0 12px; font-size:18px; }
    .coefficient-guide dl { margin:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:12px 24px; }
    .coefficient-guide dt { font-weight:700; color:#0f1524; }
    .coefficient-guide dt small { font-weight:400; color:#596472; margin-left:4px; }
    .coefficient-guide dd { margin:2px 0 0; color:#3d4652; font-size:14px; line-height:1.45; }
    @media (max-width:820px) { .coefficient-guide { padding:18px 16px; } }
    /* Fără panoul de filtre: lista ocupă toată lățimea */
    .workspace { grid-template-columns: minmax(0, 1fr) !important; }
    /* „Caută-ți profilul preferat” */
    .profile-search { position:relative; width:100%; }
    .profile-search-toggle { width:100%; min-height:40px; padding:9px 12px; border:1px solid #7083c2; border-radius:3px; background:#FFF; color:#0f1524; font-weight:700; font-size:14px; text-align:left; cursor:pointer; }
    .profile-search-toggle { display:flex; align-items:center; gap:8px; }
    .profile-search-toggle svg { flex:none; width:16px; height:16px; stroke:#2f3d6d; }
    .profile-search-toggle[aria-expanded="true"] { border-color:#0f1524; }
    .profile-search-panel { position:absolute; z-index:60; top:calc(100% + 6px); left:0; width:max(100%, 320px); max-height:380px; display:flex; flex-direction:column; background:#FFF; border:1px solid #cbd3dd; border-radius:4px; box-shadow:0 12px 30px rgba(15,21,36,.18) !important; }
    .profile-search-panel[hidden] { display:none; }
    .profile-search-input { box-sizing:border-box; width:calc(100% - 20px); margin:10px; padding:10px 12px; border:1px solid #b6bec8; border-radius:3px; font-size:15px; }
    .profile-search-list { overflow:auto; padding:0 6px 8px; }
    .profile-search-group[hidden], .profile-search-option[hidden] { display:none; }
    .profile-search-maker { padding:8px 8px 4px; color:#2f3d6d; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
    .profile-search-option { display:block; width:100%; padding:8px 10px; border:0; border-radius:3px; background:none; color:#0f1524; font-size:14px; text-align:left; cursor:pointer; }
    .profile-search-option:hover, .profile-search-option:focus { background:#dae2ed; }
    .profile-search-empty { padding:12px; color:#596472; font-size:14px; }
    .add-system-card .profile-search { max-width:320px; }
    @media (max-width:820px) { .profile-search-panel { width:min(92vw, 360px); } }

    /* Pagina mărcii pe înțeles */
    .manufacturer-page-link { text-decoration:none; cursor:pointer; }
    .manufacturer-page-link:hover, .manufacturer-page-link:focus-visible { text-decoration:underline; text-underline-offset:3px; }
    .brand-guide { border:1px solid var(--line); border-radius:13px; padding:1rem 1.1rem; background:#f6f7f9; }
    .brand-guide h3 { margin:0 0 .5rem; font-size:1.05rem; }
    .brand-guide ul { margin:0; padding-left:20px; display:grid; gap:6px; font-size:15px; line-height:1.5; }
    .brand-tier { display:grid; gap:.85rem; }
    .brand-tier-head { display:flex; gap:.8rem; align-items:flex-start; margin-top:.6rem; padding-bottom:.4rem; border-bottom:2px solid var(--line); }
    .brand-tier-head h3 { margin:0; font-size:1.15rem; }
    .brand-tier-head p { margin:.2rem 0 0; font-size:14px; line-height:1.45; color:#4a5666; }
    .brand-tier-meter { display:inline-flex; gap:3px; padding-top:.35rem; flex:none; }
    .brand-tier-meter i { width:9px; height:18px; border-radius:2px; background:#dfe4ea; }
    .brand-tier-meter i.on { background:#2f376f; }
    .brand-tier--medium .brand-tier-meter i.on { background:#4c60a1; }
    .brand-tier--basic .brand-tier-meter i.on { background:#a5674f; }
    .card-plain-line { margin:.55rem 0 .2rem; font-size:15px; font-weight:600; color:#111d3d; }

    /* Ferestrele lucrării sub comparație + poze/fișiere atașate */
    #compareView > .window-configurator { margin-top: 1.5rem; }
    #compareOfferHost:not(:empty) { margin-top: 1.25rem; }
    .quote-summary { grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); }
    .visually-hidden-input { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }
    .window-attach-hint { margin:0 0 .6rem; font-size:.85rem; line-height:1.45; color:#4a5666; }
    .window-attach-actions { display:flex; flex-wrap:wrap; gap:.5rem; }
    .window-attach-button { position:relative; display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:.55rem .95rem; border:1px solid #0f1524; border-radius:9px; background:#fff; color:#0f1524; font-weight:700; font-size:.9rem; cursor:pointer; }
    .window-attach-button:hover { background:#e9edf3; }
    .window-attach-button:focus-within { outline:2px solid #4c60a1; outline-offset:2px; }
    .window-attach-button.is-disabled { opacity:.45; cursor:not-allowed; }
    .window-attach-camera { background:#0f1524; color:#e9edf3; }
    .window-attach-camera:hover { background:#1f2941; }
    @media (hover: hover) and (pointer: fine) { .window-attach-camera { display:none; } }
    .window-attach-note { display:block; margin-top:.5rem; font-size:.75rem; color:#596472; }
    .window-attachment-list { display:grid; gap:.45rem; margin-top:.6rem; }
    .window-attachment-list:empty { display:none; }
    .window-attachment { position:relative; display:flex; align-items:center; padding:.4rem 2.2rem .4rem .4rem; border:1px solid var(--line); border-radius:9px; background:#fff; }
    .window-attachment-open { display:flex; align-items:center; gap:.6rem; min-width:0; color:inherit; text-decoration:none; }
    .window-attachment-open img, .window-attachment-icon { flex:none; width:52px; height:52px; border-radius:6px; object-fit:cover; background:#eef1f4; }
    .window-attachment-icon { display:grid; place-items:center; font-size:.75rem; font-weight:800; color:#a5674f; }
    .window-attachment-open span { display:grid; min-width:0; }
    .window-attachment-open strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.85rem; }
    .window-attachment-open small { color:#596472; font-size:.75rem; }
    .window-attachment .window-remove-button { top:50%; transform:translateY(-50%); }
    .window-attach-message { margin:0; padding:.45rem .6rem; border-radius:8px; background:#fbeee8; color:#7a3b25; font-size:.8rem; }

    /* Anunț înainte de „Ferestrele lucrării” */
    .detailed-compare-intro { margin-top: 2rem; padding: 1.2rem 1.3rem; border: 1px solid #cbd3dd; border-left: 4px solid #4c60a1; border-radius: 12px; background: #e9edf3; }
    .detailed-compare-intro h3 { margin: .35rem 0 .5rem; font-size: 1.35rem; color: #0f1524; }
    .detailed-compare-intro p { margin: 0 0 .6rem; max-width: 860px; font-size: 1rem; line-height: 1.55; color: #3d4652; }
    .detailed-compare-intro ol { margin: 0 0 .6rem; padding-left: 1.3rem; display: grid; gap: .3rem; font-size: .95rem; line-height: 1.45; color: #0f1524; }
    .detailed-compare-intro small { color: #596472; font-size: .82rem; }
    #compareView > .detailed-compare-intro + .window-configurator { margin-top: .9rem; }
    @media (max-width: 720px) { .detailed-compare-intro { padding: 1rem; } .detailed-compare-intro h3 { font-size: 1.15rem; } }

    /* Rezultatul pentru ferestrele clientului, sub „Ferestrele lucrării” */
    #projectResultsHost:not(:empty) { margin-top: 1rem; }
    .project-results { padding: 1.2rem 1.3rem; border: 2px solid #2f376f; border-radius: 14px; background: #fff; }
    .project-results-head h3 { margin: .3rem 0 .4rem; font-size: 1.35rem; color: #0f1524; }
    .project-results-standard { margin: 0 0 .6rem; padding: .55rem .75rem; border-radius: 8px; background: #fdf3d9; color: #5b4510; font-size: .9rem; line-height: 1.45; }
    .project-results-verdict { margin: .2rem 0 .9rem; font-size: 1rem; line-height: 1.55; color: #0f1524; }
    .project-result-grid { display: grid; grid-template-columns: repeat(var(--result-count), minmax(0, 1fr)); gap: .75rem; }
    .project-result-card { padding: .9rem; border: 1px solid var(--line); border-radius: 11px; background: #f8f9fa; }
    .project-result-card.is-best { border-color: #2f376f; background: #eef0f7; box-shadow: inset 0 0 0 1px #2f376f; }
    .project-result-name small { color: #596472; font-size: .75rem; }
    .project-result-name h4 { margin: .1rem 0 .6rem; font-size: 1.05rem; }
    .project-result-figures { display: grid; gap: .5rem; }
    .project-result-figures div { display: grid; gap: .1rem; }
    .project-result-figures span { font-size: .78rem; color: #596472; }
    .project-result-figures strong { font-size: 1.15rem; color: #0f1524; }
    .project-result-windows { list-style: none; margin: .7rem 0 0; padding: .6rem 0 0; border-top: 1px solid var(--line); display: grid; gap: .3rem; font-size: .85rem; }
    .project-result-windows li { display: flex; justify-content: space-between; gap: .5rem; }
    .project-result-windows small { color: #596472; }
    .project-results-note { margin: .9rem 0 0; font-size: .78rem; line-height: 1.5; color: #596472; }
    @media (max-width: 900px) { .project-result-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
    @media (max-width: 560px) { .project-results { padding: 1rem; } .project-result-grid { grid-template-columns: 1fr; } .project-results-head h3 { font-size: 1.15rem; } }
    .project-results--empty h3 { margin: .3rem 0 .4rem; font-size: 1.2rem; }
    .project-results--empty p { margin: 0 0 .8rem; color: #3d4652; line-height: 1.5; }
    .project-results .profile-search { max-width: 420px; margin-bottom: .8rem; }
    .project-result-grid[style*="--result-count:1"] { grid-template-columns: minmax(0, 420px); }

    /* Ordinea vizuală în comparator: comparația, anunțul, ferestrele, rezultatul tău, cererea de ofertă */
    #compareView > .detailed-compare-intro { order:2; }
    #projectResultsHost { order:4; }
    #compareOfferHost { order:5; }
    #compareView > .window-configurator { margin-bottom: 0; }
    #compareOfferHost #offerSection.quote-panel { width:100%; max-height:none; overflow:visible; }

    /* Comparator pe file */
    #compareOfferHost #offerSection.quote-panel { width:100%; max-height:none; overflow:visible; }
    #compareView[data-tab="summary"] [data-tab-panel]:not([data-tab-panel="summary"]),
    #compareView[data-tab="windows"] [data-tab-panel]:not([data-tab-panel="windows"]),
    #compareView[data-tab="technical"] [data-tab-panel]:not([data-tab-panel="technical"]),
    #compareView[data-tab="none"] [data-tab-panel],
    #compareView:not([data-tab]) [data-tab-panel="windows"] { display:none !important; }
    .compare-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; padding:6px; border:1px solid #cbd3dd; border-radius:12px; background:#e9edf3; }
    .compare-tabs button { min-height:48px; padding:.5rem .6rem; border:0; border-radius:8px; background:transparent; color:#3d4652; font-weight:700; font-size:15px; cursor:pointer; }
    .compare-tabs button:hover { background:#fff; color:#0f1524; }
    .compare-tabs button[aria-selected="true"] { background:#0f1524; color:#e9edf3; }
    .tab-hints { display:flex; flex-wrap:wrap; gap:.4rem 1.4rem; margin-top:16px; }
    #compareView[data-tab="windows"] > .detailed-compare-intro { margin-top:0; }
    #compareView[data-tab="windows"] #comparisonPage .comparison-shell { gap:24px; }
    @media (max-width:720px) {
      .compare-tabs { gap:4px; padding:4px; }
      .compare-tabs button { min-height:44px; font-size:13px; padding:.4rem .3rem; line-height:1.2; }
    }

    /* „Pe scurt” — varianta A: răspunsul întâi + semafor */
    .answer-first { display:flex; flex-direction:column; gap:18px; padding:32px; background:#e9edf3; border:1px solid #cbd3dd; border-radius:14px; }
    .answer-first .eyebrow { margin:0; }
    .answer-headline { margin:0; font-size:34px; line-height:1.15; font-weight:800; color:#0f1524; max-width:900px; }
    .answer-lead { margin:-6px 0 0; font-size:17px; line-height:1.55; color:#3d4652; max-width:860px; }
    .answer-kwh-note { margin:-8px 0 0; font-size:13px; color:#596472; }
    .answer-cards { display:grid; gap:12px; align-items:stretch; }
    .answer-card { position:relative; display:flex; flex-direction:column; gap:6px; padding:18px; background:#FFF; border:1px solid #cbd3dd; border-radius:12px; }
    .answer-card.is-best { border:2px solid #2f376f; padding:17px; }
    .answer-card .remove-system { position:absolute; top:10px; right:10px; }
    .answer-card-maker { font-size:13px; color:#596472; padding-right:30px; }
    .answer-card-maker b { color:#1f2654; }
    .answer-card-name { font-size:20px; line-height:1.25; }
    .answer-card-meta { font-size:14px; color:#3d4652; }
    .answer-card-uw { display:flex; align-items:baseline; gap:8px; margin-top:8px; }
    .answer-card-uw span { font-size:38px; font-weight:800; line-height:1; color:#0f1524; }
    .answer-card-uw small { font-size:14px; color:#596472; }
    .answer-card-kwh { font-size:14px; color:#3d4652; }
    .answer-card-links { display:flex; flex-wrap:wrap; gap:6px 16px; margin-top:auto; padding-top:10px; font-size:13px; }
    .answer-card-links a, .answer-card-links .text-link { font-size:13px; }
    .answer-cards .add-system-card { display:flex; align-items:center; justify-content:center; padding:16px; border:1px dashed #b6bec9; border-radius:12px; background:rgba(255,255,255,.5); }
    .light-table { background:#FFF; border:1px solid #cbd3dd; border-radius:12px; padding:4px 20px; }
    .light-row { display:grid; gap:12px; padding:14px 0; border-bottom:1px solid #e3e8ef; align-items:start; }
    .light-head { padding:12px 0; font-size:12px; font-weight:700; letter-spacing:.06em; color:#596472; border-bottom:1px solid #d8dee7; }
    .light-question { display:flex; flex-direction:column; gap:3px; }
    .light-question strong { font-size:16px; color:#0f1524; }
    .light-question small { font-size:13px; color:#596472; }
    .light-cell { display:flex; gap:8px; align-items:flex-start; font-size:14px; line-height:1.4; color:#0f1524; }
    .light-cell > span { display:flex; flex-direction:column; }
    .light-system { display:none; font-size:12px; color:#596472; }
    .light-dot { flex:none; display:inline-block; width:14px; height:14px; margin-top:3px; border-radius:50%; background:#99a3af; }
    .light-dot.is-better { background:#2f376f; }
    .light-dot.is-worse { background:#c77b2e; }
    .light-legend { display:flex; flex-wrap:wrap; gap:18px; padding:14px 0 10px; font-size:13px; color:#596472; }
    .light-legend span { display:flex; align-items:center; gap:6px; }
    .light-legend .light-dot { width:12px; height:12px; margin:0; }
    .answer-actions { display:flex; flex-wrap:wrap; gap:10px; }
    .answer-actions button { min-height:48px; padding:0 18px; border-radius:8px; font-weight:700; font-size:15px; cursor:pointer; }
    .answer-primary { background:#0f1524; color:#e9edf3; border:1px solid #0f1524; }
    .answer-secondary { background:transparent; color:#0f1524; border:1px solid #0f1524; }
    @media (max-width:900px) {
      .answer-cards { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    }
    @media (max-width:720px) {
      .answer-first { padding:18px; gap:14px; }
      .answer-headline { font-size:24px; }
      .answer-lead { font-size:15px; }
      .answer-card { padding:14px; }
      .answer-card.is-best { padding:13px; }
      .answer-card-name { font-size:17px; }
      .answer-card-uw span { font-size:30px; }
      .light-table { padding:4px 14px; }
      .light-head { display:none !important; }
      .light-row { grid-template-columns:1fr !important; gap:8px; }
      .light-system { display:block; }
      .answer-actions button { width:100%; }
    }
    @media (max-width:420px) {
      .answer-cards { grid-template-columns:1fr !important; }
    }
    .answer-card-links a { color:#0f1524; font-weight:700; text-decoration-color:#4c60a1; text-underline-offset:4px; }

    /* File comparator: butoane vizibile, lipite sub meniu la derulare (desktop) */
    .compare-tabs { gap:10px; padding:0; border:0; background:transparent; }
    .compare-tabs button { display:flex; align-items:center; gap:12px; min-height:76px; padding:14px 16px; text-align:left; background:#FFF; color:#0f1524; border:1.5px solid #b6bec9; border-radius:12px; box-shadow:0 2px 0 rgba(15,21,36,.06); transition:border-color .15s, box-shadow .15s, transform .15s; }
    .compare-tabs button:hover { background:#FFF; border-color:#4c60a1; box-shadow:0 6px 16px rgba(15,21,36,.10); transform:translateY(-1px); }
    .compare-tabs button svg { flex:none; width:28px; height:28px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; color:#2f3d6d; }
    .compare-tab-text { display:flex; flex-direction:column; gap:2px; min-width:0; }
    .compare-tab-text strong { font-size:17px; line-height:1.2; }
    .compare-tab-text small { font-size:13px; line-height:1.35; color:#596472; font-weight:500; }
    .compare-tab-arrow { margin-left:auto; font-size:20px; color:#4c60a1; }
    .compare-tabs button[aria-selected="true"] { background:#0f1524; color:#e9edf3; border-color:#0f1524; box-shadow:none; transform:none; }
    .compare-tabs button[aria-selected="true"] svg { color:#7083c2; }
    .compare-tabs button[aria-selected="true"] small { color:#b6bec9; }
    .compare-tabs button[aria-selected="true"] .compare-tab-arrow { visibility:hidden; }
    @media (min-width:721px) {
      .compare-tabs { position:sticky; top:88px; z-index:15; padding:8px; margin:0 -8px; border-radius:14px; background:rgba(233,237,243,.96); backdrop-filter:blur(6px); }
    }
    @media (max-width:720px) {
      .compare-tabs { gap:4px; padding:4px; border:1px solid #cbd3dd; border-radius:12px; background:#e9edf3; }
      .compare-tabs button { min-height:48px; padding:6px; justify-content:center; text-align:center; border:0; box-shadow:none; background:transparent; }
      .compare-tabs button:hover { transform:none; box-shadow:none; }
      .compare-tabs button svg, .compare-tab-text small, .compare-tab-arrow { display:none; }
      .compare-tab-text strong { font-size:13px; }
    }
    #compareHeadHost { order:0; display:contents; }
    main.compare-mode .panel { overflow:visible; }
    #compareHeadHost .compare-hero { margin-bottom:24px; }
    #compareHeadHost .compare-tabs { margin-bottom:24px; }

    /* Schimbă sticla — vizibil pe fiecare card */
    .answer-card-glass { display:flex; flex-direction:column; gap:10px; margin-top:10px; padding:12px; border-radius:10px; background:#f3f5f7; border:1px solid #d5dce6; }
    .answer-card-glass small { display:block; font-size:12px; color:#596472; }
    .answer-card-glass strong { display:block; font-size:14px; line-height:1.4; color:#0f1524; }
    .glass-change-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:0 14px; border:1.5px solid #2f376f; border-radius:8px; background:#FFF; color:#1f2654; font-weight:800; font-size:15px; cursor:pointer; }
    .glass-change-button:hover { background:#2f376f; color:#FFF; }
    .glass-change-button svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
    .hero-action { display:inline-flex; align-items:center; min-height:40px; padding:0 14px !important; border:1px solid #0f1524 !important; border-radius:8px; text-decoration:none !important; font-weight:700; }
    .hero-action:hover { background:#0f1524; color:#e9edf3 !important; }
    .glass-method-box { display:flex; gap:14px; align-items:flex-start; margin:0 0 24px; padding:18px 20px; border:2px solid #2f376f; border-radius:12px; background:#eef0f7; }
    .glass-method-box > svg { flex:none; width:30px; height:30px; fill:none; stroke:#2f376f; stroke-width:2; stroke-linecap:round; }
    .glass-method-box h3 { margin:0 0 6px; font-size:18px; color:#0f1524; }
    .glass-method-text { margin:0; font-size:16px; line-height:1.6; color:#0f1524; }

    /* Cookie-uri și link legal în subsol */
    .site-footer-legal { display:flex; gap:16px; flex-wrap:wrap; }
    .site-footer-legal a { color:var(--ink); font-size:14px; font-weight:700; text-decoration-color:#4c60a1; text-underline-offset:4px; }
    .cookie-notice { position:fixed; left:16px; right:16px; bottom:16px; z-index:90; max-width:760px; margin:0 auto; display:flex; gap:16px; align-items:center; padding:16px 18px; background:#0f1524; color:#e9edf3; border-radius:12px; box-shadow:0 14px 34px rgba(15,21,36,.28); }
    .cookie-notice[hidden] { display:none; }
    .cookie-notice p { margin:0; font-size:14px; line-height:1.5; }
    .cookie-notice a { color:#7083c2; font-weight:700; }
    .cookie-notice button { flex:none; min-height:44px; padding:0 18px; border:0; border-radius:8px; background:#7083c2; color:#0f1524; font-weight:800; font-size:15px; cursor:pointer; }
    @media (max-width:720px) { .cookie-notice { flex-direction:column; align-items:stretch; bottom:12px; left:12px; right:12px; } }
    .gdpr-box { margin:1rem 0 .6rem; padding:14px 16px; border:1px solid #d5dce6; border-radius:10px; background:#f3f5f7; }
    .gdpr-box h4 { margin:0 0 6px; font-size:15px; }
    .gdpr-box ul { margin:0 0 8px; padding-left:18px; display:grid; gap:4px; font-size:14px; line-height:1.45; color:#3d4652; }
    .gdpr-box a { font-size:14px; font-weight:700; color:#1f2654; }

    /* Fabrici: ce produce, unde e, unde lucrează */
    .factory-intro { font-size:17px; color:#3d4652; max-width:760px; }
    .factory-card--plain { display:flex; flex-direction:column; gap:14px; }
    .factory-card-body { display:flex; flex-direction:column; gap:14px; }
    .factory-card-body h3 { margin:0; font-size:22px; }
    .factory-where { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
    .factory-where > div { display:flex; flex-direction:column; gap:4px; padding:12px; border-radius:10px; background:#eef2f7; border:1px solid #d8dee7; }
    .factory-where > div.is-area { background:#eef0f7; border-color:#bfccdc; }
    .factory-where span { display:flex; align-items:center; gap:6px; font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:#596472; }
    .factory-where svg { width:18px; height:18px; fill:none; stroke:#2f3d6d; stroke-width:1.8; }
    .factory-where .is-area svg { stroke:#2f376f; }
    .factory-where strong { font-size:17px; color:#0f1524; }
    .factory-makes > span { display:block; margin-bottom:6px; font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:#596472; }
    .factory-makes ul { margin:0; padding:0; list-style:none; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 14px; }
    .factory-makes li { position:relative; padding-left:20px; font-size:15px; color:#0f1524; }
    .factory-makes li::before { content:""; position:absolute; left:2px; top:7px; width:9px; height:9px; border-radius:2px; background:#4c60a1; }
    .factory-fact.is-key { background:#eef0f7; border-color:#bfccdc; }
    @media (max-width:560px) { .factory-where, .factory-makes ul { grid-template-columns:1fr; } }

    /* Comparatorul în verde deschis: zonă „sigură” pentru utilizator */
    body[data-active-view="systems"] .comparebar { background:#e4e6f1 !important; color:#0f1524 !important; border-bottom:1px solid #bfccdc !important; }
    .comparebar .compare-head strong { color:#0f1524 !important; }
    .comparebar .compare-head span { color:#1f2654 !important; }
    .comparebar .selected-placeholder { border:1px dashed rgba(31,38,84,.55) !important; background:rgba(255,255,255,.65) !important; }
    .answer-first { background:#eef0f7; border-color:#bfccdc; }
    .answer-first .eyebrow { color:#1f2654; }

    /* Legendă: „mai mic = mai bine” etc. mari, să sară în ochi */
    .legend-term { align-items:flex-start; flex-wrap:wrap; }
    .legend-term b { font-size:1.25rem; }
    .legend-direction { padding:.45rem .8rem; font-size:.95rem; font-weight:800; border:1.5px solid currentColor; }
    .legend-direction.lower { background:#e4e6f1; color:#1f2654; }
    .legend-direction.higher { background:#e6ebfa; color:#243e85; }
    .legend-direction:not(.lower):not(.higher) { background:#e9edf3; color:#5b4510; }

    /* Meniu: centrat, cu Comparatorul ca piesă centrală */
    @media (min-width:1101px) {
      .nav { grid-template-columns:auto minmax(0,1fr) !important; gap:24px !important; padding:0 40px !important; }
      .navlinks { justify-self:center; gap:18px !important; }
    }
    .navlinks .nav-compare { display:inline-flex !important; align-items:center; gap:8px; height:46px !important; align-self:center; padding:0 18px !important; border-radius:999px !important; background:#2f376f !important; color:#FFF !important; font-size:15px !important; font-weight:800 !important; border:0 !important; }
    .navlinks .nav-compare:hover, .navlinks .nav-compare.active { background:#1f2654 !important; color:#FFF !important; }
    .navlinks .nav-compare.active::after { display:none; }
    .navlinks .nav-compare svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2; }
    .navlinks .nav-compare #selectedText { font-weight:600; opacity:.9; }
    .navlinks a.active { color:#2f3d6d; }
    .navlinks a.active::after { content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:#4c60a1; }
    @media (max-width:820px) {
      .navlinks .nav-compare { position:static !important; max-width:none !important; width:100%; justify-content:center; margin:6px 0; display:inline-flex !important; }
      .navlinks .nav-compare > span:first-of-type { display:inline !important; }
    }

    /* Pagina Acasă */
    main.home-mode .intro { display:none; }
    main.home-mode .panel { background:transparent; border:0; }
    .home-view { display:flex; flex-direction:column; gap:40px; padding:8px 0 24px; }
    .home-hero { padding:48px 48px 44px; border-radius:18px; background:#eef0f7; border:1px solid #bfccdc; }
    .home-hero .eyebrow { color:#1f2654; }
    .home-hero h1 { margin:6px 0 14px; font-size:clamp(34px,5vw,58px); line-height:1.05; font-weight:800; color:#0f1524; max-width:900px; }
    .home-lead { margin:0 0 26px; font-size:clamp(17px,2vw,21px); line-height:1.55; color:#3d4652; max-width:780px; }
    .home-actions { display:flex; flex-wrap:wrap; gap:12px; }
    .home-primary, .home-secondary { display:inline-flex; align-items:center; min-height:54px; padding:0 24px; border-radius:10px; font-size:17px; font-weight:800; text-decoration:none; cursor:pointer; }
    .home-primary { background:#2f376f; color:#FFF; border:0; }
    .home-primary:hover { background:#1f2654; }
    .home-secondary { border:1.5px solid #0f1524; color:#0f1524; background:#FFF; }
    .home-steps h2 { margin:0 0 16px; font-size:28px; }
    .home-steps ol { margin:0; padding:0; list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
    .home-steps li { display:flex; gap:14px; padding:20px; background:#FFF; border:1px solid #cbd3dd; border-radius:14px; }
    .home-step-no { flex:none; display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:#0f1524; color:#e9edf3; font-weight:800; font-size:18px; }
    .home-steps strong { display:block; font-size:18px; margin-bottom:4px; }
    .home-steps p { margin:0; font-size:15px; line-height:1.5; color:#3d4652; }
    .home-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
    .home-fact { padding:22px; border-radius:14px; background:#FFF; border:1px solid #cbd3dd; }
    .home-fact h3 { margin:0 0 10px; font-size:20px; }
    .home-fact ul { margin:0; padding-left:20px; display:grid; gap:8px; font-size:16px; line-height:1.5; color:#0f1524; }
    .home-fact.is-yes { border-top:4px solid #2f376f; }
    .home-fact.is-no { border-top:4px solid #c77b2e; }
    .home-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
    .home-links button { display:flex; flex-direction:column; align-items:flex-start; gap:4px; min-height:84px; padding:18px 20px; text-align:left; background:#FFF; border:1.5px solid #b6bec9; border-radius:12px; cursor:pointer; font-family:inherit; }
    .home-links button:hover { border-color:#4c60a1; }
    .home-links strong { font-size:17px; color:#0f1524; }
    .home-links span { font-size:14px; color:#596472; }
    @media (max-width:820px) {
      .home-hero { padding:28px 20px; }
      .home-steps ol, .home-facts, .home-links { grid-template-columns:1fr; }
      .home-primary, .home-secondary { width:100%; justify-content:center; }
    }
    #homeView { display:none; }
    main.home-mode #homeView { display:flex !important; }
    .quote-success .primary { display:inline-flex; align-items:center; min-height:46px; margin-top:12px; padding:0 18px; border-radius:8px; text-decoration:none; }

    /* Bara comparatorului apare și în pagina Comparator */
    @media (min-width:821px) {
      body[data-active-view="compare"] .comparebar { display:block !important; background:#e4e6f1 !important; color:#0f1524 !important; border-bottom:1px solid #bfccdc !important; }
      .compare-tabs { top:calc(var(--header-h, 80px) + 8px) !important; }
    }

    /* Înscrierea fabricilor: invitație în pagina Fabrici și link în subsol */
    .factory-join { margin-top:22px; display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; padding:20px 22px; border-radius:14px; background:#e4e6f1; border:1px solid #bbbfda; }
    .factory-join strong { display:block; font-size:18px; color:#0f1524; }
    .factory-join p { margin:4px 0 0; color:#3d4652; font-size:15px; }
    .factory-join a { display:inline-flex; align-items:center; min-height:46px; padding:0 20px; border-radius:10px; background:#2f376f; color:#fff; font-weight:800; text-decoration:none; }
    .factory-join a:hover { background:#272f5f; }
    .site-footer-legal a.footer-factory-link { color:#1f2654; }
    @media (max-width: 640px) { .factory-join a { width:100%; justify-content:center; } }

    /* ===== Mobil: mai mult spațiu util, text lizibil, zone de atingere mari (15.10.2026) ===== */
    @media (max-width:720px) {
      /* Un singur nivel de chenar: panoul alb ocupă toată lățimea ecranului */
      main, main.compare-mode { padding-left:12px; padding-right:12px; }
      .workspace > .panel { margin-left:-12px; margin-right:-12px; border-left:0; border-right:0; border-radius:0; box-shadow:none; }
      .cards { padding:0 12px 12px; }
      .profile-detail { padding:16px 4px; }
      .comparator-page { padding:16px 12px; }
      .system-card { padding:14px; }
      /* Bara de comparare mai scundă */
      body[data-active-view="systems"] .comparebar-inner { padding:10px 12px; gap:8px; }
      .comparebar .compare-head span { font-size:12px; }
      .comparebar .selected-item, .comparebar .selected-placeholder { min-height:0; }
      .comparebar .selected-placeholder { padding:4px; }
      .comparebar .profile-search-toggle { min-height:44px; padding:6px 10px; font-size:13px; line-height:1.25; }
      .comparebar-inner > button { min-height:44px; }
      /* Cererea de ofertă din pagină nu mai ia înălțimea ferestrei modale */
      #compareOfferHost #offerSection.quote-panel { height:auto; min-height:0; }
      /* Etichetele de pe carduri aliniate la stânga, ca restul textului */
      .system-card .badge-stack { justify-content:flex-start; }
      /* Firul de navigare pe rânduri, fără cuvinte rupte */
      .breadcrumb { flex-wrap:wrap; row-gap:2px; font-size:13px; }
      .breadcrumb a { padding:6px 0; }
      /* Text de minimum 12px */
      main small, .mobile-offer-bar small, .profile-hero-credit, .prototype-badge, .window-project-card span,
      .difference-value small, .mobile-system-head small, .glass-compare-value small, .better-label,
      .system-meta, .summary-metric span, .summary-metric small, .system-card-link, .advanced-glass { font-size:12px; }
      .quote-modal label, .quote-modal .quote-kicker, .quote-progress span, .quote-summary span,
      .quote-modal .offer-choice strong, .quote-modal .offer-choice span, .quote-modal .quote-demo-note { font-size:13px; }
      .brand { min-height:44px; display:flex; align-items:center; }
      .answer-card-links a, .system-summary-card a { display:inline-block; padding:10px 0; }
      .remove-system { width:40px; height:40px; }
      /* Linkuri ușor de atins */
      .site-footer-contact a, .site-footer-legal a { display:inline-block; padding:10px 0; }
      .text-link { padding:10px 0; }
      .cookie-notice { padding:12px 14px; gap:10px; }
      .cookie-notice p { font-size:13px; line-height:1.45; }
      .cookie-notice a { display:inline-block; padding:6px 0; }
      /* Sigla mai mare și lizibilă */
      .brand, .brand-complete-logo { width:150px; max-width:150px; max-height:48px; height:auto; }
    }

    /* Fotografiile fabricilor înscrise prin formular */
    .factory-photo-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); gap:10px; }
    .factory-photo-grid img { display:block; width:100%; aspect-ratio:4 / 3; object-fit:cover; border-radius:9px; border:1px solid var(--line); }

    /* Comparator: detaliile fiecărei serii stau în cardul ei, aliniate rând cu rând între carduri (16.10.2026) */
    .answer-card { padding-bottom:6px; }
    .answer-card-main { display:flex; flex-direction:column; gap:6px; padding-bottom:12px; }
    .answer-card-detail { display:flex; flex-direction:column; gap:6px; padding:12px 0; border-top:1px solid #e3e8ef; }
    .answer-detail-question { display:flex; flex-direction:column; gap:2px; }
    .answer-detail-question strong { font-size:14px; line-height:1.3; color:#0f1524; }
    .answer-detail-question small { font-size:12px; line-height:1.35; color:#596472; }
    .answer-card-detail .light-cell { font-size:15px; font-weight:600; }
    @supports (grid-template-rows: subgrid) {
      .answer-card { display:grid; grid-template-rows:subgrid; row-gap:0; align-content:start; }
      .answer-card-main .answer-card-links { margin-top:auto; }
    }
    .answer-cards + .light-legend { padding-top:2px; }
    .answer-cards .add-system-card { align-items:flex-start; padding-top:48px; }
    /* Mobil: comparatorul gol arată direct căsuțele de alegere (16.10.2026) */
    .empty-compare--pick { text-align:left; padding:18px 16px; }
    .empty-compare--pick > strong { display:block; font-size:20px; color:#0f1524; }
    .empty-compare--pick > div:first-of-type { margin-top:4px; font-size:15px; }
    .empty-compare-slots { display:grid; gap:10px; margin-top:14px; }
    .empty-compare-slot .profile-search-toggle { min-height:52px; font-size:15px; }
    .empty-compare-slot .profile-search-panel { width:100%; }
    .empty-compare-chosen { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:52px; padding:8px 8px 8px 14px; background:#FFF; border:1px solid #7083c2; border-radius:3px; }
    .empty-compare-chosen span { display:flex; flex-direction:column; }
    .empty-compare-chosen strong { font-size:15px; color:#0f1524; }
    .empty-compare-chosen small { font-size:12px; color:#596472; }
    .empty-compare-chosen button { width:40px; height:40px; border:0; border-radius:50%; background:#dae2ed; color:#0f1524; font-size:20px; cursor:pointer; }
    /* Calculator sticlă: butonul de sub listă deschide întrebările simple (16.10.2026) */
    .glass-compare-customize { width:100%; margin-top:10px; text-align:center; line-height:1.25; padding:8px 12px; }
    .glass-compare-custom { display:block; margin-bottom:6px; font-style:normal; font-weight:700; font-size:13px; color:#1f2654; }
    @media (max-width:720px) { .glass-compare-customize { font-size:13px; padding:8px; } }
