/* ==========================================================================
   All of IT — page layer.
   Ported from "All of IT - Home.dc.html" (Claude Design). The root element
   carries data-theme="light" data-dir="augen", which is the final look.
   Markup keeps the design's inline styles, and several rules below select
   on them ([style*="..."]), so keep the two in step when editing.
   ========================================================================== */

body{margin:0}
[data-theme]{--font-heading:"Roboto",system-ui,sans-serif;--font-body:"Roboto",system-ui,sans-serif;--hs:85%;font-weight:300;--ink-accent:var(--color-accent-700);--grid-line:color-mix(in srgb,var(--color-text) 6%,transparent);--muted:color-mix(in srgb,var(--color-text) 80%,transparent);--veil:color-mix(in srgb,var(--color-bg) 84%,transparent);--field:var(--color-accent-900)}
a{color:var(--ink-accent)}
a:hover{color:var(--color-text)}
[data-theme] h1{font-stretch:75%;letter-spacing:-.03em;font-weight:100}
[data-theme] h1 b{font-weight:400}
[data-theme] h2{font-stretch:80%;font-weight:200;letter-spacing:-.02em}
[data-theme] h3{font-stretch:85%;font-weight:400;letter-spacing:-.01em}
[data-theme] p{font-weight:300}
[data-theme] .btn{white-space:nowrap;flex:none;font-family:var(--font-body);font-stretch:90%;font-weight:400;letter-spacing:.02em;transition:background .25s,border-color .25s,color .25s,letter-spacing .35s cubic-bezier(.2,.7,.2,1)}
[data-theme] .btn:hover{letter-spacing:.06em}
[data-theme] .btn-secondary:hover{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,transparent)}
[data-theme] .blueprint>.corner{transition:transform .35s cubic-bezier(.2,.7,.2,1)}
[data-theme] .blueprint:hover>.corner.tl{transform:translate(-4px,-4px)}
[data-theme] .blueprint:hover>.corner.tr{transform:translate(4px,-4px)}
[data-theme] .blueprint:hover>.corner.bl{transform:translate(-4px,4px)}
[data-theme] .blueprint:hover>.corner.br{transform:translate(4px,4px)}
[data-theme] a.card{transition:background .3s,border-color .3s}
[data-theme] a.card:hover{border-color:var(--color-accent)}
[data-navlinks] a,footer a,[data-ul]{width:fit-content;align-self:flex-start;justify-self:start;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;padding-bottom:2px;transition:background-size .4s cubic-bezier(.2,.7,.2,1),color .2s}
[data-navlinks] a:hover,footer a:hover,[data-ul]:hover{background-size:100% 1px;color:var(--ink-accent)!important}
[data-navlinks] a,[data-navlinks] a:hover,footer a,footer a:hover{background:none!important;transition:none!important;transform:none!important}
footer a:hover{color:var(--ink-accent)!important}
[data-theme] a,[data-theme] button{cursor:pointer}
[data-theme] .btn-secondary:hover{color:var(--ink-accent)}
[data-theme] a.card>span{transition:color .25s}
[data-theme] a.card:hover>span:nth-of-type(2){color:var(--ink-accent)}
[data-mlink]{transition:color .2s,padding-left .3s cubic-bezier(.2,.7,.2,1)}
[data-mlink]:hover{color:var(--ink-accent)!important;padding-left:8px!important}
[data-navmenu]{display:none!important}
@media (max-width:1100px){[data-navlinks]{display:none!important}[data-navmenu]{display:flex!important}}
@media (max-width:640px){[data-navcta]{display:none!important}}

/* — Augen Pro direction (the site's only look) — */
[data-dir="augen"]{--font-heading:"PP Neue Montreal","Inter",system-ui,sans-serif;--font-body:"PP Neue Montreal","Inter",system-ui,sans-serif;--hs:100%;--color-bg:#f2f2f4;--color-surface:#fdfdfd;--color-text:#0f1012;--color-divider:rgba(0,0,0,.08);--color-accent:#0071e3;--color-accent-300:#cfe3fa;--color-accent-400:#5aa2ec;--color-accent-600:#005bb8;--color-accent-700:#0063c7;--color-accent-800:#1b1c1f;--color-accent-900:#0f1012;--color-neutral-100:#fdfdfd;--ink-accent:#0063c7;--muted:#5e5e5e;--grid-line:rgba(15,16,18,.05);--field:#0f1012;letter-spacing:-.02em;font-weight:350;font-feature-settings:"ss01","ss02","cv01","cv11"}
[data-dir="augen"] :is(h1,h1 b,h2,h3){font-weight:350!important;font-stretch:100%!important;letter-spacing:-.02em!important}
[data-dir="augen"] h1 b{color:#0f1012}
[data-dir="augen"] p{font-weight:400!important;color:#4a4a4a}
[data-dir="augen"] :is(label,[style*="letter-spacing:.1em"],[style*="letter-spacing:.08em"],[style*="font-size:13px"]:not(.btn),[style*="font-size:11px"]:not(.btn)){font-weight:400!important}
[data-dir="augen"] [style*="font-weight:300"],[data-dir="augen"] [style*="font-weight:400"]:not(.btn),[data-dir="augen"] [style*="font-weight:500"]:not(.btn),[data-dir="augen"] [style*="font-weight:600"]:not(.btn){font-weight:350!important}
[data-dir="augen"] [style*="font-stretch"]{font-stretch:100%!important}
[data-dir="augen"] .blueprint>.corner{display:none}
[data-dir="augen"] .btn{border-radius:26px;font-stretch:100%;font-weight:400;font-size:13px;letter-spacing:-.02em;min-height:44px;transition:background .2s,transform .15s}
[data-dir="augen"] .btn:hover{letter-spacing:-.02em}
[data-dir="augen"] .btn:active{transform:scale(.98)}
[data-dir="augen"] .btn-primary{background:rgba(12,13,15,.1)!important;border-color:transparent!important;color:#020201!important}
[data-dir="augen"] .btn-primary:hover,[data-dir="augen"] #contact .btn:hover{background:rgba(0,113,227,.14)!important;border-color:rgba(0,113,227,.5)!important;color:#0063c7!important;box-shadow:0 0 0 .5px rgba(0,113,227,.5),0 0 24px rgba(0,113,227,.35),0 0 48px rgba(0,113,227,.18)}
[data-dir="augen"] .btn{transition:background .2s,box-shadow .24s,color .2s,transform .15s}
[data-dir="augen"] .btn-secondary{background:rgba(12,13,15,.05);border:.5px solid rgba(0,0,0,.08);color:#020201;text-decoration:none}
[data-dir="augen"] .btn-secondary:hover{background:rgba(0,113,227,.06);border-color:rgba(0,113,227,.5);color:#0063c7!important;text-decoration:none;box-shadow:0 0 0 .5px rgba(0,113,227,.5),0 0 24px rgba(0,113,227,.35),0 0 48px rgba(0,113,227,.18)}
[data-dir="augen"] .card{background:rgba(253,253,253,.35);border:.5px solid rgba(255,255,255,.6);border-radius:clamp(24px,4vw,54px);box-shadow:0 0 40px -8px rgba(0,113,227,.18),inset 0 0 30px rgba(207,227,250,.35)}
[data-dir="augen"] a.card:hover{border-color:#0071e3;box-shadow:0 0 52px -6px rgba(0,113,227,.28),inset 0 0 30px rgba(207,227,250,.45)}
[data-dir="augen"] .tag{border-radius:9999px;background:none;border:.5px solid #0071e3;color:#0063c7}
[data-dir="augen"] input,[data-dir="augen"] textarea,[data-dir="augen"] select,[data-dir="augen"] .input{border-radius:10px;background:#fdfdfd;border:.5px solid rgba(0,0,0,.12)}
[data-dir="augen"] footer{background:linear-gradient(180deg,rgba(242,242,244,0) 0,rgba(242,242,244,.14) 120px)!important;border-top:0!important;position:relative;color:#0f1012}
[data-dir="augen"] footer::before{content:"";position:absolute;inset:-60px 0 0;z-index:-1;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 180px);mask-image:linear-gradient(180deg,transparent 0,#000 180px)}
[data-dir="augen"] footer a{color:#0f1012!important}
[data-dir="augen"] footer span{color:#5e5e5e}
[data-dir="augen"] footer canvas{color:#0f1012!important}
[data-dir="augen"] footer canvas+span{color:#0f1012}
[data-dir="augen"] #contact{background:transparent!important;-webkit-backdrop-filter:none;backdrop-filter:none;color:#0f1012!important}
[data-dir="augen"] #contact :is(h2,p,span,div){color:#0f1012!important}
[data-dir="augen"] #contact a:not(.btn){color:#0063c7!important;white-space:nowrap}
[data-dir="augen"] #contact .btn{background:rgba(12,13,15,.1)!important;border-color:transparent!important;color:#020201!important;font-size:15px}
[data-dir="augen"] :is(h1,h2,h3,p,li,label,span,a:not(.btn)){text-shadow:0 0 14px rgba(242,242,244,.9)}
[data-dir="augen"] :is(footer,#contact) *{text-shadow:0 0 14px rgba(242,242,244,.9)!important}
[data-dir="augen"] a{color:#0063c7}
[data-dir="augen"] a:hover{color:#0f1012}
[data-dir="augen"] :has(>.card){gap:0!important}
[data-dir="augen"] .card{background:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:0!important;border-left:1px solid var(--color-divider)!important;border-radius:0!important;box-shadow:none!important;padding:44px clamp(20px,3vw,36px)!important}
[data-dir="augen"] :has(>.card){clip-path:inset(0 0 0 1px)}
[data-dir="augen"] :has(>.card)[style*="padding:"]{clip-path:inset(0 0 0 calc(clamp(20px,4vw,48px) + 1px))}
section[data-screen-label="Contact page"] .blueprint:not(.btn),section[data-screen-label="Contact page"] .card{border:0!important;background:none!important;box-shadow:none!important}
[data-dir="augen"] a.card:hover,[data-dir="augen"] .card:hover{border-color:var(--color-divider)!important;box-shadow:none!important;background:none!important}
[data-dir="augen"] .card h3{font-size:32px!important}
[data-dir="augen"] ::selection{background:rgba(0,113,227,.18)}
[data-dir="augen"] [data-svc]{border-radius:26px;transition:background .2s,box-shadow .24s,color .2s,border-color .2s}
[data-dir="augen"] [data-svc][aria-pressed="true"]{background:rgba(0,113,227,.12)!important;border-color:rgba(0,113,227,.35)!important;color:#0063c7!important}
[data-dir="augen"] [data-svc]:hover{background:rgba(0,113,227,.06)!important;border-color:rgba(0,113,227,.5)!important;color:#0063c7!important;box-shadow:0 0 0 .5px rgba(0,113,227,.5),0 0 24px rgba(0,113,227,.35),0 0 48px rgba(0,113,227,.18)}
[data-dir="augen"] :is(section[data-screen-label],header[data-screen-label]){position:relative;isolation:isolate}
[data-dir="augen"] header[data-screen-label="Page header"]{border-bottom:0!important}
[data-dir="augen"] :is(section[data-screen-label],header[data-screen-label])::before{content:"";position:absolute;inset:-40px 0;z-index:-1;pointer-events:none;background:rgba(242,242,244,.18);-webkit-mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.25) 28px,rgba(0,0,0,.7) 60px,#000 96px,#000 calc(100% - 96px),rgba(0,0,0,.7) calc(100% - 60px),rgba(0,0,0,.25) calc(100% - 28px),transparent 100%),linear-gradient(180deg,transparent 0,rgba(0,0,0,.25) 30px,rgba(0,0,0,.7) 66px,#000 100px,#000 calc(100% - 100px),rgba(0,0,0,.7) calc(100% - 66px),rgba(0,0,0,.25) calc(100% - 30px),transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.25) 28px,rgba(0,0,0,.7) 60px,#000 96px,#000 calc(100% - 96px),rgba(0,0,0,.7) calc(100% - 60px),rgba(0,0,0,.25) calc(100% - 28px),transparent 100%),linear-gradient(180deg,transparent 0,rgba(0,0,0,.25) 30px,rgba(0,0,0,.7) 66px,#000 100px,#000 calc(100% - 100px),rgba(0,0,0,.7) calc(100% - 66px),rgba(0,0,0,.25) calc(100% - 30px),transparent 100%);mask-composite:intersect}
[data-dir="augen"] #contact::before,[data-dir="augen"] header[data-screen-label]::before{display:none}
[data-dir="augen"] nav{background-color:#f2f2f4!important;background-image:linear-gradient(rgba(15,16,18,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(15,16,18,.05) 1px,transparent 1px)!important;background-size:80px 80px!important;background-position:-1px -1px!important;background-attachment:fixed!important;border-bottom:0!important;padding-bottom:56px!important;margin-bottom:-38px;-webkit-mask-image:linear-gradient(0deg,transparent 0,rgba(0,0,0,.35) 18px,rgba(0,0,0,.8) 34px,#000 48px);mask-image:linear-gradient(0deg,transparent 0,rgba(0,0,0,.35) 18px,rgba(0,0,0,.8) 34px,#000 48px)}
[data-dir="augen"] [data-outage]:hover,[data-dir="augen"] #contact .btn[data-outage]:hover{background:rgba(215,0,21,.12)!important;border-color:rgba(215,0,21,.5)!important;color:#c4001a!important;box-shadow:0 0 0 .5px rgba(215,0,21,.5),0 0 24px rgba(215,0,21,.32),0 0 48px rgba(215,0,21,.16)!important}
/* Request Quote and Report Outage: a darker fill, at rest and on hover, so the labels read clearly over the moving landscape. */
[data-dir="augen"] [data-outage],[data-dir="augen"] section[data-screen-label="Pricing page"] .btn-secondary{background:rgba(12,13,15,.1)}
[data-dir="augen"] section[data-screen-label="Pricing page"] .btn-secondary:hover{background:rgba(0,113,227,.14)}
section[data-screen-label="Industries"] a[href$="/industries/"]:not(.btn),section[data-screen-label="Industries"] a[href$="/industries/"]:not(.btn):hover{border-bottom:0!important;border-top:0!important;border-left:0!important;text-decoration:none!important;box-shadow:none!important;background:none!important;color:var(--color-text)!important;outline:0}
nav>a[data-brand],nav>a[data-brand]:hover,nav>a[data-brand]:focus{border:0!important;border-bottom:0!important;text-decoration:none!important;box-shadow:none!important;background:none!important;color:var(--color-text)!important;outline:0}

/* — Background grid styles. Set on the root element in header.php: data-grid = lines (default) | dots | blueprint | horizon | none (the design's "crosses" option is left out: its inline SVG trips the site firewall); data-drift = on | off. — */
[data-dir="augen"][data-grid="dots"] :is([data-bggrid],nav){background-image:radial-gradient(circle at 1px 1px,rgba(94,94,94,.42) 1.1px,transparent 1.7px)!important;background-size:40px 40px!important;background-position:-1px -1px!important}
[data-dir="augen"][data-grid="blueprint"] :is([data-bggrid],nav){background-image:linear-gradient(rgba(94,94,94,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(94,94,94,.13) 1px,transparent 1px),linear-gradient(rgba(94,94,94,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(94,94,94,.05) 1px,transparent 1px)!important;background-size:80px 80px,80px 80px,16px 16px,16px 16px!important;background-position:-1px -1px!important}
[data-dir="augen"][data-grid="horizon"] [data-bggrid]{left:-100%!important;right:-100%!important;height:140vh!important;transform-origin:50% 0;transform:perspective(800px) rotateX(-45deg);background-image:linear-gradient(rgba(94,94,94,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(94,94,94,.22) 1px,transparent 1px)!important;background-size:80px 80px!important;background-position:-1px -1px!important;-webkit-mask-image:linear-gradient(180deg,#000 0,#000 25%,transparent 85%)!important;mask-image:linear-gradient(180deg,#000 0,#000 25%,transparent 85%)!important}
[data-dir="augen"][data-grid="horizon"] nav{background-image:none!important}
[data-dir="augen"][data-grid="none"] [data-bggrid]{display:none}
[data-dir="augen"][data-grid="none"] nav{background-image:none!important}
@keyframes gridDrift{from{background-position:-1px -1px}to{background-position:-1px -81px}}
[data-dir="augen"][data-drift="on"] :is([data-bggrid],nav){animation:gridDrift 14s linear infinite}
[data-dir="augen"][data-drift="on"][data-grid="horizon"] nav{animation:none}
@media (prefers-reduced-motion:reduce){[data-dir="augen"] :is([data-bggrid],nav){animation:none!important}}

/* — WordPress integration — */
.admin-bar [data-dir] nav{top:32px}
@media (max-width:782px){.admin-bar [data-dir] nav{top:46px}}
@media (max-width:600px){.admin-bar [data-dir] nav{top:0}}
[hidden]{display:none!important}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
/* Generic page body (pages without a dedicated template, e.g. Shop, Portal). */
.aoi-content{max-width:1280px;margin:0 auto;padding:clamp(40px,6vw,80px) clamp(20px,4vw,48px);font-size:18px;line-height:1.65}
.aoi-content>*{max-width:820px}
.aoi-content>.alignwide,.aoi-content>.alignfull,.aoi-content>[class*="fluent"],.aoi-content>[class*="fct"],.aoi-content>[class*="fs_"]{max-width:none}
.aoi-content img{height:auto}
