
.review-section{padding:clamp(42px,6vw,92px) 0}.review-section h2{font-size:clamp(30px,3vw,50px);line-height:1.18;margin:10px 0 20px}.review-eyebrow{color:#14669f;font:bold 12px Arial;letter-spacing:.19em}.film-grid{display:grid;grid-template-columns:1fr 2fr;gap:6%;align-items:center}.film-grid p,.review-lead{color:#516779;line-height:1.8}.film-frame{background:#0a2d49;position:relative;overflow:hidden;aspect-ratio:16/9}.film-frame img,.film-frame video{width:100%;height:100%;object-fit:cover}.film-frame label{position:absolute;bottom:16px;left:16px;color:white;background:#0d3552e8;padding:12px 18px;cursor:pointer}.film-frame input{width:1px;height:1px;position:absolute;opacity:0}.film-frame:focus-within{outline:3px solid #1979ab}.partners{background:radial-gradient(ellipse at 92% 0%,#dcebf7,transparent 55%),linear-gradient(110deg,#f7f9fa,#edf3f7)}.partner-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:#dce5eb;border:1px solid #dce5eb}.partner-grid div{display:grid;place-items:center;background:#ffffffdf;height:96px;padding:18px}.partner-grid img{max-width:85%;max-height:50px;object-fit:contain}.partners summary{cursor:pointer;color:#155d90;padding:16px 0;font-weight:600}.tech-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.tech-cards a{display:block;border-top:2px solid #1563a0;padding:18px 0;font-size:20px;font-weight:600}.tech-cards img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;margin-bottom:18px}.review-section h3{margin-top:32px}.channel{display:block;border-bottom:1px solid #d4dfe8;padding:16px 0;color:#145582}.review-section p{max-width:72ch}@media(max-width:850px){.partner-grid{grid-template-columns:repeat(3,1fr)}.tech-cards,.film-grid{grid-template-columns:1fr}.partner-grid div{height:70px;padding:10px}.film-frame{margin-top:18px}}

.partners{background:#f1f6fa;position:relative;isolation:isolate;overflow:hidden;text-align:center}
.partners::before{content:"";position:absolute;z-index:-1;inset:0;background: url('partner-world.svg') center 30% / min(1100px,100%) auto no-repeat,radial-gradient(ellipse at 50% 30%,#fff,#eaf2f9);opacity:.93}
.partners h2{margin-bottom:clamp(80px,10vw,145px)}
.partners .partner-grid{background:transparent;border:0;gap:10px}
.partners .partner-grid div{background:rgba(255,255,255,.78);border:1px solid #d9e4ee;border-radius:4px}
.partners summary{display:list-item;width:fit-content;margin:12px auto}
@media(max-width:650px){.partners::before{background-position:center 35px,center}.partners h2{margin-bottom:65px}.partners .partner-grid{gap:5px}}

/* Compact partner signature wall: seven columns, five balanced rows. */
.review-section.partners{padding:clamp(32px,3.5vw,54px) 0;background:#f2f6fa}
.partners::before{background-size:min(880px,96%) auto,cover;background-position:center 48%,center;opacity:.24}
.partners .container{width:min(1020px,90%)}
.partners h2{font-size:clamp(25px,2.2vw,34px);margin:7px 0 clamp(18px,2vw,28px)}
.partners .review-eyebrow{font-size:10px;letter-spacing:.2em}
.partners .partner-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px 12px;padding:0;background:transparent;border:0}
.partners .partner-grid>div{height:43px;padding:5px 0;display:grid;place-items:center;background:transparent;border:0;border-radius:0}
.partners .partner-grid img{width:auto;height:auto;max-width:min(88%,98px);max-height:29px;object-fit:contain;mix-blend-mode:multiply}
@media(max-width:800px){.partners .partner-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:2px 8px}.partners .partner-grid>div{height:38px}.partners .partner-grid img{max-height:24px}}
@media(max-width:480px){.partners .container{width:94%}.partners .partner-grid{gap:2px 4px}.partners .partner-grid>div{height:32px}.partners .partner-grid img{max-width:92%;max-height:21px}}

@media(prefers-reduced-motion:no-preference){
  .partner-arrival{animation:partner-arrive .65s cubic-bezier(.2,.7,.3,1) var(--arrival,0ms) backwards}
  @keyframes partner-arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
  .partners::before{animation:partner-map-drift 14s ease-in-out infinite alternate}
  @keyframes partner-map-drift{from{transform:translateX(-.6%)}to{transform:translateX(.6%)}}
}

.film-play{position:absolute;bottom:16px;left:16px;padding:12px 18px;border:0;background:#103651ed;color:white;cursor:pointer;font:inherit}.film-frame video{object-fit:contain}
