.suneng-solution-article { background: #fff; color: #082f5c; }
.suneng-solution-article .suneng-article-breadcrumb { padding-block: 30px 0; font-size: 14px; line-height: 1.7; }
.suneng-solution-article .suneng-article-layout { width: min(1480px, 88%); grid-template-columns: minmax(0, 1fr) clamp(380px, 30vw, 440px); gap: clamp(32px, 4vw, 72px); margin: 56px auto 80px; }
.suneng-solution-article .suneng-article-heading h1 { font-size: clamp(32px, 3vw, 48px) !important; line-height: 1.18 !important; color: #082f5c; letter-spacing: -.025em !important; text-wrap: balance; margin: 16px 0 24px; }
.suneng-solution-article .suneng-solution-summary { font-size: 20px !important; line-height: 1.6 !important; color: #3a5569; margin-bottom: 26px; }
.suneng-solution-article .suneng-article-date { color: #4e6575; font-size: 13px; }
.suneng-solution-article .suneng-article-share { border-block: 1px solid #dce7ee; padding-block: 16px; margin-bottom: 36px; }
.suneng-solution-article .suneng-article-content { max-width: 74ch; }
main.suneng-solution-article .suneng-article-content p,main.suneng-solution-article .suneng-article-content li { font-size: 17px !important; line-height: 1.8 !important; color: #263e50; }
main.suneng-solution-article .suneng-article-content h2 { margin: 48px 0 18px; font-size: 27px !important; line-height: 1.3 !important; color: #082f5c; text-wrap: balance; }
main.suneng-solution-article .suneng-article-content h3 { margin: 30px 0 12px; font-size: 20px !important; line-height: 1.4 !important; color: #082f5c; }
.suneng-solution-article .suneng-article-content figure { margin: 34px 0; }
.suneng-solution-article .suneng-article-content img { height: auto; max-width: 100%; }
.suneng-solution-article .suneng-article-content figcaption { font-size: 13px; line-height: 1.6; color: #526777; }
.suneng-solution-article .suneng-article-content .wp-block-table,.suneng-solution-article .suneng-article-table { overflow-x: auto; max-width: 100%; margin: 28px 0; }
.suneng-solution-article .suneng-article-content table { font-size: 15px; line-height: 1.6; min-width: 570px; border-collapse: collapse; width: 100%; }
.suneng-solution-article .suneng-article-content th { background: #edf8fe; color: #082f5c; }
.suneng-solution-article .suneng-article-content th,.suneng-solution-article .suneng-article-content td { padding: 16px; vertical-align: top; border: 1px solid #d3e1e9; }
.suneng-solution-article .suneng-article-sidebar { position: sticky; top: min(120px, calc(100dvh - var(--solution-enquiry-height, 860px) - 24px)); align-self: start; min-width: 0; max-width: none; scroll-margin-top: 140px; max-height: none; overflow: visible; }
body.admin-bar .suneng-solution-article .suneng-article-sidebar { top: min(152px, calc(100dvh - var(--solution-enquiry-height, 860px) - 24px)); }
.suneng-solution-article .suneng-article-enquiry { display: grid; grid-template-columns: 100px minmax(0, 1fr); align-items: center; gap: 24px 16px; background: #edf8fe; padding: 28px 24px; border-radius: 0; }
.suneng-solution-article .suneng-article-enquiry > img { display: block; width: 100%; height: auto; margin: 0; }
.suneng-solution-article .suneng-article-enquiry h2 { color: #082f5c; font-size: 23px !important; line-height: 1.3 !important; margin: 0; }
.suneng-solution-article .suneng-article-enquiry form { grid-column: 1 / -1; gap: 18px; min-width: 0; }
.suneng-solution-article .suneng-article-enquiry label { color: #263e50; gap: 6px; font-size: 14px; }
.suneng-solution-article .suneng-article-enquiry input:not([type=file]),.suneng-solution-article .suneng-article-enquiry textarea { border-color: #c5dce9; border-radius: 0; padding: 12px 14px; font-size: 16px; line-height: 24px; }
.suneng-solution-article .suneng-article-enquiry textarea { min-height: 120px; height: 120px; }
.suneng-solution-article .suneng-article-enquiry input::placeholder,.suneng-solution-article .suneng-article-enquiry textarea::placeholder { color: #526777; }
.suneng-solution-article .suneng-article-enquiry input:focus-visible,.suneng-solution-article .suneng-article-enquiry textarea:focus-visible { outline: 2px solid #087fc2; outline-offset: 2px; }
.suneng-solution-article .suneng-article-enquiry .enquiry-file-control { background: #fff; border: 1px dashed #7ca4bc; border-radius: 0; padding: 16px; }
.suneng-solution-article .suneng-article-enquiry .enquiry-file-control small { font-size: 12px; }
.suneng-solution-article .suneng-article-enquiry .suneng-news-button { width: 100%; min-height: 50px; background: #e8a52d; color: #082f5c; border-radius: 0; font-size: 15px; }
.suneng-solution-article .suneng-article-email { text-align: center; font-size: 14px; overflow-wrap: anywhere; }
.suneng-solution-next { background: #edf8fe; padding: 28px; margin-top: 42px; }
.suneng-solution-next h2 { font-size: 25px !important; margin: 0 0 14px; }
.suneng-solution-next p { line-height: 1.7; }
.suneng-solution-next a { display: inline-block; margin-top: 12px; color: #005e9e; text-decoration: underline; text-underline-offset: 4px; }
.suneng-solution-library { padding-block: 0 88px; scroll-margin-top: 140px; }
.suneng-solution-library-head { margin-bottom: 24px; }
.suneng-solution-library-head h2 { font-size: clamp(30px, 2.6vw, 42px) !important; line-height: 1.2; font-weight: 600; text-wrap: balance; margin: 0; color: #171717; }
.suneng-solution-story-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.suneng-solution-story { position: relative; min-width: 0; display: flex; flex-direction: column; background: #f4f4f4; border-radius: 8px; overflow: hidden; }
.suneng-solution-anchor { position: absolute; top: 0; scroll-margin-top: 140px; }
.suneng-solution-story-image { display: block; background: #edf8fe; aspect-ratio: 16/9; overflow: hidden; flex-shrink: 0; }
.suneng-solution-story-image:empty { display: none; }
.suneng-solution-story-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.suneng-solution-story-body { display: flex; flex-direction: column; flex: 1; padding: clamp(24px, 2vw, 32px); }
.suneng-solution-story h3 { font-size: clamp(20px, 1.6vw, 25px) !important; line-height: 1.35 !important; font-weight: 600; text-transform: none !important; margin: 0 0 16px; }
.suneng-solution-story h3 a { color: #171717; text-decoration: none; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.suneng-solution-story p { font-size: 16px !important; line-height: 1.6 !important; color: #3a4852; margin: 0 0 24px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.suneng-solution-story-meta { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; margin-top: auto; }
.suneng-solution-story-meta time { font-size: 12px; line-height: 1.5; color: #465560; }
.suneng-solution-read { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 12px 20px; border-radius: 4px; background: #fff; color: #082f5c; font-size: 12px; line-height: 1.4; font-weight: 600; text-transform: uppercase; text-decoration: none; transition: background .2s ease, color .2s ease; }
.suneng-solution-read:hover { background: #005e9e; color: #fff; }
.suneng-solutions-library-page .jk-solutions-intro h2 { font-size: clamp(30px, 2.6vw, 42px) !important; font-weight: 600; line-height: 1.25; max-width: 1150px; }
.suneng-solutions-library-page .jk-solutions-intro p { max-width: 1020px; margin-top: 24px; font-size: 17px !important; line-height: 1.65; }
.suneng-solutions-library-page .jk-solutions-faq { background: #fff; }
.suneng-solutions-library-page .jk-solutions-faq-layout { grid-template-columns: minmax(0, 1fr) minmax(320px, 370px); gap: clamp(40px, 5vw, 80px); }
.suneng-solutions-library-page .jk-solutions-faq h2 { margin: 0 0 32px; }
.suneng-solutions-library-page .suneng-solutions-enquiry { min-width: 0; }
.suneng-solutions-library-page .suneng-article-enquiry h2 { font-size: 24px !important; }
.suneng-solution-related { margin-bottom: 80px; }
.suneng-solution-related > h2 { margin-bottom: 32px; font-size: 32px !important; color: #082f5c; }
.suneng-solution-pagination { display: flex; gap: 20px; margin-top: 34px; }
.suneng-solution-topics { padding-block: 0 72px; }
.suneng-solution-topics h2 { font-size: 32px !important; margin-bottom: 25px; }
.suneng-solution-topics ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 30px; list-style: none; padding: 0; margin: 0; }
.suneng-solution-topics li { border-bottom: 1px solid #c5dce9; scroll-margin-top: 140px; }
.suneng-solution-topics a { display: flex; justify-content: space-between; gap: 20px; padding-block: 20px; font-size: 16px; line-height: 1.5; color: #082f5c; text-decoration: none; }
.suneng-solution-topics a:hover { color: #005e9e; text-decoration: underline; }
.suneng-solution-evidence { display: grid; grid-template-columns: 1fr 1fr; gap: 6%; align-items: center; padding-block: 20px 86px; scroll-margin-top: 140px; }
.suneng-solution-evidence figure { margin: 0; }
.suneng-solution-evidence img { width: 100%; height: auto; display: block; }
.suneng-solution-evidence figcaption { font-size: 13px; color: #526777; line-height: 1.6; margin-top: 12px; }
.suneng-solution-evidence h2 { font-size: clamp(30px, 3vw, 42px) !important; line-height: 1.2; margin-bottom: 24px; }
.suneng-solution-evidence p { font-size: 16px; line-height: 1.75; color: #3a5569; margin-bottom: 18px; }
.suneng-solution-evidence a { display: block; color: #005e9e; margin-top: 16px; text-decoration: underline; text-underline-offset: 4px; }
.suneng-solution-article a:focus-visible,.suneng-solution-article button:focus-visible,.suneng-solution-library a:focus-visible { outline: 2px solid #005e9e; outline-offset: 5px; }
@media (max-width: 1100px) {
  .suneng-solution-article .suneng-article-layout { grid-template-columns: minmax(0, 1fr); width: min(860px, 88%); }
  .suneng-solution-article .suneng-article-sidebar { position: static; max-height: none; overflow: visible; width: 100%; max-width: none; }
  .suneng-solution-article .suneng-article-enquiry { max-width: 600px; margin-inline: auto; }
  .suneng-solution-story-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .suneng-solutions-library-page .jk-solutions-faq-layout { grid-template-columns: minmax(0, 1fr); }
  .suneng-solutions-enquiry { max-width: 600px; width: 100%; }
}
@media (max-width: 720px) {
  .suneng-solution-topics ul,.suneng-solution-evidence { grid-template-columns: minmax(0, 1fr); }
  .suneng-solution-evidence { gap: 28px; }
  .suneng-solution-article .suneng-article-layout { width: calc(100% - 36px); margin-top: 32px; }
  .suneng-solution-library-head,.suneng-solution-story-grid { grid-template-columns: minmax(0, 1fr); }
  .suneng-solution-library-head { gap: 20px; }
  .suneng-solution-library { padding-bottom: 64px; }
  .suneng-solutions-library-page .jk-solutions-intro { padding-block: 40px 56px; }
  .suneng-solution-article .suneng-solution-summary { font-size: 18px !important; }
  main.suneng-solution-article .suneng-article-content p,main.suneng-solution-article .suneng-article-content li { font-size: 16px !important; line-height: 1.75 !important; }
  .suneng-solution-article .suneng-article-enquiry,.suneng-solution-next { padding: 22px; }
}
