.companion-intro{margin-top:26px;display:flex;flex-wrap:wrap;gap:8px}
.companion-intro a{display:inline-flex;align-items:center;gap:7px;padding:7px 12px 7px 7px;min-height:48px;border:1px solid #dce6f5;border-radius:30px;background:#f6f9ff;color:#26364d;font-size:12px;font-weight:750}
.companion-intro img{width:32px;height:32px;object-fit:contain}
.companion-intro a:hover{border-color:#2563f0;background:#eef3fe}
.companions{scroll-margin-top:90px}
.companions .companion-heading{max-width:710px}
.companions .companion-heading h2{font-size:clamp(30px,3.5vw,45px);line-height:1.25}
.companions .companion-heading>p:last-child{margin-top:18px;color:#5a6b82;font-size:18px}
.companion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:36px}
.companion-card{position:relative;overflow:hidden;border:1px solid #dce6f5;border-radius:26px;background:linear-gradient(155deg,#edf3ff,#fff 70%);padding:28px;scroll-margin-top:100px}
.companion-card:nth-child(2){background:linear-gradient(155deg,#e9f8fb,#fff 70%)}
.companion-card:nth-child(3){background:linear-gradient(155deg,#f1f5eb,#fff 70%)}
.companion-art{height:190px;display:flex;align-items:center;justify-content:center;position:relative;margin:8px 0 20px}
.companion-art::before{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:#fff9;border:1px solid #fff}
.companion-art img{position:relative;width:190px;height:180px;object-fit:contain;filter:drop-shadow(0 14px 16px #23426719)}
.companion-card .companion-label{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:#416185}
.companion-card h3{font-size:27px;line-height:1.3;margin:0 0 6px}
.companion-card h4{font-size:17px;line-height:1.5;margin:0 0 12px;color:#254566}
.companion-card p{font-size:15px;line-height:1.8;color:#53647a}
.companion-card ul{list-style:none;padding:16px 0 0;margin:18px 0 0;border-top:1px solid #dce6f5}
.companion-card li{font-size:13px;color:#254566;margin:7px 0;padding-left:17px;position:relative}
.companion-card li::before{content:"";width:5px;height:5px;border-radius:50%;background:#447eb8;position:absolute;left:0;top:.7em}
.companion-flow{margin-top:28px;padding:30px;border:1px solid #dce6f5;border-radius:24px;background:linear-gradient(120deg,#f0f6ff,#fff 62%,#faf6ec);color:#193556;display:flex;gap:28px;align-items:center;justify-content:space-between;box-shadow:0 8px 28px #23426708}
.companion-flow strong{display:block;font-size:18px;line-height:1.6}
.companion-flow p{color:#5a6b82;font-size:14px;margin-top:10px;max-width:740px}
.companion-flow a{flex-shrink:0;color:#1a4bc4;background:#fff;border:1px solid #cfdefb;border-radius:12px;font-size:14px;font-weight:750;text-decoration:none;padding:12px 18px;box-shadow:0 3px 10px #23426709}
.companion-flow a:hover{background:#eef3fe;border-color:#2563f0}
.companion-screen{margin:22px 0 0;padding-top:18px;border-top:1px solid #dce6f5}
.companion-screen summary{color:#1a4bc4;font-size:13px;font-weight:750;cursor:pointer;padding:8px 0;min-height:44px}
.companion-screen img{width:100%;max-width:230px;height:auto;margin:14px auto 0;border:5px solid #fff;border-radius:18px;box-shadow:0 10px 26px #23426714}
.device video,.player video{aspect-ratio:590/1150;object-fit:contain}
.current-tour{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;margin-top:28px}
.current-tour video{display:block;width:100%;max-width:310px;margin:auto;aspect-ratio:590/1150;border:7px solid #fff;border-radius:24px;box-shadow:0 16px 42px #23426720;background:#faf7f2}
.current-tour p{color:#5a6b82;line-height:1.8;margin:14px 0}
@media(max-width:700px){.current-tour{grid-template-columns:1fr}.companion-flow{padding:24px}.companion-flow strong{font-size:17px}}
.companion-note{font-size:13px;color:#64748b;margin-top:15px}
@media(max-width:900px){.companion-grid{gap:12px}.companion-card{padding:20px}.companion-card h3{font-size:23px}}
@media(max-width:700px){.companion-grid{grid-template-columns:1fr}.companion-card{padding:26px}.companion-art{height:150px;margin:0 0 18px}.companion-art img{height:150px;width:170px}.companion-art::before{height:140px;width:140px}.companion-flow{align-items:flex-start;flex-direction:column;gap:10px}.companion-intro{gap:6px}.companion-intro a{font-size:11px}}
@media(max-width:360px){.hdr .brand{gap:6px;font-size:13px}.hdr .brand img{width:32px;height:32px}.hdr .acct-btn{padding:8px;font-size:11px}.hdr .tier{display:none}.hdr .wrap{gap:6px}}
