/*
Theme Name: Imperium Defense Group
Theme URI: https://imperium-defense.com/
Author: Imperium Defense Group
Description: Custom responsive WordPress theme for Imperium Defense Group.
Version: 1.9.7
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: imperium-defense-group
*/

html { scroll-behavior: smooth; }
body.admin-bar .header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .header { top: 46px; } }
.screen-reader-text { position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.header { position: sticky; top: 0; }
.brand img { object-fit: contain; }
.idg-icon { width: 25px; height: 25px; display: block; }
.idg-arrow { display:inline-block; margin-left:.35em; font-size:1.1em; line-height:1; }
.desktop-mega { display:none; }
.desktop-nav-item:hover .desktop-mega,
.desktop-nav-item:focus-within .desktop-mega,
.desktop-nav-item.is-open .desktop-mega { display:block; }
.desktop-nav-item { display:flex; align-items:stretch; }
.desktop-nav-item > button { height:100%; }
.desktop-nav-item.is-current > button:after,
.desktop-domain-nav > a.is-current:after { transform:scaleX(1); }
.header-home.is-current { color:#c71e31 !important; }
.header-contact.is-current { border-bottom:3px solid #c71e31; }
.menu-group a[aria-current="page"],
.menu-intro a[aria-current="page"] { color:#fff; border-left:3px solid #c71e31; padding-left:12px; }
.site-menu-toggle .menu-lines { width:22px; display:grid; gap:4px; }
.site-menu-toggle .menu-lines i { display:block; height:2px; background:currentColor; transition:.2s ease; }
.site-menu-toggle[aria-expanded="true"] .menu-lines i:nth-child(1){transform:translateY(6px) rotate(45deg)}
.site-menu-toggle[aria-expanded="true"] .menu-lines i:nth-child(2){opacity:0}
.site-menu-toggle[aria-expanded="true"] .menu-lines i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.detail-grid .technical { font: 12px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.02em; color:#38546a; }
.wp-block-post-content { margin:0; }
body { margin:0; }
body.idg-menu-open { overflow:hidden; }
.idg-arrow { flex:0 0 auto; }
.capability-symbol { font-size:24px!important; line-height:1; color:#0b3148!important; }
.flow-arrow { align-self:center; font-size:28px; color:#b21f32; }
.wp-block-post-content { max-width:900px; line-height:1.7; }
@media (min-width: 851px) {
  .page-section-nav { top:94px; }
  body.admin-bar .page-section-nav { top:126px; }
}
@media (max-width: 850px) {
  body.admin-bar.idg-menu-open { overflow:hidden; }
  body.idg-custom-theme .page-section-nav { top:90px; }
  body.admin-bar.idg-custom-theme .page-section-nav { top:136px; }
  body.idg-custom-theme .footer-top { grid-template-columns:1fr 1fr; }
}

/* Keep the IDG system independent from legacy Elementor global-kit styles. */
html body.idg-custom-theme,
html body.idg-custom-theme button,
html body.idg-custom-theme input,
html body.idg-custom-theme textarea,
html body.idg-custom-theme select {
  font-family: Arial, Helvetica, sans-serif !important;
}
html body.idg-custom-theme { color:#142838 !important; background:#fff !important; }
body.idg-custom-theme h1,
body.idg-custom-theme h2,
body.idg-custom-theme h3 { color:#142838 !important; font-family:Arial,Helvetica,sans-serif !important; }
body.idg-custom-theme .header { background:#fff !important; color:#093965 !important; }
body.idg-custom-theme .desktop-domain-nav > .desktop-nav-item > button {
  appearance:none !important;
  background:transparent !important;
  background-color:transparent !important;
  color:#093965 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  min-height:0 !important;
  line-height:1.3 !important;
}
body.idg-custom-theme .desktop-domain-nav > a,
body.idg-custom-theme .header-home { color:#093965 !important; background:transparent !important; }
body.idg-custom-theme .header-contact { color:#c71e31 !important; background:transparent !important; }
body.idg-custom-theme .desktop-mega,
body.idg-custom-theme .mega-menu { background:#081d2c !important; color:#fff !important; }
body.idg-custom-theme .desktop-mega h2,
body.idg-custom-theme .mega-menu h2,
body.idg-custom-theme .desktop-mega-links a > span,
body.idg-custom-theme .menu-group a > span { color:#fff !important; }
body.idg-custom-theme .desktop-mega-summary p,
body.idg-custom-theme .desktop-mega-links a small,
body.idg-custom-theme .menu-intro p,
body.idg-custom-theme .menu-group a small { color:#aebfcb !important; }
body.idg-custom-theme .hero h1 { color:#fff !important; }
body.idg-custom-theme .hero h1 span { color:#d4dfe8 !important; }
body.idg-custom-theme .hero h1 { font-size:clamp(3rem,4.4vw,4.65rem) !important; max-width:1260px; }
body.idg-custom-theme .hero-content > p:not(.eyebrow) { color:#d1dce5 !important; max-width:850px; }
body.idg-custom-theme .button,
body.idg-custom-theme .hero-actions .button {
  background:#c71e31 !important;
  border-color:#c71e31 !important;
  color:#fff !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body.idg-custom-theme .button-light,
body.idg-custom-theme .hero-actions .button-light {
  background:transparent !important;
  border-color:#899ba9 !important;
  color:#fff !important;
}
body.idg-custom-theme .eyebrow > span { background:#c71e31 !important; }
body.idg-custom-theme .program-outputs,
body.idg-custom-theme .diagram-section,
body.idg-custom-theme .contact-process,
body.idg-custom-theme .italy-operation,
body.idg-custom-theme .module-section,
body.idg-custom-theme .contact-band { background-color:#081d2c !important; color:#fff !important; }
body.idg-custom-theme .contact-band { background-color:#093965 !important; }
body.idg-custom-theme .program-outputs h2,
body.idg-custom-theme .program-outputs h3,
body.idg-custom-theme .diagram-section h2,
body.idg-custom-theme .diagram-section h3,
body.idg-custom-theme .contact-process h2,
body.idg-custom-theme .contact-process h3,
body.idg-custom-theme .italy-operation h2,
body.idg-custom-theme .italy-operation h3,
body.idg-custom-theme .module-section h2,
body.idg-custom-theme .module-section h3,
body.idg-custom-theme .contact-band h2,
body.idg-custom-theme .footer h2,
body.idg-custom-theme .footer h3 { color:#fff !important; }
body.idg-custom-theme .footer { background:#061724 !important; color:#c1ccd4 !important; }
body.idg-custom-theme .site-menu-toggle { background:#093965 !important; color:#fff !important; border-radius:0 !important; }
body.idg-custom-theme a:focus-visible,
body.idg-custom-theme button:focus-visible { outline:3px solid #d53a4c !important; outline-offset:3px; }
.footer-top { grid-template-columns:1.2fr 1fr 1fr 1fr; }
.practical-scope,
.capability-section,
.program-outputs,
.company-structure,
.italy-operation,
.process,
.contact-options,
.contact-process,
.contact-note { scroll-margin-top:170px; }
body.admin-bar .practical-scope,
body.admin-bar .capability-section,
body.admin-bar .program-outputs,
body.admin-bar .company-structure,
body.admin-bar .italy-operation,
body.admin-bar .process,
body.admin-bar .contact-options,
body.admin-bar .contact-process,
body.admin-bar .contact-note { scroll-margin-top:205px; }

@media (max-width:850px) {
  body.idg-custom-theme .footer-top { grid-template-columns:1fr 1fr; }
}

@media (max-width:560px) {
  html,
  body.idg-custom-theme { max-width:100%; overflow-x:hidden !important; }
  body.idg-custom-theme .header,
  body.idg-custom-theme main,
  body.idg-custom-theme .hero,
  body.idg-custom-theme .mega-menu,
  body.idg-custom-theme .mega-menu-inner { width:100%; max-width:100%; min-width:0; }
  body.idg-custom-theme .hero-actions,
  body.idg-custom-theme .hero-actions .button { max-width:100%; }
  body.idg-custom-theme .hero-bottom { display:grid; grid-template-columns:minmax(0,1fr); gap:7px; }
  body.idg-custom-theme .hero-bottom > span { max-width:100%; flex-wrap:wrap; row-gap:6px; }
  body.idg-custom-theme .hero-bottom button { justify-self:start; max-width:100%; padding-left:0; }
  body.idg-custom-theme .mega-menu-inner > * { min-width:0; }
  body.idg-custom-theme .visual-intro h1,
  body.idg-custom-theme .detail-hero h1 {
    font-size:clamp(1.95rem, 9vw, 2.15rem) !important;
    line-height:1.08 !important;
    letter-spacing:-.04em !important;
  }
  body.idg-custom-theme .hero-media { height:250px; }
  body.idg-custom-theme .hero-shade { background:linear-gradient(180deg,rgba(8,29,44,.08),rgba(8,29,44,.46) 115px,#081d2c 235px); }
  body.idg-custom-theme .hero-content { padding:128px 22px 14px; }
  body.idg-custom-theme .hero-content .eyebrow { font-size:.69rem; line-height:1.45; margin-bottom:15px; }
  body.idg-custom-theme .hero h1 { font-size:clamp(1.78rem,7.4vw,2rem) !important; line-height:1.07 !important; margin-bottom:19px; }
  body.idg-custom-theme .hero-content>p:not(.eyebrow) { font-size:.94rem; line-height:1.48 !important; margin-bottom:20px; }
  body.idg-custom-theme .hero-actions { gap:9px; }
  body.idg-custom-theme .hero-actions .button { min-height:49px; padding:13px 18px; }
  body.idg-custom-theme .hero-bottom { padding-top:7px; padding-bottom:14px; }
  body.idg-custom-theme .value-grid p,
  body.idg-custom-theme .audience-row p,
  body.idg-custom-theme .process-grid p,
  body.idg-custom-theme .location-grid p { font-size:.95rem !important; line-height:1.58 !important; }
  body.idg-custom-theme .page-section-nav a { font-size:.86rem; }
  body.idg-custom-theme .menu-group a small { font-size:.82rem; }
  body.idg-custom-theme .footer-top { grid-template-columns:1fr; }
  body.idg-custom-theme .page-section-nav { position:sticky; top:82px; }
  body.admin-bar.idg-custom-theme .page-section-nav { top:128px; }
  body.idg-custom-theme .practical-scope,
  body.idg-custom-theme .capability-section,
  body.idg-custom-theme .program-outputs,
  body.idg-custom-theme .company-structure,
  body.idg-custom-theme .italy-operation,
  body.idg-custom-theme .process,
  body.idg-custom-theme .contact-options,
  body.idg-custom-theme .contact-process,
  body.idg-custom-theme .contact-note { scroll-margin-top:154px; }
  body.admin-bar.idg-custom-theme .practical-scope,
  body.admin-bar.idg-custom-theme .capability-section,
  body.admin-bar.idg-custom-theme .program-outputs,
  body.admin-bar.idg-custom-theme .company-structure,
  body.admin-bar.idg-custom-theme .italy-operation,
  body.admin-bar.idg-custom-theme .process,
  body.admin-bar.idg-custom-theme .contact-options,
  body.admin-bar.idg-custom-theme .contact-process,
  body.admin-bar.idg-custom-theme .contact-note { scroll-margin-top:200px; }
}

/* Government contracting landing page — 1.9.4 */
.gov-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:70px;align-items:start;background:linear-gradient(135deg,#f5f8fa 0%,#fff 62%);max-width:none;border-bottom:1px solid var(--line);padding-top:78px;padding-bottom:82px}.gov-hero-copy h1{font-size:clamp(3rem,5vw,5.25rem);line-height:1.02;max-width:980px;margin:0 0 28px;color:var(--blue)}.gov-hero-copy>p:not(.eyebrow){font-size:1.15rem;line-height:1.65;max-width:780px}.gov-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:32px}.gov-text-link{color:var(--blue);font-weight:700}.gov-text-link:hover{color:var(--red)}.gov-data-card{background:#081d2c;color:#fff;padding:34px 36px 30px;box-shadow:0 26px 55px rgba(8,29,44,.12)}.gov-data-card .micro{color:#9fb6c6}.gov-data-card dl{margin:8px 0 0}.gov-data-card dl>div{display:grid;grid-template-columns:120px 1fr;gap:18px;padding:12px 0;border-bottom:1px solid #294658}.gov-data-card dl>div:last-child{border-bottom:0}.gov-data-card dt{font:11px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.05em;text-transform:uppercase;color:#9fb6c6}.gov-data-card dd{margin:0;font-weight:700}.gov-capabilities{padding-top:88px}.gov-capability-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.gov-capability-grid article{padding:32px 30px 36px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:235px}.gov-capability-grid article>span{font:12px ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--red)}.gov-capability-grid h3{font-size:1.42rem;margin:42px 0 12px}.gov-capability-grid p{font-size:.96rem;line-height:1.62;margin:0}.gov-classifications{max-width:none;background:#081d2c;color:#fff;display:grid;grid-template-columns:.65fr 1.35fr;gap:70px}.gov-classifications h2,.gov-classifications h3{color:#fff!important}.gov-classification-intro .eyebrow{color:#b6c8d5}.gov-classification-intro p{color:#adc0cd;max-width:480px}.gov-code-columns{display:grid;grid-template-columns:1fr 1fr;gap:26px}.gov-code-columns>article{border:1px solid #365365;padding:28px}.gov-code-columns .micro{color:#93acbd}.gov-code-list{list-style:none;padding:0;margin:20px 0 0}.gov-code-list li{display:grid;grid-template-columns:70px 1fr;gap:14px;padding:13px 0;border-bottom:1px solid #2c485a}.gov-code-list li:last-child{border-bottom:0}.gov-code-list b{color:#fff}.gov-code-list span{color:#b9c9d4;font-size:.9rem;line-height:1.45}.gov-code-list em{display:inline-block;margin-left:6px;color:#fff;font-size:.72rem;font-style:normal;border:1px solid #597486;padding:2px 6px}.gov-psc-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.gov-psc-grid>span{display:block;border:1px solid #365365;padding:13px 14px;color:#fff;font-weight:700}.gov-psc-grid small{display:block;color:#9fb4c2;font-size:.72rem;font-weight:400;line-height:1.35;margin-top:4px}.gov-documents{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}.gov-documents h2{font-size:2.6rem}.gov-documents>div>p{max-width:620px}.gov-documents aside{background:var(--pale);border-left:3px solid var(--red);padding:30px}.gov-documents aside>a{color:var(--blue);font-weight:700;font-size:1.15rem}.gov-documents aside p{margin:16px 0 0}.gov-compliance-note{padding-top:28px;padding-bottom:42px;border-top:1px solid var(--line)}.gov-compliance-note p{font-size:.82rem;color:var(--muted);max-width:1100px;margin:0}.footer-linkedin{display:flex!important;align-items:center;gap:9px}.footer-linkedin span{display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid #5f788a;font-weight:700;font-size:11px;color:#fff}
@media(max-width:1050px){.gov-hero{grid-template-columns:1fr}.gov-data-card{max-width:680px}.gov-classifications{grid-template-columns:1fr}.gov-code-columns{grid-template-columns:1fr 1fr}.gov-capability-grid{grid-template-columns:1fr 1fr}.gov-documents{grid-template-columns:1fr}.gov-documents aside{max-width:680px}}
@media(max-width:650px){.gov-hero{padding-top:58px;padding-bottom:64px;gap:38px}.gov-hero-copy h1{font-size:2.55rem!important}.gov-actions{align-items:stretch;flex-direction:column}.gov-actions .button{width:100%;text-align:center}.gov-data-card{padding:26px 22px}.gov-data-card dl>div{grid-template-columns:104px 1fr;gap:12px}.gov-capability-grid{grid-template-columns:1fr}.gov-code-columns{grid-template-columns:1fr}.gov-psc-grid{grid-template-columns:1fr 1fr}.gov-documents h2{font-size:2.15rem}.gov-classifications{gap:36px}}
