/* Product page only; existing site styles and business flows remain intact. */
.connectors-theme { --cc-border: #ffffff1b; }
.connectors-theme .cc-hero { padding: 58px 0 0; background: radial-gradient(ellipse at 70% 15%, #f4a0190c, transparent 58%); }
.connectors-theme .cc-hero-grid { display: grid; grid-template-columns: 1.02fr 1fr; align-items: center; gap: 40px; }
.connectors-theme .cc-hero h1 { margin: 0; max-width: 700px; font-size: clamp(2.6rem, 4.8vw, 4.5rem); line-height: 1.02; letter-spacing: -.055em; text-wrap: balance; }
.connectors-theme .cc-lead { max-width: 580px; margin: 24px 0; color: var(--soft); font-size: 1.15rem; line-height: 1.5; }
.connectors-theme figure { margin: 0; min-width: 0; }
.connectors-theme figcaption { color: var(--soft); font-size: .78rem; line-height: 1.45; margin-top: 12px; }
.connectors-theme .cc-hero-photo img { display: block; width: 100%; height: auto; border-radius: 20px; box-shadow: var(--shadow); }
.connectors-theme .cc-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.connectors-theme .cc-buy { min-height: 54px; font-size: .88rem; letter-spacing: .02em; text-transform: uppercase; }
.connectors-theme .cc-buy[disabled] { cursor: default; }
.connectors-theme .cc-purchase-note { max-width: 490px; margin: 17px 0 12px; font-size: .82rem; color: var(--soft); }
.connectors-theme .cc-purchase-note strong { color: var(--paper); white-space: nowrap; }
.connectors-theme .cc-coming { margin: 0; font-size: .76rem; color: var(--soft); text-transform: uppercase; letter-spacing: .07em; }
.connectors-theme .cc-coming span { color: var(--orange); margin-right: 6px; }
.connectors-theme .cc-quick-facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; border-top: 1px solid var(--cc-border); border-bottom: 1px solid var(--cc-border); padding: 22px 0; margin-top: 46px; font-size: .88rem; font-weight: 850; text-align: center; }
.connectors-theme .cc-jump-links { display: flex; gap: 32px; flex-wrap: wrap; padding: 22px 0; font-size: .82rem; font-weight: 750; }
.connectors-theme .cc-jump-links a { min-height: 30px; display: inline-flex; align-items: center; text-decoration: none; color: var(--soft); }
.connectors-theme .cc-jump-links a:hover { color: var(--orange-light); }
.connectors-theme .cc-section { padding: 86px 0; }
.connectors-theme .cc-tinted { background: var(--ink-2); border-block: 1px solid #ffffff0a; }
.connectors-theme .cc-split { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 68px; }
.connectors-theme .cc-copy { min-width: 0; }
.connectors-theme .cc-copy h2, .connectors-theme .cc-heading h2, .connectors-theme .cc-download-panel h2, .connectors-theme .cc-kits-panel h2, .connectors-theme .cc-safety h2 { margin: 0; font-size: clamp(2rem, 4vw, 3.35rem); line-height: 1.07; letter-spacing: -.045em; text-wrap: balance; }
.connectors-theme .cc-copy > p:not(.eyebrow) { color: var(--soft); }
.connectors-theme .cc-copy > p:first-of-type:not(.eyebrow) { margin-top: 22px; }
.connectors-theme .cc-small { font-size: .82rem; color: var(--soft); line-height: 1.6; }
.connectors-theme .cc-copy blockquote { margin: 28px 0; padding: 0 0 0 22px; border-left: 3px solid var(--orange); color: var(--paper); font-size: 1.4rem; font-weight: 750; line-height: 1.4; }
.connectors-theme .cc-copy cite { display: block; margin-top: 12px; color: var(--soft); font-size: .8rem; font-weight: 500; font-style: normal; }
.connectors-theme .cc-story-grid { grid-template-columns: 1.35fr .75fr; }
.connectors-theme .cc-video-figure video { display: block; width: 100%; height: auto; border-radius: 18px; background: #000; box-shadow: var(--shadow); }
.connectors-theme .cc-story-video { width: min(100%, 360px); justify-self: center; }
.connectors-theme .cc-story-video video { aspect-ratio: 9 / 16; }
.connectors-theme .cc-transcript { margin-top: 15px; color: var(--soft); font-size: .8rem; }
.connectors-theme .cc-transcript summary { min-height: 34px; cursor: pointer; }
.connectors-theme .cc-transcript p { margin-top: 10px; }
.connectors-theme .cc-demo-grid { grid-template-columns: .75fr 1.35fr; }
.connectors-theme .cc-demo-video { width: min(100%, 350px); justify-self: center; }
.connectors-theme .cc-demo-video video { aspect-ratio: 9 / 16; }
.connectors-theme .cc-short-steps { padding: 0; margin: 28px 0; list-style: none; counter-reset: cc-step; }
.connectors-theme .cc-short-steps li { position: relative; counter-increment: cc-step; padding: 0 0 20px 52px; margin-bottom: 18px; border-bottom: 1px solid var(--cc-border); }
.connectors-theme .cc-short-steps li:last-child { margin-bottom: 0; }
.connectors-theme .cc-short-steps li::before { content: "0" counter(cc-step); position: absolute; left: 0; top: 0; font-size: .9rem; color: var(--orange); font-weight: 900; }
.connectors-theme .cc-short-steps strong { display: block; margin-bottom: 5px; font-size: 1.05rem; }
.connectors-theme .cc-short-steps span { display: block; color: var(--soft); font-size: .9rem; }
.connectors-theme .cc-heading { max-width: 740px; margin-bottom: 34px; }
.connectors-theme .cc-heading > p:last-child:not(.eyebrow) { color: var(--soft); margin: 20px 0 0; }
.connectors-theme .cc-card-grid { display: grid; gap: 22px; }
.connectors-theme .cc-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.connectors-theme .cc-four { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.connectors-theme .cc-card { min-width: 0; overflow: hidden; border-radius: 18px; background: var(--panel); border: 1px solid var(--cc-border); }
.connectors-theme .cc-card-image { aspect-ratio: 4 / 3; overflow: hidden; background: #deded9; }
.connectors-theme .cc-card-image img { display: block; width: 100%; height: 100%; object-fit: contain; }
.connectors-theme .cc-two .cc-card-image { aspect-ratio: 16 / 10; }
.connectors-theme .cc-mini-image img { object-fit: contain; background: #d1cfc9; }
.connectors-theme .cc-cord-image img { object-fit: contain; background: #e7e3da; }
.connectors-theme .cc-card-copy { padding: 24px; }
.connectors-theme .cc-four .cc-card-copy { padding: 22px 18px; }
.connectors-theme .cc-card h3 { margin: 12px 0; font-size: 1.4rem; line-height: 1.2; letter-spacing: -.025em; }
.connectors-theme .cc-four h3 { margin-top: 0; font-size: 1.2rem; }
.connectors-theme .cc-card-copy p { color: var(--soft); font-size: .9rem; margin: 0; }
.connectors-theme .cc-card-copy ul { padding-left: 19px; margin: 18px 0 0; font-size: .87rem; color: var(--soft); }
.connectors-theme .cc-card-copy li { margin-top: 6px; }
.connectors-theme .cc-tag { display: inline-flex; align-items: center; border: 1px solid #f4a01955; background: #f4a0190e; color: var(--orange-light); padding: 5px 10px; border-radius: 7px; font-size: .71rem; line-height: 1.3; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.connectors-theme .cc-note { border-left: 2px solid var(--orange); padding-left: 18px; margin: 28px 0 0; max-width: 920px; color: var(--soft); font-size: .88rem; }
.connectors-theme .cc-note strong { color: var(--paper); }
.connectors-theme .cc-photo img { display: block; width: 100%; height: auto; border-radius: 18px; }
.connectors-theme .cc-layout-list { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin: 24px 0; }
.connectors-theme .cc-layout-list p { margin: 0; padding: 18px; border: 1px solid var(--cc-border); border-radius: 12px; background: var(--panel); }
.connectors-theme .cc-layout-list strong, .connectors-theme .cc-layout-list span { display: block; }
.connectors-theme .cc-layout-list strong { color: var(--orange-light); margin-bottom: 9px; }
.connectors-theme .cc-layout-list span { font-size: .9rem; color: var(--soft); line-height: 1.8; }
.connectors-theme .cc-mount-photo { max-width: 440px; justify-self: center; }
.connectors-theme .cc-inline-details { margin-top: 24px; border: 1px solid var(--cc-border); border-radius: 12px; overflow: hidden; }
.connectors-theme .cc-inline-details summary { padding: 14px 18px; cursor: pointer; font-size: .9rem; font-weight: 750; min-height: 48px; }
.connectors-theme .cc-inline-details figure { padding: 0 18px 18px; }
.connectors-theme .cc-inline-details img { display: block; border-radius: 8px; height: auto; }
.connectors-theme .cc-process { list-style: none; padding: 0; margin: 36px 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.connectors-theme .cc-process li { border-top: 1px solid var(--line); padding-top: 22px; }
.connectors-theme .cc-process span { color: var(--orange); font-weight: 900; font-size: .85rem; }
.connectors-theme .cc-process h3 { margin: 12px 0 10px; font-size: 1.1rem; }
.connectors-theme .cc-process p { margin: 0; color: var(--soft); font-size: .88rem; }
.connectors-theme .cc-pause-callout { background: #f4a0190d; border: 1px solid #f4a01966; border-radius: 14px; padding: 26px 28px; }
.connectors-theme .cc-pause-callout strong { display: block; font-size: clamp(1.2rem, 2.3vw, 1.7rem); color: var(--orange-light); }
.connectors-theme .cc-pause-callout > span { display: block; margin-top: 6px; font-weight: 750; }
.connectors-theme .cc-pause-callout p { max-width: 820px; margin: 15px 0 0; color: var(--soft); font-size: .86rem; }
.connectors-theme .cc-armour-photo { width: min(100%, 380px); justify-self: center; }
.connectors-theme .cc-family-photo { max-width: 430px; justify-self: center; }
.connectors-theme .cc-count { display: flex; gap: 18px; align-items: center; margin: 30px 0; }
.connectors-theme .cc-count strong { font-size: 4.7rem; line-height: .9; color: var(--orange); letter-spacing: -.05em; }
.connectors-theme .cc-count span { font-size: 1rem; color: var(--soft); }
.connectors-theme .cc-check-list { list-style: none; padding: 0; margin: 22px 0; }
.connectors-theme .cc-check-list li { position: relative; padding-left: 28px; margin: 12px 0; font-size: .95rem; }
.connectors-theme .cc-check-list li::before { content: "✓"; position: absolute; left: 0; color: var(--orange); font-weight: 900; }
.connectors-theme .cc-print-grid { display: grid; grid-template-columns: .8fr 1.15fr 1fr; gap: 20px; }
.connectors-theme .cc-print-panel { padding: 26px; border: 1px solid var(--cc-border); background: var(--panel); border-radius: 16px; }
.connectors-theme .cc-print-panel h3 { margin: 0 0 20px; font-size: 1.1rem; }
.connectors-theme .cc-print-panel dl { margin: 0; }
.connectors-theme .cc-print-panel dl > div { margin-top: 16px; }
.connectors-theme .cc-print-panel dt { font-size: .78rem; color: var(--soft); }
.connectors-theme .cc-print-panel dd { margin: 3px 0 0; font-size: .98rem; font-weight: 750; }
.connectors-theme .cc-first-print { border-color: #f4a01966; }
.connectors-theme .cc-first-print p { font-size: .92rem; line-height: 1.8; }
.connectors-theme .cc-first-print .cc-small { font-size: .8rem; line-height: 1.6; margin-bottom: 0; }
.connectors-theme .cc-download-section { padding-top: 28px; }
.connectors-theme .cc-download-panel { display: grid; grid-template-columns: 1fr; gap: 28px; align-items: start; padding: 48px; border: 1px solid #f4a01977; background: linear-gradient(135deg, #242017, var(--panel)); border-radius: 22px; }
.connectors-theme .cc-download-panel p { color: var(--soft); }
.connectors-theme .cc-price { display: flex; flex-direction: column; gap: 4px; margin: 26px 0 0; }
.connectors-theme .cc-price strong { font-size: 2rem; letter-spacing: -.04em; color: var(--paper); }
.connectors-theme .cc-price span { font-size: .8rem; }
.connectors-theme .cc-download-actions { display: flex; flex-direction: column; gap: 14px; }
.connectors-theme .cc-download-actions p { font-size: .82rem; margin: 0; text-align: center; }
.connectors-theme .cc-kits-section { padding-top: 0; padding-bottom: 66px; }
.connectors-theme .cc-kits-panel { display: flex; align-items: center; gap: 28px; border: 1px solid var(--cc-border); border-radius: 18px; padding: 28px 34px; }
.connectors-theme .cc-kits-panel h2 { font-size: 1.45rem; letter-spacing: -.02em; }
.connectors-theme .cc-kits-panel p { color: var(--soft); font-size: .9rem; margin: 10px 0 0; }
.connectors-theme .cc-kits-panel .cc-tag { flex-shrink: 0; }
.connectors-theme .cc-faq-wrap { max-width: 920px; }
.connectors-theme .cc-faq details { border-bottom: 1px solid var(--line); }
.connectors-theme .cc-faq details:first-child { border-top: 1px solid var(--line); }
.connectors-theme .cc-faq summary { position: relative; list-style: none; padding: 22px 40px 22px 0; min-height: 62px; font-weight: 750; cursor: pointer; line-height: 1.4; }
.connectors-theme .cc-faq summary::-webkit-details-marker { display: none; }
.connectors-theme .cc-faq summary::after { content: "+"; position: absolute; right: 7px; top: 17px; font-size: 1.55rem; color: var(--orange); }
.connectors-theme .cc-faq details[open] summary::after { content: "−"; }
.connectors-theme .cc-faq p { margin: 0 40px 24px 0; color: var(--soft); font-size: .94rem; }
.connectors-theme .cc-safety-section { padding: 60px 0; }
.connectors-theme .cc-safety { display: grid; grid-template-columns: .8fr 1.2fr; gap: 68px; }
.connectors-theme .cc-safety h2 { font-size: 1.95rem; }
.connectors-theme .cc-safety p { color: var(--soft); margin: 0 0 16px; font-size: .9rem; }
.connectors-theme .cc-safety a { color: var(--paper); text-underline-offset: 3px; }
@media (min-width: 1001px) { .connectors-theme .nav { gap: 18px; } .connectors-theme .nav a { font-size: .82rem; } }
@media (max-width: 1000px) {
  .connectors-theme .cc-hero-grid { grid-template-columns: 1fr; gap: 34px; }
  .connectors-theme .cc-hero-copy { max-width: 720px; }
  .connectors-theme .cc-hero h1 { font-size: clamp(2.8rem, 6.7vw, 4.4rem); }
  .connectors-theme .cc-hero-photo { max-width: 850px; }
  .connectors-theme .cc-split { gap: 38px; }
  .connectors-theme .cc-four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .connectors-theme .cc-story-grid, .connectors-theme .cc-demo-grid { grid-template-columns: 1fr 1fr; }
  .connectors-theme .cc-print-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .connectors-theme .cc-first-print { grid-column: 1 / -1; }
  .connectors-theme .cc-download-panel { gap: 32px; padding: 34px; }
  .connectors-theme .cc-process { gap: 20px; }
}
@media (max-width: 680px) {
  .connectors-theme .wrap { width: min(100% - 32px, 1180px); }
  .connectors-theme .cc-hero { padding-top: 34px; }
  .connectors-theme .cc-hero h1 { font-size: clamp(2.45rem, 10vw, 3.6rem); }
  .connectors-theme .cc-lead { font-size: 1rem; margin: 20px 0; }
  .connectors-theme .cc-actions { flex-direction: column; align-items: stretch; }
  .connectors-theme .cc-buy { font-size: .79rem; padding-inline: 14px; }
  .connectors-theme .cc-quick-facts { grid-template-columns: 1fr 1fr; gap: 18px 10px; margin-top: 32px; font-size: .78rem; }
  .connectors-theme .cc-jump-links { justify-content: space-between; gap: 6px 18px; font-size: .74rem; }
  .connectors-theme .cc-section { padding: 58px 0; }
  .connectors-theme .cc-split, .connectors-theme .cc-story-grid, .connectors-theme .cc-demo-grid { grid-template-columns: 1fr; gap: 32px; }
  .connectors-theme .cc-demo-video { grid-row: 2; }
  .connectors-theme .cc-copy h2, .connectors-theme .cc-heading h2, .connectors-theme .cc-download-panel h2 { font-size: 2.2rem; }
  .connectors-theme .cc-story-video { max-width: 310px; }
  .connectors-theme .cc-demo-video { max-width: 310px; }
  .connectors-theme .cc-two { grid-template-columns: 1fr; }
  .connectors-theme .cc-four { gap: 12px; }
  .connectors-theme .cc-four .cc-card-copy { padding: 18px 14px; }
  .connectors-theme .cc-four h3 { font-size: 1rem; }
  .connectors-theme .cc-four .cc-card-copy p { font-size: .8rem; }
  .connectors-theme .cc-process { grid-template-columns: 1fr 1fr; gap: 24px 22px; }
  .connectors-theme .cc-process h3 { font-size: 1rem; }
  .connectors-theme .cc-pause-callout { padding: 22px 20px; }
  .connectors-theme .cc-armour-photo { max-width: 310px; }
  .connectors-theme .cc-family-photo { max-width: 340px; }
  .connectors-theme .cc-print-grid { grid-template-columns: 1fr; gap: 14px; }
  .connectors-theme .cc-first-print { grid-column: auto; }
  .connectors-theme .cc-print-panel { padding: 22px; }
  .connectors-theme .cc-download-section { padding-top: 0; }
  .connectors-theme .cc-download-panel { grid-template-columns: 1fr; padding: 28px 24px; gap: 22px; }
  .connectors-theme .cc-kits-section { padding-top: 0; }
  .connectors-theme .cc-kits-panel { display: block; padding: 24px; }
  .connectors-theme .cc-kits-panel .cc-tag { margin-bottom: 18px; }
  .connectors-theme .cc-faq summary { font-size: .92rem; }
  .connectors-theme .cc-faq p { margin-right: 16px; font-size: .86rem; }
  .connectors-theme .cc-safety { grid-template-columns: 1fr; gap: 25px; }
}
@media (prefers-reduced-motion: reduce) { .connectors-theme { scroll-behavior: auto; } }

/* Clear mounting modes and download tiers; scoped to the connector route. */
.connectors-theme .cc-mode-grid, .connectors-theme .cc-tier-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.connectors-theme .cc-mode-grid { margin-top: 32px; }
.connectors-theme .cc-mode, .connectors-theme .cc-tier { min-width: 0; padding: 26px; border: 1px solid var(--cc-border); border-radius: 16px; background: var(--panel); }
.connectors-theme .cc-mode h3, .connectors-theme .cc-tier h3 { margin: 16px 0 12px; font-size: 1.3rem; line-height: 1.25; letter-spacing: -.02em; }
.connectors-theme .cc-mode p, .connectors-theme .cc-tier p { color: var(--soft); font-size: .9rem; }
.connectors-theme .cc-mode p:last-child { margin-bottom: 0; }
.connectors-theme .cc-mode strong { color: var(--paper); }
.connectors-theme .cc-tier { display: flex; flex-direction: column; }
.connectors-theme .cc-tier-full { border-color: #f4a01966; }
.connectors-theme .cc-tier .cc-tag { align-self: flex-start; }
.connectors-theme .cc-tier .cc-buy { margin-top: auto; text-align: center; white-space: normal; }
.connectors-theme .cc-tier .cc-price { margin: 4px 0 20px; }
.connectors-theme .cc-tier .cc-price strong { color: var(--paper); }
.connectors-theme .cc-download-heading { max-width: 740px; }
.connectors-theme .cc-license-note { margin: 0; }
.connectors-theme .cc-instruction-details figure { max-width: 620px; margin-inline: auto; }
.connectors-theme .cc-inline-details figure { max-width: 620px; margin-inline: auto; }
.connectors-theme .cc-instruction-details img { width: 100%; }
.connectors-theme .cc-instruction-details a { color: var(--paper); text-underline-offset: 3px; }
@media (max-width: 680px) {
  .connectors-theme .cc-mode-grid, .connectors-theme .cc-tier-grid { grid-template-columns: 1fr; gap: 16px; }
  .connectors-theme .cc-mode, .connectors-theme .cc-tier { padding: 22px; }
}

/* 2026-10-07 full-system release preview; real source photographs conventionally downscaled. */
.cc-preview-note { padding:12px 0; background:#f4a01917; border-bottom:1px solid #f4a01955; color:var(--orange-light); font-size:.85rem; }
.connectors-theme .cc-full-name { font-size:.82rem; color:var(--soft); margin:20px 0 0; }
.connectors-theme .cc-new-hero img { width:100%; aspect-ratio:16/10; object-fit:cover; object-position:center bottom; }
.connectors-theme .cc-joiners { grid-template-columns:repeat(5,minmax(0,1fr)); }
.connectors-theme .cc-joiners h3 { font-size:1.05rem; min-height:2.5em; }
.connectors-theme .cc-joiners .cc-card-copy { padding:18px 14px; }
.connectors-theme .cc-joiner-image { aspect-ratio:3/4; }
.connectors-theme .cc-joiner-image img { object-fit:contain; object-position:center; }
.connectors-theme .cc-joiner-detail { margin-top:16px; font-size:.8rem; }
.connectors-theme .cc-joiner-detail summary { cursor:pointer; padding:8px 0; min-height:44px; }
.connectors-theme .cc-joiner-detail img { display:block; width:100%; height:auto; border-radius:8px; margin-top:10px; }
.connectors-theme .cc-evidence-grid { display:grid; grid-template-columns:1fr 1fr; gap:32px; max-width:1000px; }
.connectors-theme .cc-evidence-grid img { width:100%; aspect-ratio:3/4; object-fit:contain; background:#111519; }
.connectors-theme .cc-installed-photo { max-width:420px; justify-self:center; }
@media(max-width:1200px) { .connectors-theme .cc-joiners { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:760px) { .connectors-theme .cc-joiners { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:520px) { .connectors-theme .cc-joiners,.connectors-theme .cc-evidence-grid { grid-template-columns:1fr; } .connectors-theme .cc-joiners h3 { min-height:0; } }
