/*
Theme Name: OP Devices
Theme URI: https://www.opdevices.com
Author: OP Devices
Author URI: https://www.opdevices.com
Description: Premium, dark, engineering-grade WordPress theme for OP Devices — European thermal imaging technology. Single-page RADICON(TM) 1 flagship landing site with Customizer image-upload controls (logo, hero, product cards, spotlight, application scenes) and a plugin-free contact form.
Version: 1.0.0
Requires at least: 5.9
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: op-devices
*/

/* ---- Base / resets ---- */
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body.op-devices {
  background:#0D0D0F;
  color:#F5F6F7;
  font-family:'Barlow', system-ui, sans-serif;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img { max-width:100%; height:auto; }
a { color:#FF7E33; text-decoration:none; }
a:hover { color:#FFB000; }
::selection { background:#FF6A00; color:#0D0D0F; }

/* ---- Animations ---- */
@keyframes op-scan { 0%{ transform:translateY(-100%);} 100%{ transform:translateY(1400%);} }
@keyframes op-floaty { 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(-10px);} }
@keyframes op-pulseDot { 0%,100%{ opacity:1;} 50%{ opacity:.25;} }

/* ---- Hover utilities (replace DC style-hover) ---- */
.op-btn-primary { transition:background .18s ease; }
.op-btn-primary:hover { background:#FF7E33 !important; color:#0D0D0F !important; }
.op-btn-ghost { transition:border-color .18s ease, background .18s ease; }
.op-btn-ghost:hover { border-color:rgba(255,255,255,0.4) !important; background:rgba(255,255,255,0.03) !important; color:#F5F6F7 !important; }
.op-btn-text { transition:color .18s ease; }
.op-btn-text:hover { color:#F5F6F7 !important; }
.op-navlink { transition:color .18s ease; }
.op-navlink:hover { color:#F5F6F7 !important; }
.op-link-muted { transition:color .18s ease; }
.op-link-muted:hover { color:#F5F6F7 !important; }

/* ---- Mobile menu toggle (hidden on desktop) ---- */
.op-nav-toggle { display:none; background:none; border:none; cursor:pointer; padding:8px; }
.op-nav-toggle span { display:block; width:22px; height:2px; background:#F5F6F7; margin:4px 0; transition:.2s; }

/* ---- Success banner ---- */
.op-form-success {
  background:rgba(255,106,0,0.12);
  border:1px solid rgba(255,106,0,0.4);
  color:#FFB000;
  padding:14px 16px;
  border-radius:8px;
  font-size:14px;
  font-weight:600;
  margin-bottom:20px;
}

/* ---- Responsive ---- */
@media (max-width: 1000px) {
  .op-grid-2, .op-hero-grid, .op-split { grid-template-columns:1fr !important; }
  .op-portfolio, .op-why-grid, .op-oem-grid { grid-template-columns:1fr 1fr !important; }
  .op-apps-grid { grid-template-columns:1fr 1fr !important; }
  .op-apps-grid .op-app-wide, .op-apps-grid .op-app-full { grid-column:span 2 !important; }
}
@media (max-width: 760px) {
  .op-nav-links { position:fixed; top:68px; left:0; right:0; flex-direction:column; align-items:stretch !important; gap:0 !important;
    background:#0D0D0F; border-bottom:1px solid rgba(255,255,255,0.08); padding:8px 20px 16px; display:none !important; }
  .op-nav-links.op-open { display:flex !important; }
  .op-nav-links a { padding:12px 0 !important; }
  .op-nav-toggle { display:block; }
  .op-trust { grid-template-columns:1fr 1fr !important; }
  .op-trust > div { border-right:none !important; border-bottom:1px solid rgba(255,255,255,0.06); }
  .op-portfolio, .op-why-grid, .op-oem-grid, .op-apps-grid,
  .op-spec-grid, .op-hero-stats { grid-template-columns:1fr !important; }
  .op-apps-grid .op-app-wide, .op-apps-grid .op-app-full { grid-column:span 1 !important; }
  .op-section { padding:64px 22px !important; }
  h1.op-h1 { font-size:40px !important; }
  h2.op-h2 { font-size:32px !important; }
}
