@charset "UTF-8";

.cms-home .home-keynote-section{margin-top:64px;padding:32px 36px 28px;background:#f4f7fb;border:1px solid #e5ecf5;border-radius:14px}
/* Also space sections placed consecutively inside an editable page body. */
.date-grid+.section-heading[data-i18n="keynoteSpeakers"]{margin-top:64px}
.cms-home .home-keynote-section>.section-heading{font-size:clamp(23px,1.65vw,32px);margin-bottom:26px}
.cms-home .home-keynote-section .speaker-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding:0}
.cms-home .home-keynote-section .speaker-card{min-width:0;gap:22px;align-items:center}
.cms-home .home-keynote-section .speaker-card:after{display:none}
.cms-home .home-keynote-section .speaker-avatar{width:clamp(90px,7.5vw,136px);height:clamp(90px,7.5vw,136px);object-fit:cover;object-position:center;background:#e2e7ed}
.cms-home .home-keynote-section .speaker-card>div{min-width:0}
.cms-home .home-keynote-section .speaker-card h3{font-size:clamp(17px,1.2vw,23px);line-height:1.35;margin-bottom:8px;overflow-wrap:anywhere}
.cms-home .home-keynote-section .speaker-card p{font-size:clamp(12px,.86vw,16px);line-height:1.55;color:#4d607a;overflow-wrap:anywhere}
.cms-home .home-keynote-section .center-link{margin-top:26px}
.cms-home .home-keynote-section .text-link{font-size:12px}
.cms-home .home-support-section{padding-block:48px 52px;background:#fff}
.cms-home .home-support-row{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;align-items:start}
.cms-home .home-support-row+.home-support-row{margin-top:30px}
.cms-home .home-support-row>h2{font-size:18px;line-height:1.4;letter-spacing:.2px;padding-top:24px;color:var(--navy)}
.home-support-content{min-width:0}
.support-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.organizers-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:calc((100% - 12px)/2)}
.support-logo{display:flex;align-items:center;justify-content:center;min-width:0;min-height:80px;padding:12px 20px;border:1px solid #e0e6ee;border-radius:5px;background:#fff;transition:border-color .2s,box-shadow .2s}
a.support-logo:hover{border-color:#8ab9f0;box-shadow:0 4px 14px #092f6010}
.support-logo img{display:block;width:100%;height:54px;max-width:240px;object-fit:contain}
.home-section-empty{display:flex;align-items:center;min-height:80px;margin:0;padding:22px 24px;background:#f7f9fc;border:1px solid #e5ecf5;border-radius:6px;color:#64748b;font-size:15px;line-height:1.6}
.home-keynote-section>.home-section-empty{padding:0;min-height:50px;background:none;border:0}

@media(max-width:1200px){
    .cms-home .home-keynote-section{padding:28px 24px}
    .cms-home .home-keynote-section .speaker-grid{gap:24px}
    .cms-home .home-keynote-section .speaker-card{flex-direction:column;align-items:flex-start;gap:16px}
    .cms-home .home-support-row{grid-template-columns:140px minmax(0,1fr);gap:20px}
    .cms-home .home-support-row>h2{font-size:16px;padding-top:20px}
    .support-logo{min-height:72px;padding:10px 14px}
    .support-logo img{height:48px}
}
@media(max-width:760px){
    .cms-home .home-keynote-section{margin-top:40px;padding:26px 22px}
    .date-grid+.section-heading[data-i18n="keynoteSpeakers"]{margin-top:40px}
    .cms-home .home-keynote-section .speaker-grid{grid-template-columns:1fr;gap:24px}
    .cms-home .home-keynote-section .speaker-card{flex-direction:row;align-items:center;gap:20px;max-width:none}
    .cms-home .home-keynote-section .speaker-avatar{width:90px;height:90px}
    .cms-home .home-keynote-section .speaker-card h3{font-size:18px}
    .cms-home .home-keynote-section .speaker-card p{font-size:13px}
    .cms-home .home-support-section{padding-block:32px 36px}
    .cms-home .home-support-row{grid-template-columns:1fr;gap:15px}
    .cms-home .home-support-row>h2{padding:0;font-size:18px}
    .support-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
    .organizers-grid{max-width:none}
    .support-logo{min-height:68px;padding:10px 12px}
}
@media(max-width:390px){
    .cms-home .home-keynote-section{padding:22px 16px}
    .cms-home .home-keynote-section .speaker-avatar{width:72px;height:72px}
    .cms-home .home-keynote-section .speaker-card{gap:14px}
    .cms-home .home-keynote-section .speaker-card h3{font-size:16px}
    .cms-home .home-keynote-section .speaker-card p{font-size:12px}
    .support-logo{padding:8px;min-height:62px}
    .support-logo img{height:44px}
}
@media(prefers-reduced-motion:reduce){.support-logo{transition:none}}
