/* Compact, readable phone layout. Desktop and tablet keep their existing design. */
.article-faq{display:grid;gap:10px;margin:24px 0 32px}
.article-faq details{border:1px solid var(--line);border-radius:12px;padding:0 18px;background:var(--surface)}
.article-faq summary{cursor:pointer;padding:17px 24px 17px 0;list-style:none;font-weight:700;line-height:1.45;position:relative;color:var(--ink)}
.article-faq summary::-webkit-details-marker{display:none}
.article-faq summary::after{content:'+';position:absolute;right:0;top:17px;color:var(--blue-dark);font-size:22px;line-height:1}
.article-faq details[open] summary::after{content:'−'}
.article-faq p{margin:0 0 18px!important;font-size:16px;line-height:1.65}
.article-source{font-size:14px;border-top:1px solid var(--line);padding-top:20px}
.mobile-faq-toggle{display:none}
.mobile-section-nav{display:none}
.article-jump{display:none}
.blog-more{display:none}
@media(max-width:760px){
  .mobile-section-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:14px 17px 18px;background:var(--paper,#fff);border-bottom:1px solid var(--line)}
  .mobile-section-nav a{display:grid;place-items:center;min-height:44px;padding:7px 4px;border:1px solid var(--line);border-radius:8px;color:var(--blue-dark);background:var(--surface,#fff);font-size:13px;font-weight:700;text-align:center}
  .hero,.section,.about,.contact,.details-section{scroll-margin-top:86px}
  .hero .lead,.hero-trust>span{display:none!important}
  .hero-showcase{height:280px!important}
  .services.section,.realizations.section,.faq.section,.home-process.section{padding-top:46px!important;padding-bottom:52px!important}
  .section-heading,.realizations-head,.faq-heading{margin-bottom:24px!important}
  .service-grid{gap:12px!important}
  .service-grid .service-card{display:grid!important;grid-template-columns:104px minmax(0,1fr)!important;grid-template-rows:auto 1fr;gap:0 14px;min-height:124px!important;padding:0 12px 0 0!important;align-items:start}
  .service-grid .service-card .service-photo{grid-column:1!important;grid-row:1/3!important;width:104px!important;height:100%!important;min-height:124px!important;object-fit:cover;border-radius:12px 0 0 12px}
  .service-grid .service-card h3{grid-column:2;grid-row:1;margin:17px 0 4px!important;font-size:18px!important;line-height:1.22}
  .service-grid .service-card>span{grid-column:2;grid-row:2;margin:0 0 13px!important;font-size:13px!important;line-height:1.45!important}
  .service-grid .service-card .new-badge{top:6px;left:5px;padding:4px 6px;font-size:8px}
  .local-services{padding:18px!important;margin-top:18px!important}
  .about,.details-section{gap:22px!important}
  .about-number{width:160px!important;height:160px!important}
  .about .benefits{gap:8px!important}
  .realizations-grid .realization-card:nth-child(n+3){display:none!important}
  .realizations-grid .realization-card{height:190px!important;min-height:0!important}
  .realizations-grid .realization-card img{height:100%!important;object-fit:cover}
  .realizations-head>a{display:inline-block;margin-top:10px;min-height:44px;padding:10px 0;color:var(--blue-dark);font-weight:700}
  .faq-list{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:18px!important}
  .faq-list .faq-subheading{font-size:20px!important;margin:20px 0 2px!important}
  .faq-list .faq-item summary{padding:16px 44px 16px 16px!important;line-height:1.35;font-size:15px}
  .faq-list .faq-item p{padding:0 16px 18px!important;font-size:15px;line-height:1.6}
  .faq-list .faq-item.is-collapsed,.faq-list .faq-subheading.is-collapsed{display:none!important}
  .mobile-faq-toggle{display:block;margin:18px 0 0;width:100%;min-height:48px;padding:12px 16px;border:1px solid var(--blue-dark);border-radius:9px;color:var(--blue-dark);background:var(--surface,#fff);font:inherit;font-size:15px;font-weight:700;text-align:center;cursor:pointer}
  .faq-cta{margin-top:19px!important}
  .home-process .steps{gap:10px!important;margin-top:20px!important}
  .home-process .step{padding:17px 18px!important}
  .home-process .step h3{margin:5px 0!important;font-size:18px!important}
  .home-process .step p{margin:0;font-size:14px;line-height:1.5}
  .blog-hero{padding-top:36px!important;padding-bottom:26px!important}
  .blog-filter-bar .blog-filters{padding:14px 17px!important}
  .posts{gap:14px!important;padding-top:22px!important;padding-bottom:25px!important}
  .posts .post-card{border-radius:12px!important}
  .posts .post-number{min-height:64px!important;height:64px!important;padding:10px 18px!important}
  .posts .post-number span{margin-bottom:3px!important;font-size:9px}
  .posts .post-number strong{font-size:23px!important}
  .posts .post-content{padding:18px!important}
  .posts .post-content h2{font-size:21px!important;line-height:1.25!important;margin:0 0 10px}
  .posts .post-content>p{font-size:14px;line-height:1.55;margin:0 0 12px}
  .posts .meta{font-size:12px;gap:8px}
  .posts .meta-avatar{width:32px;height:32px}
  .posts .read-more{margin-top:13px;font-size:13px}
  .blog-more{display:block;width:calc(100% - 40px);margin:0 20px 38px;padding:14px 16px;min-height:48px;border:1px solid var(--blue-dark);border-radius:9px;background:var(--surface,#fff);color:var(--blue-dark);font:inherit;font-weight:700;cursor:pointer}
  .blog-more[hidden]{display:none!important}
  .article{padding-top:30px!important}
  .article-body h2[id],.article-body h3[id]{scroll-margin-top:96px}
  .article-jump{display:block;margin:-10px 0 28px;padding:0 15px;border:1px solid var(--line);border-radius:10px;background:var(--surface,#fff)}
  .article-jump summary{padding:14px 0;color:var(--blue-dark);font-weight:700;cursor:pointer}
  .article-jump nav{display:grid;gap:8px;padding:0 0 14px}
  .article-jump a{display:block;padding:9px 11px;border-radius:7px;background:var(--pale,#eef9fd);color:var(--ink,#10252e);font-size:14px;line-height:1.35}
  .article .back{margin-bottom:24px}
  .article .meta{margin-bottom:28px}
  .article-body{line-height:1.65!important}
  .article-body p{margin-bottom:17px}
  .article-body h2{margin:38px 0 13px;font-size:25px!important}
  .article-body h3{margin:30px 0 12px!important;font-size:21px!important}
  .article-body h4{margin:22px 0 9px!important;font-size:18px!important}
  .article-body hr{margin:28px 0!important}
}
html[data-theme="dark"] .blog-more{background:#161b22}
@media(max-width:360px){
  .service-grid .service-card{grid-template-columns:88px minmax(0,1fr)!important;gap:0 10px}
  .service-grid .service-card .service-photo{width:88px!important}
  .service-grid .service-card h3{font-size:17px!important}
}
