@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=Barlow:wght@400;500;600;700&display=swap');
:root{--black:#141414;--accent:#a73d00;--orange:#ff871f;--paper:#f5f5f5;--ink:#202020}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font:18px/1.6 Barlow,Arial,sans-serif}a{color:inherit;text-underline-offset:5px}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b74300;outline-offset:6px}.skip{position:absolute;top:-80px;background:white;padding:12px;z-index:9}.skip:focus{top:0}.topbar{background:var(--black);color:white;padding:9px 5%;display:flex;justify-content:space-between;font-size:14px}.topbar a{text-decoration:none}header{display:flex;justify-content:space-between;align-items:center;min-height:100px;padding:20px 5%;background:white;gap:24px}.brand img{display:block;width:210px;height:auto}nav{display:flex;gap:30px;align-items:center;font-size:16px;font-weight:600}nav a{text-decoration:none}nav a:hover{color:var(--accent)}.nav-contact{border:1px solid var(--ink);padding:10px 22px}.menu{display:none}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:610px;background:var(--black);color:white}.hero-copy{padding:66px 8% 30px 9.5%;display:flex;align-items:flex-start;flex-direction:column}.eyebrow{font-size:14px;font-weight:700;letter-spacing:1.8px;margin:0 0 22px}.hero .eyebrow{color:var(--orange)}h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;font-weight:600;line-height:1.03;margin:0;letter-spacing:-.6px}h1{font-size:clamp(58px,5.8vw,88px)}h1 em{color:var(--orange);font-style:normal}h2{font-size:clamp(42px,4vw,62px)}h3{font-size:36px}.intro{max-width:510px;color:#dedede;line-height:1.6;margin:26px 0 32px}.button{display:inline-block;text-decoration:none;font-size:16px;font-weight:700;padding:15px 26px}.light{background:var(--orange);color:var(--black)}.light:hover{background:white}.dark{background:var(--black);color:white}.dark:hover{background:var(--accent)}.hero-bottom{display:flex;justify-content:space-between;gap:20px;width:100%;font-size:13px;color:#c9c9c9;border-top:1px solid #ffffff40;margin-top:auto;padding-top:23px}.hero-image{background:linear-gradient(0deg,#14141470,#14141400),url('assets/hero-refined.jpg') center/cover;position:relative;min-height:400px}.image-label{position:absolute;bottom:34px;left:34px;font-size:13px;letter-spacing:2px;font-weight:700}.credentials{display:flex;justify-content:space-between;gap:22px;background:var(--orange);padding:19px 5%;font-size:14px;font-weight:600}.section{padding:95px 5%}.section-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;margin-bottom:46px}.section-heading>p{align-self:end;max-width:465px;margin:0;color:#585858}.section .eyebrow{color:var(--accent)}.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #c7c7c7;border-bottom:1px solid #c7c7c7}.cap-card{padding:32px 30px 36px;border-right:1px solid #c7c7c7;display:flex;flex-direction:column}.cap-card:first-child{padding-left:0}.cap-card:last-child{border:0}.number{color:var(--accent);font-size:16px;margin-bottom:25px}.cap-card p{font-size:17px;color:#585858;margin:22px 0}.cap-card ul{list-style:none;padding:0;margin:0 0 30px;font-size:16px}.cap-card li{padding:8px 0;border-top:1px solid #e1e1e1}.cap-card a{margin-top:auto;font-weight:600;font-size:16px}.projects{background:var(--paper)}.project-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}.project-layout>img{width:100%;height:410px;object-fit:cover}.project-list details{border-bottom:1px solid #c7c7c7}.project-list summary{cursor:pointer;padding:24px 24px 24px 0;font-size:22px;font-weight:600;list-style:none;position:relative}.project-list summary::after{content:'+';position:absolute;right:0}.project-list details[open] summary::after{content:'−'}.project-list summary span{color:var(--accent);font-size:14px;margin-right:18px}.project-list p{margin:0 28px 25px 0;color:#585858;font-size:17px}.about{display:grid;grid-template-columns:1fr 1fr;gap:70px}.about .large{font-size:25px;line-height:1.4;max-width:460px;margin-top:28px}.about>div>p:not(.eyebrow){color:#585858}.principles{margin-top:30px}.principles>div{border-top:1px solid #d3d3d3;padding:17px 0}.principles strong,.principles span{display:block}.principles span{font-size:16px;color:#585858}.emergency{background:var(--accent);color:white;padding:62px 5%;display:flex;align-items:center;justify-content:space-between;gap:40px}.emergency .eyebrow{color:var(--orange)}.emergency p:last-child{max-width:540px;color:#eeeeee;margin-bottom:0}.emergency .button{white-space:nowrap}.careers{display:grid;grid-template-columns:1fr 1fr;gap:70px}.careers p:not(.eyebrow){color:#585858;margin-top:0}.text-link{font-weight:700}.contact{background:var(--orange);display:grid;grid-template-columns:1.1fr 1fr;gap:80px}.contact .eyebrow{color:var(--ink)}.contact-info{display:grid;grid-template-columns:1fr 1fr;gap:30px}.contact-info>div:first-child{grid-column:1/-1}.contact-info span{display:block;font-size:13px;font-weight:700;letter-spacing:1.4px;margin-bottom:12px}.contact-info a{display:block;font-size:25px;font-weight:600}.contact-info p{margin:0;font-size:17px}footer{background:var(--black);color:#cdcdcd;padding:35px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:13px}footer strong{font-family:'Barlow Condensed',sans-serif;font-size:36px;color:white;margin-right:15px}footer div{display:flex;align-items:center}footer a{font-size:14px}
@media(min-width:1600px){.section,header,.topbar,.credentials,.emergency,footer{padding-left:max(5%,calc((100vw - 1450px)/2));padding-right:max(5%,calc((100vw - 1450px)/2))}}@media(max-width:1000px){nav{gap:17px;font-size:14px}.brand img{width:170px}.hero-copy{padding-top:44px}.hero-bottom{flex-direction:column;gap:0;margin-top:35px}.credentials{font-size:13px}.cap-card{padding:28px 20px}h3{font-size:30px}.project-layout{gap:30px}.about,.careers{gap:40px}.contact{gap:40px}}@media(max-width:760px){.topbar{justify-content:center}.topbar>span{display:none}header{min-height:85px;position:relative}.menu{display:block;border:1px solid #c4c4c4;background:white;padding:9px 16px;color:var(--black);font:600 16px Barlow,Arial}nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:25px 5%;z-index:5;box-shadow:0 8px 20px #0002}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:20px;font-size:17px}.hero{grid-template-columns:1fr}.hero-copy{padding:42px 6% 30px}.hero h1{font-size:64px}.hero-bottom{flex-direction:row;font-size:12px}.hero-image{min-height:300px}.credentials{flex-direction:column;gap:8px;padding:20px 6%;font-size:14px}.section{padding:60px 6%}.section-heading,.about,.careers,.contact,.project-layout{grid-template-columns:1fr;gap:28px}.section-heading{margin-bottom:30px}.capability-grid{grid-template-columns:1fr}.cap-card,.cap-card:first-child{padding:30px 0;border-right:0;border-bottom:1px solid #c7c7c7}h3{font-size:36px}.project-layout>img{height:280px}.project-list summary{font-size:21px}.about .large{font-size:23px}.emergency{padding:45px 6%;align-items:flex-start;flex-direction:column;gap:26px}.contact-info{gap:25px}footer{flex-direction:column;align-items:flex-start;padding:30px 6%}footer div{flex-wrap:wrap}.contact h2{font-size:58px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.brand img{filter:grayscale(1) brightness(0)}.emergency{background:var(--black);border-top:6px solid var(--orange)}.dark:hover{background:#333}.cap-card h3{border-top:4px solid var(--orange);padding-top:24px}


.hero-image{background:linear-gradient(0deg,#14141490,#14141400 60%),url('assets/hero-refined.jpg') center/cover}.gallery-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}.gallery-filters button{font:600 15px Barlow,Arial;padding:10px 19px;border:1px solid #bbb;background:white;cursor:pointer}.gallery-filters button[aria-pressed=true]{background:var(--black);border-color:var(--black);color:white}.job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 25px}.job-card[hidden]{display:none}.photo-open{display:block;position:relative;width:100%;padding:0;border:0;background:#eee;cursor:pointer;overflow:hidden}.photo-open img{display:block;width:100%;height:310px;object-fit:cover;transition:transform .25s}.photo-open:hover img{transform:scale(1.025)}.photo-zoom{position:absolute;bottom:12px;right:12px;padding:6px 10px;background:#141414e8;color:white;font:500 13px Barlow,Arial}.job-copy{padding:19px 0;border-bottom:1px solid #ddd}.job-copy .eyebrow{margin-bottom:9px;font-size:12px}.job-copy h3{font-size:29px}.job-copy>p:last-child{font-size:16px;color:#585858;margin:10px 0 0}.photo-dialog{max-width:min(1100px,95vw);max-height:94vh;border:0;padding:48px 20px 15px;background:var(--black);color:white}.photo-dialog::backdrop{background:#000c}.photo-dialog img{display:block;max-width:100%;max-height:75vh;object-fit:contain;margin:auto}.photo-dialog p{text-align:center;font-size:16px;margin:12px 0}.photo-close{position:absolute;right:15px;top:10px;background:none;border:1px solid #888;color:white;padding:5px 12px;cursor:pointer;font:16px Barlow,Arial}body.photo-viewing{overflow:hidden}@media(max-width:1100px){nav{gap:15px}.job-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.job-grid{grid-template-columns:1fr}.photo-open img{height:330px}}@media(prefers-reduced-motion:reduce){.photo-open img{transition:none}}
.cap-photo{width:100%;height:215px;object-fit:cover;margin-bottom:25px}.cap-card h3{border-top:0;padding-top:0}.cap-card:first-child{padding-right:30px}.job-card[data-category="HVAC"] img{object-position:center 45%}

.work-categories{display:flex;gap:0;border-top:1px solid #ccc;border-bottom:1px solid #ccc;margin-bottom:60px}.work-categories a{flex:1;padding:22px 25px;font:600 28px "Barlow Condensed",Arial;text-decoration:none;border-right:1px solid #ccc;display:flex;justify-content:space-between}.work-categories a:first-child{padding-left:0}.work-categories a:last-child{border:0}.work-categories a span{color:var(--accent)}.work-categories a:hover{color:var(--accent)}.work-group{margin-bottom:70px}.work-group:last-child{margin-bottom:0}.work-group-heading{border-top:4px solid var(--orange);padding-top:25px;margin-bottom:30px;display:flex;align-items:baseline;justify-content:space-between;gap:30px}.work-group-heading h3{font-size:48px}.work-group-heading p{color:#585858;font-size:17px;margin:0}.job-copy h4{font:600 25px/1.2 "Barlow Condensed",Arial;margin:0}.job-copy{padding:16px 0}.work-categories{position:static;box-shadow:none}.work-gallery>.section-heading h2{font-size:62px}@media(max-width:760px){.work-categories{display:flex;flex-direction:row;gap:0;padding:0;margin-bottom:45px}.work-categories a{font-size:23px;padding:18px 12px}.work-group-heading{display:block}.work-group-heading h3{font-size:42px;margin-bottom:12px}.work-group{margin-bottom:55px}}

@media(max-width:760px){.work-categories{display:grid;grid-template-columns:1fr 1fr}.work-categories a:first-child{padding-left:12px}.work-categories a:nth-child(2){border-right:0}.work-categories a:nth-child(-n+2){border-bottom:1px solid #ccc}}


@media(min-width:1101px){#work-plumbing .job-grid{grid-template-columns:repeat(6,minmax(0,1fr))}#work-plumbing .job-card{grid-column:span 2}#work-plumbing .job-card:nth-child(1){grid-column:2/span 2}#work-plumbing .job-card:nth-child(2){grid-column:4/span 2}#work-plumbing .job-card:nth-child(3){grid-column:1/span 2}}@media(min-width:761px) and (max-width:1100px){#work-plumbing .job-grid{grid-template-columns:repeat(4,minmax(0,1fr))}#work-plumbing .job-card{grid-column:span 2}#work-plumbing .job-card:last-child{grid-column:2/span 2}}

@media(min-width:1101px){#work-service .job-grid{grid-template-columns:repeat(6,minmax(0,1fr))}#work-service .job-card{grid-column:span 2}#work-service .job-card:nth-child(4){grid-column:2/span 2}#work-service .job-card:nth-child(5){grid-column:4/span 2}}@media(min-width:761px) and (max-width:1100px){#work-service .job-grid{grid-template-columns:repeat(4,minmax(0,1fr))}#work-service .job-card{grid-column:span 2}#work-service .job-card:last-child{grid-column:2/span 2}}

.hero h1{font-size:clamp(34px,4.55vw,70px);width:100%}.hero-line{display:block;white-space:nowrap}.hero-image{background:linear-gradient(0deg,#14141450,transparent 40%),url('assets/hero-refined.jpg') center/cover}@media(max-width:760px){.hero h1{font-size:clamp(28px,7.4vw,55px)}}


/* Keep WordPress emoji replacements out of gallery photo sizing. */
.photo-zoom img.emoji{display:none!important}
.photo-zoom::after{content:"\2197";display:inline-block;margin-left:.3em;font-size:1em;line-height:1;color:inherit}

/* Official ISC brand artwork. */
.brand img{filter:none;width:250px;height:auto}
@media(max-width:1000px){.brand img{width:200px}}
@media(max-width:760px){.brand img{width:190px}}

/* Match official logo artwork to the white header and dark navigation; verified in local browser preview. */
.brand img{filter:grayscale(1) brightness(3) invert(1)}

/* Orange logo artwork on the white header, verified in local preview. */
.brand{background:var(--orange)}
.brand img{mix-blend-mode:screen}

/* Larger header logo with responsive sizing. */
.brand{flex-shrink:0}
.brand img{width:300px}
@media(max-width:1100px){.brand img{width:250px}}
@media(max-width:760px){.brand img{width:230px}}

/* Thin dark outline around orange brand artwork. */
.brand{background:transparent}
.brand svg{display:block;width:300px;height:auto}
@media(max-width:1100px){.brand svg{width:250px}}
@media(max-width:760px){.brand svg{width:230px}}

/* Clean orange logo without the dark outline. */
.brand svg #isc-outline feMergeNode[in="outline"]{display:none}
