.technical-site .tech-footer-v2 {
    padding-block: clamp(30px,4vw,56px) 0;
    background: var(--secondary);
    color: var(--on-secondary);
}
.tech-footer-top { display:flex; align-items:center; justify-content:space-between; gap:1rem 2rem; margin-bottom:clamp(23px,3.5vw,44px); }
.tech-footer-top p { color:inherit; opacity:.82; max-width:47ch; margin:.62rem 0 0; }
.tech-footer-top .tech-brand img { width:var(--footer-logo-width); max-height:var(--footer-logo-height); object-fit:contain; }
.tech-footer-logo-white { filter:brightness(0) invert(1); }
.tech-footer-actions { display:flex; align-items:center; flex-wrap:wrap; gap:.75rem 1rem; }
.tech-footer-actions svg { width:17px; height:17px; vertical-align:middle; }
.technical-site .tech-footer-actions .tech-button { background:var(--on-secondary); color:var(--secondary); }
.tech-footer-directory { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.2rem 1.8rem; }
.tech-footer-directory details { min-width:0; }
.tech-footer-directory summary { font-weight:750; margin-bottom:.65rem; list-style:none; }
.tech-footer-directory summary::-webkit-details-marker { display:none; }
.tech-footer-directory ul, .tech-footer-directory li { margin:0; padding:0; list-style:none; }
.tech-footer-directory li ul { padding-inline-start:.8rem; }
.tech-footer-directory li a { display:block; padding:.23rem 0; opacity:.8; overflow-wrap:anywhere; }
.tech-footer-directory li a:hover { opacity:1; }
.tech-footer-info { display:flex; flex-wrap:wrap; gap:1rem 1.6rem; margin-top:1.3rem; align-items:start; }
.tech-footer-info p { margin:0; }
.technical-site .tech-footer-v2 .tech-footer-bottom {
    margin-top:clamp(22px,3.6vw,40px);
    padding-block:14px;
    align-items:center;
    justify-content:space-between;
    font-size:.77rem;
    background:color-mix(in srgb,var(--on-secondary) 7%,var(--secondary));
    border-radius:10px 10px 0 0;
    padding-inline:14px;
}
.tech-footer-bottom > div { display:flex; flex-wrap:wrap; gap:.45rem 1rem; }
.tech-corporate-content, .tech-corporate-block.has-photo {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    align-items:center;
    gap:clamp(20px,4.7vw,62px);
}
.tech-corporate-content.has-photo, .tech-corporate-block.has-photo { grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); }
.tech-corporate-content figure { margin:0; }
.tech-corporate-content img, .tech-corporate-block img {
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:1.5;
    object-fit:cover;
    border-radius:var(--tech-radius);
}
.tech-corporate-content:not(.has-photo) { max-width:950px; }
.tech-corporate-content.is-legal { max-width:830px; }
.tech-corporate-copy, .tech-corporate-block .prose { color:var(--muted); line-height:1.8; font-size:clamp(.98rem,1.16vw,1.15rem); }
.tech-corporate-copy h2, .tech-corporate-block .prose h2 { color:var(--ink); margin:0 0 .7rem; }
.technical-site .tech-corporate-block { padding-top:0; }
.tech-corporate-related { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1.35rem; }
.tech-corporate-related a, .tech-media-nav a {
    display:inline-flex;
    align-items:center;
    gap:.45rem;
    padding:.64rem .85rem;
    border-radius:8px;
    background:var(--tech-surface);
    color:var(--ink);
    font-size:.84rem;
    font-weight:650;
}
.tech-corporate-related svg, .tech-media-open svg { width:15px; height:15px; }
.tech-contact-aside { min-width:0; background:var(--tech-surface); border-radius:var(--tech-radius); overflow:hidden; }
.tech-contact-photo { display:block; width:100%; height:auto; aspect-ratio:1.7; object-fit:cover; }
.tech-contact-aside-body { padding:clamp(18px,2.5vw,32px); }
.tech-contact-aside-body > p { margin:0 0 1rem; color:var(--muted); }
.tech-contact-methods { display:grid; gap:.45rem; margin:0 0 1rem; }
.tech-contact-methods > div { display:grid; grid-template-columns:36px 1fr; column-gap:.65rem; padding:.62rem .7rem; background:var(--paper); border-radius:8px; }
.tech-contact-methods span { grid-row:span 2; align-self:center; text-align:center; }
.tech-contact-methods svg { width:17px; height:17px; }
.tech-contact-methods dt { font-size:.78rem; font-weight:700; }
.tech-contact-methods dd { margin:0; font-size:.92rem; overflow-wrap:anywhere; }
.technical-site .tech-contact-aside .tech-button.tech-outline { background:var(--paper); }
.tech-media-nav { display:flex; flex-wrap:wrap; gap:.5rem; margin-bottom:1.4rem; }
.technical-site .tech-media-nav a[aria-current="page"] { background:var(--secondary); color:var(--on-secondary); }
.tech-media-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(16px,2.4vw,30px); }
.tech-media-grid:has(.tech-media-tile:only-child) { grid-template-columns:minmax(0,850px); }
.tech-media-grid.is-video { grid-template-columns:repeat(2,minmax(0,1fr)); }
.tech-media-grid.is-video:has(.tech-media-tile:only-child) { grid-template-columns:minmax(0,850px); }
.tech-media-image {
    display:block;
    position:relative;
    overflow:hidden;
    aspect-ratio:1.65;
    border-radius:var(--tech-radius);
    background:var(--tech-surface);
}
.tech-media-image img { width:100%; height:100%; object-fit:cover; }
.tech-media-play {
    position:absolute;
    inset:50% auto auto 50%;
    translate:-50% -50%;
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#171b24be;
    color:#fff;
}
.tech-media-caption { display:flex; flex-wrap:wrap; align-items:start; justify-content:space-between; gap:.65rem 1rem; padding-block:1rem .4rem; }
.technical-site .tech-media-caption h2 { font-size:clamp(1.2rem,1.8vw,1.75rem); }
.tech-media-caption p { color:var(--muted); margin:.4rem 0 0; }
.technical-site .tech-media-open { display:inline-flex; align-items:center; gap:.45rem; color:var(--primary); font-size:.85rem; font-weight:750; }
.tech-media-detail { display:grid; gap:1.3rem; justify-items:start; }
.tech-media-player { width:min(100%,960px); background:var(--tech-surface); border-radius:var(--tech-radius); overflow:hidden; }
.tech-media-player iframe, .tech-media-player video { display:block; width:100%; aspect-ratio:16/9; }
.tech-album-grid { display:grid; width:100%; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.tech-album-grid a:first-child { grid-column:span 2; grid-row:span 2; }
.tech-album-grid a { overflow:hidden; border-radius:10px; background:var(--tech-surface); }
.tech-album-grid img { display:block; width:100%; height:100%; min-height:0; object-fit:cover; aspect-ratio:1.46; }
.tech-media-detail .prose { max-width:70ch; color:var(--muted); }

.technical-site #main .tech-service-hub .tech-device-card { background:var(--paper); }
.technical-site .tech-service-hub .tech-device-card .tech-card-image { aspect-ratio:1.55; border-radius:14px; }
.technical-site .tech-service-hub .tech-device-card .tech-card-copy { padding:15px 0 0; }
.technical-site .tech-service-hub .tech-device-card-actions { padding-top:.35rem; }
.technical-site .tech-list-layout[data-type="services"] .tech-device-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
.technical-site #main .tech-list-layout[data-type="services"] .tech-device-card:has(.tech-card-image) {
    display:grid;
    grid-template-columns:minmax(118px,.72fr) minmax(0,1fr);
    min-height:186px;
}
.technical-site .tech-list-layout[data-type="services"] .tech-device-card .tech-card-image {
    min-height:100%;
    aspect-ratio:auto;
    position:relative;
}
.technical-site .tech-list-layout[data-type="services"] .tech-device-card .tech-card-image img { position:absolute; inset:0; }
.technical-site .tech-list-layout[data-type="services"] .tech-device-card .tech-card-copy { padding:clamp(14px,1.6vw,24px); }
.technical-site .tech-list-layout[data-type="services"] .tech-device-card-actions { gap:.35rem .7rem; }
@media(max-width:1000px) {
    .tech-footer-directory { gap:1rem; }
    .tech-media-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:680px) {
    .tech-footer-top { align-items:start; flex-direction:column; }
    .tech-footer-directory { grid-template-columns:1fr; gap:.4rem; }
    .tech-footer-directory details, .tech-footer-group-link { background:color-mix(in srgb,var(--on-secondary) 8%,var(--secondary)); border-radius:8px; }
    .tech-footer-directory summary { margin:0; padding:.68rem .8rem; display:flex; align-items:center; justify-content:space-between; cursor:pointer; }
    .tech-footer-directory summary::after { content:'+'; }
    .tech-footer-directory details[open] summary::after { content:'−'; }
    .tech-footer-directory details > ul { padding:0 .8rem .65rem; }
    .tech-footer-directory li a, .tech-footer-group-link { padding:.45rem .2rem; }
    .tech-corporate-content.has-photo, .tech-corporate-block.has-photo, .tech-media-grid, .tech-media-grid.is-video { grid-template-columns:1fr; }
    .tech-album-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
    .tech-album-grid a:first-child { grid-row:auto; }
    .technical-site .tech-list-layout[data-type="services"] .tech-device-cards { grid-template-columns:1fr; }
    .technical-site #main .tech-list-layout[data-type="services"] .tech-device-card:has(.tech-card-image) { grid-template-columns:minmax(91px,.65fr) minmax(0,1fr); }
}

@media(max-width:680px) {
    .tech-contact-photo { aspect-ratio:2.3; }
    .technical-site .tech-footer-v2 .tech-footer-bottom { gap:.8rem; align-items:flex-start; }
    .tech-footer-group-link { display:block; padding:.68rem .8rem; }
}