:root{--white:#fff;--charcoal:#373737;--near-black:#292929;--muted:#737373;--line:#e7e7e7;--light-grey:#f5f5f5;--orange:#f47721;--red:#ed4538;--gradient:linear-gradient(110deg,var(--orange),var(--red));--font:Urbanist,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:500 16px/1.65 var(--font);color:var(--charcoal);background:var(--white);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}button{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.04em}h2{font-size:clamp(2.25rem,4.6vw,4.3rem);font-weight:800}h3{font-size:1.6rem;font-weight:800}.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;left:10px;top:-70px;z-index:100;background:white;padding:10px}.skip-link:focus{top:10px}.site-header{background:var(--white);position:relative;z-index:10;border-bottom:1px solid #eee}.nav-wrap{min-height:90px;display:flex;justify-content:space-between;align-items:center;gap:28px}.brand{display:flex;align-items:center;max-width:255px}.brand-logo{display:block;width:225px;height:auto;max-height:76px;object-fit:contain;object-position:left}.brand-fallback{display:flex;align-items:center;gap:10px;font-size:1.1rem;font-weight:800;letter-spacing:-.04em}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:11px;background:var(--gradient);color:white;font-weight:800}.primary-nav{display:flex;align-items:center;gap:36px;font-size:.93rem;font-weight:700}.primary-nav>a:not(.nav-cta):hover,.text-link:hover{color:var(--orange)}.nav-cta{padding:12px 22px;color:white!important;border-radius:5px;background:var(--charcoal)}.nav-cta:hover{background:#202020}.nav-cta span,.button span{margin-left:9px}.menu-toggle{display:none}.hero{overflow:hidden;background:var(--charcoal);color:var(--white);position:relative}.hero:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 82% 40%,rgba(244,119,33,.12),transparent 36%);pointer-events:none}.hero-grid{min-height:610px;padding-block:95px;display:grid;grid-template-columns:1.16fr .84fr;align-items:center;gap:40px}.hero-content{position:relative;z-index:1}.eyebrow,.section-kicker{font-size:.77rem;font-weight:800;letter-spacing:.18em;color:var(--orange)}.eyebrow{display:flex;align-items:center;gap:12px}.eyebrow-line{height:2px;width:28px;background:var(--gradient)}h1{font-size:clamp(3.7rem,6.7vw,6.6rem);font-weight:800;margin:25px 0 25px;max-width:800px}.gradient-text{background:var(--gradient);background-clip:text;-webkit-background-clip:text;color:transparent}.hero-subtitle{font-size:1.18rem;color:#e0e0e0;max-width:550px;line-height:1.75}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;padding:16px 24px;border-radius:5px;font-weight:800;font-size:.95rem;transition:transform .15s,box-shadow .15s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--gradient);color:white}.button-outline{border:1px solid #777;color:white}.button-outline:hover{border-color:white}.hero-note{margin:45px 0 0;font-size:.82rem;color:#ccc;display:flex;align-items:center;gap:10px}.status-dot{width:8px;height:8px;border-radius:100%;background:var(--orange)}.hero-graphic{height:405px;position:relative;display:grid;place-items:center}.graphic-orbit{position:absolute;border:1px solid #686868;border-radius:50%;transform:rotate(-25deg)}.orbit-one{width:370px;height:285px}.orbit-two{width:270px;height:365px;transform:rotate(35deg)}.graphic-core{width:190px;height:190px;border-radius:38px;background:var(--gradient);display:grid;place-items:center;transform:rotate(-12deg);box-shadow:0 25px 80px rgba(237,69,56,.21)}.graphic-core svg{width:115px;height:115px;color:white;transform:rotate(12deg)}.graphic-label{position:absolute;border:1px solid #666;border-radius:6px;padding:8px 15px;background:#404040;font-size:.7rem;letter-spacing:.14em;font-weight:800}.label-one{top:48px;left:12px}.label-two{bottom:50px;right:9px}.graphic-dot{position:absolute;width:12px;height:12px;background:var(--orange);border-radius:50%}.dot-one{top:60px;right:80px}.dot-two{bottom:73px;left:24px}.section{padding:105px 0}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.intro p,.about-grid p{font-size:1.14rem;color:#666;line-height:1.85}.muted-heading{color:#929292}.services-section{background:var(--light-grey)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:42px}.section-heading p{max-width:270px;color:#777}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.service-card{background:white;padding:32px 26px;display:flex;flex-direction:column;min-height:365px;border:1px solid var(--line);transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 13px 38px #0000000b}.service-icon{font-size:2.5rem;font-weight:800;color:var(--orange);line-height:1;margin-bottom:28px}.service-index{font-size:.72rem;letter-spacing:.15em;font-weight:800;color:#888;margin-bottom:10px}.service-card h3{font-size:1.43rem;margin-bottom:16px}.service-card p{font-size:.9rem;line-height:1.75;color:#777;flex:1}.service-card a{font-weight:800;font-size:.82rem;margin-top:16px;color:var(--charcoal)}.service-card a span{color:var(--orange);margin-left:5px}.business-band{padding:105px 0;background:var(--near-black);color:white}.band-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:100px}.section-kicker.light{color:#ff9a54}.business-band h2{margin:17px 0 22px}.business-band p{color:#d4d4d4;max-width:500px;line-height:1.8}.business-band .button{margin-top:12px}.band-highlights>div{display:flex;gap:24px;padding:25px 0;border-bottom:1px solid #555}.band-highlights>div:first-child{padding-top:0}.band-highlights>div:last-child{border:0}.highlight-symbol{font-size:.82rem;color:#ff9650;font-weight:800}.band-highlights h3{font-size:1.28rem;margin-bottom:10px}.band-highlights p{font-size:.92rem;margin-bottom:0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.text-link{font-weight:800;display:inline-block;margin-top:12px;border-bottom:2px solid var(--orange);padding-bottom:6px}.contact-section{padding:20px 0 90px}.contact-panel{background:var(--light-grey);padding:65px;display:grid;grid-template-columns:1fr .65fr;gap:80px;border-top:4px solid var(--orange)}.contact-panel h2{margin:14px 0 20px}.contact-panel p{font-size:1.08rem;color:#666;line-height:1.8}.contact-side{display:flex;flex-direction:column;justify-content:center}.contact-side strong{color:var(--charcoal)}.contact-hint{font-size:.87rem!important}.contact-placeholder{align-self:flex-start;cursor:default;opacity:.75}.footer{background:var(--charcoal);color:white;padding:33px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer strong{font-size:1.05rem}.footer p{color:#ddd;font-size:.85rem;margin:2px 0 0}.footer-links{display:flex;gap:26px;font-size:.8rem;color:#ddd}
@media(max-width:980px){.service-grid{grid-template-columns:repeat(2,1fr)}.hero-grid{grid-template-columns:1fr .7fr}.hero-graphic{transform:scale(.8);margin-inline:-60px}.band-grid{gap:45px}.contact-panel{gap:35px}}@media(max-width:720px){.container{width:min(100% - 34px,1180px)}.nav-wrap{min-height:76px}.brand-logo{width:200px}.menu-toggle{display:flex;width:44px;height:44px;border:1px solid #ddd;border-radius:5px;background:white;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer}.menu-toggle span{display:block;background:#373737;width:20px;height:2px}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;flex-direction:column;align-items:stretch;padding:18px 24px 24px;gap:0;box-shadow:0 13px 20px #0002}.primary-nav.is-open{display:flex}.primary-nav>a{padding:13px 0}.primary-nav .nav-cta{padding:12px 18px;text-align:center;margin-top:10px}.hero-grid{min-height:auto;padding:76px 0 72px;display:block}.hero-graphic{display:none}.hero-subtitle{font-size:1.05rem}.hero-note{margin-top:28px}.section{padding:70px 0}.intro-grid,.about-grid,.band-grid,.contact-panel{grid-template-columns:1fr;gap:27px}.intro p,.about-grid p{font-size:1rem}.section-heading{display:block}.section-heading p{margin-top:15px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.business-band{padding:70px 0}.band-highlights{margin-top:25px}.contact-section{padding-bottom:60px}.contact-panel{padding:36px 24px}.footer-inner,.footer-links{flex-direction:column;align-items:flex-start;gap:12px}h1{font-size:clamp(3.1rem,12vw,4.4rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Home IT services */
.home-section{background:var(--white)}
.home-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-service{border:1px solid var(--line);padding:29px 27px;background:#fff;min-height:245px;transition:border-color .2s,transform .2s}
.home-service:hover{border-color:var(--orange);transform:translateY(-3px)}
.home-service-icon{display:block;font-size:1.8rem;line-height:1.3;margin-bottom:20px}
.home-service h3{font-size:1.36rem;letter-spacing:-.03em;margin-bottom:12px}
.home-service p{color:#686868;line-height:1.75;font-size:.95rem;margin:0}
.home-service-bottom{margin-top:25px;padding:23px 0 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}
.home-service-bottom p{max-width:620px;margin:0;color:#666}
.home-service-bottom .button{flex-shrink:0}
.email-link{display:inline-block;overflow-wrap:anywhere;font-size:1.02rem;font-weight:800;text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:5px;margin-bottom:23px}
.contact-email-button{align-self:flex-start}
.footer-email{display:inline-block;font-size:.85rem;color:#e4e4e4;margin-top:5px;text-decoration:underline;text-underline-offset:3px}
@media(max-width:980px){.home-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.primary-nav{gap:20px}}
@media(max-width:720px){.brand-logo{width:178px;max-height:65px}.home-service-grid{grid-template-columns:1fr}.home-service{min-height:auto}.home-service-bottom{align-items:flex-start;flex-direction:column}.home-service-bottom .button{width:100%}}

/* Version 0.3 — approved logo only, editorial photography */
.brand{max-width:255px}.brand-logo{width:225px;max-height:76px;object-fit:contain;object-position:left center}
.hero-grid{grid-template-columns:1.08fr .92fr;gap:65px}
.hero-photo-wrap{position:relative;min-width:0;align-self:center}
.hero-photo{display:block;width:100%;height:420px;object-fit:cover;object-position:center;border-radius:12px}
.hero-photo-caption{position:absolute;bottom:18px;left:18px;right:18px;max-width:340px;background:rgba(41,41,41,.89);padding:13px 17px;border-left:3px solid var(--orange);font-size:.88rem;font-weight:700;color:white;border-radius:4px}
.home-service-photo{padding-top:0;overflow:hidden}
.service-photo{display:block;width:calc(100% + 54px);height:160px;object-fit:cover;margin:0 -27px 22px}
@media(max-width:980px){.hero-grid{gap:24px}.hero-photo{height:340px}}
@media(max-width:720px){.hero-photo-wrap{margin-top:35px}.hero-photo{height:250px}.hero-grid{display:block}.hero-photo-caption{font-size:.79rem}.brand-logo{width:178px}}

/* Version 0.4 — business-focused photography and balanced service mix */
.business-photo-strip{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-bottom:58px}
.business-photo-strip img{width:100%;height:285px;object-fit:cover;display:block;border-radius:8px}
.business-photo-strip img:first-child{object-position:center 55%}
@media(max-width:720px){.business-photo-strip{gap:10px;margin-bottom:38px}.business-photo-strip img{height:160px}.business-photo-strip img:nth-child(2){object-position:center}}

/* Version 0.5 — final refinement, maintaining the approved hybrid layout */
.home-service{border-radius:8px;overflow:hidden;display:flex;flex-direction:column}
.home-service-photo .service-photo{flex:none}
.home-service h3{line-height:1.2}
.service-card{border-radius:8px}
.service-card a:hover,.footer-links a:hover,.footer-email:hover,.email-link:hover{color:var(--orange)}
.button-primary:hover{box-shadow:0 8px 24px rgba(237,69,56,.18)}
.primary-nav a:focus-visible,.button:focus-visible{outline-offset:5px}
html{scroll-padding-top:24px}
@media(max-width:720px){
  .service-photo{height:190px}
  .hero-actions .button{min-height:52px}
  .primary-nav>a{min-height:44px;display:flex;align-items:center}
  .primary-nav .nav-cta{justify-content:center}
}
@media(prefers-reduced-motion:reduce){.home-service:hover,.service-card:hover,.button:hover{transform:none}}

/* Digital marketing: fits the approved hybrid site rather than introducing a new design */
@media(min-width:981px){.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.marketing-section{background:#fff;border-bottom:1px solid var(--line)}
.marketing-grid{display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:80px}
.marketing-visual img{display:block;width:100%;height:475px;object-fit:cover;border-radius:9px}
.marketing-content h2{margin:16px 0 24px}
.marketing-content>p{font-size:1.05rem;color:#666;line-height:1.8}
.marketing-offerings{border-top:1px solid var(--line);margin:26px 0 30px}
.marketing-offerings>div{padding:13px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:3px}
.marketing-offerings strong{font-size:1rem}
.marketing-offerings span{color:#737373;font-size:.93rem}
@media(max-width:980px){.marketing-grid{gap:38px}.marketing-visual img{height:380px}}
@media(max-width:720px){.marketing-grid{grid-template-columns:1fr}.marketing-visual img{height:240px}.marketing-content .button{width:100%}}
