/*
 * ZE-Tronics — WordPress layer for the v2 design.
 *
 * Everything the static redesign could not know about: WordPress core
 * classes, editor (Gutenberg / classic) content inside .prose, form plugins
 * (WPForms, Contact Form 7), pagination, comments, the admin bar and a few
 * small components used by WordPress-only templates.
 */

/* ---------- accessibility ---------- */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;padding:0;margin:-1px}
.skip-link:focus{position:fixed!important;left:16px;top:16px;z-index:1000;width:auto;height:auto;clip:auto;clip-path:none;white-space:normal;margin:0;padding:12px 18px;background:var(--accent);color:#fff;font-family:var(--f-display);font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:13px}
.menu > li > a[aria-current]{color:var(--accent)}

/* ---------- admin bar ---------- */
.admin-bar .site-header{top:32px}
.admin-bar .mnav,.admin-bar .search{top:32px}
@media (max-width:782px){
  .admin-bar .site-header,.admin-bar .mnav,.admin-bar .search{top:46px}
}

/* ---------- header extras ---------- */
.site-header .lang a{white-space:nowrap}
.mnav__body > details:first-child,.mnav__body > a:first-child{border-top:0}

/* ---------- links styled as filter buttons ---------- */
a.fbtn{display:inline-flex;align-items:center}

/* ---------- pager (paginate_links) ---------- */
.pager .page-numbers.dots{border-color:transparent}
.pager .is-current,.pager .current{background:var(--ink);border-color:var(--ink);color:#fff}
.pager .prev svg,.pager .next svg{width:14px;height:14px}

/* ---------- cards without images ---------- */
.rcard__ph{display:block;width:100%;height:100%;background:linear-gradient(135deg,var(--paper-2),var(--paper-3))}
.rcard__ph::after{content:"";display:block;width:100%;height:100%;background:url("../brand/logos/ze-tronics-mark-black.svg") center/22% no-repeat;opacity:.08}
.prod__img img{max-width:100%;height:auto}
.bd-hero-logo__name{font-family:var(--f-display);font-size:clamp(28px,3vw,44px);color:var(--ink)}
.bcard__logo b{font-family:var(--f-display);font-size:24px}
.logostrip a span{font-family:var(--f-display);font-weight:600;font-size:14px;text-align:center;padding:0 10px}
@media (max-width:1020px){.logostrip{grid-template-columns:repeat(4,1fr)}}
@media (max-width:640px){.logostrip{grid-template-columns:repeat(2,1fr)}}

/* ---------- numbered card lists (defence page) ---------- */
.ncard__list{margin-top:18px;border-top:1px solid var(--line)}
.ncard__list li{position:relative;padding:10px 0 10px 22px;border-bottom:1px solid var(--line);font-size:14.5px;line-height:1.45;color:var(--ink)}
.ncard__list li::before{content:"";position:absolute;left:2px;top:17px;width:7px;height:7px;background:var(--accent);transform:rotate(45deg)}

/* ---------- Brand & Media: four section links ---------- */
.bnav--4{grid-template-columns:repeat(4,1fr)}
@media (max-width:1020px){.bnav--4{grid-template-columns:repeat(2,1fr)}}

/* ---------- inline search form (no results, widgets) ---------- */
.sform--inline{border-bottom-color:var(--line-strong);max-width:640px;margin:0 auto}
.sform--inline input{color:var(--ink);font-size:clamp(22px,2.4vw,32px)}
.sform--inline .arrow-sq{width:52px;height:52px}

/* =========================================================
   EDITOR CONTENT INSIDE .prose
   ========================================================= */
.prose--page{max-width:780px}
.prose img{height:auto}
.prose iframe,.prose video,.prose embed,.prose object{max-width:100%}
.prose h4,.prose h5,.prose h6{font-family:var(--f-display);font-weight:600;letter-spacing:-.01em;line-height:1.3;color:var(--ink);margin-top:1.6em}
.prose h4{font-size:19px}.prose h5,.prose h6{font-size:16px}
.prose h2 + *,.prose h3 + *{margin-top:.7em}
.prose blockquote{margin:2em 0;padding:4px 0 4px 26px;border-left:3px solid var(--accent);font-family:var(--f-display);font-size:clamp(20px,1.8vw,24px);line-height:1.45;letter-spacing:-.01em;color:var(--ink)}
.prose blockquote cite,.prose blockquote footer{display:block;margin-top:12px;font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-mute);font-style:normal}
.prose hr,.prose .wp-block-separator{border:0;border-top:1px solid var(--line-strong);margin:2.4em 0}
.prose code,.prose kbd{font-family:var(--f-mono);font-size:.86em;background:var(--paper-2);padding:.12em .4em}
.prose pre{font-family:var(--f-mono);font-size:14px;line-height:1.6;background:var(--ink);color:#f3f2ef;padding:22px 24px;overflow-x:auto}
.prose pre code{background:none;padding:0;color:inherit}
.prose mark{background:rgba(249,56,34,.16);color:inherit;padding:0 .15em}
.prose ul ul,.prose ol ol,.prose ul ol,.prose ol ul{margin-top:.55em}
.prose li > p{margin:0}
.prose dl{margin:1.4em 0}
.prose dt{font-weight:600;color:var(--ink)}
.prose dd{margin:0 0 .8em}
/* Gutenberg / classic editor blocks */
.prose .wp-block-image,.prose .wp-caption{margin:2em 0;max-width:100%}
.prose .wp-block-image img,.prose .wp-caption img{display:block}
.prose .wp-element-caption,.prose .wp-caption-text{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;color:var(--text-mute);margin-top:10px}
.prose .alignleft{float:left;margin:.4em 28px 18px 0;max-width:50%}
.prose .alignright{float:right;margin:.4em 0 18px 28px;max-width:50%}
.prose .aligncenter{margin-left:auto;margin-right:auto;display:block}
.prose .alignwide,.prose .alignfull{max-width:none}
.prose::after{content:"";display:table;clear:both}
.prose .wp-block-table{margin:1.8em 0;overflow-x:auto;border:1px solid var(--line-strong)}
.prose .wp-block-table table{margin:0}
.prose .wp-block-table td,.prose .wp-block-table th{border:0;border-top:1px solid var(--line)}
.prose .wp-block-gallery,.prose .gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin:2em 0;padding:0}
.prose .gallery-item,.prose .wp-block-gallery .wp-block-image{margin:0}
.prose .wp-block-gallery figure::before,.prose .gallery li::before{display:none}
.prose .wp-block-embed{margin:2em 0}
.prose .wp-block-embed__wrapper{position:relative}
.prose .wp-embed-aspect-16-9 .wp-block-embed__wrapper{aspect-ratio:16/9}
.prose .wp-embed-aspect-16-9 iframe{position:absolute;inset:0;width:100%;height:100%}
.prose .wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:1.8em 0}
.prose .wp-block-button__link,.prose a.button{display:inline-flex;align-items:center;height:52px;padding:0 26px;background:var(--accent);color:#fff;font-family:var(--f-display);font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;transition:background .3s}
.prose .wp-block-button__link:hover,.prose a.button:hover{background:var(--ink);color:#fff}
.prose .is-style-outline .wp-block-button__link{background:none;border:1px solid var(--ink);color:var(--ink)}
.prose .wp-block-quote.is-style-large{font-size:28px}
.prose .wp-block-pullquote{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);padding:28px 0;margin:2em 0}
.prose .wp-block-pullquote blockquote{border:0;padding:0;margin:0}
.prose .wp-block-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px;margin:1.8em 0}
.prose .wp-block-column > * + *{margin-top:1em}
.prose .has-text-align-center{text-align:center}
.prose .has-text-align-right{text-align:right}
.prose .wp-block-file{display:flex;align-items:center;gap:16px;border:1px solid var(--line-strong);padding:14px 18px}
.prose .wp-block-file__button{margin-left:auto;background:var(--ink);color:#fff;padding:8px 14px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.prose .wp-block-file__button::after{display:none}
.prose ul.wp-block-list li::before{display:block}
.prose .post-brands{display:grid;gap:12px;margin-top:2.4em}
.prose .post-brands .brandcard{margin-top:0;background-image:none}
.prose .post-brands .brandcard b{display:block}
.prose .post-brands .brandcard .arrow-sq{width:44px;height:44px}
.prose a.brandcard{background:#fff}
.tabs__panel.prose{max-width:none}
.tabs__panel .lede{font-size:clamp(19px,1.6vw,23px)}

/* ---------- table of contents: hide when JS finds fewer than two headings ---------- */
.toc[hidden]{display:none}

/* =========================================================
   FORMS (contact page: WPForms / Contact Form 7 / any plugin)
   ========================================================= */
.cform__body{margin-top:4px}
.cform__body .wpforms-container,.cform__body .wpcf7{margin:0!important;max-width:none!important}
.cform__body .wpforms-field-container,.cform__body .wpcf7-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cform__body .wpforms-field{padding:0!important;grid-column:span 1}
.cform__body .wpforms-field-textarea,.cform__body .wpforms-field-select,.cform__body .wpforms-field-name,.cform__body .wpforms-field-checkbox,.cform__body .wpforms-field-radio,.cform__body .wpforms-field-gdpr-checkbox,.cform__body .wpforms-field-html,.cform__body .wpforms-field-divider,.cform__body .wpforms-field-file-upload,.cform__body .wpforms-field-address,.cform__body .wpforms-field-captcha,.cform__body .wpforms-field-turnstile,.cform__body .wpforms-field-recaptcha{grid-column:1 / -1}
.cform__body .wpcf7-form > p{margin:0;grid-column:1 / -1}
.cform__body .wpforms-field-label,.cform__body .wpforms-field-sublabel,.cform__body .wpcf7-form label,.cform__body label{display:block;font-family:var(--f-mono)!important;font-size:11px!important;font-weight:400!important;letter-spacing:.08em;text-transform:uppercase;color:var(--text-soft)!important;margin:0 0 8px!important}
.cform__body .wpforms-required-label{color:var(--accent)!important}
.cform__body input[type=text],.cform__body input[type=email],.cform__body input[type=tel],.cform__body input[type=url],.cform__body input[type=number],.cform__body input[type=date],.cform__body select,.cform__body textarea{width:100%!important;max-width:none!important;height:auto!important;font:inherit!important;font-size:16px!important;color:var(--ink)!important;background-color:var(--paper-2)!important;border:1px solid transparent!important;border-bottom:1px solid var(--line-strong)!important;border-radius:0!important;padding:14px!important;outline:0;box-shadow:none!important;transition:background .25s,border-color .25s}
.cform__body textarea{min-height:150px!important;resize:vertical}
.cform__body select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%)!important;background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important;padding-right:40px!important}
.cform__body input:focus,.cform__body select:focus,.cform__body textarea:focus{background-color:#fff!important;border-color:var(--ink)!important}
.cform__body .wpforms-field-row{max-width:none!important;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cform__body .wpforms-field-row::before,.cform__body .wpforms-field-row::after{display:none!important}
.cform__body .wpforms-field-row-block{width:auto!important;padding:0!important;float:none!important}
.cform__body .wpforms-field-sublabel{margin:6px 0 0!important;font-size:10px!important;color:var(--text-mute)!important}
.cform__body .wpforms-field-description{font-size:13px;color:var(--text-mute);margin-top:6px}
.cform__body .wpforms-submit-container,.cform__body .wpcf7-submit{margin-top:10px!important}
.cform__body .wpforms-submit-container{padding:0!important;grid-column:1 / -1}
.cform__body button[type=submit],.cform__body input[type=submit]{display:inline-flex!important;align-items:center;justify-content:center;height:56px!important;padding:0 34px!important;background:var(--accent)!important;border:1px solid var(--accent)!important;border-radius:0!important;color:#fff!important;font-family:var(--f-display)!important;font-size:13px!important;font-weight:600!important;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .35s,border-color .35s;box-shadow:none!important}
.cform__body button[type=submit]:hover,.cform__body input[type=submit]:hover{background:var(--ink)!important;border-color:var(--ink)!important}
.cform__body .wpforms-error,.cform__body .wpcf7-not-valid-tip{color:var(--accent-deep)!important;font-size:13px!important;margin-top:6px}
.cform__body .wpforms-confirmation-container-full,.cform__body .wpcf7-response-output{background:var(--paper-2)!important;border:0!important;border-left:3px solid var(--accent)!important;color:var(--ink)!important;padding:16px 18px!important;margin:16px 0 0!important}
.cform__body ul{list-style:none;padding:0}
@media (max-width:640px){
  .cform__body .wpforms-field-container,.cform__body .wpcf7-form,.cform__body .wpforms-field-row{grid-template-columns:1fr}
  .cform__body .wpforms-field{grid-column:1 / -1}
}

/* ---------- comments ---------- */
.comments{max-width:880px}
.comments__title{margin-bottom:28px}
.comments__list,.comments__list .children{list-style:none;margin:0;padding:0}
.comments__list .children{padding-left:28px;border-left:1px solid var(--line-strong)}
.comments__list .comment-body{padding:22px 0;border-top:1px solid var(--line-strong)}
.comments__list .comment-author{display:flex;align-items:center;gap:12px;font-family:var(--f-display);font-weight:600}
.comments__list .comment-author img{width:40px;height:40px}
.comments__list .comment-metadata{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-mute);margin:6px 0 10px}
.comments__list .reply a{font-family:var(--f-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}
.comment-respond{margin-top:36px}
.comment-respond .comment-reply-title{font-size:22px;text-transform:uppercase;margin-bottom:18px}
.comment-form{display:grid;gap:16px}
.comment-form label{display:block;font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-soft);margin-bottom:8px}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{width:100%;font:inherit;font-size:16px;background:#fff;border:1px solid var(--line-strong);padding:14px}
.comment-form .comments__submit{height:52px;padding:0 28px;font-family:var(--f-display);font-weight:600;letter-spacing:.1em;text-transform:uppercase;background:var(--accent);color:#fff;border:0}

/* ---------- small screens ---------- */
@media (max-width:640px){
  .prose .alignleft,.prose .alignright{float:none;margin:1.4em 0;max-width:100%}
}

/* ---------- [ze_products] shortcode columns ---------- */
.prod-grid--cols-1{grid-template-columns:1fr}
.prod-grid--cols-2{grid-template-columns:repeat(2,1fr)}
.prod-grid--cols-3{grid-template-columns:repeat(3,1fr)}
@media (max-width:1020px){.prod-grid--cols-3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.prod-grid--cols-2,.prod-grid--cols-3{grid-template-columns:1fr}}
.prose .prod-grid{margin:2em 0}
.prose .prod-grid h3{margin-top:0;font-size:inherit}
.prose .prod-grid a{background:none}

/* Search rows: let long URLs and words wrap instead of widening the page. */
.sres-row > div{min-width:0}
.sres-row .url,.sres-row h3{overflow-wrap:anywhere}

/* Long Azerbaijani / Russian words on small screens: wrap inside the
   column instead of widening the page. */
@media (max-width:760px){
  h1,h2,h3,.type__s,.h-xl,.h-lg{overflow-wrap:anywhere;hyphens:auto}
  .cta .container>*,.sol-grid>*,.srv-row>*,.sec-head>*,.pcols>*,.faq-wrap>*,.split>*,.sol-row>*{min-width:0}
  .sol-row__t{overflow-wrap:anywhere;hyphens:auto}
}
