/* Duo / compact tablet workspace. Separate composition, not a scaled LP. */
.company-group.community{padding-top:12px;border-top:1px solid #5c6257}.company-group.community .brand-grid{grid-template-columns:minmax(170px,280px)}.company-group.community .group-title{color:#d8e1ce}
@media(min-width:600px) and (max-width:1023px){
 body.duo,body.duo[data-page=program]{height:100dvh;display:flex;flex-direction:column;overflow:hidden;padding:0;font-size:13px;line-height:1.65}
 .duo .preview,.duo #footer{display:none}.duo header,.duo[data-page=program] header{height:44px;min-height:44px;position:relative;flex:none;background:#101412}.duo .header-inner{width:calc(100% - 32px);gap:16px}.duo .brand{font-size:10px;letter-spacing:.06em}.duo .brand small{font-size:8px}.duo .tocj{width:78px}.duo .lang{min-height:40px;padding:0 10px}.duo .header-right{gap:14px}.duo .desktop-nav,.duo .header-ticket{display:none}
 .duo #main,.duo[data-page=program] #main{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#646353 transparent}.duo .wrap{width:calc(100% - 32px)}
 .duo .bottom-nav{position:relative;flex:none;inset:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) 24px repeat(3,minmax(0,.66667fr));gap:0;height:calc(44px + env(safe-area-inset-bottom));padding:0 12px env(safe-area-inset-bottom);box-shadow:none;background:#151b17;border-top:1px solid #41493e;min-height:44px}
 .duo .bottom-nav a,.duo .bottom-nav button{flex-direction:row;gap:6px;min-height:44px;height:44px;margin:0;padding:0 8px;font-size:11px;white-space:nowrap}.duo .bottom-nav a:nth-child(3){grid-column:4}.duo .bottom-nav svg{height:15px;width:15px;flex-shrink:0}.duo .bottom-nav button{background:transparent;color:#f2d09e;border-left:1px solid #49503e}.duo .bottom-nav .new-dot{display:none}.duo .bottom-nav a[aria-current=page]{background:#ffffff08;box-shadow:inset 0 2px var(--gold)}.duo .bottom-nav:before{display:none}
 /* Home: two balanced pages in a single spread. */
 .duo-dashboard{min-height:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:14px 16px;align-content:center;background:radial-gradient(ellipse at 5% 0,#26302755,transparent 65%)}
 .duo-dashboard section{min-width:0}.duo-overview{display:flex;flex-direction:column;gap:10px}.duo-identity{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:14px;align-items:center}.duo-logo{width:190px;max-height:70px;object-fit:contain;object-position:left}.duo-identity h1{font-size:22px;line-height:1.4;margin-top:9px;letter-spacing:.02em}.duo-kv{width:96px;height:144px;object-fit:contain;justify-self:end}
 .duo-date{display:flex;align-items:center;gap:12px;border-top:1px solid #4e5144;padding-top:8px}.duo-date strong{font-size:29px;line-height:1.15;white-space:nowrap;letter-spacing:.02em}.duo-date strong small{font-size:11px}.duo-date>span{font-size:11px;line-height:1.6}.duo-welcome{font-size:12px;line-height:1.65}.duo-main-ticket{padding:10px 12px;min-height:40px;font-size:13px;width:100%;border-radius:3px;gap:10px}
 .duo-partners{display:grid;grid-template-columns:1fr 2fr;gap:12px}.duo-title-partner,.duo-gold-partners{display:flex;flex-direction:column;gap:3px}.duo-partners span{font-size:8px;letter-spacing:.11em;color:var(--gold)}.duo-title-partner img{height:35px;max-width:110px;object-fit:contain;object-position:left}.duo-gold-partners>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;height:35px;align-items:center}.duo-gold-partners a{min-width:0}.duo-gold-partners img{width:100%;height:32px;object-fit:contain}
 .duo-community{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #3b4136;padding-top:7px;gap:12px}.duo-community>span{font-size:9px;color:#afbba5;letter-spacing:.03em}.duo-community a{display:flex;align-items:center;gap:8px}.duo-community img{height:24px;width:88px;object-fit:contain;background:#f4f2ed;padding:4px 8px;border-radius:2px}.duo-meta-links{display:flex;justify-content:space-between;font-size:10px;color:#c6b18f}
 .duo-discover{display:flex;flex-direction:column;gap:10px}.duo-section-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.duo-section-heading h2{font-size:16px}.duo-section-heading>span{font-size:8px;letter-spacing:.13em;color:var(--gold)}.duo-experience-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.duo-experience{position:relative;min-width:0;display:flex;align-items:center;gap:8px;padding:9px;background:#222821;border:1px solid #424b3c;border-radius:4px;min-height:76px;transition:background .15s}.duo-experience:hover{background:#30382c}.duo-experience img{width:43px;height:52px;object-fit:cover;border-radius:2px;flex:none}.duo-experience div{min-width:0}.duo-experience small{display:block;font-size:9px;color:var(--gold);line-height:1}.duo-experience h3{font-size:12px;letter-spacing:0;line-height:1.4;margin:4px 0}.duo-experience p{font-size:10px;line-height:1.4;color:#bcc3b6}.duo-experience>span{position:absolute;right:5px;top:3px;font-size:10px;color:#9baf8a}.duo-eve{display:flex;align-items:center;gap:9px;padding:10px 12px;background:linear-gradient(105deg,#4b3824,#2a261d);border:1px solid #8d734b;border-radius:4px;min-height:55px}.duo-new{color:#241b12;background:#dec08d;padding:2px 5px;font-size:8px}.duo-eve strong{display:block;font-size:13px;line-height:1.5}.duo-eve small{display:block;font-size:10px;color:#d7cbb5}.duo-eve>span:last-child{margin-left:auto}.duo-quick-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.duo-quick-links a{display:flex;flex-direction:column;justify-content:center;border:1px solid #424a3d;padding:8px 12px;border-radius:4px;min-height:67px}.duo-quick-links span{font-size:8px;color:var(--gold);letter-spacing:.14em}.duo-quick-links strong{font-size:13px}.duo-quick-links small{font-size:10px;color:#aeb9a6}.duo-footnote{font-size:9px;line-height:1.5;color:#949d8d}
 /* Program: a thin tab strip, then image/highlights and copy. No tall title/sidebar. */
 .duo-program{height:100%;display:flex;flex-direction:column;padding:0 16px;min-height:0}.duo-program-bar{display:flex;justify-content:space-between;align-items:center;min-height:33px;flex:none}.duo-program-bar h1{font-size:13px;letter-spacing:.04em}.duo-program-bar>a{font-size:10px;color:#cbb68f}.duo-program-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-bottom:1px solid #515944;min-height:42px;flex:none}.duo-program-tabs a{font-size:11px;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.3;padding:5px;min-height:42px;border-radius:3px 3px 0 0}.duo-program-tabs a[aria-current=page]{background:#d0b17e;color:#1b2118;font-weight:700}.duo-program-tabs a:nth-child(3){margin-right:12px}.duo-program-tabs a:nth-child(4){margin-left:12px}
 .duo-program-spread{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;flex:1;min-height:0;padding:12px 0}.duo-program-visual,.duo-program-copy{min-height:0;min-width:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#66634e transparent;padding-bottom:6px}.duo-program-visual:focus-visible,.duo-program-copy:focus-visible{outline:1px solid var(--gold);outline-offset:2px}
 .duo-program-visual .program-photo{height:170px;object-fit:cover}.duo-caption{font-size:9px;text-align:right;margin:3px 0 8px;color:#9ba78f}.duo-program-visual figure{margin:0 0 10px;padding:10px;background:#20271f;border-radius:3px}.duo-program-visual .photo-showcase img{height:155px;max-height:155px;object-fit:contain}.duo-program-visual figure figcaption{font-size:9px;margin-top:5px}.duo-program-visual .cards-showcase{gap:15px}.duo-program-visual .cards-showcase img{height:155px;width:auto;max-height:155px}.duo-program-copy h2{font-size:23px;margin:0 0 12px;line-height:1.45}.duo-program-copy>p{font-size:14px;line-height:1.8;margin:0 0 13px}.duo-program-copy>p.eyebrow{font-size:9px;margin:0 0 7px;line-height:1.4}.duo-program-copy h3{font-size:17px;margin:14px 0 6px}.duo-program-copy .button{font-size:12px;padding:10px 12px;min-height:40px}.duo-program-copy .tags{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0}.duo-program-copy .tags span{font-size:11px;padding:5px 8px}.duo-program-copy .note{font-size:12px;line-height:1.7;padding:12px;margin:12px 0}.duo-program-copy .fine-print{font-size:12px}.duo-program-visual .activity-list{margin:8px 0 0}.duo-program-visual .activity-list section{padding:10px 0;gap:11px}.duo-program-visual .activity-list h3{font-size:14px}.duo-program-visual .activity-list p{font-size:12px;line-height:1.65;margin-top:3px}.duo-program-visual .activity-list section>span{font-size:10px}.duo-program-visual .contest-divisions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.duo-program-visual .contest-divisions section{padding:8px 0}.duo-program-visual .contest-divisions h3{font-size:15px;margin-top:3px}.duo-program-visual .contest-divisions span{font-size:8px;letter-spacing:0}.duo-program-visual .contest-divisions p{font-size:12px;margin:4px 0}.duo-program-visual .prize-callout{margin:8px 0 0;padding:12px;display:block}.duo-program-visual .prize-callout>span{display:none}.duo-program-visual .prize-callout h3{font-size:15px}.duo-program-visual .prize-callout p{font-size:12px;line-height:1.6;margin-top:4px}
 /* Directory and the other screens use the same compact app frame. */
 .duo .page-intro{padding:12px 0 8px}.duo .breadcrumb,.duo .page-intro>.eyebrow{display:none}.duo .page-intro h1{font-size:21px;margin:0 0 3px}.duo .page-intro>p{font-size:11px}.duo .directory-controls{padding:0 0 8px;gap:7px}.duo .search{font-size:12px;min-height:36px;padding:6px 10px;min-width:160px;flex:1;width:auto}.duo .filters{gap:4px}.duo .filter{font-size:10px;min-height:36px;padding:6px 8px}.duo .result-count{margin:0 0 7px;font-size:10px}.duo .company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;padding-bottom:12px}.duo .company-group{margin:0;min-width:0}.duo .company-group.other,.duo .company-group.community{grid-column:1/-1}.duo .group-title{font-size:9px;margin-bottom:5px;letter-spacing:.08em;gap:7px}.duo .company-group.title .company-card{display:flex;gap:14px;padding:8px 12px;height:77px}.duo .company-group.title .logo-space{width:120px;height:48px;flex:none;margin:0}.duo .company-group.title h2{font-size:13px;margin:0;border:0;padding:0;min-height:0}.duo .company-group.gold .brand-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.duo .company-group.gold .company-card{height:77px;padding:8px}.duo .company-group.gold .logo-space{height:29px;margin-bottom:4px}.duo .company-group.gold h2{font-size:9px;line-height:1.3;padding-top:4px}.duo .brand-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.duo .brand-grid .company-card:nth-child(n){margin:0}.duo .company-card{padding:8px;border-radius:3px}.duo .company-card .logo-space{height:33px;margin-bottom:4px}.duo .company-card h2{font-size:10px;line-height:1.4;padding-top:4px;min-height:28px}.duo .company-card h2>span{display:none}.duo .company-group.community{padding-top:8px}.duo .company-group.community .brand-grid{grid-template-columns:200px}.duo .company-group.community .company-card{display:flex;align-items:center;gap:12px}.duo .company-group.community .logo-space{width:90px;height:27px;margin:0}.duo .company-group.community h2{border:0;min-height:0;padding:0}
 .duo .company-detail{gap:24px;padding:5px 0 16px;min-height:0;grid-template-columns:repeat(2,minmax(0,1fr))}.duo .detail-logo{height:160px}.duo .detail-copy h1{font-size:22px;margin:4px 0 10px}.duo .detail-copy p{font-size:14px;line-height:1.8;margin:10px 0}.duo .detail-copy h2{font-size:16px;margin:18px 0 6px}.duo .social-links{gap:6px;margin:10px 0}.duo .social-links a{padding:7px 10px;font-size:12px;min-height:38px}.duo .detail-copy .button{font-size:12px;min-height:40px;padding:9px 12px}.duo .company-detail .detail-side{top:12px}.duo .section{padding:8px 0 16px}.duo .twocol{gap:24px}.duo .visit-schedule{margin-bottom:16px}.duo .visit-schedule>h2{font-size:19px;margin-bottom:10px}.duo .info-box{padding:14px}.duo .info-box h3{font-size:16px}.duo .info-box p{font-size:12px}.duo .info-box .button{font-size:12px;margin-top:10px;padding:9px 12px}.duo .map-photo{height:140px;margin-bottom:12px}.duo .note{padding:12px;font-size:12px}.duo .eyebrow{margin-bottom:6px}.duo details{padding:9px 0}.duo summary{font-size:12px}
}
@media(min-width:800px) and (max-width:1023px){.duo .brand-grid{grid-template-columns:repeat(8,minmax(0,1fr))}}
@media(min-width:600px) and (max-width:799px){
 .duo-dashboard{gap:20px;padding:14px 14px;align-content:start}.duo-overview,.duo-discover{gap:12px}.duo-identity{grid-template-columns:minmax(0,1fr) 80px;gap:10px}.duo-logo{height:65px;width:180px}.duo-kv{width:80px;height:125px}.duo-identity h1{font-size:20px}.duo-date{display:block}.duo-date>span{display:block;margin-top:6px;font-size:12px}.duo-experience-grid{grid-template-columns:1fr;gap:6px}.duo-experience{min-height:65px;padding:8px 10px;gap:11px}.duo-experience img{height:45px;width:54px}.duo-experience h3{font-size:13px;margin:2px 0}.duo-experience p{font-size:11px}.duo-identity{margin-bottom:6px}.duo-partners{grid-template-columns:1fr;gap:12px}.duo-title-partner img{height:45px}.duo-gold-partners>div{height:38px}.duo-gold-partners img{height:34px}.duo-community{align-items:start;flex-direction:column;gap:6px}.duo-meta-links{gap:10px;flex-wrap:wrap}.duo-eve{padding:9px;gap:7px}.duo-eve strong{font-size:12px}.duo-eve small{font-size:9px}.duo-quick-links a{padding:8px}.duo-quick-links strong{font-size:12px}.duo-quick-links small{font-size:9px}.duo-quick-links{gap:6px}.duo-program-tabs a{font-size:10px}.duo-program-copy h2{font-size:21px}.duo-program-copy>p{font-size:13px}.duo .company-group.title .logo-space{width:96px}.duo .company-group.title h2{font-size:11px}.duo .company-group.gold .company-card{padding:6px}.duo .company-group.gold h2{font-size:8px}.duo .directory-controls{display:grid;grid-template-columns:1fr}.duo .search{width:100%}
}
@media(min-width:800px) and (max-width:1023px) and (max-height:620px){
 .duo-dashboard{padding-top:10px;padding-bottom:10px;gap:24px}.duo-overview,.duo-discover{gap:8px}.duo-kv{height:120px;width:80px}.duo-identity{grid-template-columns:minmax(0,1fr) 80px}.duo-logo{max-height:55px;width:175px}.duo-identity h1{font-size:20px;margin-top:6px}.duo-date strong{font-size:27px}.duo-date{padding-top:6px}.duo-main-ticket{min-height:38px;padding:8px}.duo-experience{min-height:70px;padding:8px}.duo-experience img{height:46px;width:39px}.duo-experience p{font-size:9px}.duo-eve{min-height:50px;padding:8px 10px}.duo-quick-links a{min-height:59px;padding:6px 10px}.duo-program-visual .program-photo{height:135px}.duo-program-visual .photo-showcase img{height:125px;max-height:125px}.duo-program-visual .cards-showcase img{height:125px;max-height:125px}.duo-program-copy h2{font-size:21px}.duo-program-copy>p{font-size:13px}.duo-program-visual .activity-list p{font-size:11px}.duo-program-visual .activity-list section{padding:8px 0}
}
@media(min-width:600px) and (max-width:1023px){
 .duo-visit{padding:0 16px;height:100%;display:flex;flex-direction:column}.duo-visit .duo-program-bar>span{font-size:9px;letter-spacing:.1em;color:var(--gold)}.duo-visit-spread{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;min-height:0;flex:1;padding:8px 0 12px}.duo-visit-spread>section{overflow:auto;scrollbar-width:thin;min-height:0}.duo-visit-date{display:flex;gap:12px;align-items:center;margin-bottom:8px}.duo-visit-date strong{font-size:26px;line-height:1.2}.duo-visit-date small{font-size:10px}.duo-visit-date>span{font-size:11px}.duo-venue-photo{height:110px;object-fit:cover;width:100%;border-radius:3px}.duo-visit h2{font-size:17px;margin:10px 0 7px}.duo-visit-spread p{font-size:12px;line-height:1.75;margin:7px 0}.duo-visit-spread .button{padding:8px 12px;font-size:12px;min-height:38px;margin:6px 0}.duo-visit-spread .note{font-size:11px;padding:10px;margin:9px 0}.duo-visit-spread summary{font-size:12px;line-height:1.5}.duo-visit-spread details{padding:10px 0}.duo-visit-spread details p{font-size:12px}.duo .detail-side>.button{font-size:12px;padding:9px 12px;margin-top:10px;min-height:40px;display:flex}.duo .detail-side .social-links{margin-top:8px}.duo[data-page=goods] h2{font-size:22px}.duo[data-page=goods] .section>.info-box{margin-top:12px!important}.duo[data-page=goods] .section>.twocol>div>p{font-size:13px}.duo[data-page=about] h2{font-size:23px}.duo[data-page=about] .twocol p{font-size:13px}
}
/* Non-sponsor directory cards show logos only; accessible company names remain. */
.company-card.logo-only h2{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.company-card.logo-only .logo-space{margin-bottom:0}.company-card.logo-only{padding-top:16px;padding-bottom:16px}.company-group.community .company-card.logo-only{padding:12px 16px}
@media(min-width:600px) and (max-width:1023px){.duo .company-card.logo-only{padding:9px 10px}.duo .company-card.logo-only .logo-space{margin:0;height:37px}.duo .company-group.community .company-card.logo-only{padding:8px 12px}.duo .company-group.community .company-card.logo-only .logo-space{height:25px;width:115px}}

/* 冠スポンサーはロゴと社名をカード中央にまとめる。 */
.company-group.title .company-card{flex-direction:column;justify-content:center;align-items:center;gap:8px;text-align:center}
.company-group.title .logo-space{flex:none;margin:0 auto}
.company-group.title h2{flex:none;justify-content:center;align-items:center;min-height:0;padding:0;margin:0;border:0;text-align:center}
.company-group.title h2>span{display:none}
@media(min-width:600px) and (max-width:1023px){
 .duo .company-group.title .company-card{flex-direction:column;justify-content:center;gap:2px}
 .duo .company-group.title .logo-space{width:140px;height:44px;margin:0 auto}
 .duo .company-group.title h2{font-size:11px;line-height:1.3;margin:0}
}
