@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--black:#080909;--char:#141516;--gold:#d8ae54;--pale:#f5f3ed;--ink:#151719}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b58c2c;outline-offset:3px}.nav{height:91px;background:#080909;color:#fff;position:sticky;top:0;z-index:30;border-bottom:1px solid #403826}.nav-inner{max-width:1260px;height:100%;margin:auto;padding:0 25px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:13px;min-width:225px}.brand img{width:57px;height:57px;object-fit:cover;object-position:center;border:1px solid #997b3b}.brand strong{font-family:Georgia,serif;font-size:24px;letter-spacing:.05em;color:var(--gold);display:block;font-weight:500}.brand small{display:block;color:#e5ce96;font-size:9px;letter-spacing:.12em}.links{display:flex;gap:26px;align-items:center;font-size:11px;font-weight:800;letter-spacing:.12em}.links a:hover,.links a[aria-current=page]{color:var(--gold)}.nav-actions{display:flex;gap:16px;align-items:center}.lang{font-size:11px;font-weight:700;white-space:nowrap}.lang a{color:#d6d6d6}.lang a.active{color:var(--gold)}.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:15px 24px;background:var(--gold);color:#101010;border:1px solid var(--gold);font-size:12px;letter-spacing:.07em;font-weight:800;transition:.2s}.button:hover{background:#efcb77}.button.outline{background:transparent;color:white;border-color:#d9b65b}.button.outline:hover{background:rgba(216,174,84,.12)}.mobile-menu{display:none;background:none;color:white;border:0;font-size:25px;cursor:pointer}.eyebrow{font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:var(--gold);font-weight:800}.eyebrow:before{content:'';display:inline-block;background:var(--gold);width:28px;height:2px;vertical-align:middle;margin-right:11px}.hero{position:relative;min-height:650px;background:#121212;display:flex;align-items:center;color:white;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.93) 0%,rgba(0,0,0,.72) 43%,rgba(0,0,0,.18) 100%),url('https://images.pexels.com/photos/20296265/pexels-photo-20296265.jpeg?auto=compress&cs=tinysrgb&w=1800') center/cover}.hero .wrap{position:relative;z-index:1;width:100%}.wrap{max-width:1260px;margin:auto;padding:0 32px}.hero h1{font-family:Georgia,serif;font-size:clamp(45px,5.8vw,80px);line-height:1.02;letter-spacing:-.045em;font-weight:700;margin:25px 0;max-width:920px}.gold{color:var(--gold)}.hero p{max-width:580px;line-height:1.8;color:#eee;font-size:16px}.hero .actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:30px}.strip{background:#0b0d0d;color:#fff;display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #5d4c27}.strip div{padding:28px 15px;border-right:1px solid #56472a;text-align:center;font-size:11px;letter-spacing:.08em;font-weight:800}.strip span{display:block;color:var(--gold);font-size:23px;margin-bottom:7px}.section{padding:95px 0}.section.cream{background:var(--pale)}.kicker{color:#a97925;font-size:11px;text-transform:uppercase;letter-spacing:.15em;font-weight:800}.section h2,.pagehero h1{font-family:Georgia,serif;font-weight:600;font-size:clamp(35px,4vw,58px);line-height:1.08;letter-spacing:-.035em;margin:15px 0 25px}.section p{line-height:1.8;color:#575757}.section-head{max-width:850px;margin-bottom:40px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{min-height:285px;position:relative;display:flex;align-items:flex-end;background:#272727;overflow:hidden}.service-card:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.92),rgba(0,0,0,.13)),var(--img) center/cover;transition:transform .35s}.service-card:hover:before{transform:scale(1.04)}.service-card div{position:relative;padding:26px;color:#fff;width:100%;display:flex;justify-content:space-between;gap:10px;font-weight:700;font-size:18px}.service-card b{color:var(--gold)}.split{display:grid;grid-template-columns:1fr 1fr;min-height:530px}.split .image{background:#252525 center/cover;min-height:400px}.split .content{background:#101212;color:#fff;display:flex;align-items:center;padding:65px max(7vw,35px)}.split h2{color:#fff}.split p{color:#d2d2d2}.industries{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:#d8d1bf;border:1px solid #d8d1bf}.industries div{background:white;padding:36px 10px;text-align:center;font-size:13px;font-weight:700}.industries span{font-size:30px;display:block;margin-bottom:15px}.cta{background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.68)),url('https://images.pexels.com/photos/6439163/pexels-photo-6439163.jpeg?auto=compress&cs=tinysrgb&w=1800') center/cover;color:#fff;padding:95px 0}.cta h2{max-width:810px;color:#fff}.cta p{color:#ddd}.footer{background:#080909;color:#d5d5d5;padding:55px 0;border-top:1px solid var(--gold)}.footer-grid{display:flex;justify-content:space-between;gap:35px;flex-wrap:wrap}.footer a:hover{color:var(--gold)}.footer p{font-size:13px;line-height:1.8}.footer-nav{display:flex;gap:15px;flex-wrap:wrap;font-size:12px}.pagehero{padding:98px 0;background:linear-gradient(90deg,#090909 12%,#272218 100%);color:white;border-bottom:3px solid var(--gold)}.pagehero p{max-width:740px;color:#dedede;line-height:1.8}.columns{display:grid;grid-template-columns:repeat(2,1fr);gap:35px}.panel{padding:34px;background:#f6f4ef;border-left:3px solid var(--gold)}.panel h3{font-size:21px;margin-top:0}.panel p{color:#555;line-height:1.8}.clean-list{line-height:2.1;padding-left:20px}.form{display:grid;gap:16px;max-width:730px}.form label{font-size:13px;font-weight:700;display:grid;gap:7px}.form input,.form textarea,.form select{width:100%;padding:14px;border:1px solid #c3c3c3;background:#fff;border-radius:0}.notice{padding:17px;background:#f8efd9;border-left:3px solid var(--gold);color:#4a3c28;line-height:1.6;font-size:13px}.subtle{font-size:13px;color:#666}.pill{display:inline-block;font-size:11px;letter-spacing:.1em;border:1px solid #a98a4a;padding:8px 12px;text-transform:uppercase;margin:0 8px 8px 0}@media(max-width:1060px){.links{gap:12px}.brand{min-width:0}.brand strong{font-size:20px}}@media(max-width:850px){.nav{height:76px}.nav .button{display:none}.mobile-menu{display:block}.links{display:none;position:absolute;top:76px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#101111;padding:10px 25px 25px}.links.open{display:flex}.links a{padding:14px 0;border-bottom:1px solid #292929}.brand img{width:48px;height:48px}.hero{min-height:580px}.strip{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.industries{grid-template-columns:repeat(3,1fr)}}@media(max-width:550px){.wrap{padding:0 22px}.section{padding:65px 0}.hero{min-height:630px}.hero:before{background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.38)),url('https://images.pexels.com/photos/20296265/pexels-photo-20296265.jpeg?auto=compress&cs=tinysrgb&w=1800') center/cover}.cards,.columns{grid-template-columns:1fr}.service-card{min-height:240px}.industries{grid-template-columns:repeat(2,1fr)}.brand strong{font-size:18px}.brand small{font-size:8px}.strip div{font-size:10px}.section h2{font-size:36px}}
/* Subcontractor network */
.partner-cards .panel{background:#f6f4ef;min-height:210px}.partner-cards .panel p{font-size:15px}.nav-inner{gap:12px}.links{gap:15px}.nav-actions{gap:10px}@media(max-width:1150px){.links{gap:10px;font-size:10px}.brand strong{font-size:19px}.nav-actions .button{padding:12px 14px}}@media(max-width:980px){.nav .button{display:none}.mobile-menu{display:block}.links{display:none;position:absolute;top:91px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#101111;padding:10px 25px 25px}.links.open{display:flex}.links a{padding:14px 0;border-bottom:1px solid #292929}}@media(max-width:850px){.links{top:76px}}

/* Subcontractor application form */
.application-shell{max-width:930px;margin:auto;padding:clamp(22px,4vw,50px);background:#fff;border-top:5px solid var(--gold);box-shadow:0 14px 55px rgba(0,0,0,.08)}.application-form{max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:25px;row-gap:21px}.application-form label{font-size:13px}.application-form textarea{min-height:108px;resize:vertical}.application-form label:has(textarea),.application-form .travel-field,.application-form .consent,.application-form>.subtle,.application-form>.button,.application-form>.form-feedback{grid-column:1/-1}.travel-field{border:1px solid #cfc9bb;padding:15px 18px;display:flex;gap:24px;flex-wrap:wrap}.travel-field legend{font-weight:700;font-size:13px;padding:0 5px}.travel-field label{display:flex;align-items:center;gap:8px;cursor:pointer}.travel-field input{width:auto}.application-form .consent{display:flex;align-items:flex-start;gap:12px;line-height:1.6}.application-form .consent input{width:auto;margin-top:4px}.application-form>.button{border-radius:0;cursor:pointer;justify-self:start}.form-feedback{margin:0}.application-form input:focus,.application-form textarea:focus,.application-form select:focus{border-color:#a17f39;outline:2px solid #d9bd7f}.application-form :is(input,textarea,select):user-invalid{border-color:#b44436}@media(max-width:650px){.application-form{grid-template-columns:1fr}.travel-field{gap:14px}}
