.plus-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:8px 0 22px}.plus-head h1{font-size:clamp(30px,5vw,48px);margin:8px 0}.plus-head p{color:#b8b8bc;max-width:620px}.plus-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;margin:16px 0}.plus-settings>label,.plus-signups label,.plus-logo-form label{display:grid;gap:7px;color:#d5d5d8;font-size:13px}.plus-settings input,.plus-settings select,.signup-row textarea,.roster-import textarea,.code-editor,.form input[type=file]{border:1px solid #55565a;border-radius:10px;background:#151516;color:#f6f6f7;padding:11px 13px;min-height:44px}.plus-toggle{display:flex!important;align-items:center;gap:10px;min-height:42px}.plus-toggle input,.checkrow input{accent-color:#c62832;width:18px;height:18px}.plus-tools,.signup-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.plus-list{margin-top:18px}.plus-signups{display:grid;gap:10px;margin-top:16px}.signup-row,.session-card{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:16px;border:1px solid #37373a;border-radius:14px;background:#131314}.signup-row[hidden]{display:none}.signup-main{display:grid;gap:6px;min-width:0;flex:1}.signup-main a{color:#e9e9ea;overflow-wrap:anywhere}.signup-main small{color:#aaaab0}.signup-main textarea{width:100%;min-height:62px;resize:vertical}.signup-actions{align-items:flex-start}.signup-actions select,.plus-editor-tabs button,.session-edit summary{background:#202022;color:#f5f5f5;border:1px solid #56565b;border-radius:9px;padding:9px 12px;min-height:40px}.btn.danger{background:#233b49;color:#fff;border:1px solid #b83a45}.session-groups{display:grid;gap:16px;margin:20px 0}.session-group h2{margin:2px 0 14px}.session-card{display:block;margin:12px 0}.session-card h3{margin:8px 0}.session-edit{margin-top:12px}.session-edit summary{cursor:pointer}.session-edit form{margin-top:12px}.session-edit .checklist{border:1px solid #414145;border-radius:10px;padding:12px}.session-recap-actions{margin-top:10px}.student-recaps{margin:22px 0}.recap-card{border-top:1px solid #39393d;padding:13px 0}.recap-card summary{cursor:pointer;color:#fff}.plus-editor-tabs{display:flex;gap:8px;overflow:auto;padding:4px 0 14px}.plus-editor-tabs button[aria-selected=true]{background:#a91f28;border-color:#c62832;color:#fff}.code-editor,.roster-import textarea{display:block;width:100%;min-height:330px;margin:10px 0 15px;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;resize:vertical}.roster-import{margin-top:24px;border-top:1px solid #39393d;padding-top:16px}.roster-import summary{cursor:pointer;font-weight:700}.roster-import pre{white-space:pre-wrap;color:#d4d4d7}.partner-thumb{width:70px;height:52px;object-fit:contain;background:#222;border-radius:8px;padding:5px}.partner-marquee{overflow:hidden;margin:70px auto 40px;padding:30px 0;border-top:1px solid #39393d;border-bottom:1px solid #39393d}.partner-marquee>.eyebrow{text-align:center;margin-bottom:25px}.partner-track{display:flex;align-items:center;width:max-content;animation:partner-scroll var(--marquee-speed,32s) linear infinite}.partner-track a{display:grid;place-items:center;width:180px;height:75px;margin:0 26px}.partner-track img{max-width:140px;max-height:55px;filter:grayscale(1);opacity:.7;transition:filter .2s,opacity .2s}.partner-track a:hover img{filter:none;opacity:1}.partner-marquee:hover .partner-track{animation-play-state:paused}@keyframes partner-scroll{to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.partner-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}.partner-track a:nth-child(n+4){display:none}}
#open-decks-widget{position:fixed;z-index:1000;right:0;top:35%;font-family:inherit;color:#f7f7f8}#open-decks-widget .open-decks-tab{writing-mode:vertical-rl;transform:rotate(180deg);border:1px solid #d14851;border-radius:10px 0 0 10px;background:#c62832;color:#fff;padding:16px 11px;font-weight:800;letter-spacing:.04em;box-shadow:0 8px 28px #0008;cursor:pointer;min-height:130px}#open-decks-widget .open-decks-panel{position:fixed;right:16px;top:16px;box-sizing:border-box;height:min(760px,calc(100dvh - 32px));width:min(380px,calc(100vw - 32px));overflow:auto;background:#181819;border:1px solid #4b4b50;border-radius:18px;box-shadow:-18px 0 50px #0008;padding:28px 22px 30px;animation:slide-in .2s ease-out}#open-decks-widget .open-decks-panel[hidden]{display:none}@keyframes slide-in{from{transform:translateX(30px);opacity:.65}to{transform:none;opacity:1}}#open-decks-widget h2{font-size:28px;margin:12px 0}#open-decks-widget p{color:#c4c4c8;line-height:1.55}#open-decks-widget form{display:grid;gap:11px}#open-decks-widget form>label:not(.checkrow):not(.hp-field){display:grid;gap:6px;font-size:12px;color:#ddd}#open-decks-widget input:not([type=checkbox]),#open-decks-widget select{width:100%;height:43px;background:#101011;color:#fff;border:1px solid #66666b;border-radius:8px;padding:9px}#open-decks-widget .checkrow{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.5;color:#ececef}#open-decks-widget .checkrow input{flex:none}#open-decks-widget .hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}#open-decks-widget .open-decks-close{position:absolute;right:15px;top:13px;background:transparent;color:#fff;border:1px solid #555;border-radius:50%;width:37px;height:37px;font-size:23px;cursor:pointer}#open-decks-widget .formerror{color:#ff949c}#open-decks-widget .open-decks-success{font-size:20px;border-left:3px solid #c62832;padding:16px;background:#242426}@media(max-width:650px){.plus-settings{grid-template-columns:1fr}.signup-row{display:grid}.signup-actions{width:100%}.signup-actions select{flex:1}.plus-head{align-items:flex-start;flex-direction:column}.plus-editor-tabs{margin-right:-12px}.partner-track a{width:130px;margin:0 14px}#open-decks-widget{top:28%;right:0}#open-decks-widget .open-decks-tab{min-height:115px;padding:13px 9px}#open-decks-widget .open-decks-panel{width:calc(100vw - 24px);right:12px;top:auto;bottom:12px;height:min(82dvh,680px);max-height:calc(100dvh - 24px)}}
.session-lookup{margin:14px 0}.session-lookup>label{display:grid;gap:8px;max-width:560px}.session-lookup input,.session-student-results .search{background:#171718;border:1px solid #55565a;border-radius:10px;color:#fff;padding:12px;min-height:44px}.session-card[hidden],.session-group[hidden],[data-student-book][hidden]{display:none}.session-student-results{display:grid;gap:8px;max-height:55vh;overflow:auto;margin-top:18px}.session-student-result{display:grid;gap:4px;text-align:left;background:#19191a;border:1px solid #414145;border-radius:10px;color:#f5f5f5;padding:12px;cursor:pointer}.session-student-result:hover{border-color:#d84b58}.session-student-result small{color:#aaa}

/* Stable transform compositor keeps the partner strip smooth after home navigation. */
.partner-track{gap:0;will-change:transform;transform:translate3d(0,0,0);backface-visibility:hidden;contain:layout paint}
.partner-loop{display:flex;align-items:center;flex:none;gap:0}
.partner-loop>a,.partner-loop>span{display:grid;place-items:center;width:190px;height:78px;margin:0 12px;padding:10px 18px}
.partner-loop img{display:block;width:100%;height:100%;max-width:160px;max-height:58px;object-fit:contain}
.partner-marquee:hover .partner-track,.partner-marquee:focus-within .partner-track{animation-play-state:running}
@keyframes partner-scroll{to{transform:translate3d(-50%,0,0)}}
@media(max-width:650px){.partner-loop>a,.partner-loop>span{width:150px;height:66px;margin:0 7px;padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.partner-track{animation:none!important;transform:none!important;will-change:auto}.partner-loop[aria-hidden=true]{display:none}.partner-track a:nth-child(n+4){display:none}}

/* Keep partner marks in color; the images carry their own backgrounds where needed. */
.partner-track{animation-duration:var(--marquee-speed,24s);animation-timing-function:linear;animation-iteration-count:infinite;will-change:transform;transform:translate3d(0,0,0)}
.partner-track img{filter:none!important;opacity:1!important}
.partner-loop>a,.partner-loop>span{background:#f3f3f4;border-color:#77777b;box-shadow:0 8px 22px #0006;transition:transform .18s,border-color .18s,box-shadow .18s}
.partner-loop>a:hover,.partner-loop>a:focus-visible{transform:translateY(-3px);border-color:#e04450;box-shadow:0 10px 26px #0008,0 0 0 2px #c6283233}
.partner-loop .partner-mark-ivanson,.partner-loop .partner-mark-dj-uzo{background:#171719;border-radius:7px;padding:5px}
.partner-loop .partner-mark-bw-arts{background:#f3f3f4;border-radius:7px;padding:4px}
.partner-marquee{max-width:1360px;margin:38px auto 24px;padding:17px clamp(18px,4vw,48px) 18px;background:linear-gradient(100deg,#171718,#202021 50%,#171718)}
.partner-marquee-heading{max-width:1180px;margin:0 auto 8px}
.partner-marquee>.eyebrow{font-size:12px;letter-spacing:1.7px}
.partner-viewport{max-width:1180px;padding:2px 2px 8px;scrollbar-width:none}
.partner-viewport::-webkit-scrollbar{display:none}
.partner-loop{gap:12px;padding-right:12px}
.partner-loop>a,.partner-loop>span{flex:0 0 clamp(132px,15vw,178px);width:clamp(132px,15vw,178px);height:66px;margin:0;padding:4px 8px;border:1px solid transparent;border-radius:8px;background:transparent;box-shadow:none;transition:transform .18s,border-color .18s,background-color .18s}
.partner-track img{max-width:158px;max-height:48px;object-fit:contain;filter:none!important;opacity:1!important}
.partner-loop>a:hover,.partner-loop>a:focus-visible{transform:translateY(-2px);border-color:#55555a;background:#252527;box-shadow:none}
.partner-loop .partner-mark-ivanson,.partner-loop .partner-mark-dj-uzo,.partner-loop .partner-mark-tao-dj,.partner-loop .partner-mark-bw-arts{background:transparent;border-radius:0;padding:0}
.partner-image-fallback{color:#f4f4f4}
.partner-marquee:hover .partner-track,.partner-marquee:focus-within .partner-track{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.partner-track{animation:none!important;transform:none!important;will-change:auto}.partner-track>a:hover,.partner-track>a:focus-visible{transform:none}}
.session-edit .checklist{display:grid;gap:10px}.session-edit .session-skill-context{margin:2px 0 6px;line-height:1.55}.session-edit .checklist label{padding:8px 10px;border:1px solid #39393d;border-radius:8px;background:#19191b}.session-edit .checklist input:disabled{opacity:.5}.session-skill-lock{padding:9px 11px;border-left:3px solid #c62832;background:#241719}

/* Keep each session in its activity-day log and make its next action obvious. */
.session-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.session-card-header>div:first-child{min-width:0}.session-status{display:inline-flex;margin-top:3px}.session-status--checked-in{background:#174b38;border:1px solid #348662;color:#a7f0cb}.session-status--completed{background:#1a4938;border:1px solid #348662;color:#a7f0cb}.session-status--scheduled{background:#28323c;border:1px solid #526678;color:#c9e7ff}.session-status--needs-attendance,.session-status--no-show{background:#4a3512;border:1px solid #92702b;color:#ffe39b}.session-card .signup-actions [data-plus-action="session-action"][data-action-type="checkin"]{background:#1d6248;border-color:#3f9a72;color:#fff}.session-card .signup-actions [data-plus-action="session-action"][data-action-type="end"]{background:#b8202c;border-color:#ea5661;color:#fff}.session-card .signup-actions [data-plus-action="session-action"][data-action-type="undo"]{background:#59410f;border-color:#96752b;color:#fff}.session-card .signup-actions [data-plus-action="session-action"]:hover{filter:brightness(1.14)}.session-card .signup-actions [data-plus-action="session-action"]:focus-visible,.session-edit summary:focus-visible,.session-history>summary:focus-visible{outline:3px solid #ff8794;outline-offset:3px}.session-card .signup-actions [data-plus-action="session-action"]:disabled{opacity:.65;cursor:wait}.session-group--today{border-color:#535359}.session-group--today>.rowbetween p{margin:5px 0 0;max-width:720px}.session-history{margin:18px 0;border:1px solid #38383c;border-radius:14px;background:#171718;padding:17px}.session-history>summary{cursor:pointer;font-size:18px;font-weight:700}.session-history-list{margin-top:12px}.session-history .session-card{background:#111112}.session-edit .session-skill-lock{margin:4px 0;padding:10px 12px;border-left:3px solid #d8434e;background:#2d1b1d}.session-search-empty[hidden]{display:none}
@media(max-width:680px){.session-card-header{display:grid}.session-card-header .signup-actions{width:100%}.session-card-header .signup-actions .btn{flex:1;min-width:120px}.session-history{padding:13px}.session-card{padding:13px}}
@media(max-width:650px){.partner-marquee{margin:28px 0 18px;padding:16px 16px 12px}.partner-loop{gap:8px;padding-right:8px}.partner-loop>a,.partner-loop>span{flex-basis:132px;width:132px;height:58px;margin:0;padding:4px}.partner-track img{max-width:118px;max-height:42px}}

/* Educator session work states: distinct, consistent color cues with readable labels. */
.session-key{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 22px;padding:12px 14px;border:1px solid #414147;border-radius:14px;background:#171719}.session-key-item,.session-task-tag{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid;border-radius:999px;font-size:13px;font-weight:700;line-height:1.25}.session-key-item:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 18%,transparent)}.session-labels{display:flex;flex-wrap:wrap;gap:7px;margin-top:5px}.session-card{border-left:4px solid transparent;transition:background-color .18s ease,border-color .18s ease}.session-task--upcoming{background:#17232d;border-color:#3b6686;border-left-color:#64b8ed}.session-task-tag--upcoming{background:#20394b;border-color:#4c82aa;color:#bde4ff}.session-task--live{background:#16271f;border-color:#347a56;border-left-color:#43d18a}.session-task-tag--live{background:#194632;border-color:#378c61;color:#b8f4d1}.session-task--recap{background:#2a2419;border-color:#806337;border-left-color:#ffc15f}.session-task-tag--recap{background:#493719;border-color:#a27a32;color:#ffe2a8}.session-task--sent{background:#17282a;border-color:#39777b;border-left-color:#50cbd0}.session-task-tag--sent{background:#1c3c3f;border-color:#428b90;color:#baf3f0}.session-task--followup{background:#2b1c20;border-color:#81434d;border-left-color:#ed6978}.session-task-tag--followup{background:#48242b;border-color:#a14b5b;color:#ffd0d5}.session-group{border-width:1px;border-left:5px solid transparent}.session-group--today{background:#171d1a;border-color:#385f4a;border-left-color:#43d18a}.session-group--followup{background:#21191b;border-color:#674047;border-left-color:#ed6978}.session-group--upcoming{background:#171c22;border-color:#3d566d;border-left-color:#64b8ed}.session-group--history{background:#191922;border-color:#4c4b69;border-left-color:#9694d4}.session-group>.rowbetween h2{letter-spacing:-.02em}.session-group--today>.rowbetween h2{color:#b8f4d1}.session-group--followup>.rowbetween h2{color:#ffd0d5}.session-group--upcoming>.rowbetween h2{color:#bde4ff}.session-group--history>summary{color:#c4c3eb}.session-group--today>.rowbetween>.tag{background:#194632;border-color:#378c61;color:#b8f4d1}.session-group--followup>.rowbetween>.tag{background:#48242b;border-color:#a14b5b;color:#ffd0d5}.session-group--upcoming>.rowbetween>.tag{background:#20394b;border-color:#4c82aa;color:#bde4ff}.session-group--history>summary:after{content:" · archived";font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#aaa9cb}.session-history .session-task--live{filter:saturate(.78)}@media(max-width:700px){.session-key{gap:7px;padding:10px}.session-key-item{font-size:12px}.session-group{padding:16px!important}.session-labels{gap:5px}.session-task-tag{font-size:12px}}

/* Session lookup: keep the field, clear action, and status legible at every width. */
.session-lookup>label{max-width:none;font-weight:700}.session-search-controls{display:flex;align-items:center;gap:10px;max-width:760px}.session-search-controls input{width:100%;min-width:0;flex:1}.session-search-controls [hidden]{display:none!important}.session-search-hint{margin:9px 0 0}.session-search-count{margin:5px 0 0;color:#c9e7ff}.session-search-empty{margin:14px 0;padding:14px 16px;border-left:3px solid #63b6e8;background:#18232b;color:#d9efff;border-radius:0 10px 10px 0}
@media(max-width:650px){.session-search-controls{align-items:stretch;flex-direction:column}.session-search-controls .btn{align-self:flex-start}.session-lookup .micro{line-height:1.55}}
/* Keep all supplied partner marks legible and cohesive on the charcoal strip. */
.partner-marquee .partner-loop>a,.partner-marquee .partner-loop>span{background:#19191b;border-color:#45454a;box-shadow:0 5px 18px #0005}
.partner-marquee .partner-mark-the-art-of-dj,.partner-marquee .partner-mark-ivanson{background:transparent!important;padding:0!important}

/* Keep the original marks legible without oversized white panels. */
.partner-marquee .partner-loop>a,.partner-marquee .partner-loop>span{overflow:hidden}
.partner-marquee .partner-loop>a:has(>.partner-mark-bw-arts),.partner-marquee .partner-loop>span:has(>.partner-mark-bw-arts){background:#f3f3f4;border-color:#d4d4d7}
/* Keep Open Decks visible and legible beside the fixed Booth helper on phones. */
@media(max-width:650px){#open-decks-widget{top:auto!important;right:auto!important;bottom:calc(16px + env(safe-area-inset-bottom))!important;left:14px!important}#open-decks-widget .open-decks-tab{writing-mode:horizontal-tb!important;transform:none!important;min-height:44px!important;padding:11px 16px!important;border-radius:999px!important;font-size:13px!important;box-shadow:0 6px 22px #0009}#open-decks-widget .open-decks-panel{width:calc(100vw - 24px)!important;right:12px!important;top:auto!important;bottom:12px!important;height:min(82dvh,680px)!important;max-height:calc(100dvh - 24px)!important}}

@media(min-width:651px){#open-decks-widget .open-decks-tab{box-sizing:border-box;width:52px;min-height:156px;padding:14px 8px;border-radius:10px 0 0 10px;font-size:14px;letter-spacing:.02em;display:flex;align-items:center;justify-content:center}}

/* Opening the mobile sign-up panel must not summon the keyboard or trigger iOS zoom. */
#open-decks-widget .open-decks-panel{overscroll-behavior:contain;transform-origin:bottom right}
#open-decks-widget .open-decks-panel[hidden]{display:none}
@media(max-width:650px){#open-decks-widget .open-decks-panel{left:12px;right:12px;width:auto;max-width:calc(100vw - 24px);box-sizing:border-box}#open-decks-widget input:not([type=checkbox]),#open-decks-widget select{font-size:16px;min-width:0}}

/* The hero already has an Open Decks action; avoid covering the instructor image with a second fixed button. */
@media(max-width:650px){#open-decks-widget.hero-visible .open-decks-tab{visibility:hidden;pointer-events:none}}

/* Keep the phone footer balanced; floating launchers hide while this area is in view. */
@media(max-width:650px){
 .sitefooter{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"brand brand" "information contact";align-items:start;justify-content:stretch;gap:22px 20px;padding:28px clamp(18px,5vw,24px) calc(28px + env(safe-area-inset-bottom));line-height:1.5}
 .sitefooter-brand{grid-area:brand;width:100%;gap:5px}
 .sitefooter-brand .logo{width:148px;margin:0 auto}
 .sitefooter-policies,.sitefooter-contact{width:100%;min-width:0;gap:8px;align-items:flex-start;text-align:left}
 .sitefooter-policies{grid-area:information}
 .sitefooter-contact{grid-area:contact}
 .sitefooter-policies .eyebrow,.sitefooter-contact .eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:2px}
 .sitefooter-policies a,.sitefooter-policies .textbtn,.sitefooter-contact a{min-height:38px;display:flex;align-items:center;justify-content:flex-start;text-align:left;font-size:12px;line-height:1.4;overflow-wrap:anywhere}
 .sitefooter .footer-motion{margin:4px 0 0;min-height:38px}
 #open-decks-widget .open-decks-panel{overscroll-behavior:contain;scrollbar-gutter:stable}
 #open-decks-widget input:not([type=checkbox]),#open-decks-widget select{-webkit-text-size-adjust:100%;font-size:16px!important}
}

@media(max-width:380px){
 .sitefooter{grid-template-columns:minmax(0,1fr);grid-template-areas:"brand" "information" "contact";gap:18px;padding-inline:22px}
 .sitefooter-policies,.sitefooter-contact{width:100%}
 .sitefooter-policies a,.sitefooter-policies .textbtn,.sitefooter-contact a{min-height:40px}
}

/* Keep the two edge tabs separate when a phone or short tablet is in landscape. */
@media (min-width:651px) and (max-height:520px){
 #open-decks-widget{top:clamp(12px,calc(50dvh - 116px),calc(100dvh - 224px))}
 #open-decks-widget .open-decks-tab{min-height:100px}
 #open-decks-widget .open-decks-panel{right:calc(70px + env(safe-area-inset-right));width:min(380px,calc(100vw - 102px))}
 #open-decks-widget input:not([type=checkbox]),#open-decks-widget select{font-size:16px!important}
 #dj-assistant-launch{top:clamp(124px,calc(50dvh + 16px),calc(100dvh - 112px));height:100px;min-height:100px}
 #dj-assistant-panel{right:calc(70px + env(safe-area-inset-right));max-width:calc(100vw - 102px)}
 #dj-assistant-panel .booth-composer textarea{font-size:16px!important}
}
html,body{-webkit-text-size-adjust:100%}
body.open-decks-open{overflow:hidden}

/* Keep the partner strip centered and prevent a single uploaded mark from
   overpowering or clipping its card. Align the desktop footer columns on one
   shared top edge while leaving the established mobile layout intact. */
.partner-marquee{box-sizing:border-box;width:min(100%,1360px);margin-inline:auto}
.partner-marquee-heading,.partner-viewport{box-sizing:border-box;width:min(100%,1180px);margin-inline:auto}
.partner-marquee .partner-mark-the-art-of-dj{transform:none!important}
@media(min-width:701px){
 .sitefooter{grid-template-columns:minmax(0,1fr) minmax(205px,1fr) minmax(0,1fr);align-items:start}
 .sitefooter>.sitefooter-policies,.sitefooter>.sitefooter-contact{align-self:start;align-content:start;min-height:0;margin:0;padding:0}
 .sitefooter>.sitefooter-brand{align-self:start;min-height:0;margin:0;padding:0}
}

/* Give the partner manager enough room for every action on iPad portrait. */
.partner-logo-row{display:grid;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:12px}
.partner-logo-copy{min-width:0;overflow-wrap:anywhere}
.partner-edit-preview{display:block;width:min(100%,300px);height:150px;object-fit:contain;background:#161617;border:1px solid #414146;border-radius:12px;padding:14px;margin:4px 0 10px}
@media(max-width:900px){
 .plus-settings{grid-template-columns:minmax(0,1fr)}
 .partner-logo-row{grid-template-columns:58px minmax(0,1fr)}
 .partner-logo-row>.plus-toggle,.partner-logo-row>.btn{grid-column:1/-1}
 .partner-logo-row>.btn{width:100%;white-space:normal}
 .partner-logo-row .partner-thumb{width:58px;height:48px}
}
@media(max-width:650px){
 .plus-settings input,.plus-settings select,.plus-settings textarea,.form input,.form select,.form textarea{font-size:16px!important}
}

/* Larger partner sets must overflow their viewport so the arrow and touch
   scrolling controls can reach every logo. Compact sets use the fit layout. */
.partner-marquee .partner-track:not(.partner-track-fit){width:max-content;min-width:max-content;contain:none}
.partner-marquee .partner-loop:not(.partner-loop-fit)>a,
.partner-marquee .partner-loop:not(.partner-loop-fit)>span{flex:0 0 210px;width:210px}
@media(max-width:650px){
 .partner-marquee .partner-loop:not(.partner-loop-fit)>a,
 .partner-marquee .partner-loop:not(.partner-loop-fit)>span{flex-basis:174px;width:174px}
}
@media(prefers-reduced-motion:reduce){
 .partner-track .partner-loop>a:nth-child(n+4),
 .partner-track .partner-loop>span:nth-child(n+4){display:grid!important}
}
