/* CPT additions to the reused Nitrox/Trimix styles. Keep this file last. */
:root{--bg:#101010;--panel:#191919;--module:#252525;--ink:#eeeeee;--muted:#c0c0c0;--line:#383838;--line-strong:#5b5b5b;--blue:#315df9;--blue-strong:#254bce;--blue-soft:#1b2851;--link:#a2bdff;--shadow:0 1px 0 #ffffff08,0 16px 44px #0003}
html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink)}a{color:var(--link)}a:hover{color:#d1ddff}button,input,select,textarea{font-family:inherit}button{cursor:pointer}[hidden]{display:none!important}
.product-content a,.cpt-doc a{color:var(--link)}.product-content p,.product-content li,.cpt-doc p,.cpt-doc li{color:var(--muted)}
.primary-button,.product-content .primary-button,.cpt-doc .primary-button,a.primary-button,button.primary-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 19px;background:var(--blue);border:1px solid var(--blue);border-radius:7px;color:#fff;font-size:15px;font-weight:750;line-height:1.3;text-decoration:none}
.primary-button:hover,.product-content .primary-button:hover,.cpt-doc .primary-button:hover{background:var(--blue-strong);border-color:#6687ff;color:#fff}
.secondary-button,.product-content .secondary-button,.cpt-doc .secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;background:#222;border:1px solid #616161;border-radius:7px;color:#eee;font-size:15px;font-weight:650;line-height:1.3;text-decoration:none}
.secondary-button:hover,.product-content .secondary-button:hover,.cpt-doc .secondary-button:hover{background:#303030;border-color:#929292;color:#fff}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.table-wrap:focus-visible{outline:3px solid #a2bdff;outline-offset:4px}
.product-content .eyebrow,.cpt-doc .eyebrow{font-size:12px;font-weight:750;letter-spacing:.09em;text-transform:uppercase;color:var(--link);margin:0 0 14px}
.product-desktop-nav>a:hover,.product-desktop-nav>a.is-active{color:#b6caff;border-bottom-color:var(--blue)}.product-header a:focus-visible,.product-header summary:focus-visible{outline-color:#a2bdff}.product-mobile-menu[open]>summary{background:#1b2851;border-color:#5b75bc}.product-mobile-menu nav>a.is-active{color:#b6caff}.product-skip{background:var(--blue);color:#fff}.product-brand:hover{color:#eee}
.product-landing-page main.product-content{padding-top:50px;gap:68px}.product-intro{gap:44px;grid-template-columns:1.05fr 1fr}.cpt-hero .product-hero-image img{height:420px;background:#303030;border:1px solid #464646}.product-hero-image figcaption{line-height:1.6;color:var(--muted);font-size:12px}.product-content .product-name{color:#eee}.product-skill{max-width:520px}.product-buy-shortcut{gap:9px}
.cpt-spec-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:27px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.cpt-spec-strip>div{display:flex;flex-direction:column;gap:7px}.cpt-spec-strip strong{font-size:25px;letter-spacing:-.025em}.cpt-spec-strip span{font-size:14px;color:var(--muted)}
.cpt-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.cpt-feature-grid article{padding:25px 0 0;border-top:1px solid var(--line)}.cpt-feature-grid h3{font-size:22px}.cpt-feature-grid p{font-size:15px;line-height:1.7}.cpt-screen{margin:28px 0 0;border:1px solid #484848;border-radius:12px;overflow:hidden;background:#151515}.cpt-screen img{display:block;width:100%;height:auto}.cpt-screen figcaption{font-size:12px;color:var(--muted);line-height:1.6;padding:14px 18px;border-top:1px solid #383838}
.product-price-grid article{background:var(--panel);border-color:#414141}.product-price-grid .cpt-licence-card{border:1px solid #647fd1;background:#18203a}.cpt-price{font-size:48px!important;letter-spacing:-.05em!important}.cpt-price span{font-size:17px;font-weight:500;letter-spacing:0;color:var(--muted)}.product-content .cpt-provider{font-size:12px;line-height:1.65;margin:16px 0 0}.cpt-price-note{font-size:14px;line-height:1.7;max-width:920px;margin:24px 0 0!important}.cpt-resource-links{display:flex;flex-direction:column;gap:8px}.cpt-resource-links>a{min-height:48px;display:flex;align-items:center;font-weight:650;text-decoration:none;border-bottom:1px solid #383838;padding:6px 0}.cpt-resource-links>a:hover{text-decoration:underline}.cpt-model-status{display:flex;flex-direction:column;gap:10px;padding:20px 0 0}.cpt-model-status>span{font-size:14px;color:var(--muted)}
.cpt-closing{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px;border:1px solid #414141;border-radius:12px;background:#1a1a1a}.cpt-closing h2{font-size:29px!important}.cpt-closing p:last-child{margin-bottom:0}.cpt-closing>a{flex-shrink:0}.product-footer{gap:34px;align-items:flex-start}.product-footer div{line-height:1.8}.product-footer a{color:#c0c0c0}.product-footer a:hover{color:var(--link)}
.cpt-doc{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:28px 0 48px;line-height:1.7}.cpt-doc h1,.cpt-doc h2,.cpt-doc h3{color:var(--ink);line-height:1.18;letter-spacing:-.03em}.cpt-doc h1{font-size:clamp(37px,4.5vw,58px);margin:10px 0 20px}.cpt-doc h2{font-size:clamp(28px,3.2vw,38px);margin:0 0 18px}.cpt-doc h3{font-size:22px;margin:0 0 10px}.cpt-doc p{margin:0 0 18px}.cpt-doc p:last-child{margin-bottom:0}.cpt-doc-intro{max-width:850px;margin:24px 0 30px}.cpt-doc-intro>p:not(.eyebrow){font-size:19px;max-width:780px}.cpt-doc section{margin:56px 0 0;scroll-margin-top:104px}.cpt-doc-actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 0}.cpt-on-page{display:flex;gap:8px 24px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin-top:32px}.cpt-on-page a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;text-decoration:none}.cpt-on-page a:hover{text-decoration:underline}.guide-breadcrumb a{color:var(--muted)}
.cpt-diagram{margin:26px 0 12px;background:#111;border:1px solid #414141;border-radius:12px;overflow:hidden}.cpt-diagram img{display:block;width:100%;height:auto}.cpt-diagram figcaption{padding:13px 18px;font-size:13px;color:var(--muted);line-height:1.6;border-top:1px solid #383838}.diagram-tools{display:flex;align-items:center;gap:12px 22px;flex-wrap:wrap;margin:12px 0 24px}.diagram-tools>a{display:inline-flex;align-items:center;min-height:44px;font-size:14px}.cpt-note,.cpt-alert{padding:23px 25px;margin:25px 0;background:#1b2543;border:1px solid #4b6099;border-radius:10px}.cpt-note>strong,.cpt-alert>strong{display:block;color:#fff;font-size:17px;margin-bottom:10px}.cpt-note p,.cpt-alert p{font-size:15px;line-height:1.75}.cpt-key{display:inline-block;width:22px;height:3px;margin:0 7px 4px 0}.cpt-key-blue{background:#6c9aff}.cpt-key-amber{background:#ffb54b}
.table-wrap{max-width:100%;overflow-x:auto;border:1px solid #444;border-radius:10px;margin:24px 0;background:#181818}.table-wrap table{width:100%;min-width:540px;border-collapse:collapse;font-size:15px}.table-wrap caption{caption-side:top;text-align:left;padding:17px 20px;font-size:13px;color:var(--muted);line-height:1.6;border-bottom:1px solid #383838}.table-wrap th,.table-wrap td{padding:16px 20px;text-align:left;vertical-align:top;border-bottom:1px solid #383838}.table-wrap thead{background:#242424}.table-wrap th{font-size:13px;color:#e4e4e4;font-weight:750}.table-wrap td{color:var(--muted);line-height:1.7}.table-wrap tbody tr:last-child td{border-bottom:0}.cpt-bom{min-width:700px!important}.cpt-bom td:first-child{white-space:nowrap;width:90px}.cpt-bom td:nth-child(2){min-width:230px;font-weight:650;color:#eee}.cpt-source-note{font-size:14px;line-height:1.8!important;color:var(--muted)}
.cpt-numbered-list{list-style:none;counter-reset:steps;padding:0;margin:26px 0 0}.cpt-numbered-list>li{counter-increment:steps;position:relative;padding:0 0 25px 62px;margin:0 0 27px;border-bottom:1px solid #383838}.cpt-numbered-list>li::before{content:counter(steps,decimal-leading-zero);position:absolute;left:0;top:0;color:var(--link);font-size:15px;font-weight:750}.cpt-numbered-list>li:last-child{border-bottom:0;padding-bottom:0;margin-bottom:0}.cpt-simple-list,.cpt-checklist{padding-left:24px}.cpt-simple-list li,.cpt-checklist li{padding-left:5px;margin:14px 0}.cpt-doc code{font-size:.92em;background:#292929;border:1px solid #414141;padding:2px 6px;border-radius:4px;color:#eee;overflow-wrap:anywhere}.cpt-release{border:1px solid #52648d;border-radius:12px;background:#1c2233;padding:30px}.cpt-release-facts{display:grid;gap:0;margin:24px 0}.cpt-release-facts>div{display:grid;grid-template-columns:170px 1fr;gap:20px;padding:14px 0;border-top:1px solid #46506a}.cpt-release-facts dt{font-size:14px;color:#c0c0c0}.cpt-release-facts dd{margin:0;font-size:15px;color:#eee}.cpt-faq details{border-bottom:1px solid #414141;padding:0 0 18px;margin:18px 0}.cpt-faq summary{cursor:pointer;font-size:18px;font-weight:650;color:#eee;min-height:44px;padding:10px 0}.cpt-faq details p{padding:10px 0 0;max-width:950px}.cpt-faq details>a{display:inline-block;min-height:44px;padding-top:12px}
#diagram-dialog{width:min(97vw,1500px);height:94dvh;max-width:none;max-height:96dvh;margin:auto;padding:16px;overflow:hidden;background:#181818;color:var(--ink);border:1px solid #737373;border-radius:12px}#diagram-dialog[open]{display:flex;flex-direction:column;gap:10px}#diagram-dialog::backdrop{background:#000d}.viewer-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.viewer-heading h2{font-size:20px;line-height:1.3;margin:0}.viewer-heading button,.viewer-toolbar button,.viewer-toolbar a{min-height:44px;min-width:44px;padding:8px 12px;background:#292929;border:1px solid #747474;border-radius:6px;color:#eee;font:650 14px 'Segoe UI',Arial,sans-serif;text-decoration:none}.viewer-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.viewer-toolbar a{display:inline-flex;align-items:center}.viewer-toolbar output{min-width:52px;text-align:center;font-size:13px}.viewer-help{font-size:12px;color:var(--muted);margin:0}#diagram-viewport{flex:1;min-height:0;overflow:auto;background:#111;touch-action:none;cursor:grab;overscroll-behavior:contain}#diagram-viewport:active{cursor:grabbing}#diagram-image{display:block;max-width:none;height:auto;user-select:none;-webkit-user-drag:none;pointer-events:none}body.cpt-dialog-open{overflow:hidden}
@media(max-width:800px){.product-landing-page main.product-content{width:calc(100% - 32px);padding-top:28px;gap:44px}.product-intro{grid-template-columns:1fr;gap:24px}.cpt-hero .product-hero-image img{height:auto;max-height:380px}.cpt-feature-grid{grid-template-columns:1fr;gap:18px}.cpt-feature-grid article{padding-top:18px}.cpt-doc{width:calc(100% - 32px);padding-top:20px}.cpt-doc section{margin-top:42px}.cpt-closing{flex-direction:column;align-items:flex-start;padding:24px;gap:22px}.cpt-closing>a{width:100%}.brand-detail{font-size:14px}.cpt-spec-strip{gap:16px}.cpt-spec-strip strong{font-size:21px}.cpt-spec-strip span{font-size:13px}.cpt-release{padding:24px}.product-footer{gap:14px}.product-footer nav{gap:4px 22px}}
@media(max-width:550px){.brand-detail{font-size:12px}.product-brand{font-size:15px;gap:7px}.product-brand img{width:27px;height:27px}.product-intro .product-lead{font-size:17px}.product-content h1{font-size:39px}.cpt-spec-strip{grid-template-columns:1fr;gap:17px;padding:23px 0}.cpt-spec-strip>div{flex-direction:row;align-items:baseline;gap:13px}.cpt-spec-strip strong{font-size:22px;min-width:147px}.cpt-spec-strip span{font-size:13px}.cpt-doc-intro>p:not(.eyebrow){font-size:17px}.cpt-doc-actions{gap:10px}.cpt-doc-actions>*{width:100%}.cpt-doc h1{font-size:38px}.cpt-note,.cpt-alert{padding:20px}.cpt-numbered-list>li{padding-left:40px}.cpt-release-facts>div{grid-template-columns:1fr;gap:6px}.cpt-release{padding:22px}.cpt-on-page{gap:3px 19px}.diagram-tools{gap:8px 17px}.diagram-tools>button{width:100%}.diagram-tools>a{font-size:13px}.product-footer div{font-size:12px}#diagram-dialog{width:100vw;height:100dvh;max-height:100dvh;max-width:100vw;border-radius:0;padding:10px}.viewer-heading h2{font-size:17px}.viewer-toolbar button,.viewer-toolbar a{font-size:12px;padding:8px}.viewer-toolbar{gap:6px}.viewer-help{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{body{background:#fff!important;color:#111!important}.product-header,.product-skip,.product-footer,.cpt-on-page,.cpt-doc-actions,.diagram-tools,#diagram-dialog{display:none!important}.cpt-doc{width:100%;padding:0;margin:0;font-size:10.5pt;line-height:1.55}.cpt-doc p,.cpt-doc li,.cpt-doc h1,.cpt-doc h2,.cpt-doc h3,.cpt-doc td,.cpt-doc th,.cpt-doc dt,.cpt-doc dd{color:#111!important}.cpt-doc section{margin-top:22px}.cpt-doc h1{font-size:29pt}.cpt-doc h2{font-size:22pt}.cpt-doc h3{font-size:15pt}.cpt-note,.cpt-release,.table-wrap{background:#fff;border-color:#999}.table-wrap{overflow:visible}.table-wrap table{min-width:0!important;font-size:9pt}.table-wrap th,.table-wrap td{padding:8px}.cpt-diagram{break-inside:avoid}.cpt-numbered-list>li{padding-bottom:14px;margin-bottom:14px}.cpt-feature-grid{grid-template-columns:1fr}.cpt-doc a{color:#244fa3!important}.cpt-doc code{background:#eee;color:#111}.cpt-release-facts>div{border-color:#999}.cpt-release-facts dd{color:#111}.cpt-note>strong{color:#111}}

/* Installer forms retain the shared account layout with neutral borders. */
.installer-panel{border-color:#4c4c4c}.firmware-email{border-color:#555;background:#191919}.firmware-email input[type=email],#licenceCode{border:1px solid #686868;border-radius:7px;background:#202020;color:#eee;padding:12px;font:inherit;max-width:100%;width:100%}.firmware-email #licenceCodePanel{max-width:420px}.firmware-email #licenceCodePanel button{margin-top:12px}.mode[aria-pressed=true]{border-color:#7f9aff;background:#1f2e55}.mode[aria-pressed=false]{background:#222;border-color:#555}.mode:disabled{opacity:.6}

/* Owner product photos retain alpha and their natural landscape framing. */
.cpt-hero .product-hero-image img{height:auto;min-height:0;padding:18px;background:#292929}
.cpt-photo img{padding:20px;background:#292929}

/* Related dive projects: local assets only; external sites load on click. */
.cpt-projects{padding:72px 0;border-top:1px solid #333}
.cpt-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}
.cpt-project-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #424242;border-radius:14px;background:#1b1b1b;color:#f3f3f3;text-decoration:none;transition:border-color .15s,background .15s}
.cpt-project-card:hover{border-color:#7799ef;background:#222}
.cpt-project-card:focus-visible{outline:3px solid #a8c4ff;outline-offset:4px}
.cpt-project-media{aspect-ratio:16/10;overflow:hidden;background:#141414;border-bottom:1px solid #333}
.cpt-project-media img{display:block;width:100%;height:100%;object-fit:contain;padding:20px;box-sizing:border-box}
.cpt-project-media-screen img{padding:16px}
.cpt-project-media-markers img{object-fit:cover;object-position:center 53%;padding:0}
.cpt-project-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:26px}
.cpt-project-copy .cpt-project-link{margin-top:auto}
.cpt-project-card .eyebrow{font-size:10px;letter-spacing:.12em;color:#b8b8b8;margin:0 0 8px}
.cpt-project-card h3{font-size:21px;line-height:1.2;margin:0 0 10px;color:#f3f3f3}
.cpt-project-card p:not(.eyebrow){font-size:15px;line-height:1.6;margin:0 0 18px;color:#c8c8c8}
.cpt-project-link{font-size:14px;font-weight:600;color:#a8c4ff}
@media(max-width:700px){.cpt-projects{padding:44px 0}.cpt-project-grid{grid-template-columns:1fr;gap:12px}.cpt-project-copy{padding:20px}.cpt-project-card h3{font-size:19px}}
@media(prefers-reduced-motion:reduce){.cpt-project-card{transition:none}}

.product-footer .cpt-withdraw-link,.site-footer .cpt-withdraw-link{font-weight:650;color:#f1f1f1;text-decoration:underline}

.cpt-model-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;margin:24px 0}.cpt-model-gallery figure{margin:0}.cpt-model-gallery img{width:100%;height:auto;display:block;border-radius:12px}.cpt-model-gallery figcaption{padding-top:8px;color:#bfbfbf;font-size:.875rem}

/* Builder journey: keep availability and optional choices readable in context. */
.product-content .cpt-availability,.cpt-doc .cpt-availability{padding:16px 18px;margin:20px 0 0;border-left:3px solid #7f9aff;background:#1b2235;color:#eee;font-size:14px;line-height:1.65}
.cpt-optional-emails>summary{cursor:pointer;min-height:44px;padding:8px 0;color:#eee;font-size:18px;font-weight:650}
.cpt-optional-emails[open]>summary{margin-bottom:18px}
.cpt-doc .mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cpt-doc .mode{padding:18px;text-align:left;white-space:normal;min-width:0}
.cpt-doc .mode-name,.cpt-doc .mode-detail{display:block}
.cpt-doc .mode-name{font-weight:750;line-height:1.4}
.cpt-doc .mode-detail{font-size:14px;line-height:1.5;margin-top:8px;color:#c8c8c8}
@media(max-width:550px){.cpt-doc .mode-grid{grid-template-columns:1fr}}
@media print{.product-content .cpt-availability,.cpt-doc .cpt-availability{background:#fff;color:#111;border-color:#777}.cpt-optional-emails{display:none}}

/* Keep each shopping-list item together on a phone while retaining table semantics. */
@media screen and (max-width:550px){
 .table-wrap .cpt-bom{min-width:0!important;display:block}
 .cpt-bom caption{display:block}
 .cpt-bom thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .cpt-bom tbody{display:block}
 .cpt-bom tbody tr{display:grid;grid-template-columns:48px minmax(0,1fr);padding:18px;border-bottom:1px solid #383838}
 .cpt-bom tbody tr:last-child{border-bottom:0}
 .cpt-bom td,.cpt-bom td:first-child,.cpt-bom td:nth-child(2){display:block;width:auto;min-width:0;padding:0;border:0;overflow-wrap:anywhere}
 .cpt-bom td:first-child{color:#a2bdff;font-weight:750}
 .cpt-bom td:last-child{grid-column:1/-1;padding-top:12px}
}

.cpt-doc p.cpt-note>strong{display:inline;font:inherit;font-weight:750;margin:0}
