/* ---- WordPress-specific additions (layered on top of site.css) ---- */

/* content images */
.ms-page img { max-width: 100%; }
.ms-page .ms-product-card-img img, .ms-page .ms-pd-hero-img img, .ms-page .ms-hero-img img { height: 100%; }
.ms-page .ms-gallery img { height: auto; }
.wp-block-group { box-sizing: border-box; }
main .wp-block-group, main p, main h1, main h2, main h3, main ul, main ol { margin-top: 0; }

/* search panel: hidden until opened (React version rendered conditionally) */
.ms-search-overlay, .ms-search-panel { display: none; }
.ms-search.open .ms-search-overlay, .ms-search.open .ms-search-panel { display: block; }
.ms-search-panel form { margin: 0; }
.ms-search-list { display: flex; flex-direction: column; gap: 6px; max-width: 760px; margin: 0 auto; }

/* language dropdown: hidden until opened */
.ms-lang-menu { display: none; }
.ms-lang.open .ms-lang-menu { display: flex; flex-direction: column; }
.ms-lang-menu a { display: block; padding: 8px 14px; border-radius: 8px; color: var(--ms-dark); text-decoration: none; font-size: 13.5px; }
.ms-lang-menu a:hover { background: rgba(239,102,41,.08); color: #EF6629; }
.ms-lang-menu a.active { font-weight: 700; color: #EF6629; }

/* tabs panels */
.ms-tab-panel { display: none; }
.ms-tab-panel.active { display: block; }

/* FAQ accordion */
.ms-faq-a { display: none; }
.ms-faq-item.open .ms-faq-a { display: block; }
.ms-faq-arrow { transition: transform .25s; }
.ms-faq-item.open .ms-faq-arrow { transform: rotate(45deg); }

/* admin bar offset for sticky navbar */
body.admin-bar .ms-navbar { top: 32px; }
@media (max-width: 782px) { body.admin-bar .ms-navbar { top: 46px; } }

/* blog */
.ms-blog-title { font-size: 36px; font-weight: 800; color: var(--ms-dark); margin: 0 0 10px; line-height: 1.25; }
.ms-blog-meta { color: var(--ms-light); font-size: 13.5px; margin: 0 0 26px; }
.ms-blog-cover { border-radius: 14px; margin-bottom: 30px; width: 100%; }
.ms-blog-body { color: var(--ms-gray); font-size: 15.5px; line-height: 1.85; }
.ms-blog-body h2 { color: var(--ms-dark); font-size: 24px; margin: 34px 0 12px; }
.ms-blog-body h3 { color: var(--ms-dark); font-size: 19px; margin: 28px 0 10px; }
.ms-blog-body p { margin: 0 0 16px; }
.ms-blog-body ul, .ms-blog-body ol { margin: 0 0 16px; padding-left: 22px; }
.ms-blog-body li { margin-bottom: 8px; }
.ms-blog-body img { border-radius: 12px; }
.ms-blog-card small { color: var(--ms-light); font-size: 12.5px; }
.ms-blog-card-body { padding: 22px; }
.ms-blog-card-body h3 { font-size: 17.5px; font-weight: 700; color: var(--ms-dark); margin: 6px 0 10px; line-height: 1.4; }
.ms-blog-card-body p { color: var(--ms-gray); font-size: 13.5px; line-height: 1.65; margin: 0; }
.ms-pagination { margin-top: 46px; text-align: center; }
.ms-pagination .page-numbers { display: inline-block; padding: 8px 16px; border-radius: 8px; border: 1px solid var(--ms-border); margin: 0 4px; color: var(--ms-dark); text-decoration: none; }
.ms-pagination .page-numbers.current { background: var(--ms-orange); color: #fff; border-color: var(--ms-orange); }

/* CF7 contact form — inherit ms-form look */
.ms-form .wpcf7-form p { margin: 0 0 14px; }
.ms-form .wpcf7-form label { font-size: 13.5px; font-weight: 600; color: var(--ms-dark); display: block; margin-bottom: 6px; }
.ms-form .wpcf7-form-control.wpcf7-text,
.ms-form .wpcf7-form-control.wpcf7-email,
.ms-form .wpcf7-form-control.wpcf7-textarea { width: 100%; padding: 13px 16px; border: 1.5px solid var(--ms-border); border-radius: 10px; font-family: inherit; font-size: 14.5px; box-sizing: border-box; }
.ms-form .wpcf7-form-control:focus { border-color: var(--ms-orange); outline: none; }
.ms-form .wpcf7-submit { display: inline-block; background: var(--ms-orange); color: #fff; border: none; padding: 14px 34px; border-radius: 10px; font-weight: 700; font-size: 15px; cursor: pointer; font-family: inherit; transition: all .25s; }
.ms-form .wpcf7-submit:hover { background: var(--ms-orange-dark); transform: translateY(-2px); box-shadow: 0 8px 25px rgba(239,102,41,.35); }
.ms-form .wpcf7-response-output { border: none !important; color: #1a7f37; font-size: 14px; margin: 14px 0 0 !important; padding: 0 !important; }
.ms-form .wpcf7-not-valid-tip { font-size: 12.5px; }

/* product spec table inside content */
.ms-spec-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.ms-spec-table td { padding: 10px 14px; border-bottom: 1px solid var(--ms-border); }
.ms-spec-table td:first-child { color: var(--ms-gray); width: 45%; }
.ms-spec-table td:last-child { color: var(--ms-dark); font-weight: 600; }

/* search item as block link on results page */
a.ms-search-item { text-decoration: none; display: flex; gap: 14px; align-items: flex-start; }
