/* TrigOne documentation and software gallery; existing editorial brand tokens. */
.trigone-software { padding: clamp(3rem,7vw,7rem) max(1rem,calc((100% - 1200px)/2)); background: var(--tp-soot,#222); color: var(--tp-bone-soft,#eee); }
.trigone-software h2 { font-size: clamp(2.4rem,5vw,4.8rem); line-height: 1.05; max-width: 17ch; margin: 1rem 0; }
.trigone-intro { font-size: clamp(1.1rem,2vw,1.4rem); line-height: 1.65; max-width: 65ch; }
.trigone-screens { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; margin-top:3rem; }
.trigone-screens figure { margin:0; min-width:0; }
.trigone-screens figure:first-child { grid-column:1 / -1; }
.trigone-screens img,.trigone-guide-shot img { display:block; width:100%; height:auto; border:1px solid #565952; border-radius:8px; }
.trigone-screens figcaption { display:grid; gap:.4rem; padding:1rem 0; line-height:1.5; }
.trigone-screens figcaption strong { font-size:1.25rem; color:var(--tp-moss-light,#bdcc9a); }
.trigone-caption { max-width:70ch; color:#bdc2b7; font-size:.95rem; line-height:1.6; }
.trigone-guide { max-width:1100px; margin:0 auto; padding:3rem 1.5rem 5rem; color:var(--tp-soot,#171814); }
.trigone-guide .trigone-guide-heading { position:static; display:block; padding:2rem 0 3rem; background:none; border:0; box-shadow:none; }
.trigone-guide h1 { font-size:clamp(2.4rem,5vw,4.8rem); max-width:20ch; line-height:1.1; letter-spacing:-.035em; }
.trigone-guide h2 { font-size:clamp(1.8rem,3vw,2.8rem); line-height:1.2; }
.trigone-guide h3 { font-size:1.4rem; }
.trigone-guide p,.trigone-guide li { line-height:1.75; max-width:80ch; }
.trigone-guide li { margin-bottom:.9rem; }
.trigone-guide-nav { display:flex; flex-wrap:wrap; gap:.6rem 1.2rem; padding:1.3rem 0; border-block:1px solid #63675c; }
.trigone-guide a { color:var(--tp-aubergine,#38243b); text-underline-offset:.2em; }
.trigone-guide a.tp-button-primary { color:var(--tp-bone-soft,#f2ede3); }
.trigone-guide a:focus-visible,.trigone-software a:focus-visible,.trigone-guide summary:focus-visible { outline:3px solid #d8b4f0; outline-offset:5px; }
.trigone-guide section { padding:3rem 0; border-bottom:1px solid #55594f; scroll-margin-top:7rem; }
.trigone-guide-shot { margin:2rem 0; }
.trigone-guide-shot figcaption { padding:.8rem 0; color:#50574a; font-size:.9rem; }
.trigone-note { border-left:3px solid #657d42; padding:1.3rem 1.5rem; background:#d9ddce; margin:2rem 0; }
.trigone-note p { margin-bottom:0; }
.trigone-guide details { border-bottom:1px solid #606658; padding:1rem 0; }
.trigone-guide summary { cursor:pointer; font-size:1.1rem; font-weight:600; line-height:1.55; }
.trigone-guide pre { overflow:auto; padding:1.2rem; background:#161a1d; color:#f2ede3; font-size:.9rem; }
.trigone-guide .trigone-guide-footer { padding:2rem 0 0; background:none; border:0; color:#50574a; font-size:.9rem; }
.trigone-shop-card { display:grid; grid-template-columns:minmax(200px,.6fr) 1fr; gap:2rem; max-width:1200px; margin:3rem auto; padding:2rem; background:#252b23; color:#f2ede3; border:1px solid #606958; }
.trigone-shop-card .tp-text-link { color:#c0d0a3; }
.shop-v2-index:has(a[href$="#shop-family-hardware"]) { grid-template-columns:repeat(5,minmax(0,1fr)); }
.trigone-shop-card img { width:100%; height:auto; }
.trigone-shop-card h2 { font-size:2.5rem; margin:0 0 1rem; }
.trigone-shop-card p { line-height:1.6; }
@media(max-width:700px) { .trigone-screens,.trigone-shop-card { grid-template-columns:1fr; } .trigone-guide { padding-inline:1rem; } .trigone-guide section { padding-block:2rem; } .trigone-shop-card { margin:2rem 1rem; padding:1.3rem; } }

@media(max-width:1000px) { .shop-v2-index:has(a[href$="#shop-family-hardware"]) { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:500px) { .shop-v2-index:has(a[href$="#shop-family-hardware"]) { grid-template-columns:1fr; } }

.trigone-shop-card,.trigone-software { scroll-margin-top:7rem; }
