body.omprecision-template { margin:0; padding:0; background:#fff; }
body.omprecision-template #page, body.omprecision-template #content, body.omprecision-template .site, body.omprecision-template .site-content { margin:0; padding:0; }
body.omprecision-template .entry-content, body.omprecision-template article, body.omprecision-template main { margin:0; padding:0; max-width:none; }
.admin-bar .omps-header { top:32px; }
@media (max-width: 782px) { .admin-bar .omps-header { top:46px; } }
.omps, .omps * { box-sizing: border-box; }
.omps { --navy:#102033; --navy2:#172a42; --blue:#1f5c8e; --brass:#c79b42; --brass2:#f0d58f; --ink:#102033; --muted:#64748b; --line:#e5e7eb; --soft:#f6f8fb; --white:#ffffff; color:var(--ink); font-family: Inter, Arial, Helvetica, sans-serif; line-height:1.6; overflow:hidden; }
.omps a { color:inherit; text-decoration:none; }
.omps-container { width:min(1180px, calc(100% - 32px)); margin:0 auto; }
.omps-topbar { background:var(--navy); color:#dbe7f6; font-size:13px; }
.omps-topbar-inner { display:flex; gap:18px; justify-content:space-between; align-items:center; min-height:42px; flex-wrap:wrap; }
.omps-socials { display:flex; gap:12px; }
.omps-socials a { color:#fff; opacity:.9; }
.omps-header { background:#fff; border-bottom:1px solid var(--line); position:sticky; top:0; z-index:50; box-shadow:0 10px 28px rgba(15,32,51,.06); }
.omps-header-inner { display:flex; justify-content:space-between; align-items:center; min-height:78px; gap:24px; }
.omps-brand { display:flex; align-items:center; gap:14px; min-width:220px; }
.omps-brand img { width:auto; max-width:92px; max-height:70px; display:block; object-fit:contain; }
.omps-logo-mark { width:48px; height:48px; border-radius:14px; display:inline-flex; align-items:center; justify-content:center; background:linear-gradient(135deg,var(--brass),#805d1d); color:#fff; font-weight:900; letter-spacing:.6px; box-shadow:0 12px 28px rgba(199,155,66,.35); }
.omps-brand strong { display:block; font-size:20px; line-height:1.1; color:var(--navy); }
.omps-brand small { display:block; font-size:12px; color:var(--muted); margin-top:3px; }
.omps-nav { display:flex; align-items:center; gap:2px; font-weight:700; font-size:14px; }
.omps-nav > a, .omps-nav-group > button { padding:14px 12px; border:0; background:transparent; color:var(--ink); font:inherit; cursor:pointer; border-radius:10px; }
.omps-nav > a:hover, .omps-nav-group > button:hover { background:#f1f5f9; }
.omps-nav-cta { background:var(--brass)!important; color:#fff!important; padding:12px 18px!important; box-shadow:0 12px 24px rgba(199,155,66,.25); }
.omps-nav-group { position:relative; display:inline-block; }
.omps-dropdown { opacity:0; visibility:hidden; transform:translateY(8px); position:absolute; top:100%; left:0; background:#fff; min-width:270px; border:1px solid var(--line); border-radius:16px; padding:8px; box-shadow:0 24px 60px rgba(15,32,51,.16); transition:.18s ease; z-index:60; }
.omps-dropdown a { display:block; padding:11px 12px; border-radius:10px; color:var(--ink); }
.omps-dropdown a:hover { background:#f8fafc; color:var(--blue); }
.omps-nav-group:hover .omps-dropdown, .omps-nav-group:focus-within .omps-dropdown { opacity:1; visibility:visible; transform:translateY(0); }
.omps-menu-toggle { display:none; border:1px solid var(--line); background:#fff; border-radius:12px; width:42px; height:42px; font-size:22px; }
.omps-notice { margin:18px 0 0; padding:14px 16px; border-radius:14px; background:#ecfdf5; color:#065f46; border:1px solid #a7f3d0; font-weight:700; }
.omps-hero { color:#fff; padding:92px 0 80px; position:relative; overflow:hidden; }
.omps-hero-slider{position:absolute;inset:0;}
.omps-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .8s ease;}
.omps-slide.active{opacity:1;}
.omps-hero:before{content:"";position:absolute;inset:0;background:rgba(15,20,30,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:0;}
.omps-hero:after { content:""; position:absolute; inset:auto -10% -140px -10%; height:220px; background:#fff; transform:skewY(-4deg); transform-origin:left top; }
.omps-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1.08fr .92fr; gap:48px; align-items:center; }

.omps-hero-copy{
background:rgba(15,20,30,.28);
backdrop-filter:blur(14px);
-webkit-backdrop-filter:blur(14px);
border:1px solid rgba(255,255,255,.18);
border-radius:24px;
padding:28px;
box-shadow:0 12px 40px rgba(0,0,0,.18);
}

.omps-eyebrow { display:inline-flex; align-items:center; gap:8px; color:var(--brass2); text-transform:uppercase; letter-spacing:1.4px; font-weight:900; font-size:12px; }
.omps-section .omps-eyebrow, .omps-inner-hero .omps-eyebrow { color:var(--brass); }
.omps-hero h1, .omps-inner-hero h1 { margin:14px 0 18px; line-height:1.04; font-size:clamp(38px,6vw,72px); letter-spacing:-2.2px; max-width:900px; }
.omps-hero p, .omps-inner-hero p { font-size:18px; max-width:730px; color:rgba(255,255,255,.82); margin:0 0 28px; }
.omps-actions { display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
.omps-btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:13px 20px; border-radius:999px; font-weight:900; transition:.18s ease; border:1px solid transparent; cursor:pointer; }
.omps-btn-primary { background:var(--brass); color:#fff!important; box-shadow:0 16px 34px rgba(199,155,66,.28); }
.omps-btn-primary:hover { transform:translateY(-1px); background:#b88a32; }
.omps-btn-ghost { background:#fff; color:var(--navy)!important; border-color:var(--line); }
.omps-btn-ghost:hover { transform:translateY(-1px); box-shadow:0 14px 30px rgba(15,32,51,.08); }
.omps-btn-light { background:#fff; color:var(--navy)!important; }
.omps-hero-panel { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.omps-metal-card { min-height:150px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.18); border-radius:26px; padding:22px; backdrop-filter: blur(10px); box-shadow:0 24px 80px rgba(0,0,0,.16); }
.omps-metal-card-large { grid-column:1/-1; min-height:210px; background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(199,155,66,.18)); }
.omps-metal-card span { display:block; color:var(--brass2); text-transform:uppercase; font-weight:900; letter-spacing:1.5px; font-size:12px; margin-bottom:8px; }
.omps-metal-card strong { display:block; font-size:22px; line-height:1.2; }
.omps-stats { position:relative; z-index:2; margin-top:-28px; }
.omps-stats-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.omps-stats-grid div { background:#fff; border:1px solid var(--line); border-radius:20px; padding:24px; box-shadow:0 18px 50px rgba(15,32,51,.08); }
.omps-stats-grid strong { display:block; font-size:24px; color:var(--navy); }
.omps-stats-grid span { color:var(--muted); font-size:14px; }
.omps-section { padding:82px 0; background:#fff; }
.omps-section-soft { background:var(--soft); }
.omps-section-dark { background:linear-gradient(135deg,#102033,#1b324d); color:#fff; }
.omps-section-head { max-width:760px; margin:0 auto 34px; text-align:center; }
.omps-section-head h2, .omps-split h2, .omps-cta-inner h2 { margin:8px 0 12px; line-height:1.12; font-size:clamp(30px,4vw,48px); letter-spacing:-1.2px; color:var(--navy); }
.omps-section-dark .omps-section-head h2 { color:#fff; }
.omps-section-head p, .omps-split p, .omps-info-card p, .omps-product-card p, .omps-timeline-item p, .omps-cert-card p { color:var(--muted); margin:0; }
.omps-section-dark .omps-section-head p { color:rgba(255,255,255,.72); }
.omps-three-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.omps-three-cards > div { background:#fff; border:1px solid var(--line); border-radius:24px; padding:30px; box-shadow:0 16px 44px rgba(15,32,51,.06); }
.omps-three-cards span { color:var(--brass); font-weight:900; text-transform:uppercase; font-size:12px; letter-spacing:1px; }
.omps-three-cards h3, .omps-info-card h3, .omps-product-card h3, .omps-cert-card h3 { margin:8px 0 8px; color:var(--navy); line-height:1.2; font-size:22px; }
.omps-split { display:grid; grid-template-columns:1fr 1fr; gap:46px; align-items:center; }
.omps-image-placeholder, .omps-video-placeholder, .omps-map-placeholder { border-radius:30px; min-height:350px; display:flex; align-items:center; justify-content:center; text-align:center; color:#fff; background:linear-gradient(135deg,#1f5c8e,#102033); box-shadow:0 28px 80px rgba(15,32,51,.12); overflow:hidden; position:relative; }
.omps-image-placeholder:before, .omps-video-placeholder:before, .omps-product-img:before, .omps-gallery-card:before { content:""; position:absolute; inset:0; background:linear-gradient(115deg,transparent 0 34%,rgba(255,255,255,.13) 34% 44%,transparent 44% 100%); }
.omps-image-placeholder span, .omps-video-placeholder span, .omps-map-placeholder { position:relative; z-index:1; font-weight:900; }
.omps-video-placeholder { background:radial-gradient(circle at center,rgba(240,213,143,.28),transparent 32%),linear-gradient(135deg,#102033,#1f5c8e); }
.omps-video-placeholder span { font-size:48px; width:92px; height:92px; border-radius:999px; background:rgba(255,255,255,.16); display:flex; align-items:center; justify-content:center; margin:0 auto 10px; }
.omps-video-placeholder p { position:relative; z-index:1; color:#fff; font-weight:800; }
.omps-link { color:var(--blue); font-weight:900; display:inline-block; margin-top:18px; }
.omps-card-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.omps-info-card { border:1px solid var(--line); border-radius:24px; padding:26px; background:#fff; transition:.18s ease; min-height:210px; }
.omps-info-card:hover, .omps-product-card:hover { transform:translateY(-3px); box-shadow:0 20px 44px rgba(15,32,51,.08); }
.omps-info-card span { width:42px; height:6px; background:var(--brass); border-radius:999px; display:block; margin-bottom:18px; }
.omps-tags { display:flex; flex-wrap:wrap; gap:14px; justify-content:center; }
.omps-tags span { display:inline-flex; padding:13px 18px; border-radius:999px; background:#fff; border:1px solid var(--line); font-weight:800; color:var(--navy); box-shadow:0 12px 30px rgba(15,32,51,.05); }
.omps-tags-dark span { background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.16); color:#fff; box-shadow:none; }
.omps-product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.omps-product-card { background:#fff; border:1px solid var(--line); border-radius:24px; overflow:hidden; box-shadow:0 16px 44px rgba(15,32,51,.05); transition:.18s ease; }
.omps-product-img { height:170px; background:linear-gradient(135deg,#eceff3,#d9e2ec); position:relative; }
.omps-product-img:after { content:""; position:absolute; width:80px; height:80px; border:12px solid rgba(199,155,66,.55); border-radius:24px; top:45px; left:50%; transform:translateX(-50%) rotate(12deg); }
.omps-product-card h3, .omps-product-card p { padding-left:20px; padding-right:20px; }
.omps-product-card p { padding-bottom:24px; }
.omps-center { text-align:center; margin:30px 0 0; }
.omps-inner-hero { background:linear-gradient(135deg,#f8fafc,#eef4fb); padding:74px 0; border-bottom:1px solid var(--line); }
.omps-inner-hero h1 { color:var(--navy); font-size:clamp(34px,5vw,58px); }
.omps-inner-hero p { color:var(--muted); margin-bottom:0; }
.omps-quote-card, .omps-contact-card { background:linear-gradient(135deg,#102033,#1f5c8e); color:#fff; border-radius:30px; padding:34px; box-shadow:0 30px 80px rgba(15,32,51,.16); }
.omps-quote-card h3, .omps-contact-card h2 { color:#fff; margin:0 0 12px; }
.omps-quote-card p, .omps-contact-card li { color:rgba(255,255,255,.82); }
.omps-flow { display:grid; grid-template-columns:repeat(6,1fr); gap:12px; }
.omps-flow span { background:#fff; border:1px solid var(--line); border-radius:18px; padding:20px; text-align:center; font-weight:900; color:var(--navy); box-shadow:0 14px 34px rgba(15,32,51,.06); }
.omps-timeline { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.omps-timeline-item { background:#fff; border:1px solid var(--line); border-radius:24px; padding:26px; position:relative; box-shadow:0 16px 44px rgba(15,32,51,.05); }
.omps-timeline-item span { width:46px; height:46px; border-radius:16px; background:var(--brass); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:900; margin-bottom:12px; }
.omps-timeline-item h3 { margin:0 0 8px; color:var(--navy); }
.omps-cert-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.omps-cert-card { min-height:250px; padding:26px; border-radius:24px; border:1px solid var(--line); background:linear-gradient(180deg,#fff,#f8fafc); display:flex; flex-direction:column; justify-content:flex-end; position:relative; overflow:hidden; }
.omps-cert-card:before { content:""; position:absolute; inset:22px 22px auto auto; width:78px; height:96px; border:2px solid rgba(199,155,66,.5); border-radius:12px; background:linear-gradient(#fff,#eef2f7); }
.omps-cert-card span { color:var(--brass); font-weight:900; text-transform:uppercase; letter-spacing:1px; font-size:12px; }
.omps-gallery-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.omps-gallery-card { min-height:240px; border:0; border-radius:26px; background:linear-gradient(135deg,#dbe5ef,#eef2f6); color:var(--navy); position:relative; overflow:hidden; cursor:pointer; box-shadow:0 16px 44px rgba(15,32,51,.06); }
.omps-gallery-card span { position:absolute; inset:auto 18px 18px; background:#fff; border-radius:16px; padding:14px; font-weight:900; box-shadow:0 12px 30px rgba(15,32,51,.08); }
.omps-gallery-modal { display:none; position:fixed; inset:0; background:rgba(15,23,42,.72); z-index:99999; align-items:center; justify-content:center; padding:20px; }
.omps-gallery-modal.is-open { display:flex; }
.omps-gallery-modal > div { background:#fff; border-radius:26px; padding:28px; width:min(560px,100%); min-height:260px; position:relative; }
.omps-gallery-close { position:absolute; top:12px; right:14px; width:38px; height:38px; border-radius:999px; border:1px solid var(--line); background:#fff; font-size:26px; cursor:pointer; }
.omps-contact-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:28px; align-items:start; }
.omps-contact-card ul { list-style:none; padding:0; margin:18px 0 24px; }
.omps-contact-card li { margin-bottom:12px; }
.omps-form { background:#fff; border:1px solid var(--line); border-radius:28px; padding:30px; box-shadow:0 18px 60px rgba(15,32,51,.08); }
.omps-form h2 { margin:0 0 20px; color:var(--navy); }
.omps-form label { display:block; margin-bottom:14px; font-weight:800; color:var(--navy); }
.omps-form input, .omps-form textarea { width:100%; margin-top:7px; border:1px solid var(--line); border-radius:14px; padding:13px 14px; font:inherit; outline:none; }
.omps-form input:focus, .omps-form textarea:focus { border-color:var(--brass); box-shadow:0 0 0 4px rgba(199,155,66,.12); }
.omps-hp { position:absolute!important; left:-10000px!important; height:1px!important; width:1px!important; overflow:hidden!important; }
.omps-map, .omps-map-placeholder { width:100%; min-height:380px; border:0; border-radius:28px; }
.omps-map-placeholder { background:linear-gradient(135deg,#edf2f7,#dce6f0); color:var(--navy); }
.omps-cta-band { background:linear-gradient(135deg,var(--brass),#8c641f); color:#fff; padding:46px 0; }
.omps-cta-inner { display:flex; justify-content:space-between; align-items:center; gap:24px; }
.omps-cta-inner .omps-eyebrow { color:#fff; opacity:.82; }
.omps-cta-inner h2 { color:#fff; margin:6px 0 0; font-size:clamp(28px,4vw,42px); }
.omps-footer { background:#0b1624; color:#cbd5e1; padding:58px 0 22px; }
.omps-footer-grid { display:grid; grid-template-columns:1.25fr .8fr .9fr 1fr; gap:28px; }
.omps-footer h3, .omps-footer h4 { color:#fff; margin:0 0 14px; }
.omps-footer a { display:block; color:#cbd5e1; margin-bottom:8px; }
.omps-footer a:hover { color:#fff; }
.omps-footer-bottom { border-top:1px solid rgba(255,255,255,.1); margin-top:28px; padding-top:18px; font-size:13px; color:#94a3b8; }
@media (max-width: 980px) {
  .omps-topbar-inner { justify-content:center; }
  .omps-menu-toggle { display:block; }
  .omps-nav { display:none; position:absolute; top:78px; left:16px; right:16px; background:#fff; border:1px solid var(--line); border-radius:18px; padding:12px; box-shadow:0 24px 70px rgba(15,32,51,.18); flex-direction:column; align-items:stretch; }
  .omps-nav.is-open { display:flex; }
  .omps-nav > a, .omps-nav-group > button { width:100%; text-align:left; }
  .omps-nav-group { display:block; }
  .omps-dropdown { position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; border:0; min-width:auto; padding-left:16px; }
  .omps-hero-grid, .omps-split, .omps-contact-grid { grid-template-columns:1fr; }
  .omps-stats-grid, .omps-product-grid { grid-template-columns:repeat(2,1fr); }
  .omps-card-grid, .omps-cert-grid, .omps-gallery-grid { grid-template-columns:repeat(2,1fr); }
  .omps-flow { grid-template-columns:repeat(3,1fr); }
  .omps-footer-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width: 640px) {
  .omps-container { width:min(100% - 24px,1180px); }
  .omps-topbar { display:none; }
  .omps-header-inner { min-height:68px; }
  .omps-nav { top:68px; }
  .omps-brand strong { font-size:17px; }
  .omps-brand small { display:none; }
  .omps-logo-mark { width:42px; height:42px; border-radius:12px; }
  .omps-hero { padding:58px 0 68px; }
  .omps-hero h1 { font-size:38px; letter-spacing:-1.3px; }
  .omps-hero p, .omps-inner-hero p { font-size:16px; }
  .omps-hero-panel, .omps-stats-grid, .omps-three-cards, .omps-card-grid, .omps-product-grid, .omps-cert-grid, .omps-gallery-grid, .omps-timeline, .omps-footer-grid { grid-template-columns:1fr; }
  .omps-metal-card, .omps-metal-card-large { min-height:132px; }
  .omps-section { padding:58px 0; }
  .omps-section-head h2, .omps-split h2 { font-size:32px; }
  .omps-flow { grid-template-columns:1fr; }
  .omps-cta-inner { flex-direction:column; align-items:flex-start; }
  .omps-image-placeholder, .omps-video-placeholder { min-height:260px; }
}


/* Rectangular company photo */
.omps-about img,
.omps-about-image img,
.omps-about-us img{
width:100% !important;
max-width:500px !important;
height:280px !important;
object-fit:cover !important;
border-radius:8px !important;
display:block !important;
}

.omps-about-image img{width:100%;max-width:420px;border-radius:12px;display:block;box-shadow:0 10px 30px rgba(0,0,0,.12);object-fit:cover;}

.omps-about-image{text-align:center;}.omps-about-image img{max-width:260px;width:100%;height:auto;display:inline-block;}


/* About image fix */
.about-image{text-align:center !important; display:flex !important; align-items:center; justify-content:center;}
.about-image img,
.omps-about-us img{
max-width:220px !important;
width:100% !important;
height:auto !important;
object-fit:contain !important;
display:block !important;
margin:0 auto !important;
}


/* About Us image resized to ~30% */
.about-image img,
.omps-about-image img,
.omps-about-us img{
    max-width: 180px !important;
    width: 30% !important;
    height: auto !important;
    object-fit: contain !important;
}


/* About image resized to 80% */
.about-image img,
.omps-about-image img,
.omps-about-us img{
    width: 80% !important;
    max-width: 80% !important;
    height: auto !important;
    object-fit: contain !important;
}

/* Hero text fix */
.omps-hero-content,.hero-content,.omps-hero .container,.omps-hero__content{
position:relative !important;
z-index:5 !important;
}
.omps-hero h1,.omps-hero p{
opacity:1 !important;
text-shadow:0 2px 8px rgba(0,0,0,.45);
}


/* About Us background image */
.omps-about,.about-section,#about{
background-image:url('../images/about-us-bg.jpg') !important;
background-size:cover !important;
background-position:center !important;
}
.omps-about::before,.about-section::before{
content:'';
position:absolute;
inset:0;
background:rgba(255,255,255,0.75);
}


/* Force About Us background image */
section[id*="about"],
section[class*="about"],
.omps-about,
.about,
.about-us,
.about-section{
background:url('../images/about-us-bg.jpg') center center/cover no-repeat !important;
position:relative !important;
}
section[id*="about"] *,
section[class*="about"] *,
.omps-about *,
.about *,
.about-us *,
.about-section *{
position:relative;
z-index:2;
}


/* About Us hero background image */
.omps-inner-hero{
background:url('../images/about-us-bg.jpg') center center/cover no-repeat !important;
position:relative !important;
}
.omps-inner-hero:before{
content:'';
position:absolute;
inset:0;
background:rgba(255,255,255,0.72);
}
.omps-inner-hero .omps-container{
position:relative;
z-index:2;
}


/* Certificate section image */
.certificate-section,.omps-certificate,#certificate{
background:url('../images/certificate-bg.jpeg') center right/contain no-repeat !important;
}

/* Products section image */
.products-section,.omps-products,#products{
background:url('../images/products-bg.jpeg') center right/contain no-repeat !important;
}


/* Force separate backgrounds */
body .certificate-page .omps-inner-hero,
body .omps-certificate .omps-inner-hero{
background-image:url('../images/certificate-bg.jpeg') !important;
background-size:cover !important;
background-position:center !important;
}

body .products-page .omps-inner-hero,
body .omps-products .omps-inner-hero{
background-image:url('../images/products-bg.jpeg') !important;
background-size:cover !important;
background-position:center !important;
}
