/*
Theme Name: DGMNetworx
Theme URI: https://example.com/
Author: DGMNetworx
Description: Responsive business homepage theme for DGMNetworx, focused on AI automation and VoIP communications.
Version: 1.1.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: dgmnetworx
*/
:root{--navy:#062b56;--deep:#031d3d;--blue:#0874c9;--cyan:#00c7ed;--ink:#082d5b;--muted:#47698d;--pale:#f2f9fe;--white:#fff;--line:#dcecf8;--shadow:0 12px 32px rgba(4,54,100,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.container{width:min(1200px,calc(100% - 40px));margin-inline:auto}.site-header{position:relative;z-index:5;background:#fff;border-bottom:1px solid #e5f0f8}.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;font-size:1.55rem;font-weight:850;letter-spacing:-.06em;color:var(--navy)}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(140deg,var(--navy),var(--blue) 60%,var(--cyan));color:white;font-size:1rem;letter-spacing:-.08em;box-shadow:0 0 0 4px #e8f8ff}.brand-word span{color:#00a8d9}.main-nav{display:flex;align-items:center;gap:28px;font-size:.9rem;font-weight:650}.main-nav a{padding:10px 0}.main-nav a:hover,.main-nav a:focus{color:#009fcf}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;padding:13px 23px;background:linear-gradient(100deg,#0758a8,#009fd4);color:white;font-weight:750;font-size:.9rem;box-shadow:0 8px 18px rgba(0,111,190,.18);transition:transform .2s ease,box-shadow .2s ease}.button:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(0,111,190,.25);color:white}.menu-toggle{display:none;background:#eef8ff;border:1px solid var(--line);border-radius:10px;padding:9px 12px;color:var(--navy);font-weight:700}
.hero{position:relative;overflow:hidden;min-height:360px;display:flex;align-items:center;color:white;background:linear-gradient(105deg,#042143,#034b83 48%,#004d7e)}.hero:before,.why:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle at 14% 30%,rgba(0,218,255,.85) 0 2px,transparent 3px),radial-gradient(circle at 82% 65%,rgba(0,218,255,.8) 0 2px,transparent 3px),linear-gradient(120deg,transparent 49.8%,rgba(0,206,255,.23) 50%,transparent 50.2%);background-size:180px 120px,220px 140px,120px 120px;opacity:.7}.hero:after{content:"";position:absolute;width:460px;height:460px;border:1px solid rgba(0,219,255,.35);border-radius:50%;right:-90px;top:-140px;box-shadow:0 0 0 35px rgba(0,207,255,.05),0 0 0 75px rgba(0,207,255,.04)}.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.35fr .65fr;gap:36px;align-items:center;padding:64px 0}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;font-weight:800;color:#5ce6ff;margin-bottom:14px}.hero h1{font-size:clamp(2.8rem,5vw,4.7rem);line-height:.98;letter-spacing:-.055em;margin:0 0 16px;font-weight:900}.hero h1 .accent{color:#35e0fa}.hero p{max-width:640px;color:#e1f4ff;font-size:1.08rem;margin:0 0 24px}.hero-tagline{font-size:1.15rem!important;font-weight:750;letter-spacing:.005em}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button-outline{display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;border:1px solid rgba(255,255,255,.55);border-radius:999px;color:#fff;font-weight:700}.hero-side{justify-self:end;max-width:280px;text-align:left;padding:28px;border-left:2px solid var(--cyan);font-size:1.35rem;font-weight:850;line-height:1.22}.hero-side strong{display:block;color:#3be2fb;font-size:1.65em}.service-section{padding:30px 0 34px;background:#fff}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;padding:0 22px 24px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(160deg,#fff,#f2f9fe);text-align:center;box-shadow:0 5px 20px rgba(9,72,124,.035);transition:transform .2s ease,box-shadow .2s ease}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-photo{display:block;width:calc(100% + 44px);height:150px;max-width:none;object-fit:cover;margin:0 -22px 25px;border-radius:11px 11px 0 0}.service-icon{display:grid;place-items:center;width:68px;height:68px;margin:-58px auto 17px;position:relative;border-radius:50%;background:linear-gradient(145deg,#087cc9,#063267);color:#fff;font-size:1.8rem;box-shadow:0 0 0 7px #e4f6ff}.service-card h2{font-size:1.13rem;line-height:1.25;margin:0 auto 14px;max-width:260px}.service-card h2:after{content:"";display:block;width:46px;height:3px;background:var(--cyan);margin:14px auto 0;border-radius:4px}.service-card p{font-size:.93rem;color:var(--muted);margin:0}.why{position:relative;overflow:hidden;background:linear-gradient(105deg,#031b3b,#064e86 62%,#06274c);color:white;padding:38px 0}.why:before{opacity:.4}.why-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr repeat(4,1fr);gap:0;align-items:center}.why-intro{padding:0 30px 0 0}.why-intro .eyebrow{margin-bottom:8px}.why h2{font-size:1.85rem;line-height:1.1;letter-spacing:-.03em;margin:0 0 12px}.why-intro p{color:#d3e9fb;font-size:.94rem;margin:0}.benefit{padding:10px 15px;text-align:center;border-left:1px solid rgba(51,213,255,.23)}.benefit-icon{width:48px;height:48px;display:grid;place-items:center;margin:0 auto 10px;border:2px solid var(--cyan);border-radius:50%;font-size:1.25rem;color:#57eaff}.benefit h3{font-size:.95rem;margin:0 0 7px}.benefit p{font-size:.79rem;line-height:1.4;color:#d3e9fb;margin:0}.cta-band{padding:27px 0;background:#f2f9fe;border-bottom:1px solid var(--line)}.cta-inner{display:flex;align-items:center;justify-content:center;gap:28px;text-align:left}.cta-inner h2{font-size:1.35rem;margin:0 0 4px;letter-spacing:-.025em}.cta-inner p{color:var(--muted);margin:0;font-size:.92rem}.contact-section{padding:64px 0;background:#fff}.section-heading{text-align:center;max-width:720px;margin:0 auto 32px}.section-heading .eyebrow{color:#008dbd}.section-heading h2{font-size:clamp(2rem,3vw,2.7rem);line-height:1.1;margin:0 0 12px;letter-spacing:-.04em}.section-heading p{color:var(--muted);margin:0}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:34px;align-items:start}.contact-info{background:linear-gradient(145deg,#062b56,#075d9b);color:#fff;padding:30px;border-radius:16px}.contact-info h3{font-size:1.4rem;margin:0 0 10px}.contact-info p{color:#d9efff}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{display:block;font-size:.88rem;font-weight:700}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:7px;padding:12px 13px;border:1px solid #cfe1ef;border-radius:8px;font:inherit;background:#fbfdff}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid #80dfff;border-color:#008dc4}.contact-form .full{grid-column:1/-1}.contact-form textarea{min-height:125px;resize:vertical}.form-notice{grid-column:1/-1;padding:12px;border-radius:8px;background:#eaf9f0;color:#165c32}.site-footer{background:#031d3d;color:#d7e8f6;padding:30px 0 18px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:22px;padding-bottom:20px;border-bottom:1px solid rgba(111,191,236,.24)}.footer-nav{display:flex;flex-wrap:wrap;gap:20px;font-size:.86rem}.footer-nav a:hover{color:#5ce6ff}.footer-contact{font-size:.85rem;text-align:right}.footer-bottom{display:flex;justify-content:space-between;gap:18px;padding-top:16px;font-size:.76rem;color:#a8c5dd}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:980px){.main-nav{gap:15px;font-size:.84rem}.header-inner>.button{display:none}.hero-inner{grid-template-columns:1fr .45fr}.hero-side{font-size:1.1rem;padding:18px}.why-grid{grid-template-columns:repeat(4,1fr);row-gap:20px}.why-intro{grid-column:1/-1;padding-right:0;max-width:700px}.benefit:first-of-type{border-left:0}.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.container{width:min(100% - 28px,1200px)}.header-inner{min-height:70px;flex-wrap:wrap}.brand{font-size:1.3rem}.brand-mark{width:40px;height:40px}.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;padding:0 0 12px}.main-nav.is-open{display:flex}.main-nav a{padding:12px;border-top:1px solid #edf4f9}.hero-inner{grid-template-columns:1fr;padding:54px 0}.hero h1{font-size:clamp(2.8rem,13vw,4.3rem)}.hero-side{justify-self:start;max-width:none;margin-top:6px;padding:8px 0 8px 18px;font-size:1.08rem}.service-grid{grid-template-columns:1fr}.service-card{padding:0 24px 25px}.service-photo{width:calc(100% + 48px);margin:0 -24px 25px;height:170px}.why-grid{grid-template-columns:repeat(2,1fr)}.why-intro{grid-column:1/-1}.benefit{border-left:0;border-top:1px solid rgba(51,213,255,.23);padding:20px 8px 8px}.cta-inner{flex-direction:column;text-align:center;gap:16px}.contact-grid{grid-template-columns:1fr}.contact-form{grid-template-columns:1fr}.contact-form .full{grid-column:auto}.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start}.footer-contact{text-align:left}.footer-nav{gap:12px 18px}}

.service-card>a{display:block;height:100%;color:inherit}.service-card>a:hover h2{color:#007eb8}.service-card>a:focus-visible{outline:3px solid #00bfe8;outline-offset:5px;border-radius:8px}

.page-hero .hero-inner{min-height:320px;padding:58px 0}.page-hero h1{font-size:clamp(2.3rem,4.6vw,4rem);max-width:780px;line-height:1.04}.page-content{padding-top:42px;padding-bottom:64px}.page-grid{grid-template-columns:repeat(2,1fr)}.page-info-card{text-align:left;padding:30px}.page-info-card h2{max-width:none}.page-info-card h2:after{margin:14px 0 0}.page-info-card p{font-size:1rem}.page-card-link{margin-top:20px!important}.page-card-link .button{font-size:.8rem;padding:10px 16px}.page-contact-grid{margin-top:14px}.page-end-cta{margin-top:40px;text-align:center;background:#f0f9ff;border:1px solid #d7edf9;border-radius:16px;padding:34px 20px}.page-end-cta h2{margin:0 0 8px;font-size:1.6rem}.page-end-cta p{margin:0 0 18px;color:var(--muted)}
@media(max-width:720px){.page-grid{grid-template-columns:1fr}.page-hero .hero-inner{padding:44px 0}.page-info-card{text-align:center}.page-info-card h2:after{margin:14px auto 0}.page-card-link{display:flex;justify-content:center}.page-end-cta{padding:28px 16px}}

/* Approved visual direction + bundled assets (offline-safe). */
.brand-logo{display:block;width:245px;height:62px;object-fit:contain;object-position:left center;max-width:100%}.footer-brand .brand-logo{width:225px;height:62px;filter:brightness(0) invert(1)}
.hero.hero-image{display:block;min-height:0;padding:0;background:#fff;overflow:hidden}.hero.hero-image:before,.hero.hero-image:after{display:none}.hero-banner{display:block;width:100%;height:auto;max-height:330px;object-fit:cover;object-position:center}.hero-cta-row{display:flex;justify-content:center;gap:14px;padding:18px;background:#f3f9fd}.hero-cta-row .button-outline{border-color:#0874c9;color:#0758a8}.service-photo{object-position:center;height:150px}.site-header .header-inner{gap:20px}.main-nav{gap:22px}.main-nav a{white-space:nowrap}.footer-brand{flex-shrink:0}
@media(max-width:980px){.brand-logo{width:200px;height:56px}.main-nav{gap:12px;font-size:.8rem}.hero-banner{max-height:300px}}
@media(max-width:720px){.brand-logo{width:190px;height:52px}.hero-banner{max-height:none;object-fit:contain}.hero-cta-row{flex-wrap:wrap}.main-nav{font-size:1rem}.footer-brand .brand-logo{width:200px;height:56px}}

.brand-mark-image{display:block;width:62px;height:52px;object-fit:contain;flex:0 0 auto}.brand-word{font-size:1.65rem;line-height:1;font-weight:850;letter-spacing:-.06em;color:#062b56;white-space:nowrap}.brand-word span{color:#00a8d9}.footer-brand .brand-word{color:#fff}.footer-brand .brand-word span{color:#00c7ed}.footer-brand .brand-mark-image{filter:brightness(0) invert(1)}
@media(max-width:720px){.brand-mark-image{width:48px;height:42px}.brand-word{font-size:1.35rem}}

/* Header/footer sizing refinement: keep the brand clear without crowding navigation. */
.site-header .header-inner{gap:16px;min-height:76px}
.site-header .brand{gap:7px;flex:0 1 auto;min-width:0}
.site-header .brand-mark-image{width:42px;height:38px}
.site-header .brand-word{font-size:clamp(1.15rem,1.35vw,1.4rem);letter-spacing:-.055em}
.site-header .main-nav{gap:clamp(10px,1.25vw,18px);font-size:clamp(.76rem,.82vw,.86rem);flex:0 1 auto}
.site-header .main-nav a{white-space:normal;line-height:1.25;text-align:center}
.site-header .header-inner>.button{padding:11px 16px;font-size:.82rem;white-space:nowrap;flex-shrink:0}
.site-footer .footer-top{gap:18px;align-items:center}
.site-footer .footer-brand{gap:6px;flex:0 0 auto}
.site-footer .footer-brand .brand-mark-image{width:36px;height:34px;filter:none}
.site-footer .footer-brand .brand-word{font-size:1.18rem;letter-spacing:-.055em}
.site-footer .footer-nav{gap:10px 14px;font-size:.8rem;flex:1 1 auto}
.site-footer .footer-contact{font-size:.8rem;max-width:210px;flex:0 0 auto}
@media(max-width:1080px){
 .site-header .header-inner{gap:12px}
 .site-header .brand-mark-image{width:36px;height:34px}
 .site-header .brand-word{font-size:1.12rem}
 .site-header .main-nav{gap:9px;font-size:.74rem}
 .site-header .header-inner>.button{padding:10px 12px;font-size:.76rem}
 .site-footer .footer-top{flex-wrap:wrap}
 .site-footer .footer-nav{order:3;flex-basis:100%}
}
@media(max-width:720px){
 .site-header .header-inner{gap:10px;min-height:68px}
 .site-header .brand-mark-image{width:34px;height:32px}
 .site-header .brand-word{font-size:1.12rem}
 .site-header .main-nav{gap:0;font-size:1rem}
 .site-header .header-inner>.button{display:none}
 .site-footer .footer-brand .brand-mark-image{width:34px;height:32px}
 .site-footer .footer-brand .brand-word{font-size:1.12rem}
 .site-footer .footer-nav{order:initial;flex-basis:auto}
 .site-footer .footer-contact{max-width:none}
}


/* Full-width hero banner: preserve the complete artwork without cropping. */
.hero.hero-image{width:100%;max-width:none;padding:0;margin:0;}
.hero.hero-image .hero-banner{display:block;width:100%;max-width:none;height:auto;max-height:none;object-fit:contain;object-position:center center;margin:0;}
@media(max-width:720px){.hero.hero-image .hero-banner{width:100%;height:auto;max-height:none;object-fit:contain;object-position:center center;}}

/* Footer brand contrast: echo the bright, clean logo treatment from the hero banner. */
.site-footer .footer-brand{
  gap:8px;
  padding:7px 12px 7px 9px;
  border:1px solid rgba(0,199,237,.38);
  border-radius:10px;
  background:linear-gradient(110deg,#ffffff 0%,#f2fbff 76%,#dff7ff 100%);
  box-shadow:0 3px 12px rgba(0,0,0,.14);
}
.site-footer .footer-brand .brand-mark-image{
  width:43px;
  height:32px;
  padding:1px;
  filter:none;
}
.site-footer .footer-brand .brand-word{
  color:#062b56;
  font-size:1.16rem;
  letter-spacing:-.055em;
}
.site-footer .footer-brand .brand-word span{color:#00a8d9}
@media(max-width:720px){
  .site-footer .footer-brand{padding:6px 10px 6px 8px}
  .site-footer .footer-brand .brand-mark-image{width:39px;height:30px}
  .site-footer .footer-brand .brand-word{font-size:1.12rem}
}
