:root{--bg:#050505;--text:#f0f0f0;--muted:#a0a0a0;--dim:#3c3c3c;--line:#555}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;letter-spacing:.02em}a{color:inherit;text-decoration:none}.nav{height:86px;padding:0 4vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid #202020}.logo{display:flex;align-items:center;gap:9px;font-size:22px;font-weight:700;letter-spacing:.08em}.logo-c{width:48px;height:36px;border:7px solid #eee;border-right:0;clip-path:polygon(22% 0,100% 0,78% 28%,40% 28%,22% 50%,40% 72%,78% 72%,100% 100%,22% 100%,0 50%)}.links{display:flex;gap:31px;font-size:9px}.links a:first-child{border-bottom:1px solid #bbb;padding:11px 0}.quote{justify-self:end;border:1px solid #666;padding:12px 18px;font-size:9px;letter-spacing:.12em}.quote span{margin-left:16px}.hero{height:545px;margin:0 2.2vw;display:grid;grid-template-columns:38% 35% 27%;position:relative;overflow:hidden;border:1px solid #252525;border-top:0}.hero-copy{padding:65px 4vw;z-index:3}.overline{font-size:9px;letter-spacing:.48em;color:#b8b8b8;margin:0 0 22px}.hero h1{font-size:42px;line-height:1.08;letter-spacing:.075em;font-weight:500;margin:0}.hero h1 strong{color:#c8c8c8}.statement{font-size:10px;letter-spacing:.34em;line-height:2;margin:28px 0;color:#d0d0d0}.explore{display:flex;align-items:center;gap:16px;margin-top:22px;font-size:9px;letter-spacing:.13em;width:max-content}.explore i{height:30px;border-left:1px solid #888}.explore b{width:58px;border-top:1px solid #666}.explore span{font-size:17px}.c-stage{position:relative;z-index:2}.giant-c{position:absolute;width:480px;height:430px;left:-65px;top:45px;background:#292929;clip-path:polygon(34% 0,100% 0,84% 20%,49% 20%,25% 50%,49% 80%,84% 80%,100% 100%,34% 100%,0 50%);opacity:.88}.slash{position:absolute;height:1px;background:#777;transform-origin:left}.s1{width:560px;left:25%;top:50%;transform:rotate(-48deg)}.s2{width:420px;left:36%;top:51%;transform:rotate(43deg);opacity:.35}.field-panel{position:relative;overflow:hidden;border-left:1px solid #444;background:linear-gradient(90deg,#111,#070707)}.field-grid{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 44px,#171717 45px),repeating-linear-gradient(0deg,transparent 0 44px,#151515 45px);opacity:.55;transform:skewX(-8deg) scale(1.15)}.field-panel:before,.field-panel:after{content:"";position:absolute;background:#242424;transform:skewX(-28deg)}.field-panel:before{width:120px;height:110%;left:28%;top:-5%}.field-panel:after{width:45px;height:110%;left:68%;top:-5%;background:#141414}.field-mark{position:absolute;right:28px;top:45px;text-align:right}.field-mark span{font-size:8px;letter-spacing:.3em;color:#777}.field-mark b{display:block;margin-top:8px;font-size:14px;line-height:1.25;letter-spacing:.08em}.field-list{position:absolute;left:28px;bottom:85px;padding-left:18px;border-left:1px solid #aaa;font-size:8px;line-height:2.25;letter-spacing:.22em;color:#aaa}.hero-count{position:absolute;right:28px;bottom:25px;display:flex;align-items:center;gap:12px;font-size:8px}.hero-count i{width:45px;border-top:1px solid #aaa}.services{margin:0 2.2vw;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #292929;border-top:0}.services article{min-height:210px;padding:32px 4vw;position:relative;border-right:1px solid #333;overflow:hidden}.services article:last-child{border:0}.services article:after{content:"";position:absolute;width:170px;border-top:1px solid #242424;right:-45px;top:90px;transform:rotate(-58deg)}.services b,.industry-row b{font-size:31px;font-weight:400;color:#404040}.services i{display:block;width:18px;border-top:1px solid #bbb;margin:8px 0 14px}.services h3{font-size:15px;line-height:1.15;margin:0 0 12px;letter-spacing:.04em}.services p{font-size:9px;line-height:1.7;color:#777;margin:0}.services a{position:absolute;bottom:28px;font-size:17px}.utility-strip{margin:0 2.2vw;padding:18px 4vw;display:flex;align-items:center;gap:25px;border:1px solid #292929;border-top:0;font-size:8px;letter-spacing:.26em;color:#8b8b8b}.utility-strip i{flex:1;border-top:1px solid #3c3c3c}.industries{padding:30px 6vw 42px;border-bottom:1px solid #333}.section-title{display:flex;align-items:center;gap:20px;font-size:8px;letter-spacing:.44em}.section-title i{flex:1;border-top:1px solid #555}.industry-row{display:grid;grid-template-columns:repeat(5,1fr);margin-top:28px}.industry-row article{display:grid;grid-template-columns:43px 1fr;gap:10px;padding:0 22px;border-right:1px solid #3a3a3a}.industry-row article:first-child{padding-left:0}.industry-row article:last-child{border:0}.industry-row h4{font-size:9px;line-height:1.5;margin:7px 0;font-weight:500}.editorial{min-height:390px;padding:78px 9vw;display:grid;grid-template-columns:30% 70%;border-bottom:1px solid #333;position:relative}.editorial:after{content:"";position:absolute;width:320px;border-top:1px solid #222;right:5%;top:25%;transform:rotate(-42deg)}.side-label{font-size:8px;letter-spacing:.38em;color:#777}.editorial h2,.contact h2{font-size:37px;line-height:1.15;letter-spacing:.09em;font-weight:400;margin:0 0 25px}.editorial h2 span,.contact h2 span{color:#777}.bodycopy{max-width:620px;font-size:11px;line-height:1.9;color:#888}.reverse{background:#080808}.contact{padding:80px 9vw;display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact-list{display:flex;flex-direction:column;justify-content:center}.contact-list a{display:flex;justify-content:space-between;padding:21px 0;border-bottom:1px solid #444;font-size:10px;letter-spacing:.1em}footer{padding:27px 4vw;border-top:1px solid #3a3a3a;display:flex;align-items:center;justify-content:space-between;color:#666;font-size:8px;letter-spacing:.22em}.footer-logo{font-size:15px;color:#ddd}.footer-logo .logo-c{width:34px;height:26px;border-width:5px}@media(max-width:950px){.nav{grid-template-columns:1fr auto}.links{display:none}.hero{height:auto;min-height:650px;grid-template-columns:1fr}.hero-copy{min-height:520px}.c-stage{position:absolute;width:55%;height:500px;right:0;opacity:.55}.field-panel{min-height:180px;border-left:0;border-top:1px solid #333}.field-list{bottom:38px}.services{grid-template-columns:1fr}.services article{border-right:0;border-bottom:1px solid #333}.industry-row{grid-template-columns:1fr 1fr;gap:25px}.editorial,.contact{grid-template-columns:1fr;gap:32px}}@media(max-width:600px){.nav{padding:0 20px}.quote{font-size:0;padding:10px}.quote span{font-size:16px;margin:0}.logo{font-size:17px}.logo-c{width:37px;height:29px;border-width:6px}.hero{margin:0;height:auto}.hero-copy{padding:52px 24px;min-height:500px}.hero h1{font-size:29px}.c-stage{width:72%;right:-18%}.services,.utility-strip{margin:0}.utility-strip{align-items:flex-start;flex-direction:column}.utility-strip i{width:100%}.industry-row{grid-template-columns:1fr}.editorial,.contact{padding:60px 24px}.editorial h2,.contact h2{font-size:27px}footer{gap:18px;flex-wrap:wrap}}

/* V7 — photographic industrial layer */
.field-panel{position:relative;overflow:hidden;background:#090909}
.field-panel::before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(0,0,0,.18),rgba(0,0,0,.48)),url('https://bimconsolutions.com/images/projects/cleanroom-expansion-phase-2.jpg');background-size:cover;background-position:center;filter:grayscale(1) contrast(1.12) brightness(.62);transform:scale(1.02)}
.field-panel::after{content:"";position:absolute;inset:0;background:linear-gradient(125deg,transparent 0 47%,rgba(15,15,15,.34) 47% 58%,transparent 58%);pointer-events:none}
.field-panel>*{position:relative;z-index:2}
.services article{position:relative;overflow:hidden;min-height:300px;background:#070707}
.services article::before{content:"";position:absolute;inset:0;background-size:cover;background-position:center;filter:grayscale(1) contrast(1.15) brightness(.32);opacity:.72;transition:.45s ease}
.services article:nth-child(1)::before{background-image:linear-gradient(rgba(0,0,0,.15),rgba(0,0,0,.7)),url('https://bimconsolutions.com/images/projects/cleanroom-expansion-phase-2.jpg');background-position:22% center}
.services article:nth-child(2)::before{background-image:linear-gradient(rgba(0,0,0,.12),rgba(0,0,0,.72)),url('https://www.cadmancranes.com/app/uploads/2024/01/PHOTO-2024-01-29-15-22-28-10-1152x1536.jpg');background-position:center}
.services article:nth-child(3)::before{background-image:linear-gradient(rgba(0,0,0,.15),rgba(0,0,0,.7)),url('https://bimconsolutions.com/images/projects/cleanroom-expansion-phase-2.jpg');background-position:75% center}
.services article:hover::before{filter:grayscale(1) contrast(1.1) brightness(.45);transform:scale(1.025)}
.services article>*{position:relative;z-index:2}
.services article:after{content:"";position:absolute;inset:0;border-right:1px solid rgba(255,255,255,.12);z-index:1;pointer-events:none}
.industry-row article{position:relative;overflow:hidden;background:#0b0b0b}
.industry-row article:nth-child(2),.industry-row article:nth-child(4){background-image:linear-gradient(rgba(0,0,0,.55),rgba(0,0,0,.72)),url('https://bimconsolutions.com/images/projects/cleanroom-expansion-phase-2.jpg');background-size:cover;background-position:center;filter:none}
.industry-row article>*{position:relative;z-index:1}

/* V8 FINAL — brighter photographic treatment, local image assets */
.field-panel::before{
  background-image:linear-gradient(90deg,rgba(0,0,0,.05),rgba(0,0,0,.20)),url('hero-field.jpg');
  background-position:center;
  filter:grayscale(1) contrast(1.06) brightness(1.10);
}
.field-panel::after{background:linear-gradient(125deg,transparent 0 47%,rgba(10,10,10,.14) 47% 58%,transparent 58%)}
.services article::before{filter:grayscale(1) contrast(1.06) brightness(.82);opacity:.92}
.services article:nth-child(1)::before{background-image:linear-gradient(rgba(0,0,0,.05),rgba(0,0,0,.42)),url('service-network.jpg');background-position:center}
.services article:nth-child(2)::before{background-image:linear-gradient(rgba(0,0,0,.03),rgba(0,0,0,.40)),url('service-equipment.jpg');background-position:center}
.services article:nth-child(3)::before{background-image:linear-gradient(rgba(0,0,0,.03),rgba(0,0,0,.40)),url('service-field.jpg');background-position:center}
.services article:hover::before{filter:grayscale(1) contrast(1.03) brightness(.92)}
.services article p{color:#b5b5b5}.services b{color:#777}.services article:after{background:linear-gradient(115deg,transparent 0 66%,rgba(0,0,0,.72) 66% 100%);border-right:1px solid rgba(255,255,255,.15)}
.industry-row article{min-height:115px;padding-top:14px;padding-bottom:14px;background-size:cover;background-position:center}
.industry-row article::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.38);z-index:0}
.industry-row article:nth-child(1){background-image:url('industry-advanced.jpg')}
.industry-row article:nth-child(2){background-image:url('industry-semi.jpg')}
.industry-row article:nth-child(3){background-image:url('industry-solar.jpg')}
.industry-row article:nth-child(4){background-image:url('industry-data.jpg')}
.industry-row article:nth-child(5){background-image:url('industry-facility.jpg')}
.industry-row article:nth-child(2),.industry-row article:nth-child(4){filter:none}
.industry-row h4{color:#f1f1f1}.industry-row b{color:#c2c2c2}

/* V9 — approved Codance business positioning */
.scope-summary{
  background:#050505;
  color:#efefef;
  padding:70px 5vw 80px;
  border-top:1px solid #343434;
  border-bottom:1px solid #343434;
}
.scope-kicker{
  font-size:10px;
  letter-spacing:.38em;
  color:#8b8b8b;
  margin-bottom:34px;
}
.scope-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid #4a4a4a;
}
.scope-grid>div{
  padding:28px 28px 10px 0;
  min-height:190px;
  border-right:1px solid #3b3b3b;
}
.scope-grid>div+div{padding-left:28px}
.scope-grid>div:last-child{border-right:0}
.scope-grid span{font-size:28px;color:#444}
.scope-grid h3{font-size:14px;line-height:1.4;letter-spacing:.06em;margin:28px 0 15px}
.scope-grid p{font-size:11px;line-height:1.75;color:#8f8f8f;max-width:260px}
@media(max-width:900px){
  .scope-grid{grid-template-columns:1fr 1fr}
  .scope-grid>div{border-bottom:1px solid #3b3b3b}
}
@media(max-width:560px){
  .scope-grid{grid-template-columns:1fr}
  .scope-grid>div,.scope-grid>div+div{padding:25px 0;border-right:0}
}


/* V10 — Experience section */
.experience-v10{
  background:#050505;
  color:#eee;
  padding:90px 5vw 95px;
  border-top:1px solid #343434;
  border-bottom:1px solid #343434;
}
.experience-head{
  display:grid;
  grid-template-columns:32% 68%;
  gap:45px;
  margin-bottom:65px;
}
.exp-index,.exp-kicker{
  font-size:9px;
  letter-spacing:.35em;
}
.exp-index{color:#555;display:block;margin-bottom:28px}
.exp-kicker{color:#aaa;margin:0}
.experience-head h2{
  font-size:clamp(34px,4vw,60px);
  line-height:1.05;
  letter-spacing:.05em;
  font-weight:400;
  margin:0 0 25px;
}
.experience-head h2 span{color:#747474}
.experience-head>div:last-child>p{
  max-width:700px;
  color:#909090;
  font-size:12px;
  line-height:1.9;
}
.experience-list{
  border-top:1px solid #555;
}
.experience-list article{
  display:grid;
  grid-template-columns:70px 180px 1.1fr 1fr;
  column-gap:28px;
  align-items:start;
  padding:31px 0;
  border-bottom:1px solid #383838;
}
.exp-no{
  font-size:26px;
  color:#424242;
}
.exp-type{
  font-size:9px;
  line-height:1.6;
  letter-spacing:.2em;
  color:#777;
  padding-top:7px;
}
.experience-list h3{
  font-size:17px;
  line-height:1.3;
  letter-spacing:.04em;
  font-weight:500;
  margin:3px 0 0;
}
.experience-list article p{
  font-size:11px;
  line-height:1.75;
  color:#888;
  margin:3px 0 12px;
}
.exp-tag{
  grid-column:4;
  font-size:8px;
  letter-spacing:.16em;
  color:#5d5d5d;
}
.experience-note{
  max-width:820px;
  margin:34px 0 0 auto;
  padding-left:24px;
  border-left:1px solid #555;
  color:#656565;
  font-size:9px;
  line-height:1.8;
}
@media(max-width:900px){
  .experience-head{grid-template-columns:1fr}
  .experience-list article{grid-template-columns:55px 1fr}
  .exp-type{grid-column:2}
  .experience-list h3{grid-column:2;margin-top:10px}
  .experience-list article p{grid-column:2}
  .exp-tag{grid-column:2}
}


/* V11 — About Codance storytelling */
.about-story{
  background:#050505;
  color:#efefef;
  padding:100px 5vw 0;
  border-top:1px solid #333;
}
.story-intro{
  display:grid;
  grid-template-columns:30% 70%;
  padding-bottom:80px;
}
.story-side,.story-kicker{
  font-size:9px;
  letter-spacing:.36em;
  color:#666;
}
.story-kicker{margin:0 0 24px;color:#999}
.story-main h2{
  margin:0;
  font-size:clamp(42px,5vw,72px);
  line-height:1.03;
  letter-spacing:.04em;
  font-weight:400;
}
.question{
  margin-top:32px;
  font-size:clamp(20px,2.3vw,34px);
  letter-spacing:.12em;
  color:#777;
}
.story-steps{
  border-top:1px solid #555;
}
.story-steps article{
  display:grid;
  grid-template-columns:100px 1fr;
  min-height:230px;
  padding:42px 0;
  border-bottom:1px solid #333;
}
.story-no{
  font-size:32px;
  color:#3d3d3d;
}
.story-steps article>div{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8vw;
}
.story-steps h3{
  margin:0;
  font-size:clamp(23px,2.5vw,38px);
  line-height:1.12;
  letter-spacing:.05em;
  font-weight:400;
}
.story-steps p{
  max-width:550px;
  margin:4px 0 0;
  color:#898989;
  font-size:12px;
  line-height:1.9;
}
.story-focus{
  position:relative;
  overflow:hidden;
}
.story-focus:after{
  content:"C";
  position:absolute;
  right:-2vw;
  top:-95px;
  font-size:330px;
  font-weight:800;
  line-height:1;
  color:#111;
  z-index:0;
}
.story-focus>span,.story-focus>div{position:relative;z-index:1}
.story-statement{
  padding:100px 0 110px 30%;
}
.story-statement p{
  margin:0 0 8px;
  color:#747474;
  font-size:18px;
  letter-spacing:.13em;
}
.story-statement h2{
  margin:0;
  font-size:clamp(42px,5vw,74px);
  font-weight:400;
  letter-spacing:.04em;
}
.story-line{
  width:110px;
  border-top:1px solid #888;
  margin:34px 0 22px;
}
.story-statement span{
  color:#707070;
  font-size:9px;
  letter-spacing:.22em;
}

.method{
  background:#0a0a0a;
  color:#eee;
  padding:75px 5vw 90px;
  border-top:1px solid #3b3b3b;
  border-bottom:1px solid #3b3b3b;
}
.method-head{
  display:grid;
  grid-template-columns:30% 70%;
  align-items:end;
  margin-bottom:50px;
}
.method-head>span{
  font-size:9px;
  letter-spacing:.35em;
  color:#666;
}
.method-head h2{
  margin:0;
  font-size:clamp(28px,3.5vw,50px);
  letter-spacing:.07em;
  font-weight:400;
}
.method-head h2 i{
  color:#444;
  font-style:normal;
  padding:0 .2em;
}
.method-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid #555;
}
.method-grid article{
  min-height:215px;
  padding:30px 28px 10px 0;
  border-right:1px solid #3d3d3d;
}
.method-grid article+article{padding-left:28px}
.method-grid article:last-child{border-right:0}
.method-grid b{
  font-size:28px;
  font-weight:400;
  color:#3f3f3f;
}
.method-grid h3{
  margin:35px 0 14px;
  font-size:13px;
  letter-spacing:.08em;
}
.method-grid p{
  color:#7f7f7f;
  font-size:11px;
  line-height:1.75;
  max-width:250px;
}
@media(max-width:850px){
  .story-intro,.method-head{grid-template-columns:1fr;gap:30px}
  .story-steps article{grid-template-columns:55px 1fr}
  .story-steps article>div{grid-template-columns:1fr;gap:20px}
  .story-statement{padding-left:0}
  .method-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:540px){
  .about-story{padding-top:70px}
  .method-grid{grid-template-columns:1fr}
  .method-grid article,.method-grid article+article{padding:28px 0;border-right:0;border-bottom:1px solid #333}
}


/* V12 — Why Codance */
.why-codance{
  background:#050505;color:#eee;padding:90px 5vw 100px;
  border-top:1px solid #333;border-bottom:1px solid #333;
}
.why-head{display:grid;grid-template-columns:30% 70%;margin-bottom:55px}
.why-side,.why-kicker{font-size:9px;letter-spacing:.35em;color:#666}
.why-kicker{color:#999;margin:0 0 20px}
.why-head h2{font-size:clamp(38px,4.5vw,66px);line-height:1.05;letter-spacing:.05em;font-weight:400;margin:0}
.why-head h2 span{color:#747474}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #555}
.why-grid article{padding:30px 28px 5px 0;min-height:220px;border-right:1px solid #3b3b3b}
.why-grid article+article{padding-left:28px}.why-grid article:last-child{border-right:0}
.why-grid b{font-size:28px;font-weight:400;color:#404040}
.why-grid h3{font-size:13px;letter-spacing:.07em;line-height:1.45;margin:38px 0 15px}
.why-grid p{font-size:11px;line-height:1.75;color:#858585;max-width:260px}

/* V12 — Contact / RFQ */
.quote-contact{
  background:#090909;color:#eee;padding:100px 8vw 105px;
  display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw;
}
.quote-intro>span{font-size:9px;letter-spacing:.35em;color:#666}
.quote-intro h2{font-size:clamp(36px,4.2vw,62px);line-height:1.06;letter-spacing:.04em;font-weight:400;margin:28px 0}
.quote-intro h2 em{font-style:normal;color:#767676}
.quote-intro p{max-width:480px;color:#858585;font-size:12px;line-height:1.9}
.quote-form{border-top:1px solid #555;padding-top:8px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.quote-form label{display:flex;flex-direction:column;gap:10px;padding-top:24px;font-size:8px;letter-spacing:.25em;color:#777}
.quote-form input,.quote-form select,.quote-form textarea{
  width:100%;background:transparent;color:#ddd;border:0;border-bottom:1px solid #444;
  border-radius:0;padding:10px 0 13px;font:12px Arial,Helvetica,sans-serif;outline:none;
}
.quote-form textarea{resize:vertical}
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-bottom-color:#aaa}
.quote-form select option{background:#111;color:#ddd}
.quote-form button{
  margin-top:35px;background:transparent;color:#ddd;border:0;border-bottom:1px solid #888;
  padding:12px 0;font-size:10px;letter-spacing:.14em;cursor:pointer;
}
.quote-form button span{margin-left:35px;font-size:16px}
.form-note{margin-top:22px;color:#5f5f5f;font-size:9px;letter-spacing:.08em}
.form-note a{color:#999;border-bottom:1px solid #555}

@media(max-width:850px){
 .why-head,.quote-contact{grid-template-columns:1fr;gap:40px}
 .why-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:540px){
 .why-grid{grid-template-columns:1fr}
 .why-grid article,.why-grid article+article{padding:27px 0;border-right:0;border-bottom:1px solid #333}
 .quote-contact{padding:70px 24px}
 .form-row{grid-template-columns:1fr;gap:0}
}

/* V13 final contact details */
.footer-contact{display:flex;gap:24px;align-items:center}
.footer-contact a{color:#777;text-decoration:none}
.footer-contact a:hover{color:#bbb}
@media(max-width:700px){
  .footer-contact{width:100%;flex-direction:column;align-items:flex-start;gap:8px;margin-top:12px}
}


/* V15 — final hero lock */
@media (min-width: 1100px){
  .hero{grid-template-columns:minmax(0,1fr) 215px 250px;}
  .hero-photo{width:215px;}
  .site-header{padding-left:72px;padding-right:72px;}
  .hero-side{padding-left:34px;}
}


/* V16 — sections aligned to final Codance positioning */
.precision-strip{
  position:relative; overflow:hidden; display:grid;
  grid-template-columns:150px 1px minmax(0,760px) 1fr;
  gap:38px; align-items:start;
  padding:110px 6vw 120px; border-top:1px solid #242424;
  border-bottom:1px solid #242424; background:#070707;
}
.precision-index,.precision-kicker{
  letter-spacing:.32em; font-size:11px; color:#777; font-weight:600;
}
.precision-rule{width:1px;height:100%;min-height:220px;background:#343434}
.precision-copy h2{
  margin:18px 0 28px; max-width:760px; color:#d4d4d4;
  font-size:clamp(34px,4vw,64px); line-height:1.02; font-weight:500;
  letter-spacing:-.025em;
}
.precision-copy p:last-child{
  max-width:670px; color:#858585; font-size:15px; line-height:1.85;
}
.precision-mark{
  position:absolute; right:4vw; top:50%; transform:translateY(-52%);
  font-size:min(28vw,430px); line-height:.8; font-weight:800;
  color:#151515; user-select:none; pointer-events:none;
}
@media(max-width:800px){
  .precision-strip{grid-template-columns:1fr;padding:72px 28px;gap:24px}
  .precision-rule{width:70px;height:1px;min-height:0}
  .precision-mark{font-size:55vw;right:-10vw}
  .precision-copy{position:relative;z-index:1}
}


/* V17 — readability pass */
body{font-size:16px}
.hero-tagline{font-size:15px;line-height:2}
.service-card p,
.service-card li,
.industry-card p,
.about-copy p,
.contact-copy p,
.form-note{
  font-size:15px;
  line-height:1.75;
}
.service-card h3{font-size:20px}
.industry-card h3{font-size:17px}
.section-kicker,
.eyebrow,
.precision-index,
.precision-kicker{
  font-size:12px;
}
.precision-copy p:last-child{
  font-size:17px;
  line-height:1.85;
  max-width:720px;
}
footer, .footer-contact a{font-size:14px}

@media(max-width:800px){
  body{font-size:16px}
  .service-card p,.service-card li,.industry-card p,.about-copy p,.contact-copy p{
    font-size:16px;
  }
  .precision-copy p:last-child{font-size:16px}
}


/* V18 — section rhythm and readability polish; hero title remains locked */
section:not(.hero){scroll-margin-top:92px}

/* More breathing room between major sections */
.services,
.industries,
.experience-v10,
.about-story,
.method,
.why-codance,
.quote-contact{
  padding-top:max(78px,5.5vw);
  padding-bottom:max(82px,6vw);
}

/* Supporting copy: readable without losing the editorial hierarchy */
.services p,
.services li,
.industries p,
.experience-v10 p,
.about-story p,
.method p,
.why-codance p,
.quote-contact p{
  font-size:15px;
  line-height:1.8;
}

/* Keep labels compact but no longer tiny */
.services .section-label,
.industries .section-label,
.experience-v10 .exp-index,
.experience-v10 .exp-kicker,
.about-story .story-side,
.about-story .story-kicker,
.method-head>span,
.why-side,
.why-kicker,
.quote-intro>span{
  font-size:11px;
}

/* Stronger section separators */
.experience-v10,
.about-story,
.method,
.why-codance,
.quote-contact{
  border-top-color:#3a3a3a;
}

/* Links and contact information need to be comfortably readable */
.contact-list a,
.quote-form input,
.quote-form select,
.quote-form textarea{
  font-size:15px;
}
.quote-form label{font-size:10px}
.form-note{font-size:13px}


@media(max-width:800px){
  .services p,.services li,.industries p,.experience-v10 p,
  .about-story p,.method p,.why-codance p,.quote-contact p{
    font-size:16px;
    line-height:1.75;
  }
}

/* V18.1 — restore and lock the approved hero headline scale */
@media (min-width: 801px){
  .hero h1{
    font-size:clamp(54px,4.15vw,80px) !important;
    line-height:.93 !important;
  }
}


/* V18.2 — targeted readability fix for Experience and supporting content */
.experience-v10 .exp-body,
.experience-v10 .exp-body p,
.experience-v10 .exp-copy,
.experience-v10 .exp-copy p,
.experience-v10 .experience-copy,
.experience-v10 .experience-copy p,
.experience-v10 article p,
.experience-v10 .exp-item p,
.experience-v10 .experience-item p{
  font-size:18px !important;
  line-height:1.72 !important;
  letter-spacing:.005em !important;
  color:#a8a8a8 !important;
}

.experience-v10 .exp-tags,
.experience-v10 .exp-tag,
.experience-v10 .experience-tags,
.experience-v10 .experience-tag,
.experience-v10 article small{
  font-size:12px !important;
  line-height:1.55 !important;
  letter-spacing:.18em !important;
}

/* Other supporting paragraphs — visibly larger than V17/V18 */
.services p,
.services li,
.industries p,
.about-story p,
.method p,
.why-codance p,
.quote-contact p{
  font-size:17px !important;
  line-height:1.75 !important;
}

/* Keep the approved hero headline untouched */
@media (min-width:801px){
  .hero h1{
    font-size:clamp(54px,4.15vw,80px) !important;
    line-height:.93 !important;
  }
}

@media(max-width:800px){
  .experience-v10 .exp-body,
  .experience-v10 .exp-body p,
  .experience-v10 .exp-copy,
  .experience-v10 .exp-copy p,
  .experience-v10 article p,
  .experience-v10 .exp-item p,
  .experience-v10 .experience-item p,
  .services p,.services li,.industries p,.about-story p,
  .method p,.why-codance p,.quote-contact p{
    font-size:17px !important;
    line-height:1.72 !important;
  }
}


/* V19 — targeted production refinements */
.services article::before{background-size:cover !important;}
.industry-row article{min-height:155px !important;align-content:start;padding-top:22px !important;padding-bottom:22px !important;}
.industry-row h4{font-size:11px !important;line-height:1.45 !important;text-shadow:0 1px 8px rgba(0,0,0,.9);}
.industry-row b{text-shadow:0 1px 8px rgba(0,0,0,.9);}
.quote-form select:invalid{color:#8a8a8a;}
@media(max-width:950px){.industry-row article{min-height:145px !important;}}
