/* ============================================
   APCE 2027 – Inner Page Shared CSS v2
   Exhibitor list, conference grid, forms, news
   ============================================ */

/* ---------- Page Banner ---------- */
.page-banner{position:relative;padding:120px 0 64px;background:linear-gradient(135deg,#1A2A3D,#2B5F8A);text-align:center;overflow:hidden;z-index:0}
.page-banner::before{content:'';position:absolute;inset:0;background:url(https://images.unsplash.com/photo-1558494949-ef010cbdcc31?w=1920&q=80) center/cover;opacity:.12;z-index:-1}
.page-banner .container{position:relative}
.page-banner h1{font-size:40px;font-weight:700;color:#fff;margin-bottom:12px;letter-spacing:-.01em}
.page-banner p{font-size:16px;color:rgba(255,255,255,.65);max-width:600px;margin:0 auto}

/* ---------- Breadcrumb ---------- */
.breadcrumb{background:var(--g1);padding:14px 0;border-bottom:1px solid var(--g2)}
.breadcrumb .container{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--g5);flex-wrap:wrap}
.breadcrumb a{color:var(--g5);transition:color var(--tr)}
.breadcrumb a:hover{color:var(--a)}
.breadcrumb span{color:var(--g4)}
.breadcrumb .sep{color:var(--g3)}

/* ---------- Inner Layout ---------- */
.inner-body{padding:64px 0;background:var(--w)}
.inner-body .container{display:flex;gap:48px;align-items:flex-start}
.inner-main{flex:1;min-width:0}
.inner-side{flex:0 0 300px;width:300px}

/* Content typography */
.inner-main h2{font-size:28px;font-weight:700;color:var(--n9);margin:40px 0 16px}
.inner-main h2:first-child{margin-top:0}
.inner-main h3{font-size:22px;font-weight:600;color:var(--g7);margin:32px 0 12px}
.inner-main p{font-size:16px;line-height:1.8;color:var(--g7);margin-bottom:16px}
.inner-main ul,.inner-main ol{padding-left:24px;margin-bottom:16px}
.inner-main li{font-size:16px;line-height:1.8;color:var(--g7);margin-bottom:6px}
.inner-main img{border-radius:var(--rl);margin:24px 0;max-width:100%;height:auto}
.inner-main a{color:var(--a);text-decoration:underline;text-underline-offset:3px}
.inner-main a:hover{color:var(--ah)}

/* Featured image */
.inner-feat-img{width:100%;height:360px;background-size:cover;background-position:center;border-radius:var(--rl);margin-bottom:32px}

/* Info table */
.info-table{width:100%;border-collapse:collapse;margin:24px 0}
.info-table th{text-align:left;font-size:14px;color:var(--g5);padding:10px 16px;background:var(--g1);border:1px solid var(--g2);width:180px;font-weight:600}
.info-table td{font-size:15px;color:var(--g7);padding:10px 16px;border:1px solid var(--g2)}

/* Exhibition zone cards */
.zone-grid{display:grid;grid-template-columns:1fr;gap:32px;margin:32px 0}
.zone-card{background:var(--g1);border-radius:var(--rl);padding:28px;border:1px solid var(--g2)}
.zone-card h3{font-size:20px;font-weight:700;color:var(--n9);margin:0 0 16px;display:flex;align-items:center;gap:10px}
.zone-num{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--a);color:#fff;border-radius:6px;font-size:14px;font-weight:700;flex-shrink:0}
.zone-table{width:100%;border-collapse:collapse;margin-top:16px}
.zone-table th{text-align:left;font-size:13px;color:var(--g5);padding:10px 12px;background:#fff;border:1px solid var(--g2);width:160px;font-weight:600}
.zone-table td{font-size:14px;color:var(--g7);padding:10px 12px;border:1px solid var(--g2);background:#fff}
@media(min-width:768px){
  .zone-grid{grid-template-columns:1fr 1fr}
  .zone-card--full{grid-column:1/-1}
}

/* ---------- Sidebar ---------- */
.side-box{background:var(--g1);border-radius:var(--rl);padding:24px;margin-bottom:24px;border:1px solid var(--g2)}
.side-box h4{font-size:15px;font-weight:600;color:var(--n9);margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--g2)}
.side-box ul li{margin-bottom:10px}
.side-box ul li a{font-size:14px;color:var(--g5);display:flex;align-items:center;gap:8px;transition:color var(--tr)}
.side-box ul li a:hover{color:var(--a)}
.side-box ul li a::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--a);flex-shrink:0;opacity:.5}
.side-cta{background:linear-gradient(135deg,var(--a),var(--ah));color:var(--w);text-align:center;padding:28px 24px;border-radius:var(--rl)}
.side-cta h4{color:var(--w);font-size:18px;margin-bottom:8px;border:none;padding:0}
.side-cta p{font-size:14px;opacity:.85;line-height:1.6;margin-bottom:16px}
.side-cta .btn{background:var(--w);color:var(--a);border-color:var(--w)}
.side-cta .btn:hover{background:var(--g1);border-color:var(--g1)}

/* ---------- News List ---------- */
.news-list{display:flex;flex-direction:column;gap:0}
.news-item{display:flex;gap:24px;padding:28px 0;border-bottom:1px solid var(--g2)}
.news-item:first-child{padding-top:0}
.news-thumb{flex:0 0 240px;height:160px;background-size:cover;background-position:center;border-radius:var(--r);overflow:hidden;display:block}
.news-info{flex:1;display:flex;flex-direction:column;justify-content:center}
.news-info time{font-size:12px;color:var(--g4);margin-bottom:6px}
.news-info h3{font-size:20px;font-weight:600;margin:0 0 8px;line-height:1.4}
.news-info h3 a{color:var(--n9);text-decoration:none;transition:color var(--tr)}
.news-info h3 a:hover{color:var(--a)}
.news-info p{font-size:14px;color:var(--g5);line-height:1.6;margin:0}
.news-cat{display:inline-block;padding:3px 10px;border-radius:100px;font-size:11px;font-weight:600;background:var(--ag);color:var(--a);margin-bottom:8px;text-transform:uppercase;letter-spacing:.04em}
.news-item:hover .news-thumb{opacity:.85}

/* Pagination */
.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:48px}
.pagination a,.pagination span{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--r);font-size:14px;font-weight:500;transition:all var(--tr)}
.pagination a{color:var(--g7);border:1px solid var(--g2)}
.pagination a:hover{color:var(--a);border-color:var(--a)}
.pagination .active{background:var(--a);color:var(--w);border-color:var(--a)}
.pagination .disabled{color:var(--g3);border-color:var(--g2);cursor:not-allowed}

/* ---------- Article Detail ---------- */
.article-detail{font-size:16px;line-height:1.9;color:var(--g7)}
.article-detail h1{font-size:36px;font-weight:700;color:var(--n9);line-height:1.3;margin:16px 0 20px}
.article-detail h2{font-size:26px;font-weight:700;color:var(--n9);margin:40px 0 16px}
.article-detail h3{font-size:20px;font-weight:600;margin:28px 0 12px}
.article-detail p{margin-bottom:20px}
.article-detail .article-hero{width:100%;height:380px;background-size:cover;background-position:center;border-radius:var(--rl);margin-bottom:24px}
.article-detail .article-meta{display:flex;align-items:center;gap:16px;margin-bottom:8px}
.article-detail .article-meta time{font-size:13px;color:var(--g4)}
.article-detail .article-meta .news-cat{margin-bottom:0}
.article-cta h3{color:var(--n9)}

/* ---------- Exhibitor List (vertical card list, cisce style) ---------- */
.el-search{display:flex;gap:12px;margin-bottom:32px}
.el-search-input{flex:1;padding:12px 16px;border:2px solid var(--g2);border-radius:var(--r);font-size:14px;font-family:inherit;outline:none;transition:border-color var(--tr)}
.el-search-input:focus{border-color:var(--a)}
.el-search .btn{padding:12px 28px}
.el-list{display:flex;flex-direction:column;gap:0}
.el-card{padding:28px 0;border-bottom:1px solid var(--g2);transition:background var(--tr)}
.el-card:first-child{padding-top:0}
.el-card:hover{background:var(--g1);margin:0 -16px;padding-left:16px;padding-right:16px;border-radius:var(--r)}
.el-card-head{display:flex;align-items:flex-start;gap:20px;margin-bottom:10px}
.el-logo{flex:0 0 64px;width:64px;height:64px;border-radius:12px;background:linear-gradient(135deg,var(--n9),var(--n7));color:var(--w);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;overflow:hidden}
.el-logo img{width:100%;height:100%;object-fit:contain}
.el-meta{flex:1;min-width:0}
.el-meta h3{font-size:18px;font-weight:600;color:var(--n9);margin:0 0 6px}
.el-meta h3 a{color:var(--n9);text-decoration:none;transition:color var(--tr)}
.el-meta h3 a:hover{color:var(--a)}
.el-booth{display:inline-block;font-size:13px;color:var(--a);font-weight:600;margin-right:12px}
.el-cat{display:inline-block;font-size:12px;color:var(--g4);background:var(--g1);padding:2px 10px;border-radius:100px}
.el-desc{font-size:14px;color:var(--g5);line-height:1.7;margin:0}

/* ---------= Conference Grid (cbdfair style) ====== */
.cf-grid{display:flex;flex-direction:column;gap:24px}
.cf-card{display:flex;border-radius:var(--rl);overflow:hidden;background:var(--w);border:1px solid var(--g2);transition:all var(--tr)}
.cf-card:hover{box-shadow:var(--sh);transform:translateY(-2px)}
.cf-card-img{flex:0 0 340px;min-height:240px;background-size:cover;background-position:center}
.cf-card-body{flex:1;padding:32px;display:flex;flex-direction:column;justify-content:center}
.cf-badge{display:inline-block;padding:4px 12px;border-radius:100px;font-size:11px;font-weight:700;letter-spacing:.05em;background:var(--ag);color:var(--a);margin-bottom:12px;width:fit-content}
.cf-card-body h3{font-size:22px;font-weight:600;color:var(--n9);margin:0 0 8px}
.cf-loc{font-size:14px;color:var(--a);font-weight:500;margin-bottom:8px}
.cf-desc{font-size:15px;color:var(--g5);line-height:1.7;margin:0}
.cf-desc ul{margin:0;padding-left:20px}
.cf-desc li{margin-bottom:6px;font-size:15px;color:var(--g5);line-height:1.7}

/* Benefit cards */
.benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:32px 0}
.benefit-card{background:var(--g1);border-radius:var(--rl);padding:28px;border:1px solid var(--g2)}
.benefit-card h3{font-size:18px;font-weight:700;color:var(--n9);margin:0 0 10px;display:flex;align-items:center;gap:10px}
.benefit-card p{font-size:15px;color:var(--g5);line-height:1.7;margin:0}
.benefit-icon{font-size:22px;flex-shrink:0}
@media(max-width:768px){
  .benefit-grid{grid-template-columns:1fr}
}

/* ---------- Forms (frm prefix) ---------- */
.form-page{background:var(--g1);padding:64px 0}
.form-container{max-width:820px;margin:0 auto;background:var(--w);border-radius:var(--rl);padding:48px;border:1px solid var(--g2);box-shadow:var(--sh)}
.form-section{margin-bottom:36px}
.form-section-title{font-size:18px;font-weight:600;color:var(--n9);margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid var(--a)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}
.form-row--3{grid-template-columns:1fr 1fr 1fr}
.form-group{display:flex;flex-direction:column}
.form-group.full{grid-column:1/-1}
.form-group label{font-size:14px;font-weight:500;color:var(--g7);margin-bottom:6px}
.form-group label .req{color:#E53E3E;margin-left:2px}
.form-group input,
.form-group select,
.form-group textarea{font-size:14px;padding:10px 14px;border:1px solid var(--g2);border-radius:var(--r);color:var(--g9);background:var(--w);font-family:inherit;transition:all var(--tr);outline:none}
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{border-color:var(--a);box-shadow:0 0 0 3px rgba(0,180,216,.1)}
.form-group input::placeholder,.form-group textarea::placeholder{color:var(--g3)}
.form-group textarea{resize:vertical;min-height:100px}
.form-group select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239CA3AF' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}
.form-check{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--g7);margin-top:4px}
.form-check input{width:16px;height:16px;margin-top:2px;accent-color:var(--a);flex-shrink:0}
.form-actions{display:flex;gap:16px;margin-top:32px;justify-content:flex-end}

/* Form checkbox grid */
.frm-chk-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}
.frm-chk{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--g7);cursor:pointer;padding:6px 0}
.frm-chk input{width:16px;height:16px;accent-color:var(--a);flex-shrink:0}
/* Radio group */
.frm-radio-group{display:flex;gap:24px}
.frm-radio{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--g7);cursor:pointer}
.frm-radio input{width:16px;height:16px;accent-color:var(--a)}

/* ---------- Contact Page ---------- */
.contact-grid{display:grid;grid-template-columns:1fr;gap:24px;margin-top:32px}
.contact-card{background:var(--g1);padding:32px;border-radius:var(--rl);text-align:center}
.contact-card h3{margin-bottom:16px}
.section-heading{margin-top:40px}

/* ---------- Inner Page Intro ---------- */
.inner-intro h2{font-size:28px;font-weight:700;margin-bottom:8px}
.inner-intro p{color:var(--g5);margin-bottom:32px}

/* ---------- Conference Section ---------- */
.conf-section-title{font-size:22px;font-weight:700;color:var(--n9);margin:40px 0 20px}
.conf-desc-list{margin:0;padding-left:20px}
.conf-desc-list.main-summit{margin:16px 0 0;padding-left:20px}

/* ---------- Utility ---------- */
.text-center-block{text-align:center;margin:32px 0;padding:32px;background:var(--w);border:1px solid var(--g2);border-radius:var(--rl);color:var(--n9)}

/* ---------- Media Partners Grid ---------- */
.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-top:24px}
.media-card{background:var(--g1);padding:32px 24px;text-align:center;border-radius:var(--r);font-weight:600;color:var(--g5)}

/* ---------- Article CTA ---------- */
.article-cta-box{background:var(--g1);padding:40px;border-radius:var(--rl);text-align:center;margin:32px 0}
.article-cta-box h3{font-size:22px;color:var(--n9);margin-bottom:12px}
.article-cta-box p{color:var(--g5);margin-bottom:24px}

/* ============ RESPONSIVE ============ */
@media(max-width:1024px){
    .inner-body .container{flex-direction:column;gap:40px}
    .inner-side{flex:auto;width:100%}
    .inner-feat-img{height:260px}
    .form-row,.form-row--3{grid-template-columns:1fr}
    .contact-grid{grid-template-columns:1fr}
    .frm-chk-grid{grid-template-columns:1fr}
    .news-item{flex-direction:column}.news-thumb{flex:0 0 200px;width:100%}
    .cf-card{flex-direction:column}.cf-card-img{flex:auto;height:200px}
    .article-detail .article-hero{height:260px}
    .el-search{flex-direction:column}.el-search .btn{width:100%}
}
@media(max-width:768px){
    .page-banner{padding:100px 0 48px}
    .page-banner h1{font-size:28px}
    .inner-body{padding:40px 0}
    .inner-main h2{font-size:24px}
    .inner-main h3{font-size:18px}
    .form-container{padding:28px 20px}
    .article-detail h1{font-size:26px}
    .article-detail .article-hero{height:200px}
    .form-actions{flex-direction:column}.form-actions .btn{width:100%}
    .frm-radio-group{flex-direction:column;gap:10px}
    .el-card-head{flex-direction:column;gap:12px}
    .el-logo{flex:0 0 48px;width:48px;height:48px;font-size:16px}
    .info-table th{display:block;width:100%}
    .info-table tr{display:block;margin-bottom:8px}
    .info-table td{display:block}
}
