/* หน้า Solution แบบ v2 (V3.142) — ตาม docs/projects/HOMEPAGE/mockup-solution-speaker-framing-v2.html
   ทุก class อยู่ใต้ .sol กันชนกับ main.css (section/.hero/.btn ของเว็บเดิม) · ส่วนต่าง ๆ เต็มความกว้างจอ */
body:has(.sol){overflow-x:clip}  /* ส่วนเต็มจอใช้ 100vw ซึ่งรวมความกว้าง scrollbar -> กันเลื่อนแนวนอน */
.sol{--line:#e3e8ef;--soft:#f5f7fb;line-height:1.65}
.sol .nw{white-space:nowrap}
.sol .sol-band{margin:0 calc(50% - 50vw);padding:88px 0;background:#fff}
.sol .sol-band.soft{background:var(--soft)}
.sol .sol-band.pt0{padding-top:0}
.sol .sol-wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.sol img{display:block;max-width:100%}
.sol .sol-k{color:var(--brand);font-weight:700;font-size:.85rem;letter-spacing:.8px;text-transform:uppercase;display:flex;align-items:center;gap:.6rem;margin:0 0 .6rem;font-family:var(--font-display)}
.sol .sol-k:before{content:"";width:28px;height:3px;border-radius:2px;background:var(--gold);flex:none}
.sol h2{font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.28;margin:0 0 .7rem;text-wrap:balance}
.sol .sol-sub{color:var(--muted);font-size:1.05rem;max-width:62ch;margin:0}
.sol .sol-head{margin-bottom:44px}

/* Hero */
.sol .sol-hero{padding:26px 0 0;margin:-1rem calc(50% - 50vw) 0;background:#fff}
.sol .sol-hero-top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:56px;align-items:end;padding:22px 0 36px}
.sol .sol-hero h1{font-size:clamp(2.1rem,4.4vw,3.4rem);line-height:1.18;margin:0;text-wrap:balance}
.sol .sol-sys{color:var(--brand);font-weight:600;font-size:1.1rem;margin:.7rem 0 0}
.sol .sol-hero-r p{margin:0 0 1.4rem;color:#3d4a62;font-size:1.08rem}
.sol .sol-btn{display:inline-block;padding:.8rem 1.5rem;border-radius:9px;font-weight:600;text-decoration:none;font-size:.96rem;font-family:var(--font-display)}
.sol .sol-btn-p{background:var(--brand);color:#fff}
.sol .sol-btn-l{color:var(--brand);border:1.5px solid #bcd0ea;margin-left:.5rem}
.sol .sol-hero-img{width:100%;aspect-ratio:21/9;object-fit:cover;object-position:50% 58%;border-radius:18px}
.sol .sol-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:30px;border-top:1px solid var(--line)}
.sol .sol-facts div{padding:22px 24px 0 0}
.sol .sol-facts b{display:block;font-size:1.02rem;margin-bottom:.15rem}
.sol .sol-facts span{color:var(--muted);font-size:.92rem}

/* ระบบทำงานอย่างไร */
.sol .sol-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.sol .sol-step-img{width:100%;aspect-ratio:8/5;object-fit:cover;background:#fff;border-radius:14px;box-shadow:0 1px 0 var(--line),0 10px 26px rgba(15,45,90,.07)}
.sol .sol-step-n{display:flex;align-items:center;gap:.7rem;margin:22px 0 .35rem}
.sol .sol-step-n i{font-style:normal;width:30px;height:30px;border-radius:50%;background:var(--brand);color:#fff;font-weight:700;font-size:.9rem;display:flex;align-items:center;justify-content:center;flex:none}
.sol .sol-step-n:after{content:"";flex:1;height:1px;background:#cdd8e8}
.sol .sol-step:last-child .sol-step-n:after{display:none}
.sol .sol-step h3{font-size:1.08rem;margin:0 0 .3rem}
.sol .sol-step p{margin:0;color:var(--muted);font-size:.93rem}

/* ปัญหา / ระบบประกอบด้วย: หัวข้อซ้าย รายการขวา */
.sol .sol-split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;align-items:start}
.sol .sol-list{list-style:none;margin:0;padding:0}
.sol .sol-list li{display:grid;grid-template-columns:56px 1fr;gap:6px;padding:22px 0;border-top:1px solid var(--line)}
.sol .sol-list li:last-child{border-bottom:1px solid var(--line)}
.sol .sol-list b.n{font-size:1.9rem;line-height:1;color:#c3d0e4;font-weight:700;font-family:var(--font-display)}
.sol .sol-list h3{margin:0 0 .2rem;font-size:1.05rem}
.sol .sol-list p{margin:0;color:var(--muted);font-size:.94rem}
.sol .sol-list p.solo{color:var(--ink);font-size:1rem}

/* สิ่งที่ผู้ใช้ทำได้ */
.sol .sol-feat-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.sol .sol-feat-grid.noimg{grid-template-columns:minmax(0,1fr)}
.sol .sol-feat-grid.noimg .sol-feat{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px}
.sol .sol-feat-img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px}
.sol .sol-feat{list-style:none;margin:28px 0 0;padding:0}
.sol .sol-feat li{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:14px 0}
.sol .sol-feat li img{width:44px;height:44px}
.sol .sol-feat h3{margin:0 0 .15rem;font-size:1.03rem}
.sol .sol-feat p{margin:0;color:var(--muted);font-size:.93rem}

/* ตามขนาดห้อง */
.sol .sol-rooms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.sol .sol-room img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:14px}
.sol .sol-room-t{color:var(--brand);font-weight:700;font-size:.82rem;letter-spacing:.6px;margin:18px 0 .2rem}
.sol .sol-room h3{margin:0 0 .4rem;font-size:1.15rem}
.sol .sol-room p{margin:0 0 .8rem;color:var(--muted);font-size:.93rem}
.sol .sol-room ul{margin:0;padding:0;list-style:none;border-top:1px solid #d6dfec}
.sol .sol-room li{padding:.55rem 0;border-bottom:1px solid #d6dfec;font-size:.92rem}

/* อุปกรณ์ */
.sol .sol-eq-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
.sol .sol-eq{display:block;text-decoration:none;color:inherit}
.sol .sol-eq-ph{aspect-ratio:1/1;background:#f3f5f9;border-radius:16px;display:flex;align-items:center;justify-content:center;padding:13%;transition:background .15s}
.sol .sol-eq-ph img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.sol .sol-eq:hover .sol-eq-ph{background:#e8eef8}
.sol .sol-eq h3{margin:16px 0 .2rem;font-size:1.04rem}
.sol .sol-eq.noimg{border-top:3px solid var(--gold);padding-top:4px}
.sol .sol-eq p{margin:0 0 .45rem;color:var(--muted);font-size:.9rem}
.sol .sol-eq em{font-style:normal;color:var(--brand);font-weight:700;font-size:.88rem}
.sol .sol-eq-note{margin:30px 0 0;color:var(--muted);font-size:.9rem}
.sol .sol-fn{margin:14px 0 0;color:#8c96a8;font-size:.82rem}

/* ปิดท้าย */
.sol .sol-close{background:linear-gradient(135deg,#0f2d5a,#1a4a8d);color:#fff;text-align:center;margin-bottom:-1rem}
.sol .sol-close h2{color:#fff}
.sol .sol-close p{color:#dbe7f7;margin:0 auto 1.8rem;max-width:52ch}
.sol .sol-btn-g{background:var(--gold);color:var(--gold-ink)}
.sol .sol-btn-o{border:1.5px solid rgba(255,255,255,.55);color:#fff;margin-left:.6rem}

@media(max-width:900px){
 .sol .sol-band{padding:64px 0}
 .sol .sol-band.pt0{padding-top:0}
 .sol .sol-hero{padding-top:10px}
 .sol .sol-hero-top,.sol .sol-split,.sol .sol-feat-grid{grid-template-columns:minmax(0,1fr);gap:26px}
 .sol .sol-feat-grid.noimg .sol-feat{grid-template-columns:minmax(0,1fr)}
 .sol .sol-hero-img{aspect-ratio:16/10}
 .sol .sol-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 22px}
 .sol .sol-step-n:after{display:none}
 .sol .sol-rooms{grid-template-columns:minmax(0,1fr);gap:44px}
 .sol .sol-eq-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
}
@media(max-width:560px){
 .sol .sol-facts{grid-template-columns:minmax(0,1fr)}
 .sol .sol-facts div{padding:16px 0 0}
 .sol .sol-steps{grid-template-columns:minmax(0,1fr)}
 .sol .sol-btn{display:block;text-align:center;margin:0 0 .7rem}
 .sol .sol-btn-l,.sol .sol-btn-o{margin-left:0}
 .sol .sol-head{margin-bottom:30px}
}

/* การ์ดหน้าแรก "ห้องประชุมยุคใหม่ทำอะไรได้บ้าง" */
.sol-home .sol-home-k{color:#a07a00;font-weight:700;font-size:.8rem;letter-spacing:.8px;margin:0 0 .3rem;font-family:var(--font-display)}
.sol-home h2{margin:0 0 .5rem}
.sol-home .sol-home-lead{color:var(--muted);max-width:70ch;margin:0 0 1.6rem}
.sol-home .nw{white-space:nowrap}
.bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.bc{display:flex;flex-direction:column;background:#fff;border:1px solid #e3e8ef;border-radius:18px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 2px 10px rgba(15,45,90,.05);transition:transform .2s ease,box-shadow .2s ease}
.bc:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(15,45,90,.12)}
.bc img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.bc-ov{display:flex;flex-direction:column;flex:1;padding:18px 22px 20px}
.bc-en{font-size:.72rem;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;color:#a07a00;margin-bottom:.3rem}
.bc h4{margin:0;font-size:1.14rem;line-height:1.4;color:var(--ink);text-wrap:balance;font-family:var(--font-display)}
.bc-sys{font-size:.85rem;font-weight:600;color:var(--brand);margin:.15rem 0 .55rem}
.bc p{margin:0;font-size:.9rem;line-height:1.6;color:var(--muted)}
.bc-more{margin-top:auto;padding-top:.85rem;font-size:.88rem;font-weight:700;color:var(--brand)}
.bc.wide{grid-column:span 2;flex-direction:row}
.bc.wide img{flex:0 0 56%;width:56%;height:auto;aspect-ratio:auto;min-height:100%}
.bc.wide .bc-ov{justify-content:center;padding:24px 28px}
.bc.wide h4{font-size:1.3rem}
.bento-fn{margin:16px 0 0;color:#8c96a8;font-size:.82rem}
@media(max-width:900px){.bento{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(max-width:560px){.bento{grid-template-columns:minmax(0,1fr)}.bc.wide{grid-column:span 1;flex-direction:column}.bc.wide img{width:100%;flex:none;aspect-ratio:16/10;min-height:0}.bc.wide .bc-ov{padding:18px 22px 20px}}
