/* Scoped terminal-box catalogue styles */
.terminal-box-hero { padding-bottom: 4rem; }
.tb-section { padding: 4rem 0; }
.tb-section h2 { margin: .5rem 0 1.2rem; }
.tb-intro { max-width: 800px; line-height: 1.7; margin-bottom: 2rem; }
.tb-orientations { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.4rem; }
.tb-orientation { border:1px solid #dfe3e6; border-radius:10px; background:#fff; padding:1.5rem; text-align:center; }
.tb-orientation img { display:block; width:auto; max-width:100%; height:auto; max-height:130px; object-fit:contain; margin:0 auto 1rem; }
.tb-orientation h3 { margin:.4rem 0; }.tb-orientation h3 span { color:#68737b; font-size:.8em; }
.tb-orientation p { line-height:1.6; }
.tb-range { background:#f5f6f7; }
.tb-products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.3rem; }
.tb-product { background:white; border:1px solid #e0e4e7; border-radius:10px; overflow:hidden; }
.tb-photo { height:185px; display:flex; align-items:center; justify-content:center; background:#fff; padding:1rem; }
.tb-photo img { max-width:100%; max-height:100%; object-fit:contain; }
.tb-product-content { padding:1.1rem 1.3rem 1.4rem; }
.tb-product h3 { font-size:1.05rem; overflow-wrap:anywhere; margin:0 0 1rem; }
.tb-product dl { margin:0; }.tb-product dl>div { display:flex; justify-content:space-between; gap:1rem; border-top:1px solid #e7eaec; padding:.55rem 0; }
.tb-product dt { color:#56636d; }.tb-product dd { margin:0; text-align:right; font-weight:600; }.tb-product dd small { display:block; font-weight:400; font-size:.8rem; }
.tb-custom-note { margin:2rem 0 0; padding:1.2rem 1.5rem; background:white; border-left:4px solid var(--red, #de002e); line-height:1.7; }

@media(max-width:850px) { .tb-products {grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(max-width:600px) { .tb-orientations,.tb-products {grid-template-columns:1fr;} .tb-section {padding:2.5rem 0;} }

/* Terminal box links: use the website's existing .button.button-primary styling. */
.tb-link { margin: 1.25rem 0; }
.tb-link .button { text-decoration: none; }
.tb-link .button:hover { text-decoration: none; }
.tb-link .button:focus-visible { outline: 3px solid #202020; outline-offset: 3px; }
@media (max-width: 600px) { .tb-link .button { max-width: 100%; box-sizing: border-box; } }
