/* Devcon Enterprises — production styles (unbundled, WordPress-ready) */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{--accent:#A07C4A;--serif:'Newsreader',Georgia,serif;--sans:'Hanken Grotesk',system-ui,sans-serif;--stats-bg:#FBF9F4;--stats-text:#14202C;--stats-label:#6B6456;--stats-border:#E2DCD0;background:#F5F1E9;font-family:'Hanken Grotesk',system-ui,sans-serif;-webkit-font-smoothing:antialiased;background: #FBF9F4 !important;}
img{max-width:100%}
::selection{background:#14202C;color:#F5F1E9}
a{color:inherit}
.skip-link{position:absolute;left:-9999px;top:0;background:#14202C;color:#F5F1E9;padding:12px 18px;z-index:200}
.skip-link:focus{left:12px;top:12px}
:focus-visible{outline:2px solid #A07C4A;outline-offset:3px}
/* SPA routing */
.dc-page{display:none}
.dc-page.is-active{display:block}
#gravity-form-placeholder{min-height:120px}
/* Responsive: collapse fixed multi-column grids + tighten gutters on smaller screens */
@media(max-width:1024px){
  .dc-app [style*="grid-template-columns:repeat(5"]{grid-template-columns:repeat(3,1fr)!important}
  .dc-app [style*="grid-template-columns:repeat(4"]{grid-template-columns:repeat(2,1fr)!important}
  .dc-app [style*="grid-template-columns:repeat(3"]{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:820px){
  .dc-app [style*="grid-template-columns"]{grid-template-columns:1fr!important}
  .dc-app [style*="margin:0 auto"]{padding-left:24px!important;padding-right:24px!important}
  .dc-app header nav{display:none!important}
  .dc-app h1{font-size:clamp(34px,8vw,52px)!important}
}
@media(max-width:560px){
  .dc-app [style*="grid-template-columns:repeat(5"],.dc-app [style*="grid-template-columns:repeat(4"]{grid-template-columns:repeat(2,1fr)!important}
  .dc-app [style*="padding:118px 40px 110px"],.dc-app [style*="padding:96px 40px 84px"],.dc-app [style*="padding:104px 40px 96px"]{padding-top:72px!important;padding-bottom:64px!important}
}
/* Mobile menu (toggled by site.js) */
#mobileMenu{display:none;position:sticky;top:76px;z-index:49;background:#14202C;border-bottom:1px solid rgba(255,255,255,.1);padding:8px 24px 18px;flex-direction:column}
#mobileMenu.open{display:flex}
#mobileMenu a{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08);color:#C9CFD4;font:600 13px/1 var(--sans);letter-spacing:.13em;text-transform:uppercase;text-decoration:none;cursor:pointer}
#mobileMenu a:last-child{border-bottom:none}
.navtoggle{display:none;flex-direction:column;gap:5px;width:44px;height:44px;background:transparent;border:0;cursor:pointer;align-items:center;justify-content:center}
.navtoggle span{display:block;width:24px;height:2px;background:#F5F1E9;transition:transform .25s ease,opacity .25s ease}
.navtoggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.navtoggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.navtoggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:820px){.navtoggle{display:flex!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.pp-card:hover h3,.pp-card:focus-visible h3{color:var(--accent)}.pp-card:hover .pp-cta,.pp-card:focus-visible .pp-cta{gap:14px}.pp-card .pp-cta{transition:gap .18s ease}.pp-card.is-open h3{color:var(--accent)}.pp-card.is-open>div:first-child{outline:2px solid var(--accent);outline-offset:-1px}


/* SERPCOM DEVCON WORDPRESS ADMIN BAR */
.admin-bar .dc-app > header {
    top: 32px !important;
}

.admin-bar #mobileMenu {
    top: 108px;
}

@media (max-width: 782px) {
    .admin-bar .dc-app > header {
        top: 46px !important;
    }

    .admin-bar #mobileMenu {
        top: 122px;
    }
}

/* BEGIN DEVCON GRAVITY FORM BUTTON */

/* Gravity Form 1 — Devcon contact form */
.devcon-enterprises-page #gform_1, #gform_2 {
    --gf-form-gap-x: 12px !important;
}

/* Reduce spacing between multi-column form fields */
.devcon-enterprises-page #gform_1 .gform_fields, #gform_2 .gform_fields {
    grid-row-gap: 20px !important;
}

/* Submit button */
.devcon-enterprises-page #gform_submit_button_1, #gform_submit_button_2 {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    background: var(--accent) !important;
    color: #FBF9F4 !important;

    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    padding: 11px 22px !important;

    font-family: var(--sans) !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    line-height: 1 !important;

    letter-spacing: .12em !important;
    text-transform: uppercase !important;

    cursor: pointer !important;
}

.devcon-enterprises-page #gform_submit_button_1:hover,
.devcon-enterprises-page #gform_submit_button_1:focus, 
#gform_submit_button_2:hover,
#gform_submit_button_2:focus
 {
    opacity: .88 !important;
}

.devcon-enterprises-page #gform_1 .gform_footer, #gform_2 .gform_footer {
    display: block !important;
    width: 100% !important;
}

/* END DEVCON GRAVITY FORM BUTTON */

/* BEGIN SERPCOM DEVCON MOBILE HEADER FIX */

@media (max-width: 820px) {

    .dc-app > header > div {
        padding-left: 18px !important;
        padding-right: 18px !important;
        gap: 12px !important;
    }

    /* Never allow the logo anchor to be horizontally compressed */
    .dc-app > header > div > a:first-child {
        flex: 0 0 auto !important;
        flex-shrink: 0 !important;
        min-width: max-content !important;
    }

    .dc-app > header > div > a:first-child img {
        height: 26px !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        flex: none !important;
        object-fit: contain !important;
    }
}

@media (max-width: 560px) {

    .dc-app > header > div {
        padding-left: 14px !important;
        padding-right: 14px !important;
        gap: 10px !important;
    }

    .dc-app > header > div > a:first-child img {
        height: 22px !important;
        width: auto !important;
        max-width: none !important;
    }

    /* Compact the header CTA without changing its appearance */
    .devcon-enterprises-page
    .dc-app > header > div > a[data-nav="contact"] {
        padding: 10px 14px !important;
        font-size: 10.5px !important;
    }

    .devcon-neptune-knowledge-center-page
    .dc-app > header > div > a[href="#ask"] {
        padding: 10px 12px !important;
        font-size: 9.5px !important;
        letter-spacing: .08em !important;
    }
}

/*
 * On very narrow phones Neptune cannot physically fit
 * logo + ASK A QUESTION + hamburger without compression.
 * The same Ask link remains available in the mobile menu.
 */
@media (max-width: 420px) {
    .devcon-neptune-knowledge-center-page
    .dc-app > header > div > a[href="#ask"] {
        display: none !important;
    }
}

/* END SERPCOM DEVCON MOBILE HEADER FIX */
