/* SLWEB solution catalogue skin — intentionally separated from product/plugin styling. */
@import url("../smy_plugin/style.css");

#bo_gall .gall_box { border-color:#d8d8d8; }
#bo_gall .gall_box:hover { border-color:#171717; }
#bo_v .subject .tit { font-weight:400 !important; }
#bo_v .spec .subject .sub_tit { line-height:1.75; }
#img-gallery-wrapper { background:#fff !important; }

/* Dedicated solution detail: four key screens, description and inquiry only. */
#bo_v.solution-view { width:100%; margin:0; border:0; background:#fff; color:#171717; }
.solution-view-top { display:flex; justify-content:flex-end; padding:0 0 24px; border-bottom:1px solid #dedede; }
.solution-view-nav { display:flex; gap:8px; }.solution-line-btn { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:0 16px; border:1px solid #171717; color:#171717; font-size:14px; font-weight:500; }
.solution-view-head { padding:clamp(54px,7vw,108px) 0; border-bottom:2px solid #171717; }.solution-kicker { margin:0 0 15px; color:#5258ff; font-size:12px; font-weight:600; letter-spacing:.1em; }.solution-view-head h1 { margin:0; font-size:clamp(38px,4.4vw,68px); font-weight:400; line-height:1.12; letter-spacing:-.07em; }.solution-summary { max-width:760px; margin:20px 0 0; color:#5d5d5d; font-size:18px; line-height:1.8; word-break:keep-all; }
.solution-showcase { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(290px,.7fr); gap:clamp(30px,5vw,90px); padding:clamp(54px,7vw,110px) 0; border-bottom:1px solid #dedede; }.solution-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; align-content:start; }.solution-shot { display:block; aspect-ratio:1.45/1; overflow:hidden; border:1px solid #dedede; background:#fff; }.solution-shot img { width:100%; height:100%; object-fit:cover; transition:transform .25s ease; }.solution-shot:hover img { transform:scale(1.025); }.solution-shot-empty { display:flex; align-items:center; justify-content:center; grid-column:1/-1; color:#777; font-size:14px; }
.solution-cta { padding:30px; align-self:start; border:1px solid #171717; background:#171717; color:#fff; }.solution-cta .solution-kicker { color:#aeb1ff; }.solution-cta h2 { margin:0; font-size:clamp(25px,2.4vw,38px); font-weight:400; line-height:1.22; letter-spacing:-.055em; }.solution-cta p { margin:20px 0 0; color:#c5c5c5; font-size:15px; line-height:1.8; word-break:keep-all; }.solution-contact-btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; margin-top:30px; padding:0 18px; border:1px solid #fff; color:#fff; font-size:14px; font-weight:500; }
.solution-description { display:grid; grid-template-columns:minmax(240px,.7fr) minmax(0,1.5fr); gap:clamp(36px,8vw,150px); padding:clamp(58px,8vw,130px) 0; border-bottom:1px solid #dedede; }.solution-description h2 { margin:0; font-size:clamp(30px,3vw,48px); font-weight:400; letter-spacing:-.065em; }.solution-content { color:#4f4f4f; font-size:16px; line-height:1.9; word-break:keep-all; }.solution-content img { max-width:100%; height:auto; }.solution-bottom { display:flex; justify-content:center; padding:56px 0 20px; }.solution-bottom .solution-contact-btn { margin:0; border-color:#171717; background:#171717; color:#fff; }
@media(max-width:860px){.solution-showcase,.solution-description{grid-template-columns:1fr}.solution-cta{max-width:none}.solution-description{gap:28px}}@media(max-width:640px){.solution-view-head{padding:62px 0}.solution-gallery{grid-template-columns:1fr;gap:12px}.solution-summary{font-size:16px}.solution-showcase{padding:62px 0}.solution-description{padding:68px 0}.solution-cta{padding:26px}.solution-contact-btn{width:100%}}
